From 4f163fd2de0fb70f684ace82bb51db5017b7bacd Mon Sep 17 00:00:00 2001 From: mcmonkey4eva Date: Thu, 15 Jan 2015 14:57:09 -0800 Subject: [PATCH] Catch potential errors when dropped entities fail to spawn --- src/main/java/net/aufdemrand/denizen/objects/dEntity.java | 2 +- .../aufdemrand/denizen/scripts/commands/world/DropCommand.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/aufdemrand/denizen/objects/dEntity.java b/src/main/java/net/aufdemrand/denizen/objects/dEntity.java index 5c58f8f344..57fd63b243 100644 --- a/src/main/java/net/aufdemrand/denizen/objects/dEntity.java +++ b/src/main/java/net/aufdemrand/denizen/objects/dEntity.java @@ -855,7 +855,7 @@ public boolean isSpawned() { } public boolean isValid() { - return entity.isValid(); + return entity != null && entity.isValid(); } public void remove() { diff --git a/src/main/java/net/aufdemrand/denizen/scripts/commands/world/DropCommand.java b/src/main/java/net/aufdemrand/denizen/scripts/commands/world/DropCommand.java index c075aab947..688f27ff90 100644 --- a/src/main/java/net/aufdemrand/denizen/scripts/commands/world/DropCommand.java +++ b/src/main/java/net/aufdemrand/denizen/scripts/commands/world/DropCommand.java @@ -116,7 +116,8 @@ public void execute(ScriptEntry scriptEntry) throws CommandExecutionException { dB.echoDebug(scriptEntry, "Cannot drop multiples of this item because it is Unique!"); for (int x = 0; x < qty.asInt(); x++) { dEntity e = new dEntity(location.getWorld().dropItemNaturally(location, item.getItemStack())); - e.setVelocity(e.getVelocity().multiply(speed != null ? speed.asDouble(): 1d)); + if (e.isValid()) + e.setVelocity(e.getVelocity().multiply(speed != null ? speed.asDouble(): 1d)); entityList.add(e.toString()); } }