aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus/xmod
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/gtPlusPlus/xmod')
-rw-r--r--src/Java/gtPlusPlus/xmod/forestry/bees/items/FR_ItemRegistry.java21
-rw-r--r--src/Java/gtPlusPlus/xmod/forestry/bees/items/MB_FrameType.java10
-rw-r--r--src/Java/gtPlusPlus/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java42
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java4
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/metatileentity/implementations/base/GregtechMeta_MultiBlockBase.java2
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java9
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/CasingTextureHandler3.java3
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/TexturesGtBlock.java3
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/misc/GMTE_AmazonPackager.java134
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_AlloySmelter.java6
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechAdvancedMixer.java2
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechAmazonWarehouse.java21
12 files changed, 204 insertions, 53 deletions
diff --git a/src/Java/gtPlusPlus/xmod/forestry/bees/items/FR_ItemRegistry.java b/src/Java/gtPlusPlus/xmod/forestry/bees/items/FR_ItemRegistry.java
index 5cab7d99b9..e1d37ab463 100644
--- a/src/Java/gtPlusPlus/xmod/forestry/bees/items/FR_ItemRegistry.java
+++ b/src/Java/gtPlusPlus/xmod/forestry/bees/items/FR_ItemRegistry.java
@@ -42,8 +42,13 @@ public class FR_ItemRegistry {
public static MB_ItemFrame hiveFrameSoul;
public static MB_ItemFrame hiveFrameClay;
public static MB_ItemFrame hiveFrameNova;
-
-
+
+ // Frame Items added by bartimaeusnek
+ public static MB_ItemFrame hiveFrameDecay;
+ public static MB_ItemFrame hiveFrameSlow;
+ public static MB_ItemFrame hiveFrameStalilize;
+ public static MB_ItemFrame hiveFrameArborist;
+
@Optional.Method(modid = "Forestry")
public static void Register() {
@@ -81,10 +86,14 @@ public class FR_ItemRegistry {
hiveFrameClay = new MB_ItemFrame(MB_FrameType.CLAY, EnumRarity.common, "");
hiveFrameNova = new MB_ItemFrame(MB_FrameType.NOVA, EnumRarity.epic, "A Creative Only Frame.");
}
-
-
-
-
+
+ // Frame Items added by bartimaeusnek
+ hiveFrameDecay = new MB_ItemFrame(MB_FrameType.DECAYING, EnumRarity.uncommon, "Who really needs stable genetics?");
+ hiveFrameSlow = new MB_ItemFrame(MB_FrameType.SLOWING, EnumRarity.common, "The journey is its own reward.");
+ hiveFrameStalilize = new MB_ItemFrame(MB_FrameType.STABILIZING, EnumRarity.rare, "If you wish your bees to keep their form.");
+ hiveFrameArborist = new MB_ItemFrame(MB_FrameType.ARBORISTS, EnumRarity.common, "Who need Bees when you can have Trees?");
+ ChestGenHooks.addItem(ChestGenHooks.PYRAMID_JUNGLE_CHEST, new WeightedRandomChestContent(new ItemStack(hiveFrameArborist), 1, 4, 24));
+ ChestGenHooks.addItem(ChestGenHooks.STRONGHOLD_LIBRARY, new WeightedRandomChestContent(new ItemStack(hiveFrameSlow), 1, 4, 24));
}
protected static <T extends Item> T registerItem(final T item, final String name) {
diff --git a/src/Java/gtPlusPlus/xmod/forestry/bees/items/MB_FrameType.java b/src/Java/gtPlusPlus/xmod/forestry/bees/items/MB_FrameType.java
index 36d4073c50..1016021e44 100644
--- a/src/Java/gtPlusPlus/xmod/forestry/bees/items/MB_FrameType.java
+++ b/src/Java/gtPlusPlus/xmod/forestry/bees/items/MB_FrameType.java
@@ -13,13 +13,19 @@ public enum MB_FrameType implements IBeeModifier
CLAY("Healing", 240, 1.0f, 0.5f, 1.50f, 0.75f, 1f),
NOVA("Nova", 240, 1.0f, 100.0f, 0.0001f, 1.00f, 1f),
-
+
//Name, FrameHP, territory (1f), Mutation rate, lifespan rate, production rate, genetic decay (1f)
ACCELERATED("Accelerated", 175, 1f, 1.2f, 0.9f, 1.8f, 1f),
VOID("Void", 20, 1f, 1f, 0.0001f, 10f, 1f),
MUTAGENIC("Mutagenic", 3, 1f, 5f, 0.0001f, 10f, 1f),
BUSY("Busy", 2000, 1f, 0f, 3f, 4f, 1f),
- USELESS("Useless", 100, 1f, 0f, 1f, 1f, 1f);
+ USELESS("Useless", 100, 1f, 0f, 1f, 1f, 1f),
+
+ // Frame Items added by bartimaeusnek
+ DECAYING("Decaying", 240, 1f, 1f, 1f, 1f, 10f), //enhanches decay to 10x
+ SLOWING("Slowing", 175, 1f, 0.5f, 2f, 0.5f, 1f), //reduces mutation, production rate and enhanches lifespan
+ STABILIZING("Stabilizing", 60, 1f, 0.1f, 1f, 0.1f, 0.5f), //reduces mutation, production and decay
+ ARBORISTS("Arborists", 240, 3f, 0f, 3f, 0f, 1f); //3x territory and lifespan, sets mutation and production to zero
private final String frameName;
public final int maxDamage;
diff --git a/src/Java/gtPlusPlus/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java b/src/Java/gtPlusPlus/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java
index 30b7099de8..1df25261d1 100644
--- a/src/Java/gtPlusPlus/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java
+++ b/src/Java/gtPlusPlus/xmod/forestry/bees/recipe/FR_Gregtech_Recipes.java
@@ -3,9 +3,11 @@ package gtPlusPlus.xmod.forestry.bees.recipe;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
-
+import gregtech.api.enums.Materials;
+import gregtech.api.enums.OrePrefixes;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.lib.LoadedMods;
+import gtPlusPlus.core.material.ALLOY;
import gtPlusPlus.core.util.minecraft.ItemUtils;
import gtPlusPlus.core.util.minecraft.RecipeUtils;
import gtPlusPlus.xmod.forestry.bees.items.FR_ItemRegistry;
@@ -23,7 +25,6 @@ public class FR_Gregtech_Recipes {
private static ItemStack hiveFrameVoid = ItemUtils.getSimpleStack(FR_ItemRegistry.hiveFrameVoid);
private static ItemStack hiveFrameBusy = ItemUtils.getSimpleStack(FR_ItemRegistry.hiveFrameBusy);
-
private static ItemStack hiveFrameCocoa = ItemUtils.getSimpleStack(FR_ItemRegistry.hiveFrameCocoa);
private static ItemStack hiveFrameCaged = ItemUtils.getSimpleStack(FR_ItemRegistry.hiveFrameCaged);
private static ItemStack hiveFrameSoul = ItemUtils.getSimpleStack(FR_ItemRegistry.hiveFrameSoul);
@@ -36,9 +37,12 @@ public class FR_Gregtech_Recipes {
private static ItemStack itemClayDust = new ItemStack(Items.clay_ball, 1);
private static ItemStack itemCocoaBeans = new ItemStack(Items.dye, 1, 3);
-
- public static void registerItems(){
-
+ private static ItemStack hiveFrameDecay = ItemUtils.getSimpleStack(FR_ItemRegistry.hiveFrameDecay);
+ private static ItemStack hiveFrameSlow = ItemUtils.getSimpleStack(FR_ItemRegistry.hiveFrameSlow);
+ private static ItemStack hiveFrameStalilize = ItemUtils.getSimpleStack(FR_ItemRegistry.hiveFrameStalilize);
+ private static ItemStack hiveFrameArborist = ItemUtils.getSimpleStack(FR_ItemRegistry.hiveFrameArborist);
+
+ public static void registerItems(){
//Magic Bee Like Frames
RecipeUtils.addShapedGregtechRecipe(
rod_LongElectrum, rod_Electrum, rod_LongElectrum,
@@ -95,9 +99,31 @@ public class FR_Gregtech_Recipes {
null, itemClayDust, null,
hiveFrameClay);
}
-
-
-
+
+ // Frame Items added by bartimaeusnek
+ RecipeUtils.addShapedGregtechRecipe(
+ ItemUtils.getItemStackOfAmountFromOreDict("stickLongTumbaga", 1),ItemUtils.getItemStackOfAmountFromOreDict("stickTumbaga", 1),ItemUtils.getItemStackOfAmountFromOreDict("stickLongTumbaga", 1),
+ ItemUtils.getItemStackOfAmountFromOreDict("stickLongTumbaga", 1),foil_Electrum,ItemUtils.getItemStackOfAmountFromOreDict("stickLongTumbaga", 1),
+ ItemUtils.getItemStackOfAmountFromOreDict("stickTumbaga", 1),ItemUtils.getItemStackOfAmountFromOreDict("stickTumbaga", 1),ItemUtils.getItemStackOfAmountFromOreDict("stickTumbaga", 1),
+ hiveFrameSlow);
+
+ RecipeUtils.addShapedGregtechRecipe(
+ "stickLongWroughtIron","stickWroughtIron","stickLongWroughtIron",
+ "stickLongWroughtIron","foilWroughtIron","stickLongWroughtIron",
+ "stickWroughtIron","stickWroughtIron","stickWroughtIron",
+ hiveFrameDecay);
+
+ RecipeUtils.addShapedGregtechRecipe(
+ "stickLongOsmiridium","stickOsmiridium","stickLongOsmiridium",
+ "stickLongOsmiridium","foilOsmiridium","stickLongOsmiridium",
+ "stickOsmiridium","stickOsmiridium","stickOsmiridium",
+ hiveFrameStalilize);
+
+ RecipeUtils.addShapedGregtechRecipe(
+ "stickLongWoodSealed","stickWoodSealed","stickLongWoodSealed",
+ "stickLongWoodSealed",Items.paper,"stickLongWoodSealed",
+ "stickWoodSealed","stickWoodSealed","stickWoodSealed",
+ hiveFrameArborist);
}
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java b/src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java
index 2b9860ef1c..e951735f5e 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/api/enums/GregtechItemList.java
@@ -311,7 +311,9 @@ public enum GregtechItemList implements GregtechItemContainer {
//Buffer Dynamos
Hatch_Buffer_Dynamo_ULV, Hatch_Buffer_Dynamo_LV, Hatch_Buffer_Dynamo_MV, Hatch_Buffer_Dynamo_HV, Hatch_Buffer_Dynamo_EV,
- Hatch_Buffer_Dynamo_IV, Hatch_Buffer_Dynamo_LuV, Hatch_Buffer_Dynamo_ZPM, Hatch_Buffer_Dynamo_UV, Hatch_Buffer_Dynamo_MAX,
+ Hatch_Buffer_Dynamo_IV, Hatch_Buffer_Dynamo_LuV, Hatch_Buffer_Dynamo_ZPM, Hatch_Buffer_Dynamo_UV, Hatch_Buffer_Dynamo_MAX,
+
+ Amazon_Warehouse_Controller, Casing_AmazonWarehouse,
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/blocks/GregtechMetaCasingBlocks3.java b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java
index 7baa8ec36a..0ea26debe4 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/GregtechMetaCasingBlocks3.java
@@ -54,7 +54,7 @@ extends GregtechMetaCasingBlocksAbstract {
GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".6.name", "Vanadium Redox Power Cell (ZPM)");
GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".7.name", "Vanadium Redox Power Cell (UV)");;
GT_LanguageManager.addStringLocalization(this.getUnlocalizedName() + ".8.name", "Vanadium Redox Power Cell (MAX)");
- 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");
@@ -70,12 +70,7 @@ extends GregtechMetaCasingBlocksAbstract {
GregtechItemList.Casing_Vanadium_Redox_ZPM.set(new ItemStack(this, 1, 6));
GregtechItemList.Casing_Vanadium_Redox_UV.set(new ItemStack(this, 1, 7));
GregtechItemList.Casing_Vanadium_Redox_MAX.set(new ItemStack(this, 1, 8));
- //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 e83ce098c8..45ca6c56dc 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/CasingTextureHandler3.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/CasingTextureHandler3.java
@@ -35,7 +35,8 @@ public class CasingTextureHandler3 {
//Vanadium Redox MAX
return TexturesGtBlock.Casing_Redox_6.getIcon();
case 9:
- return TexturesGtBlock._PlaceHolder.getIcon();
+ //Amazon Warehouse Casing
+ return TexturesGtBlock.TEXTURE_CASING_AMAZON.getIcon();
case 10:
return TexturesGtBlock._PlaceHolder.getIcon();
case 11:
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 0c187480bb..b3d751a58f 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/TexturesGtBlock.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/blocks/textures/TexturesGtBlock.java
@@ -205,6 +205,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..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
@@ -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.*;
@@ -9,14 +10,20 @@ 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;
public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase {
@@ -41,7 +48,7 @@ public class GMTE_AmazonPackager extends GregtechMeta_MultiBlockBase {
@Override
public boolean hasSlotInGUI() {
- return false;
+ return true;
}
@Override
@@ -49,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
};
}
@@ -61,32 +82,65 @@ 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, 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.GTPP_INDEX(7)]};
+ 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<ItemStack> tItems = getStoredInputs();
- AutoMap<ItemStackData> mCompleted = new AutoMap<ItemStackData>();
+ if (this.getGUIItemStack() != null) {
+ tItems.add(this.getGUIItemStack());
- for (ItemStack tInputItem : tItems) {
- if (tInputItem != null) {
- mCompleted.put(new ItemStackData(tInputItem));
- checkRecipe(tInputItem, getGUIItemStack());
- }
}
-
- return mCompleted != null && mCompleted.size() > 0;
+ ArrayList<FluidStack> 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);
+
+
+ if (state) {
+ return true;
+ }
+ else {
+ tItems = getStoredInputs();
+ AutoMap<ItemStackData> mCompleted = new AutoMap<ItemStackData>();
+ AutoMap<ItemStackData> mSchematics = new AutoMap<ItemStackData>();
+ 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 : tItems) {
+ if (tInputItem != null) {
+ mCompleted.put(new ItemStackData(tInputItem));
+ checkRecipe(tInputItem, g.getStack());
+ }
+ }
+ }
+ }
+
+ return mCompleted != null && mCompleted.size() > 0;
+ }
}
public boolean checkRecipe(ItemStack inputStack, ItemStack schematicStack) {
@@ -95,24 +149,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;
@@ -121,11 +180,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;
@@ -134,7 +196,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);
@@ -163,8 +225,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, 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 != 9))) {
+ return false;
+ }
+ tAmount++;
+ }
+ }
+ }
+ }
+ }
+ return tAmount >= 10;
}
@Override
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_AlloySmelter.java b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_AlloySmelter.java
index e3dc240995..f405c8b5c6 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_AlloySmelter.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/loaders/RecipeGen_AlloySmelter.java
@@ -24,7 +24,7 @@ public class RecipeGen_AlloySmelter implements Runnable{
//Nuggets
GT_Values.RA.addAlloySmelterRecipe(
material.getIngot(1),
- ItemList.Shape_Mold_Nugget.get(1),
+ ItemList.Shape_Mold_Nugget.get(0),
material.getNugget(9),
(int) Math.max(material.getMass() * 2L, 1L),
2 * tVoltageMultiplier);
@@ -32,7 +32,7 @@ public class RecipeGen_AlloySmelter implements Runnable{
//Gears
GT_Values.RA.addAlloySmelterRecipe(
material.getIngot(8),
- ItemList.Shape_Mold_Gear.get(1),
+ ItemList.Shape_Mold_Gear.get(0),
material.getGear(1),
(int) Math.max(material.getMass() * 2L, 1L),
2 * tVoltageMultiplier);
@@ -40,7 +40,7 @@ public class RecipeGen_AlloySmelter implements Runnable{
//Ingot
GT_Values.RA.addAlloySmelterRecipe(
material.getNugget(9),
- ItemList.Shape_Mold_Ingot.get(1),
+ ItemList.Shape_Mold_Ingot.get(0),
material.getIngot(1),
(int) Math.max(material.getMass() * 2L, 1L),
2 * tVoltageMultiplier);
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechAdvancedMixer.java b/src/Java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechAdvancedMixer.java
index 3a3ed1450e..dc79b3953b 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechAdvancedMixer.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechAdvancedMixer.java
@@ -26,7 +26,7 @@ public class GregtechAdvancedMixer {
GT_Recipe_Map oldMap = GT_Recipe.GT_Recipe_Map.sMixerRecipes;
GT_Recipe_Map map = Recipe_GT.Gregtech_Recipe_Map.sAdvancedMixerRecipes;
final Collection<GT_Recipe> x = oldMap.mRecipeList;
- Logger.INFO("Generating " + map.mUnlocalizedName + " Recipes.");
+ //Logger.INFO("Generating " + map.mUnlocalizedName + " Recipes.");
for (final GT_Recipe g : x) {
Recipe_GT.Gregtech_Recipe_Map.sAdvancedMixerRecipes.add(g);
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechAmazonWarehouse.java b/src/Java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechAmazonWarehouse.java
new file mode 100644
index 0000000000..8adf580011
--- /dev/null
+++ b/src/Java/gtPlusPlus/xmod/gregtech/registration/gregtech/GregtechAmazonWarehouse.java
@@ -0,0 +1,21 @@
+package gtPlusPlus.xmod.gregtech.registration.gregtech;
+
+import gtPlusPlus.api.objects.Logger;
+import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList;
+import gtPlusPlus.xmod.gregtech.common.tileentities.machines.multi.misc.GMTE_AmazonPackager;
+
+public class GregtechAmazonWarehouse {
+
+ public static void run() {
+ if (gtPlusPlus.core.lib.LoadedMods.Gregtech) {
+ Logger.INFO("Gregtech5u Content | Registering Amazon Warehouse Multiblock.");
+ run1();
+ }
+ }
+
+ private static void run1() {
+ // Amazon packager multiblock
+ GregtechItemList.Amazon_Warehouse_Controller.set(new GMTE_AmazonPackager(942, "amazonprime.controller.tier.single", "Amazon Warehousing Depot.").getStackForm(1L));
+
+ }
+} \ No newline at end of file