From 5f4e269efa1bbbb3441b56977bfb6d7f3f215743 Mon Sep 17 00:00:00 2001 From: GJ Date: Wed, 6 Mar 2013 09:43:09 -0500 Subject: [PATCH] Fixed bug with repairing using materials with byte metadata --- Changelog.txt | 1 + src/main/java/com/gmail/nossr50/skills/repair/Repair.java | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Changelog.txt b/Changelog.txt index 69f728fa5..ca84bffad 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -9,6 +9,7 @@ Key: Version 1.4.03-dev = Fixed bug where players were unable to salvage leather armor + = Fixed bug with repairing using materials with byte metadata Version 1.4.02 + Added API to get the skill and power level caps. diff --git a/src/main/java/com/gmail/nossr50/skills/repair/Repair.java b/src/main/java/com/gmail/nossr50/skills/repair/Repair.java index aa281c7a3..e2cd49f31 100644 --- a/src/main/java/com/gmail/nossr50/skills/repair/Repair.java +++ b/src/main/java/com/gmail/nossr50/skills/repair/Repair.java @@ -82,13 +82,17 @@ public class Repair { protected static int findInInventory(PlayerInventory inventory, int itemId, byte metadata) { int location = -1; - for (ItemStack item : inventory.getContents()) { + ItemStack[] contents = inventory.getContents(); + + for (int i = 0; i < contents.length; i++) { + ItemStack item = contents[i]; + if (item == null) { continue; } if (item.getTypeId() == itemId && item.getData().getData() == metadata) { - return location; + return i; } }