diff options
14 files changed, 535 insertions, 6 deletions
diff --git a/src/main/java/GoodGenerator/Blocks/TEs/YottaFluidTank.java b/src/main/java/GoodGenerator/Blocks/TEs/YottaFluidTank.java index 2d37997af4..c6605da9fe 100644 --- a/src/main/java/GoodGenerator/Blocks/TEs/YottaFluidTank.java +++ b/src/main/java/GoodGenerator/Blocks/TEs/YottaFluidTank.java @@ -3,6 +3,7 @@ package GoodGenerator.Blocks.TEs; import GoodGenerator.Client.GUI.YOTTankGUIClient; import GoodGenerator.Common.Container.YOTTankGUIContainer; import GoodGenerator.Loader.Loaders; +import GoodGenerator.util.CharExchanger; import GoodGenerator.util.DescTextLocalization; import com.github.bartimaeusnek.bartworks.common.loaders.ItemRegistry; import com.github.technus.tectech.thing.metaTileEntity.multi.base.GT_MetaTileEntity_MultiblockBase_EM; @@ -25,6 +26,7 @@ import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.StatCollector; import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; import org.lwjgl.input.Keyboard; @@ -279,11 +281,20 @@ public class YottaFluidTank extends GT_MetaTileEntity_MultiblockBase_EM implemen } @Override + public String[] getInfoData() { + return new String[] { + StatCollector.translateToLocal("scanner.info.YOTTank.0") + " " + EnumChatFormatting.GREEN + CharExchanger.formatNumber(getCap()) + EnumChatFormatting.RESET + " L", + StatCollector.translateToLocal("scanner.info.YOTTank.1") + " " + EnumChatFormatting.YELLOW + CharExchanger.formatNumber(getFluidName()) + EnumChatFormatting.RESET, + StatCollector.translateToLocal("scanner.info.YOTTank.2") + " " + EnumChatFormatting.BLUE + CharExchanger.formatNumber(getStored()) + EnumChatFormatting.RESET + " L", + }; + } + + @Override public String[] getDescription() { final GT_Multiblock_Tooltip_Builder tt = new GT_Multiblock_Tooltip_Builder(); tt.addMachineType("Fluid Tank") .addInfo("Controller block for the YOTTank.") - .addInfo("The max output speed is decided by the amount of stored liquid and the capacity of output hatch.") + .addInfo("The max output speed is decided by the amount of stored liquid and the output hatch's capacity.") .addInfo("The max fluid cell tier is limited by the glass tier.") .addInfo("HV glass for T1, EV glass for T2, IV glass for T3. . .") .addInfo("The max height of the cell blocks is 15.") diff --git a/src/main/java/GoodGenerator/Items/MyItemBlocks.java b/src/main/java/GoodGenerator/Items/MyItemBlocks.java index 1ecee2031f..c4a71f6834 100644 --- a/src/main/java/GoodGenerator/Items/MyItemBlocks.java +++ b/src/main/java/GoodGenerator/Items/MyItemBlocks.java @@ -1,6 +1,7 @@ package GoodGenerator.Items; import GoodGenerator.Blocks.RegularBlock.TEBlock; +import GoodGenerator.util.CharExchanger; import GoodGenerator.util.DescTextLocalization; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -76,7 +77,7 @@ public class MyItemBlocks extends ItemBlock { cap.append(" 1000000"); for (int i = 0; i < p_77624_1_.getItemDamage(); i++) cap.append("00"); cap.append(" L"); - p_77624_3_.add(DescTextLocalization.addText("YOTTankCell.tooltip", 1)[0] + cap.toString()); + p_77624_3_.add(DescTextLocalization.addText("YOTTankCell.tooltip", 1)[0] + CharExchanger.formatNumber(cap.toString())); } } } diff --git a/src/main/java/GoodGenerator/Items/MyItems.java b/src/main/java/GoodGenerator/Items/MyItems.java index bfd1d5b661..a795ea00a1 100644 --- a/src/main/java/GoodGenerator/Items/MyItems.java +++ b/src/main/java/GoodGenerator/Items/MyItems.java @@ -8,6 +8,7 @@ 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 java.util.ArrayList; import java.util.Arrays; @@ -15,13 +16,26 @@ import java.util.List; public class MyItems extends Item { - private final String tex; + @SideOnly(Side.CLIENT) + protected IIcon[] texture; + private String tex; + private String[] textureNames; + private String Name; private List<String> tooltips = new ArrayList<>(); public MyItems(String name, CreativeTabs Tab){ this.setUnlocalizedName(name); this.setCreativeTab(Tab); this.tex = name; + this.Name = name; + } + + public MyItems(String name, CreativeTabs Tab, String[] textures){ + this.setUnlocalizedName(name); + this.setCreativeTab(Tab); + this.setHasSubtypes(true); + this.textureNames = textures; + this.Name = name; } public MyItems(String name, String tooltip, CreativeTabs Tab) { @@ -29,6 +43,7 @@ public class MyItems extends Item { this.setCreativeTab(Tab); this.tex = name; this.tooltips.add(tooltip); + this.Name = name; } public MyItems(String name, String[] tooltip, CreativeTabs Tab) { @@ -36,11 +51,55 @@ public class MyItems extends Item { this.setCreativeTab(Tab); this.tex = name; this.tooltips = Arrays.asList(tooltip); + this.Name = name; + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIconFromDamage(int meta) { + if (this.texture == null || this.texture.length < 1) return this.itemIcon; + else return meta < this.texture.length ? this.texture[meta] : this.texture[0]; + } + + @Override + public int getMetadata(int aMeta) { + return aMeta; } + @Override @SideOnly(Side.CLIENT) public void registerIcons(IIconRegister iconRegister) { - this.itemIcon = iconRegister.registerIcon(GoodGenerator.MOD_ID + ":" + this.tex); + if (this.textureNames == null || this.textureNames.length < 1) { + this.itemIcon = iconRegister.registerIcon(GoodGenerator.MOD_ID + ":" + this.tex); + } + else { + this.texture = new IIcon[this.textureNames.length]; + for (int i = 0; i < this.textureNames.length; ++i) { + this.texture[i] = iconRegister.registerIcon(this.textureNames[i]); + } + } + } + + @Override + public String getUnlocalizedName(ItemStack p_77667_1_) { + if (this.texture == null || this.texture.length < 1){ + return "item." + this.Name; + } + else { + return "item." + this.Name + "." + p_77667_1_.getItemDamage(); + } + } + + @Override + @SideOnly(Side.CLIENT) + @SuppressWarnings("unchecked") + public void getSubItems(Item item, CreativeTabs tab, List list) { + if (this.texture == null || this.texture.length < 1) list.add(new ItemStack(item, 1, 0)); + else { + for (int i = 0; i < this.texture.length; ++i) { + list.add(new ItemStack(item, 1, i)); + } + } } @SideOnly(Side.CLIENT) diff --git a/src/main/java/GoodGenerator/Loader/Loaders.java b/src/main/java/GoodGenerator/Loader/Loaders.java index a40e997218..45a69c3b2d 100644 --- a/src/main/java/GoodGenerator/Loader/Loaders.java +++ b/src/main/java/GoodGenerator/Loader/Loaders.java @@ -57,6 +57,7 @@ public class Loaders { public static final Item enrichedNaquadahMass = new MyItems("enrichedNaquadahMass", addText("enrichedNaquadahMass.tooltip", 1), GoodGenerator.GG); public static final Item naquadriaMass = new MyItems("naquadriaMass", addText("naquadriaMass.tooltip", 1), GoodGenerator.GG); public static final Item advancedFuelRod = new MyItems("advancedFuelRod", GoodGenerator.GG); + public static final Item fluidCore = new MyItems("fluidCore", GoodGenerator.GG, new String[]{GoodGenerator.MOD_ID+":fluidCore/1", GoodGenerator.MOD_ID+":fluidCore/2", GoodGenerator.MOD_ID+":fluidCore/3", GoodGenerator.MOD_ID+":fluidCore/4", GoodGenerator.MOD_ID+":fluidCore/5", GoodGenerator.MOD_ID+":fluidCore/6"}); public static final Block MAR_Casing = new Casing("MAR_Casing", new String[]{GoodGenerator.MOD_ID+":MAR_Casing"}); public static final Block FRF_Casings = new Casing("FRF_Casing", new String[]{"gregtech:iconsets/MACHINE_CASING_MINING_BLACKPLUTONIUM"}); @@ -137,6 +138,7 @@ public class Loaders { GameRegistry.registerItem(enrichedNaquadahMass, "enrichedNaquadahMass", GoodGenerator.MOD_ID); GameRegistry.registerItem(naquadriaMass, "naquadriaMass", GoodGenerator.MOD_ID); GameRegistry.registerItem(advancedFuelRod, "advancedFuelRod", GoodGenerator.MOD_ID); + GameRegistry.registerItem(fluidCore, "fluidCore", GoodGenerator.MOD_ID); } public static void compactMod() { diff --git a/src/main/java/GoodGenerator/Loader/RecipeLoader_02.java b/src/main/java/GoodGenerator/Loader/RecipeLoader_02.java index 3a11cddc05..9588a0abdb 100644 --- a/src/main/java/GoodGenerator/Loader/RecipeLoader_02.java +++ b/src/main/java/GoodGenerator/Loader/RecipeLoader_02.java @@ -5,11 +5,15 @@ import GoodGenerator.util.CrackRecipeAdder; import GoodGenerator.util.ItemRefer; import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader; import gregtech.api.enums.GT_Values; +import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; import net.minecraft.item.ItemStack; +import net.minecraftforge.fluids.FluidRegistry; +import net.minecraftforge.fluids.FluidStack; public class RecipeLoader_02 { @@ -137,6 +141,404 @@ public class RecipeLoader_02 { 220, 1920 ); + + GT_ModHandler.addCraftingRecipe( + ItemRefer.YOTTank_Casing.get(1), + GT_ModHandler.RecipeBits.DISMANTLEABLE, + new Object[]{ + "BPB","FOF","BPB", + 'B', GT_OreDictUnificator.get(OrePrefixes.plate, Materials.BlackSteel,1), + 'P', GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.StainlessSteel,1), + 'F', GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Polytetrafluoroethylene,1), + 'O', GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlackSteel,1), + } + ); + + GT_ModHandler.addCraftingRecipe( + ItemRefer.YOTTank.get(1), + GT_ModHandler.RecipeBits.DISMANTLEABLE, + new Object[]{ + "SPS","ECE","SLS", + 'S', GT_OreDictUnificator.get(OrePrefixes.screw, Materials.BlueSteel,1), + 'P', ItemList.Cover_Screen.get(1), + 'E', "circuitData", + 'L', GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Enderium,1), + 'C', ItemRefer.YOTTank_Casing.get(1) + } + ); + + GT_Values.RA.addAssemblerRecipe( + new ItemStack[]{ + ItemList.Large_Fluid_Cell_Steel.get(12L), + GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.Tin,4), + GT_Utility.getIntegratedCircuit(1) + }, + Materials.Plastic.getMolten(144), + ItemRefer.Fluid_Storage_Core_T1.get(1), + 200, + 480 + ); + + GT_Values.RA.addAssemblerRecipe( + new ItemStack[]{ + ItemList.Large_Fluid_Cell_Aluminium.get(3L), + GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.Tin,4), + GT_Utility.getIntegratedCircuit(1) + }, + Materials.Plastic.getMolten(144), + ItemRefer.Fluid_Storage_Core_T1.get(1), + 200, + 480 + ); + + GT_Values.RA.addAssemblerRecipe( + new ItemStack[]{ + ItemList.Large_Fluid_Cell_StainlessSteel.get(2L), + GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.Tin,4), + GT_Utility.getIntegratedCircuit(1) + }, + Materials.Plastic.getMolten(144), + ItemRefer.Fluid_Storage_Core_T1.get(1), + 200, + 480 + ); + + GT_Values.RA.addAssemblerRecipe( + new ItemStack[]{ + ItemList.Large_Fluid_Cell_Titanium.get(64L), + GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.Titanium,8), + GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.BlackSteel,4), + GT_Utility.getIntegratedCircuit(2) + }, + Materials.Polytetrafluoroethylene.getMolten(2304), + ItemRefer.Fluid_Storage_Core_T2.get(1), + 200, + 7680 + ); + + GT_Values.RA.addAssemblerRecipe( + new ItemStack[]{ + ItemList.Large_Fluid_Cell_TungstenSteel.get(18L), + GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.BlackSteel,4), + GT_Utility.getIntegratedCircuit(2) + }, + Materials.Polytetrafluoroethylene.getMolten(2304), + ItemRefer.Fluid_Storage_Core_T2.get(1), + 200, + 7680 + ); + + GT_Values.RA.addAssemblerRecipe( + new ItemStack[]{ + ItemList.Large_Fluid_Cell_Chrome.get(4L), + GT_OreDictUnificator.get(OrePrefixes.plateQuadruple, Materials.BlackSteel,4), + GT_Utility.getIntegratedCircuit(2) + }, + Materials.Polytetrafluoroethylene.getMolten(2304), + ItemRefer.Fluid_Storage_Core_T2.get(1), + 200, + 7680 + ); + + GT_Values.RA.addAssemblylineRecipe( + ItemRefer.Fluid_Storage_Core_T1.get(1), + 10000, + new Object[]{ + ItemRefer.Fluid_Storage_Core_T1.get(32), + ItemRefer.Fluid_Storage_Core_T1.get(32), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polytetrafluoroethylene,16), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polytetrafluoroethylene,16), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.BlackSteel,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.BlackSteel,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.BlackSteel,4) + }, + new FluidStack[]{ + Materials.SolderingAlloy.getMolten(288), + Materials.Lubricant.getFluid(1000) + }, + ItemRefer.Fluid_Storage_Core_T2.get(1), + 200, + 7680 + ); + + GT_Values.RA.addAssemblylineRecipe( + ItemRefer.Fluid_Storage_Core_T2.get(1), + 20000, + new Object[]{ + ItemRefer.Fluid_Storage_Core_T2.get(48), + ItemRefer.Fluid_Storage_Core_T2.get(48), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polytetrafluoroethylene,16), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polytetrafluoroethylene,16), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polytetrafluoroethylene,16), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polytetrafluoroethylene,16), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Iridium,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Iridium,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Iridium,4) + }, + new FluidStack[]{ + Materials.SolderingAlloy.getMolten(2304), + Materials.Lubricant.getFluid(4000) + }, + ItemRefer.Fluid_Storage_Core_T3.get(1), + 800, + 122880 + ); + + GT_Values.RA.addAssemblylineRecipe( + ItemRefer.Fluid_Storage_Core_T3.get(1), + 40000, + new Object[]{ + ItemRefer.Fluid_Storage_Core_T3.get(48), + ItemRefer.Fluid_Storage_Core_T3.get(48), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polybenzimidazole,16), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polybenzimidazole,16), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polybenzimidazole,16), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polybenzimidazole,16), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Osmium,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Osmium,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Osmium,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Osmium,4) + }, + new FluidStack[]{ + Materials.SolderingAlloy.getMolten(18432), + Materials.Lubricant.getFluid(16000) + }, + ItemRefer.Fluid_Storage_Core_T4.get(1), + 3200, + 1966080 + ); + + GT_Values.RA.addAssemblylineRecipe( + ItemRefer.Fluid_Storage_Core_T4.get(1), + 80000, + new Object[]{ + ItemRefer.Fluid_Storage_Core_T4.get(48), + ItemRefer.Fluid_Storage_Core_T4.get(48), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polybenzimidazole,32), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polybenzimidazole,32), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polybenzimidazole,32), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polybenzimidazole,32), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Neutronium,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Neutronium,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Neutronium,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.Neutronium,4) + }, + new FluidStack[]{ + Materials.Draconium.getMolten(2304), + Materials.Titanium.getMolten(288), + Materials.Lubricant.getFluid(64000) + }, + ItemRefer.Fluid_Storage_Core_T5.get(1), + 6400, + 3921160 + ); + + GT_Values.RA.addAssemblylineRecipe( + ItemRefer.Fluid_Storage_Core_T5.get(1), + 160000, + new Object[]{ + ItemRefer.Fluid_Storage_Core_T5.get(48), + ItemRefer.Fluid_Storage_Core_T5.get(48), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polybenzimidazole,32), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polybenzimidazole,32), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polybenzimidazole,32), + GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Polybenzimidazole,32), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.DraconiumAwakened,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.DraconiumAwakened,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.DraconiumAwakened,4), + GT_OreDictUnificator.get(OrePrefixes.plateDouble, Materials.DraconiumAwakened,4) + }, + new FluidStack[]{ + Materials.Draconium.getMolten(9216), + Materials.TungstenSteel.getMolten(4608), + Materials.Lubricant.getFluid(128000) + }, + ItemRefer.Fluid_Storage_Core_T6.get(1), + 12800, + 7842320 + ); + + GT_Values.RA.addAssemblerRecipe( + new ItemStack[]{ + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlackSteel,1), + ItemRefer.Fluid_Storage_Core_T1.get(10), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Steel,4), + ItemList.Electric_Pump_HV.get(2), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.StainlessSteel,4), + GT_Utility.getIntegratedCircuit(5) + }, + Materials.Plastic.getMolten(144), + ItemRefer.YOTTank_Cell_T1.get(1), + 400, + 480 + ); + + GT_Values.RA.addAssemblerRecipe( + new ItemStack[]{ + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel,1), + ItemRefer.Fluid_Storage_Core_T2.get(10), + WerkstoffLoader.LuVTierMaterial.get(OrePrefixes.plate, 4), + ItemList.Electric_Pump_IV.get(2), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Enderium,4), + GT_Utility.getIntegratedCircuit(5) + }, + Materials.Polytetrafluoroethylene.getMolten(144), + ItemRefer.YOTTank_Cell_T2.get(1), + 1600, + 7680 + ); + + GT_Values.RA.addAssemblylineRecipe( + ItemRefer.YOTTank_Cell_T2.get(1), + 20000, + new Object[]{ + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Naquadah,1), + ItemRefer.Fluid_Storage_Core_T3.get(5), + ItemRefer.Fluid_Storage_Core_T3.get(5), + new Object[]{"circuitUltimate", 4}, + new Object[]{"circuitUltimate", 4}, + ItemList.Electric_Pump_ZPM.get(2), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.NiobiumTitanium,4), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.NiobiumTitanium,4), + MyMaterial.adamantiumAlloy.get(OrePrefixes.plate, 16), + MyMaterial.adamantiumAlloy.get(OrePrefixes.plate, 16) + }, + new FluidStack[]{ + Materials.Quantium.getMolten(1440), + FluidRegistry.getFluidStack("ic2coolant",8000), + Materials.Lubricant.getFluid(8000) + }, + ItemRefer.YOTTank_Cell_T3.get(1), + 1600, + 122880 + ); + + GT_Values.RA.addAssemblylineRecipe( + ItemRefer.YOTTank_Cell_T3.get(1), + 40000, + new Object[]{ + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium,1), + ItemRefer.Fluid_Storage_Core_T4.get(5), + ItemRefer.Fluid_Storage_Core_T4.get(5), + new Object[]{"circuitInfinite", 4}, + new Object[]{"circuitInfinite", 4}, + ItemList.Electric_Pump_UHV.get(2), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.MysteriousCrystal,4), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.MysteriousCrystal,4), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.ElectrumFlux,16), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.ElectrumFlux,16) + }, + new FluidStack[]{ + Materials.Draconium.getMolten(1440), + FluidRegistry.getFluidStack("ic2coolant",16000), + Materials.Lubricant.getFluid(16000) + }, + ItemRefer.YOTTank_Cell_T4.get(1), + 3200, + 1966080 + ); + + GT_Values.RA.addAssemblylineRecipe( + ItemRefer.YOTTank_Cell_T4.get(1), + 80000, + new Object[]{ + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CosmicNeutronium,1), + ItemRefer.Fluid_Storage_Core_T5.get(5), + ItemRefer.Fluid_Storage_Core_T5.get(5), + new Object[]{"circuitBio", 4}, + new Object[]{"circuitBio", 4}, + ItemList.Electric_Pump_UEV.get(2), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.DraconiumAwakened,4), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.DraconiumAwakened,4), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium,16), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium,16), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium,16), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Neutronium,16) + }, + new FluidStack[]{ + Materials.Draconium.getMolten(1440), + FluidRegistry.getFluidStack("ic2coolant",16000), + Materials.Lubricant.getFluid(16000) + }, + ItemRefer.YOTTank_Cell_T5.get(1), + 6400, + 3921160 + ); + + GT_Values.RA.addAssemblylineRecipe( + ItemRefer.YOTTank_Cell_T5.get(1), + 160000, + new Object[]{ + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Infinity,1), + ItemRefer.Fluid_Storage_Core_T6.get(5), + ItemRefer.Fluid_Storage_Core_T6.get(5), + ItemList.Field_Generator_UEV.get(4), + ItemList.Field_Generator_UEV.get(4), + ItemList.Electric_Pump_UEV.get(16), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.NetherStar,4), + GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.NetherStar,4), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Infinity,16), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Infinity,16), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Infinity,16), + GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Infinity,16) + }, + new FluidStack[]{ + Materials.DraconiumAwakened.getMolten(1440), + FluidRegistry.getFluidStack("ic2coolant",32000), + Materials.Lubricant.getFluid(32000) + }, + ItemRefer.YOTTank_Cell_T6.get(1), + 12800, + 7842320 + ); + + GT_Values.RA.addUnboxingRecipe( + ItemRefer.YOTTank_Cell_T1.get(1), + ItemRefer.Fluid_Storage_Core_T1.get(10), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.BlackSteel,1), + 100, + 480 + ); + + GT_Values.RA.addUnboxingRecipe( + ItemRefer.YOTTank_Cell_T2.get(1), + ItemRefer.Fluid_Storage_Core_T2.get(10), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.TungstenSteel,1), + 100, + 480 + ); + + GT_Values.RA.addUnboxingRecipe( + ItemRefer.YOTTank_Cell_T3.get(1), + ItemRefer.Fluid_Storage_Core_T3.get(10), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Naquadah,1), + 100, + 480 + ); + + GT_Values.RA.addUnboxingRecipe( + ItemRefer.YOTTank_Cell_T4.get(1), + ItemRefer.Fluid_Storage_Core_T4.get(10), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Neutronium,1), + 100, + 480 + ); + + GT_Values.RA.addUnboxingRecipe( + ItemRefer.YOTTank_Cell_T5.get(1), + ItemRefer.Fluid_Storage_Core_T5.get(10), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.CosmicNeutronium,1), + 100, + 480 + ); + + GT_Values.RA.addUnboxingRecipe( + ItemRefer.YOTTank_Cell_T6.get(1), + ItemRefer.Fluid_Storage_Core_T6.get(10), + GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Infinity,1), + 100, + 480 + ); } public static void InitLoadRecipe() { diff --git a/src/main/java/GoodGenerator/util/CharExchanger.java b/src/main/java/GoodGenerator/util/CharExchanger.java index 566afdfeed..fd7146120f 100644 --- a/src/main/java/GoodGenerator/util/CharExchanger.java +++ b/src/main/java/GoodGenerator/util/CharExchanger.java @@ -84,4 +84,25 @@ public class CharExchanger { default: return false; } } + + public static String formatNumber(String exp) { + StringBuilder sb = new StringBuilder(); + for (int i = 0; i < exp.length(); ++i) { + if (Character.isDigit(exp.charAt(i))) { + int cnt = 0, prt = i; + while (Character.isDigit(exp.charAt(i))) { + i ++; + cnt ++; + } + while (Character.isDigit(exp.charAt(prt))) { + sb.append(exp.charAt(prt)); + prt ++; + cnt --; + if (cnt % 3 == 0 && cnt != 0) sb.append(" "); + } + } + sb.append(exp.charAt(i)); + } + return sb.toString(); + } } diff --git a/src/main/java/GoodGenerator/util/ItemRefer.java b/src/main/java/GoodGenerator/util/ItemRefer.java index 3a9404d1ea..4ab7a47798 100644 --- a/src/main/java/GoodGenerator/util/ItemRefer.java +++ b/src/main/java/GoodGenerator/util/ItemRefer.java @@ -50,6 +50,13 @@ public final class ItemRefer { public static ItemRefer Fuel_Rod_Pu_1 = getItemStack(rodCompressedPlutonium); public static ItemRefer Fuel_Rod_Pu_2 = getItemStack(rodCompressedPlutonium_2); public static ItemRefer Fuel_Rod_Pu_4 = getItemStack(rodCompressedPlutonium_4); + public static ItemRefer Fluid_Storage_Core_T1 = getItemStack(fluidCore, 0); + public static ItemRefer Fluid_Storage_Core_T2 = getItemStack(fluidCore, 1); + public static ItemRefer Fluid_Storage_Core_T3 = getItemStack(fluidCore, 2); + public static ItemRefer Fluid_Storage_Core_T4 = getItemStack(fluidCore, 3); + public static ItemRefer Fluid_Storage_Core_T5 = getItemStack(fluidCore, 4); + public static ItemRefer Fluid_Storage_Core_T6 = getItemStack(fluidCore, 5); + public static ItemRefer Field_Restriction_Casing = getItemStack(MAR_Casing); public static ItemRefer Naquadah_Fuel_Refinery_Casing = getItemStack(FRF_Casings); @@ -77,13 +84,12 @@ public final class ItemRefer { public static ItemRefer YOTTank_Cell_T8 = getItemStack(yottaFluidTankCell, 7); public static ItemRefer YOTTank_Cell_T9 = getItemStack(yottaFluidTankCell, 8); public static ItemRefer YOTTank_Cell_T10 = getItemStack(yottaFluidTankCell, 9); - public static ItemRefer YOTTank = getItemStack(YFT); - public static ItemRefer Large_Naquadah_Reactor = getItemStack(MAR.copy()); public static ItemRefer Naquadah_Fuel_Refinery = getItemStack(FRF.copy()); public static ItemRefer Universal_Chemical_Fuel_Engine = getItemStack(UCFE.copy()); public static ItemRefer Large_Essentia_Generator = getItemStack(LEG.copy()); + public static ItemRefer YOTTank = getItemStack(YFT.copy()); private Item mItem = null; private Block mBlock = null; diff --git a/src/main/resources/assets/goodgenerator/lang/en_US.lang b/src/main/resources/assets/goodgenerator/lang/en_US.lang index a9048bda1e..6e97885425 100644 --- a/src/main/resources/assets/goodgenerator/lang/en_US.lang +++ b/src/main/resources/assets/goodgenerator/lang/en_US.lang @@ -68,6 +68,12 @@ item.rodCompressedPlutonium.name=Fuel Rod (High Density Plutonium) item.rodCompressedPlutonium2.name=Dual Fuel Rod (High Density Plutonium) item.rodCompressedPlutonium4.name=Quad Fuel Rod (High Density Plutonium) item.advancedFuelRod.name=Advanced Fuel Rod (Empty) +item.fluidCore.0.name=Fluid Storage Core T1 +item.fluidCore.1.name=Fluid Storage Core T2 +item.fluidCore.2.name=Fluid Storage Core T3 +item.fluidCore.3.name=Fluid Storage Core T4 +item.fluidCore.4.name=Fluid Storage Core T5 +item.fluidCore.5.name=Fluid Storage Core T6 #Tooltip inverter.tooltip.0=Turn DC into AC. @@ -166,6 +172,9 @@ itemGroup.Good Generator=Good Generator #Scanner Info scanner.info.FRF=Coil Tier: scanner.info.NA=Current Neutron Kinetic Energy: +scanner.info.YOTTank.0=Current Capacity: +scanner.info.YOTTank.1=Fluid Name: +scanner.info.YOTTank.2=Current Used: #GUI Info gui.NeutronSensor.0=Input the value of Neutron Kinetic Energy. @@ -253,6 +262,24 @@ achievement.FRF_Coil_3.0=Ultimate Field Restriction Coil achievement.FRF_Coil_3.0.desc=Pickup this item to see the recipe in NEI achievement.gt.blockmachines.neutron_accelerator_luv=Neutron Accelerator Luv achievement.gt.blockmachines.neutron_accelerator_luv.desc=Do you really want it? +achievement.item.fluidCore.1=Fluid Storage Core T2 +achievement.item.fluidCore.1.desc=Pickup this item to see the recipe in NEI +achievement.item.fluidCore.2=Fluid Storage Core T3 +achievement.item.fluidCore.2.desc=Pickup this item to see the recipe in NEI +achievement.item.fluidCore.3=Fluid Storage Core T4 +achievement.item.fluidCore.3.desc=Pickup this item to see the recipe in NEI +achievement.item.fluidCore.4=Fluid Storage Core T5 +achievement.item.fluidCore.4.desc=Pickup this item to see the recipe in NEI +achievement.item.fluidCore.5=Fluid Storage Core T6 +achievement.item.fluidCore.5.desc=Pickup this item to see the recipe in NEI +achievement.yottaFluidTankCell.2=Fluid Cell Block T3 +achievement.yottaFluidTankCell.2.desc=Pickup this item to see the recipe in NEI +achievement.yottaFluidTankCell.3=Fluid Cell Block T4 +achievement.yottaFluidTankCell.3.desc=Pickup this item to see the recipe in NEI +achievement.yottaFluidTankCell.4=Fluid Cell Block T5 +achievement.yottaFluidTankCell.4.desc=Pickup this item to see the recipe in NEI +achievement.yottaFluidTankCell.5=Fluid Cell Block T6 +achievement.yottaFluidTankCell.5.desc=Pickup this item to see the recipe in NEI #Thaumcraft Research Context research.ESSENTIA_GENERATOR.page.0=You have found that Essentia contains much more power than you thought. Is there a way to generate electricity from these Essentia? diff --git a/src/main/resources/assets/goodgenerator/textures/items/fluidCore/1.png b/src/main/resources/assets/goodgenerator/textures/items/fluidCore/1.png Binary files differnew file mode 100644 index 0000000000..83a9942010 --- /dev/null +++ b/src/main/resources/assets/goodgenerator/textures/items/fluidCore/1.png diff --git a/src/main/resources/assets/goodgenerator/textures/items/fluidCore/2.png b/src/main/resources/assets/goodgenerator/textures/items/fluidCore/2.png Binary files differnew file mode 100644 index 0000000000..9741eb7c61 --- /dev/null +++ b/src/main/resources/assets/goodgenerator/textures/items/fluidCore/2.png diff --git a/src/main/resources/assets/goodgenerator/textures/items/fluidCore/3.png b/src/main/resources/assets/goodgenerator/textures/items/fluidCore/3.png Binary files differnew file mode 100644 index 0000000000..a6aa0780a8 --- /dev/null +++ b/src/main/resources/assets/goodgenerator/textures/items/fluidCore/3.png diff --git a/src/main/resources/assets/goodgenerator/textures/items/fluidCore/4.png b/src/main/resources/assets/goodgenerator/textures/items/fluidCore/4.png Binary files differnew file mode 100644 index 0000000000..e2e637dbcb --- /dev/null +++ b/src/main/resources/assets/goodgenerator/textures/items/fluidCore/4.png diff --git a/src/main/resources/assets/goodgenerator/textures/items/fluidCore/5.png b/src/main/resources/assets/goodgenerator/textures/items/fluidCore/5.png Binary files differnew file mode 100644 index 0000000000..4085202dc3 --- /dev/null +++ b/src/main/resources/assets/goodgenerator/textures/items/fluidCore/5.png diff --git a/src/main/resources/assets/goodgenerator/textures/items/fluidCore/6.png b/src/main/resources/assets/goodgenerator/textures/items/fluidCore/6.png Binary files differnew file mode 100644 index 0000000000..8a96decc84 --- /dev/null +++ b/src/main/resources/assets/goodgenerator/textures/items/fluidCore/6.png |