BlackTibia

No estás conectado. Conéctate o registrate

 » Open Tibia » Pedido de Scripts » 

[AYUDA] Script de Item,Npc o Palanca que remueva Red Skull.

[AYUDA] Script de Item,Npc o Palanca que remueva Red Skull.

Hellscors


Miembro
:.Pedido.: :y:
Necesito un Script de Remover skull, ya sea Item,Palanca o Npc.
PD: Si es ITEM quiero que no se pueda usar si tienes PZ. (Que solo se use si no tiene tachas)
GRACIAS al que me ayude le dare :+rep:

:blacktibia3:

Enserio Me Urge! :aah:
:Gracias:

http://www.blacktibia.org/t32971-86-prestige-imperia-ot-server-h

DavidR


Moderador
¿Cual prefieres? (Para así empezar a hacerte el script)

En caso de que quieras con Item, dime la ID del Item que vas a querer que se utilice.

http://www.blacktibia.org/

Hellscors


Miembro
Oh! Gracias pues de preferencia item we. el id seria 9969 (una calaverita negra) y si no te sale el item ps,cualquiera de las 3 me serviria (; :+rep:

http://www.blacktibia.org/t32971-86-prestige-imperia-ot-server-h

GOD Suimty


Moderador
items.xml
Código:
  <item id="9969" article="a" name="Skull remover" plural="skull removers">
    <attribute key="weight" value="150" />
  </item>

Actions/scripts/skullremover.lua
Código:
function onUse(cid, item, frompos, item2, topos)
        local playerskull = getCreatureSkullType(cid)
        local skulls = {
                                        SKULL_NONE,
                                        SKULL_YELLOW,
                                        SKULL_GREEN,
                                        SKULL_WHITE
                                        }
 
        if isInArray(skulls, playerskull) then
                doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You don't have red or black skull.")
                return 0
        else
                doCreatureSetSkullType(cid, skulls[1])
                doRemoveItem(item.uid, 1)
                db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. getPlayerGUID(cid) .. ")")
                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your skull has been removed.")
        end
        return true
end

actions.xml
Código:
<!-- Skull Remover -->
<action itemid="9969" event="script" value="skullremover.lua"/>



[Tienes que estar registrado y conectado para ver esa imagen]
http://sdrakos.servegame.com

DavidR


Moderador
Ve a Data / Actions y abre el archivo Actions.xml y coloca esto:
Código:
<action itemid="9969" event="script" value="removeskullfrag.lua"/>

Ahora ve a Data / Actions / Scripts, copia y pega cualquier archivo .lua que esté ahí y cámbiale el nombre a removeskullfrag

...Lo abres, borras todo lo que hay adentro y pones esto:
Código:
function onUse(cid, item, frompos, item2, topos)
 
        local nonremskulls =  -- Estas son las Skulls que no removerá, si el player tiene alguna de estas skulls el item no tendrá efecto.
{
        white = SKULL_WHITE
}
 
        if (getCreatureCondition(cid, CONDITION_INFIGHT) == true) then
                doPlayerSendCancel(cid,"No puedes usar este item estando en Battle.")
                doSendMagicEffect(getPlayerPosition(cid),2)
        else
                db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. getPlayerGUID(cid) .. ")")
                doCreatureSetSkullType(cid,0)
                doPlayerSendTextMessage(cid,27,"Ya no tienes Skull")
                doSendMagicEffect(getPlayerPosition(cid),CONST_ME_MAGIC_RED)
                                doSendAnimatedText(getPlayerPosition(cid), "Skull!", 180)
                        doRemoveItem(item.uid, 0)
                                doPlayerSetSkullEnd(cid, 0, getPlayerSkullType(cid))
 
        return TRUE
        end
end

Y ahora en Data / Items abres el archivo Items.xml y buscas el item ID 9969 y lo cambias por esto:
Código:
    <item id="9969" article="a" name="Skull Remover">
        <attribute key="weight" value="5000" />
    </item>

Espero que te haya servido. Saludos.


PD:
Este Skull Remover es infinito, si lo quieres para que se acabe avísame para modificarte el Script.

http://www.blacktibia.org/

Hellscors


Miembro
WOW GRACIAS!! pero no se puede usar si tienes PZ ,verdad? Y perdona la molestia pero no lo queria infinito :s

http://www.blacktibia.org/t32971-86-prestige-imperia-ot-server-h

El Loco Danny


Miembro
En el script de DavidR busca esta linea
Código:
doRemoveItem(item.uid, 0)
el "0" cambialo por el 1, asi:
Código:
doRemoveItem(item.uid, 1)

Hellscors


Miembro
OK! gracias!
OLLES! DavidR No me puedes agregar osea que el item no se pueda usar si no tienes RED SKULL O BLACK SKULL? Te lo agradeceria demasiado :.Pedido.:
:Gracias:

http://www.blacktibia.org/t32971-86-prestige-imperia-ot-server-h

GOD Suimty


