From 6c48e02c14518cc323a44d557504cc5e60f5ef3d Mon Sep 17 00:00:00 2001 From: KHobbits Date: Wed, 9 Jan 2013 00:40:52 +0000 Subject: [PATCH] Add a couple of extra entities to spawnmob --- .../src/com/earth2me/essentials/Mob.java | 19 ++++++++++++------- .../src/com/earth2me/essentials/SpawnMob.java | 8 ++++++++ Essentials/src/plugin.yml | 2 +- 3 files changed, 21 insertions(+), 8 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/Mob.java b/Essentials/src/com/earth2me/essentials/Mob.java index fccef1b24..1586b041d 100644 --- a/Essentials/src/com/earth2me/essentials/Mob.java +++ b/Essentials/src/com/earth2me/essentials/Mob.java @@ -7,6 +7,7 @@ import java.util.logging.Logger; import org.bukkit.Location; import org.bukkit.Server; import org.bukkit.World; +import org.bukkit.entity.Entity; import org.bukkit.entity.EntityType; import org.bukkit.entity.LivingEntity; import org.bukkit.entity.Player; @@ -43,8 +44,11 @@ public enum Mob IRONGOLEM("IronGolem", Enemies.NEUTRAL, EntityType.IRON_GOLEM), WITHER("Wither", Enemies.ENEMY, EntityType.WITHER), BAT("Bat", Enemies.FRIENDLY, EntityType.BAT), - WITCH("Witch", Enemies.ENEMY, EntityType.WITCH); - + WITCH("Witch", Enemies.ENEMY, EntityType.WITCH), + BOAT("Boat", Enemies.NEUTRAL, EntityType.BOAT), + MINECART("Minecart", Enemies.NEUTRAL, EntityType.MINECART), + ENDERCRYSTAL("EnderCrystal", Enemies.NEUTRAL, EntityType.ENDER_CRYSTAL), + EXPERIENCEORB("ExperienceOrb", Enemies.NEUTRAL, EntityType.EXPERIENCE_ORB); public static final Logger logger = Logger.getLogger("Minecraft"); private Mob(String n, Enemies en, String s, EntityType type) @@ -75,18 +79,19 @@ public enum Mob } } - public static Set getMobList() { + public static Set getMobList() + { return Collections.unmodifiableSet(hashMap.keySet()); } - public LivingEntity spawn(final Player player, final Server server, final Location loc) throws MobException + public Entity spawn(final Player player, final Server server, final Location loc) throws MobException { return spawn(player.getWorld(), server, loc); } - - public LivingEntity spawn(final World world, final Server server, final Location loc) throws MobException + + public Entity spawn(final World world, final Server server, final Location loc) throws MobException { - final LivingEntity entity = world.spawn(loc, (Class)this.bukkitType.getEntityClass()); + final Entity entity = world.spawn(loc, (Class)this.bukkitType.getEntityClass()); if (entity == null) { logger.log(Level.WARNING, _("unableToSpawnMob")); diff --git a/Essentials/src/com/earth2me/essentials/SpawnMob.java b/Essentials/src/com/earth2me/essentials/SpawnMob.java index 7eb59974c..cdb00cb3d 100644 --- a/Essentials/src/com/earth2me/essentials/SpawnMob.java +++ b/Essentials/src/com/earth2me/essentials/SpawnMob.java @@ -283,5 +283,13 @@ public class SpawnMob } } + if (type == EntityType.EXPERIENCE_ORB) + { + if (Util.isInt(data)) + { + ((ExperienceOrb)spawned).setExperience(Integer.parseInt(data)); + + } + } } } diff --git a/Essentials/src/plugin.yml b/Essentials/src/plugin.yml index 37ec60147..4e8d68461 100644 --- a/Essentials/src/plugin.yml +++ b/Essentials/src/plugin.yml @@ -329,7 +329,7 @@ commands: spawnmob: description: Spawns a mob. usage: / [:data][,[:data]] [amount] [player] - aliases: [espawnmob,mob,emob] + aliases: [espawnmob,spawnentity,espawnentity,mob,emob] speed: description: Change your speed limits usage: / [player]