Ir para conteúdo
  • 0

Spell de revidar ataque


Allangod

Pergunta

Tenho uma spell (do Wolf) que faz com que ao usar a spell, você irá revidar 1 ataque que você tomar.

Porém eu gostaria de que ao invés de revidar somente 1 ataque, revidar 10 segundos de ataque.

Segue abaixo o script do Wolf

Spell

 

 

local config = {
storage = 3482101,
cooldown = 20,
effect1 = 179 --- efeito que sai qnd usa a spell
}
function onCastSpell(cid, var)
if getPlayerStorageValue(cid, config.storage) == 1 then
doPlayerSendCancel(cid, "Seu jutsu já está ativo.")
return false
end
if os.time() - getPlayerStorageValue(cid, 55694) >= config.cooldown then
setPlayerStorageValue(cid, 55694, os.time())
doSendMagicEffect(getCreaturePosition(cid), config.effect1)
setPlayerStorageValue(cid, config.storage, 1)
doPlayerSendTextMessage(cid, 27, "Você ativou o Shiji Hyoketsu, à partir de agora você está refletindo o dano.")
else
doPlayerSendCancel(cid, "Your skill is in cooldown, you must wait "..(config.cooldown - (os.time() - getPlayerStorageValue(cid, 55694))).." seconds.")
return false
end
return true
end

creaturescripts/scripts/reflect

local config = {
storage = 3482101,
effect1 = 179, --- efeito que sai ao dar reflect
effect2 = 0 -- efeito que aparece na pessoa que levou reflect
}
function onStatsChange(cid, attacker, type, combat, value)
if value >= 1 and (type == STATSCHANGE_HEALTHLOSS or (getCreatureCondition(cid, CONDITION_MANASHIELD) and type == STATSCHANGE_MANALOSS)) then
if getPlayerStorageValue(cid,config.storage) == 1 and isCreature(attacker) then
doSendAnimatedText(getCreaturePosition(attacker),"-"..value, 215)
doCreatureAddHealth(attacker, -value, true)
doCreatureSay(cid,"Shiji Hyoketsu!", 19)
doSendMagicEffect(getCreaturePosition(cid), config.effect1)
doSendMagicEffect(getCreaturePosition(attacker), config.effect2)
setPlayerStorageValue(cid,config.storage, 0)
return false
end
end
return true
end

Login.lua

if getPlayerStorageValue(cid, 3482101) ~= 0 then
setPlayerStorageValue(cid, 3482101, 0)
end

Obrigado.

 

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Na spell, troque:

setPlayerStorageValue(cid, config.storage, 1)

por:

setPlayerStorageValue(cid, config.storage, os.time() + 10)

No creatureevent, troque:

if getPlayerStorageValue(cid,config.storage) == 1 and isCreature(attacker) then

por:

if getPlayerStorageValue(cid, config.storage) > os.time() and isCreature(attacker) then

E remova a linha:

setPlayerStorageValue(cid,config.storage, 0)

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...