Moderador
Yosafat mi script no sirve para white skull usa el mio, solo funciona si tienes red o black.



[Tienes que estar registrado y conectado para ver esa imagen]
http://sdrakos.servegame.com

DavidR


Moderador
NO Infinito y SOLO con Red Skull y Black Skull:


Ve a Data / Actions y abre el archivo llamado Actions.xml y coloca esto:
Código:
<action itemid="9969" event="script" value="removeskullfrag.lua"/>

Ahora ve a Data / Actions / Scripts, copia y pega cualquier archivo .lua que esté ahí y cámbiale el nombre a removeskullfrag

...Lo abres, borras todo lo que hay adentro y pones esto:
Código:
function onUse(cid, item, frompos, item2, topos)
 
        local nonremskulls =  -- Estas son las Skulls que no removerá, si el player tiene alguna de estas skulls el item no tendrá efecto.
{
        white = SKULL_WHITE
}
 
        if isInArray(nonremskulls, getPlayerSkullType(cid)) then
                doPlayerSendCancel(cid,"No puedes eliminar este tipo de calavera.")
                doSendMagicEffect(getPlayerPosition(cid),2)
      else if (getCreatureCondition(cid, CONDITION_INFIGHT) == true) then
              doPlayerSendCancel(cid,"No puedes usar este Item estando en Battle.")
                doSendMagicEffect(getPlayerPosition(cid),2)
        else
                db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. getPlayerGUID(cid) .. ")")
                doCreatureSetSkullType(cid,0)
                doPlayerSendTextMessage(cid,27,"Ya no tienes Skull")
                doSendMagicEffect(getPlayerPosition(cid),CONST_ME_MAGIC_RED)
                doSendAnimatedText(getPlayerPosition(cid), "Skull!", 180)
      doRemoveItem(item.uid, 1)
                doPlayerSetSkullEnd(cid, 0, getPlayerSkullType(cid))
 
        return TRUE
        end
end
end

Y ahora en Data / Items abres el archivo Items.xml y buscas el item ID 9969 y lo cambias por esto:
Código:
    <item id="9969" article="a" name="Skull Remover">
        <attribute key="weight" value="5000" />
    </item>

Y listo eso sería todo. Una Frag y Skull Remover para solo Black y Red Skull y que si se acaba.

Saludos.
:king:

PD: Perdona por no contestar antes, es que me fuí a dormir xD

http://www.blacktibia.org/

Hellscors


Miembro
No funciono DavidR Pero no hay problema,el anterior que me habias pasado si,me quedare con ese :Gracias:

http://www.blacktibia.org/t32971-86-prestige-imperia-ot-server-h

GOD Suimty


Moderador
Yosafat12 prueba este lo testeé en mi ot OTX i funciona 100%
Si no tienes ni red ni black no la puedes usar.
Y no es infinita.

skullremover.lua
Código:
function onUse(cid, item, frompos, item2, topos)
        local playerskull = getCreatureSkullType(cid)
        local skulls = {
                                        SKULL_NONE,
                                        SKULL_YELLOW,
                                        SKULL_GREEN,
                                        SKULL_WHITE
                                        }
 
                if isInArray(skulls, playerskull) then
                doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You don't have red or black skull.")
            return 0
        else
          doCreatureSetSkullType(cid, skulls[1])
                doRemoveItem(item.uid, 1)
                db.executeQuery("UPDATE `killers` SET `unjustified` = 0 WHERE `id` IN (SELECT `kill_id` FROM `player_killers` WHERE `player_id` = " .. getPlayerGUID(cid) .. ")")
                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your skull has been removed.")
        end
        return true
end


actions.xml
Código:
<!-- Skull Remover -->
<action itemid="9969" event="script" value="skullremover.lua"/>



[Tienes que estar registrado y conectado para ver esa imagen]
http://sdrakos.servegame.com

DavidR


Moderador
Prueba con el que te dió GOD Suimty. Ése es de OTX, el que yo te mandé es de OT... V8.60

Saludos.

http://www.blacktibia.org/

Salinas


Novato
GRACIAS AMIGO ME SIIRVIO TU SCRIPT GOD Suimty +REP

Krápula


Miembro
Lo podrias hacer como un Movement? yo he notado que todo lo que hago en mi server x las action casi nunca funciona solo x movement Yo tambien uso otx, pero no me lo agarra no me carga ningun error en la consola ni nada pero no hace su funcion el remove skull (RS.lua) que en mi caso lo tengo con Id=5188 uso otx 7x es un Servidor 7.6, Gracias y si pueden responder agradecido !

Contenido patrocinado


Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.

 

¿Quién está en línea?

En total hay 0 usuarios en línea: 0 Registrados, 0 Ocultos y 0 Invitado

Usuarios navegando en este foro: Ninguno

Forum Statistics

Nuestros miembros han públicado un total de posts en temas.
Actualmente hay miembros registrados.
Démosle la bienvenida al miembro más reciente,
La mayor cantidad de usuarios en línea ha sido de .