diff --git a/src/engine/wpak/PowerActionParser.java b/src/engine/wpak/PowerActionParser.java index 4fd34b55..a6a0a9d3 100644 --- a/src/engine/wpak/PowerActionParser.java +++ b/src/engine/wpak/PowerActionParser.java @@ -82,12 +82,13 @@ public class PowerActionParser { switch (powerActionEntry.action_type) { case "RemoveEffect": - effectDescription = new EffectDescription(); - effectDescription.effect_id = headerIterator.next(); - powerActionEntry.effects.add(effectDescription); + powerActionEntry.effect_id = headerIterator.next(); + break; case "CreateMob": - powerActionEntry.petLevel = Integer.parseInt(headerIterator.next()); - powerActionEntry.petRace = Integer.parseInt(headerIterator.next()); + case "DamageOverTime": + powerActionEntry.effect_id = headerIterator.next(); + powerActionEntry.arg1 = Integer.parseInt(headerIterator.next()); + powerActionEntry.arg2 = Integer.parseInt(headerIterator.next()); break; case "ApplyEffect": case "DeferredPower": @@ -99,6 +100,8 @@ public class PowerActionParser { powerActionEntry.effects.add(effectDescription); } break; + case "Teleport": // No arguments + break; default: Logger.error("Unhandled type " + powerActionEntry.action_type + " for Pow4erAction: " + powerActionEntry.action_id); break; diff --git a/src/engine/wpak/data/PowerActionEntry.java b/src/engine/wpak/data/PowerActionEntry.java index 07c16a8d..348fd7a8 100644 --- a/src/engine/wpak/data/PowerActionEntry.java +++ b/src/engine/wpak/data/PowerActionEntry.java @@ -26,14 +26,14 @@ public class PowerActionEntry { public boolean shouldShowArmor = false; public boolean bladeTrails = false; public boolean isResistable = false; - public String effectID; + public String effect_id; public ArrayList scaleFactor = new ArrayList<>(); public ArrayList attackAnimations = new ArrayList<>(); public boolean isAggressive; public mbEnums.DamageType damageType; public boolean applyEffectBlank = false; public boolean wearOffEffectBlank = false; - public int petLevel; - public int petRace; + public int arg1; + public int arg2; }