Ir para conteúdo

[spells] Criando Uma Spell ! - Nivel: Intermediario .


\Mattheus ~*

Posts Recomendados

Fala ai Galera do XTibia


Pra você que sempre teve vontade de fazer uma Spell(Magia), Criado por você mesmo .
Então pra você que quer criar a magia veja todo o Tópico .


Então vamos ao Trabalho ;)


Primeiramente vá em spells\scripts\attack, depois você copia a magia que quiser, por exemplo você pode copiar a magia "Exevo gran mas vis" pois cada magia tem a sua área.
Eu vou pegar com exemplo a magia "Divine Caldera" ou seja Exevo Mas San, então ta copiei e colei.
Depois você entra na magia. (Eu vó entrar na divine caldera.lua).
tuto1k.jpg

Vou explicar parte por parte.


Parte 1 - O Tipo de Dano da Magia


Dentro da magia está assim: (Divine Caldera.lua)

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)


HOLYDAMAGE = O Tipo de dano que afetará o Player ou o Monster .

Tipos de Danos:
COMBAT_EARTHDAMAGE = Dano tipo Poison .
COMBAT_ENERGYDAMAGE = Dano de Energy .
COMBAT_ICEDAMAGE = Dano de Ice .
COMBAT_PHYSICALDAMAGE = Dano Físico . (Mais usado)
COMBAT_FIREDAMAGE = Dano de Fire .

Parte 2 - Efeito da Magia


setCombatParam(combat, COMBAT_PARAM_EFFECT, 49)


EFFECT, 49 = Efeito da Magia (49 = Divine)

Para ver os Tipos de Efeitos entre em seu OT Server digite: /z ou !z e o númera desejado, por exemplo o da magia Exevo Mas San é /z 49.

Parte 3 - Dano da Magia


setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -0.5, -30, -1.1, 0)

-0.5, -30, -1.1, 0 = Danos da magia .
Os danos da magia são gerados por você, você pode escolher o numéro que queira, não tão alto se não a magia vai ficar dando Hs (1 Hit) em qualuquer monster .

Você também pode botar outra função que o dano e gerado pelo Magic Level (ML) do Player .

function onGetFormulaValues(cid, level, maglevel)
min = -maglevel*8.8 -level/5
max = -maglevel*13.2 -level/5



Parte 4 - Condições



local condition = createConditionObject(CONDITION_DRUNK)


CONDITION_DRUNK = O Player ficara Bêbado .

Você podera botar para quê o Player fique Bêbado quando atingido com Exevo Mas San ou a sua Magia .

Para botar que o Player Fique Bêbado adicione isto na sua Magia:
local condition = createConditionObject(CONDITION_DRUNK)
setConditionParam(condition, CONDITION_PARAM_TICKS, 10000)
setCombatCondition(combat, condition)

Adicione isto entre os efeitos da magia e entre a Area.
tuto2c.jpg


Parte 5 - Área da Magia


local arr = {
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 0},
{1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 3, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1},
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0}
}


A área da magia e a mais simples, Quando você coloca 1 é aonde a magia ira aparecer no Tibia, no local 3 e se você quiser por exemplo que a magia fique por dentro do Player, ja com o Array 2 a magia não ficara por dentro do Player .

Com Array 3:

tuto3v.jpg

Com Array 2:
tuto4.jpg

Só isso Galéra, quem gosto Comente, quem não gosto, só lamento .

Abraços .
Editado por MattheusOT
Link para o comentário
Compartilhar em outros sites

  • 7 months later...
  • 2 weeks later...

hey cara, eu fiz assim olha:

 

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

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HOLYAREA)

setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1.0, 0, -1.3, 0)

 

local arr = {

{0, 1, 0, 0, 0, 1, 0},

{0, 1, 0, 0, 0, 1, 0},

{0, 0, 1, 1, 1, 0, 0},

{0, 0, 1, 3, 1, 0, 0},

{0, 0, 1, 1, 1, 0, 0},

{0, 1, 0, 0, 0, 1, 0},

{0, 1, 0, 0, 0, 1, 0}

}

 

Local area = createCombatArea(arr)

 

setCombatArea(combat, area)

 

function onCastSpell(cid, var)

return doCombat(cid, combat, var)

end

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

 

tem algum erro? quando abri o server ele diz assim

"expected near 'area'"

 

e outra coisa...

o script das minhas magias do meu ot, dei o download de dois, nao sao como esse que vc fez..

é assim olha:

---------

local area = createCombatArea(AREA_CIRCLE3X3)

---------

 

 

ve se tem como me ajudar!

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

×
×
  • Criar Novo...