From 7c152f1d72140e8cc13d3419fd9a7e1517eadd54 Mon Sep 17 00:00:00 2001
From: Chris Kearney <chris@kearneymail.com>
Date: Sun, 19 Apr 2015 22:46:05 -0700
Subject: [PATCH] bug where if you type use before initiating your inventory,
it will crash
---
.../creeper/server/command/UseCommand.java | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/src/main/java/com/comandante/creeper/server/command/UseCommand.java b/src/main/java/com/comandante/creeper/server/command/UseCommand.java
index 3ff1f7e4..acb697f0 100644
--- a/src/main/java/com/comandante/creeper/server/command/UseCommand.java
+++ b/src/main/java/com/comandante/creeper/server/command/UseCommand.java
@@ -31,14 +31,18 @@ public class UseCommand extends Command {
}
originalMessageParts.remove(0);
String itemTarget = Joiner.on(" ").join(originalMessageParts);
- for (String inventoryId : playerMetadata.getInventory()) {
- Item itemEntity = entityManager.getItemEntity(inventoryId);
- if (itemEntity.getItemTriggers().contains(itemTarget)) {
- new ItemUseHandler(itemEntity, creeperSession, gameManager, playerId).handle();
- return;
+ if (playerMetadata.getInventory() != null) {
+ for (String inventoryId : playerMetadata.getInventory()) {
+ Item itemEntity = entityManager.getItemEntity(inventoryId);
+ if (itemEntity.getItemTriggers().contains(itemTarget)) {
+ new ItemUseHandler(itemEntity, creeperSession, gameManager, playerId).handle();
+ return;
+ }
}
+ new ItemUseHandler(ItemType.UNKNOWN.create(), creeperSession, gameManager, playerId).handle();
+ } else {
+ write("Your inventory is empty.");
}
- new ItemUseHandler(ItemType.UNKNOWN.create(), creeperSession, gameManager, playerId).handle();
} finally {
super.messageReceived(ctx, e);
}
--
GitLab