Faz direto no script da wand.
function onCombat , me ajuda a fazer isso aqui?
Por tonynamoral, 09 de jan. de 2013 em Scripts
Editado Janeiro 9 por Oneshot
info
Grupo: Visconde
Registrado: 21/09/10
Posts: 319
Reputação: +27
Char no Tibia: lest sarif

Como?
info
Grupo: Campones
Registrado: 19/12/12
Posts: 47
Reputação: +3

data/weapons/scripts
copie um arquivo e renomeie para spellwand.lua
local wands = {
[9812] = "exura",
[1725] = "exori flam",
chance = 30 -- em porcentagem
}
function onUseWeapon(cid, var)
if math.random(1,100) <= wands.chance then
doPlayerCastSpell(cid,wands[item.itemid])
end
return true
end
data/weapons/weapons.xml ache todas as wands que voce vai colocar o efeito e troque a tag
event="function" value="default"
por ..
event="script" value="spellwand.lua
não testei ;S
Editado Janeiro 9 por XxPaaulinhoOxX
info
Grupo: Visconde
Registrado: 21/09/10
Posts: 319
Reputação: +27
Char no Tibia: lest sarif

Irei testar =x
Não vai funcionar.
O processo de instalação é o mesmo do passado pelo usuário acima.
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_FIRE)
-- min = (level / minl + maglevel / minml) * 1. * mina + minb
-- max = (level / maxl + maglevel / maxml) * 1. * maxa + maxb
-- min < minc
-- min = minc
-- max < maxc
-- max = maxc
-- setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, mina, minb, maxa, maxb[, minl, maxl[, minm, maxm[, minc[, maxc]]]])
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, 0, -1, 0, 5, 5, 1.2, 1.4)
function onUseWeapon(cid, var)
if math.random(0, 100) > 70 then
doPlayerCastSpell(cid, "exori flam")
end
doCombat(cid, var)
return true
end
Lembrando que um script de weapon, você precise criar um combat para que ele funcione e editar a fórmula de dano a gosto.
Deixei alguns comentários para te auxiliar quanto ao dano.
info
Grupo: Visconde
Registrado: 21/09/10
Posts: 319
Reputação: +27
Char no Tibia: lest sarif

Poderia me ajudar a instalar?
1. Crie um arquivo Lua com o nome que você quiser em data/weapons/scripts, cole o conteúdo passado acima.
2. Abra o arquivo weapons.xml e coloque a linha abaixo:
<wand id="ID_DA_WAND" level="LEVEL_DA_WAND" mana="MANA_POR_TIRO" event="script" value="nome_do_arquivo.lua">
Certifique-se também que não exista nenhuma outra linha relacionada ao ID que você vai colocar, para evitar erros.
info
Grupo: Visconde
Registrado: 21/09/10
Posts: 319
Reputação: +27
Char no Tibia: lest sarif

Irei testar.
[10/01/2013 10:09:21] [Error - Weapon Interface]
[10/01/2013 10:09:21] data/weapons/scripts/wands.lua:onUseWeapon
[10/01/2013 10:09:21] Description:
[10/01/2013 10:09:21] (luaDoCombat) Combat not found
Errei a linha:
doCombat(cid, var)
Troque por:
doCombat(cid, combat, var)
info
Grupo: Visconde
Registrado: 21/09/10
Posts: 319
Reputação: +27
Char no Tibia: lest sarif

[10/01/2013 12:05:36] [Error - Weapon Interface]
[10/01/2013 12:05:36] data/weapons/scripts/wands.lua:onUseWeapon
[10/01/2013 12:05:36] Description:
[10/01/2013 12:05:36] (luaDoCombat) Combat not found
Só sabe vir aqui postar "errinho" e esperar que caia do céu a solução, não mexe um dedo um milímetro para tentar aprender a consertar erros e aprender um pouco de Lua.
Cansei já da sua folga, então se vira aí.
Abraços.
info
Grupo: Visconde
Registrado: 21/09/10
Posts: 319
Reputação: +27
Char no Tibia: lest sarif

Eu estou tentando arrumar aqui , mais obrigado ai.





info
Grupo: Visconde
Registrado: 21/09/10
Posts: 319
Reputação: +27
Char no Tibia: lest sarif
Olá galera , eu gostaria de um sistema , que tipo . o player está usando uma wand e , ele tem 30% de mandar uma magia .
exemplo :
local wands = {
[9812] = "exura",
[1725] = "exori flam",
}
function onCombat(cid)
if item.itemid = wands[getPlayerSlotItem(cid,6).itemid] then
if math.random(1,100) <= 30 then
doPlayerCastSpell(cid,wands[getPlayerSlotItem(cid,6).itemid]
end
return true
end
end
Só um exemplo .