Ir para conteúdo
  • Cadastre-se

(Resolvido)Botando skill em script de weapons


Ir para solução Resolvido por KotZletY,

Posts Recomendados

Olá galera to com essa script weapons, porem ela hita de acordo com o que eu escolho, e eu queria que o hit dela fosse determinada também pelo Skill! quanto maior o skill mais o hit

To precisando muito Pf Agradeço a quem conseguir !

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_POISONAREA)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_WHIRLWINDSWORD)
setCombatFormula(combat, COMBAT_FORMULA_DAMAGE, -0, -5100, -0, -7150)

local combata = createCombatObject()

setCombatParam(combata, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combata, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatParam(combata, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_WHIRLWINDSWORD)
setCombatFormula(combata, COMBAT_FORMULA_DAMAGE, -0, -5100, -0, -7150)

function onUseWeapon(cid, var)
local chance = math.random(5, 20)
if (chance <= 14) then
return doCombat(cid, combata, var)
else
return doCombat(cid, combat, var)
end
end

 

Link para o post
Compartilhar em outros sites

@Jociel 

function onUseWeapon(cid, var)
local minDamage = (getPlayerLevel(cid)*1.4 + getPlayerSkillLevel(cid, 3)*1.8 + 100) * 1.2
local maxDamage = (getPlayerLevel(cid)*1.4 + getPlayerSkillLevel(cid, 3)*1.8 + 200) * 1.35

local target = getCreatureTarget(cid)

doTargetCombatHealth(cid, target, COMBAT_PHYSICALDAMAGE, -minDamage, -maxDamage, CONST_ME_FIREAREA)

return true
end

 

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites

@KotZletY @KotZletY Desculpe a ignorancia mais ficaria assim?

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_POISONAREA)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_WHIRLWINDSWORD)
setCombatFormula(combat, COMBAT_FORMULA_DAMAGE, -0, -5100, -0, -7150)

local combata = createCombatObject()

setCombatParam(combata, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combata, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatParam(combata, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_WHIRLWINDSWORD)
setCombatFormula(combata, COMBAT_FORMULA_DAMAGE, -0, -5100, -0, -7150)

function onUseWeapon(cid, var)
local chance = math.random(5, 20)
if (chance <= 14) then
return doCombat(cid, combata, var)
else
return doCombat(cid, combat, var)
end

function onUseWeapon(cid, var)
local minDamage = (getPlayerLevel(cid)*1.4 + getPlayerSkillLevel(cid, 3)*1.8 + 100) * 1.2
local maxDamage = (getPlayerLevel(cid)*1.4 + getPlayerSkillLevel(cid, 3)*1.8 + 200) * 1.35

local target = getCreatureTarget(cid)

doTargetCombatHealth(cid, target, COMBAT_PHYSICALDAMAGE, -minDamage, -maxDamage, CONST_ME_FIREAREA)

return true
end
end

 

Link para o post
Compartilhar em outros sites

@KotZletY @KotZletY dessa forma nao fica com o distance effect, e fica so com  1 effect de damage, poderia deixar do mesmo modo do outro so que atravez de skill? grato!

Em 22/09/2018 em 20:25, KotZletY disse:

@Jociel 


function onUseWeapon(cid, var)
local minDamage = (getPlayerLevel(cid)*1.4 + getPlayerSkillLevel(cid, 3)*1.8 + 100) * 1.2
local maxDamage = (getPlayerLevel(cid)*1.4 + getPlayerSkillLevel(cid, 3)*1.8 + 200) * 1.35

local target = getCreatureTarget(cid)

doTargetCombatHealth(cid, target, COMBAT_PHYSICALDAMAGE, -minDamage, -maxDamage, CONST_ME_FIREAREA)

return true
end

 

 

 

Link para o post
Compartilhar em outros sites
  • Solução

@Jociel 

Spoiler

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_POISONAREA)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_WHIRLWINDSWORD)

function onGetFormulaValues(cid, level, skill)
	return -(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5)), 0
end
setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")



local combata = createCombatObject()
setCombatParam(combata, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combata, COMBAT_PARAM_EFFECT, CONST_ME_FIREAREA)
setCombatParam(combata, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_WHIRLWINDSWORD)

function onGetFormulaValues2(cid, level, skill)
	return -(((skill + 25) / 3) + (level / 5)), -((skill + 25) + (level / 5)), 0
end
setCombatCallback(combata, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues2")



function onUseWeapon(cid, var)
local chance = math.random(5, 20)
if (chance <= 14) then
return doCombat(cid, combata, var)
else
return doCombat(cid, combat, var)
end
end

 

 

Edite a formula como desejar, cada combat tem sua formula, como seu script tem 2x tipos de combat, cada formula representa um dele.

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo