Ir para conteúdo

[Resolvido][Spells] 3 Meeegas Duvidas!


karanzinho123

Posts Recomendados

1ª duvida;2ª

tem como eu modificar o nome das classes? se sim quando for criar a magia nova dela eu ponho o nome antigo ou o novo? (ex: era paladin e viro shoter, na xml das spells coloco paladin ou shoter?)

 

3ª duvida

existe alguma forma de fazer spells que "empurram"(melhor dizendo "repelem") players e monstros, se tiver alguem pode me manda 1 tuto, ou explicar via pm, ou melhor ainda me adicionar no msn?

 

 

obrigado por todos

meu msn: feliipek@hotmail.com

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

1 - Sim, tem. Você deverá colocar o nome da nova classe, ou, substituir o novo nome pelo nome velho, assim dizendo. Mas eu aconselho que quando você registar suas magias no spells.xml, use a seguinte estrutura, em vez de:

 

<vocation name="nome da vocação"/>

 

Use:

 

<vocation id="id da vocação"/>

 

Porque assim, quando você mudar o nome da vocação no vocations.xml, não será preciso substituir um monte de nomes no spells.xml.

 

 

2 - Também há uma maneira de empurrar players com magias. Creio eu que é usando a função getThingPosition através dos parâmetros x, y e z.

 

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 42)

function onGetFormulaValues(cid, level, maglevel, factor)
local magicDamage = maglevel + level
	return -(magicDamage * 0.5), -(magicDamage * 0.7)
end

function onCastSpell(cid, var)
newpos = {x=(getThingPosition(getCreatureTarget(cid)).x)+2, y=(getThingPosition(getCreatureTarget(cid)).y), z=(getThingPosition(getCreatureTarget(cid)).z)}
doTeleportThing(getCreatureTarget(cid), newpos)
return doCombat(cid, combat, var)
end

 

O script que eu fiz acima, é uma magia básica que faz aquele efeito de tornado de gelo e empurra a criatura 2 sqms na horizontal.

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

Acho que seria assim:

 

local combat = createCombatObject()
       setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)
       setCombatParam(combat, COMBAT_PARAM_EFFECT, 42)

function onGetFormulaValues(cid, level, maglevel, factor)
       local magicDamage = maglevel + level
               return -(magicDamage * 0.5), -(magicDamage * 0.7)
end

function onCastSpell(cid, var)
       newpos = {x=(getThingPosition(getCreatureTarget(cid)).x)[color="#000080"]+2, [/color]y=(getThingPosition(getCreatureTarget(cid)).y), z=(getThingPosition(getCreatureTarget(cid)).z)}
       doTeleportThing(getCreatureTarget(cid), newpos)
       return doCombat(cid, combat, var)
end

 

Alí onde eu marquei o "+2" é o número de casas que ele vai ter que andar.

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

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...