diff --git a/core/src/com/riiablo/engine/server/Actioneer.java b/core/src/com/riiablo/engine/server/Actioneer.java index 1fb2974d..bae4f86c 100644 --- a/core/src/com/riiablo/engine/server/Actioneer.java +++ b/core/src/com/riiablo/engine/server/Actioneer.java @@ -84,7 +84,7 @@ public class Actioneer extends PassiveSystem { targetVec = targetVec != null ? targetVec.cpy() : Vector2.Zero; final Class.Type type = mClass.get(entityId).type; - byte mode = (byte) type.getMode(skill.anim); + byte mode = (byte) getMode(skill, type); log.trace("mode: {}", mode); if (mode == Engine.INVALID_MODE) { mode = (byte) type.getMode("SC"); @@ -101,6 +101,13 @@ public class Actioneer extends PassiveSystem { events.dispatch(SkillStartEvent.obtain(entityId, skillId, targetId, targetVec, skill.srvstfunc, skill.cltstfunc)); } + int getMode(Skills.Entry skill, Class.Type type) { + switch (type) { + case MON: return type.getMode(skill.monanim); + default: return type.getMode(skill.anim); + } + } + @Subscribe public void onAnimDataKeyframe(AnimDataKeyframeEvent event) { if (!mCasting.has(event.entityId)) return;