Ir para conteúdo

Áreas E Efeitos De Spells


Caronte

Posts Recomendados

Muita gente não sabe , por isso que eu vou postar um tutorial na minha opinião muito simples :

 

 

Mudando o efeito de suas spells e áreas :

 

 

Áreas:

 

Abra em seu ot :

Data > Spells > Scripts > Attack / ...

 

Irei dar um exemplo de magias que ocupam áreas > ÁREA WAVE

 

Abra uma Spell seja de attack ou de healing que ocupam áreas (exura gran mas res , exori , exevo gran mas frigo)

OBS :. Se tiver dificuldades de abrir a magias que você deseja , abra seu ot ou vá em um ot qualquer abra o spellbook e vai estar o nome da spell e o nome de conjuramento .

 

Como por exemplo o do -> exori gran - fierce berserk : 340 , <=== No Spellbook

Abra o Fierce berserk no Data > Spells > Attack

 

Estará assim :

 

 

 

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITAREA)

setCombatParam(combat, COMBAT_PARAM_USECHARGES, true)

 

local area = createCombatArea(AREA_SQUARE1X1)

setCombatArea(combat, area)

 

function onGetFormulaValues(cid, level, skill, attack, factor)

local skillTotal, levelTotal = skill + attack * 2, level / 5

return -(skillTotal * 1.1 + levelTotal), -(skillTotal * 3 + levelTotal)

end

 

setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

 

 

*A Area Grifada é a area onde ocorrerá a magia , a area em parêntesis e maiúscula .

 

Para Editar ou visualizar o território da magia você deve ir em :

Data > Spells > Lib > Spells

 

Lá estará mostrando várias grades com numeraçao de 0 a 3 com a excessão do 2 .

 

O 1 > Mostra onde pegará a magia

O 0 > Onde a magia não alcançará

O 3 > É o Player Executando a magia

 

Eu recomendo pegar a area da magia citada acima >AREA_SQUARE1x1,

E apertar Ctrl + F e adicionar a area (AREA_SQUARE1x1)

 

Para alterar , procure a area que deseja substituir por exemplo : AREA_WALLFIELD

 

 

AREA_WALLFIELD =

{1, 1, 3, 1, 1}

 

 

Ficará assim o fierce berserk (exori)

 

 

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITAREA)

setCombatParam(combat, COMBAT_PARAM_USECHARGES, true)

 

local area = createCombatArea(AREA_WALLFIELD)

setCombatArea(combat, area)

 

function onGetFormulaValues(cid, level, skill, attack, factor)

local skillTotal, levelTotal = skill + attack * 2, level / 5

return -(skillTotal * 1.1 + levelTotal), -(skillTotal * 3 + levelTotal)

end

 

setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

 

 

 

 

Em imagem ficará deste jeito :

semttuloexh.png

 

Efeitos :

 

Os tambem são faceis , Onde podemos visualiza-los ?

 

Extamente em : Data > Lib > 000-Constant .

 

Lá Voce Encontra Tipos de efeitos

 

Eu só irei ensinar os ANI e ME

 

ANI :

 

Ele é um efeito de magia a ser lançada (exori mort , exori hur e até a SD )

 

ME :

 

Ele é um efeito de magia que consiste a ficar no solo (exori gran , exori , exevo gran mas frigo)

 

------------------------------------------

 

o efeito grifado em verde lá em cima é o ME para explicar , é o mesmo processo das areas .

retire o fragmento verde subilinhado e negrito , CTRL + F no arquivo 000-Constant pode-se mudar qualquer

um tipo que está na estrofe ou que possui o nomeamento de CONST_ME , copie e cole no CONST_ME_HITAREA

por exemplo usarei o : CONST_ME_BLOCKHIT = 3 , Retire o = 3 , e subistitua-o , usando o exori gran como modelo

ficará assim salvando o arquivo e dando reload nas spells :

 

 

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_BLOCKHIT)

setCombatParam(combat, COMBAT_PARAM_USECHARGES, true)

 

local area = createCombatArea(AREA_WALLFIELD)

setCombatArea(combat, area)

 

function onGetFormulaValues(cid, level, skill, attack, factor)

local skillTotal, levelTotal = skill + attack * 2, level / 5

return -(skillTotal * 1.1 + levelTotal), -(skillTotal * 3 + levelTotal)

end

 

setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

 

 

 

 

 

Uma Foto :

semttulokqk.png

 

BOM... é isso , espero que tenham gostado . comentem e +REP é Claro

 

Tambem é possivel propor as magias ANI E ME ao mesmo tempo como é o Exemplo da SD , E da EXPLOSION RUNE

Bom espero que todos que tenham lido o post por completo e entendido se não podem perguntar que terei o prazer de explicar :D

Erro no post favor comentar que tbm terei o prazer de edita-lo

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

×
×
  • Criar Novo...