Postado Abril 6, 2017 8 anos Autor 32 minutos atrás, KotZletY disse: @Thayguroficial Ocultar conteúdo local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, 30000) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, 25) setConditionParam(condition, CONDITION_PARAM_BUFF, true) setCombatCondition(combat, condition) function onCastSpell(cid, var) local pos = getPlayerPosition(cid) local vocs = { --[id da voc] = efeito dela [1] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [2] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [3] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [4] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [5] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [6] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [7] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [8] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [9] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [10] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}} } if exhaustion.check(cid, 13101) == TRUE then doPlayerSendCancel(cid, "Podera usar novamente dentro de 30 segundos.") doSendMagicEffect(pos, 2) return false end for k = 1, 10 do addEvent(function() if isCreature(cid) then if vocs[getPlayerVocation(cid)] then doSendMagicEffect(vocs[getPlayerVocation(cid)][2], vocs[getPlayerVocation(cid)][1]) else doSendMagicEffect(vocs[getPlayerVocation(cid)][2], 107) -- efeito pardão caso a vocação do player que irá usar não esteja na tabela. end end end, 1 + ((k-1) * 300)) end exhaustion.set(cid, 13101, 30.0) return doCombat(cid, combat, var) end {x=pos.x+0, y=pos.y+0, z=pos.z}} x+1 é mais para a direita x-1 é mais para esquerda, y+1 mais para baixo y-1 mais para cima a cada +1 é igual 1x sqm a mais. z é a floor atual, não mecha, caso contrario o efeito irá aparecer em tal pos, porém em outro andar. Hahsuahs +0 é igual a posição padrão. Configure como quiser. Abraços, e até a mais! Alterei o {x=pos.x+0, y=pos.y+0, z=pos.z}} para {x=pos.x+1, y=pos.y+0, z=pos.z}} o efeito ficou certinho onde eu queria, o problema é que ele só solta o efeito 1x. Não é continuo até o termino da spell (30 segundos).
Postado Abril 6, 2017 8 anos @Thayguroficial for k = 1, 10 do antes estava 1, 100 altere novamente. Diminuir apenas para testar.
Postado Abril 6, 2017 8 anos Autor 6 minutos atrás, KotZletY disse: @Thayguroficial for k = 1, 10 do antes estava 1, 100 altere novamente. Diminuir apenas para testar. Agora o efeito está durando 30 segundos, só que o efeito fica parado no sqm em que foi usado a spell, ele não acompanha o personagem.
Postado Abril 7, 2017 8 anos Este é um post popular. @Thayguroficial Spoiler local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, 30000) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, 25) setConditionParam(condition, CONDITION_PARAM_BUFF, true) setCombatCondition(combat, condition) function onCastSpell(cid, var) if exhaustion.check(cid, 13101) == TRUE then doPlayerSendCancel(cid, "Podera usar novamente dentro de 30 segundos.") doSendMagicEffect(pos, 2) return false end for k = 1, 10 do addEvent(function() local pos = getPlayerPosition(cid) local vocs = { --[id da voc] = efeito dela [1] = {107, {x=pos.x+4, y=pos.y+3, z=pos.z}}, [2] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [3] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [4] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [5] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [6] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [7] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [8] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [9] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [10] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}} } if isCreature(cid) then if vocs[getPlayerVocation(cid)] then doSendMagicEffect(vocs[getPlayerVocation(cid)][2], vocs[getPlayerVocation(cid)][1]) else doSendMagicEffect(vocs[getPlayerVocation(cid)][2], 107) -- efeito pardão caso a vocação do player que irá usar não esteja na tabela. end end end, 1 + ((k-1) * 300)) end exhaustion.set(cid, 13101, 30.0) return doCombat(cid, combat, var) end
Postado Abril 7, 2017 8 anos Autor 51 minutos atrás, KotZletY disse: @Thayguroficial Ocultar conteúdo local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false) local condition = createConditionObject(CONDITION_ATTRIBUTES) setConditionParam(condition, CONDITION_PARAM_TICKS, 30000) setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, 25) setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, 25) setConditionParam(condition, CONDITION_PARAM_BUFF, true) setCombatCondition(combat, condition) function onCastSpell(cid, var) if exhaustion.check(cid, 13101) == TRUE then doPlayerSendCancel(cid, "Podera usar novamente dentro de 30 segundos.") doSendMagicEffect(pos, 2) return false end for k = 1, 10 do addEvent(function() local pos = getPlayerPosition(cid) local vocs = { --[id da voc] = efeito dela [1] = {107, {x=pos.x+4, y=pos.y+3, z=pos.z}}, [2] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [3] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [4] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [5] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [6] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [7] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [8] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [9] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}}, [10] = {107, {x=pos.x+0, y=pos.y+0, z=pos.z}} } if isCreature(cid) then if vocs[getPlayerVocation(cid)] then doSendMagicEffect(vocs[getPlayerVocation(cid)][2], vocs[getPlayerVocation(cid)][1]) else doSendMagicEffect(vocs[getPlayerVocation(cid)][2], 107) -- efeito pardão caso a vocação do player que irá usar não esteja na tabela. end end end, 1 + ((k-1) * 300)) end exhaustion.set(cid, 13101, 30.0) return doCombat(cid, combat, var) end CARALHOO, desculpa pelo palavrão mas eu tive que expressar minha felicidade, quero te agradecer pela ajuda. Pessoas como você, meu deus tenho nem palavras. Muito obrigado de verdade. Funcionou perfeitamente do jeito que eu queria. REP+++ que merecido edit: criando 3 contas pra te da rep+ Editado Abril 7, 2017 8 anos por Thayguroficial (veja o histórico de edições)
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.