Ir para conteúdo
  • 0

creaturescripts/spell erro.


othereality

Pergunta

Essa é uma magia que quando usada fará com que o próximo hit do player de um dano extra baseado em um storage que é a quantidade do atributo 'força' que o player tem:

 

spells tag:

<instant name="fire hit" words="fire hit" lvl="3" mana="35" prem="0" aggressive="0" selftarget="1" exhaustion="500" needlearn="1" event="script" value="MELEE/fire hit.lua">
<vocation id="1"/>
</instant>

 

spells lua:

local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED)
setCombatParam(combat1, COMBAT_PARAM_AGGRESSIVE, 0)

function onCastSpell(cid, var)
if exhaustion.check(cid, 23210) == FALSE then
setPlayerStorageValue(cid, 23194, 1)
exhaustion.set(cid, 23210, 7)
return doCombat(cid, combat1, var)
else
doPlayerSendCancel(cid, "Cooldown[" ..exhaustion.get(cid, 23210).."]")
end
end

 

creaturescripts tag:

<event type="statschange" name="firehit" event="script" value="fire_hit.lua"/>
<event type="combat" name="firehit" event="script" value="fire_hit.lua"/>

 

creaturescripts lua:


function onStatsChange(cid, attacker, type, combat, value)
if type == STATSCHANGE_HEALTHLOSS then
		if isPlayer(attacker) then
				if getPlayerStorageValue(attacker, 23194) == 1 then
					   setPlayerStorageValue(attacker, 23194, 0)
					   local damageMin = (getPlayerStorageValue(attacker, 23222) * 2)
					   local damageMax = (getPlayerStorageValue(attacker, 23222) * 4)
					   doTargetCombatHealth(attacker, cid, COMBAT_DEATHDAMAGE, -damageMin, -damageMax, CONST_ME_DEATHDAMAGE)
				end
		end
end
return 1
end

function onCombat(cid, target)
if isPlayer(cid) then
	registerCreatureEvent(target, "fireHit")
end
return 1
end

 

login.lua:

registerCreatureEvent(cid, "firehit")

 

Postei tudo para deixar bem claro, mas por algum motivo a magia não funciona e nem apresenta nenhum erro no cmd.

Ela gasta mana e adiciona o storage mas acho que tem algo errado no creaturescript porque não está dando o dano extra nem mesmo removendo a storage depois do hit seguinte.

Editado por OtheReality
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

<event type="statschange" name="firehit" event="script" value="fire_hit.lua"/>

 

tem que mudar essa linha ai pra isso:

 

<event type="statschange" name="fireHit" event="script" value="fire_hit.lua"/>

 

o h tem que ser maiúsculo pra diferenciar os 2 eventos

Editado por brun123
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...