diff options
author | KHobbits <rob@khobbits.co.uk> | 2013-12-22 00:12:22 +0000 |
---|---|---|
committer | KHobbits <rob@khobbits.co.uk> | 2013-12-22 00:12:22 +0000 |
commit | d0c25729edddd6e4f7017dc07052b2d32c34e2b3 (patch) | |
tree | 33cbae0a22122178815a6a8c6db999ba26dd8ae5 | |
parent | e928e24c78e97ee963e65be6d22e390da5e1a0bc (diff) | |
download | Essentials-d0c25729edddd6e4f7017dc07052b2d32c34e2b3.tar Essentials-d0c25729edddd6e4f7017dc07052b2d32c34e2b3.tar.gz Essentials-d0c25729edddd6e4f7017dc07052b2d32c34e2b3.tar.lz Essentials-d0c25729edddd6e4f7017dc07052b2d32c34e2b3.tar.xz Essentials-d0c25729edddd6e4f7017dc07052b2d32c34e2b3.zip |
Better matching of zombie and skeleton mobdata to avoid confusion.
-rw-r--r-- | Essentials/src/com/earth2me/essentials/SpawnMob.java | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/Essentials/src/com/earth2me/essentials/SpawnMob.java b/Essentials/src/com/earth2me/essentials/SpawnMob.java index 7a8d1646f..cfd0c5cec 100644 --- a/Essentials/src/com/earth2me/essentials/SpawnMob.java +++ b/Essentials/src/com/earth2me/essentials/SpawnMob.java @@ -217,20 +217,16 @@ public class SpawnMob sender.sendMessage(_("mobDataList", StringUtil.joinList(MobData.getValidHelp(spawned)))); } - MobData newData = MobData.fromData(spawned, data); - while (newData != null) - { - newData.setData(spawned, target.getBase(), data); - data = data.replace(newData.getMatched(), ""); - newData = MobData.fromData(spawned, data); - } - if (spawned instanceof Zombie || type == EntityType.SKELETON) { if (inputData.contains("armor") || inputData.contains("armour")) { final EntityEquipment invent = ((LivingEntity)spawned).getEquipment(); - if (inputData.contains("diamond")) + if (inputData.contains("noarmor") || inputData.contains("noarmour")) + { + invent.clear(); + } + else if (inputData.contains("diamond")) { invent.setBoots(new ItemStack(Material.DIAMOND_BOOTS, 1)); invent.setLeggings(new ItemStack(Material.DIAMOND_LEGGINGS, 1)); @@ -251,10 +247,6 @@ public class SpawnMob invent.setChestplate(new ItemStack(Material.LEATHER_CHESTPLATE, 1)); invent.setHelmet(new ItemStack(Material.LEATHER_HELMET, 1)); } - else if (inputData.contains("no")) - { - invent.clear(); - } else { invent.setBoots(new ItemStack(Material.IRON_BOOTS, 1)); @@ -269,6 +261,14 @@ public class SpawnMob } } + + MobData newData = MobData.fromData(spawned, data); + while (newData != null) + { + newData.setData(spawned, target.getBase(), data); + data = data.replace(newData.getMatched(), ""); + newData = MobData.fromData(spawned, data); + } } private static void defaultMobData(final EntityType type, final Entity spawned) |