Postado Abril 6, 2017 8 anos Autor Em 06/04/2017 em 20:57, KotZletY disse: @Thayguroficial Mostrar conteúdo oculto Mostrar conteúdo oculto 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 Em 06/04/2017 em 21:33, 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 Mostrar conteúdo oculto 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 Em 07/04/2017 em 03:23, KotZletY disse: @Thayguroficial Mostrar conteúdo oculto Mostrar conteúdo oculto 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.