Ir para conteúdo
Banner com Efeitos

Featured Replies

Postado

Fala pessoal. Eu quero fazer uma spell que faz uma wave, da dano, transforma quem atingir em um item, e deixe imóvel e mutado por 5 segundos. Por enquanto estou usando paralyze, mas acho muito ruim, pois pode ser curado ai fica o item andando. 

 

Segue o código que eu tenho:

 

local combat, area = createCombatObject(), createCombatArea(AREA_BEAM6,AREADIAGONAL_BEAM6)

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
setCombatArea(combat, area)
local condition = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition, CONDITION_PARAM_TICKS, 12000)
for i = 5474, 5474 do
addOutfitCondition(condition, {lookTypeEx = i})
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
local condition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(condition, CONDITION_PARAM_TICKS, 12000)
setConditionParam(condition, CONDITION_PARAM_SPEED, -700)
setCombatCondition(combat, condition)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -60, -1, -60, 5, 5, 4, 7)
end
setCombatCondition(combat, condition)
function onCastSpell(cid, var)
return doCombat(cid, combat, var)
end

Postado
  • Autor
14 horas atrás, diarmaint disse:

Cara, não entendo muito de script mas uso assim


local target = getCreatureTarget(cid)
doCreatureSetNoMove(target, true)
addEvent(doCreatureSetNoMove, 3 * 1000, target, false)

 

Não deu, mas é quase isso cara. Esse target eu acho que só funciona para spells tipo "exori flam" que precisam do target. Tem que fazer ele entender que o target é quem levou o hit pela wave. Acredito que seja um detalhezinho que falta. Para usar o seu por enquanto estou usando needtarget="1", mas isso fica meio estranho. 

EDIT:

 

To testando ela aqui e tem um erro dando na distro quando o monstro morre. Tipo se tu mata com a spell assim como ta ele procura onde ta a criatura para tirar o NotMove mas não encontra. Tem como arrumar isso?

[24/9/2020 13:3:49] In a timer event called from: 
[24/9/2020 13:3:49] data/spells/scripts/especial/teste.lua:onCastSpell
[24/9/2020 13:3:49] Description: 
[24/9/2020 13:3:49] (luaDoCreatureSetNoMove) Creature not found

Olha como ficou o script:

 

local combat, area = createCombatObject(), createCombatArea(AREA_BEAM6,AREADIAGONAL_BEAM6)

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_GREEN)
setCombatArea(combat, area)
local condition = createConditionObject(CONDITION_OUTFIT)
setConditionParam(condition, CONDITION_PARAM_TICKS, 6000)
for i = 5474, 5474 do
addOutfitCondition(condition, {lookTypeEx = i})
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)
local condition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(condition, CONDITION_PARAM_TICKS, 6000)
setConditionParam(condition, CONDITION_PARAM_SPEED, -700)
setCombatCondition(combat, condition)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -60, -1, -60, 5, 5, 4, 7)
end
setCombatCondition(combat, condition)
function onCastSpell(cid, var)
local target = getCreatureTarget(cid)
doCreatureSetNoMove(target, true)
addEvent(doCreatureSetNoMove, 6 * 1000, target, false)
return doCombat(cid, combat, var)
end

 

 

Editado por Vorkhon (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.

Visitante
Responder

Quem Está Navegando 0

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

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo