aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJordan Byrne <draknyte1@hotmail.com>2018-03-04 17:39:33 +1000
committerJordan Byrne <draknyte1@hotmail.com>2018-03-04 17:39:33 +1000
commit9366db518e680fd3ed618826a08e33bcac573ab8 (patch)
tree7c2e9b35bbc98d4217bddc601ff1956b2a57fa59
parenta06b75f0761681ebf57b142b30a5eb4d3ee0fe49 (diff)
downloadGT5-Unofficial-9366db518e680fd3ed618826a08e33bcac573ab8.tar.gz
GT5-Unofficial-9366db518e680fd3ed618826a08e33bcac573ab8.tar.bz2
GT5-Unofficial-9366db518e680fd3ed618826a08e33bcac573ab8.zip
+ Added dusts that can decay.
+ Added more Cyclotron Recipes. % Tweaked Cyclotron tooltip. % Tweaked creative energy buffer textures.
-rw-r--r--src/Java/gtPlusPlus/core/item/ModItems.java5
-rw-r--r--src/Java/gtPlusPlus/core/item/base/BaseItemTickable.java248
-rw-r--r--src/Java/gtPlusPlus/core/item/materials/DustDecayable.java61
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java36
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java3
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/creative/GregtechMetaCreativeEnergyBuffer.java31
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_Cyclotron.java16
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_IndustrialMultiMachine.java8
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java28
9 files changed, 399 insertions, 37 deletions
diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java
index 8066409baf..a20686cede 100644
--- a/src/Java/gtPlusPlus/core/item/ModItems.java
+++ b/src/Java/gtPlusPlus/core/item/ModItems.java
@@ -41,6 +41,7 @@ import gtPlusPlus.core.item.general.throwables.ItemHydrofluoricAcidPotion;
import gtPlusPlus.core.item.general.throwables.ItemSulfuricAcidPotion;
import gtPlusPlus.core.item.init.ItemsFoods;
import gtPlusPlus.core.item.init.ItemsMultiTools;
+import gtPlusPlus.core.item.materials.DustDecayable;
import gtPlusPlus.core.item.tool.misc.SandstoneHammer;
import gtPlusPlus.core.item.tool.staballoy.*;
import gtPlusPlus.core.lib.CORE;
@@ -182,6 +183,8 @@ public final class ModItems {
public static Item dustCalciumCarbonate;
public static Item dustLi2CO3CaOH2;
public static Item dustLi2BeF4;
+
+ public static Item dustNeptunium238;
public static Item dustAer;
public static Item dustIgnis;
@@ -680,6 +683,8 @@ public final class ModItems {
if ((ItemUtils.getItemStackOfAmountFromOreDictNoBroken("plateDoubleEuropium", 1) == null) && CORE.ConfigSwitches.enableCustom_Pipes){
itemDoublePlateEuropium = new BaseItemPlateDouble(MaterialUtils.generateMaterialFromGtENUM(Materials.Europium));
}
+
+ dustNeptunium238 = new DustDecayable("dustNeptunium238", Utils.rgbtoHexValue(175, 240, 75), 50640, "Result: Plutonium 238 ("+StringUtils.superscript("238Pu")+")", CORE.GT_Tooltip_Radioactive, NUCLIDE.getInstance().PLUTONIUM238.getDust(1).getItem());
itemBoilerChassis = new ItemBoilerChassis();
itemDehydratorCoilWire = new ItemDehydratorCoilWire();
diff --git a/src/Java/gtPlusPlus/core/item/base/BaseItemTickable.java b/src/Java/gtPlusPlus/core/item/base/BaseItemTickable.java
new file mode 100644
index 0000000000..501b881f9f
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/base/BaseItemTickable.java
@@ -0,0 +1,248 @@
+package gtPlusPlus.core.item.base;
+
+import java.util.List;
+
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.EnumRarity;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.EnumChatFormatting;
+import net.minecraft.util.IIcon;
+import net.minecraft.world.World;
+
+import gtPlusPlus.core.creative.AddToCreativeTab;
+import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.util.Utils;
+import gtPlusPlus.core.util.minecraft.NBTUtils;
+
+public class BaseItemTickable extends CoreItem {
+
+ public final String descriptionString;
+ public final String descriptionString2;
+ public final int itemColour;
+ public final int maxTicks;
+ public final boolean twoRenderPasses;
+
+ public IIcon[] mIcon = new IIcon[2];
+
+ public BaseItemTickable(boolean twoPass, final String unlocalName, final int colour, final int maxTicks) {
+ this(twoPass, unlocalName, colour, maxTicks, "");
+ }
+
+ public BaseItemTickable(boolean twoPass, final String unlocalName, final int colour, final int maxTicks, final String Description) {
+ this(twoPass, unlocalName, colour, maxTicks, "", Description);
+ }
+
+ public BaseItemTickable(boolean twoPass, final String unlocalName, final int colour, final int maxTicks, final String Description, final String Description2) {
+ super(unlocalName, AddToCreativeTab.tabMisc, 1, 999999999, Description, EnumRarity.epic, EnumChatFormatting.DARK_RED, true, null);
+ this.itemColour = colour;
+ this.descriptionString = Description;
+ this.descriptionString2 = Description2;
+ this.maxTicks = maxTicks;
+ this.twoRenderPasses = twoPass;
+ //setGregtechItemList();
+ }
+
+ @Override
+ public void onUpdate(final ItemStack iStack, final World world, final Entity entityHolding, final int p_77663_4_, final boolean p_77663_5_) {
+ if (world == null || iStack == null) {
+ return;
+ }
+ tickItemTag(iStack);
+ }
+
+ /*private final boolean setGregtechItemList() {
+ ItemList.Component_LavaFilter.set(this);
+ return ItemList.Component_LavaFilter.get(1) != null ? true : false;
+ }*/
+
+ /**
+ *
+ * Handle Custom Rendering
+ *
+ */
+
+ @Override
+ @SideOnly(Side.CLIENT)
+ public boolean requiresMultipleRenderPasses(){
+ return this.twoRenderPasses;
+ }
+
+ @Override
+ public int getColorFromItemStack(final ItemStack stack, final int renderPass) {
+ if (renderPass == 1 && this.twoRenderPasses){
+ return Utils.rgbtoHexValue(255, 255, 255);
+ }
+ return this.itemColour;
+ }
+
+ @Override
+ public IIcon getIconFromDamageForRenderPass(final int damage, final int pass) {
+ if (this.twoRenderPasses) {
+ if(pass == 0) {
+ return this.mIcon[0];
+ }
+ return this.mIcon[1];
+ }
+ return this.mIcon[0];
+ }
+
+ @Override
+ public void registerIcons(final IIconRegister i) {
+
+ if (this.twoRenderPasses){
+ this.mIcon[0] = i.registerIcon(CORE.MODID + ":" + this.getUnlocalizedName());
+ this.mIcon[1] = i.registerIcon(CORE.MODID + ":" + this.getUnlocalizedName() + "_OVERLAY");
+ }
+ else {
+ this.mIcon[0] = i.registerIcon(CORE.MODID + ":" + this.getUnlocalizedName());
+ //this.overlay = i.registerIcon(getCorrectTextures() + "_OVERLAY");
+ }
+ }
+
+
+ private boolean createNBT(ItemStack rStack){
+ final NBTTagCompound tagMain = new NBTTagCompound();
+ final NBTTagCompound tagNBT = new NBTTagCompound();
+ tagNBT.setLong("Tick", 0);
+ tagNBT.setLong("maxTick", this.maxTicks);
+ tagNBT.setBoolean("isActive", true);
+ tagMain.setTag("TickableItem", tagNBT);
+ rStack.setTagCompound(tagMain);
+ return true;
+ }
+
+ public final long getFilterDamage(final ItemStack aStack) {
+ NBTTagCompound aNBT = aStack.getTagCompound();
+ if (aNBT != null) {
+ aNBT = aNBT.getCompoundTag("TickableItem");
+ if (aNBT != null) {
+ return aNBT.getLong("Tick");
+ }
+ }
+ else {
+ createNBT(aStack);
+ }
+ return 0L;
+ }
+
+ public final boolean setFilterDamage(final ItemStack aStack, final long aDamage) {
+ NBTTagCompound aNBT = aStack.getTagCompound();
+ if (aNBT != null) {
+ aNBT = aNBT.getCompoundTag("TickableItem");
+ if (aNBT != null) {
+ aNBT.setLong("Tick", aDamage);
+ return true;
+ }
+ }
+ else {
+ createNBT(aStack);
+ }
+ return false;
+ }
+
+ public final boolean getIsActive(final ItemStack aStack) {
+ NBTTagCompound aNBT = aStack.getTagCompound();
+ if (aNBT != null) {
+ aNBT = aNBT.getCompoundTag("TickableItem");
+ if (aNBT != null) {
+ return aNBT.getBoolean("isActive");
+ }
+ }
+ else {
+ createNBT(aStack);
+ }
+ return true;
+ }
+
+ public final boolean setIsActive(final ItemStack aStack, final boolean active) {
+ NBTTagCompound aNBT = aStack.getTagCompound();
+ if (aNBT != null) {
+ aNBT = aNBT.getCompoundTag("TickableItem");
+ if (aNBT != null) {
+ aNBT.setBoolean("isActive", active);
+ return true;
+ }
+ }
+ else {
+ createNBT(aStack);
+ }
+ return false;
+ }
+
+ public final boolean tickItemTag(ItemStack aStack) {
+ NBTTagCompound aNBT = aStack.getTagCompound();
+ if (aNBT != null) {
+ //Done Ticking
+ if (maxTicks-getFilterDamage(aStack) <= 0) {
+ setIsActive(aStack, false);
+ }
+ if (getIsActive(aStack)) {
+ aNBT = aNBT.getCompoundTag("TickableItem");
+ if (aNBT != null) {
+ aNBT.setLong("Tick", getFilterDamage(aStack)+1);
+ return true;
+ }
+ }
+ }
+ else {
+ createNBT(aStack);
+ }
+ return false;
+ }
+
+ @Override
+ public double getDurabilityForDisplay(ItemStack stack) {
+ if (stack.getTagCompound() == null){
+ createNBT(stack);
+ }
+ double currentDamage = getFilterDamage(stack);
+ double durabilitypercent = currentDamage / maxTicks;
+ return durabilitypercent;
+ }
+
+ @SuppressWarnings("unchecked")
+ @Override
+ public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) {
+ EnumChatFormatting durability = EnumChatFormatting.GRAY;
+ if (maxTicks-getFilterDamage(stack) > (maxTicks*0.8)){
+ durability = EnumChatFormatting.GRAY;
+ }
+ else if (maxTicks-getFilterDamage(stack) > (maxTicks*0.6)){
+ durability = EnumChatFormatting.GREEN;
+ }
+ else if (maxTicks-getFilterDamage(stack) > (maxTicks*0.4)){
+ durability = EnumChatFormatting.YELLOW;
+ }
+ else if (maxTicks-getFilterDamage(stack) > (maxTicks*0.2)){
+ durability = EnumChatFormatting.GOLD;
+ }
+ else if (maxTicks-getFilterDamage(stack) > 0){
+ durability = EnumChatFormatting.RED;
+ }
+ list.add(durability+""+((maxTicks-getFilterDamage(stack))/20)+EnumChatFormatting.GRAY+" seconds until decay");
+
+ if ((this.descriptionString != "") || !this.descriptionString.equals("")){
+ list.add(EnumChatFormatting.GRAY+this.descriptionString);
+ }
+ if ((this.descriptionString2 != "") || !this.descriptionString2.equals("")){
+ list.add(EnumChatFormatting.GRAY+this.descriptionString2);
+ }
+
+ //super.addInformation(stack, player, list, bool);
+ }
+
+ @Override
+ public boolean showDurabilityBar(ItemStack stack) {
+ return true;
+ }
+
+
+}
+
+
diff --git a/src/Java/gtPlusPlus/core/item/materials/DustDecayable.java b/src/Java/gtPlusPlus/core/item/materials/DustDecayable.java
new file mode 100644
index 0000000000..b7461a8558
--- /dev/null
+++ b/src/Java/gtPlusPlus/core/item/materials/DustDecayable.java
@@ -0,0 +1,61 @@
+package gtPlusPlus.core.item.materials;
+
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.entity.Entity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+import net.minecraft.world.World;
+
+import gregtech.api.util.GT_OreDictUnificator;
+
+import gtPlusPlus.core.item.base.BaseItemTickable;
+import gtPlusPlus.core.item.base.ore.BaseOreComponent.ComponentTypes;
+import gtPlusPlus.core.util.minecraft.ItemUtils;
+
+public class DustDecayable extends BaseItemTickable {
+
+ private final Item turnsIntoItem;
+
+ public DustDecayable(String unlocal, int colour, int maxTicks, String desc1, String desc2, Item turnsInto) {
+ super(true, unlocal, colour, maxTicks, desc1, desc2);
+ this.turnsIntoItem = turnsInto;
+ GT_OreDictUnificator.registerOre(unlocal, ItemUtils.getSimpleStack(this));
+ }
+
+ @Override
+ public void registerIcons(IIconRegister reg) {
+ String gt = "gregtech" + ":" + "materialicons/"+"METALLIC"+"/" + ComponentTypes.DUSTIMPURE.getComponent();
+ this.mIcon[0] = reg.registerIcon(gt);
+ String gt2 = "gregtech" + ":" + "materialicons/"+"METALLIC"+"/" + ComponentTypes.DUSTIMPURE.getComponent()+"_Overlay";
+ this.mIcon[1] = reg.registerIcon(gt2);
+ }
+
+ @Override
+ public void onUpdate(final ItemStack iStack, final World world, final Entity entityHolding, final int p_77663_4_, final boolean p_77663_5_) {
+ if (world == null || iStack == null) {
+ return;
+ }
+ if (!tickItemTag(iStack)) {
+ if (entityHolding instanceof EntityPlayer){
+ ItemStack replacement = ItemUtils.getSimpleStack(turnsIntoItem);
+ //Logger.INFO("Replacing "+iStack.getDisplayName()+" with "+replacement.getDisplayName()+".");
+ final ItemStack tempTransform = replacement;
+ if (iStack.stackSize == 64){
+ tempTransform.stackSize=64;
+ ((EntityPlayer) entityHolding).inventory.addItemStackToInventory((tempTransform));
+ for (int l=0;l<64;l++){
+ ((EntityPlayer) entityHolding).inventory.consumeInventoryItem(this);
+ }
+
+ }
+ else {
+ tempTransform.stackSize=1;
+ ((EntityPlayer) entityHolding).inventory.addItemStackToInventory((tempTransform));
+ ((EntityPlayer) entityHolding).inventory.consumeInventoryItem(this);
+ }
+ }
+ }
+ }
+
+}
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
index 96f409bd38..814925a5ce 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_GREGTECH.java
@@ -13,6 +13,7 @@ import gtPlusPlus.core.item.ModItems;
import gtPlusPlus.core.lib.CORE;
import gtPlusPlus.core.lib.LoadedMods;
import gtPlusPlus.core.material.ALLOY;
+import gtPlusPlus.core.material.ELEMENT;
import gtPlusPlus.core.material.nuclear.FLUORIDES;
import gtPlusPlus.core.material.nuclear.NUCLIDE;
import gtPlusPlus.core.recipe.common.CI;
@@ -1236,9 +1237,44 @@ public class RECIPES_GREGTECH {
}
private static void cyclotronRecipes() {
+
+ //Polonium
CORE.RA.addCyclotronRecipe(CI.getNumberedCircuit(0), FluidUtils.getFluidStack("molten.bismuth", 1),
new ItemStack[] { GregtechItemList.Pellet_RTG_PO210.get(1) }, null, new int[] { 100 }, 20 * 300, 2040,
500 * 20);
+
+ //Americium
+ CORE.RA.addCyclotronRecipe(CI.getNumberedCircuit(0), FluidUtils.getFluidStack("molten.americium", 1),
+ new ItemStack[] { GregtechItemList.Pellet_RTG_AM241.get(8) }, null, new int[] { 7500 }, 20 * 300, 1020,
+ 500 * 20); //PO Special Value
+
+ //Strontium u235
+ CORE.RA.addCyclotronRecipe(CI.getNumberedCircuit(0), FluidUtils.getFluidStack("molten.uranium235", 10),
+ new ItemStack[] { GregtechItemList.Pellet_RTG_SR90.get(1) }, null, new int[] { 570 }, 20 * 300, 1020,
+ 500 * 20); //PO Special Value
+
+ //Strontium u233
+ CORE.RA.addCyclotronRecipe(CI.getNumberedCircuit(0), FluidUtils.getFluidStack("molten.uranium233", 10),
+ new ItemStack[] { GregtechItemList.Pellet_RTG_SR90.get(1) }, null, new int[] { 660 }, 20 * 300, 1020,
+ 500 * 20); //PO Special Value
+
+ //Strontium pu239
+ CORE.RA.addCyclotronRecipe(CI.getNumberedCircuit(0), FluidUtils.getFluidStack("molten.plutonium239", 10),
+ new ItemStack[] { GregtechItemList.Pellet_RTG_SR90.get(1) }, null, new int[] { 220 }, 20 * 300, 1020,
+ 500 * 20); //PO Special Value
+
+ //Plutonium
+ CORE.RA.addCyclotronRecipe(CI.getNumberedCircuit(0), FluidUtils.getFluidStack("molten.plutonium238", 1),
+ new ItemStack[] { GregtechItemList.Pellet_RTG_PU238.get(2) }, null, new int[] { 780 }, 20 * 300, 1020,
+ 500 * 20); //PO Special Value
+
+
+ //Neptunium
+ CORE.RA.addCyclotronRecipe(new ItemStack[] {ELEMENT.getInstance().URANIUM238.getDust(1) }, FluidUtils.getFluidStack("deuterium", 400),
+ ItemUtils.getSimpleStack(ModItems.dustNeptunium238), null, new int[] { 500 }, 20 * 5, 500,
+ 500 * 20); //PO Special Value
+
+
}
private static void sifterRecipes() {
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java b/src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java
index 070788ee2b..249141c7f8 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/api/interfaces/internal/IGregtech_RecipeAdder.java
@@ -122,6 +122,9 @@ public interface IGregtech_RecipeAdder {
public boolean addCyclotronRecipe(ItemStack aInput, FluidStack aFluidInput, ItemStack[] aOutputs,
FluidStack aFluidOutput, int[] aChances, int aDuration, int aEUt, int aSpecialValue);
+ boolean addCyclotronRecipe(ItemStack[] aInputs, FluidStack aFluidInput, ItemStack aOutput, FluidStack aFluidOutput,
+ int[] aChances, int aDuration, int aEUt, int aSpecialValue);
+
public boolean addMixerRecipe(ItemStack aInput1, ItemStack aInput2, ItemStack aInput3, ItemStack aInput4,
FluidStack aFluidInput, FluidStack aFluidOutput, ItemStack aOutput1, ItemStack aOutput2, ItemStack aOutput3, ItemStack aOutput4, int aDuration, int aEUt);
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/creative/GregtechMetaCreativeEnergyBuffer.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/creative/GregtechMetaCreativeEnergyBuffer.java
index a04fa3a1ef..46cb903e0b 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/creative/GregtechMetaCreativeEnergyBuffer.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/generators/creative/GregtechMetaCreativeEnergyBuffer.java
@@ -59,8 +59,8 @@ public class GregtechMetaCreativeEnergyBuffer extends GregtechMetaEnergyBuffer {
*/
@Override
public ITexture[][][] getTextureSet(final ITexture[] aTextures) {
- CustomIcon g = TexturesGtBlock.Casing_Machine_Dimensional_Adv;
- CustomIcon h = TexturesGtBlock.Casing_Machine_Dimensional;
+ CustomIcon g = TexturesGtBlock.Casing_Material_RedSteel;
+ CustomIcon h = TexturesGtBlock.Casing_Material_Grisium;
CustomIcon k;
boolean j = MathUtils.isNumberEven(this.mTier);
final ITexture[][][] rTextures = new ITexture[2][17][];
@@ -187,30 +187,35 @@ public class GregtechMetaCreativeEnergyBuffer extends GregtechMetaEnergyBuffer {
else {
this.mTier = 0;
}
- /*this.markDirty();
+ this.markDirty();
try {
- if (this.getBaseMetaTileEntity().isClientSide()) {
- Field field = ReflectionUtils.getField(this.getClass(), "mTextures");
- field.setAccessible(true);
- Field modifiersField = Field.class.getDeclaredField("modifiers");
- modifiersField.setAccessible(true);
- modifiersField.setInt(field, field.getModifiers() & ~Modifier.FINAL);
- ITexture[][][] V = getTextureSet(null);
- if (V != null) {
+ Field field = ReflectionUtils.getField(this.getClass(), "mTextures");
+ field.setAccessible(true);
+ Field modifiersField = Field.class.getDeclaredField("modifiers");
+ modifiersField.setAccessible(true);
+ modifiersField.setInt(field, field.getModifiers() & ~Modifier.FINAL);
+ ITexture[][][] V = getTextureSet(null);
+ if (V != null) {
+ Logger.REFLECTION("Got Valid Textures.");
+ if (this.getBaseMetaTileEntity().isClientSide()) {
+ Logger.REFLECTION("Clientside Call.");
Logger.REFLECTION("Refreshing Textures on buffer.");
field.set(this, V);
Logger.REFLECTION("Refreshed Textures on buffer.");
}
else {
- Logger.REFLECTION("Bad mTextures setter.");
+ Logger.REFLECTION("Serverside Call.");
}
}
+ else {
+ Logger.REFLECTION("Bad mTextures setter.");
+ }
}
catch (Throwable t) {
//Bad refresh.
t.printStackTrace();
Logger.REFLECTION("Bad mTextures setter.");
- }*/
+ }
PlayerUtils.messagePlayer(aPlayer, "Now running at "+GT_Values.VOLTAGE_NAMES[this.mTier]+". ["+MathUtils.isNumberEven(this.mTier)+"]");
super.onScrewdriverRightClick(aSide, aPlayer, aX, aY, aZ);
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_Cyclotron.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_Cyclotron.java
index b03c684f3c..6b6d203e1c 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_Cyclotron.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_Cyclotron.java
@@ -91,7 +91,7 @@ public class GregtechMetaTileEntity_Cyclotron extends GregtechMeta_MultiBlockBas
@Override
public boolean checkMachine(IGregTechTileEntity aBaseMetaTileEntity, ItemStack aStack) {
- //Utils.LOG_INFO("Checking form of Cyclotron.");
+ Logger.INFO("Checking form of Cyclotron.");
int xCenter = getBaseMetaTileEntity().getXCoord() + ForgeDirection.getOrientation(getBaseMetaTileEntity().getFrontFacing()).offsetX * 5;
int yCenter = getBaseMetaTileEntity().getYCoord();
int zCenter = getBaseMetaTileEntity().getZCoord() + ForgeDirection.getOrientation(getBaseMetaTileEntity().getFrontFacing()).offsetZ * 5;
@@ -128,21 +128,21 @@ public class GregtechMetaTileEntity_Cyclotron extends GregtechMeta_MultiBlockBas
int mEnergyHatches_sS = this.mEnergyHatches.size();
for (int i = 0; i < mEnergyHatches_sS; i++) {
if (this.mEnergyHatches.get(i).mTier < tier()){
- // Utils.LOG_INFO("bad energy hatch");
+ Logger.INFO("bad energy hatch");
return false;
}
}
int mOutputHatches_sS = this.mOutputBusses.size();
for (int i = 0; i < mOutputHatches_sS; i++) {
if (this.mOutputBusses.get(i).mTier < tier()){
- // Utils.LOG_INFO("bad output hatch");
+ Logger.INFO("bad output hatch");
return false;
}
}
int mInputHatches_sS = this.mInputHatches.size();
for (int i = 0; i < mInputHatches_sS; i++) {
if (this.mInputHatches.get(i).mTier < tier()){
- // Utils.LOG_INFO("bad input hatch");
+ Logger.INFO("bad input hatch");
return false;
}
}
@@ -152,11 +152,11 @@ public class GregtechMetaTileEntity_Cyclotron extends GregtechMeta_MultiBlockBas
mHardHammer = true;
mSolderingTool = true;
mCrowbar = true;
- //Utils.LOG_INFO("Built Cyclotron.");
+ Logger.INFO("Built Cyclotron.");
turnCasingActive(true);
return true;
}
- //Utils.LOG_INFO("Failed building Cyclotron.");
+ Logger.INFO("Failed building Cyclotron.");
return false;
}
@@ -250,7 +250,7 @@ public class GregtechMetaTileEntity_Cyclotron extends GregtechMeta_MultiBlockBas
"------------------------------------------------------------",
"Consists of the same layout as a Fusion Reactor",
"Cyclotron Machine Casings around Cyclotron Coil Blocks",
- "2-16 Input Busses",
+ "2-16 Input Hatches",
"1-16 Output Busses",
"1-16 Energy Hatches",
"All Hatches must be IV or better",
@@ -289,7 +289,7 @@ public class GregtechMetaTileEntity_Cyclotron extends GregtechMeta_MultiBlockBas
@Override
public boolean checkRecipe(ItemStack aStack) {
- //Utils.LOG_INFO("Recipe Check.");
+ //Logger.INFO("Recipe Check.");
ArrayList<ItemStack> tItemList = getStoredInputs();
ItemStack[] tItemInputs = tItemList.toArray(new ItemStack[tItemList.size()]);
ArrayList<FluidStack> tInputList = getStoredFluids();
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_IndustrialMultiMachine.java b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_IndustrialMultiMachine.java
index 993ae6d131..ca0604e6ef 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_IndustrialMultiMachine.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/tileentities/machines/multi/GregtechMetaTileEntity_IndustrialMultiMachine.java
@@ -106,13 +106,13 @@ extends GregtechMeta_MultiBlockBase {
@Override
public boolean checkRecipe(final ItemStack aStack) {
ArrayList<FluidStack> tFluids = getStoredFluids();
- Logger.INFO("1");
+ //Logger.INFO("1");
for (GT_MetaTileEntity_Hatch_InputBus tBus : mInputBusses) {
ArrayList<ItemStack> tBusItems = new ArrayList<ItemStack>();
tBus.mRecipeMap = getRecipeMap();
- Logger.INFO("2");
+ //Logger.INFO("2");
if (isValidMetaTileEntity(tBus)) {
- Logger.INFO("3");
+ //Logger.INFO("3");
for (int i = tBus.getBaseMetaTileEntity().getSizeInventory() - 1; i >= 0; i--) {
if (tBus.getBaseMetaTileEntity().getStackInSlot(i) != null)
tBusItems.add(tBus.getBaseMetaTileEntity().getStackInSlot(i));
@@ -123,7 +123,7 @@ extends GregtechMeta_MultiBlockBase {
FluidStack[] properArray;
properArray = ((tempArray != null && tempArray.length > 0) ? (FluidStack[]) tempArray : new FluidStack[] {});
- Logger.INFO("4");
+ //Logger.INFO("4");
if (checkRecipeGeneric(tBusItems.toArray(new ItemStack[]{}), properArray,
(2*Utils.calculateVoltageTier(this.getMaxInputVoltage())), 80, 250, 10000)) return true;
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java b/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java
index cb82f679b7..49b9195bec 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/recipes/GregtechRecipeAdder.java
@@ -438,22 +438,26 @@ public class GregtechRecipeAdder implements IGregtech_RecipeAdder {
}
@Override
- public boolean addCyclotronRecipe(ItemStack aInput, FluidStack aFluidInput, ItemStack[] aOutputs,
+ public boolean addCyclotronRecipe(ItemStack aInputs, FluidStack aFluidInput, ItemStack[] aOutputs,
FluidStack aFluidOutput, int[] aChances, int aDuration, int aEUt, int aSpecialValue) {
- if (aOutputs == null) {
+ return addCyclotronRecipe(new ItemStack[] {aInputs}, aFluidInput, aOutputs[0], aFluidOutput, aChances, aDuration, aEUt, aSpecialValue);
+ }
+
+ @Override
+ public boolean addCyclotronRecipe(ItemStack[] aInputs, FluidStack aFluidInput, ItemStack aOutput,
+ FluidStack aFluidOutput, int[] aChances, int aDuration, int aEUt, int aSpecialValue) {
+ if (aOutput == null) {
return false;
}
- for (ItemStack tStack : aOutputs) {
- if (tStack != null) {
- if ((aDuration = GregTech_API.sRecipeFile.get("cyclotron", aInput, aDuration)) <= 0) {
- return false;
- }
- Recipe_GT.Gregtech_Recipe_Map.sCyclotronRecipes.addRecipe(true, new ItemStack[] { aInput }, aOutputs,
- null, aChances, new FluidStack[] { aFluidInput }, new FluidStack[] { aFluidOutput },
- Math.max(1, aDuration), Math.max(1, aEUt), aSpecialValue);
- return true;
- }
+ if ((aDuration = GregTech_API.sRecipeFile.get("cyclotron", aOutput, aDuration)) <= 0) {
+ return false;
}
+ if (Recipe_GT.Gregtech_Recipe_Map.sCyclotronRecipes.addRecipe(true, aInputs, new ItemStack[] { aOutput },
+ null, aChances, new FluidStack[] { aFluidInput }, new FluidStack[] { aFluidOutput },
+ Math.max(1, aDuration), Math.max(1, aEUt), aSpecialValue) != null) {
+ return true;
+ }
+
return false;
}