diff --git a/plugin/src/main/java/net/aufdemrand/denizen/objects/properties/entity/EntityColor.java b/plugin/src/main/java/net/aufdemrand/denizen/objects/properties/entity/EntityColor.java index 2147fadc59..5ec2ad8eb6 100644 --- a/plugin/src/main/java/net/aufdemrand/denizen/objects/properties/entity/EntityColor.java +++ b/plugin/src/main/java/net/aufdemrand/denizen/objects/properties/entity/EntityColor.java @@ -4,6 +4,7 @@ import net.aufdemrand.denizen.nms.NMSVersion; import net.aufdemrand.denizen.objects.dEntity; import net.aufdemrand.denizen.utilities.debugging.dB; +import net.aufdemrand.denizen.utilities.entity.LlamaHelper; import net.aufdemrand.denizen.utilities.entity.ParrotHelper; import net.aufdemrand.denizen.utilities.entity.RabbitType; import net.aufdemrand.denizencore.objects.Element; @@ -74,7 +75,7 @@ else if (type == EntityType.RABBIT) { return ((Rabbit) colored.getBukkitEntity()).getRabbitType().name(); } else if (NMSHandler.getVersion().isAtLeast(NMSVersion.v1_11_R1) && type == EntityType.LLAMA) { - return ((Llama) colored.getBukkitEntity()).getColor().name(); + return LlamaHelper.llamaColorName(colored); } else if (NMSHandler.getVersion().isAtLeast(NMSVersion.v1_12_R1) && type == EntityType.PARROT) { return ParrotHelper.parrotColor(colored); @@ -228,9 +229,8 @@ else if (type == EntityType.RABBIT && mechanism.getValue().matchesEnum(Rabbit.Type.values())) { ((Rabbit) colored.getBukkitEntity()).setRabbitType(Rabbit.Type.valueOf(mechanism.getValue().asString().toUpperCase())); } - else if (NMSHandler.getVersion().isAtLeast(NMSVersion.v1_11_R1) && type == EntityType.LLAMA - && mechanism.getValue().matchesEnum(Llama.Color.values())) { - ((Llama) colored.getBukkitEntity()).setColor(Llama.Color.valueOf(mechanism.getValue().asString().toUpperCase())); + else if (NMSHandler.getVersion().isAtLeast(NMSVersion.v1_11_R1) && type == EntityType.LLAMA) { + LlamaHelper.setLlamaColor(colored, mechanism.getValue().asString()); } else if (NMSHandler.getVersion().isAtLeast(NMSVersion.v1_12_R1) && type == EntityType.PARROT) { ParrotHelper.setParrotColor(colored, mechanism); diff --git a/plugin/src/main/java/net/aufdemrand/denizen/utilities/entity/LlamaHelper.java b/plugin/src/main/java/net/aufdemrand/denizen/utilities/entity/LlamaHelper.java new file mode 100644 index 0000000000..0a0729c6d1 --- /dev/null +++ b/plugin/src/main/java/net/aufdemrand/denizen/utilities/entity/LlamaHelper.java @@ -0,0 +1,15 @@ +package net.aufdemrand.denizen.utilities.entity; + +import net.aufdemrand.denizen.objects.dEntity; +import org.bukkit.entity.Llama; + +public class LlamaHelper { + + public static String llamaColorName(dEntity entity) { + return ((Llama) entity.getBukkitEntity()).getColor().name(); + } + + public static void setLlamaColor(dEntity entity, String color) { + ((Llama) entity.getBukkitEntity()).setColor(Llama.Color.valueOf(color.toUpperCase())); + } +}