aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common
diff options
context:
space:
mode:
authormiozune <miozune@gmail.com>2022-05-03 03:04:29 +0900
committerGitHub <noreply@github.com>2022-05-02 20:04:29 +0200
commite3c9fcd11c87ed131c5bc8bcfbf7eb0befb69de6 (patch)
tree94c6d180001d0bf41c81e7e9ed791915e88aef3f /src/main/java/gregtech/common
parent1ff7ae87ba1ce389b72d72b8d99ae9f4d7e2f3ba (diff)
downloadGT5-Unofficial-e3c9fcd11c87ed131c5bc8bcfbf7eb0befb69de6.tar.gz
GT5-Unofficial-e3c9fcd11c87ed131c5bc8bcfbf7eb0befb69de6.tar.bz2
GT5-Unofficial-e3c9fcd11c87ed131c5bc8bcfbf7eb0befb69de6.zip
More Disassembler fixes (#1044)
* More Disassembler fixes * blacklist Mixed Metal Ingot
Diffstat (limited to 'src/main/java/gregtech/common')
-rw-r--r--src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java
index 08cdcd9fb2..75edd259b1 100644
--- a/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java
+++ b/src/main/java/gregtech/common/tileentities/machines/basic/GT_MetaTileEntity_Disassembler.java
@@ -16,10 +16,12 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_TieredMachi
import gregtech.api.objects.GT_ItemStack;
import gregtech.api.objects.ItemData;
import gregtech.api.render.TextureFactory;
+import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
import gregtech.api.util.GT_Recipe;
import gregtech.api.util.GT_Utility;
import gregtech.api.util.extensions.ArrayExt;
+import ic2.api.item.IC2Items;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
@@ -31,6 +33,7 @@ import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
+import static gregtech.api.enums.GT_Values.MOD_ID_RC;
import static gregtech.api.enums.Textures.BlockIcons.*;
public class GT_MetaTileEntity_Disassembler extends GT_MetaTileEntity_BasicMachine {
@@ -144,6 +147,10 @@ public class GT_MetaTileEntity_Disassembler extends GT_MetaTileEntity_BasicMachi
blackList.add(new GT_ItemStack(Materials.Graphene.getDust(1)));
blackList.add(new GT_ItemStack(ItemList.Circuit_Parts_Vacuum_Tube.get(1L)));
blackList.add(new GT_ItemStack(ItemList.Schematic.get(1L)));
+ blackList.add(new GT_ItemStack(GT_ModHandler.getModItem(MOD_ID_RC, "track", 1L, 0)));
+ blackList.add(new GT_ItemStack(GT_ModHandler.getModItem(MOD_ID_RC, "track", 1L, 736)));
+ blackList.add(new GT_ItemStack(GT_ModHandler.getModItem(MOD_ID_RC, "track", 1L, 816)));
+ blackList.add(new GT_ItemStack(IC2Items.getItem("mixedMetalIngot")));
}
private boolean compareToUnpacker(ItemStack is){
@@ -165,7 +172,7 @@ public class GT_MetaTileEntity_Disassembler extends GT_MetaTileEntity_BasicMachi
if (
is.getItem() instanceof GT_MetaGenerated_Tool
- || blackList.stream().anyMatch(t -> t.isStackEqual(is))
+ || blackList.stream().anyMatch(t -> GT_Utility.areStacksEqual(t.toStack(), is, true))
|| compareToUnpacker(is)
)
return DID_NOT_FIND_RECIPE;
@@ -360,7 +367,7 @@ public class GT_MetaTileEntity_Disassembler extends GT_MetaTileEntity_BasicMachi
}
private static ItemStack handleWildcard(ItemStack stack) {
- if (stack.getItemDamage() == OreDictionary.WILDCARD_VALUE) {
+ if (stack.getItemDamage() == OreDictionary.WILDCARD_VALUE && !stack.getItem().isDamageable()) {
stack.setItemDamage(0);
}
return stack;
@@ -538,7 +545,7 @@ public class GT_MetaTileEntity_Disassembler extends GT_MetaTileEntity_BasicMachi
fluidOutputValueRaw = fluidOutputValueRaw > 0 ? fluidOutputValueRaw : 144D;
double outputValue = Arrays.stream(x.recipe.mOutputs).flatMapToInt(f -> IntStream.of(f.stackSize)).sum() +
(fluidOutputValueRaw / 144D);
- return inputValue / outputValue;
+ return outputValue / inputValue;
}
@Override