aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChristina Berchtold <kekzdealer@gmail.com>2019-06-09 23:41:14 +0200
committerChristina Berchtold <kekzdealer@gmail.com>2019-06-09 23:41:14 +0200
commite806e19f3b42df2759231880afff02648908239f (patch)
tree1cba8a919ee261f2f03f1f6f1aac381017d0544a /src
parent133b330fecda75943ab3b1e379a08e3b9ba37fc3 (diff)
downloadGT5-Unofficial-e806e19f3b42df2759231880afff02648908239f.tar.gz
GT5-Unofficial-e806e19f3b42df2759231880afff02648908239f.tar.bz2
GT5-Unofficial-e806e19f3b42df2759231880afff02648908239f.zip
gradle building and recipes. SOFC fully functional. Probably first release :)
Diffstat (limited to 'src')
-rw-r--r--src/main/java/blocks/Block_GDCUnit.java (renamed from src/main/java/fuelcell/Block_GDCUnit.java)2
-rw-r--r--src/main/java/blocks/Block_YSZUnit.java (renamed from src/main/java/fuelcell/Block_YSZUnit.java)2
-rw-r--r--src/main/java/container/Container_ModularNuclearReactor.java (renamed from src/main/java/reactor/Container_ModularNuclearReactor.java)4
-rw-r--r--src/main/java/container/GUIContainer_ModularNuclearReactor.java (renamed from src/main/java/reactor/GUIContainer_ModularNuclearReactor.java)2
-rw-r--r--src/main/java/items/ErrorItem.java (renamed from src/main/java/kekztech/ErrorItem.java)3
-rw-r--r--src/main/java/items/MetaItem_CraftingComponent.java (renamed from src/main/java/kekztech/MetaItem_CraftingComponent.java)12
-rw-r--r--src/main/java/items/MetaItem_ReactorComponent.java (renamed from src/main/java/kekztech/MetaItem_ReactorComponent.java)3
-rw-r--r--src/main/java/kekztech/GTMultiController.java5
-rw-r--r--src/main/java/kekztech/Items.java7
-rw-r--r--src/main/java/kekztech/KekzCore.java202
-rw-r--r--src/main/java/kekztech/Util.java1
-rw-r--r--src/main/java/reactor/items/CoolantCell.java2
-rw-r--r--src/main/java/reactor/items/FuelRod.java2
-rw-r--r--src/main/java/reactor/items/HeatExchanger.java4
-rw-r--r--src/main/java/reactor/items/HeatPipe.java29
-rw-r--r--src/main/java/reactor/items/HeatVent.java4
-rw-r--r--src/main/java/reactor/items/NeutronReflector.java2
-rw-r--r--src/main/java/tileentities/GTMTE_ModularNuclearReactor.java (renamed from src/main/java/reactor/GTMTE_ModularNuclearReactor.java)14
-rw-r--r--src/main/java/tileentities/GTMTE_SOFuelCellMK1.java (renamed from src/main/java/fuelcell/GTMTE_SOFuelCellMK1.java)101
-rw-r--r--src/main/java/tileentities/GTMTE_SOFuelCellMK2.java (renamed from src/main/java/fuelcell/GTMTE_SOFuelCellMK2.java)93
20 files changed, 373 insertions, 121 deletions
diff --git a/src/main/java/fuelcell/Block_GDCUnit.java b/src/main/java/blocks/Block_GDCUnit.java
index 6107e017a1..d11681b1d6 100644
--- a/src/main/java/fuelcell/Block_GDCUnit.java
+++ b/src/main/java/blocks/Block_GDCUnit.java
@@ -1,4 +1,4 @@
-package fuelcell;
+package blocks;
import cpw.mods.fml.common.registry.GameRegistry;
import kekztech.KekzCore;
diff --git a/src/main/java/fuelcell/Block_YSZUnit.java b/src/main/java/blocks/Block_YSZUnit.java
index c93f6f374a..1e4df40c67 100644
--- a/src/main/java/fuelcell/Block_YSZUnit.java
+++ b/src/main/java/blocks/Block_YSZUnit.java
@@ -1,4 +1,4 @@
-package fuelcell;
+package blocks;
import cpw.mods.fml.common.registry.GameRegistry;
import kekztech.KekzCore;
diff --git a/src/main/java/reactor/Container_ModularNuclearReactor.java b/src/main/java/container/Container_ModularNuclearReactor.java
index 4ecfe61836..41b686c901 100644
--- a/src/main/java/reactor/Container_ModularNuclearReactor.java
+++ b/src/main/java/container/Container_ModularNuclearReactor.java
@@ -1,4 +1,4 @@
-package reactor;
+package container;
import gregtech.api.gui.GT_Container_MultiMachine;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
@@ -6,6 +6,8 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.IInventory;
import net.minecraft.inventory.Slot;
+import reactor.ButtonSlot;
+import tileentities.GTMTE_ModularNuclearReactor;
public class Container_ModularNuclearReactor extends GT_Container_MultiMachine {
diff --git a/src/main/java/reactor/GUIContainer_ModularNuclearReactor.java b/src/main/java/container/GUIContainer_ModularNuclearReactor.java
index 1f8248e5bb..58a9ff6caf 100644
--- a/src/main/java/reactor/GUIContainer_ModularNuclearReactor.java
+++ b/src/main/java/container/GUIContainer_ModularNuclearReactor.java
@@ -1,4 +1,4 @@
-package reactor;
+package container;
import org.lwjgl.opengl.GL11;
diff --git a/src/main/java/kekztech/ErrorItem.java b/src/main/java/items/ErrorItem.java
index 7047d3f057..5694b4e800 100644
--- a/src/main/java/kekztech/ErrorItem.java
+++ b/src/main/java/items/ErrorItem.java
@@ -1,8 +1,9 @@
-package kekztech;
+package items;
import java.util.List;
import cpw.mods.fml.common.registry.GameRegistry;
+import kekztech.KekzCore;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
diff --git a/src/main/java/kekztech/MetaItem_CraftingComponent.java b/src/main/java/items/MetaItem_CraftingComponent.java
index 89a015998f..29b8e8ac1f 100644
--- a/src/main/java/kekztech/MetaItem_CraftingComponent.java
+++ b/src/main/java/items/MetaItem_CraftingComponent.java
@@ -1,15 +1,15 @@
-package kekztech;
+package items;
import java.util.List;
import cpw.mods.fml.common.registry.GameRegistry;
+import kekztech.KekzCore;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
-import reactor.items.HeatPipe;
public class MetaItem_CraftingComponent extends Item {
@@ -37,10 +37,10 @@ public class MetaItem_CraftingComponent extends Item {
public void registerIcons(IIconRegister reg) {
int counter = 0;
// Raw heat pipes
- icons[counter++] = reg.registerIcon(KekzCore.MODID + ":" + HeatPipe.RESOURCE_NAMES[0]);
- icons[counter++] = reg.registerIcon(KekzCore.MODID + ":" + HeatPipe.RESOURCE_NAMES[1]);
- icons[counter++] = reg.registerIcon(KekzCore.MODID + ":" + HeatPipe.RESOURCE_NAMES[2]);
- icons[counter++] = reg.registerIcon(KekzCore.MODID + ":" + HeatPipe.RESOURCE_NAMES[3]);
+ icons[counter++] = reg.registerIcon(KekzCore.MODID + ":" + "CopperHeatPipe");
+ icons[counter++] = reg.registerIcon(KekzCore.MODID + ":" + "SilverHeatPipe");
+ icons[counter++] = reg.registerIcon(KekzCore.MODID + ":" + "BoronArsenideHeatPipe");
+ icons[counter++] = reg.registerIcon(KekzCore.MODID + ":" + "DiamondHeatPipe");
// Dust
icons[counter++] = reg.registerIcon(KekzCore.MODID + ":" + "BoronArsenideDust");
icons[counter++] = reg.registerIcon(KekzCore.MODID + ":" + "IsotopicallyPureDiamondDust");
diff --git a/src/main/java/kekztech/MetaItem_ReactorComponent.java b/src/main/java/items/MetaItem_ReactorComponent.java
index 16f3f1403f..458de48a00 100644
--- a/src/main/java/kekztech/MetaItem_ReactorComponent.java
+++ b/src/main/java/items/MetaItem_ReactorComponent.java
@@ -1,8 +1,9 @@
-package kekztech;
+package items;
import java.util.List;
import cpw.mods.fml.common.registry.GameRegistry;
+import kekztech.KekzCore;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
diff --git a/src/main/java/kekztech/GTMultiController.java b/src/main/java/kekztech/GTMultiController.java
index e27c2c39bd..d824077201 100644
--- a/src/main/java/kekztech/GTMultiController.java
+++ b/src/main/java/kekztech/GTMultiController.java
@@ -17,6 +17,11 @@ import gregtech.api.util.GT_Utility;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
+/**
+ * Only purpose of this class is to make me learn about GT multis :)
+ * @author Kekzdealer
+ *
+ */
public abstract class GTMultiController {
private final GTRecipe GT_RECIPE = new GTRecipe();
diff --git a/src/main/java/kekztech/Items.java b/src/main/java/kekztech/Items.java
index f7ce2e883a..47708971c7 100644
--- a/src/main/java/kekztech/Items.java
+++ b/src/main/java/kekztech/Items.java
@@ -23,12 +23,17 @@ public enum Items {
T1NeutronReflector(46), T2NeutronReflector(47),
// Coolant Cells
HeliumCoolantCell360k(48), NaKCoolantCell360k(49),
+
// Heat Pipes
CopperHeatPipe(0), SilverHeatPipe(1), BoronArsenideHeatPipe(2), DiamondHeatPipe(3),
BoronArsenideDust(4), IsotopicallyPureDiamondDust(5), AmineCarbamiteDust(6),
BoronArsenideCrystal(7), IsotopicallyPureDiamondCrystal(8),
+ // Ceramics
+ YSZCeramicDust(9), GDCCeramicDust(10),
+ YttriaDust(11), ZirconiaDust(12), CeriaDust(13),
+ YSZCeramicPlate(14), GDCCeramicPlate(15),
// Error Item
- Error(9);
+ Error(0);
private final int metaID;
diff --git a/src/main/java/kekztech/KekzCore.java b/src/main/java/kekztech/KekzCore.java
index bfcd382577..bb65090625 100644
--- a/src/main/java/kekztech/KekzCore.java
+++ b/src/main/java/kekztech/KekzCore.java
@@ -1,20 +1,24 @@
package kekztech;
+import blocks.Block_GDCUnit;
+import blocks.Block_YSZUnit;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
-import fuelcell.Block_GDCUnit;
-import fuelcell.Block_YSZUnit;
-import fuelcell.GTMTE_SOFuelCellMK1;
-import fuelcell.GTMTE_SOFuelCellMK2;
+import cpw.mods.fml.common.registry.GameRegistry;
import gregtech.api.enums.GT_Values;
import gregtech.api.enums.ItemList;
+import gregtech.api.enums.Materials;
+import gregtech.api.util.GT_Utility;
+import items.ErrorItem;
+import items.MetaItem_CraftingComponent;
+import items.MetaItem_ReactorComponent;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidRegistry;
-import reactor.GTMTE_ModularNuclearReactor;
-import reactor.items.HeatExchanger;
-import reactor.items.HeatPipe;
+import tileentities.GTMTE_ModularNuclearReactor;
+import tileentities.GTMTE_SOFuelCellMK1;
+import tileentities.GTMTE_SOFuelCellMK2;
@Mod(modid = KekzCore.MODID, name = KekzCore.NAME, version = KekzCore.VERSION,
dependencies = "required-after:IC2; "
@@ -25,6 +29,10 @@ public class KekzCore {
public static final String NAME = "KekzTech";
public static final String MODID = "kekztech";
public static final String VERSION = "0.1a";
+
+ private GTMTE_SOFuelCellMK1 sofc1;
+ private GTMTE_SOFuelCellMK2 sofc2;
+ private GTMTE_ModularNuclearReactor mdr;
@Mod.Instance("kekztech")
public static KekzCore instance;
@@ -42,38 +50,186 @@ public class KekzCore {
@Mod.EventHandler
public void init(FMLInitializationEvent event ) {
- final GTMTE_SOFuelCellMK1 sofc1 = new GTMTE_SOFuelCellMK1(5000, "multimachine.fuelcellmk1", "Solid-Oxide Fuel Cell Mk I");
- final GTMTE_SOFuelCellMK2 sofc2 = new GTMTE_SOFuelCellMK2(5001, "multimachine.fuelcellmk2", "Solid-Oxide Fuel Cell Mk II");
- final GTMTE_ModularNuclearReactor mdr = new GTMTE_ModularNuclearReactor(5002, "multimachine.nuclearreactor", "Nuclear Reactor");
+ sofc1 = new GTMTE_SOFuelCellMK1(5000, "multimachine.fuelcellmk1", "Solid-Oxide Fuel Cell Mk I");
+ sofc2 = new GTMTE_SOFuelCellMK2(5001, "multimachine.fuelcellmk2", "Solid-Oxide Fuel Cell Mk II");
+ mdr = new GTMTE_ModularNuclearReactor(5002, "multimachine.nuclearreactor", "Nuclear Reactor");
}
@Mod.EventHandler
public void postInit(FMLPostInitializationEvent event) {
- for(GTRecipe recipe : HeatPipe.RECIPE) {
- GT_Values.RA.addLatheRecipe(recipe.getInputItem(), recipe.getOutputItem(), null, recipe.getDuration(), recipe.getEuPerTick());
- }
+ System.out.println("Registering KekzTech recipes...");
+
+ final MetaItem_CraftingComponent craftingItem = MetaItem_CraftingComponent.getInstance();
+ final MetaItem_ReactorComponent reactorItem = MetaItem_ReactorComponent.getInstance();
+
+ // Multiblock Controllers
+ GameRegistry.addShapedRecipe(sofc1.getStackForm(1),
+ "CCC", "PHP", "FBL",
+ 'C', Util.getStackofAmountFromOreDict("circuitAdvanced", 1),
+ 'P', ItemList.Electric_Pump_HV.get(1L, (Object[]) null),
+ 'H', ItemList.Hull_HV.get(1L, (Object[]) null),
+ 'F', Util.getStackofAmountFromOreDict("pipeSmallStainlessSteel", 1),
+ 'B', Util.getStackofAmountFromOreDict("cableGt02Gold", 1),
+ 'L', Util.getStackofAmountFromOreDict("pipeLargeStainlessSteel", 1));
+ GameRegistry.addShapedRecipe(sofc2.getStackForm(1),
+ "CCC", "PHP", "FBL",
+ 'C', Util.getStackofAmountFromOreDict("circuitMaster", 1),
+ 'P', ItemList.Electric_Pump_IV.get(1L, (Object[]) null),
+ 'H', ItemList.Hull_IV.get(1L, (Object[]) null),
+ 'F', Util.getStackofAmountFromOreDict("pipeSmallUltimate", 1),
+ 'B', Util.getStackofAmountFromOreDict("wireGt04SuperconductorEV", 1),
+ 'L', Util.getStackofAmountFromOreDict("pipeMediumUltimate", 1));
+
+ // Ceramic Electrolyte Units
+ final ItemStack[] yszUnit = {
+ GT_Utility.getIntegratedCircuit(6),
+ craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicPlate.getMetaID(), 4),
+ Util.getStackofAmountFromOreDict("frameGtYttrium", 1),
+ Util.getStackofAmountFromOreDict("rotorStainlessSteel", 1),
+ ItemList.Electric_Motor_HV.get(1L, (Object[]) null),
+ };
+ GT_Values.RA.addAssemblerRecipe(
+ yszUnit,
+ Materials.Hydrogen.getGas(4000),
+ new ItemStack(Block_YSZUnit.getInstance(), 1),
+ 1200, 480);
+ final ItemStack[] gdcUnit = {
+ GT_Utility.getIntegratedCircuit(6),
+ craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicPlate.getMetaID(), 8),
+ Util.getStackofAmountFromOreDict("frameGtGadolinium", 1),
+ Util.getStackofAmountFromOreDict("rotorDesh", 1),
+ ItemList.Electric_Motor_IV.get(1L, (Object[]) null),
+ };
+ GT_Values.RA.addAssemblerRecipe(
+ gdcUnit,
+ Materials.Hydrogen.getGas(16000),
+ new ItemStack(Block_GDCUnit.getInstance(), 1),
+ 2400, 1920);
+
+ // Ceramic plates
+ GT_Values.RA.addAlloySmelterRecipe(
+ craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicDust.getMetaID(), 10),
+ ItemList.Shape_Mold_Plate.get(1, (Object[]) null),
+ craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicPlate.getMetaID(), 1),
+ 400, 480);
+ GT_Values.RA.addFormingPressRecipe(
+ craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicDust.getMetaID(), 10),
+ ItemList.Shape_Mold_Plate.get(1, (Object[]) null),
+ craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicPlate.getMetaID(), 1),
+ 800, 480);
+
+ // Dusts
+ GT_Values.RA.addMixerRecipe(Materials.Boron.getDust(1), Materials.Arsenic.getDust(1), GT_Utility.getIntegratedCircuit(6), null,
+ null, null, craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideDust.getMetaID(), 2),
+ 100, 1920);
+ GT_Values.RA.addChemicalRecipe(
+ Materials.Ammonia.getCells(2),
+ Materials.CarbonDioxide.getCells(1),
+ null,
+ null,
+ craftingItem.getStackOfAmountFromDamage(Items.AmineCarbamiteDust.getMetaID(), 1),
+ Util.getStackofAmountFromOreDict("cellEmpty", 3),
+ 400, 30);
+ GT_Values.RA.addChemicalRecipe(
+ craftingItem.getStackOfAmountFromDamage(Items.AmineCarbamiteDust.getMetaID(), 1),
+ Materials.Diamond.getDust(16),
+ Materials.CarbonDioxide.getGas(1000),
+ null,
+ craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondDust.getMetaID(), 1),
+ null, 1200, 480);
+ GT_Values.RA.addAutoclaveRecipe(
+ craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondDust.getMetaID(), 4),
+ Materials.CarbonDioxide.getGas(16000),
+ craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondCrystal.getMetaID(), 1), 10000, 2400, 7680);
+ GT_Values.RA.addChemicalRecipe(
+ Materials.Yttrium.getDust(1), GT_Utility.getIntegratedCircuit(6), Materials.Oxygen.getGas(3000),
+ null, craftingItem.getStackOfAmountFromDamage(Items.YttriaDust.getMetaID(), 1), null,
+ 400, 30);
+ GT_Values.RA.addChemicalRecipe(
+ Util.getStackofAmountFromOreDict("dustZirconium", 1), GT_Utility.getIntegratedCircuit(6), Materials.Oxygen.getGas(2000),
+ null, craftingItem.getStackOfAmountFromDamage(Items.ZirconiaDust.getMetaID(), 1), null,
+ 400, 30);
+ GT_Values.RA.addChemicalRecipe(
+ Materials.Cerium.getDust(2), GT_Utility.getIntegratedCircuit(6), Materials.Oxygen.getGas(3000),
+ null, craftingItem.getStackOfAmountFromDamage(Items.CeriaDust.getMetaID(), 2), null,
+ 400, 30);
+ GT_Values.RA.addMixerRecipe(
+ craftingItem.getStackOfAmountFromDamage(Items.YttriaDust.getMetaID(), 1),
+ craftingItem.getStackOfAmountFromDamage(Items.ZirconiaDust.getMetaID(), 5),
+ GT_Utility.getIntegratedCircuit(6), null, null, null,
+ craftingItem.getStackOfAmountFromDamage(Items.YSZCeramicDust.getMetaID(), 6),
+ 400, 96);
+ GT_Values.RA.addMixerRecipe(
+ Util.getStackofAmountFromOreDict("dustGadolinium", 1),
+ craftingItem.getStackOfAmountFromDamage(Items.CeriaDust.getMetaID(), 9),
+ GT_Utility.getIntegratedCircuit(6), null, null, null,
+ craftingItem.getStackOfAmountFromDamage(Items.GDCCeramicDust.getMetaID(), 10),
+ 400, 1920);
- for(GTRecipe recipe : HeatExchanger.RECIPE) {
- GT_Values.RA.addAssemblerRecipe(
- recipe.getInputItems(), recipe.getInputFluid(), recipe.getOutputItem(), recipe.getDuration(), recipe.getEuPerTick());
- }
+ // Heat Pipes
+ GT_Values.RA.addLatheRecipe(
+ Util.getStackofAmountFromOreDict("stickCopper", 1),
+ craftingItem.getStackFromDamage(Items.CopperHeatPipe.getMetaID()),
+ null, 120, 120);
+ GT_Values.RA.addLatheRecipe(
+ Util.getStackofAmountFromOreDict("stickSilver", 1),
+ craftingItem.getStackFromDamage(Items.SilverHeatPipe.getMetaID()),
+ null, 120, 480);
+ GT_Values.RA.addLatheRecipe(
+ craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideCrystal.getMetaID(), 4),
+ craftingItem.getStackFromDamage(Items.BoronArsenideHeatPipe.getMetaID()),
+ null, 1200, 1920);
+ GT_Values.RA.addLatheRecipe(
+ craftingItem.getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondCrystal.getMetaID(), 4),
+ craftingItem.getStackFromDamage(Items.DiamondHeatPipe.getMetaID()),
+ null, 1200, 7680);
// Heat Vents
final ItemStack[] t1HeatVent = {
- MetaItem_CraftingComponent.getInstance().getStackOfAmountFromDamage(Items.CopperHeatPipe.getMetaID(), 2),
+ craftingItem.getStackOfAmountFromDamage(Items.CopperHeatPipe.getMetaID(), 2),
ItemList.Electric_Motor_MV.get(1L, (Object[]) null),
Util.getStackofAmountFromOreDict("rotorSteel", 1),
Util.getStackofAmountFromOreDict("plateDoubleSteel", 2),
Util.getStackofAmountFromOreDict("screwSteel", 8),
- Util.getStackofAmountFromOreDict("circuitGood", 1)
+ Util.getStackofAmountFromOreDict("circuitGood", 1),
+ GT_Utility.getIntegratedCircuit(6)
};
- GT_Values.RA.addAssemblerRecipe(t1HeatVent,
+ GT_Values.RA.addAssemblerRecipe(
+ t1HeatVent,
FluidRegistry.getFluidStack("molten.copper", 144),
- MetaItem_ReactorComponent.getInstance().getStackFromDamage(Items.T1HeatVent.getMetaID()),
- 200, 120
- );
+ reactorItem.getStackFromDamage(Items.T1HeatVent.getMetaID()),
+ 200, 120);
+ final ItemStack[] t2HeatVent = {
+ craftingItem.getStackOfAmountFromDamage(Items.SilverHeatPipe.getMetaID(), 2),
+ ItemList.Electric_Motor_HV.get(1L, (Object[]) null),
+ Util.getStackofAmountFromOreDict("rotorAluminium", 1),
+ Util.getStackofAmountFromOreDict("plateDoubleAluminium", 2),
+ Util.getStackofAmountFromOreDict("screwAluminium", 8),
+ Util.getStackofAmountFromOreDict("circuitAdvanced", 1),
+ GT_Utility.getIntegratedCircuit(6)
+ };
+ GT_Values.RA.addAssemblerRecipe(
+ t2HeatVent,
+ FluidRegistry.getFluidStack("molten.silver", 144),
+ reactorItem.getStackFromDamage(Items.T2HeatVent.getMetaID()),
+ 400, 480);
+ final ItemStack[] t3HeatVent = {
+ craftingItem.getStackOfAmountFromDamage(Items.BoronArsenideHeatPipe.getMetaID(), 2),
+ ItemList.Electric_Motor_IV.get(1L, (Object[]) null),
+ Util.getStackofAmountFromOreDict("rotorTungstenSteel", 1),
+ Util.getStackofAmountFromOreDict("plateDoubleTungstenSteel", 2),
+ Util.getStackofAmountFromOreDict("screwTungsten", 8),
+ Util.getStackofAmountFromOreDict("circuitData", 1),
+ GT_Utility.getIntegratedCircuit(6)
+ };
+ GT_Values.RA.addAssemblerRecipe(
+ t3HeatVent,
+ FluidRegistry.getFluidStack("molten.gallium", 576),
+ reactorItem.getStackFromDamage(Items.T3HeatVent.getMetaID()),
+ 800, 7680);
+ System.out.println("...done");
}
diff --git a/src/main/java/kekztech/Util.java b/src/main/java/kekztech/Util.java
index c1243cadd8..ccbcc799e6 100644
--- a/src/main/java/kekztech/Util.java
+++ b/src/main/java/kekztech/Util.java
@@ -4,6 +4,7 @@ import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+import items.ErrorItem;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.oredict.OreDictionary;
diff --git a/src/main/java/reactor/items/CoolantCell.java b/src/main/java/reactor/items/CoolantCell.java
index 64b979acc4..04122fef33 100644
--- a/src/main/java/reactor/items/CoolantCell.java
+++ b/src/main/java/reactor/items/CoolantCell.java
@@ -1,8 +1,8 @@
package reactor.items;
+import items.MetaItem_ReactorComponent;
import kekztech.GTRecipe;
import kekztech.Items;
-import kekztech.MetaItem_ReactorComponent;
public class CoolantCell {
diff --git a/src/main/java/reactor/items/FuelRod.java b/src/main/java/reactor/items/FuelRod.java
index adef6f3409..d0f9cb5e17 100644
--- a/src/main/java/reactor/items/FuelRod.java
+++ b/src/main/java/reactor/items/FuelRod.java
@@ -1,8 +1,8 @@
package reactor.items;
+import items.MetaItem_ReactorComponent;
import kekztech.GTRecipe;
import kekztech.Items;
-import kekztech.MetaItem_ReactorComponent;
public class FuelRod {
diff --git a/src/main/java/reactor/items/HeatExchanger.java b/src/main/java/reactor/items/HeatExchanger.java
index b34baf25cf..33825b7ac6 100644
--- a/src/main/java/reactor/items/HeatExchanger.java
+++ b/src/main/java/reactor/items/HeatExchanger.java
@@ -1,9 +1,9 @@
package reactor.items;
+import items.MetaItem_CraftingComponent;
+import items.MetaItem_ReactorComponent;
import kekztech.GTRecipe;
import kekztech.Items;
-import kekztech.MetaItem_CraftingComponent;
-import kekztech.MetaItem_ReactorComponent;
import kekztech.Util;
import net.minecraftforge.fluids.FluidRegistry;
diff --git a/src/main/java/reactor/items/HeatPipe.java b/src/main/java/reactor/items/HeatPipe.java
deleted file mode 100644
index 5f907b02fc..0000000000
--- a/src/main/java/reactor/items/HeatPipe.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package reactor.items;
-
-import kekztech.GTRecipe;
-import kekztech.Items;
-import kekztech.MetaItem_CraftingComponent;
-import kekztech.Util;
-
-public class HeatPipe {
-
- public static String[] RESOURCE_NAMES = {
- "CopperHeatPipe", "SilverHeatPipe", "BoronArsenideHeatPipe", "DiamondHeatPipe"
- };
-
- public static final GTRecipe[] RECIPE = {
- new GTRecipe().setEUPerTick(120).setDuration(120)
- .addInputItem(Util.getStackofAmountFromOreDict("stickCopper", 1))
- .addOutputItem(MetaItem_CraftingComponent.getInstance().getStackFromDamage(Items.CopperHeatPipe.getMetaID())),
- new GTRecipe().setEUPerTick(480).setDuration(120)
- .addInputItem(Util.getStackofAmountFromOreDict("stickSilver", 1))
- .addOutputItem(MetaItem_CraftingComponent.getInstance().getStackFromDamage(Items.SilverHeatPipe.getMetaID())),
- new GTRecipe().setEUPerTick(1920).setDuration(1200)
- .addInputItem(MetaItem_CraftingComponent.getInstance().getStackOfAmountFromDamage(Items.BoronArsenideCrystal.getMetaID(), 4))
- .addOutputItem(MetaItem_CraftingComponent.getInstance().getStackFromDamage(Items.BoronArsenideHeatPipe.getMetaID())),
- new GTRecipe().setEUPerTick(7680).setDuration(1200)
- .addInputItem(MetaItem_CraftingComponent.getInstance().getStackOfAmountFromDamage(Items.IsotopicallyPureDiamondCrystal.getMetaID(), 4))
- .addOutputItem(MetaItem_CraftingComponent.getInstance().getStackFromDamage(Items.DiamondHeatPipe.getMetaID()))
- };
-
-}
diff --git a/src/main/java/reactor/items/HeatVent.java b/src/main/java/reactor/items/HeatVent.java
index e6ad50fb95..670efaeb86 100644
--- a/src/main/java/reactor/items/HeatVent.java
+++ b/src/main/java/reactor/items/HeatVent.java
@@ -1,9 +1,9 @@
package reactor.items;
+import items.MetaItem_CraftingComponent;
+import items.MetaItem_ReactorComponent;
import kekztech.GTRecipe;
import kekztech.Items;
-import kekztech.MetaItem_CraftingComponent;
-import kekztech.MetaItem_ReactorComponent;
import kekztech.Util;
import net.minecraftforge.fluids.FluidRegistry;
diff --git a/src/main/java/reactor/items/NeutronReflector.java b/src/main/java/reactor/items/NeutronReflector.java
index 0066a93917..5766cb41e9 100644
--- a/src/main/java/reactor/items/NeutronReflector.java
+++ b/src/main/java/reactor/items/NeutronReflector.java
@@ -1,8 +1,8 @@
package reactor.items;
+import items.MetaItem_ReactorComponent;
import kekztech.GTRecipe;
import kekztech.Items;
-import kekztech.MetaItem_ReactorComponent;
public class NeutronReflector {
diff --git a/src/main/java/reactor/GTMTE_ModularNuclearReactor.java b/src/main/java/tileentities/GTMTE_ModularNuclearReactor.java
index f7572d589b..c4a54ec472 100644
--- a/src/main/java/reactor/GTMTE_ModularNuclearReactor.java
+++ b/src/main/java/tileentities/GTMTE_ModularNuclearReactor.java
@@ -1,5 +1,6 @@
-package reactor;
+package tileentities;
+import container.GUIContainer_ModularNuclearReactor;
import gregtech.api.GregTech_API;
import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
@@ -38,15 +39,15 @@ public class GTMTE_ModularNuclearReactor extends GT_MetaTileEntity_MultiBlockBas
@Override
public String[] getDescription() {
return new String[] {
- "does things",
+ "I'm not quite finished yet",
"------------------------------------------",
"Dimensions: 5x5x5 (WxHxL)",
"Structure:",
+ " Controller: Front center",
" 80x Radiation Proof Machine Casing (at least)",
- " Controller front center",
- " Dynamo Hatch (ONLY in EU-mode, at least one)",
- " Input Bus, Output Bus (optional)",
- " Input Hatch, Output Hatch (ONLY in Coolant-Mode, at least one each)"
+ " Dynamo Hatch: ONLY in EU-mode, at least one",
+ " Input Bus, Output Bus: Optional but required for automation",
+ " Input Hatch, Output Hatch: ONLY in Coolant-Mode, at least one each"
};
}
@@ -61,6 +62,7 @@ public class GTMTE_ModularNuclearReactor extends GT_MetaTileEntity_MultiBlockBas
: new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[CASING_TEXTURE_ID]};
}
+ // TODO: Opening UI crashes server. Controller isn't craftable right now.
public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GUIContainer_ModularNuclearReactor(aPlayerInventory, aBaseMetaTileEntity, this.getLocalName(),
"MultiblockDisplay.png");
diff --git a/src/main/java/fuelcell/GTMTE_SOFuelCellMK1.java b/src/main/java/tileentities/GTMTE_SOFuelCellMK1.java
index c99f4e7dbc..f5fa228392 100644
--- a/src/main/java/fuelcell/GTMTE_SOFuelCellMK1.java
+++ b/src/main/java/tileentities/GTMTE_SOFuelCellMK1.java
@@ -1,6 +1,12 @@
-package fuelcell;
+package tileentities;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+
+import blocks.Block_YSZUnit;
import gregtech.api.GregTech_API;
+import gregtech.api.enums.Materials;
import gregtech.api.enums.Textures;
import gregtech.api.gui.GT_GUIContainer_MultiMachine;
import gregtech.api.interfaces.ITexture;
@@ -8,17 +14,25 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase;
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 gregtech.api.util.GT_Recipe.GT_Recipe_Map;
import net.minecraft.block.Block;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.item.ItemStack;
import net.minecraftforge.common.util.ForgeDirection;
-import reactor.GUIContainer_ModularNuclearReactor;
+import net.minecraftforge.fluids.FluidStack;
public class GTMTE_SOFuelCellMK1 extends GT_MetaTileEntity_MultiBlockBase {
- final Block CASING = GregTech_API.sBlockCasings4;
- final int CASING_META = 1;
- final int CASING_TEXTURE_ID = 49;
+ private final Block CASING = GregTech_API.sBlockCasings4;
+ private final int CASING_META = 1;
+ private final int CASING_TEXTURE_ID = 49;
+
+ private final int OXYGEN_PER_TICK = 20;
+ private final int EU_PER_TICK = 1024;
+ private final int STEAM_PER_TICK = 900;
public GTMTE_SOFuelCellMK1(int aID, String aName, String aNameRegional) {
super(aID, aName, aNameRegional);
@@ -39,21 +53,22 @@ public class GTMTE_SOFuelCellMK1 extends GT_MetaTileEntity_MultiBlockBase {
public String[] getDescription() {
return new String[] {
"Oxidizes gas fuels to generate electricity without polluting the environment",
- "29,480EU worth of fuel are consumed each second",
- "Outputs 1024EU/t and 18,000L/s Steam",
- "Additionally requires 360L/s Oxygen gas",
+ "Consumes 29,480EU worth of fuel with up to 97% efficiency each second",
+ "Steam production requires the SOFC to heat up completely first",
+ "Outputs " + EU_PER_TICK + "EU/t and " + STEAM_PER_TICK + "L/t Steam",
+ "Additionally requires " + OXYGEN_PER_TICK + "L/t Oxygen gas",
"------------------------------------------",
"Dimensions: 3x3x5 (WxHxL)",
"Structure:",
- " 3x YSZ Ceramic Electrolyte Unit (center 1x1x3)",
+ " Controller: Front center",
+ " Dynamo Hatch: Back center",
+ " 3x YSZ Ceramic Electrolyte Unit: Center 1x1x3",
" 12x Clean Stainless Steel Machine Casing (at least)",
- " Controller front center",
- " Dynamo Hatch back center",
- " Maintenance Hatch, Input Hatches, Output Hatches"
+ " 6x Reinforced Glass: Touching the Electrolyte Units on the horizontal sides",
+ " Maintenance Hatch, Input Hatches, Output Hatches: Instead of any casing"
};
}
- //TODO
@Override
public ITexture[] getTexture(final IGregTechTileEntity aBaseMetaTileEntity, final byte aSide, final byte aFacing,
final byte aColorIndex, final boolean aActive, final boolean aRedstone) {
@@ -65,10 +80,9 @@ public class GTMTE_SOFuelCellMK1 extends GT_MetaTileEntity_MultiBlockBase {
: new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[CASING_TEXTURE_ID]};
}
- //TODO
public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, this.getLocalName(),
- "LargeTurbine.png");
+ "MultiblockDisplay.png");
}
@Override
@@ -78,10 +92,52 @@ public class GTMTE_SOFuelCellMK1 extends GT_MetaTileEntity_MultiBlockBase {
@Override
public boolean checkRecipe(ItemStack stack) {
+ final ArrayList<FluidStack> storedFluids = super.getStoredFluids();
+ Collection<GT_Recipe> recipeList = GT_Recipe_Map.sTurbineFuels.mRecipeList;
+
+ if((storedFluids.size() > 0 && recipeList != null)) {
+
+ final Iterator<FluidStack> fluidsIterator = storedFluids.iterator();
+ while(fluidsIterator.hasNext()) {
+
+ final FluidStack hatchFluid = fluidsIterator.next();
+ final Iterator<GT_Recipe> recipeIterator = recipeList.iterator();
+ while(recipeIterator.hasNext()) {
+
+ final GT_Recipe aFuel = recipeIterator.next();
+ FluidStack liquid;
+ if((liquid = GT_Utility.getFluidForFilledItem(aFuel.getRepresentativeInput(0), true)) != null
+ && hatchFluid.isFluidEqual(liquid)) {
+
+ liquid.amount = EU_PER_TICK / aFuel.mSpecialValue;
+
+ if(super.depleteInput(liquid)) {
+
+ if(!super.depleteInput(Materials.Oxygen.getGas(OXYGEN_PER_TICK))) {
+ super.mEUt = 0;
+ super.mEfficiency = 0;
+ return false;
+ }
+
+ super.mEUt = EU_PER_TICK;
+ super.mProgresstime = 1;
+ super.mMaxProgresstime = 1;
+ super.mEfficiencyIncrease = 5;
+ if(super.mEfficiency == getMaxEfficiency(null)) {
+ super.addOutput(GT_ModHandler.getSteam(STEAM_PER_TICK));
+ }
+ return true;
+ }
+ }
+ }
+ }
+ }
+
+ super.mEUt = 0;
+ super.mEfficiency = 0;
return false;
}
- //TODO
@Override
public boolean checkMachine(IGregTechTileEntity thisController, ItemStack guiSlotItem) {
@@ -119,7 +175,6 @@ public class GTMTE_SOFuelCellMK1 extends GT_MetaTileEntity_MultiBlockBase {
}
}
}
- System.out.println("Front slice status: " +checklist +" / casings left of 12: " +minCasingAmount);
// Middle three slices
for(int X = -1; X <= 1; X++) {
@@ -129,17 +184,15 @@ public class GTMTE_SOFuelCellMK1 extends GT_MetaTileEntity_MultiBlockBase {
final int THIS_Z = ZDIR_BACKFACE + Z;
if(X == 0 && Y == 0) {
if(!thisController.getBlockOffset(THIS_X, 0, THIS_Z).getUnlocalizedName()
- .equals("kekztech_yszceramicelectrolyteunit_block")) {
+ .equals(Block_YSZUnit.getInstance().getUnlocalizedName())) {
checklist = false;
- System.out.println("Expected YSZ Ceramic");
}
continue;
}
if(Y == 0 && (X == -1 || X == 1)) {
- if(!thisController.getBlockOffset(XDIR_BACKFACE, 0, ZDIR_BACKFACE * Z).getUnlocalizedName()
+ if(!thisController.getBlockOffset(THIS_X, 0, THIS_Z).getUnlocalizedName()
.equals("blockAlloyGlass")) {
checklist = false;
- System.out.println("Expected Reinforced Glass");
}
continue;
}
@@ -164,7 +217,6 @@ public class GTMTE_SOFuelCellMK1 extends GT_MetaTileEntity_MultiBlockBase {
}
}
}
- System.out.println("Middle slices status: " +checklist);
// Back slice
for(int X = -1; X <= 1; X++) {
@@ -192,14 +244,13 @@ public class GTMTE_SOFuelCellMK1 extends GT_MetaTileEntity_MultiBlockBase {
}
}
}
- System.out.println("Back slice status: " +checklist);
if(minCasingAmount > 0) {
checklist = false;
}
- if(this.mDynamoHatches.size() < 1) {
- System.out.println("At least one dynamo hatch is required!");
+ if(this.mDynamoHatches.size() != 1) {
+ System.out.println("Exactly one dynamo hatch is required!");
checklist = false;
}
if(this.mInputHatches.size() < 2) {
diff --git a/src/main/java/fuelcell/GTMTE_SOFuelCellMK2.java b/src/main/java/tileentities/GTMTE_SOFuelCellMK2.java
index 030e926867..b3cee6da6a 100644
--- a/src/main/java/fuelcell/GTMTE_SOFuelCellMK2.java
+++ b/src/main/java/tileentities/GTMTE_SOFuelCellMK2.java
@@ -1,6 +1,12 @@
-package fuelcell;
+package tileentities;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+
+import blocks.Block_GDCUnit;
import gregtech.api.GregTech_API;
+import gregtech.api.enums.Materials;
import gregtech.api.enums.Textures;
import gregtech.api.gui.GT_GUIContainer_MultiMachine;
import gregtech.api.interfaces.ITexture;
@@ -8,11 +14,15 @@ import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase;
import gregtech.api.objects.GT_RenderedTexture;
+import gregtech.api.util.GT_Recipe;
+import gregtech.api.util.GT_Utility;
+import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
import net.minecraft.block.Block;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.item.ItemStack;
import net.minecraftforge.common.util.ForgeDirection;
-import reactor.GUIContainer_ModularNuclearReactor;
+import net.minecraftforge.fluids.FluidRegistry;
+import net.minecraftforge.fluids.FluidStack;
public class GTMTE_SOFuelCellMK2 extends GT_MetaTileEntity_MultiBlockBase {
@@ -20,6 +30,10 @@ public class GTMTE_SOFuelCellMK2 extends GT_MetaTileEntity_MultiBlockBase {
final int CASING_META = 0;
final int CASING_TEXTURE_ID = 48;
+ private final int OXYGEN_PER_TICK = 100;
+ private final int EU_PER_TICK = 24576; // 100% Efficiency, 3A IV
+ private final int STEAM_PER_TICK = 4800; // SH Steam (10,800EU/t @ 150% Efficiency)
+
public GTMTE_SOFuelCellMK2(int aID, String aName, String aNameRegional) {
super(aID, aName, aNameRegional);
@@ -39,9 +53,10 @@ public class GTMTE_SOFuelCellMK2 extends GT_MetaTileEntity_MultiBlockBase {
public String[] getDescription() {
return new String[] {
"Oxidizes gas fuels to generate electricity without polluting the environment",
- "375,680EU worth of fuel are consumed each second",
- "Outputs 16,384EU/t and 96,000L/s Steam",
- "Additionally requires 1920L/s Oxygen gas",
+ "Consumes 442,200EU worth of fuel with up to 160% efficiency each second",
+ "Steam production requires the SOFC to heat up completely first",
+ "Outputs " + EU_PER_TICK + "EU/t and " + STEAM_PER_TICK + "L/t Superheated Steam",
+ "Additionally requires " + OXYGEN_PER_TICK + "L/t Oxygen gas",
"------------------------------------------",
"Dimensions: 3x3x5 (WxHxL)",
"Structure:",
@@ -53,7 +68,6 @@ public class GTMTE_SOFuelCellMK2 extends GT_MetaTileEntity_MultiBlockBase {
};
}
- //TODO
@Override
public ITexture[] getTexture(final IGregTechTileEntity aBaseMetaTileEntity, final byte aSide, final byte aFacing,
final byte aColorIndex, final boolean aActive, final boolean aRedstone) {
@@ -65,10 +79,9 @@ public class GTMTE_SOFuelCellMK2 extends GT_MetaTileEntity_MultiBlockBase {
: new ITexture[]{Textures.BlockIcons.CASING_BLOCKS[CASING_TEXTURE_ID]};
}
- //TODO
public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_GUIContainer_MultiMachine(aPlayerInventory, aBaseMetaTileEntity, this.getLocalName(),
- "LargeTurbine.png");
+ "MultiblockDisplay.png");
}
@Override
@@ -78,13 +91,55 @@ public class GTMTE_SOFuelCellMK2 extends GT_MetaTileEntity_MultiBlockBase {
@Override
public boolean checkRecipe(ItemStack stack) {
+ final ArrayList<FluidStack> storedFluids = super.getStoredFluids();
+ Collection<GT_Recipe> recipeList = GT_Recipe_Map.sTurbineFuels.mRecipeList;
+
+ if((storedFluids.size() > 0 && recipeList != null)) {
+
+ final Iterator<FluidStack> fluidsIterator = storedFluids.iterator();
+ while(fluidsIterator.hasNext()) {
+
+ final FluidStack hatchFluid = fluidsIterator.next();
+ final Iterator<GT_Recipe> recipeIterator = recipeList.iterator();
+ while(recipeIterator.hasNext()) {
+
+ final GT_Recipe aFuel = recipeIterator.next();
+ FluidStack liquid;
+ if((liquid = GT_Utility.getFluidForFilledItem(aFuel.getRepresentativeInput(0), true)) != null
+ && hatchFluid.isFluidEqual(liquid)) {
+
+ liquid.amount = EU_PER_TICK / aFuel.mSpecialValue;
+
+ if(super.depleteInput(liquid)) {
+
+ if(!super.depleteInput(Materials.Oxygen.getGas(OXYGEN_PER_TICK))) {
+ super.mEUt = 0;
+ super.mEfficiency = 0;
+ return false;
+ }
+
+ super.mEUt = EU_PER_TICK;
+ super.mProgresstime = 1;
+ super.mMaxProgresstime = 1;
+ super.mEfficiencyIncrease = 20;
+ if(super.mEfficiency == getMaxEfficiency(null)) {
+ super.addOutput(FluidRegistry.getFluidStack("ic2superheatedsteam", STEAM_PER_TICK));
+ }
+ return true;
+ }
+ }
+ }
+ }
+ }
+
+ super.mEUt = 0;
+ super.mEfficiency = 0;
return false;
}
- //TODO
@Override
public boolean checkMachine(IGregTechTileEntity thisController, ItemStack guiSlotItem) {
-
+
final int XDIR_BACKFACE = ForgeDirection.getOrientation(thisController.getBackFacing()).offsetX;
final int ZDIR_BACKFACE = ForgeDirection.getOrientation(thisController.getBackFacing()).offsetZ;
@@ -99,7 +154,7 @@ public class GTMTE_SOFuelCellMK2 extends GT_MetaTileEntity_MultiBlockBase {
}
// Get next TE
final int THIS_X = XDIR_BACKFACE + X;
- final int THIS_Z = ZDIR_BACKFACE + 0;
+ final int THIS_Z = ZDIR_BACKFACE + -1;
IGregTechTileEntity currentTE =
thisController.getIGregTechTileEntityOffset(THIS_X, Y, THIS_Z);// x, y ,z
@@ -123,22 +178,24 @@ public class GTMTE_SOFuelCellMK2 extends GT_MetaTileEntity_MultiBlockBase {
// Middle three slices
for(int X = -1; X <= 1; X++) {
for(int Y = -1; Y <= 1; Y++) {
- for(int Z = 1; Z <= 3; Z++) {
+ for(int Z = 0; Z < 3; Z++) {
+ final int THIS_X = XDIR_BACKFACE + X;
+ final int THIS_Z = ZDIR_BACKFACE + Z;
if(X == 0 && Y == 0) {
- if(!thisController.getBlockOffset(XDIR_BACKFACE, 0, ZDIR_BACKFACE * Z).getUnlocalizedName()
- .equals("kekztech_yszceramicelectrolyteunit_block")) {
+ if(!thisController.getBlockOffset(THIS_X, 0, THIS_Z).getUnlocalizedName()
+ .equals(Block_GDCUnit.getInstance().getUnlocalizedName())) {
checklist = false;
}
+ continue;
}
if(Y == 0 && (X == -1 || X == 1)) {
- if(!thisController.getBlockOffset(XDIR_BACKFACE, 0, ZDIR_BACKFACE * Z).getUnlocalizedName()
+ if(!thisController.getBlockOffset(THIS_X, 0, THIS_Z).getUnlocalizedName()
.equals("blockAlloyGlass")) {
checklist = false;
}
+ continue;
}
// Get next TE
- final int THIS_X = XDIR_BACKFACE + X;
- final int THIS_Z = ZDIR_BACKFACE + Z;
IGregTechTileEntity currentTE =
thisController.getIGregTechTileEntityOffset(THIS_X, Y, THIS_Z);// x, y ,z
@@ -165,7 +222,7 @@ public class GTMTE_SOFuelCellMK2 extends GT_MetaTileEntity_MultiBlockBase {
for(int Y = -1; Y <= 1; Y++) {
// Get next TE
final int THIS_X = XDIR_BACKFACE + X;
- final int THIS_Z = ZDIR_BACKFACE + 0;
+ final int THIS_Z = ZDIR_BACKFACE + 3;
IGregTechTileEntity currentTE =
thisController.getIGregTechTileEntityOffset(THIS_X, Y, THIS_Z);// x, y ,z