Também queria saber :s
Por padrão, não há como configurar na tag condições envolvendo outras skills, como as citadas por você. Apesar de ser possível mudar isso nas sources do servidor, a opção mais fácil é no próprio código Lua, usando a seguinte função:
getPlayerSkillLevel(cid, skillid)
Exemplo de uso:
if getPlayerSkillLevel(cid, SKILL_SWORD) < 10 then
return doPlayerSendCancel(cid, "Você não pode usar esta spell pois seu nível em sword é abaixo de 10.")
end
Editado Setembro 15 por zipter98
info
Grupo: Campones
Registrado: 02/05/13
Posts: 34
Reputação: +1
Char no Tibia: Mister Ares

Entendido Zipter98, porem sou leigo quanto a source será que voce poderia fazer esse imenso favor de me explicar ?
Qual ou quais arquivos devo modificar, será que pode deixar explicado aqui ?
Obg, agradeço desde já.
info
Grupo: Campones
Registrado: 30/08/08
Posts: 57
Reputação: +3
Char no Tibia: Termabre Dore

Cara mexer nisso nas sources não será difícil, mas você poderá piorar o que não é perfeito.
Coloca conforme o código citado pelo @zipter98 no arquivo .LUA
Para saber qual é o arquivo, basta abrir spells.xml na pasta "data/spells".
Provavelmente irá gastar a mana de qualquer forma a não ser que você coloque para que quando essa verificação for verdadeira adicionar mana X ao player.
info
Grupo: Campones
Registrado: 02/05/13
Posts: 34
Reputação: +1
Char no Tibia: Mister Ares

Ahhh sim, agora que entendi a mensagem do Zipter..
Então no caso é só adcionar essa condição dentro do script da spell né ?
Ficando assim \/ !
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -8.2, 1, -8.2, 1)
function onCastSpell(cid, var)
local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y, z=getThingPosition(getCreatureTarget(cid)).z}
doSendMagicEffect(position1, 71)
return doCombat(cid, combat, var)
if getPlayerSkillLevel(cid, SKILL_SWORD) < 10 then
return doPlayerSendCancel(cid, "Você não pode usar esta spell pois seu nível em sword é abaixo de 10.")
end
end
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -8.2, 1, -8.2, 1)
function onCastSpell(cid, var)
if getPlayerSkillLevel(cid, SKILL_SWORD) < 10 then
return doPlayerSendCancel(cid, "Você não pode usar esta spell pois seu nível em sword é abaixo de 10.")
end
local position1 = {x=getThingPosition(getCreatureTarget(cid)).x+1, y=getThingPosition(getCreatureTarget(cid)).y, z=getThingPosition(getCreatureTarget(cid)).z}
doSendMagicEffect(position1, 71)
return doCombat(cid, combat, var)
end
Editado Setembro 16 por zipter98
info
Grupo: Campones
Registrado: 02/05/13
Posts: 34
Reputação: +1
Char no Tibia: Mister Ares

SHOW Zipter ! Obrigado, só mais uma... Essa condição nao atrapalha em nada do que vem a seguir, posso sempre colocar em baixo do callback onCastSpell?
Estava a um tempo já procurando isso, obrigado ![]()
Duvida sanada !



info
Grupo: Campones
Registrado: 02/05/13
Posts: 34
Reputação: +1
Char no Tibia: Mister Ares
Bom galera, estou com uma dúvida que não sei se é possivel ou nao.
Bom queria saber se tem como colocar na tag da magia no spells.xml algo que faça com que a spell necessite skills.
Exemplo no caso do Magic Level é só colocar (maglv="10") na tag que faz com que a magia necessite de ml 10 para ser usada.
E para outras skills é possivel ? Fist Fighting , Sword, Club e Distance como faço para colocar ? da para colocar na tag do spells.xml ou tem que ser dentro do script da magia ?
Aguardo respostas , obg desde já !