mirror of
https://bitbucket.org/Ioncannon/project-meteor-server.git
synced 2025-04-21 12:17:46 +00:00

New scripts for commands and effects that use the new function signatures and work with the new statuseffectcontainer
52 lines
No EOL
1.7 KiB
Lua
52 lines
No EOL
1.7 KiB
Lua
require("global");
|
|
require("ability");
|
|
|
|
function onAbilityPrepare(caster, target, ability)
|
|
return 0;
|
|
end;
|
|
|
|
function onAbilityStart(caster, target, ability)
|
|
--27282: Enhanced Life Surge: Increases effect of Life Surge by 20%
|
|
if caster.HasTrait(27282) then
|
|
ability.statusTier = 2;
|
|
end
|
|
|
|
return 0;
|
|
end;
|
|
|
|
function onSkillFinish(caster, target, skill, action, actionContainer)
|
|
--Need a better way to do this
|
|
--223212: Power Surge I
|
|
--223213: Power Surge II
|
|
--223212: Power Surge III
|
|
--No message is sent when PS is removed by Life Surge
|
|
caster.statusEffects.RemoveStatusEffect(223212);
|
|
caster.statusEffects.RemoveStatusEffect(223213);
|
|
caster.statusEffects.RemoveStatusEffect(223214);
|
|
|
|
|
|
--Using this ability moves to the next LS buff
|
|
local removeId = 0;
|
|
--223215: Life Surge I
|
|
--223216: Life Surge II
|
|
--223217: Life Surge III
|
|
if caster.statusEffects.HasStatusEffect(223215) then
|
|
removeId = 223215;
|
|
skill.statusId = 223216;
|
|
skill.statusTier = 2;
|
|
elseif caster.statusEffects.HasStatusEffect(223216) then
|
|
removeId = 223216;
|
|
skill.statusId = 223217;
|
|
skill.statusTier = 3;
|
|
elseif caster.statusEffects.HasStatusEffect(223217) then
|
|
effect = caster.statusEffects.GetStatusEffectById(223217)
|
|
effect.RefreshTime();
|
|
skill.statusId = 223217;
|
|
end
|
|
|
|
if not (removeId == 0) then
|
|
caster.statusEffects.ReplaceEffect(caster.statusEffects.GetStatusEffectById(removeId), skill.statusId, skill.statusTier, skill.statusMagnitude, skill.statusDuration);
|
|
end
|
|
--DoAction handles rates, buffs, dealing damage
|
|
action.DoAction(caster, target, skill, actionContainer);
|
|
end; |