aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/util/GT_ModHandler.java
diff options
context:
space:
mode:
authorBlood-Asp <bloodasphendrik@gmail.com>2017-11-25 18:54:57 +0100
committerGitHub <noreply@github.com>2017-11-25 18:54:57 +0100
commit87210137d0c5821c1791f316710f46da5af91744 (patch)
treeafa588c32c3898b7c69a8cadde8a015fae0b3303 /src/main/java/gregtech/api/util/GT_ModHandler.java
parent5476c4ea3999ebe4b5dd10b002da89b9829e483d (diff)
parenta2c7e3160262b03a10a655a5925b51f5def5e218 (diff)
downloadGT5-Unofficial-87210137d0c5821c1791f316710f46da5af91744.tar.gz
GT5-Unofficial-87210137d0c5821c1791f316710f46da5af91744.tar.bz2
GT5-Unofficial-87210137d0c5821c1791f316710f46da5af91744.zip
Merge branch 'unstable' into CrackingFollowup
Diffstat (limited to 'src/main/java/gregtech/api/util/GT_ModHandler.java')
-rw-r--r--src/main/java/gregtech/api/util/GT_ModHandler.java39
1 files changed, 25 insertions, 14 deletions
diff --git a/src/main/java/gregtech/api/util/GT_ModHandler.java b/src/main/java/gregtech/api/util/GT_ModHandler.java
index daa1b67069..82f3e525ba 100644
--- a/src/main/java/gregtech/api/util/GT_ModHandler.java
+++ b/src/main/java/gregtech/api/util/GT_ModHandler.java
@@ -1718,21 +1718,12 @@ public class GT_ModHandler {
EntityPlayer tPlayer = (EntityPlayer) aPlayer;
if (tPlayer.capabilities.isCreativeMode) return true;
if (isElectricItem(aStack) && ic2.api.item.ElectricItem.manager.getCharge(aStack) > 1000.0d) {
- for (int i = 0; i < tPlayer.inventory.mainInventory.length; i++) {
- if (GT_Utility.isStackInList(tPlayer.inventory.mainInventory[i], GregTech_API.sSolderingMetalList)) {
- if (tPlayer.inventory.mainInventory[i].stackSize < 1) return false;
- if (tPlayer.inventory.mainInventory[i].stackSize == 1) {
- tPlayer.inventory.mainInventory[i] = null;
- } else {
- tPlayer.inventory.mainInventory[i].stackSize--;
- }
- if (tPlayer.inventoryContainer != null) tPlayer.inventoryContainer.detectAndSendChanges();
- if (canUseElectricItem(aStack, 10000)) {
- return GT_ModHandler.useElectricItem(aStack, 10000, (EntityPlayer) aPlayer);
- }
- GT_ModHandler.useElectricItem(aStack, (int) ic2.api.item.ElectricItem.manager.getCharge(aStack), (EntityPlayer) aPlayer);
- return false;
+ if (consumeSolderingMaterial(tPlayer)) {
+ if (canUseElectricItem(aStack, 10000)) {
+ return GT_ModHandler.useElectricItem(aStack, 10000, (EntityPlayer) aPlayer);
}
+ GT_ModHandler.useElectricItem(aStack, (int) ic2.api.item.ElectricItem.manager.getCharge(aStack), (EntityPlayer) aPlayer);
+ return false;
}
}
} else {
@@ -1744,6 +1735,26 @@ public class GT_ModHandler {
}
/**
+ * Simply consumes some soldering material
+ */
+ public static boolean consumeSolderingMaterial(EntityPlayer aPlayer) {
+ if (aPlayer.capabilities.isCreativeMode) return true;
+ for (int i = 0; i < aPlayer.inventory.mainInventory.length; i++) {
+ if (GT_Utility.isStackInList(aPlayer.inventory.mainInventory[i], GregTech_API.sSolderingMetalList)) {
+ if (aPlayer.inventory.mainInventory[i].stackSize < 1) return false;
+ if (aPlayer.inventory.mainInventory[i].stackSize == 1) {
+ aPlayer.inventory.mainInventory[i] = null;
+ } else {
+ aPlayer.inventory.mainInventory[i].stackSize--;
+ }
+ if (aPlayer.inventoryContainer != null) aPlayer.inventoryContainer.detectAndSendChanges();
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
* Is this an electric Item, which can charge other Items?
*/
public static boolean isChargerItem(ItemStack aStack) {