From f39e8134fcef5da8bd04503c5233b2b6de249b3a Mon Sep 17 00:00:00 2001 From: Alkalus Date: Sat, 28 Mar 2020 02:09:24 +0000 Subject: + Added more 'Special Behaviour' items for my multiblocks as Examples. + Added '/gtpp hand' command. + Added TungstenSteel & Neutronium tool variants to NEI while in dev. + Added Large Semifluid Generator and a crafting recipe for it. + Added Placeholder for Adv. Assembly Line. + Added Distillus Upgrade Chip and a crafting recipe for it. % Updated build.gradle. % Reworked a few recipes. $ Fixed ULV Overflow Covers using 0L Water in assembler. (https://github.com/GTNewHorizons/NewHorizons/issues/5700) $ Fixed Integral Encasement I using 0L Steel in assembler. (https://github.com/GTNewHorizons/NewHorizons/issues/5617) $ Fixed Thaumcraft based FakePlayer's triggering Fluorite drops. (https://github.com/GTNewHorizons/NewHorizons/issues/5744) $ Fixed bad handling of hatch textures on a few multiblocks. $ Semi-Fixed Distillus. $ Fixed Semifluid Generator recipes. $ Fixed Semifluid Generators crashing the game when mined. $ Fixed bad handling of calls to ItemList.java. $ Began work fixing all ASM to be more compatible with ProGuard. $ Fixed compiler complaining about varargs. ^ Bumped version to 1.7.05.x. --- .../gtPlusPlus/core/item/general/ItemGiantEgg.java | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) (limited to 'src/Java/gtPlusPlus/core/item') diff --git a/src/Java/gtPlusPlus/core/item/general/ItemGiantEgg.java b/src/Java/gtPlusPlus/core/item/general/ItemGiantEgg.java index 4abb84a33c..d98b27d163 100644 --- a/src/Java/gtPlusPlus/core/item/general/ItemGiantEgg.java +++ b/src/Java/gtPlusPlus/core/item/general/ItemGiantEgg.java @@ -4,6 +4,14 @@ import static gtPlusPlus.core.lib.CORE.RANDOM; import java.util.List; +import gregtech.api.enums.ItemList; +import gtPlusPlus.core.entity.item.ItemEntityGiantEgg; +import gtPlusPlus.core.item.base.BaseItemBurnable; +import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.util.Utils; +import gtPlusPlus.core.util.math.MathUtils; +import gtPlusPlus.core.util.minecraft.ItemUtils; +import gtPlusPlus.core.util.minecraft.NBTUtils; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityList; @@ -14,16 +22,6 @@ import net.minecraft.util.MathHelper; import net.minecraft.util.StatCollector; import net.minecraft.world.World; -import gregtech.api.enums.ItemList; - -import gtPlusPlus.core.entity.item.ItemEntityGiantEgg; -import gtPlusPlus.core.item.base.BaseItemBurnable; -import gtPlusPlus.core.lib.CORE; -import gtPlusPlus.core.util.Utils; -import gtPlusPlus.core.util.math.MathUtils; -import gtPlusPlus.core.util.minecraft.ItemUtils; -import gtPlusPlus.core.util.minecraft.NBTUtils; - public class ItemGiantEgg extends BaseItemBurnable { public ItemGiantEgg(String unlocalizedName, String displayName, CreativeTabs creativeTab, int stackSize, int maxDmg, @@ -138,7 +136,7 @@ public class ItemGiantEgg extends BaseItemBurnable { if (CORE.MAIN_GREGTECH_5U_EXPERIMENTAL_FORK && Utils.getGregtechSubVersion() > 28) { - ItemList xl = Utils.getValueOfItemList("Circuit_Chip_Stemcell", ItemList.Circuit_Elite); + ItemList xl = ItemUtils.getValueOfItemList("Circuit_Chip_Stemcell", ItemList.Circuit_Elite); if (xl != null && xl.hasBeenSet()) { mCorrectStemCells = xl.get(1); } -- cgit From 254f1af84f1a673523aa936acada7d5b1c1a91c3 Mon Sep 17 00:00:00 2001 From: Alkalus Date: Sat, 28 Mar 2020 14:36:57 +0000 Subject: + Added some new food items. --- src/Java/gtPlusPlus/core/item/ModItems.java | 3 + .../core/item/food/BaseItemMetaFood.java | 430 +++++++++++++++++++++ src/Java/gtPlusPlus/core/item/init/ItemsFoods.java | 42 +- 3 files changed, 471 insertions(+), 4 deletions(-) create mode 100644 src/Java/gtPlusPlus/core/item/food/BaseItemMetaFood.java (limited to 'src/Java/gtPlusPlus/core/item') diff --git a/src/Java/gtPlusPlus/core/item/ModItems.java b/src/Java/gtPlusPlus/core/item/ModItems.java index 354107147b..b0e98d389e 100644 --- a/src/Java/gtPlusPlus/core/item/ModItems.java +++ b/src/Java/gtPlusPlus/core/item/ModItems.java @@ -40,6 +40,7 @@ import gtPlusPlus.core.item.chemistry.RocketFuels; import gtPlusPlus.core.item.chemistry.StandardBaseParticles; import gtPlusPlus.core.item.crafting.ItemDummyResearch; import gtPlusPlus.core.item.effects.RarityUncommon; +import gtPlusPlus.core.item.food.BaseItemMetaFood; import gtPlusPlus.core.item.general.BaseItemGrindle; import gtPlusPlus.core.item.general.BufferCore; import gtPlusPlus.core.item.general.ItemAirFilter; @@ -367,6 +368,8 @@ public final class ModItems { public static CoreItem itemExquisiteIndustrialDiamond; + public static BaseItemMetaFood itemMetaFood; + static { Logger.INFO("Items!"); //Default item used when recipes fail, handy for debugging. Let's make sure they exist when this class is called upon. diff --git a/src/Java/gtPlusPlus/core/item/food/BaseItemMetaFood.java b/src/Java/gtPlusPlus/core/item/food/BaseItemMetaFood.java new file mode 100644 index 0000000000..d6922fbf92 --- /dev/null +++ b/src/Java/gtPlusPlus/core/item/food/BaseItemMetaFood.java @@ -0,0 +1,430 @@ +package gtPlusPlus.core.item.food; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; + +import cpw.mods.fml.common.registry.GameRegistry; +import gtPlusPlus.api.objects.data.AutoMap; +import gtPlusPlus.core.creative.AddToCreativeTab; +import gtPlusPlus.core.item.ModItems; +import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.util.math.MathUtils; +import gtPlusPlus.core.util.minecraft.EntityUtils; +import gtPlusPlus.core.util.minecraft.ItemUtils; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.entity.Entity; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.EnumRarity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemFood; +import net.minecraft.item.ItemStack; +import net.minecraft.potion.Potion; +import net.minecraft.potion.PotionEffect; +import net.minecraft.util.IIcon; +import net.minecraft.world.World; + +public class BaseItemMetaFood extends ItemFood { + + private static final HashMap mIconMap = new HashMap(); + private static int mTotalMetaItems = 0; + + /* + * 0 - Raw Human Meat + * 1 - Cooked Human Meat + * 2 - Raw Horse Meat + * 3 - Cooked Horse Meat + * 4 - Raw Wolf Meat + * 5 - Cooked Wolf Meat + * 6 - Raw Ocelot Meat + * 7 - Cooked Ocelot Meat + * 8 - Blaze Flesh + */ + + //listAllmeatraw + //listAllmeatcooked + + public static void registerMetaFoods() { + registerNewMetaFood(0, "I wouldn't eat this unless I was starving", 2, 0, 64, getPotionEffectPackage(new EffectWeaknessModerate(80), new EffectSlownessModerate(80)), getOreDictNamesAsArrayList("listAllmeatraw")); + registerNewMetaFood(1, "Doesn't look any better cooked", 4, 1, 64, getPotionEffectPackage(new EffectWeaknessBasic(50), new EffectSlownessBasic(50)), getOreDictNamesAsArrayList("listAllmeatcooked")); + registerNewMetaFood(2, "", 2, 0, 64, getPotionEffectPackage(new EffectWeaknessBasic(30), new EffectSlownessBasic(30)), getOreDictNamesAsArrayList("listAllmeatraw")); + registerNewMetaFood(3, "", 4, 1, 64, getOreDictNamesAsArrayList("listAllmeatcooked")); + registerNewMetaFood(4, "", 2, 0, 64, getPotionEffectPackage(new EffectWeaknessBasic(25), new EffectSlownessBasic(30)), getOreDictNamesAsArrayList("listAllmeatraw")); + registerNewMetaFood(5, "", 4, 1, 64, getOreDictNamesAsArrayList("listAllmeatcooked")); + registerNewMetaFood(6, "", 2, 0, 64, getPotionEffectPackage(new EffectWeaknessBasic(30), new EffectSlownessBasic(25)), getOreDictNamesAsArrayList("listAllmeatraw")); + registerNewMetaFood(7, "", 4, 1, 64, getOreDictNamesAsArrayList("listAllmeatcooked")); + registerNewMetaFood(8, "Warm to the touch", EnumRarity.uncommon, 4, 1, 64, new AutoMap(), new setOnFire(), getOreDictNamesAsArrayList("listAllmeatcooked")); + } + + private static final HashMap mMaxStackSizeMap = new HashMap(); + private static final HashMap mTooltipMap = new HashMap(); + private static final HashMap mRarityMap = new HashMap(); + private static final HashMap mHealAmountMap = new HashMap(); + private static final HashMap mSaturationAmountMap = new HashMap(); + private static final HashMap> mPotionEffectsMap = new HashMap>(); + private static final HashMap mHasSpecialBehaviourMap = new HashMap(); + private static final HashMap mSpecialBehaviourMap = new HashMap(); + private static final HashMap> mOreDictNames = new HashMap>(); + + + public static void registerNewMetaFood(final int aMetaID, String aTooltip, final int aHealAmount, final float aSaturationModifier, final int aMaxStacksize) { + registerNewMetaFood(aMetaID, aTooltip, EnumRarity.common, aHealAmount, aSaturationModifier, aMaxStacksize, new AutoMap(), null, new ArrayList()); + } + + public static void registerNewMetaFood(final int aMetaID, String aTooltip, final int aHealAmount, final float aSaturationModifier, final int aMaxStacksize, final ArrayList aOreDictNames) { + registerNewMetaFood(aMetaID, aTooltip, EnumRarity.common, aHealAmount, aSaturationModifier, aMaxStacksize, new AutoMap(), null, aOreDictNames); + } + + + public static void registerNewMetaFood(final int aMetaID, String aTooltip, final int aHealAmount, final float aSaturationModifier, final int aMaxStacksize, final AutoMap aPotionEffects) { + registerNewMetaFood(aMetaID, aTooltip, EnumRarity.common, aHealAmount, aSaturationModifier, aMaxStacksize, new AutoMap(), null, new ArrayList()); + } + + public static void registerNewMetaFood(final int aMetaID, String aTooltip, final int aHealAmount, final float aSaturationModifier, final int aMaxStacksize, final AutoMap aPotionEffects, final ArrayList aOreDictNames) { + registerNewMetaFood(aMetaID, aTooltip, EnumRarity.common, aHealAmount, aSaturationModifier, aMaxStacksize, aPotionEffects, null, aOreDictNames); + } + + public static void registerNewMetaFood(final int aMetaID, String aTooltip, EnumRarity aRarity, final int aHealAmount, final float aSaturationModifier, final int aMaxStacksize, final AutoMap aPotionEffects, final SpecialFoodBehaviour aSpecialBehaviour) { + registerNewMetaFood(aMetaID, aTooltip, EnumRarity.common, aHealAmount, aSaturationModifier, aMaxStacksize, aPotionEffects, null, new ArrayList()); + } + + public static void registerNewMetaFood(final int aMetaID, String aTooltip, EnumRarity aRarity, final int aHealAmount, final float aSaturationModifier, final int aMaxStacksize, final AutoMap aPotionEffects, final SpecialFoodBehaviour aSpecialBehaviour, final ArrayList aOreDictNames) { + mTotalMetaItems++; + mMaxStackSizeMap.put(aMetaID, aMaxStacksize); + mTooltipMap.put(aMetaID, aTooltip); + mRarityMap.put(aMetaID, aRarity); + mHealAmountMap.put(aMetaID, aHealAmount); + mSaturationAmountMap.put(aMetaID, aSaturationModifier); + mPotionEffectsMap.put(aMetaID, aPotionEffects); + mHasSpecialBehaviourMap.put(aMetaID, (aSpecialBehaviour != null)); + if (aSpecialBehaviour != null) { + mSpecialBehaviourMap.put(aMetaID, aSpecialBehaviour); + } + mOreDictNames.put(aMetaID, aOreDictNames); + registerFoodToOreDict(aMetaID); + } + + private static void registerFoodToOreDict(int aMetaID) { + ArrayList aOreDictNames = mOreDictNames.get(aMetaID); + if (aOreDictNames != null && !aOreDictNames.isEmpty()) { + ItemStack aFoodStack = ItemUtils.simpleMetaStack(ModItems.itemMetaFood, aMetaID, 1); + for (String aOreName : aOreDictNames) { + ItemUtils.addItemToOreDictionary(aFoodStack, aOreName); + } + } + } + + + public BaseItemMetaFood() { + super(0, 0, false); + this.setHasSubtypes(true); + this.setNoRepair(); + this.setMaxStackSize(64); + this.setMaxDamage(0); + this.setUnlocalizedName("BasicMetaFood"); + this.setCreativeTab(AddToCreativeTab.tabMisc); + GameRegistry.registerItem(this, this.getUnlocalizedName()); + BaseItemMetaFood.registerMetaFoods(); + } + + private static final int getMetaKey(ItemStack aStack) { + return aStack.getItemDamage(); + } + + // Heal Amount + public int func_150905_g(ItemStack aStack) { + return mHealAmountMap.get(getMetaKey(aStack)); + } + + // Saturation Amount + public float func_150906_h(ItemStack aStack) { + return mSaturationAmountMap.get(getMetaKey(aStack)); + } + + // Whether wolves like this food, sadly doesn't support meta items + public boolean isWolfsFavoriteMeat() { + return false; + } + + @Override + protected void onFoodEaten(final ItemStack aStack, final World aWorld, final EntityPlayer aPlayer) { + //super.onFoodEaten(stack, world, player); + AutoMap aPotionEffects = mPotionEffectsMap.get(getMetaKey(aStack)); + if (!aWorld.isRemote && aPotionEffects != null && aPotionEffects.size() > 0) { + for (PotionEffectPackage aFoodEffect : aPotionEffects) { + if (MathUtils.randInt(0, 100) <= aFoodEffect.getChance() || aFoodEffect.getChance() == 100) { + PotionEffect aEffect = aFoodEffect.getEffect(); + if (aEffect != null && aEffect.getPotionID() > 0) { + aPlayer.addPotionEffect(new PotionEffect(aEffect.getPotionID(), aEffect.getDuration() * 20, aEffect.getAmplifier(), aEffect.getIsAmbient())); + } + } + } + } + + boolean aHasEpcialBehaviour = mHasSpecialBehaviourMap.get(getMetaKey(aStack)); + if (!aWorld.isRemote && aHasEpcialBehaviour) { + SpecialFoodBehaviour aBehaviour = mSpecialBehaviourMap.get(getMetaKey(aStack)); + if (aBehaviour != null) { + aBehaviour.doBehaviour(aPlayer); + } + } + } + + @Override + public ItemStack onEaten(ItemStack aStack, World aWorld, EntityPlayer aPlayer) { + return super.onEaten(aStack, aWorld, aPlayer); + } + + + @Override + public int getItemStackLimit(ItemStack aStack) { + return mMaxStackSizeMap.get(getMetaKey(aStack)); + } + + + @Override + public boolean isDamageable() { + return false; + } + + @Override + public boolean shouldRotateAroundWhenRendering() { + return super.shouldRotateAroundWhenRendering(); + } + + @Override + public void onUpdate(ItemStack p_77663_1_, World p_77663_2_, Entity p_77663_3_, int p_77663_4_, boolean p_77663_5_) { + super.onUpdate(p_77663_1_, p_77663_2_, p_77663_3_, p_77663_4_, p_77663_5_); + } + + @Override + public String getItemStackDisplayName(ItemStack aStack) { + return super.getItemStackDisplayName(aStack); + } + + @Override + public void addInformation(ItemStack aStack, EntityPlayer p_77624_2_, List aList, boolean p_77624_4_) { + try { + String aTooltip = mTooltipMap.get(getMetaKey(aStack)); + if (aTooltip != null && aTooltip.length() > 0) { + aList.add(aTooltip); + } + } + catch (Throwable t) { + t.printStackTrace(); + } + super.addInformation(aStack, p_77624_2_, aList, p_77624_4_); + } + + @Override + public EnumRarity getRarity(ItemStack aStack) { + return mRarityMap.get(getMetaKey(aStack)); + } + + @Override + public boolean requiresMultipleRenderPasses() { + return false; + } + + @Override + public void getSubItems(Item aItem, CreativeTabs p_150895_2_, List aList) { + for (int i=0;i getPotionEffectPackage(PotionEffectPackage... aEffects){ + AutoMap aPackage = new AutoMap(); + if (aEffects != null && aEffects.length > 0) { + for (PotionEffectPackage aEffect : aEffects) { + aPackage.put(aEffect); + } + } + return aPackage; + } + + private static ArrayList getOreDictNamesAsArrayList(String... aOreDictNames){ + ArrayList aPackage = new ArrayList(); + if (aOreDictNames != null && aOreDictNames.length > 0) { + for (String aEffect : aOreDictNames) { + aPackage.add(aEffect); + } + } + return aPackage; + } + + private static class EffectWeaknessBasic extends PotionEffectPackage { + + protected EffectWeaknessBasic(int aChance) { + super(new PotionEffect(Potion.weakness.getId(), 1, 20), aChance); + } + + } + + private static class EffectWeaknessModerate extends PotionEffectPackage { + + protected EffectWeaknessModerate(int aChance) { + super(new PotionEffect(Potion.weakness.getId(), 2, 40), aChance); + } + + } + + private static class EffectWeaknessSevere extends PotionEffectPackage { + + protected EffectWeaknessSevere(int aChance) { + super(new PotionEffect(Potion.weakness.getId(), 3, 60), aChance); + } + + } + + private static class EffectSlownessBasic extends PotionEffectPackage { + + protected EffectSlownessBasic(int aChance) { + super(new PotionEffect(Potion.moveSlowdown.getId(), 1, 20), aChance); + } + + } + + private static class EffectSlownessModerate extends PotionEffectPackage { + + protected EffectSlownessModerate(int aChance) { + super(new PotionEffect(Potion.moveSlowdown.getId(), 2, 40), aChance); + } + + } + + private static class EffectSlownessSevere extends PotionEffectPackage { + + protected EffectSlownessSevere(int aChance) { + super(new PotionEffect(Potion.moveSlowdown.getId(), 3, 60), aChance); + } + + } + + + + + private static abstract class SpecialFoodBehaviour { + + protected final int mChance; + + public SpecialFoodBehaviour(int aChance) { + mChance = aChance; + } + + public final void doBehaviour(EntityPlayer aPlayer) { + if (aPlayer != null && !aPlayer.worldObj.isRemote) { + if (MathUtils.randInt(0, 100) < mChance || mChance == 100) { + behaviour(aPlayer); + } + } + } + + protected abstract void behaviour(EntityPlayer aPlayer); + + } + + + private static class setOnFire extends SpecialFoodBehaviour { + + public setOnFire() { + super(100); + } + + @Override + public void behaviour(EntityPlayer aPlayer) { + EntityUtils.setEntityOnFire(aPlayer, 5); + } + + } + +} \ No newline at end of file diff --git a/src/Java/gtPlusPlus/core/item/init/ItemsFoods.java b/src/Java/gtPlusPlus/core/item/init/ItemsFoods.java index 94ebb3ffcb..7f1ba720cc 100644 --- a/src/Java/gtPlusPlus/core/item/init/ItemsFoods.java +++ b/src/Java/gtPlusPlus/core/item/init/ItemsFoods.java @@ -1,15 +1,22 @@ package gtPlusPlus.core.item.init; -import net.minecraft.potion.Potion; -import net.minecraft.potion.PotionEffect; - import gregtech.api.util.GT_OreDictUnificator; - import gtPlusPlus.core.item.ModItems; import gtPlusPlus.core.item.base.foods.BaseItemFood; import gtPlusPlus.core.item.base.foods.BaseItemHotFood; +import gtPlusPlus.core.item.food.BaseItemMetaFood; import gtPlusPlus.core.lib.CORE; +import gtPlusPlus.core.util.minecraft.EntityUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; +import gtPlusPlus.core.util.minecraft.RecipeUtils; +import net.minecraft.entity.monster.EntityBlaze; +import net.minecraft.entity.passive.EntityHorse; +import net.minecraft.entity.passive.EntityOcelot; +import net.minecraft.entity.passive.EntityVillager; +import net.minecraft.entity.passive.EntityWolf; +import net.minecraft.item.ItemStack; +import net.minecraft.potion.Potion; +import net.minecraft.potion.PotionEffect; public class ItemsFoods { @@ -40,6 +47,33 @@ public class ItemsFoods { ModItems.itemHotFoodCurriedSausages = new BaseItemHotFood("itemHotFoodCurriedSausages", 1, 0.5f, "Curried Sausages", 240, ModItems.itemFoodCurriedSausages); GT_OreDictUnificator.registerOre("foodHotCurriedSausages", ItemUtils.getItemStackFromFQRN(CORE.MODID+":itemHotFoodCurriedSausages", 1)); + ModItems.itemMetaFood = new BaseItemMetaFood(); + addCookingRecipes(); + addFoodDropsToMobs(); + + } + + private static ItemStack getMetaFoodStack(int aID) { + return ItemUtils.simpleMetaStack(ModItems.itemMetaFood, aID, 1); + } + + private static void addCookingRecipes() { + + RecipeUtils.addSmeltingRecipe(getMetaFoodStack(0), getMetaFoodStack(1), 0.4F); + RecipeUtils.addSmeltingRecipe(getMetaFoodStack(2), getMetaFoodStack(3), 0.35F); + RecipeUtils.addSmeltingRecipe(getMetaFoodStack(4), getMetaFoodStack(5), 0.35F); + RecipeUtils.addSmeltingRecipe(getMetaFoodStack(6), getMetaFoodStack(7), 0.35F); + + } + + private static void addFoodDropsToMobs() { + + EntityUtils.registerDropsForMob(EntityVillager.class, getMetaFoodStack(0), 2, 1500); + EntityUtils.registerDropsForMob(EntityHorse.class, getMetaFoodStack(2), 4, 4000); + EntityUtils.registerDropsForMob(EntityWolf.class, getMetaFoodStack(4), 2, 4000); + EntityUtils.registerDropsForMob(EntityOcelot.class, getMetaFoodStack(6), 2, 4000); + EntityUtils.registerDropsForMob(EntityBlaze.class, getMetaFoodStack(8), 1, 500); + } } -- cgit From ba8fce60a7678e166cba78d7f27cdf352dc09c7b Mon Sep 17 00:00:00 2001 From: Alkalus Date: Sat, 28 Mar 2020 23:48:32 +0000 Subject: + Added Boric Acid. + Added Hydrochloric Acid fluid & recipes if it doesn't exist. % Adjust process for obtaining Thorium-232. % Changed Fission Fuel Processing Plant to Reactor Fuel Processing Plant. --- .../core/item/chemistry/GenericChem.java | 111 ++++++++++++++++++--- 1 file changed, 96 insertions(+), 15 deletions(-) (limited to 'src/Java/gtPlusPlus/core/item') diff --git a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java index 49d3303688..8d5b22f2f3 100644 --- a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java +++ b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java @@ -2,7 +2,7 @@ package gtPlusPlus.core.item.chemistry; import gregtech.api.enums.GT_Values; import gregtech.api.enums.TextureSet; -import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_Utility; import gtPlusPlus.api.objects.minecraft.ItemPackage; import gtPlusPlus.core.item.chemistry.general.ItemGenericChemBase; import gtPlusPlus.core.lib.CORE; @@ -16,8 +16,6 @@ import gtPlusPlus.core.recipe.common.CI; import gtPlusPlus.core.util.Utils; import gtPlusPlus.core.util.minecraft.FluidUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; -import gtPlusPlus.plugin.agrichem.item.algae.ItemAgrichemBase; -import net.minecraft.block.Block; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; @@ -64,16 +62,17 @@ public class GenericChem extends ItemPackage { * Fluids */ - public Fluid Benzene; - public Fluid NitroBenzene; - public Fluid Aniline; - public Fluid Polyurethane; - public Fluid Phenol; //https://en.wikipedia.org/wiki/Phenol#Uses - public Fluid Cyclohexane; //https://en.wikipedia.org/wiki/Cyclohexane - public Fluid Cyclohexanone; //https://en.wikipedia.org/wiki/Cyclohexanone - - public Fluid Cadaverine; //https://en.wikipedia.org/wiki/Cadaverine - public Fluid Putrescine; //https://en.wikipedia.org/wiki/Putrescine + public static Fluid Benzene; + public static Fluid NitroBenzene; + public static Fluid Aniline; + public static Fluid Polyurethane; + public static Fluid Phenol; //https://en.wikipedia.org/wiki/Phenol#Uses + public static Fluid Cyclohexane; //https://en.wikipedia.org/wiki/Cyclohexane + public static Fluid Cyclohexanone; //https://en.wikipedia.org/wiki/Cyclohexanone + public static Fluid Cadaverine; //https://en.wikipedia.org/wiki/Cadaverine + public static Fluid Putrescine; //https://en.wikipedia.org/wiki/Putrescine + public static Fluid BoricAcid; + public static Fluid HydrochloricAcid; public static Fluid Ethylanthraquinone2; @@ -158,6 +157,8 @@ public class GenericChem extends ItemPackage { Aniline = FluidUtils.generateFluidNoPrefix("aniline", "Aniline", 266, new short[] { 100, 100, 30, 100 }, true); + BoricAcid = FluidUtils.generateFluidNoPrefix("boricacid", "Boric Acid", 278, new short[] { 90, 30, 120, 100 }, true); + Polyurethane = FluidUtils.generateFluidNoPrefix("polyurethane", "Polyurethane", 350, new short[] { 100, 70, 100, 100 }, true); if (!FluidRegistry.isFluidRegistered("phenol")) { @@ -165,7 +166,15 @@ public class GenericChem extends ItemPackage { } else { Phenol = FluidRegistry.getFluid("phenol"); - } + } + + // Use GT's if it exists, else make our own. + if (!FluidRegistry.isFluidRegistered("hydrochloricacid_gt5u")) { + HydrochloricAcid = FluidRegistry.getFluid("hydrochloricacid_gt5u"); + } + else { + HydrochloricAcid = FluidUtils.generateFluidNoPrefix("hydrochloricacid", "Hydrochloric Acid", 285, new short[] { 183, 200, 196, 100 }, true); + } Cyclohexane = FluidUtils.generateFluidNoPrefix("cyclohexane", "Cyclohexane", 32 + 175, new short[] { 100, 70, 30, 100 }, true); Cyclohexanone = FluidUtils.generateFluidNoPrefix("cyclohexanone", "Cyclohexanone", 32 + 175, new short[] { 100, 70, 30, 100 }, true); @@ -221,11 +230,83 @@ public class GenericChem extends ItemPackage { recipe2Ethylanthrahydroquinone(); recipeHydrogenPeroxide(); recipeLithiumHydroperoxide(); - recipeLithiumPeroxide(); + recipeLithiumPeroxide(); + + if (!HydrochloricAcid.getName().toLowerCase().contains("gt5u")) { + recipeHydrochloricAcid(); + } return true; } + private void recipeHydrochloricAcid() { + + ItemStack aAcidCell = ItemUtils.getItemStackOfAmountFromOreDict("cellHydrochloricAcid", 1); + + GT_Values.RA.addChemicalRecipe( + ELEMENT.getInstance().CHLORINE.getCell(1), + GT_Utility.getIntegratedCircuit(1), + ELEMENT.getInstance().HYDROGEN.getFluid(1000), + FluidUtils.getFluidStack(HydrochloricAcid, 2000), + CI.emptyCells(1), + 60, + 8); + + GT_Values.RA.addChemicalRecipe( + ELEMENT.getInstance().HYDROGEN.getCell(1), + GT_Utility.getIntegratedCircuit(1), + ELEMENT.getInstance().CHLORINE.getFluid(1000), + FluidUtils.getFluidStack(HydrochloricAcid, 2000), + CI.emptyCells(1), + 60, + 8); + + GT_Values.RA.addElectrolyzerRecipe( + CI.emptyCells(1), + GT_Utility.getIntegratedCircuit(1), + FluidUtils.getFluidStack(HydrochloricAcid, 2000), + ELEMENT.getInstance().CHLORINE.getFluid(1000), + ELEMENT.getInstance().HYDROGEN.getCell(1), + GT_Values.NI, + GT_Values.NI, + GT_Values.NI, + GT_Values.NI, + GT_Values.NI, + null, + 720, + 30); + + GT_Values.RA.addElectrolyzerRecipe( + CI.emptyCells(1), + GT_Utility.getIntegratedCircuit(11), + FluidUtils.getFluidStack(HydrochloricAcid, 2000), + ELEMENT.getInstance().HYDROGEN.getFluid(1000), + ELEMENT.getInstance().CHLORINE.getCell(1), + GT_Values.NI, + GT_Values.NI, + GT_Values.NI, + GT_Values.NI, + GT_Values.NI, + null, + 720, + 30); + + GT_Values.RA.addElectrolyzerRecipe( + ItemUtils.getSimpleStack(aAcidCell, 2), + GT_Values.NI, + GT_Values.NF, + GT_Values.NF, + ELEMENT.getInstance().HYDROGEN.getCell(1), + ELEMENT.getInstance().CHLORINE.getCell(1), + GT_Values.NI, + GT_Values.NI, + GT_Values.NI, + GT_Values.NI, + null, + 720, + 30); + } + private void recipeCyclohexane() { CORE.RA.addChemicalPlantRecipe( -- cgit From 8e95eb1c0876f55d9568d704d150a8c38b1c5316 Mon Sep 17 00:00:00 2001 From: Alkalus Date: Sun, 29 Mar 2020 00:14:36 +0000 Subject: % Moved Rocket Fuel production to the Chem Plant. % Adjusted Rocket Fuel recipe values a bit. % Localised a few things. --- .../core/item/chemistry/GenericChem.java | 3 +- .../core/item/chemistry/RocketFuels.java | 603 +++++++-------------- 2 files changed, 188 insertions(+), 418 deletions(-) (limited to 'src/Java/gtPlusPlus/core/item') diff --git a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java index 8d5b22f2f3..80ce0a2abe 100644 --- a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java +++ b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java @@ -232,7 +232,8 @@ public class GenericChem extends ItemPackage { recipeLithiumHydroperoxide(); recipeLithiumPeroxide(); - if (!HydrochloricAcid.getName().toLowerCase().contains("gt5u")) { + // Add recipes if we are not using GT's fluid. + if (!FluidRegistry.isFluidRegistered("hydrochloricacid_gt5u")) { recipeHydrochloricAcid(); } diff --git a/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java b/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java index bbdf322817..158df8f3e9 100644 --- a/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java +++ b/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java @@ -4,18 +4,13 @@ import java.util.HashMap; import java.util.HashSet; import java.util.LinkedHashMap; -import cpw.mods.fml.common.event.FMLLoadCompleteEvent; import gregtech.api.enums.GT_Values; -import gregtech.api.enums.Materials; -import gregtech.api.util.GT_Recipe; import gregtech.api.util.Recipe_GT; -import gtPlusPlus.api.helpers.MaterialHelper; import gtPlusPlus.api.objects.minecraft.ItemPackage; import gtPlusPlus.core.item.base.BaseItemComponent; import gtPlusPlus.core.lib.CORE; import gtPlusPlus.core.recipe.common.CI; import gtPlusPlus.core.util.Utils; -import gtPlusPlus.core.util.math.MathUtils; import gtPlusPlus.core.util.minecraft.FluidUtils; import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.core.util.minecraft.MaterialUtils; @@ -56,28 +51,23 @@ public class RocketFuels extends ItemPackage { public static void createKerosene(){ - - - FluidStack fuelA = FluidUtils.getFluidStack("diesel", 300); - FluidStack fuelB = FluidUtils.getFluidStack("fuel", 300); - - + FluidStack fuelA = FluidUtils.getFluidStack("diesel", 3000); + FluidStack fuelB = FluidUtils.getFluidStack("fuel", 3000); if (fuelA != null){ //GT_Values.RA.addDistilleryRecipe(23, fuelA, FluidUtils.getFluidStack(Kerosene, 50), 200, 64, false); - GT_Values.RA.addDistilleryRecipe(CI.getNumberedCircuit(23), fuelA, FluidUtils.getFluidStack(Kerosene, 100), 200, 64, false); + GT_Values.RA.addDistilleryRecipe(CI.getNumberedCircuit(23), fuelA, FluidUtils.getFluidStack(Kerosene, 1800), 200, 64, false); } if (fuelA == null && fuelB != null){ //GT_Values.RA.addDistilleryRecipe(23, fuelB, FluidUtils.getFluidStack(Kerosene, 50), 200, 64, false); - GT_Values.RA.addDistilleryRecipe(CI.getNumberedCircuit(23), fuelB, FluidUtils.getFluidStack(Kerosene, 100), 200, 64, false); + GT_Values.RA.addDistilleryRecipe(CI.getNumberedCircuit(23), fuelB, FluidUtils.getFluidStack(Kerosene, 1800), 200, 64, false); } } public static void createRP1(){ - FluidStack fuelA = FluidUtils.getFluidStack(Kerosene, 100); + FluidStack fuelA = FluidUtils.getFluidStack(Kerosene, 1000); if (fuelA != null){ - //GT_Values.RA.addDistilleryRecipe(23, fuelA, FluidUtils.getFluidStack(RP1, 25), 400, 120, false); - GT_Values.RA.addDistilleryRecipe(CI.getNumberedCircuit(23), fuelA, FluidUtils.getFluidStack(RP1, 50), 400, 120, false); + GT_Values.RA.addDistilleryRecipe(CI.getNumberedCircuit(23), fuelA, FluidUtils.getFluidStack(RP1, 750), 20 * 40, 120, false); } } @@ -97,39 +87,51 @@ public class RocketFuels extends ItemPackage { 500); } - public static void createHydrazine(){ - GT_Values.RA.addChemicalRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("cellAmmonia", 2), - CI.getNumberedCircuit(23), - FluidUtils.getFluidStack("fluid.hydrogenperoxide", 2000), - FluidUtils.getFluidStack(Hydrazine, 2000), - ItemUtils.getItemStackOfAmountFromOreDict("cellWater", 2), - 20*32); - - GT_Values.RA.addChemicalRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("cellHydrogenPeroxide", 2), - CI.getNumberedCircuit(23), - FluidUtils.getFluidStack("ammonia", 2000), - FluidUtils.getFluidStack(Hydrazine, 2000), - ItemUtils.getItemStackOfAmountFromOreDict("cellWater", 2), - 20*32); + public static void createHydrazine(){ + + CORE.RA.addChemicalPlantRecipe( + new ItemStack[] { + CI.getNumberedCircuit(21) + }, + new FluidStack[] { + FluidUtils.getFluidStack("fluid.hydrogenperoxide", 2000), + FluidUtils.getFluidStack("ammonia", 2000), + }, + new ItemStack[] { + + }, + new FluidStack[] { + FluidUtils.getFluidStack(Hydrazine, 4000), + + }, + 20 * 30, + MaterialUtils.getVoltageForTier(2), + 1); + } public static void createMonomethylhydrazine(){ - CORE.RA.addDehydratorRecipe( + + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { - ItemUtils.getItemStackOfAmountFromOreDict("cellHydrazine", 2), + CI.getNumberedCircuit(21), ItemUtils.getItemStackOfAmountFromOreDict("dustCarbon", 2) }, - FluidUtils.getFluidStack("hydrogen", 2000), - FluidUtils.getFluidStack(Monomethylhydrazine, 3000), + new FluidStack[] { + FluidUtils.getFluidStack("hydrogen", 2000), + FluidUtils.getFluidStack("fluid.hydrazine", 2000), + }, new ItemStack[] { - CI.emptyCells(4) + + }, + new FluidStack[] { + FluidUtils.getFluidStack(Monomethylhydrazine, 4000), + }, - new int[] {10000}, - 20*48, - 240); + 20 * 48, + 240, + 2); } @@ -143,14 +145,26 @@ public class RocketFuels extends ItemPackage { CORE.RA.addAdvancedFreezerRecipe(new ItemStack[] {}, new FluidStack[] {FluidUtils.getFluidStack("hydrogen", 300)}, new FluidStack[] {FluidUtils.getFluidStack(Liquid_Hydrogen, 300)}, new ItemStack[] {}, new int[] {}, 20*4, 540, 0); } - private static void createHydratedAmmoniumNitrateSlurry() { - GT_Values.RA.addChemicalRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("cellAmmonia", 8), - ItemUtils.getItemStackOfAmountFromOreDict("cellNitricAcid", 8), - null, - FluidUtils.getFluidStack(Hydrated_Ammonium_Nitrate_Slurry, 22*144), - null, - 48*16); + private static void createHydratedAmmoniumNitrateSlurry() { + + CORE.RA.addChemicalPlantRecipe( + new ItemStack[] { + CI.getNumberedBioCircuit(21), + }, + new FluidStack[] { + FluidUtils.getFluidStack("ammonia", 8000), + FluidUtils.getFluidStack("nitricacid", 8000), + }, + new ItemStack[] { + + }, + new FluidStack[] { + FluidUtils.getFluidStack(Hydrated_Ammonium_Nitrate_Slurry, 22*144), + + }, + 20 * 48, + 120, + 1); } @@ -162,22 +176,32 @@ public class RocketFuels extends ItemPackage { new ItemStack[] {ItemUtils.getSimpleStack(Ammonium_Nitrate_Dust, 8)}, new int[] {10000}, 90*20, - 500); + 480); } - private static void createFormaldehyde() { - CORE.RA.addDehydratorRecipe( + private static void createFormaldehyde() { + + CORE.RA.addChemicalPlantRecipe( new ItemStack[] { + CI.getNumberedBioCircuit(21), ItemUtils.getSimpleStack(Formaldehyde_Catalyst, 1), - ItemUtils.getItemStackOfAmountFromOreDict("cellOxygen", 16) }, - FluidUtils.getFluidStack("methanol", 32000), - FluidUtils.getFluidStack(Formaldehyde, 8000), - new ItemStack[] {ItemUtils.getItemStackOfAmountFromOreDict("cellWater", 16)}, - new int[] {10000}, - 90*20, - 120); + new FluidStack[] { + FluidUtils.getFluidStack("oxygen", 16000), + FluidUtils.getFluidStack("methanol", 32000), + }, + new ItemStack[] { + + }, + new FluidStack[] { + FluidUtils.getFluidStack(Formaldehyde, 8000), + + }, + 20 * 90, + 120, + 1); + } private static void createFormaldehydeCatalyst() { @@ -194,15 +218,29 @@ public class RocketFuels extends ItemPackage { } - private static void createUnsymmetricalDimethylhydrazine() { - CORE.RA.addChemicalRecipe( - ItemUtils.getItemStackOfAmountFromOreDict("cellHydrazine", 2), - ItemUtils.getItemStackOfAmountFromOreDict("cellFormaldehyde", 2), - FluidUtils.getFluidStack("hydrogen", 4000), - FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine, 1000), - ItemUtils.getItemStackOfAmountFromOreDict("cellWater", 2), - ItemUtils.getItemStackOfAmountFromOreDict("cellEmpty", 2), - 20*60); + private static void createUnsymmetricalDimethylhydrazine() { + + CORE.RA.addChemicalPlantRecipe( + new ItemStack[] { + CI.getNumberedBioCircuit(21), + ItemUtils.getSimpleStack(Formaldehyde_Catalyst, 1), + }, + new FluidStack[] { + FluidUtils.getFluidStack("fluid.hydrazine", 2000), + FluidUtils.getFluidStack(Formaldehyde, 2000), + FluidUtils.getFluidStack("hydrogen", 4000), + }, + new ItemStack[] { + + }, + new FluidStack[] { + FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine, 2000), + FluidUtils.getWater(2000) + + }, + 20 * 60, + 120, + 2); } @@ -275,152 +313,93 @@ public class RocketFuels extends ItemPackage { private static void createRocketFuels() { - //Done - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedCircuit(23), - ItemUtils.getItemStackOfAmountFromOreDict("cellLiquidOxygen", 2), - FluidUtils.getFluidStack(RP1, 500), - FluidUtils.getFluidStack(RP1_Plus_Liquid_Oxygen, 100), - CI.emptyCells(2), - null, - null, - null, - null, - null, - new int[] {10000}, - 20*32, - 480); - - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedCircuit(23), - ItemUtils.getItemStackOfAmountFromOreDict("cellRP1", 1), - FluidUtils.getFluidStack(Liquid_Oxygen, 4000), - FluidUtils.getFluidStack(RP1_Plus_Liquid_Oxygen, 200), - CI.emptyCells(1), - null, - null, - null, - null, - null, - new int[] {10000}, - 20*64, - 480); - - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedCircuit(23), - ItemUtils.getItemStackOfAmountFromOreDict("cellNitrogenTetroxide", 2), - FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine, 2000), - FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide, 1750), - CI.emptyCells(2), - null, - null, - null, - null, - null, - new int[] {10000}, - 20*48, - 480); - - ItemStack aCell11dimethylhydrazine = ItemUtils.getItemStackOfAmountFromOreDict("cell1,1Dimethylhydrazine", 2); - if (ItemUtils.checkForInvalidItems(aCell11dimethylhydrazine)) { - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedCircuit(23), - aCell11dimethylhydrazine, - FluidUtils.getFluidStack(Nitrogen_Tetroxide, 2000), - FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide, 1750), - CI.emptyCells(2), - null, - null, - null, - null, - null, - new int[] {10000}, - 20*48, - 480); - } - else { - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedCircuit(23), - ItemUtils.getItemStackOfAmountFromOreDict("cellUnsymmetricalDimethylhydrazine", 2), - FluidUtils.getFluidStack(Nitrogen_Tetroxide, 2000), - FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide, 1750), - CI.emptyCells(2), - null, - null, - null, - null, - null, - new int[] {10000}, - 20*48, - 480); - } + // RP1_Plus_Liquid_Oxygen + CORE.RA.addChemicalPlantRecipe( + new ItemStack[] { + CI.getNumberedCircuit(23), + }, + new FluidStack[] { + FluidUtils.getFluidStack(Liquid_Oxygen, 2000), + FluidUtils.getFluidStack(RP1, 500), + }, + new ItemStack[] { + }, + new FluidStack[] { + FluidUtils.getFluidStack(RP1_Plus_Liquid_Oxygen, 1000), + + }, + 20 * 30, + 480, + 3); + + + // Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide + CORE.RA.addChemicalPlantRecipe( + new ItemStack[] { + CI.getNumberedCircuit(23), + }, + new FluidStack[] { + FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine, 2000), + FluidUtils.getFluidStack(Nitrogen_Tetroxide, 2000), + }, + new ItemStack[] { + + }, + new FluidStack[] { + FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide, 3000), + + }, + 20 * 48, + 480, + 3); - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedCircuit(23), - ItemUtils.getItemStackOfAmountFromOreDict("cellHydrazine", 4), - FluidUtils.getFluidStack("methanol", 6000), - FluidUtils.getFluidStack(Dense_Hydrazine_Mix, 10000), - CI.emptyCells(4), - null, - null, - null, - null, - null, - new int[] {10000}, - 20*100, - 240); - - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedCircuit(23), - ItemUtils.getItemStackOfAmountFromOreDict("cellMethanol", 6), - FluidUtils.getFluidStack(Hydrazine, 4000), - FluidUtils.getFluidStack(Dense_Hydrazine_Mix, 10000), - CI.emptyCells(6), - null, - null, - null, - null, - null, - new int[] {10000}, - 20*100, - 240); - - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedCircuit(23), - ItemUtils.getItemStackOfAmountFromOreDict("cellNitricAcid", 1), - FluidUtils.getFluidStack(Monomethylhydrazine, 1000), - FluidUtils.getFluidStack(Monomethylhydrazine_Plus_Nitric_Acid, 2000), - CI.emptyCells(1), - null, - null, - null, - null, - null, - new int[] {10000}, - 20*32, - 240); - - GT_Values.RA.addCentrifugeRecipe( - CI.getNumberedCircuit(23), - ItemUtils.getItemStackOfAmountFromOreDict("cellMonomethylhydrazine", 1), - FluidUtils.getFluidStack("nitricacid", 1000), - FluidUtils.getFluidStack(Monomethylhydrazine_Plus_Nitric_Acid, 2000), - CI.emptyCells(1), - null, - null, - null, - null, - null, - new int[] {10000}, - 20*32, - 240); + // Dense_Hydrazine_Mix + CORE.RA.addChemicalPlantRecipe( + new ItemStack[] { + CI.getNumberedCircuit(23), + }, + new FluidStack[] { + FluidUtils.getFluidStack(Hydrazine, 4000), + FluidUtils.getFluidStack("methanol", 6000), + }, + new ItemStack[] { + + }, + new FluidStack[] { + FluidUtils.getFluidStack(Dense_Hydrazine_Mix, 10000), + + }, + 20 * 48, + 240, + 3); + + + // Monomethylhydrazine_Plus_Nitric_Acid + CORE.RA.addChemicalPlantRecipe( + new ItemStack[] { + CI.getNumberedCircuit(23), + }, + new FluidStack[] { + FluidUtils.getFluidStack(Monomethylhydrazine, 1000), + FluidUtils.getFluidStack("nitricacid", 1000), + }, + new ItemStack[] { + + }, + new FluidStack[] { + FluidUtils.getFluidStack(Dense_Hydrazine_Mix, 10000), + + }, + 20 * 32, + 240, + 3); + } @Override public String errorMessage() { - // TODO Auto-generated method stub return "Bad Rocket Fuel Science!"; } @@ -450,216 +429,6 @@ public class RocketFuels extends ItemPackage { return true; } - @Override - public boolean onLoadComplete(FMLLoadCompleteEvent event) { - - - if (MathUtils.randInt(1, 2) > 0) { - return false; - } - - - Materials aMaterial_Chloramine = MaterialUtils.getMaterial("Chloramine"); - Materials aMaterial_Dimethylamine = MaterialUtils.getMaterial("Dimethylamine"); - Materials aMaterial_DilutedHydrochloricAcid = MaterialUtils.getMaterial("DilutedHydrochloricAcid"); - Materials aMaterial_NitrogenDioxide = MaterialUtils.getMaterial("NitrogenDioxide"); - Materials aMaterial_DinitrogenTetroxide = MaterialUtils.getMaterial("DinitrogenTetroxide"); - Materials aMaterial_Dimethylhydrazine = MaterialUtils.getMaterial("Dimethylhydrazine"); - - Materials aMaterial_Oxygen = Materials.Oxygen; - Materials aMaterial_Water = Materials.Water; - Materials aMaterial_HypochlorousAcid = MaterialUtils.getMaterial("HypochlorousAcid"); - Materials aMaterial_Ammonia = MaterialUtils.getMaterial("Ammonia"); - Materials aMaterial_Methanol = MaterialUtils.getMaterial("Methanol"); - - if (aMaterial_Chloramine == null || aMaterial_Dimethylamine == null || aMaterial_DilutedHydrochloricAcid == null - || aMaterial_Dimethylhydrazine == null || aMaterial_NitrogenDioxide == null || aMaterial_DinitrogenTetroxide == null - || aMaterial_HypochlorousAcid == null || aMaterial_Ammonia == null || aMaterial_Methanol == null) { - return false; - } - - - MaterialHelper.getCells(aMaterial_Water, 1); - - ItemStack aCellEmpty = CI.emptyCells(1); - ItemStack aCellWater = MaterialHelper.getCells(aMaterial_Water, 1); - ItemStack aCellOxygen = MaterialHelper.getCells(aMaterial_Oxygen, 1); - ItemStack aCellChloramine = MaterialHelper.getCells(aMaterial_Chloramine, 1); - ItemStack aCellDimethylamine = MaterialHelper.getCells(aMaterial_Dimethylamine, 1); - ItemStack aCellDilutedHydrochloricAcid = MaterialHelper.getCells(aMaterial_DilutedHydrochloricAcid, 1); - ItemStack aCellNitrogenDioxide = MaterialHelper.getCells(aMaterial_NitrogenDioxide, 1); - ItemStack aCellDinitrogenTetroxide = MaterialHelper.getCells(aMaterial_DinitrogenTetroxide, 1); - ItemStack aCellDimethylhydrazine = MaterialHelper.getCells(aMaterial_Dimethylhydrazine, 1); - - - - - - - GT_Recipe aChemReactor_1 = new Recipe_GT( - true, //Optimise - new ItemStack[] {}, //I - new ItemStack[] {}, //O - null, //Special - new int[] {}, //Chance - new FluidStack[] {}, //I - new FluidStack[] {}, //O - 0, //Dura - 0, //Eu - 0); //Special - - GT_Recipe aChemReactor_2 = new Recipe_GT( - true, //Optimise - new ItemStack[] {}, //I - new ItemStack[] {}, //O - null, //Special - new int[] {}, //Chance - new FluidStack[] {}, //I - new FluidStack[] {}, //O - 0, //Dura - 0, //Eu - 0); //Special - - - - - GT_Recipe aChemReactor_Basic_1 = new Recipe_GT( - true, //Optimise - new ItemStack[] {}, //I - new ItemStack[] {}, //O - null, //Special - new int[] {}, //Chance - new FluidStack[] {}, //I - new FluidStack[] {}, //O - 0, //Dura - 0, //Eu - 0); //Special - - GT_Recipe aChemReactor_Basic_2 = new Recipe_GT( - true, //Optimise - new ItemStack[] {}, //I - new ItemStack[] {}, //O - null, //Special - new int[] {}, //Chance - new FluidStack[] {}, //I - new FluidStack[] {}, //O - 0, //Dura - 0, //Eu - 0); //Special - - GT_Recipe aChemReactor_Basic_3 = new Recipe_GT( - true, //Optimise - new ItemStack[] {}, //I - new ItemStack[] {}, //O - null, //Special - new int[] {}, //Chance - new FluidStack[] {}, //I - new FluidStack[] {}, //O - 0, //Dura - 0, //Eu - 0); //Special - - GT_Recipe aChemReactor_Basic_4 = new Recipe_GT( - true, //Optimise - new ItemStack[] {}, //I - new ItemStack[] {}, //O - null, //Special - new int[] {}, //Chance - new FluidStack[] {}, //I - new FluidStack[] {}, //O - 0, //Dura - 0, //Eu - 0); //Special - - - - - - - - - - - - - - GT_Recipe aChemReactor_Adv_1 = new Recipe_GT( - true, //Optimise - new ItemStack[] {}, //I - new ItemStack[] {}, //O - null, //Special - new int[] {}, //Chance - new FluidStack[] {}, //I - new FluidStack[] {}, //O - 0, //Dura - 0, //Eu - 0); //Special - - GT_Recipe aChemReactor_Adv_2 = new Recipe_GT( - true, //Optimise - new ItemStack[] {}, //I - new ItemStack[] {}, //O - null, //Special - new int[] {}, //Chance - new FluidStack[] {}, //I - new FluidStack[] {}, //O - 0, //Dura - 0, //Eu - 0); //Special - - - - - //RecipeUtils.removeGtRecipe(aChemReactor_Basic_1, GT_Recipe.GT_Recipe_Map.sChemicalRecipes); - //RecipeUtils.removeGtRecipe(aChemReactor_Basic_1, GT_Recipe.GT_Recipe_Map.sChemicalRecipes); - //RecipeUtils.removeGtRecipe(aChemReactor_Basic_1, GT_Recipe.GT_Recipe_Map.sChemicalRecipes); - //RecipeUtils.removeGtRecipe(aChemReactor_Basic_1, GT_Recipe.GT_Recipe_Map.sChemicalRecipes); - - - - - - - /* GT_Values.RA.addChemicalRecipe( Materials.Chloramine.getCells(2), GT_Utility.getIntegratedCircuit(1), Materials.Dimethylamine.getGas(5000), Materials.Dimethylhydrazine.getFluid(6000), Materials.DilutedHydrochloricAcid.getCells(1), Materials.Empty.getCells(1), 960, 480); - GT_Values.RA.addChemicalRecipe( Materials.Dimethylamine.getCells(5), GT_Utility.getIntegratedCircuit(1), Materials.Chloramine.getFluid(2000), Materials.Dimethylhydrazine.getFluid(6000), Materials.DilutedHydrochloricAcid.getCells(1), Materials.Empty.getCells(4), 960, 480); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Chloramine.getCells(2), Materials.Empty.getCells(4), Materials.Dimethylamine.getGas(5000), Materials.DilutedHydrochloricAcid.getFluid(1000), Materials.Dimethylhydrazine.getCells(6), GT_Values.NI, 960, 480); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Dimethylamine.getCells(5), Materials.Empty.getCells(1), Materials.Chloramine.getFluid(2000), Materials.DilutedHydrochloricAcid.getFluid(1000), Materials.Dimethylhydrazine.getCells(6), GT_Values.NI, 960, 480); - GT_Values.RA.addChemicalRecipeForBasicMachineOnly(Materials.Dimethylamine.getCells(5), Materials.Chloramine.getCells(2), Materials.Chloramine.getFluid(2000), Materials.DilutedHydrochloricAcid.getFluid(1000), Materials.Dimethylhydrazine.getCells(6), Materials.DilutedHydrochloricAcid.getCells(1), 960, 480); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(24)}, new FluidStack[]{Materials.HypochlorousAcid.getFluid(3000), Materials.Ammonia.getGas(8000), Materials.Methanol.getFluid(12000)}, new FluidStack[]{Materials.Dimethylhydrazine.getFluid(12000), Materials.DilutedHydrochloricAcid.getFluid(2000), Materials.Water.getFluid(9000)}, null, 1040, 480); - - GT_Values.RA.addChemicalRecipe(GT_Utility.getIntegratedCircuit(2), GT_Values.NI, Materials.NitrogenDioxide.getGas(1000), Materials.DinitrogenTetroxide.getGas(1000), GT_Values.NI, 640); - GT_Values.RA.addChemicalRecipe(Materials.NitrogenDioxide.getCells(1), GT_Utility.getIntegratedCircuit(2), GT_Values.NF, Materials.DinitrogenTetroxide.getGas(1000), Materials.Empty.getCells(1), 640); - GT_Values.RA.addChemicalRecipe(Materials.NitrogenDioxide.getCells(1), GT_Utility.getIntegratedCircuit(12), GT_Values.NF, GT_Values.NF, Materials.DinitrogenTetroxide.getCells(1), 640); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(23)}, new FluidStack[]{Materials.Ammonia.getGas(8000), Materials.Oxygen.getGas(7000)}, new FluidStack[]{Materials.DinitrogenTetroxide.getGas(6000), Materials.Water.getFluid(9000)}, null, 480, 30); - GT_Values.RA.addMultiblockChemicalRecipe(new ItemStack[]{GT_Utility.getIntegratedCircuit(23)}, new FluidStack[]{Materials.Nitrogen.getGas(2000), Materials.Hydrogen.getGas(6000), Materials.Oxygen.getGas(7000)}, new FluidStack[]{Materials.DinitrogenTetroxide.getGas(6000), Materials.Water.getFluid(9000)}, null, 1100, 480); - - GT_Values.RA.addMixerRecipe(Materials.Dimethylhydrazine.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.DinitrogenTetroxide.getGas(1000), new FluidStack(ItemList.sRocketFuel, 2000), Materials.Empty.getCells(1), 60, 16); - GT_Values.RA.addMixerRecipe(Materials.DinitrogenTetroxide.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Dimethylhydrazine.getFluid(1000), new FluidStack(ItemList.sRocketFuel, 2000), Materials.Empty.getCells(1), 60, 16); - GT_Values.RA.addMixerRecipe(Materials.Dimethylhydrazine.getCells(2), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Oxygen.getGas(1000), new FluidStack(ItemList.sRocketFuel, 3000), Materials.Empty.getCells(2), 60, 16); - GT_Values.RA.addMixerRecipe(Materials.Oxygen.getCells(1), GT_Values.NI, GT_Values.NI, GT_Values.NI, Materials.Dimethylhydrazine.getFluid(2000), new FluidStack(ItemList.sRocketFuel, 3000), Materials.Empty.getCells(1), 60, 16); - - - */ - - - - - - - - - - //Get Rocket Fuel - - //Find recipes using default values - - //Remove - - //Rebake map - - return true; - }; - @Override public void items() { Formaldehyde_Catalyst = ItemUtils.generateSpecialUseDusts("FormaldehydeCatalyst", "Formaldehyde Catalyst", "Fe16V1", Utils.rgbtoHexValue(25, 5, 25))[0]; @@ -674,7 +443,7 @@ public class RocketFuels extends ItemPackage { //Register default fluids Diesel = MaterialUtils.getMaterial("Fuel", "Diesel").getFluid(1).getFluid(); - + // 5.08 Compat if (!FluidUtils.doesFluidExist("liquid_heavy_oil")){ Oil_Heavy = FluidUtils.generateFluidNoPrefix("liquid_heavy_oil", "Heavy Oil", 200, new short[]{10, 10, 10, 100}); -- cgit From c37f52542e037f5c3394cd72e24934029f09406e Mon Sep 17 00:00:00 2001 From: Alkalus Date: Sun, 29 Mar 2020 00:28:22 +0000 Subject: % Buffered Kerosene output from Coal Tar processing. $ Small fixes to Rocket Fuel recipes. $ Fixed Hydrochloric Acid generating at the wrong time. --- .../gtPlusPlus/core/item/chemistry/CoalTar.java | 6 ++-- .../core/item/chemistry/GenericChem.java | 2 +- .../core/item/chemistry/RocketFuels.java | 42 +++++++++++----------- 3 files changed, 25 insertions(+), 25 deletions(-) (limited to 'src/Java/gtPlusPlus/core/item') diff --git a/src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java b/src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java index 981bfed479..566b8f70a0 100644 --- a/src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java +++ b/src/Java/gtPlusPlus/core/item/chemistry/CoalTar.java @@ -189,20 +189,20 @@ public class CoalTar extends ItemPackage { GT_Values.RA.addDistilleryRecipe( CI.getNumberedCircuit(5), //Circuit FluidUtils.getFluidStack("fluid.coaltar", 1500), //aInput - FluidUtils.getFluidStack("fluid.kerosene", 400), //aOutput + FluidUtils.getFluidStack("fluid.kerosene", 600), //aOutput 300, //aDuration 64,//aEUt false //Hidden? ); GT_Values.RA.addDistillationTowerRecipe( - FluidUtils.getFluidStack("fluid.coaltar", 1000), + FluidUtils.getFluidStack("fluid.coaltar", 1200), new FluidStack[]{ FluidUtils.getFluidStack("fluid.coaltaroil", 500), //aOutput FluidUtils.getFluidStack("liquid_naphtha", 100), //aOutput FluidUtils.getFluidStack("fluid.ethylbenzene", 150), //aOutput FluidUtils.getFluidStack("fluid.anthracene", 50), //aOutput - FluidUtils.getFluidStack("fluid.kerosene", 200), //aOutput + FluidUtils.getFluidStack("fluid.kerosene", 400), //aOutput }, null, 900, diff --git a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java index 80ce0a2abe..4acbcccf52 100644 --- a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java +++ b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java @@ -169,7 +169,7 @@ public class GenericChem extends ItemPackage { } // Use GT's if it exists, else make our own. - if (!FluidRegistry.isFluidRegistered("hydrochloricacid_gt5u")) { + if (FluidRegistry.isFluidRegistered("hydrochloricacid_gt5u")) { HydrochloricAcid = FluidRegistry.getFluid("hydrochloricacid_gt5u"); } else { diff --git a/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java b/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java index 158df8f3e9..9f8d9f60ec 100644 --- a/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java +++ b/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java @@ -120,7 +120,7 @@ public class RocketFuels extends ItemPackage { }, new FluidStack[] { FluidUtils.getFluidStack("hydrogen", 2000), - FluidUtils.getFluidStack("fluid.hydrazine", 2000), + FluidUtils.getFluidStack(Hydrazine, 2000), }, new ItemStack[] { @@ -316,7 +316,7 @@ public class RocketFuels extends ItemPackage { // RP1_Plus_Liquid_Oxygen CORE.RA.addChemicalPlantRecipe( new ItemStack[] { - CI.getNumberedCircuit(23), + CI.getNumberedCircuit(1), }, new FluidStack[] { FluidUtils.getFluidStack(Liquid_Oxygen, 2000), @@ -331,55 +331,55 @@ public class RocketFuels extends ItemPackage { }, 20 * 30, 480, - 3); + 3); - // Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide + // Dense_Hydrazine_Mix CORE.RA.addChemicalPlantRecipe( new ItemStack[] { - CI.getNumberedCircuit(23), + CI.getNumberedCircuit(2), }, new FluidStack[] { - FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine, 2000), - FluidUtils.getFluidStack(Nitrogen_Tetroxide, 2000), + FluidUtils.getFluidStack(Hydrazine, 4000), + FluidUtils.getFluidStack("methanol", 6000), }, new ItemStack[] { }, new FluidStack[] { - FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide, 3000), + FluidUtils.getFluidStack(Dense_Hydrazine_Mix, 10000), }, - 20 * 48, - 480, - 3); + 20 * 40, + 240, + 3); - // Dense_Hydrazine_Mix + // Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide CORE.RA.addChemicalPlantRecipe( new ItemStack[] { - CI.getNumberedCircuit(23), + CI.getNumberedCircuit(3), }, new FluidStack[] { - FluidUtils.getFluidStack(Hydrazine, 4000), - FluidUtils.getFluidStack("methanol", 6000), + FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine, 2000), + FluidUtils.getFluidStack(Nitrogen_Tetroxide, 2000), }, new ItemStack[] { }, new FluidStack[] { - FluidUtils.getFluidStack(Dense_Hydrazine_Mix, 10000), + FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide, 3000), }, - 20 * 48, - 240, + 20 * 50, + 480, 3); // Monomethylhydrazine_Plus_Nitric_Acid CORE.RA.addChemicalPlantRecipe( new ItemStack[] { - CI.getNumberedCircuit(23), + CI.getNumberedCircuit(4), }, new FluidStack[] { FluidUtils.getFluidStack(Monomethylhydrazine, 1000), @@ -389,10 +389,10 @@ public class RocketFuels extends ItemPackage { }, new FluidStack[] { - FluidUtils.getFluidStack(Dense_Hydrazine_Mix, 10000), + FluidUtils.getFluidStack(Monomethylhydrazine_Plus_Nitric_Acid, 10000), }, - 20 * 32, + 20 * 60, 240, 3); -- cgit From 52b3964ac2f92c0586a0ff7780651d62675a0778 Mon Sep 17 00:00:00 2001 From: Alkalus Date: Sun, 29 Mar 2020 00:32:46 +0000 Subject: $ More small recipe fixes. --- src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'src/Java/gtPlusPlus/core/item') diff --git a/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java b/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java index 9f8d9f60ec..ff6576d87e 100644 --- a/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java +++ b/src/Java/gtPlusPlus/core/item/chemistry/RocketFuels.java @@ -152,17 +152,17 @@ public class RocketFuels extends ItemPackage { CI.getNumberedBioCircuit(21), }, new FluidStack[] { - FluidUtils.getFluidStack("ammonia", 8000), - FluidUtils.getFluidStack("nitricacid", 8000), + FluidUtils.getFluidStack("ammonia", 4000), + FluidUtils.getFluidStack("nitricacid", 4000), }, new ItemStack[] { }, new FluidStack[] { - FluidUtils.getFluidStack(Hydrated_Ammonium_Nitrate_Slurry, 22*144), + FluidUtils.getFluidStack(Hydrated_Ammonium_Nitrate_Slurry, 8000), }, - 20 * 48, + 20 * 60, 120, 1); @@ -329,7 +329,7 @@ public class RocketFuels extends ItemPackage { FluidUtils.getFluidStack(RP1_Plus_Liquid_Oxygen, 1000), }, - 20 * 30, + 20 * 15, 480, 3); @@ -350,7 +350,7 @@ public class RocketFuels extends ItemPackage { FluidUtils.getFluidStack(Dense_Hydrazine_Mix, 10000), }, - 20 * 40, + 20 * 30, 240, 3); @@ -371,7 +371,7 @@ public class RocketFuels extends ItemPackage { FluidUtils.getFluidStack(Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide, 3000), }, - 20 * 50, + 20 * 45, 480, 3); @@ -532,7 +532,7 @@ public class RocketFuels extends ItemPackage { } } - Formaldehyde = FluidUtils.generateFluidNonMolten("Formaldehyde", "Formaldehyde", -92, new short[]{150, 75, 150, 100}, null, null); + Formaldehyde = FluidUtils.generateFluidNonMolten("Formaldehyde", "Formaldehyde", 185, new short[]{150, 75, 150, 100}, null, null); Unsymmetrical_Dimethylhydrazine_Plus_Nitrogen_Tetroxide = FluidUtils.generateFluidNonMolten("RocketFuelMixA", "H8N4C2O4 Rocket Fuel", -185, new short[]{50, 220, 50, 100}, null, null); RP1_Plus_Liquid_Oxygen = FluidUtils.generateFluidNonMolten("RocketFuelMixB", "Rp-1 Rocket Fuel", -250, new short[]{250, 50, 50, 100}, null, null); -- cgit From 0fd60ac639521d74f0026505c8f2c8db13750ae5 Mon Sep 17 00:00:00 2001 From: Alkalus Date: Sun, 29 Mar 2020 04:35:20 +0100 Subject: + Added code to remove GT recipes for rocket_fuel and 1,1dimethylhydrazine. % Made Formaldehyde Catalyst handled correctly in Chemical Plant. --- .../core/item/chemistry/GenericChem.java | 4 +- .../core/item/chemistry/RocketFuels.java | 486 ++++++++++++++++++++- 2 files changed, 483 insertions(+), 7 deletions(-) (limited to 'src/Java/gtPlusPlus/core/item') diff --git a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java index 4acbcccf52..88f9bb29a5 100644 --- a/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java +++ b/src/Java/gtPlusPlus/core/item/chemistry/GenericChem.java @@ -244,7 +244,7 @@ public class GenericChem extends ItemPackage { ItemStack aAcidCell = ItemUtils.getItemStackOfAmountFromOreDict("cellHydrochloricAcid", 1); - GT_Values.RA.addChemicalRecipe( + CORE.RA.addChemicalRecipe( ELEMENT.getInstance().CHLORINE.getCell(1), GT_Utility.getIntegratedCircuit(1), ELEMENT.getInstance().HYDROGEN.getFluid(1000), @@ -253,7 +253,7 @@ public class GenericChem extends ItemPackage { 60, 8); - GT_Values.RA.addChemicalRecipe(