From 8e474170e47a445d9a2469347d339854fcfeabca Mon Sep 17 00:00:00 2001 From: TfT_02 Date: Wed, 18 Jun 2014 11:44:21 +0200 Subject: [PATCH] Fix crafting with items received from Salvage MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Only set metadata on Salvage items when it’s not set to -1 Fixes #2078 And cleanup some javadocs in Salvageable --- .../skills/salvage/SalvageManager.java | 4 +-- .../salvage/salvageables/Salvageable.java | 32 +++++++++---------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/gmail/nossr50/skills/salvage/SalvageManager.java b/src/main/java/com/gmail/nossr50/skills/salvage/SalvageManager.java index 130e4685d..ecd2f7e0e 100644 --- a/src/main/java/com/gmail/nossr50/skills/salvage/SalvageManager.java +++ b/src/main/java/com/gmail/nossr50/skills/salvage/SalvageManager.java @@ -84,8 +84,6 @@ public class SalvageManager extends SkillManager { return; } - byte salvageMaterialMetadata = salvageable.getSalvageMaterialMetadata(); - int salvageableAmount = Salvage.calculateSalvageableAmount(item.getDurability(), salvageable.getMaximumDurability(), salvageable.getMaximumQuantity()); if (salvageableAmount == 0) { @@ -108,6 +106,8 @@ public class SalvageManager extends SkillManager { } } + byte salvageMaterialMetadata = (salvageable.getSalvageMaterialMetadata() != (byte) -1) ? salvageable.getSalvageMaterialMetadata() : 0; + Misc.dropItems(location, new MaterialData(salvageable.getSalvageMaterial(), salvageMaterialMetadata).toItemStack(salvageableAmount), 1); // BWONG BWONG BWONG - CLUNK! diff --git a/src/main/java/com/gmail/nossr50/skills/salvage/salvageables/Salvageable.java b/src/main/java/com/gmail/nossr50/skills/salvage/salvageables/Salvageable.java index 0f6f4a160..d4ef8412e 100644 --- a/src/main/java/com/gmail/nossr50/skills/salvage/salvageables/Salvageable.java +++ b/src/main/java/com/gmail/nossr50/skills/salvage/salvageables/Salvageable.java @@ -7,37 +7,37 @@ import com.gmail.nossr50.datatypes.skills.MaterialType; public interface Salvageable { /** - * Gets the type of this repairable item + * Gets the type of this salvageable item * - * @return the type of this repairable + * @return the type of this salvageable */ public Material getItemMaterial(); /** - * Gets the id of the material used to repair this item + * Gets the material of the items dropped when salvaging this item * - * @return the id of the repair material + * @return the material of the salvage drop */ public Material getSalvageMaterial(); /** - * Gets the metadata byte value of the material used to repair this item + * Gets the metadata byte value of the items dropped when salvaging this item * - * @return the byte metadata of the repair material + * @return the byte metadata of the salvage drop */ public byte getSalvageMaterialMetadata(); /** - * Gets the RepairItemType value for this repairable item + * Gets the ItemType value for this salvageable item * - * @return the RepairItemType for this repairable + * @return the ItemType for this salvageable */ public ItemType getSalvageItemType(); /** - * Gets the RepairMaterialType value for this repairable item + * Gets the MaterialType value for this salvageable item * - * @return the RepairMaterialType for this repairable + * @return the MaterialType for this salvageable */ public MaterialType getSalvageMaterialType(); @@ -58,25 +58,25 @@ public interface Salvageable { public short getMaximumDurability(); /** - * Gets the base repair durability on which to calculate bonuses. + * Gets the base salvage durability on which to calculate bonuses. * * This is actually the maximum durability divided by the minimum quantity * - * @return the base repair durability + * @return the base salvage durability */ public short getBaseSalvageDurability(); /** - * Gets the minimum repair level needed to repair this item + * Gets the minimum salvage level needed to salvage this item * - * @return the minimum level to repair this item, or 0 for no minimum + * @return the minimum level to salvage this item, or 0 for no minimum */ public int getMinimumLevel(); /** - * Gets the xpMultiplier for this repairable + * Gets the xpMultiplier for this salvageable * - * @return the xpMultiplier of this repairable + * @return the xpMultiplier of this salvageable */ public double getXpMultiplier(); }