Ir para conteúdo
  • 0

Dasdor

Pergunta

Ola a todossmile_positivo.gif

eu nao consigo fazer com que uma wand aumente o dano dela dependendo do skill do player como sword ou club e nao com o magic

 

data\weapons\weapons.xml

 

<wand id="2384" level="1" mana="0" min="100" max="200" type="fire" event="script" value="fire_wand.lua"> <!-- wand -->

<vocation id="1">

<vocation id="2">

</vocation></vocation></wand>

 

 

data\weapons\scripts\fire_wand.xml

 

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)

setCombatParam(combat, COMBAT_PARAM_EFFECT, 5)

setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 38)

setCombatFormula(combat, COMBAT_FORMULA_SKILL_CLUB, -1.5, -6, -1.5, -7)

 

function onUseWeapon(cid, var)

return doCombat(cid, combat, var)

end

 

 

data\items\items.xml

 

<item id="2384" article="a" name="fire wand">

<attribute key="weight" value="2000">

<attribute key="weaponType" value="wand">

<attribute key="shootType" value="fire">

<attribute key="range" value="3">

</attribute></attribute></attribute></attribute></item>

 

 

nao apareçe nem um erro no console mais o problema q a wand nao hita nada e o skill club esta 90

uso o crystal server 0.1.2 8.7

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

amigo... o COMBAT_FORMULA_SKILL calcula a skill envolvendo essas variáveis:

 

ataque da arma utilizada

a skill do player que a arma usa (se for uma sword, vai pegar o sword fighting, se for axe será o axe fighting...)

o fator de ataque do player (se está no modo full attack, balanced ou full defense)

o level do player

 

isso não vai funcionar do jeito que você espera a menos que você coloque no items.xml que a skill que usa na wand é club

 

você pode fazer sua própria fórmula da seguinte maneira:

 

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 5)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, 38)

function getMinMaxValues(cid, level, magiclevel)
local skill = getPlayerSkillLevel(cid, SKILL_CLUB)
local min = skill * 2 + level/2 + magiclevel/4
local max = min * math.random(105, 125) / 100
return min, max
end

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "getMinMaxValues")

function onUseWeapon(cid, var)
return doCombat(cid, combat, var)
end

 

basta alterar o min/max ali

a fórmula que eu escrevi soma os seguintes valores:

 

skill de club do player multiplicado por 2

level do player dividido por 2

magic level do player dividido por 4

 

um player com club 70, level 40 e magic level 5 vai tirar no mínimo 161, e no máximo 201 com minha fórmula

achei muito, mas é apenas um exemplo

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

  • 0

cara continua do mesmo jeito, nao da dano no monstro ja mudei para club no itens tbm e nao vai usei o seu script nao vai...

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

  • 0

ajudaworriedsmiley.gif

 

Reportando flood e double post, tenha paciencia até que alguem possa te ajudar, as veses demora pelo fato de niguem que viu saber como te ajudar ou se esta sendo respondio, o membro pode estar ocupado ou nao viu o topico denovo, nao precisa floodar e nem dar double post, se está sendo atendido por alguem manda um mp!

 

Apenas aguarde!

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...