diff --git a/src/engine/wpak/PowerActionParser.java b/src/engine/wpak/PowerActionParser.java index e225dbcc..1ba4ae1a 100644 --- a/src/engine/wpak/PowerActionParser.java +++ b/src/engine/wpak/PowerActionParser.java @@ -119,7 +119,12 @@ public class PowerActionParser { while (headerIterator.hasNext()) { effectDescription = new EffectDescription(); effectDescription.effect_id = headerIterator.next(); - effectDescription.level = Integer.parseInt(headerIterator.next()); + + // Some applyEffect entries are naked withot a level + + if (headerData.size() > 3) + effectDescription.level = Integer.parseInt(headerIterator.next()); + powerActionEntry.effects.add(effectDescription); } break; @@ -178,29 +183,6 @@ public class PowerActionParser { trackEntry.max = Integer.parseInt(headerIterator.next()); powerActionEntry.trackEntry = trackEntry; break; - case "NOTRANSFORM": - effectDescription = new EffectDescription(); - effectDescription.type = headerIterator.next(); - effectDescription.effect_id = headerIterator.next(); - powerActionEntry.effects.add(effectDescription); - break; - case "NOROOT": - case "NOSNARE": - case "NOSTANCE-A": - case "NOSTANCE-B": - case "NOSTUN": - case "NOSTUN1": - case "NOSTUN2": - case "NOSTUN3": - case "NOSTUN4": - case "NOSTUN5": - case "NOSTUN6": - effectDescription = new EffectDescription(); - effectDescription.type = headerIterator.next(); - effectDescription.effect_id = headerIterator.next(); - effectDescription.level = Integer.parseInt(headerIterator.next()); - powerActionEntry.effects.add(effectDescription); - break; case "Recall": // No arguments for these tags or not parsed case "Teleport": case "TreeChoke":