From eda6e6e1f3cccd810907104abb5354f16af5a2bc Mon Sep 17 00:00:00 2001 From: garbagemule Date: Fri, 17 Jul 2015 04:44:59 +0200 Subject: [PATCH] Static map initializer before constants. --- .../MobArena/waves/MACreature.java | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/garbagemule/MobArena/waves/MACreature.java b/src/main/java/com/garbagemule/MobArena/waves/MACreature.java index 2c8764f..92b8ab6 100644 --- a/src/main/java/com/garbagemule/MobArena/waves/MACreature.java +++ b/src/main/java/com/garbagemule/MobArena/waves/MACreature.java @@ -18,6 +18,16 @@ import com.garbagemule.MobArena.framework.Arena; public class MACreature { + // This part must come before the constants! + private static Map map; + static { + map = new HashMap<>(); + for (EntityType type : EntityType.values()) { + // Instantiating a new creature registers it + new MACreature(type); + } + } + // Default creatures public static final MACreature ZOMBIE = new MACreature("zombie", EntityType.ZOMBIE); public static final MACreature SKELETON = new MACreature("skeleton", EntityType.SKELETON); @@ -89,15 +99,6 @@ public class MACreature public static final MACreature SKELETONHORSE = new MACreature("skeletonhorse", EntityType.HORSE); public static final MACreature UNDEADHORSE = new MACreature("undeadhorse", EntityType.HORSE); - private static Map map; - static { - map = new HashMap<>(); - for (EntityType type : EntityType.values()) { - // Instantiating a new creature registers it - new MACreature(type); - } - } - private List colors = Arrays.asList(DyeColor.values()); private String name; private String plural;