aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/util/GT_Shaped_Recipe.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api/util/GT_Shaped_Recipe.java')
-rw-r--r--src/main/java/gregtech/api/util/GT_Shaped_Recipe.java37
1 files changed, 27 insertions, 10 deletions
diff --git a/src/main/java/gregtech/api/util/GT_Shaped_Recipe.java b/src/main/java/gregtech/api/util/GT_Shaped_Recipe.java
index 7ecabaffeb..ae8d804ee9 100644
--- a/src/main/java/gregtech/api/util/GT_Shaped_Recipe.java
+++ b/src/main/java/gregtech/api/util/GT_Shaped_Recipe.java
@@ -15,7 +15,14 @@ public class GT_Shaped_Recipe extends ShapedOreRecipe implements IGT_CraftingRec
private final Enchantment[] mEnchantmentsAdded;
private final int[] mEnchantmentLevelsAdded;
- public GT_Shaped_Recipe(ItemStack aResult, boolean aDismantleAble, boolean aRemovableByGT, boolean aKeepingNBT, Enchantment[] aEnchantmentsAdded, int[] aEnchantmentLevelsAdded, Object... aRecipe) {
+ public GT_Shaped_Recipe(
+ ItemStack aResult,
+ boolean aDismantleAble,
+ boolean aRemovableByGT,
+ boolean aKeepingNBT,
+ Enchantment[] aEnchantmentsAdded,
+ int[] aEnchantmentLevelsAdded,
+ Object... aRecipe) {
super(aResult, aRecipe);
mEnchantmentsAdded = aEnchantmentsAdded;
mEnchantmentLevelsAdded = aEnchantmentLevelsAdded;
@@ -33,8 +40,10 @@ public class GT_Shaped_Recipe extends ShapedOreRecipe implements IGT_CraftingRec
for (int i = 0; i < aGrid.getSizeInventory(); i++) {
if (aGrid.getStackInSlot(i) != null) {
if (tStack != null) {
- if ((tStack.hasTagCompound() != aGrid.getStackInSlot(i).hasTagCompound()) || (tStack.hasTagCompound() && !tStack.getTagCompound().equals(aGrid.getStackInSlot(i).getTagCompound())))
- return false;
+ if ((tStack.hasTagCompound() != aGrid.getStackInSlot(i).hasTagCompound())
+ || (tStack.hasTagCompound()
+ && !tStack.getTagCompound()
+ .equals(aGrid.getStackInSlot(i).getTagCompound()))) return false;
}
tStack = aGrid.getStackInSlot(i);
}
@@ -51,25 +60,33 @@ public class GT_Shaped_Recipe extends ShapedOreRecipe implements IGT_CraftingRec
GT_Utility.updateItemStack(rStack);
// Keeping NBT
- if (mKeepingNBT) for (int i = 0; i < aGrid.getSizeInventory(); i++) {
- if (aGrid.getStackInSlot(i) != null && aGrid.getStackInSlot(i).hasTagCompound()) {
- rStack.setTagCompound((NBTTagCompound) aGrid.getStackInSlot(i).getTagCompound().copy());
- break;
+ if (mKeepingNBT)
+ for (int i = 0; i < aGrid.getSizeInventory(); i++) {
+ if (aGrid.getStackInSlot(i) != null
+ && aGrid.getStackInSlot(i).hasTagCompound()) {
+ rStack.setTagCompound((NBTTagCompound)
+ aGrid.getStackInSlot(i).getTagCompound().copy());
+ break;
+ }
}
- }
// Charge Values
if (GT_ModHandler.isElectricItem(rStack)) {
GT_ModHandler.dischargeElectricItem(rStack, Integer.MAX_VALUE, Integer.MAX_VALUE, true, false, true);
int tCharge = 0;
for (int i = 0; i < aGrid.getSizeInventory(); i++)
- tCharge += GT_ModHandler.dischargeElectricItem(aGrid.getStackInSlot(i), Integer.MAX_VALUE, Integer.MAX_VALUE, true, true, true);
+ tCharge += GT_ModHandler.dischargeElectricItem(
+ aGrid.getStackInSlot(i), Integer.MAX_VALUE, Integer.MAX_VALUE, true, true, true);
if (tCharge > 0) GT_ModHandler.chargeElectricItem(rStack, tCharge, Integer.MAX_VALUE, true, false);
}
// Add Enchantments
for (int i = 0; i < mEnchantmentsAdded.length; i++)
- GT_Utility.ItemNBT.addEnchantment(rStack, mEnchantmentsAdded[i], EnchantmentHelper.getEnchantmentLevel(mEnchantmentsAdded[i].effectId, rStack) + mEnchantmentLevelsAdded[i]);
+ GT_Utility.ItemNBT.addEnchantment(
+ rStack,
+ mEnchantmentsAdded[i],
+ EnchantmentHelper.getEnchantmentLevel(mEnchantmentsAdded[i].effectId, rStack)
+ + mEnchantmentLevelsAdded[i]);
// Update the Stack again
GT_Utility.updateItemStack(rStack);