2018-02-15 13:20:46 -06:00
|
|
|
require("global");
|
|
|
|
require("weaponskill");
|
|
|
|
|
|
|
|
function onSkillPrepare(caster, target, skill)
|
|
|
|
return 0;
|
|
|
|
end;
|
|
|
|
|
|
|
|
function onSkillStart(caster, target, skill)
|
|
|
|
return 0;
|
|
|
|
end;
|
|
|
|
|
|
|
|
--Reset Berserk effect, increase damage?
|
|
|
|
function onCombo(caster, target, skill)
|
|
|
|
--Get Berserk statuseffect
|
|
|
|
local berserk = caster.statusEffects.GetStatusEffectById(223160);
|
|
|
|
|
2018-04-18 16:06:41 -05:00
|
|
|
--if it isn't nil, remove the AP and Defense mods and reset extra to 0, increase potency
|
2018-02-15 13:20:46 -06:00
|
|
|
if berserk != nil then
|
2018-04-18 16:06:41 -05:00
|
|
|
local apPerHit = 20;
|
|
|
|
local defPerHit = 20;
|
|
|
|
|
|
|
|
if berserk.GetTier() == 2 then
|
|
|
|
apPerHit = 24;
|
|
|
|
end
|
|
|
|
|
|
|
|
attacker.SubtractMod(modifiersGlobal.Attack, apPerHit * berserk.GetExtra());
|
|
|
|
attacker.Add(modifiersGlobal.Defense, defPerHit * berserk.GetExtra());
|
|
|
|
|
|
|
|
berserk.SetExtra(0);
|
2018-02-15 13:20:46 -06:00
|
|
|
skill.basePotency = skill.basePotency * 1.5;
|
|
|
|
end;
|
|
|
|
end;
|
|
|
|
|
2018-04-18 16:06:41 -05:00
|
|
|
function onSkillFinish(caster, target, skill, action, actionContainer)
|
|
|
|
--calculate ws damage
|
|
|
|
action.amount = skill.basePotency;
|
|
|
|
|
|
|
|
--DoAction handles rates, buffs, dealing damage
|
|
|
|
action.DoAction(caster, target, skill, actionContainer);
|
|
|
|
end;
|