Ir para conteúdo

Featured Replies

Postado

galera, já tentei de tudo, mas nao consigo adicionar cooldown nessa magia!

poderiam me ajudar?

Spoiler

local tempo = 20 -- tempo em segundos.
local effect = {29} -- effect no player, caso queira apenas 1, basta remover os outros numeros.
local text = 'Skill Up!'

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)

local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1500)
setConditionParam(condition, CONDITION_PARAM_SKILL_MELEEPERCENT, 165)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELDPERCENT, 160)
setCombatCondition(combat, condition)

local condition = createConditionObject(CONDITION_REGENERATION)
setConditionParam(condition, CONDITION_PARAM_SUBID, 1)
setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1500)
setCombatCondition(combat, condition)


function magicEffect3(tempo2,tempo3,cid)
if (isCreature(cid)) then
    if getPlayerStorageValue(cid, 102053) ~= 0 and getCreatureCondition(cid, CONDITION_REGENERATION, 1) then
        for i=1, #effect do
        local position = {x=getPlayerPosition(cid).x+0, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z}
        doSendMagicEffect(position, effect)
        doSendAnimatedText(getCreaturePos(cid), text, TEXTCOLOR_RED)
        end
    end
end
end

function onCastSpell(cid, var)
if getPlayerStorageValue(cid, 10569) == 1 then
doSendAnimatedText((getCreaturePosition(cid)), "Socorro!", 255)
doSendMagicEffect(getCreaturePosition(cid), 19)
doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED)
return false 

elseif getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then
    doCombat(cid, combat, var)
    tempo2 = 0
    while (tempo2 ~= (tempo*1500)) do
        addEvent(magicEffect3, tempo2, tempo2, tempo*1500, cid)
        tempo2 = tempo2 + 1500
    end
    doCreatureSay(cid, "Exevo Grav", TALKTYPE_MONSTER)
else
    doPlayerSendCancel(cid, "Desculpe, mais você ainda está no efeito da magia.")
    doSendMagicEffect(getCreaturePosition(cid), 2)
end
end

 

tumblr_o70wteR8521r9n6kzo1_400.gif

Resolvido por Celulose

Ir para solução
  • Respostas 8
  • Visualizações 383
  • Created
  • Última resposta

Top Posters In This Topic

Postado


local tempo = 20 -- tempo em segundos.
local effect = {29} -- effect no player, caso queira apenas 1, basta remover os outros numeros.
local text = 'Skill Up!'

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)

local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1500)
setConditionParam(condition, CONDITION_PARAM_SKILL_MELEEPERCENT, 165)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELDPERCENT, 160)
setCombatCondition(combat, condition)

local condition = createConditionObject(CONDITION_REGENERATION)
setConditionParam(condition, CONDITION_PARAM_SUBID, 1)
setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1500)
setCombatCondition(combat, condition)


function magicEffect3(tempo2,tempo3,cid)
if (isCreature(cid)) then
    if getPlayerStorageValue(cid, 102053) ~= 0 and getCreatureCondition(cid, CONDITION_REGENERATION, 1) then
        for i=1, #effect do
        local position = {x=getPlayerPosition(cid).x+0, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z}
        doSendMagicEffect(position, effect)
        doSendAnimatedText(getCreaturePos(cid), text, TEXTCOLOR_RED)
        end
    end
end
end

function onCastSpell(cid, var)
  if exhaustion.check(cid, 15000) == TRUE then
	doPlayerSendCancel(cid, "Podera usar novamente dentro de 2 segundos.")
 return false
    end
if getPlayerStorageValue(cid, 10569) == 1 then
doSendAnimatedText((getCreaturePosition(cid)), "Socorro!", 255)
doSendMagicEffect(getCreaturePosition(cid), 19)
doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED)
return false 

elseif getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then
    doCombat(cid, combat, var)
    tempo2 = 0
    while (tempo2 ~= (tempo*1500)) do
        addEvent(magicEffect3, tempo2, tempo2, tempo*1500, cid)
        tempo2 = tempo2 + 1500
        exhaustion.set(cid, 15000, 2.0)
    end
    doCreatureSay(cid, "Exevo Grav", TALKTYPE_MONSTER)
else
    doPlayerSendCancel(cid, "Desculpe, mais você ainda está no efeito da magia.")
    doSendMagicEffect(getCreaturePosition(cid), 2)
end
end

edit : esqueci do return false'
 

Editado por Dragon Ball Hiper (veja o histórico de edições)

Postado
  • Autor
4 minutos atrás, Dragon Ball Hiper disse:

local tempo = 20 -- tempo em segundos.
local effect = {29} -- effect no player, caso queira apenas 1, basta remover os outros numeros.
local text = 'Skill Up!'

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)

local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1500)
setConditionParam(condition, CONDITION_PARAM_SKILL_MELEEPERCENT, 165)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELDPERCENT, 160)
setCombatCondition(combat, condition)

local condition = createConditionObject(CONDITION_REGENERATION)
setConditionParam(condition, CONDITION_PARAM_SUBID, 1)
setConditionParam(condition, CONDITION_PARAM_BUFF, TRUE)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1500)
setCombatCondition(combat, condition)


function magicEffect3(tempo2,tempo3,cid)
if (isCreature(cid)) then
    if getPlayerStorageValue(cid, 102053) ~= 0 and getCreatureCondition(cid, CONDITION_REGENERATION, 1) then
        for i=1, #effect do
        local position = {x=getPlayerPosition(cid).x+0, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z}
        doSendMagicEffect(position, effect)
        doSendAnimatedText(getCreaturePos(cid), text, TEXTCOLOR_RED)
        end
    end
end
end

function onCastSpell(cid, var)
  if exhaustion.check(cid, 15000) == TRUE then
	doPlayerSendCancel(cid, "Podera usar novamente dentro de 2 segundos.")
if getPlayerStorageValue(cid, 10569) == 1 then
doSendAnimatedText((getCreaturePosition(cid)), "Socorro!", 255)
doSendMagicEffect(getCreaturePosition(cid), 19)
doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED)
return false 

elseif getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then
    doCombat(cid, combat, var)
    tempo2 = 0
    while (tempo2 ~= (tempo*1500)) do
        addEvent(magicEffect3, tempo2, tempo2, tempo*1500, cid)
        tempo2 = tempo2 + 1500
        exhaustion.set(cid, 15000, 2.0)
    end
    doCreatureSay(cid, "Exevo Grav", TALKTYPE_MONSTER)
else
    doPlayerSendCancel(cid, "Desculpe, mais você ainda está no efeito da magia.")
    doSendMagicEffect(getCreaturePosition(cid), 2)
end
end

 

aonde eu edito os segundos para usar novamente??

tumblr_o70wteR8521r9n6kzo1_400.gif

Postado
  • Autor
1 minuto atrás, Dragon Ball Hiper disse:

 exhaustion.set(cid, 15000, 2.0)   2.0 = 2 segundos.

lol, a magia "parou de existir"! não aconteceu nada, como se eu escrevesse algo no default, nem erro no console deu

tumblr_o70wteR8521r9n6kzo1_400.gif

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo