From 96b66bdf2f05ae4d9fb059ec29a03b86949efce3 Mon Sep 17 00:00:00 2001 From: Jordan Byrne Date: Fri, 6 Apr 2018 16:49:16 +1000 Subject: + Added a casing for the Amazon Warehouse. + Added registration and loader for Amazon Warehouse. --- .../common/blocks/GregtechMetaCasingBlocks3.java | 4 +-- .../blocks/textures/CasingTextureHandler3.java | 2 +- .../common/blocks/textures/TexturesGtBlock.java | 3 ++ .../machines/multi/misc/GMTE_AmazonPackager.java | 39 ++++++++++++++++++---- 4 files changed, 38 insertions(+), 10 deletions(-) (limited to 'src/Java/gtPlusPlus/xmod/gregtech/common') diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java index 0204b08b2e..0c43482d5b 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java @@ -25,7 +25,7 @@ extends GregtechMetaCasingBlocksAbstract { GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".1.name", "Inconel Reinforced Casing"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".2.name", "Multi-Use Casing"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".3.name", "Trinium Plated Mining Platform Casing"); - GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".4.name", "Placeholder"); + GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".4.name", "Supply Depot Casing"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".5.name", "Placeholder"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".6.name", "Placeholder"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".7.name", "Placeholder");; @@ -41,7 +41,7 @@ extends GregtechMetaCasingBlocksAbstract { GregtechItemList.Casing_Extruder.set(new ItemStack(this, 1, 1)); GregtechItemList.Casing_Multi_Use.set(new ItemStack(this, 1, 2)); GregtechItemList.Casing_BedrockMiner.set(new ItemStack(this, 1, 3)); - //GregtechItemList.Casing_WashPlant.set(new ItemStack(this, 1, 4)); + GregtechItemList.Casing_AmazonWarehouse.set(new ItemStack(this, 1, 4)); //GregtechItemList.Casing_Sifter.set(new ItemStack(this, 1, 5)); //GregtechItemList.Casing_SifterGrate.set(new ItemStack(this, 1, 6)); //GregtechItemList.Casing_Vanadium_Redox.set(new ItemStack(this, 1, 7)); diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/CasingTextureHandler3.java b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/CasingTextureHandler3.java index 51fb289b61..2087cea2df 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/CasingTextureHandler3.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/CasingTextureHandler3.java @@ -21,7 +21,7 @@ public class CasingTextureHandler3 { return TexturesGtBlock.Casing_Staballoy_Firebox.getIcon(); //Material Press Casings case 4: - return TexturesGtBlock._PlaceHolder.getIcon(); + return TexturesGtBlock.TEXTURE_CASING_AMAZON.getIcon(); //Sifter Structural case 5: return TexturesGtBlock._PlaceHolder.getIcon(); diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/TexturesGtBlock.java b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/TexturesGtBlock.java index a93cff61b2..0c7a388d46 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/TexturesGtBlock.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/TexturesGtBlock.java @@ -195,6 +195,9 @@ public class TexturesGtBlock { public static final CustomIcon Overlay_Machine_Cyber_A = Internal_Overlay_Machine_Cyber_A; private static final CustomIcon Internal_Overlay_Machine_Cyber_B = new CustomIcon("chrono/CyberPanel2"); public static final CustomIcon Overlay_Machine_Cyber_B = Internal_Overlay_Machine_Cyber_B; + + + public static final CustomIcon TEXTURE_CASING_AMAZON = new CustomIcon("TileEntities/CASING_AMAZON"); //Overlays //Fan Textures diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java index a85c4f95f3..00d383551c 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java @@ -2,6 +2,7 @@ package gtPlusPlus.xmod.gregtech.common.tileentities.machines.multi.misc; import java.util.ArrayList; +import net.minecraft.block.Block; import net.minecraft.item.ItemStack; import gregtech.api.enums.*; @@ -16,7 +17,9 @@ import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.data.AutoMap; import gtPlusPlus.api.objects.minecraft.ItemStackData; +import gtPlusPlus.core.block.ModBlocks; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; +import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { @@ -41,7 +44,7 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { @Override public boolean hasSlotInGUI() { - return false; + return true; } @Override @@ -61,9 +64,9 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { @Override public ITexture[] getTexture(final IGregTechTileEntity aBaseMetaTileEntity, final byte aSide, final byte aFacing, final byte aColorIndex, final boolean aActive, final boolean aRedstone) { if (aSide == aFacing) { - return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[TAE.GTPP_INDEX(7)], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER)}; + return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[TAE.getIndexFromPage(2, 4)], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER)}; } - return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[TAE.GTPP_INDEX(7)]}; + return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[TAE.getIndexFromPage(2, 4)]}; } @@ -78,14 +81,12 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { public boolean checkRecipe(ItemStack aStack) { ArrayList tItems = getStoredInputs(); AutoMap mCompleted = new AutoMap(); - for (ItemStack tInputItem : tItems) { if (tInputItem != null) { mCompleted.put(new ItemStackData(tInputItem)); checkRecipe(tInputItem, getGUIItemStack()); } } - return mCompleted != null && mCompleted.size() > 0; } @@ -163,8 +164,32 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { } @Override - public boolean checkMachine(IGregTechTileEntity p0, ItemStack p1) { - return false; + public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack p1) { + final int xDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetX; + final int zDir = ForgeDirection.getOrientation(aBaseMetaTileEntity.getBackFacing()).offsetZ; + if (!aBaseMetaTileEntity.getAirOffset(xDir, 0, zDir)) { + return false; + } + int tAmount = 0; + for (int i = -1; i < 2; i++) { + for (int j = -1; j < 2; j++) { + for (int h = -1; h < 2; h++) { + if ((h != 0) || ((((xDir + i) != 0) || ((zDir + j) != 0)) && ((i != 0) || (j != 0)))) { + final IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, h, zDir + j); + if (!this.addToMachineList(tTileEntity, TAE.getIndexFromPage(2, 4))) { + final Block tBlock = aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j); + final byte tMeta = aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j); + + if (((tBlock != ModBlocks.blockCasings3Misc) || (tMeta != 4))) { + return false; + } + tAmount++; + } + } + } + } + } + return tAmount >= 10; } @Override -- cgit From 36eaf2689501adab7ff968401e028e8b80a259a4 Mon Sep 17 00:00:00 2001 From: Jordan Byrne Date: Fri, 6 Apr 2018 19:25:47 +1000 Subject: $ Tried to do Fancy handling but will probably revert it to the simpler non-per-bus version. --- .../base/GregtechMeta_MultiBlockBase.java | 2 + .../machines/multi/misc/GMTE_AmazonPackager.java | 128 +++++++++++++++++---- .../textures/blocks/TileEntities/CASING_AMAZON.png | Bin 3549 -> 677 bytes 3 files changed, 109 insertions(+), 21 deletions(-) (limited to 'src/Java/gtPlusPlus/xmod/gregtech/common') diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java index c2d3331128..ea73a836b4 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java @@ -244,12 +244,14 @@ GT_MetaTileEntity_MultiBlockBase { long tVoltage = getMaxInputVoltage(); byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); + Logger.WARNING("Running checkRecipeGeneric(0)"); GT_Recipe tRecipe = this.getRecipeMap().findRecipe( getBaseMetaTileEntity(), mLastRecipe, false, gregtech.api.enums.GT_Values.V[tTier], aFluidInputs, aItemInputs); + Logger.WARNING("Running checkRecipeGeneric(1)"); // Remember last recipe - an optimization for findRecipe() this.mLastRecipe = tRecipe; diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java index 00d383551c..c81983ac79 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java @@ -10,14 +10,18 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.interfaces.tileentity.IHasWorldObjectAndCoords; +import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch_InputBus; import gregtech.api.objects.GT_RenderedTexture; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe; import gregtech.api.util.GT_Utility; +import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.AutoMap; import gtPlusPlus.api.objects.minecraft.ItemStackData; import gtPlusPlus.core.block.ModBlocks; +import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.xmod.gregtech.api.metatileentity.implementations.base.GregtechMeta_MultiBlockBase; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.fluids.FluidStack; @@ -52,7 +56,21 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { return new String[]{ "Controller Block for the Amazon Warehouse", "This Multiblock is used for EXTREME packaging requirements", - "" + "Dust Schematics are inserted into the input busses", + "If inserted into the controller, it is shared across all busses", + "1x, 2x, 3x & Other Schematics are to be placed into the controller GUI slot", + "Uncomparably fast compared to a single packager of the same tier", + "Only uses 75% of the eu/t normally required", + "Processes five items per voltage tier", + "Size: 3x3x3 (Hollow)", + "Controller (front centered)", + "1x Input Bus (anywhere)", + "1x Output Bus (anywhere)", + "1x Energy Hatch (anywhere)", + "1x Maintenance Hatch (anywhere)", + "1x Muffler (anywhere)", + "Supply Depot. Casings for the rest (10 at least!)", + CORE.GT_Tooltip }; } @@ -64,30 +82,90 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { @Override public ITexture[] getTexture(final IGregTechTileEntity aBaseMetaTileEntity, final byte aSide, final byte aFacing, final byte aColorIndex, final boolean aActive, final boolean aRedstone) { if (aSide == aFacing) { - return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[TAE.getIndexFromPage(2, 4)], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER)}; + return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[TAE.getIndexFromPage(2, 1)], new GT_RenderedTexture(aActive ? Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER_ACTIVE : Textures.BlockIcons.OVERLAY_FRONT_VACUUM_FREEZER)}; } - return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[TAE.getIndexFromPage(2, 4)]}; + return new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[TAE.getIndexFromPage(2, 1)]}; } - - public GT_Recipe.GT_Recipe_Map getRecipeList() { + @Override + public GT_Recipe.GT_Recipe_Map getRecipeMap() { return GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes; } + public void sortInputBusses() { + for (GT_MetaTileEntity_Hatch_InputBus h : this.mInputBusses) { + h.updateSlots(); + } + } + @Override - public boolean checkRecipe(ItemStack aStack) { - ArrayList tItems = getStoredInputs(); - AutoMap mCompleted = new AutoMap(); - for (ItemStack tInputItem : tItems) { - if (tInputItem != null) { - mCompleted.put(new ItemStackData(tInputItem)); - checkRecipe(tInputItem, getGUIItemStack()); + public boolean checkRecipe(ItemStack aStack) { + + boolean h[] = new boolean[mInputBusses.size()]; + int count = 0; + for (GT_MetaTileEntity_Hatch_InputBus tBus : mInputBusses) { + ArrayList tBusItems = new ArrayList(); + tBus.mRecipeMap = getRecipeMap(); + if (isValidMetaTileEntity(tBus)) { + for (int i = tBus.getBaseMetaTileEntity().getSizeInventory() - 1; i >= 0; i--) { + if (tBus.getBaseMetaTileEntity().getStackInSlot(i) != null) + tBusItems.add(tBus.getBaseMetaTileEntity().getStackInSlot(i)); + } } + + if (this.getGUIItemStack() != null) { + tBusItems.add(this.getGUIItemStack()); + } + + ArrayList tFluids = getStoredFluids(); + ItemStack[] tItemInputs = tBusItems.toArray(new ItemStack[tBusItems.size()]); + FluidStack[] tFluidInputs = tFluids.toArray(new FluidStack[tFluids.size()]); + boolean state = checkRecipeGeneric(tItemInputs, tFluidInputs, 5 * GT_Utility.getTier(this.getMaxInputVoltage()), 75, 500, 10000); + if (state) { + h[count++] = true; + continue; + } + else { + AutoMap mCompleted = new AutoMap(); + AutoMap mSchematics = new AutoMap(); + for (ItemStack tInputItem : tBusItems) { + if (tInputItem != null) { + if (ItemList.Schematic_1by1.isStackEqual((Object) tInputItem) || ItemList.Schematic_2by2.isStackEqual((Object) tInputItem) || ItemList.Schematic_3by3.isStackEqual((Object) tInputItem)) { + mSchematics.put(new ItemStackData(tInputItem)); + } + } + } + if (mSchematics.size() > 0) { + for (ItemStackData g : mSchematics) { + for (ItemStack tInputItem : tBusItems) { + if (tInputItem != null) { + mCompleted.put(new ItemStackData(tInputItem)); + checkRecipe(tInputItem, g.getStack()); + } + } + } + } + + if (mCompleted != null && mCompleted.size() > 0) { + h[count++] = true; + continue; + } + else { + h[count++] = false; + continue; + } + } + } - return mCompleted != null && mCompleted.size() > 0; + for (boolean b : h) { + if (!b) { + return false; + } + } + return true; } public boolean checkRecipe(ItemStack inputStack, ItemStack schematicStack) { @@ -96,24 +174,29 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { ItemStack tOutputStack; if (ItemList.Schematic_1by1.isStackEqual((Object) schematicStack)&& inputStack.stackSize >= 1) { tOutputStack = GT_ModHandler.getRecipeOutput(new ItemStack[]{inputStack}); - if (tOutputStack != null && this.addOutput(tOutputStack)) { + if (tOutputStack != null && this.allowPutStack(tOutputStack, schematicStack)) { final ItemStack input = inputStack; --input.stackSize; this.mEUt = 32 * (1 << this.mTier - 1) * (1 << this.mTier - 1); - this.mMaxProgresstime = 16 / (1 << this.mTier - 1); + //this.mMaxProgresstime = 16 / (1 << this.mTier - 1); + this.mMaxProgresstime = 2; + this.addOutput(tOutputStack); + updateSlots(); return true; } return false; - } else if (ItemList.Schematic_2by2.isStackEqual((Object) schematicStack) && inputStack.stackSize >= 4) { tOutputStack = GT_ModHandler.getRecipeOutput(new ItemStack[]{inputStack, inputStack, null, inputStack, inputStack}); - if (tOutputStack != null && this.addOutput(tOutputStack)) { + if (tOutputStack != null && this.allowPutStack(tOutputStack, schematicStack)) { final ItemStack input2 = inputStack; input2.stackSize -= 4; this.mEUt = 32 * (1 << this.mTier - 1) * (1 << this.mTier - 1); - this.mMaxProgresstime = 32 / (1 << this.mTier - 1); + //this.mMaxProgresstime = 32 / (1 << this.mTier - 1); + this.mMaxProgresstime = 4; + this.addOutput(tOutputStack); + updateSlots(); return true; } return false; @@ -122,11 +205,14 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { tOutputStack = GT_ModHandler.getRecipeOutput(new ItemStack[]{inputStack, inputStack, inputStack, inputStack, inputStack, inputStack, inputStack, inputStack, inputStack}); - if (tOutputStack != null && this.addOutput(tOutputStack)) { + if (tOutputStack != null && this.allowPutStack(tOutputStack, schematicStack)) { final ItemStack input3 = inputStack; input3.stackSize -= 9; this.mEUt = 32 * (1 << this.mTier - 1) * (1 << this.mTier - 1); - this.mMaxProgresstime = 64 / (1 << this.mTier - 1); + //this.mMaxProgresstime = 64 / (1 << this.mTier - 1); + this.mMaxProgresstime = 6; + this.addOutput(tOutputStack); + updateSlots(); return true; } return false; @@ -135,7 +221,7 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { return false; } - public boolean allowPutStack(final IGregTechTileEntity aBaseMetaTileEntity, final int aIndex, final byte aSide, final ItemStack aStack, ItemStack schematicStack) { + public boolean allowPutStack(final ItemStack aStack, ItemStack schematicStack) { //If Schematic Static is not 1x1, 2x2, 3x3 if (!ItemList.Schematic_1by1.isStackEqual((Object) schematicStack) && !ItemList.Schematic_2by2.isStackEqual((Object) schematicStack) && !ItemList.Schematic_3by3.isStackEqual((Object) schematicStack)) { return GT_Recipe.GT_Recipe_Map.sBoxinatorRecipes.containsInput(aStack); diff --git a/src/resources/assets/miscutils/textures/blocks/TileEntities/CASING_AMAZON.png b/src/resources/assets/miscutils/textures/blocks/TileEntities/CASING_AMAZON.png index 82a6663366..88d5cb9c72 100644 Binary files a/src/resources/assets/miscutils/textures/blocks/TileEntities/CASING_AMAZON.png and b/src/resources/assets/miscutils/textures/blocks/TileEntities/CASING_AMAZON.png differ -- cgit From b8b592220b7c568bc46402b112696a66c8208deb Mon Sep 17 00:00:00 2001 From: Jordan Byrne Date: Fri, 6 Apr 2018 19:28:23 +1000 Subject: $ Rolled back handling to a point where it works much better. --- .../machines/multi/misc/GMTE_AmazonPackager.java | 87 ++++++++-------------- 1 file changed, 31 insertions(+), 56 deletions(-) (limited to 'src/Java/gtPlusPlus/xmod/gregtech/common') diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java index c81983ac79..865b8b7bf4 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java @@ -102,70 +102,45 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { @Override - public boolean checkRecipe(ItemStack aStack) { + public boolean checkRecipe(ItemStack aStack) { + ArrayList tItems = getStoredInputs(); + if (this.getGUIItemStack() != null) { + tItems.add(this.getGUIItemStack()); - boolean h[] = new boolean[mInputBusses.size()]; - int count = 0; - for (GT_MetaTileEntity_Hatch_InputBus tBus : mInputBusses) { - ArrayList tBusItems = new ArrayList(); - tBus.mRecipeMap = getRecipeMap(); - if (isValidMetaTileEntity(tBus)) { - for (int i = tBus.getBaseMetaTileEntity().getSizeInventory() - 1; i >= 0; i--) { - if (tBus.getBaseMetaTileEntity().getStackInSlot(i) != null) - tBusItems.add(tBus.getBaseMetaTileEntity().getStackInSlot(i)); - } - } - - if (this.getGUIItemStack() != null) { - tBusItems.add(this.getGUIItemStack()); - } + } + ArrayList tFluids = getStoredFluids(); + ItemStack[] tItemInputs = tItems.toArray(new ItemStack[tItems.size()]); + FluidStack[] tFluidInputs = tFluids.toArray(new FluidStack[tFluids.size()]); + boolean state = checkRecipeGeneric(tItemInputs, tFluidInputs, 5 * GT_Utility.getTier(this.getMaxInputVoltage()), 75, 500, 10000); - ArrayList tFluids = getStoredFluids(); - ItemStack[] tItemInputs = tBusItems.toArray(new ItemStack[tBusItems.size()]); - FluidStack[] tFluidInputs = tFluids.toArray(new FluidStack[tFluids.size()]); - boolean state = checkRecipeGeneric(tItemInputs, tFluidInputs, 5 * GT_Utility.getTier(this.getMaxInputVoltage()), 75, 500, 10000); - if (state) { - h[count++] = true; - continue; - } - else { - AutoMap mCompleted = new AutoMap(); - AutoMap mSchematics = new AutoMap(); - for (ItemStack tInputItem : tBusItems) { - if (tInputItem != null) { - if (ItemList.Schematic_1by1.isStackEqual((Object) tInputItem) || ItemList.Schematic_2by2.isStackEqual((Object) tInputItem) || ItemList.Schematic_3by3.isStackEqual((Object) tInputItem)) { - mSchematics.put(new ItemStackData(tInputItem)); - } + + if (state) { + return true; + } + else { + tItems = getStoredInputs(); + AutoMap mCompleted = new AutoMap(); + AutoMap mSchematics = new AutoMap(); + for (ItemStack tInputItem : tItems) { + if (tInputItem != null) { + if (ItemList.Schematic_1by1.isStackEqual((Object) tInputItem) || ItemList.Schematic_2by2.isStackEqual((Object) tInputItem) || ItemList.Schematic_3by3.isStackEqual((Object) tInputItem)) { + mSchematics.put(new ItemStackData(tInputItem)); } } - if (mSchematics.size() > 0) { - for (ItemStackData g : mSchematics) { - for (ItemStack tInputItem : tBusItems) { - if (tInputItem != null) { - mCompleted.put(new ItemStackData(tInputItem)); - checkRecipe(tInputItem, g.getStack()); - } + } + if (mSchematics.size() > 0) { + for (ItemStackData g : mSchematics) { + for (ItemStack tInputItem : tItems) { + if (tInputItem != null) { + mCompleted.put(new ItemStackData(tInputItem)); + checkRecipe(tInputItem, g.getStack()); } } } - - if (mCompleted != null && mCompleted.size() > 0) { - h[count++] = true; - continue; - } - else { - h[count++] = false; - continue; - } - } - - } - for (boolean b : h) { - if (!b) { - return false; } - } - return true; + + return mCompleted != null && mCompleted.size() > 0; + } } public boolean checkRecipe(ItemStack inputStack, ItemStack schematicStack) { -- cgit From 31996894fd1dd04ef4850dbc470664c5766bffb8 Mon Sep 17 00:00:00 2001 From: Jordan Byrne Date: Sun, 8 Apr 2018 16:10:03 +1000 Subject: % Tweaked some classes related to Textures and Casings. --- .../xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java | 8 ++++---- .../gregtech/common/blocks/textures/CasingTextureHandler3.java | 4 ++-- .../tileentities/machines/multi/misc/GMTE_AmazonPackager.java | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) (limited to 'src/Java/gtPlusPlus/xmod/gregtech/common') diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java index 0c43482d5b..f05686bcfa 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java @@ -25,12 +25,12 @@ extends GregtechMetaCasingBlocksAbstract { GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".1.name", "Inconel Reinforced Casing"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".2.name", "Multi-Use Casing"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".3.name", "Trinium Plated Mining Platform Casing"); - GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".4.name", "Supply Depot Casing"); + GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".4.name", "Placeholder"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".5.name", "Placeholder"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".6.name", "Placeholder"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".7.name", "Placeholder");; GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".8.name", "Placeholder"); - GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".9.name", "Placeholder"); + GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".9.name", "Supply Depot Casing"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".10.name", "Placeholder"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".11.name", "Placeholder"); GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".12.name", "Placeholder"); @@ -41,12 +41,12 @@ extends GregtechMetaCasingBlocksAbstract { GregtechItemList.Casing_Extruder.set(new ItemStack(this, 1, 1)); GregtechItemList.Casing_Multi_Use.set(new ItemStack(this, 1, 2)); GregtechItemList.Casing_BedrockMiner.set(new ItemStack(this, 1, 3)); - GregtechItemList.Casing_AmazonWarehouse.set(new ItemStack(this, 1, 4)); + //GregtechItemList.Casing_WashPlant.set(new ItemStack(this, 1, 4)); //GregtechItemList.Casing_Sifter.set(new ItemStack(this, 1, 5)); //GregtechItemList.Casing_SifterGrate.set(new ItemStack(this, 1, 6)); //GregtechItemList.Casing_Vanadium_Redox.set(new ItemStack(this, 1, 7)); //GregtechItemList.Casing_Power_SubStation.set(new ItemStack(this, 1, 8)); - //GregtechItemList.Casing_Cyclotron_Coil.set(new ItemStack(this, 1, 9)); + GregtechItemList.Casing_AmazonWarehouse.set(new ItemStack(this, 1, 9)); //GregtechItemList.Casing_Cyclotron_External.set(new ItemStack(this, 1, 10)); //GregtechItemList.Casing_ThermalContainment.set(new ItemStack(this, 1, 11)); //GregtechItemList.Casing_Autocrafter.set(new ItemStack(this, 1, 12)); diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/CasingTextureHandler3.java b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/CasingTextureHandler3.java index 2087cea2df..900ee80483 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/CasingTextureHandler3.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/CasingTextureHandler3.java @@ -21,7 +21,7 @@ public class CasingTextureHandler3 { return TexturesGtBlock.Casing_Staballoy_Firebox.getIcon(); //Material Press Casings case 4: - return TexturesGtBlock.TEXTURE_CASING_AMAZON.getIcon(); + return TexturesGtBlock._PlaceHolder.getIcon(); //Sifter Structural case 5: return TexturesGtBlock._PlaceHolder.getIcon(); @@ -36,7 +36,7 @@ public class CasingTextureHandler3 { return TexturesGtBlock._PlaceHolder.getIcon(); //Cyclotron Coil case 9: - return TexturesGtBlock._PlaceHolder.getIcon(); + return TexturesGtBlock.TEXTURE_CASING_AMAZON.getIcon(); //Cyclotron External Casing case 10: return TexturesGtBlock._PlaceHolder.getIcon(); diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java index 865b8b7bf4..146d1b9fcc 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java @@ -237,11 +237,11 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase { for (int h = -1; h < 2; h++) { if ((h != 0) || ((((xDir + i) != 0) || ((zDir + j) != 0)) && ((i != 0) || (j != 0)))) { final IGregTechTileEntity tTileEntity = aBaseMetaTileEntity.getIGregTechTileEntityOffset(xDir + i, h, zDir + j); - if (!this.addToMachineList(tTileEntity, TAE.getIndexFromPage(2, 4))) { + if (!this.addToMachineList(tTileEntity, TAE.getIndexFromPage(2, 9))) { final Block tBlock = aBaseMetaTileEntity.getBlockOffset(xDir + i, h, zDir + j); final byte tMeta = aBaseMetaTileEntity.getMetaIDOffset(xDir + i, h, zDir + j); - if (((tBlock != ModBlocks.blockCasings3Misc) || (tMeta != 4))) { + if (((tBlock != ModBlocks.blockCasings3Misc) || (tMeta != 9))) { return false; } tAmount++; -- cgit