From 5d92767e1c2c7709ff0a1c582604ddeefc495dbc Mon Sep 17 00:00:00 2001 From: mcmonkey4eva Date: Sat, 6 Aug 2016 20:29:58 -0700 Subject: [PATCH] Fix new equip options for NPCs --- .../scripts/commands/entity/EquipCommand.java | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/main/java/net/aufdemrand/denizen/scripts/commands/entity/EquipCommand.java b/src/main/java/net/aufdemrand/denizen/scripts/commands/entity/EquipCommand.java index 3807e0f012..a844b8528a 100644 --- a/src/main/java/net/aufdemrand/denizen/scripts/commands/entity/EquipCommand.java +++ b/src/main/java/net/aufdemrand/denizen/scripts/commands/entity/EquipCommand.java @@ -145,6 +145,32 @@ else if (entity.isCitizensNPC()) { if (equipment.get("offhand") != null) { trait.set(5, equipment.get("offhand").getItemStack()); } + + if (npc.isSpawned()) { + LivingEntity livingEntity = npc.getLivingEntity(); + + // TODO: Citizens API for this blob? + + if (livingEntity.getType() == EntityType.HORSE) { + if (equipment.get("saddle") != null) { + ((Horse) livingEntity).getInventory().setSaddle(equipment.get("saddle").getItemStack()); + } + if (equipment.get("horse_armor") != null) { + ((Horse) livingEntity).getInventory().setArmor(equipment.get("horse_armor").getItemStack()); + } + } + else if (livingEntity.getType() == EntityType.PIG) { + if (equipment.get("saddle") != null) { + dItem saddle = equipment.get("saddle"); + if (saddle.getItemStack().getType() == Material.SADDLE) { + ((Pig) livingEntity).setSaddle(true); + } + else { + ((Pig) livingEntity).setSaddle(false); + } + } + } + } } }