Ir para conteúdo
  • Cadastre-se

TRANSFORMAR SCRIPT [creaturescripts] EM [actions] PF!


Posts Recomendados

Esse script era em creature, porem ''tentei'' botar ele como action, so q n funcionou ! =[
alguem me ajudar a colocar esse script em action para funcionar porfavor !
e quando quando der user no item 12575 aparecesse quanto de percentual de dano eu tenho.

 

Citar

local config = { 
    ITEM_ID = 12575, -- id do skill...
    multiplier = 1.5,
    percentual = 0.5,
}
function onUse(cid, item, fromPosition, itemEx, toPosition)
    registerCreatureEvent(cid, "critical")
    registerCreatureEvent(cid, "comcriti")
    return true
end
function onStatsChange(cid, attacker, type, combat, value)
    if isPlayer(attacker) and (not (attacker == cid)) and (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS) then
        local chance = (getPlayerSkillLevel(attacker, config.ITEM_ID) * config.percentual) * 10
        if math.random(1, 1400) <= chance then
            dano = math.ceil(value*(config.multiplier))
            doTargetCombatHealth(attacker, cid, combat, -dano, -dano, 255)
            return false
        end
    end
    return true


O script original

Citar

  local config = { 
    SKILL_ID = 0, -- id do skill...
    multiplier = 1.5,
    percentual = 0.5,
}
function onLogin(cid)
    registerCreatureEvent(cid, "critical")
    registerCreatureEvent(cid, "comcriti")
    return true
end
function onStatsChange(cid, attacker, type, combat, value)
    if isPlayer(attacker) and (not (attacker == cid)) and (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS) then
        local chance = (getPlayerSkillLevel(attacker, config.SKILL_ID) * config.percentual) * 10
        if math.random(1, 1400) <= chance then
            dano = math.ceil(value*(config.multiplier))
            doTargetCombatHealth(attacker, cid, combat, -dano, -dano, 255)
            return false
        end
    end
    return true
end
function onCombat(cid, target)
    if isPlayer(cid) and isMonster(target) then
        registerCreatureEvent(target, "critical")    
    end
    return true
end

 

 

Editado por deza (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • deza mudou o título para TRANSFORMAR SCRIPT [creaturescripts] EM [actions] PF!

tenta assim 

 

local config = {
    SKILL_ID = 0,
    multiplier = 1.5,
    percentual = 0.5,
}

function onLogin(cid)
    return true
end

function onStatsChange(cid, attacker, type, combat, value)
    if isPlayer(attacker) and (not (attacker == cid)) and (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS) then
        local chance = (getPlayerSkillLevel(attacker, config.SKILL_ID) * config.percentual) * 10
        if math.random(1, 1400) <= chance then
            local damage = math.ceil(value * config.multiplier)
            doTargetCombatHealth(attacker, cid, combat, -damage, -damage, 255)
            return false
        end
    end
    return true
end

function onCombat(cid, target)
    if isPlayer(cid) and isMonster(target) then
        registerCreatureEvent(target, "critical")
    end
    return true
end

function onThink(cid)
    return true
end

function onDisappear(cid)
    return true
end

function onAppear(cid)
    return true
end

Link para o post
Compartilhar em outros sites

Sobre não ser possível usar essas funções, como por exemplo 'onStatsChange', 'onHealthChange' e 'onManaChange', no onUse... apenas em CreatureScript. Então, fiz uma adaptação aqui...

Você deve substituir tudo isso e, em seguida, adicionar em suas 'actions'. Clique no item e terá informações sobre o dano percentual, etc.

 

creaturescripts.

CRITICAL_DAMAGE_PERCENTAGE = 0.5

local config = { 
    SKILL_ID = 0,
    multiplier = 1.5,
    percentual = CRITICAL_DAMAGE_PERCENTAGE,
}

function onLogin(cid)
    registerCreatureEvent(cid, "critical")
    registerCreatureEvent(cid, "comcriti")
    return true
end

function onStatsChange(cid, attacker, type, combat, value)
    if isPlayer(attacker) and (not (attacker == cid)) and (type == STATSCHANGE_HEALTHLOSS or type == STATSCHANGE_MANALOSS) then
        local chance = (getPlayerSkillLevel(attacker, config.SKILL_ID) * config.percentual) * 10
        if math.random(1, 1400) <= chance then
            local dano = math.ceil(value * config.multiplier)
            doTargetCombatHealth(attacker, cid, combat, -dano, -dano, 255)
            return false
        end
    end
    return true
end

function onCombat(cid, target)
    if isPlayer(cid) and isMonster(target) then
        registerCreatureEvent(target, "critical")    
    end
    return true
end

actions.



function onUse(cid, item, fromPosition, itemEx, toPosition)
    if item.itemid == 12575 then
        local percentage = CRITICAL_DAMAGE_PERCENTAGE * 100
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Seu percentual de dano crítico é de " .. percentage .. "%.")
        return true
    end
    return false
end

tentar..

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo