• TibiaFace

    Tibiaface | Una comunidad Open Tibia donde encontras : mapas, scripts, Otserver, npc y amigos etc ...

    .
    demo menumenu

    Afiliados



    Votar:

    [Pedido] Sistema para robar vida usando algunas armas.

    Compartir:

    Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje (Página 1 de 1.)

    Este pequeño sistema de life leech compatible con TFS 0.4 y OTX 2.9
    lo cree a peticion de un usuario de tibiaface llamado: (Osvaldo Escobedo Luque)! bueno aqui esta el script.

    Primero que nada deben crear un archivo.lua en la direccion (data/creaturescripts/scripts/...) con el nombre (onExecuteLifeLeech.lua),,, y pegan este codigo dentro de ese archivo.
    Código:
    --[[SevuEntertainment(c)]]--
    local onExecuteLifeLeech = true
    local acceptDamageTypes = { STATSCHANGE_HEALTHLOSS } --STATSCHANGE_MANALOSS
    local _weaponIdsExtraChance = {
     [2182] = { chance = 100, amount = 0.25 }, -- max chance 100, amount 1 = 100%
     [2190] = { chance = 10, amount = 0.25 }
    }

    function onStatsChange(cid, attacker, type, combat, value)
     local player = attacker
     local target = cid
     local deny = true
     if not onExecuteLifeLeech then
     return true
     end
     if not isInArray(acceptDamageTypes, type) then
     return true
     end
     if isPlayer(player) and isCreature(target) then
     deny = false
     end
     local tool = getPlayerWeapon(player).itemid
     local extraInfo = _weaponIdsExtraChance[tool]
     if deny or not extraInfo then
     return true
     end
     local random = math.random(0, 100)
     if extraInfo.chance >= random then
     local absorb = value * extraInfo.amount
     doCreatureAddHealth(player, absorb)
     doSendAnimatedText(getCreaturePos(player), "Absorb", 250)
     end
    return true
    end

    Hay tienen varias configuraciones y agregan el ID del arma con su respectivo chance y la cantidad de amount, que seria el porcentaje que roba de tu propio ataque.

    Luego tienen que registrar el evento en (creaturescripts.xml)
    Código:
    <event type="statschange" name="onExecuteLifeLeech" event="script" value="onExecuteLifeLeech.lua"/>

    al igual en su (login.lua)
    despues de onLogin(cid)...
    Código:
    registerCreatureEvent(cid, 'onExecuteLifeLeech')
    registerCreatureEvent(cid, 'sendRegisterMonster')

    Esto funciona de player vs player!
    para que funcione con los mostros, tienes que añadir esto en tu (creaturescripts.xml)
    Código:
    <event type="combat" name="sendRegisterMonster" event="script" value="sendRegisterMonster.lua"/>

    Despues crean un archivo.lua en (creaturescripts/scripts/...) con el nombre sendRegisterMonster.lua y pegan este codigo dentro de ese archivo:
    Código:
    function onCombat(cid, target)
     if not isPlayer(cid) and not isCreature(target) then
     return true
     end
     registerCreatureEvent(target, 'onExecuteLifeLeech')
     return true
    end



    Si necesitas hospedaje para tu servidor usa este enlace y mira los buenos planes de Windows y Linux:
    Si tu cuenta de PayPal no esta verificada no importara, igual aceptan pagos con cuentas no verificadas.


    Ver perfil de usuario

    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.

     

    BienvenidosTibiaFace es una comunidad de Open Tibia. Para participar debes estar registrado (click para Regístrate).