E ai pessoal :3
Bom,como não vi nenhum topico relacionado a isso/semelhante a esse eu vou postar uma forma de adicionar os spells nos arquivos de moves que muita gente tem problema '-'
Em varios OT's de p.tibia as pessoas tem alguns problemas com os moves,o que eu venho solucinar é esse:
Quando você está testando,as vezes vê que o move não funciona,não é?o pokemon está com o nome da spell correta no arquivo mas mesmo assim não funciona...
Isso acontece geralmente porque a spell não está adicionada no arquivo do move!
A solução pra isso é rapida,segue o passo-a-passo
No final dos arquivos de moves há linhas assim:
elseif pokemon.x.spell == "Restore" thendoCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
doCreatureSay(cid, ""..getPokeName(cid).apelido..", "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 14)
doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerBoost(cid))*(num3))))
doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerBoost(cid))*(num3))).."", 35)
return 0
Essas são as spells! o nome está marcado entre aspas logo no começo
Muitas vezes as spells não estão adicionadas nos moves corretos (seguindo a pokedex)
Para adicioná-los é simples!Todas as spells se encontram disponiveis em algum dos moves.Então,vamos supor...
Eu quero colocar "electric storm" no meu move1,como eu faço?Simples!
Abra o arquivo "m8" da sua talkactions e procure por esse conjunto:
elseif pokemon.x.spell == "Electric Storm" thendoCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
doCreatureSay(cid, ""..getPokeName(cid).apelido..", "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
local function fall(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
local pos = getThingPos(getCreatureSummons(cid)[1])
pos.x = pos.x + math.random(-4,4)
pos.y = pos.y + math.random(-4,4)
local frompos = getThingPos(getCreatureSummons(cid)[1])
frompos.x = pos.x - 7
frompos.y = pos.y - 6
doSendDistanceShoot(frompos, pos, 41)
doAreaCombatHealth(getCreatureSummons(cid)[1], element, pos, 0, -((num1)+(getPlayerBoost(cid)*(num3))), -((num2)+(getPlayerBoost(cid)*(num3))), 48)
end
end
end
for rocks = 1, 72 do
addEvent(fall, rocks*35, {cid = cid})
end
return 0
Após copiar essa linha,você deve colocar a spell assim:
elseif pokemon.x.spell == "Restore" thendoCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
doCreatureSay(cid, ""..getPokeName(cid).apelido..", "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 14)
doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerBoost(cid))*(num3))))
doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerBoost(cid))*(num3))).."", 35)
return 0
elseif pokemon.x.spell == "Electric Storm" then
doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
doCreatureSay(cid, ""..getPokeName(cid).apelido..", "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
local function fall(params)
if isCreature(params.cid) then
if isCreature(getCreatureSummons(params.cid)[1]) then
local pos = getThingPos(getCreatureSummons(cid)[1])
pos.x = pos.x + math.random(-4,4)
pos.y = pos.y + math.random(-4,4)
local frompos = getThingPos(getCreatureSummons(cid)[1])
frompos.x = pos.x - 7
frompos.y = pos.y - 6
doSendDistanceShoot(frompos, pos, 41)
doAreaCombatHealth(getCreatureSummons(cid)[1], element, pos, 0, -((num1)+(getPlayerBoost(cid)*(num3))), -((num2)+(getPlayerBoost(cid)*(num3))), 48)
end
end
end
for rocks = 1, 72 do
addEvent(fall, rocks*35, {cid = cid})
end
return 0
Detalhes importantes: Sempre se começa a spell com o "elseif" (logo no começo...é só copiar desde esta parte)
lembrando também que se deve colocar o "return 0" no final da spell para que o arquivo possa ser lido com continuidade sem nenhum erro.
Simplificando: Copie a spell desde o elseif... até o return 0. coloque o começo da spell em baixo de outra como mostrado acima e salve o move.
Pronto!spell adicionada e pronta para o uso :]
Após isso,é só você ir na parte do pokemon:
[50] = {x = {
pok = raichu,
spell = "Thunder",<-Aqui é onde você vai mudar o nome da spell "Thunder" por "Electric Storm"
minLv = 60,
ex = 2600007,
base1 = 185,
base2 = 195,
dista = 1,
bonus = 5,
type = "electric",
target="no",
cd = 60
}
},
Pronto!move adicionado e substituido no pokemon :]
Espero ter ajudado alguns mesmo que a dica seja meio obvia,mas ja vi muita gente largar mão de servidor por preguiça de arrumar os moves,então postei esse tutorial pra ver se ajudo um pouco .-.
É meu primeiro tutorial :3 aceito criticas construtivas *o*
e é isso ai :3