diff options
Diffstat (limited to 'src/main')
5 files changed, 591 insertions, 597 deletions
diff --git a/src/main/java/gregtech/api/util/GTPP_Recipe.java b/src/main/java/gregtech/api/util/GTPP_Recipe.java index 0b081adec4..ba914e0857 100644 --- a/src/main/java/gregtech/api/util/GTPP_Recipe.java +++ b/src/main/java/gregtech/api/util/GTPP_Recipe.java @@ -1,27 +1,19 @@ package gregtech.api.util; -import static gregtech.api.enums.GT_Values.E; -import static gregtech.api.enums.GT_Values.RES_PATH_GUI; -import static gregtech.api.enums.GT_Values.W; +import static gregtech.api.enums.GT_Values.*; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; +import java.util.*; import codechicken.nei.PositionedStack; import gregtech.api.GregTech_API; -import gregtech.api.interfaces.tileentity.IGregTechTileEntity; -import gregtech.api.interfaces.tileentity.IHasWorldObjectAndCoords; +import gregtech.api.interfaces.tileentity.*; import gregtech.api.objects.GT_ItemStack; import gtPlusPlus.api.interfaces.IComparableRecipe; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.api.objects.data.AutoMap; import gtPlusPlus.core.lib.CORE; import net.minecraft.item.ItemStack; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidStack; +import net.minecraftforge.fluids.*; /** * Custom GT Recipe Class @@ -32,18 +24,18 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { private final String mRecipeHash; private final AutoMap<Integer> mHashMap = new AutoMap<Integer>(); - + public GTPP_Recipe(final boolean aOptimize, final ItemStack[] aInputs, final ItemStack[] aOutputs, final Object aSpecialItems, final int[] aChances, final FluidStack[] aFluidInputs, final FluidStack[] aFluidOutputs, final int aDuration, final int aEUt, final int aSpecialValue) { super(aOptimize, aInputs, aOutputs, aSpecialItems, aChances, aFluidInputs, aFluidOutputs, aDuration, aEUt, aSpecialValue); //Logger.SPECIFIC_WARNING(this.getClass().getName()+" | [GregtechRecipe]", "Created new recipe instance for "+ItemUtils.getArrayStackNames(aInputs), 167); - mRecipeHash = getRecipeHash(this); - mHashMap.addAll(convertStringDataToInts(getEncodedRecipeData(this))); + this.mRecipeHash = getRecipeHash(this); + this.mHashMap.addAll(convertStringDataToInts(getEncodedRecipeData(this))); } public GTPP_Recipe(final ItemStack aInput1, final ItemStack aOutput1, final int aFuelValue, final int aType) { this(aInput1, aOutput1, null, null, null, aFuelValue, aType); } - + private static AutoMap<Integer> convertStringDataToInts(AutoMap<String> aData){ AutoMap<Integer> aMap = new AutoMap<Integer>(); for (String string : aData) { @@ -51,7 +43,7 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { } return aMap; } - + private static AutoMap<String> getEncodedRecipeData(GTPP_Recipe aRecipe){ AutoMap<String> aData = new AutoMap<String>(); aData.add(aRecipe.mRecipeHash); @@ -66,27 +58,27 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { aData.add(aRecipe.mInputs.toString()); aData.add(aRecipe.mOutputs.toString()); aData.add(aRecipe.mFluidInputs.toString()); - aData.add(aRecipe.mFluidOutputs.toString()); + aData.add(aRecipe.mFluidOutputs.toString()); return aData; } - - public static String getRecipeHash(GT_Recipe aRecipe) { + + public static String getRecipeHash(GT_Recipe aRecipe) { String aEncoderString = aRecipe.toString(); return aEncoderString; } - + private final void checkModified() { if (hasBeenModified()) { CORE.crash("Someone has edited an internal GT++ recipe, which is no longer allowed. Please complain to whoever has done this, not Alkalus."); } } - + private final boolean hasBeenModified() { String aEncoderString = this.toString(); - boolean aBasicHashCheck = mRecipeHash.equals(aEncoderString); + boolean aBasicHashCheck = this.mRecipeHash.equals(aEncoderString); if (!aBasicHashCheck) { Logger.INFO("This Recipe Hash: "+aEncoderString); - Logger.INFO("Expected Hash Code: "+mRecipeHash); + Logger.INFO("Expected Hash Code: "+this.mRecipeHash); return true; } AutoMap<Integer> aData = new AutoMap<Integer>(); @@ -96,16 +88,16 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { for (int a : aData) { aHashTotal += a; } - for (int a : mHashMap) { + for (int a : this.mHashMap) { aExpectedHashTotal += a; } if (aHashTotal != aExpectedHashTotal) { Logger.INFO("This Recipe Hash: "+aEncoderString); - Logger.INFO("Expected Hash Code: "+mRecipeHash); + Logger.INFO("Expected Hash Code: "+this.mRecipeHash); Logger.INFO("This Recipe Hash: "+aHashTotal); Logger.INFO("Expected Hash Code: "+aExpectedHashTotal); return true; - } + } return false; } @@ -116,31 +108,31 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { Logger.WARNING("Switch case method for adding fuels"); if ((this.mInputs.length > 0) && (aSpecialValue > 0)) { switch (aType) { - // Diesel Generator - case 0: - Logger.WARNING("Added fuel "+aInput1.getDisplayName()+" is ROCKET FUEL - continuing"); - GTPP_Recipe_Map.sRocketFuels.addRecipe(this); - break; - // Gas Turbine - case 1: - GTPP_Recipe_Map.sGeoThermalFuels.addRecipe(this); - break; - // Thermal Generator - case 2: - GTPP_Recipe_Map.sRTGFuels.addRecipe(this); - break; - // Plasma Generator - case 4: - //Gregtech_Recipe_Map.sPlasmaFuels.addRecipe(this); - break; - // Magic Generator - case 5: - //Gregtech_Recipe_Map.sMagicFuels.addRecipe(this); - break; - // Fluid Generator. Usually 3. Every wrong Type ends up in the Semifluid Generator - default: - //Gregtech_Recipe_Map.sDenseLiquidFuels.addRecipe(this); - break; + // Diesel Generator + case 0: + Logger.WARNING("Added fuel "+aInput1.getDisplayName()+" is ROCKET FUEL - continuing"); + GTPP_Recipe_Map.sRocketFuels.addRecipe(this); + break; + // Gas Turbine + case 1: + GTPP_Recipe_Map.sGeoThermalFuels.addRecipe(this); + break; + // Thermal Generator + case 2: + GTPP_Recipe_Map.sRTGFuels.addRecipe(this); + break; + // Plasma Generator + case 4: + //Gregtech_Recipe_Map.sPlasmaFuels.addRecipe(this); + break; + // Magic Generator + case 5: + //Gregtech_Recipe_Map.sMagicFuels.addRecipe(this); + break; + // Fluid Generator. Usually 3. Every wrong Type ends up in the Semifluid Generator + default: + //Gregtech_Recipe_Map.sDenseLiquidFuels.addRecipe(this); + break; } } } @@ -167,7 +159,7 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { //tMapEntry.reInit(); if (tMapEntry != null && tMapEntry.mRecipeList != null && !tMapEntry.mRecipeList.isEmpty()) { for (GT_Recipe aRecipe : tMapEntry.mRecipeList) { - checkRecipeOwnership(aRecipe); + checkRecipeOwnership(aRecipe); } } } @@ -175,21 +167,21 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { //tMapEntry.reInit(); if (tMapEntry != null && tMapEntry.mRecipeList != null && !tMapEntry.mRecipeList.isEmpty()) { for (GT_Recipe aRecipe : tMapEntry.mRecipeList) { - checkRecipeOwnership(aRecipe); + checkRecipeOwnership(aRecipe); } } - } + } } - + private final static boolean checkRecipeOwnership(GT_Recipe aRecipe) { if (aRecipe != null && aRecipe instanceof GTPP_Recipe) { GTPP_Recipe nRecipe = (GTPP_Recipe) aRecipe; GTPP_Recipe_Map_Internal.mHashedRecipes.put(nRecipe.hashCode(), nRecipe); return true; - } + } return false; } - + public final static void checkRecipeModifications() { for (GTPP_Recipe aRecipe : GTPP_Recipe_Map_Internal.mHashedRecipes.values()) { Logger.INFO("Checking recipe: "+aRecipe.hashCode()); @@ -311,18 +303,18 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { return true; } - + public static class GTPP_Recipe_Map_Internal extends GT_Recipe_Map { public static final Collection<GTPP_Recipe_Map_Internal> sMappingsEx = new ArrayList<>(); private static final HashMap<Integer, GTPP_Recipe> mHashedRecipes = new HashMap<Integer, GTPP_Recipe>(); - + public GTPP_Recipe_Map_Internal(Collection<GT_Recipe> aRecipeList, String aUnlocalizedName, String aLocalName, String aNEIName, String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount, int aMinimalInputItems, int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre, int aNEISpecialValueMultiplier, String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI, boolean aNEIAllowed) { super(aRecipeList, aUnlocalizedName, aLocalName, aNEIName, aNEIGUIPath, aUsualInputCount, aUsualOutputCount, aMinimalInputItems, aMinimalInputFluids, aAmperage, aNEISpecialValuePre, aNEISpecialValueMultiplier, aNEISpecialValuePost, aShowVoltageAmperageInNEI, aNEIAllowed); GT_Recipe_Map.sMappings.remove(this); GTPP_Recipe_Map_Internal.sMappingsEx.add(this); } - + } public static class GTPP_Recipe_Map { @@ -334,9 +326,9 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { public static final GTPP_Recipe_Map_Internal sCokeOvenRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(200), "gtpp.recipe.cokeoven", "Coke Oven", null, RES_PATH_GUI + "basicmachines/Dehydrator", 2, 9, 1, 0, 1, E, 1, E, true, true); public static final GTPP_Recipe_Map_Internal sMatterFab2Recipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(200), "gtpp.recipe.matterfab2", "Matter Fabricator", null, RES_PATH_GUI + "basicmachines/Default", 9, 9, 0, 0, 1, E, 1, E, true, true); //public static final Gregtech_Recipe_Map sMatterFabRecipes = new Gregtech_Recipe_Map(new HashSet<GregtechRecipe>(200), "gtpp.recipe.matterfab", "Matter Fabricator", null, RES_PATH_GUI + "basicmachines/Massfabricator", 1, 3, 1, 1, 1, E, 1, E, true, true); - + public static final GT_Recipe_Map_Fuel sRocketFuels = new GT_Recipe_Map_Fuel(new HashSet<GT_Recipe>(10), "gtpp.recipe.rocketenginefuel", "Rocket Engine Fuel", null, RES_PATH_GUI + "basicmachines/Default", 1, 1, 0, 0, 1, "Fuel Value: ", 3000, " EU", true, true); - + public static final GTPP_Recipe_Map_Internal sGeoThermalFuels = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(10), "gtpp.recipe.geothermalfuel", "GeoThermal Fuel", null, RES_PATH_GUI + "basicmachines/Default", 1, 1, 0, 0, 1, "Fuel Value: ", 1000, " EU", true, true); public static final GTPP_Recipe_Map_Internal sChemicalDehydratorRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(200), "gtpp.recipe.chemicaldehydrator", "Dehydrator", null, RES_PATH_GUI + "basicmachines/Dehydrator", 2, 9, 0, 0, 1, E, 1, E, true, true); public static final GTPP_Recipe_Map_Internal sVacuumFurnaceRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(500), "gtpp.recipe.vacfurnace", "Vacuum Furnace", null, "gregtech:textures/gui/basicmachines/Default", 6, 6, 1, 0, 1, "Heat Capacity: ", 1, " K", false, true); @@ -345,12 +337,12 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { //LFTR recipes public static final GTPP_Recipe_Map_Internal sLiquidFluorineThoriumReactorRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(50), "gtpp.recipe.lftr", "Liquid Fluoride Thorium Reactor", null, RES_PATH_GUI + "basicmachines/FissionFuel", 0, 0, 0, 2, 0, "Power: ", 1, " EU/t per Dynamo", true, true); - + // Ore Milling Map - public static final GTPP_Recipe_Map_Internal sOreMillRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(10000), "gtpp.recipe.oremill", "Milling", null, RES_PATH_GUI + "basicmachines/LFTR", 3, 4, 1, 0, 1, E, 1, E, true, false); - + public static final GTPP_Recipe_Map_Internal sOreMillRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(10000), "gtpp.recipe.oremill", "Milling", null, RES_PATH_GUI + "basicmachines/LFTR", 3, 4, 1, 0, 1, E, 1, E, true, false); + //Fission Fuel Plant Recipes - public static final GTPP_Recipe_Map_Internal sFissionFuelProcessing = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(50), "gtpp.recipe.fissionfuel", "Nuclear Fuel Processing", null, RES_PATH_GUI + "basicmachines/FissionFuel", 0, 0, 0, 0, 1, E, 1, E, true, false); + public static final GTPP_Recipe_Map_Internal sFissionFuelProcessing = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(50), "gtpp.recipe.fissionfuel", "Nuclear Fuel Processing", null, RES_PATH_GUI + "basicmachines/FissionFuel", 0, 0, 0, 0, 1, E, 1, E, true, false); //Cold Trap public static final GTPP_Recipe_Map_Internal sColdTrapRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(10000), "gtpp.recipe.coldtrap", "Cold Trap", null, RES_PATH_GUI + "basicmachines/Dehydrator", 2, 9, 0, 0, 1, E, 1, E, true, true); @@ -367,9 +359,9 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { //Elemental Duplicator Map public static final GTPP_Recipe_Map_Internal sElementalDuplicatorRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(3), "gtpp.recipe.elementaldupe", "Elemental Duplicator", null, RES_PATH_GUI + "basicmachines/Replicator", 1, 1, 0, 1, 1, E, 1, E, true, false); - + //public static final GT_Recipe_Map sSimpleWasherRecipes_FakeFuckBW = new GT_Recipe_Map(new HashSet<GT_Recipe>(3), "gtpp.recipe.simplewasher", "Fuck you Bart", null, RES_PATH_GUI + "basicmachines/PotionBrewer", 1, 1, 0, 0, 1, E, 1, E, true, false); - + public static final GTPP_Recipe_Map_Internal sChemicalPlantRecipes = new GTPP_Recipe_Map_Internal( new HashSet<GT_Recipe>(100), "gtpp.recipe.fluidchemicaleactor", @@ -402,7 +394,7 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { public static final GT_Recipe.GT_Recipe_Map_Fuel sSolarTowerRecipes = new GT_Recipe_Map_Fuel(new HashSet<GT_Recipe>(10), "gtpp.recipe.solartower", "Solar Tower", null, "gregtech:textures/gui/basicmachines/Default", 1, 1, 0, 0, 1, null, 1000, null, true, false); - + //Cyclotron recipe map public static final GTPP_Recipe_Map_Internal sCyclotronRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(200), "gtpp.recipe.cyclotron", "COMET - Compact Cyclotron", null, RES_PATH_GUI + "basicmachines/BlastSmelter", 2, 16, 0, 0, 1, E, 1, E, true, true); @@ -419,29 +411,29 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { //Component Assembler public static final GT_Recipe_Map sComponentAssemblerRecipes = new GT_Recipe_Map_Assembler(new HashSet<GT_Recipe>(300), "gtpp.recipe.componentassembler", "Component Assembler", null, RES_PATH_GUI + "basicmachines/Assembler", 6, 1, 1, 0, 1, E, 1, E, true, true); - + //Special Maps for Multis public static final GTPP_Recipe_Map_Internal sFishPondRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(3), "gtpp.recipe.fishpond", "Zhuhai - Fishing Port", null, RES_PATH_GUI + "basicmachines/PotionBrewer", 0, 1, 0, 0, 1, "Requires Circuit: ", 1, ".", true, true); - public static final GTPP_Recipe_Map_Internal sSpargeTowerRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(10000), "gtpp.recipe.spargetower", "Sparging", null, RES_PATH_GUI + "basicmachines/FissionFuel", 9, 9, 0, 0, 1, E, 1, E, true, false); - + public static final GTPP_Recipe_Map_Internal sSpargeTowerRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(10000), "gtpp.recipe.spargetower", "Sparging", null, RES_PATH_GUI + "basicmachines/FissionFuel", 9, 9, 0, 0, 1, E, 1, E, true, false); + //public static final GTPP_Recipe_Map sMultiblockCentrifugeRecipes = new GT_Recipe_Map_LargeCentrifuge(); //public static final GTPP_Recipe_Map sMultiblockElectrolyzerRecipes = new GT_Recipe_Map_LargeElectrolyzer(); //public static final GTPP_Recipe_Map sAdvFreezerRecipes = new GT_Recipe_Map_AdvancedVacuumFreezer(); - + public static final GTPP_Recipe_Map_Internal sAdvFreezerRecipes_GT = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(2000), "gtpp.recipe.cryogenicfreezer", "Cryogenic Freezer", null, RES_PATH_GUI + "basicmachines/FissionFuel", 9, 9, 0, 0, 1, "", 0, "", false, true); public static final GTPP_Recipe_Map_Internal sMultiblockCentrifugeRecipes_GT = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(2000), "gtpp.recipe.multicentrifuge", "Multiblock Centrifuge", null, RES_PATH_GUI + "basicmachines/FissionFuel", 9, 9, 0, 0, 1, "", 0, "", false, true); public static final GTPP_Recipe_Map_Internal sMultiblockElectrolyzerRecipes_GT = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(2000), "gtpp.recipe.multielectro", "Multiblock Electrolyzer", null, RES_PATH_GUI + "basicmachines/FissionFuel", 9, 9, 0, 0, 1, "", 0, "", false, true); public static final GTPP_Recipe_Map_Internal sChemicalPlant_GT = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(2000), "gtpp.recipe.temp4", "temp4", null, RES_PATH_GUI + "basicmachines/PotionBrewer", 0, 0, 0, 0, 0, "", 0, "", false, false); public static final GTPP_Recipe_Map_Internal sMultiblockMixerRecipes_GT = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(2000), "gtpp.recipe.multimixer", "Multiblock Mixer", null, RES_PATH_GUI + "basicmachines/FissionFuel", 12, 9, 0, 0, 1, "", 0, "", false, true); - //Semi-Fluid Fuel Map + //Semi-Fluid Fuel Map public static final GT_Recipe_Map_Fuel sSemiFluidLiquidFuels = new GT_Recipe_Map_Fuel(new HashSet<GT_Recipe>(10), "gtpp.recipe.semifluidgeneratorfuels", "Semifluid Generator Fuels", null, RES_PATH_GUI + "basicmachines/Default", 1, 1, 0, 0, 1, "Fuel Value: ", 1000, " EU", true, true); - + // Flotation Cell - public static final GTPP_Recipe_Map_Internal sFlotationCellRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(10000), "gtpp.recipe.flotationcell", "Flotation Cell", null, RES_PATH_GUI + "basicmachines/LFTR", 6, 4, 1, 1, 1, "Ore Key: ", 1, E, true, false); - - - + public static final GTPP_Recipe_Map_Internal sFlotationCellRecipes = new GTPP_Recipe_Map_Internal(new HashSet<GT_Recipe>(10000), "gtpp.recipe.flotationcell", "Flotation Cell", null, RES_PATH_GUI + "basicmachines/LFTR", 6, 4, 1, 1, 1, "Ore Key: ", 1, E, true, false); + + + /** * HashMap of Recipes based on their Items @@ -980,11 +972,13 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { return this.addRecipe(true, new ItemStack[]{aInput}, new ItemStack[]{aOutput}, null, new int[]{aChance}, new FluidStack[]{aFluidInput}, new FluidStack[]{aFluidOutput}, 0, 0, aFuelValueInEU); } } - + + @Override public ArrayList<PositionedStack> getInputPositionedStacks() { return null; } + @Override public ArrayList<PositionedStack> getOutputPositionedStacks() { return null; } @@ -1008,7 +1002,8 @@ public class GTPP_Recipe extends GT_Recipe implements IComparableRecipe { } return 0; } - + + @Override public int compareTo(GT_Recipe recipe) { // first lowest tier recipes // then fastest diff --git a/src/main/java/gtPlusPlus/core/item/ModItems.java b/src/main/java/gtPlusPlus/core/item/ModItems.java index 8b72b9c7c9..159598189e 100644 --- a/src/main/java/gtPlusPlus/core/item/ModItems.java +++ b/src/main/java/gtPlusPlus/core/item/ModItems.java @@ -1,11 +1,9 @@ package gtPlusPlus.core.item; -import static gtPlusPlus.core.creative.AddToCreativeTab.tabMachines; -import static gtPlusPlus.core.creative.AddToCreativeTab.tabMisc; +import static gtPlusPlus.core.creative.AddToCreativeTab.*; import static gtPlusPlus.core.lib.CORE.LOAD_ALL_CONTENT; import cpw.mods.fml.common.registry.GameRegistry; -import gregtech.api.enums.Materials; -import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.*; import gregtech.api.util.GT_OreDictUnificator; import gtPlusPlus.api.objects.Logger; import gtPlusPlus.core.block.base.BasicBlock.BlockTypes; @@ -17,15 +15,12 @@ import gtPlusPlus.core.item.base.BaseItemComponent.ComponentTypes; import gtPlusPlus.core.item.base.cell.BaseItemCell; import gtPlusPlus.core.item.base.dusts.BaseItemDust; import gtPlusPlus.core.item.base.foil.BaseItemFoil; -import gtPlusPlus.core.item.base.foods.BaseItemFood; -import gtPlusPlus.core.item.base.foods.BaseItemHotFood; +import gtPlusPlus.core.item.base.foods.*; import gtPlusPlus.core.item.base.gears.BaseItemSmallGear; -import gtPlusPlus.core.item.base.ingots.BaseItemIngot; -import gtPlusPlus.core.item.base.ingots.BaseItemIngot_OLD; +import gtPlusPlus.core.item.base.ingots.*; import gtPlusPlus.core.item.base.misc.BaseItemMisc; import gtPlusPlus.core.item.base.misc.BaseItemMisc.MiscTypes; -import gtPlusPlus.core.item.base.plates.BaseItemPlate; -import gtPlusPlus.core.item.base.plates.BaseItemPlateDouble; +import gtPlusPlus.core.item.base.plates.*; import gtPlusPlus.core.item.bauble.*; import gtPlusPlus.core.item.chemistry.*; import gtPlusPlus.core.item.crafting.ItemDummyResearch; @@ -34,36 +29,24 @@ import gtPlusPlus.core.item.food.BaseItemMetaFood; import gtPlusPlus.core.item.general.*; import gtPlusPlus.core.item.general.books.ItemBaseBook; import gtPlusPlus.core.item.general.capture.ItemEntityCatcher; -import gtPlusPlus.core.item.general.chassis.ItemBoilerChassis; -import gtPlusPlus.core.item.general.chassis.ItemDehydratorCoil; -import gtPlusPlus.core.item.general.chassis.ItemDehydratorCoilWire; +import gtPlusPlus.core.item.general.chassis.*; import gtPlusPlus.core.item.general.spawn.ItemCustomSpawnEgg; -import gtPlusPlus.core.item.general.throwables.ItemHydrofluoricAcidPotion; -import gtPlusPlus.core.item.general.throwables.ItemSulfuricAcidPotion; -import gtPlusPlus.core.item.general.throwables.ItemThrowableBomb; +import gtPlusPlus.core.item.general.throwables.*; import gtPlusPlus.core.item.init.ItemsFoods; import gtPlusPlus.core.item.materials.DustDecayable; -import gtPlusPlus.core.item.tool.misc.DebugScanner; -import gtPlusPlus.core.item.tool.misc.GregtechPump; -import gtPlusPlus.core.item.tool.misc.SandstoneHammer; -import gtPlusPlus.core.item.tool.misc.box.AutoLunchBox; -import gtPlusPlus.core.item.tool.misc.box.MagicToolBag; -import gtPlusPlus.core.item.tool.misc.box.UniversalToolBox; +import gtPlusPlus.core.item.tool.misc.*; +import gtPlusPlus.core.item.tool.misc.box.*; import gtPlusPlus.core.item.tool.staballoy.*; import gtPlusPlus.core.item.wearable.WearableLoader; -import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.lib.*; import gtPlusPlus.core.lib.CORE.ConfigSwitches; -import gtPlusPlus.core.lib.LoadedMods; import gtPlusPlus.core.material.*; -import gtPlusPlus.core.material.nuclear.FLUORIDES; -import gtPlusPlus.core.material.nuclear.NUCLIDE; +import gtPlusPlus.core.material.nuclear.*; import gtPlusPlus.core.recipe.common.CI; import gtPlusPlus.core.util.Utils; import gtPlusPlus.core.util.data.StringUtils; import gtPlusPlus.core.util.debug.DEBUG_INIT; -import gtPlusPlus.core.util.minecraft.FluidUtils; -import gtPlusPlus.core.util.minecraft.ItemUtils; -import gtPlusPlus.core.util.minecraft.MaterialUtils; +import gtPlusPlus.core.util.minecraft.*; import gtPlusPlus.core.util.reflect.ReflectionUtils; import gtPlusPlus.everglades.GTplusplus_Everglades; import gtPlusPlus.preloader.CORE_Preloader; @@ -76,15 +59,13 @@ import gtPlusPlus.xmod.gregtech.common.items.MetaGeneratedGregtechItems; import net.minecraft.item.*; import net.minecraft.item.Item.ToolMaterial; import net.minecraft.util.EnumChatFormatting; -import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.common.util.EnumHelper; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidRegistry; +import net.minecraftforge.fluids.*; public final class ModItems { public static ToolMaterial STABALLOY = EnumHelper.addToolMaterial("Staballoy", 3, 2500, 7, 1.0F, 18); - + public static Item ZZZ_Empty; public static Item AAA_Broken; @@ -199,14 +180,14 @@ public final class ModItems { public static Item dustCalciumCarbonate; public static Item dustLi2CO3CaOH2; public static Item dustLi2BeF4; - + public static Item dustTumbagaMix; public static Item dustAer; public static Item dustIgnis; public static Item dustTerra; public static Item dustAqua; - + public static Item cellHydrogenChlorideMix; public static BaseEuItem metaItem2; @@ -264,7 +245,7 @@ public final class ModItems { public static Item itemFoilUranium235; public static Item itemDustIndium; public static BlockBaseModular blockRawMeat; - + public static Item itemBoilerChassis; public static Item itemDehydratorCoilWire; public static Item itemDehydratorCoil; @@ -302,7 +283,7 @@ public final class ModItems { public static Item dustDecayedRadium226; public static Item dustRadium226; public static Item dustProtactinium233; - + public static ItemGiantEgg itemBigEgg; public static GregtechPump toolGregtechPump; @@ -310,7 +291,7 @@ public final class ModItems { public static ItemGenericToken itemGenericToken; public static Item itemControlCore; - + public static Item itemSunnariumBit; public static ItemStack itemHotTitaniumIngot; @@ -352,14 +333,14 @@ public final class ModItems { public static MonsterKillerBaseBauble itemAmuletMonsterKiller_Spider; public static MonsterKillerBaseBauble itemAmuletMonsterKiller_Creeper; public static MonsterKillerBaseBauble itemAmuletMonsterKiller_Enderman; - + public static MonsterKillerBaseBauble itemAmuletMonsterKiller_Nether; public static MonsterKillerBaseBauble itemAmuletMonsterKiller_Infernal; public static CoreItem itemExquisiteIndustrialDiamond; public static BaseItemMetaFood itemMetaFood; - + public static ItemMagicFeather itemMagicFeather; static { @@ -370,8 +351,8 @@ public final class ModItems { } public static final void init(){ - - itemDebugScanner = new DebugScanner(); + + itemDebugScanner = new DebugScanner(); itemMagicFeather = new ItemMagicFeather(); itemAlkalusDisk = new BaseItemDamageable("itemAlkalusDisk", AddToCreativeTab.tabMisc, 1, 0, "Unknown Use", EnumRarity.rare, EnumChatFormatting.AQUA, false, null); @@ -379,7 +360,7 @@ public final class ModItems { itemGenericToken = new ItemGenericToken(); itemDummyResearch = new ItemDummyResearch(); itemCustomSpawnEgg = new ItemCustomSpawnEgg(); - + //Debug Loading if (CORE_Preloader.DEBUG_MODE){ DEBUG_INIT.registerItems(); @@ -393,8 +374,8 @@ public final class ModItems { //Some Simple forms of materials itemStickyRubber = new Item().setUnlocalizedName("itemStickyRubber").setCreativeTab(tabMachines).setTextureName(CORE.MODID + ":itemStickyRubber"); GameRegistry.registerItem(itemStickyRubber, "itemStickyRubber"); - GT_OreDictUnificator.registerOre("ingotRubber", ItemUtils.getItemStackFromFQRN(CORE.MODID+":itemStickyRubber", 1)); - + GT_OreDictUnificator.registerOre("ingotRubber", ItemUtils.getItemStackFromFQRN(CORE.MODID+":itemStickyRubber", 1)); + //Register Hydrogen Blobs first, so we can replace old helium blobs. itemHydrogenBlob = new CoreItem("itemHydrogenBlob", "Mysterious Hydrogen Blob", tabMisc).setTextureName(CORE.MODID + ":itemHeliumBlob"); //Register Old Helium Blob, this will be replaced when held by a player. @@ -406,7 +387,7 @@ public final class ModItems { //Register Rope itemFiber = new CoreItem("itemFiber", "Plant Fiber", tabMisc); itemRope = new CoreItem("itemRope", "Rope", tabMisc); - + //Load Wearable Items WearableLoader.run(); @@ -431,8 +412,8 @@ public final class ModItems { backpack_Gray = new BaseItemBackpack("backpackGray", Utils.rgbtoHexValue(128, 128, 128)); backpack_Black = new BaseItemBackpack("backpackBlack", Utils.rgbtoHexValue(20, 20, 20)); backpack_White = new BaseItemBackpack("backpackWhite", Utils.rgbtoHexValue(240, 240, 240)); - - + + //Load Custom Box/bags boxTools = new UniversalToolBox("Tool Box"); boxFood = new AutoLunchBox("Eatotron-9000"); @@ -449,7 +430,7 @@ public final class ModItems { try{ - + registerCustomMaterialComponents(); //Elements generate first so they can be used in compounds. @@ -513,11 +494,11 @@ public final class ModItems { MaterialGenerator.generateNuclearMaterial(ELEMENT.getInstance().STRONTIUM90, false); MaterialGenerator.generateNuclearMaterial(ELEMENT.getInstance().POLONIUM210, false); MaterialGenerator.generateNuclearMaterial(ELEMENT.getInstance().AMERICIUM241, false); - + if (!CORE.GTNH) { - MaterialGenerator.generateOreMaterialWithAllExcessComponents(ELEMENT.getInstance().TRINIUM); + MaterialGenerator.generateOreMaterialWithAllExcessComponents(ELEMENT.getInstance().TRINIUM); } - + //Custom Materials that will have standalone refinery processes MaterialGenerator.generate(ELEMENT.STANDALONE.ADVANCED_NITINOL, false); MaterialGenerator.generate(ELEMENT.STANDALONE.ASTRAL_TITANIUM); @@ -525,16 +506,16 @@ public final class ModItems { MaterialGenerator.generate(ELEMENT.STANDALONE.HYPOGEN); MaterialGenerator.generate(ELEMENT.STANDALONE.CHRONOMATIC_GLASS); MaterialGenerator.generate(ELEMENT.STANDALONE.FORCE); - + //Custom Materials that are from Runescape MaterialGenerator.generate(ELEMENT.STANDALONE.BLACK_METAL); MaterialGenerator.generate(ELEMENT.STANDALONE.WHITE_METAL); MaterialGenerator.generateOreMaterialWithAllExcessComponents(ELEMENT.STANDALONE.GRANITE); MaterialGenerator.generateOreMaterialWithAllExcessComponents(ELEMENT.STANDALONE.RUNITE); MaterialGenerator.generate(ELEMENT.STANDALONE.DRAGON_METAL, false); - + MISC_MATERIALS.run(); - + //Carbides - Tungsten Carbide exists in .09 so don't generate it. - Should still come before alloys though if (!CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK){ @@ -636,7 +617,7 @@ public final class ModItems { MaterialGenerator.generate(ALLOY.TRINIUM_NAQUADAH, false); MaterialGenerator.generate(ALLOY.TRINIUM_NAQUADAH_CARBON); MaterialGenerator.generate(ALLOY.TRINIUM_REINFORCED_STEEL); - + //Top Tier Alloys MaterialGenerator.generate(ALLOY.HELICOPTER); MaterialGenerator.generate(ALLOY.LAFIUM); @@ -646,25 +627,25 @@ public final class ModItems { MaterialGenerator.generate(ALLOY.LAURENIUM); MaterialGenerator.generate(ALLOY.BOTMIUM); MaterialGenerator.generate(ALLOY.HS188A); - + MaterialGenerator.generate(ALLOY.TITANSTEEL); MaterialGenerator.generate(ALLOY.ARCANITE); - MaterialGenerator.generate(ALLOY.OCTIRON); + MaterialGenerator.generate(ALLOY.OCTIRON); MaterialGenerator.generate(ALLOY.BABBIT_ALLOY, false); MaterialGenerator.generate(ALLOY.BLACK_TITANIUM, false); // High Level Bioplastic MaterialGenerator.generate(ELEMENT.STANDALONE.RHUGNOR, false, false); - - - - - - - - + + + + + + + + //Must be the final Alloy to Generate MaterialGenerator.generate(ALLOY.QUANTUM); @@ -704,8 +685,8 @@ public final class ModItems { dustAer = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().AER, true)[0]; dustIgnis = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().IGNIS, true)[0]; dustTerra = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().TERRA, true)[0]; - dustAqua = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().AQUA, true)[0]; - + dustAqua = ItemUtils.generateSpecialUseDusts(ELEMENT.getInstance().AQUA, true)[0]; + ItemUtils.generateSpecialUseDusts(MISC_MATERIALS.WOODS_GLASS, false); cellHydrogenChlorideMix = new BaseItemCell("hydrogenchloridemix", "Hydrogen Chloride Mix", MISC_MATERIALS.HYDROGEN_CHLORIDE.getRGB()); @@ -734,7 +715,7 @@ public final class ModItems { //fluidFLiBeSalt = ("Li2BeF4", "Li2BeF4", 7430, new short[]{255, 255, 255, 100}, 0); //fluidFLiBeSalt = FluidUtils.addGTFluidNoPrefix("Li2BeF4", "Lithium Tetrafluoroberyllate", new short[]{255, 255, 255, 100}, 0, 743, null, CI.emptyCells(1), 1000, true); //fluidFLiBeSaltBurnt = FluidUtils.addGTFluidNoPrefix("Li2BeF2UF4", "Li2BeF2UF4", new short[]{50, 255, 50, 100}, 0, 743, null, CI.emptyCells(1), 1000, true); - + // LFTR Core Fluid Processing //fluidLftrCore1 = FluidUtils.addGTFluidNoPrefix("LiBeF2UF4FP", "LiBeF2UF4FP", new short[]{110, 255, 110, 100}, 0, 800, null, CI.emptyCells(1), 1000, true); //fluidLftrCore2 = FluidUtils.addGTFluidNoPrefix("UF6F2FP", "UF6F2FP", new short[]{150, 255, 150, 100}, 0, 800, null, CI.emptyCells(1), 1000, true); @@ -745,8 +726,8 @@ public final class ModItems { //fluidLftrBlanket2 = FluidUtils.addGTFluidNoPrefix("LiFBeF2ThF4", "LiFBeF2ThF4", new short[]{100, 150, 100, 100}, 0, 500, null, CI.emptyCells(1), 1000, true); //fluidLftrBlanket3 = FluidUtils.addGTFluidNoPrefix("UF6F2", "UF6F2", new short[]{10, 150, 10, 100}, 0, 500, null, CI.emptyCells(1), 1000, true); fluidNuclearWaste = FluidUtils.addGTFluidNoPrefix("nuclear.waste", "Nuclear Waste", new short[]{10, 250, 10, 100}, 0, 1000, null, CI.emptyCells(1), 1000, true); - - + + //LFTR Control Circuit itemCircuitLFTR = new CoreItem("itemCircuitLFTR", ""+EnumChatFormatting.GREEN+"Control Circuit", AddToCreativeTab.tabMisc, 1, 0, new String[] {"Keeps Multiblocks Stable"}, EnumRarity.epic, EnumChatFormatting.DARK_GREEN, false, null); @@ -760,8 +741,8 @@ public final class ModItems { GT_OreDictUnificator.registerOre("pelletZirconium", new ItemStack(itemZirconiumChlorideCinterPellet)); //Zirconium Chloride dustZrCl4 = ItemUtils.generateSpecialUseDusts("ZrCl4", "ZrCl4", "ZrCl4", Utils.rgbtoHexValue(180, 180, 180))[0]; //http://www.iaea.org/inis/collection/NCLCollectionStore/_Public/39/036/39036750.pdf - dustCookedZrCl4 = ItemUtils.generateSpecialUseDusts("CookedZrCl4", "Cooked ZrCl4", "ZrCl4", Utils.rgbtoHexValue(180, 180, 180))[0]; //http://www.iaea.org/inis/collection/NCLCollectionStore/_Public/39/036/39036750.pdf - + dustCookedZrCl4 = ItemUtils.generateSpecialUseDusts("CookedZrCl4", "Cooked ZrCl4", "ZrCl4", Utils.rgbtoHexValue(180, 180, 180))[0]; //http://www.iaea.org/inis/collection/NCLCollectionStore/_Public/39/036/39036750.pdf + //Zirconium Tetrafluoride /*GT_OreDictUnificator.registerOre("cellZrF4", ItemUtils.getItemStackOfAmountFromOreDict("cellZirconiumTetrafluoride", 1)); GT_OreDictUnificator.registerOre("dustZrF4", ItemUtils.getItemStackOfAmountFromOreDict("dustZirconiumTetrafluoride", 1));*/ @@ -769,7 +750,7 @@ public final class ModItems { //GT_OreDictUnificator.registerOre("dustZrF4", ItemUtils.getItemStackOfAmountFromOreDict("dustZirconiumTetrafluoride", 1)); fluidZrF4 = FluidUtils.generateFluidNoPrefix("ZirconiumTetrafluoride", "Zirconium Tetrafluoride", 500, new short[]{170, 170, 140, 100}); //https://en.wikipedia.org/wiki/Zirconium_tetrafluoride FLUORIDES.ZIRCONIUM_TETRAFLUORIDE.setFluid(fluidZrF4); - + //Coolant Salt //NaBF4 - NaF - 621C //dustNaBF4NaF = ItemUtils.generateSpecialUseDusts("NaBF4NaF", "NaBF4NaF", Utils.rgbtoHexValue(45, 45, 90))[0]; //https://en.wikipedia.org/wiki/Zirconium_tetrafluoride @@ -821,13 +802,13 @@ public final class ModItems { metaItem2.registerItem(3, "Test Item 3", 1000765000, 4, "I Hold EU 3.", 32000); metaItem2.registerItem(4, "Whirlygig", 1043644000, (short) 5, "Spin me right round.", EnumRarity.rare, EnumChatFormatting.DARK_GREEN, true); metaItem2.registerItem(5, "Whirlygig 2", 2124867000, (short) 7, "Spin me right round.", EnumRarity.uncommon, EnumChatFormatting.RED, true); - + toolGregtechPump = new GregtechPump(); toolGregtechPump.registerPumpType(0, "Simple Hand Pump", 0, 0); toolGregtechPump.registerPumpType(1, "Advanced Hand Pump", 32000, 1); toolGregtechPump.registerPumpType(2, "Super Hand Pump", 128000, 2); toolGregtechPump.registerPumpType(3, "Ultimate Hand Pump", 512000, 3); - + //Create Multi-tools //ItemsMultiTools.load(); @@ -838,7 +819,7 @@ public final class ModItems { if (!FluidRegistry.isFluidRegistered("xpjuice")){ FluidUtils.generateFluidNoPrefix("xpjuice", "xpjuice", 0, new short[]{50, 150, 50, 100}); } - + //Industrial Diamonds itemExquisiteIndustrialDiamond = new CoreItem("IndustrialDiamondExquisite", "High Quality Industrial Diamond", tabMisc); ItemStack tempStack = itemExquisiteIndustrialDiamond.getStack(); @@ -846,12 +827,12 @@ public final class ModItems { ItemUtils.addItemToOreDictionary(tempStack, "craftingIndustrialDiamond"); ItemUtils.addItemToOreDictionary(tempStack, "gemExquisiteDiamond"); ItemUtils.addItemToOreDictionary(tempStack, "craftingExquisiteIndustrialDiamond"); - + /* * Decayable Materials */ - + dustNeptunium238 = new DustDecayable("dustNeptunium238", Utils.rgbtoHexValue(175, 240, 75), 50640, new String[] {""+StringUtils.superscript("238Np"), "Result: Plutonium 238 ("+StringUtils.superscript("238Pu")+")"}, ELEMENT.getInstance().PLUTONIUM238.getDust(1).getItem(), 5); dustDecayedRadium226 = ItemUtils.generateSpecialUseDusts("DecayedRadium226", "Decayed Radium-226", "Contains Radon ("+StringUtils.superscript("222Rn")+")", ELEMENT.getInstance().RADIUM.getRgbAsHex())[0]; dustRadium226 = new DustDecayable("dustRadium226", ELEMENT.getInstance().RADIUM.getRgbAsHex(), 90000, new String[] {""+StringUtils.superscript("226Ra"), "Result: Radon ("+StringUtils.superscript("222Rn")+")"}, ItemUtils.getSimpleStack(dustDecayedRadium226).getItem(), 5); @@ -859,17 +840,17 @@ public final class ModItems { dustTechnetium99 = new DustDecayable("dustTechnetium99", ELEMENT.getInstance().TECHNETIUM.getRgbAsHex(), 164500, new String[] {""+StringUtils.superscript("99Mo"), "Result: Ruthenium 99("+StringUtils.superscript("99Ru")+")"}, ELEMENT.getInstance().RUTHENIUM.getDust(1).getItem(), 4); dustTechnetium99M = new DustDecayable("dustTechnetium99M", ELEMENT.getInstance().TECHNETIUM.getRgbAsHex(), 8570, new String[] {""+StringUtils.superscript("99ᵐTc"), "Result: Technicium 99 ("+StringUtils.superscript("99Tc")+")"}, dustTechnetium99, 4); dustMolybdenum99 = new DustDecayable("dustMolybdenum99", ELEMENT.getInstance().MOLYBDENUM.getRgbAsHex(), 16450, new String[] {""+StringUtils.superscript("99Mo"), "Result: Technicium 99ᵐ ("+StringUtils.superscript("99ᵐTc")+")"}, dustTechnetium99M, 4); - + itemIonParticleBase = new IonParticles(); itemStandarParticleBase = new StandardBaseParticles(); - + if (Meta_GT_Proxy.sDoesVolumetricFlaskExist) { Item a8kFlask = VolumetricFlaskHelper.generateNewFlask("Volumetric_Flask_8k", "Large Volumetric Flask", 8000); Item a64kFlask = VolumetricFlaskHelper.generateNewFlask("Volumetric_Flask_32k", "Gigantic Volumetric Flask", 32000); - GregtechItemList.VOLUMETRIC_FLASK_8k.set(a8kFlask); - GregtechItemList.VOLUMETRIC_FLASK_32k.set(a64kFlask); - } - + GregtechItemList.VOLUMETRIC_FLASK_8k.set(a8kFlask); + GregtechItemList.VOLUMETRIC_FLASK_32k.set(a64kFlask); + } + itemBoilerChassis = new ItemBoilerChassis(); itemDehydratorCoilWire = new ItemDehydratorCoilWire(); itemDehydratorCoil = new ItemDehydratorCoil(); @@ -879,36 +860,36 @@ public final class ModItems { itemGrindleTablet = new BaseItemGrindle(); itemDragonJar = new ItemEntityCatcher(); - + itemControlCore = new ItemControlCore(); - + itemSunnariumBit = new ItemSunnariumBit(); //Chemistry new CoalTar(); new RocketFuels(); - + //Nuclear Processing new NuclearChem(); - + //Farm Animal Fun new AgriculturalChem(); - + //General Chemistry new GenericChem(); - + // Milled Ore Processing new MilledOreProcessing(); - + //Bombs itemBombCasing = new CoreItem("itemBombCasing", "Bomb Casing", tabMisc); - itemBombC |
