• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    [CreatureEvents] Critical System por Vocacion

    Compartir:

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

    1default [CreatureEvents] Critical System por Vocacion el Mar Mayo 01, 2018 11:52 am

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    Hola usuarios de tibiaface


    El sistema trata de chances a cada vocacion de sacar un critical hit

    data/creaturescripts/scripts:
    copiamos cualquier archivo y renombramos por CriticalVocs.lua y esto pegamos dentro

    Código:
    local CriticalHitMsg, hit  = true, --- true (false) para mostrar o no) el valor de hit en Default
    { -- porcentage de aumento do hit, 1.2 = 20%, 2.0 = 100%, 1.4 = 40% y asi...
    [0] = {percent = 1.0},
    [1] = {percent  = 2.0},
    [2] = {percent = 1.5},
    [3] =  {percent = 2.0},
    [4] =  {percent = 1.5},
    [5] =  {percent = 2.0},
    [6] =  {percent = 1.5},
    [7] = {percent = 1.5},
    [8] =  {percent = 2.0}
    }

    local protect = {}
    function onStatsChange(cid, attacker, type, combat, value)
        if isPlayer(attacker) and (not (attacker == cid)) and (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS) and isPlayer(cid) and value >=1 then
            if (getPlayerStorageValue(attacker, 19830)) >= math.random (0,100) then
                if protect[attacker] then protect[attacker] = nil return true end
                critical = math.ceil(2*value*hit[getPlayerVocation(attacker)].percent)
                protect[attacker] = true
                doTargetCombatHealth(attacker, cid, combat, -critical, -critical, CONST_ME_NONE)
                if CriticalHitMsg then
                    doPlayerSendTextMessage(attacker, MESSAGE_STATUS_CONSOLE_ORANGE, "CRITICAL HIT: "..math.floor((critical/2)))
                end
                doSendAnimatedText(getCreaturePos(attacker), "CRITICAL!!", COLOR_DARKRED)
            return false
            end
        end
    return true
    end

    ahora agragamo esta tag en:

    data/creaturescripts/creaturescripts.xml
    Código:
    <event type="statschange" name="CriticalHit" event="script" value="CriticalVocs.lua"/>


    en login.lua agregamos:

    Código:
    local chanceTable = { -- chance [0 a 100%] para critical hit
    [0] = {chance = 10},
    [1] = {chance = 20},
    [2] = {chance = 30},
    [3] = {chance = 50},
    [4] = {chance = 40},
    [5] = {chance = 20},
    [6] = {chance = 30},
    [7] = {chance = 50},
    [8] = {chance = 40}
    }

    registerCreatureEvent(cid, "CriticalHit")

    setPlayerStorageValue(cid, 19830, chanceTable[getPlayerVocation(cid)].chance)

    y listo

    configuracion:

    [1] - Sorcerer ; [5] - Master Sorcerer

    [2] - Druid; [6] - Elder Druid

    [3] - Paladin; [7] - Royal Paladin

    [4] - Knight; [8] - Elite Knight 


    creditos:  Leoxtibia



    Ver perfil de usuario http://www.tibiaface.com

    Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje (Página 1 de 1.)

    Temas similares

    -

    » 4D system y Zero G

    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).