From 0b44f401a1c221b54e17dfcbb49dc89dcf8c5e4b Mon Sep 17 00:00:00 2001 From: Boblet Date: Thu, 16 Mar 2023 16:48:34 +0100 Subject: [PATCH] recipes, duct autoconversion, colloid, funny gas --- src/main/java/com/hbm/blocks/ModBlocks.java | 4 +- .../handler/nei/ShredderRecipeHandler.java | 2 +- .../java/com/hbm/inventory/fluid/Fluids.java | 16 +++-- .../inventory/recipes/AssemblerRecipes.java | 68 ++++++++++++++---- .../recipes/CrystallizerRecipes.java | 2 + .../hbm/inventory/recipes/MixerRecipes.java | 1 + .../inventory/recipes/ShredderRecipes.java | 2 +- .../com/hbm/items/weapon/ItemAmmoHIMARS.java | 14 ++-- .../conductor/TileEntityFluidDuctSimple.java | 12 +++- .../conductor/TileEntityGasDuct.java | 14 +++- .../conductor/TileEntityGasDuctSolid.java | 18 +++++ .../conductor/TileEntityOilDuct.java | 11 ++- .../conductor/TileEntityOilDuctSolid.java | 18 +++++ src/main/resources/assets/hbm/lang/de_DE.lang | 1 + src/main/resources/assets/hbm/lang/en_US.lang | 1 + .../hbm/textures/gui/fluids/colloid.png | Bin 0 -> 548 bytes .../hbm/textures/items/ammo_arty_chlorine.png | Bin 0 -> 425 bytes .../textures/items/ammo_arty_mustard_gas.png | Bin 0 -> 402 bytes .../hbm/textures/items/ammo_arty_phosgene.png | Bin 0 -> 391 bytes .../hbm/textures/models/tank/tank_COLLOID.png | Bin 0 -> 1092 bytes 20 files changed, 151 insertions(+), 33 deletions(-) create mode 100644 src/main/resources/assets/hbm/textures/gui/fluids/colloid.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_arty_chlorine.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_arty_mustard_gas.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_arty_phosgene.png create mode 100644 src/main/resources/assets/hbm/textures/models/tank/tank_COLLOID.png diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index d6022d022..afe2c497b 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -1882,12 +1882,12 @@ public class ModBlocks { cable_detector = new CableDetector(Material.iron).setBlockName("cable_detector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); cable_diode = new CableDiode(Material.iron).setBlockName("cable_diode").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":cable_diode"); machine_detector = new PowerDetector(Material.iron).setBlockName("machine_detector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_detector_off"); - oil_duct_solid = new OilDuctSolid(Material.iron).setBlockName("oil_duct_solid").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":oil_duct_solid_alt"); + oil_duct_solid = new OilDuctSolid(Material.iron).setBlockName("oil_duct_solid").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":oil_duct_solid_alt"); oil_duct = new BlockOilDuct(Material.iron).setBlockName("oil_duct").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":oil_duct_icon_alt"); gas_duct_solid = new GasDuctSolid(Material.iron).setBlockName("gas_duct_solid").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":gas_duct_solid"); gas_duct = new BlockGasDuct(Material.iron).setBlockName("gas_duct").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":gas_duct_icon"); fluid_duct = new BlockFluidDuct(Material.iron).setBlockName("fluid_duct").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":fluid_duct_icon"); - fluid_duct_solid = new BlockFluidDuctSolid(Material.iron).setBlockName("fluid_duct_solid").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fluid_duct_solid"); + fluid_duct_solid = new BlockFluidDuctSolid(Material.iron).setBlockName("fluid_duct_solid").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":fluid_duct_solid"); fluid_duct_neo = new FluidDuctStandard(Material.iron).setBlockName("fluid_duct_neo").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pipe_neo"); fluid_duct_box = new FluidDuctBox(Material.iron).setBlockName("fluid_duct_box").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fluid_duct_box"); fluid_duct_paintable = new FluidDuctPaintable().setBlockName("fluid_duct_paintable").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); diff --git a/src/main/java/com/hbm/handler/nei/ShredderRecipeHandler.java b/src/main/java/com/hbm/handler/nei/ShredderRecipeHandler.java index 31b5296b0..396109047 100644 --- a/src/main/java/com/hbm/handler/nei/ShredderRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/ShredderRecipeHandler.java @@ -112,7 +112,7 @@ public class ShredderRecipeHandler extends TemplateRecipeHandler { public void loadUsageRecipes(ItemStack ingredient) { Map recipes = ShredderRecipes.getShredderRecipes(); for(Map.Entry recipe : recipes.entrySet()) { - if(NEIServerUtils.areStacksSameType(ingredient, ((ComparableStack) recipe.getKey()).toStack())) + if(NEIServerUtils.areStacksSameTypeCrafting(ingredient, ((ComparableStack) recipe.getKey()).toStack())) this.arecipes.add(new SmeltingSet(((ComparableStack) recipe.getKey()).toStack(), (ItemStack) recipe.getValue())); } } diff --git a/src/main/java/com/hbm/inventory/fluid/Fluids.java b/src/main/java/com/hbm/inventory/fluid/Fluids.java index 459ca6658..0adaebed3 100644 --- a/src/main/java/com/hbm/inventory/fluid/Fluids.java +++ b/src/main/java/com/hbm/inventory/fluid/Fluids.java @@ -102,7 +102,7 @@ public class Fluids { public static FluidType BLOOD_HOT; public static FluidType SYNGAS; public static FluidType OXYHYDROGEN; - public static FluidType RADIOSOLVENT; + public static FluidType RADIOSOLVENT; //DCM-ish made by wacky radio cracking public static FluidType CHLORINE; //everone's favorite! public static FluidType HEAVYOIL_VACUUM; public static FluidType REFORMATE; @@ -114,6 +114,9 @@ public class Fluids { public static FluidType DIESEL_CRACK_REFORM; public static FluidType KEROSENE_REFORM; public static FluidType REFORMGAS; //MAPD: propyne, propadiene + public static FluidType COLLOID; + public static FluidType PHOSGENE; + public static FluidType MUSTARDGAS; private static final HashMap idMapping = new HashMap(); private static final HashMap nameMapping = new HashMap(); @@ -233,17 +236,21 @@ public class Fluids { SYNGAS = new FluidType("SYNGAS", 0x131313, 1, 4, 2, EnumSymbol.NONE).addTraits(GASEOUS); OXYHYDROGEN = new FluidType("OXYHYDROGEN", 0x483FC1, 0, 4, 2, EnumSymbol.NONE).addTraits(GASEOUS); RADIOSOLVENT = new FluidType("RADIOSOLVENT", 0xA4D7DD, 3, 3, 0, EnumSymbol.NONE).addTraits(LIQUID, LEADCON, new FT_Corrosive(50), new FT_VentRadiation(0.01F)); - CHLORINE = new FluidType("CHLORINE", 0xBAB572, 4, 0, 0, EnumSymbol.OXIDIZER).addTraits(GASEOUS, new FT_Corrosive(25), new FT_Poison(true, 1)); + CHLORINE = new FluidType("CHLORINE", 0xBAB572, 3, 0, 0, EnumSymbol.OXIDIZER).addTraits(GASEOUS, new FT_Corrosive(25), new FT_Poison(true, 1)); HEAVYOIL_VACUUM = new FluidType("HEAVYOIL_VACUUM", 0x131214, 2, 1, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0x513F39, ExtContainer.CANISTER); REFORMATE = new FluidType("REFORMATE", 0x835472, 2, 2, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0xD180D6, ExtContainer.CANISTER); LIGHTOIL_VACUUM = new FluidType("LIGHTOIL_VACUUM", 0x8C8851, 1, 2, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0xB46B52, ExtContainer.CANISTER); - SOURGAS = new FluidType("SOURGAS", 0xC9BE0D, 4, 4, 0, EnumSymbol.ACID).addTraits(GASEOUS, new FT_Corrosive(10)); + SOURGAS = new FluidType("SOURGAS", 0xC9BE0D, 4, 4, 0, EnumSymbol.ACID).addTraits(GASEOUS, new FT_Corrosive(10), new FT_Poison(false, 1)); XYLENE = new FluidType("XYLENE", 0x5C4E76, 2, 3, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0xA380D6, ExtContainer.CANISTER); HEATINGOIL_VACUUM = new FluidType("HEATINGOIL_VACUUM", 0x211D06, 2, 2, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0x694235, ExtContainer.CANISTER); DIESEL_REFORM = new FluidType("DIESEL_REFORM", 0xCDC3C6, 1, 2, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0xFFC500, ExtContainer.CANISTER); DIESEL_CRACK_REFORM = new FluidType("DIESEL_CRACK_REFORM",0xCDC3CC, 1, 2, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0xFFC500, ExtContainer.CANISTER); KEROSENE_REFORM = new FluidType("KEROSENE_REFORM", 0xFFA5F3, 1, 2, 0, EnumSymbol.NONE).addTraits(LIQUID).addContainers(0xFF377D, ExtContainer.CANISTER); - REFORMGAS = new FluidType(99, "REFORMGAS", 0x6362AE, 1, 4, 1, EnumSymbol.NONE).addTraits(GASEOUS); + REFORMGAS = new FluidType("REFORMGAS", 0x6362AE, 1, 4, 1, EnumSymbol.NONE).addTraits(GASEOUS); + COLLOID = new FluidType("COLLOID", 0x787878, 0, 0, 0, EnumSymbol.NONE).addTraits(LIQUID); + //TODO + PHOSGENE = new FluidType("PHOSGENE", 0xffffff, 0, 0, 0, EnumSymbol.NONE).addTraits(GASEOUS); + MUSTARDGAS = new FluidType(102, "MUSTARDGAS", 0xffffff, 0, 0, 0, EnumSymbol.NONE).addTraits(GASEOUS); // ^ ^ ^ ^ ^ ^ ^ ^ @@ -333,6 +340,7 @@ public class Fluids { //processing fluids metaOrder.add(SALIENT); metaOrder.add(SEEDSLURRY); + metaOrder.add(COLLOID); metaOrder.add(ACID); metaOrder.add(SULFURIC_ACID); metaOrder.add(NITRIC_ACID); diff --git a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java index 93639aaa1..086d40f87 100644 --- a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java @@ -31,6 +31,7 @@ import com.hbm.items.ModItems; import com.hbm.items.machine.ItemAssemblyTemplate; import com.hbm.items.machine.ItemDrillbit.EnumDrillType; import com.hbm.items.machine.ItemPistons.EnumPistonType; +import com.hbm.items.weapon.ItemAmmoHIMARS; import com.hbm.main.MainRegistry; import cpw.mods.fml.common.Loader; @@ -815,22 +816,62 @@ public class AssemblerRecipes { new ComparableStack(ModItems.crt_display, 1) }, 300); - makeRecipe(new ComparableStack(ModItems.ammo_himars, 1, 0), new AStack[] { + makeRecipe(new ComparableStack(ModItems.ammo_himars, 1, ItemAmmoHIMARS.SMALL), new AStack[] { new OreDictStack(STEEL.plate(), 24), new OreDictStack(ANY_PLASTIC.ingot(), 12), - new OreDictStack(ANY_SMOKELESS.dust(), 48), - new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 6), - new ComparableStack(ModItems.circuit_copper, 6), - new ComparableStack(ModItems.wire_gold, 12) + new ComparableStack(ModItems.rocket_fuel, 48), + new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 48), + new ComparableStack(ModItems.circuit_copper, 12) }, 100); - - makeRecipe(new ComparableStack(ModItems.ammo_himars, 1, 1), new AStack[] { + makeRecipe(new ComparableStack(ModItems.ammo_himars, 1, ItemAmmoHIMARS.SMALL_HE), new AStack[] { new OreDictStack(STEEL.plate(), 24), - new OreDictStack(ANY_PLASTIC.ingot(), 6), - new OreDictStack(ANY_SMOKELESS.dust(), 36), - new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 4), - new ComparableStack(ModItems.circuit_red_copper, 2), - new ComparableStack(ModItems.wire_gold, 8) + new OreDictStack(ANY_PLASTIC.ingot(), 24), + new ComparableStack(ModItems.rocket_fuel, 48), + new OreDictStack(ANY_PLASTICEXPLOSIVE.ingot(), 18), + new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 48), + new ComparableStack(ModItems.circuit_copper, 12) + }, 100); + makeRecipe(new ComparableStack(ModItems.ammo_himars, 1, ItemAmmoHIMARS.SMALL_WP), new AStack[] { + new OreDictStack(STEEL.plate(), 24), + new OreDictStack(ANY_PLASTIC.ingot(), 24), + new ComparableStack(ModItems.rocket_fuel, 48), + new OreDictStack(P_WHITE.ingot(), 18), + new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 48), + new ComparableStack(ModItems.circuit_copper, 12) + }, 100); + makeRecipe(new ComparableStack(ModItems.ammo_himars, 1, ItemAmmoHIMARS.SMALL_TB), new AStack[] { + new OreDictStack(STEEL.plate(), 24), + new OreDictStack(ANY_PLASTIC.ingot(), 24), + new ComparableStack(ModItems.rocket_fuel, 48), + new ComparableStack(ModItems.ball_tatb, 32), + new OreDictStack(Fluids.KEROSENE_REFORM.getDict(1_000), 12), + new OreDictStack(Fluids.ACID.getDict(1_000), 12), + new ComparableStack(ModItems.circuit_copper, 12) + }, 100); + makeRecipe(new ComparableStack(ModItems.ammo_himars, 1, ItemAmmoHIMARS.SMALL_MINI_NUKE), new AStack[] { + new OreDictStack(STEEL.plate(), 24), + new OreDictStack(ANY_PLASTIC.ingot(), 24), + new ComparableStack(ModItems.rocket_fuel, 48), + new ComparableStack(ModItems.ball_tatb, 6), + new OreDictStack(PU239.nugget(), 12), + new OreDictStack(OreDictManager.getReflector(), 12), + new ComparableStack(ModItems.circuit_copper, 12) + }, 100); + makeRecipe(new ComparableStack(ModItems.ammo_himars, 1, ItemAmmoHIMARS.LARGE), new AStack[] { + new OreDictStack(STEEL.plate(), 24), + new OreDictStack(ANY_HARDPLASTIC.ingot(), 12), + new ComparableStack(ModItems.rocket_fuel, 36), + new ComparableStack(ModItems.ball_tatb, 16), + new ComparableStack(ModItems.circuit_gold, 2), + }, 100); + makeRecipe(new ComparableStack(ModItems.ammo_himars, 1, ItemAmmoHIMARS.LARGE_TB), new AStack[] { + new OreDictStack(STEEL.plate(), 24), + new OreDictStack(ANY_HARDPLASTIC.ingot(), 12), + new ComparableStack(ModItems.rocket_fuel, 36), + new ComparableStack(ModItems.ball_tatb, 24), + new OreDictStack(Fluids.KEROSENE_REFORM.getDict(1_000), 16), + new OreDictStack(Fluids.ACID.getDict(1_000), 16), + new ComparableStack(ModItems.circuit_gold, 2), }, 100); makeRecipe(new ComparableStack(ModBlocks.machine_silex, 1), new AStack[] { @@ -843,7 +884,6 @@ public class AssemblerRecipes { new ComparableStack(ModItems.pipes_steel, 1), new ComparableStack(ModItems.crystal_diamond, 1) }, 400); - makeRecipe(new ComparableStack(Item.getItemFromBlock(ModBlocks.machine_fel), 1), new AStack[] { new ComparableStack(ModBlocks.fusion_conductor, 16), new ComparableStack(ModBlocks.machine_lithium_battery, 2), @@ -854,7 +894,7 @@ public class AssemblerRecipes { new ComparableStack(ModItems.wire_red_copper, 64), new ComparableStack(ModItems.coil_advanced_torus, 16), new ComparableStack(ModItems.circuit_gold, 1) - }, 400); + }, 400); makeRecipe(new ComparableStack(ModBlocks.rbmk_blank, 1), new AStack[] { new ComparableStack(ModBlocks.concrete_asbestos, 4), diff --git a/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java b/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java index 577e98bdd..bc358061b 100644 --- a/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java @@ -133,6 +133,8 @@ public class CrystallizerRecipes extends SerializableRecipe { registerRecipe(new ComparableStack(DictFrame.fromOne(ModItems.oil_tar, EnumTarType.CRUDE)), new CrystallizerRecipe(DictFrame.fromOne(ModItems.oil_tar, EnumTarType.WAX), 20), new FluidStack(Fluids.CHLORINE, 250)); registerRecipe(new ComparableStack(DictFrame.fromOne(ModItems.oil_tar, EnumTarType.CRACK)), new CrystallizerRecipe(DictFrame.fromOne(ModItems.oil_tar, EnumTarType.WAX), 20), new FluidStack(Fluids.CHLORINE, 100)); + registerRecipe(KEY_SAND, new CrystallizerRecipe(Blocks.clay, 20), new FluidStack(Fluids.COLLOID, 1_000)); + List quartz = OreDictionary.getOres("crystalCertusQuartz"); if(quartz != null && !quartz.isEmpty()) { diff --git a/src/main/java/com/hbm/inventory/recipes/MixerRecipes.java b/src/main/java/com/hbm/inventory/recipes/MixerRecipes.java index 608e6f39e..c07b69d6a 100644 --- a/src/main/java/com/hbm/inventory/recipes/MixerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/MixerRecipes.java @@ -34,6 +34,7 @@ public class MixerRecipes extends SerializableRecipe { recipes.put(Fluids.FRACKSOL, new MixerRecipe(1_000, 20).setStack1(new FluidStack(Fluids.WATER, 1_000)).setStack2(new FluidStack(Fluids.PETROLEUM, 100)).setSolid(new OreDictStack(OreDictManager.S.dust()))); recipes.put(Fluids.ENDERJUICE, new MixerRecipe(100, 100).setStack1(new FluidStack(Fluids.XPJUICE, 500)).setSolid(new OreDictStack(OreDictManager.DIAMOND.dust()))); recipes.put(Fluids.SALIENT, new MixerRecipe(1000, 20).setStack1(new FluidStack(Fluids.SEEDSLURRY, 500)).setStack2(new FluidStack(Fluids.BLOOD, 500))); + recipes.put(Fluids.COLLOID, new MixerRecipe(500, 20).setStack1(new FluidStack(Fluids.WATER, 500)).setSolid(new ComparableStack(ModItems.dust))); recipes.put(Fluids.SOLVENT, new MixerRecipe(1000, 50).setStack1(new FluidStack(Fluids.NAPHTHA, 500)).setStack2(new FluidStack(Fluids.AROMATICS, 500))); recipes.put(Fluids.SULFURIC_ACID, new MixerRecipe(500, 50).setStack1(new FluidStack(Fluids.ACID, 800)).setSolid(new OreDictStack(OreDictManager.S.dust()))); diff --git a/src/main/java/com/hbm/inventory/recipes/ShredderRecipes.java b/src/main/java/com/hbm/inventory/recipes/ShredderRecipes.java index b9830f277..f93b75585 100644 --- a/src/main/java/com/hbm/inventory/recipes/ShredderRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/ShredderRecipes.java @@ -166,7 +166,7 @@ public class ShredderRecipes extends SerializableRecipe { ShredderRecipes.setRecipe(Blocks.sandstone_stairs, new ItemStack(Blocks.sand, 6)); ShredderRecipes.setRecipe(Blocks.clay, new ItemStack(Items.clay_ball, 4)); ShredderRecipes.setRecipe(Blocks.hardened_clay, new ItemStack(Items.clay_ball, 4)); - ShredderRecipes.setRecipe(Blocks.tnt, new ItemStack(Items.gunpowder, 5)); + ShredderRecipes.setRecipe(Blocks.tnt, new ItemStack(Items.gunpowder, Compat.isModLoaded(Compat.MOD_GT6) ? 4 : 5)); ShredderRecipes.setRecipe(ModBlocks.stone_gneiss, new ItemStack(ModItems.powder_lithium_tiny, 1)); ShredderRecipes.setRecipe(ModItems.powder_lapis, new ItemStack(ModItems.powder_cobalt_tiny, 1)); ShredderRecipes.setRecipe(ModItems.fragment_neodymium, new ItemStack(ModItems.powder_neodymium_tiny, 1)); diff --git a/src/main/java/com/hbm/items/weapon/ItemAmmoHIMARS.java b/src/main/java/com/hbm/items/weapon/ItemAmmoHIMARS.java index e096d01bc..9d2b1dba1 100644 --- a/src/main/java/com/hbm/items/weapon/ItemAmmoHIMARS.java +++ b/src/main/java/com/hbm/items/weapon/ItemAmmoHIMARS.java @@ -39,13 +39,13 @@ public class ItemAmmoHIMARS extends Item { public static HIMARSRocket[] itemTypes = new HIMARSRocket[ /* >>> */ 7 /* <<< */ ]; - public final int SMALL = 0; - public final int LARGE = 1; - public final int SMALL_HE = 2; - public final int SMALL_WP = 3; - public final int SMALL_TB = 4; - public final int LARGE_TB = 5; - public final int SMALL_MINI_NUKE = 6; + public static final int SMALL = 0; + public static final int LARGE = 1; + public static final int SMALL_HE = 2; + public static final int SMALL_WP = 3; + public static final int SMALL_TB = 4; + public static final int LARGE_TB = 5; + public static final int SMALL_MINI_NUKE = 6; public ItemAmmoHIMARS() { this.setHasSubtypes(true); diff --git a/src/main/java/com/hbm/tileentity/conductor/TileEntityFluidDuctSimple.java b/src/main/java/com/hbm/tileentity/conductor/TileEntityFluidDuctSimple.java index f9b896b0d..60e93c1fd 100644 --- a/src/main/java/com/hbm/tileentity/conductor/TileEntityFluidDuctSimple.java +++ b/src/main/java/com/hbm/tileentity/conductor/TileEntityFluidDuctSimple.java @@ -3,11 +3,13 @@ package com.hbm.tileentity.conductor; import java.util.ArrayList; import java.util.List; +import com.hbm.blocks.ModBlocks; import com.hbm.calc.UnionOfTileEntitiesAndBooleansForFluids; import com.hbm.interfaces.IFluidDuct; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.Library; +import com.hbm.tileentity.network.TileEntityPipeBaseNT; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.network.NetworkManager; @@ -73,11 +75,19 @@ public class TileEntityFluidDuctSimple extends TileEntity implements IFluidDuct @Override public void updateEntity() { - this.updateConnections(); + /*this.updateConnections(); if(lastType != type) { worldObj.markBlockForUpdate(xCoord, yCoord, zCoord); lastType = type; + }*/ + + if(this.getBlockType() == ModBlocks.fluid_duct) worldObj.setBlock(xCoord, yCoord, zCoord, ModBlocks.fluid_duct_neo); + if(this.getBlockType() == ModBlocks.fluid_duct_solid) worldObj.setBlock(xCoord, yCoord, zCoord, ModBlocks.fluid_duct_paintable); + + TileEntity tile = worldObj.getTileEntity(xCoord, yCoord, zCoord); + if(tile instanceof TileEntityPipeBaseNT) { + ((TileEntityPipeBaseNT) tile).setType(this.type); } } diff --git a/src/main/java/com/hbm/tileentity/conductor/TileEntityGasDuct.java b/src/main/java/com/hbm/tileentity/conductor/TileEntityGasDuct.java index 48f619f1c..bcc06b8a4 100644 --- a/src/main/java/com/hbm/tileentity/conductor/TileEntityGasDuct.java +++ b/src/main/java/com/hbm/tileentity/conductor/TileEntityGasDuct.java @@ -3,11 +3,13 @@ package com.hbm.tileentity.conductor; import java.util.ArrayList; import java.util.List; +import com.hbm.blocks.ModBlocks; import com.hbm.calc.UnionOfTileEntitiesAndBooleansForFluids; import com.hbm.interfaces.IFluidDuct; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.Library; +import com.hbm.tileentity.network.TileEntityPipeBaseNT; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -20,10 +22,18 @@ public class TileEntityGasDuct extends TileEntity implements IFluidDuct { public ForgeDirection[] connections = new ForgeDirection[6]; public FluidType type = Fluids.GAS; public List uoteab = new ArrayList(); - + @Override public void updateEntity() { - this.updateConnections(); + + //this.updateConnections(); + + worldObj.setBlock(xCoord, yCoord, zCoord, ModBlocks.fluid_duct_neo, 1, 3); + + TileEntity tile = worldObj.getTileEntity(xCoord, yCoord, zCoord); + if(tile instanceof TileEntityPipeBaseNT) { + ((TileEntityPipeBaseNT) tile).setType(this.type); + } } public void updateConnections() { diff --git a/src/main/java/com/hbm/tileentity/conductor/TileEntityGasDuctSolid.java b/src/main/java/com/hbm/tileentity/conductor/TileEntityGasDuctSolid.java index 760612a1e..a78c2a6e3 100644 --- a/src/main/java/com/hbm/tileentity/conductor/TileEntityGasDuctSolid.java +++ b/src/main/java/com/hbm/tileentity/conductor/TileEntityGasDuctSolid.java @@ -3,10 +3,12 @@ package com.hbm.tileentity.conductor; import java.util.ArrayList; import java.util.List; +import com.hbm.blocks.ModBlocks; import com.hbm.calc.UnionOfTileEntitiesAndBooleansForFluids; import com.hbm.interfaces.IFluidDuct; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; +import com.hbm.tileentity.network.TileEntityPipeBaseNT; import net.minecraft.tileentity.TileEntity; @@ -14,6 +16,22 @@ public class TileEntityGasDuctSolid extends TileEntity implements IFluidDuct { public FluidType type = Fluids.GAS; public List uoteab = new ArrayList(); + + @Override + public void updateEntity() { + + //if(!worldObj.isRemote) + // PacketDispatcher.wrapper.sendToAll(new TEFluidPipePacket(xCoord, yCoord, zCoord, type)); + + //this.updateConnections(); + + worldObj.setBlock(xCoord, yCoord, zCoord, ModBlocks.fluid_duct_paintable); + + TileEntity tile = worldObj.getTileEntity(xCoord, yCoord, zCoord); + if(tile instanceof TileEntityPipeBaseNT) { + ((TileEntityPipeBaseNT) tile).setType(this.type); + } + } @Override public FluidType getType() { diff --git a/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuct.java b/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuct.java index 2df4d8c60..9db606172 100644 --- a/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuct.java +++ b/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuct.java @@ -3,11 +3,13 @@ package com.hbm.tileentity.conductor; import java.util.ArrayList; import java.util.List; +import com.hbm.blocks.ModBlocks; import com.hbm.calc.UnionOfTileEntitiesAndBooleansForFluids; import com.hbm.interfaces.IFluidDuct; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.Library; +import com.hbm.tileentity.network.TileEntityPipeBaseNT; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -31,7 +33,14 @@ public class TileEntityOilDuct extends TileEntity implements IFluidDuct { //if(!worldObj.isRemote) // PacketDispatcher.wrapper.sendToAll(new TEFluidPipePacket(xCoord, yCoord, zCoord, type)); - this.updateConnections(); + //this.updateConnections(); + + worldObj.setBlock(xCoord, yCoord, zCoord, ModBlocks.fluid_duct_neo, 2, 3); + + TileEntity tile = worldObj.getTileEntity(xCoord, yCoord, zCoord); + if(tile instanceof TileEntityPipeBaseNT) { + ((TileEntityPipeBaseNT) tile).setType(this.type); + } } public void updateConnections() { diff --git a/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuctSolid.java b/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuctSolid.java index 059876707..940494cbc 100644 --- a/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuctSolid.java +++ b/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuctSolid.java @@ -3,10 +3,12 @@ package com.hbm.tileentity.conductor; import java.util.ArrayList; import java.util.List; +import com.hbm.blocks.ModBlocks; import com.hbm.calc.UnionOfTileEntitiesAndBooleansForFluids; import com.hbm.interfaces.IFluidDuct; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; +import com.hbm.tileentity.network.TileEntityPipeBaseNT; import net.minecraft.tileentity.TileEntity; @@ -14,6 +16,22 @@ public class TileEntityOilDuctSolid extends TileEntity implements IFluidDuct { public FluidType type = Fluids.OIL; public List uoteab = new ArrayList(); + + @Override + public void updateEntity() { + + //if(!worldObj.isRemote) + // PacketDispatcher.wrapper.sendToAll(new TEFluidPipePacket(xCoord, yCoord, zCoord, type)); + + //this.updateConnections(); + + worldObj.setBlock(xCoord, yCoord, zCoord, ModBlocks.fluid_duct_paintable); + + TileEntity tile = worldObj.getTileEntity(xCoord, yCoord, zCoord); + if(tile instanceof TileEntityPipeBaseNT) { + ((TileEntityPipeBaseNT) tile).setType(this.type); + } + } @Override public FluidType getType() { diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 7f7b61e17..329b5c1d3 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -598,6 +598,7 @@ hbmfluid.chlorine=Chlorgas hbmfluid.coalcreosote=Kohleteer-Kreosot hbmfluid.coalgas=Kohlebenzin hbmfluid.coalgas_leaded=Bleikohlebenzin +hbmfluid.colloid=Kolloid hbmfluid.coaloil=Kohleöl hbmfluid.coolant=Kühlflüssigkeit hbmfluid.coolant_hot=Heiße Kühlflüssigkeit diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 0651c0bc3..5ea4011c9 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -1156,6 +1156,7 @@ hbmfluid.coalcreosote=Coal Tar Creosote hbmfluid.coalgas=Coal Gasoline hbmfluid.coalgas_leaded=Leaded Coal Gasoline hbmfluid.coaloil=Coal Oil +hbmfluid.colloid=Colloid hbmfluid.coolant=Coolant hbmfluid.coolant_hot=Hot Coolant hbmfluid.crackoil=Cracked Oil diff --git a/src/main/resources/assets/hbm/textures/gui/fluids/colloid.png b/src/main/resources/assets/hbm/textures/gui/fluids/colloid.png new file mode 100644 index 0000000000000000000000000000000000000000..bd97d212dc87e645c19d3b29f560978dc19159a5 GIT binary patch literal 548 zcmV+<0^9wGP)hi7M%HyDgn+8D zZ5yh}G)+7`J+bdQtu>r;hzP!vGL)uiBIis>i4X$4cP@eBH~?_Y0Z>XI#)xd&hI5YF z?KWPmwbFYh=ZuIDLcn`Z&UtKAeOM5Y(bjPsqj+6cR230DJ4`DGy9K;nK92ZF-Cgth=_2WC#s67(tF1_N6r~Dqt-fnn;F1pUsdrJylbf{ z^E{JM8k6zfk5K~j-U%UKX84Qlzcy;Elu`zR^E^ieQc9x}0C|3X#(PgniDg+vh*C;p z3f_B`Wx>q2-|yV-_rb#FoJTt%f~rzV!8td$To+$nUNAFCDb!jY9f%0Mch2)9#yG5) z8MoUFU=)9UfAjJ2L5%Tll$~?K*G2vH^_BPccdp0hc^(-krO;X%5tp1Zt+i{Ws4AbI zpM&-_M&}$?>{XSEolMijzVCz(#`lVKtrZbrU03#f=Qs|WbC?;u_lM}Ea{W92>$>vu m^YdRaLkNTr2BX#*BElc};XIEdr@Jix0000Q5w{GTTm?4~ghG*mAkL+rlLSR-ZbZCp(U7FHc*grXe0=Ae3;!$uu)4mi0nQ3v zq|-N|9Y6x$)pkGP7Kqo-qq=Ui14%Ro{k*0xVC0Sg{X@Kj?+onc- zIJcD1(v)1-J#1`$0-#)vvEC1gb~P5_2j%jt2G~9BLYju(Fp+YY?DxnYJVrtSk8?{I z4IoYFL#F#)SV@0UYluilB8sY9g>pTn`(DV8cpOy*7_u~_{n5~JL&TlUDZeQ{?s8Na z;B@{80LK#{laN8tu8QoiB0H?8H3Z7_{4B~OcDsL@&hJu4(+HT99!!dMRYdLp2xx9) z9QJ0O{VZi@x}}aDAr4Y&2psQMSSG)lj}SM`kfph*Cpj$Mi?Q^Z;gEY TI^1?<00000NkvXXu0mjf&bqg^ literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_arty_mustard_gas.png b/src/main/resources/assets/hbm/textures/items/ammo_arty_mustard_gas.png new file mode 100644 index 0000000000000000000000000000000000000000..ce4be2388982f747ebd9d366b3266e08cb400b2f GIT binary patch literal 402 zcmV;D0d4+?P) zwgs+@6@etALpb;c2uVLs6N!6IgKMZePCO5#XMDe3KJW8B&kO&Q0&rYDase)@-=xzI z$|`^uz~^9uv>i+{NuiW?yWK-~SwI4ydJ!j;ic>xrBMcqW)F_nlF2MawJ<^ds%oVe) zFa)(Li^}N)0BJk)-v_jtorMs8&}baE0B7ea!qEMNkJmn`mY{Lh3WdxZ=89PtKp4V@ zjD}-$p&@M<3Wtz~26@zqGlvK`qmx^0NI0cIKSS zIcPUKifJV=tt8Txd`+kREX>Kmbc0LRJ8zh(I^)D^C$i%pBp59Gw$rLVE1@BJ3cl3~ w){~}d(NBnS;>Zb)w@=E_0GMqj>SwO3A2|+#Wr3Jj)c^nh07*qoM6N<$g5g@K+yDRo literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_arty_phosgene.png b/src/main/resources/assets/hbm/textures/items/ammo_arty_phosgene.png new file mode 100644 index 0000000000000000000000000000000000000000..aa4c7cccd1e0f330261db075f5bf1cc8bc055cd1 GIT binary patch literal 391 zcmV;20eJq2P)hH4)oc3ARHxthp{q&vD+D-#qg?1OJo(a9TMD0B)+^WV6r4 zCV&LM=WvYje57NC8x@lVmbUD(4e~Z6T#ev0MlMp6(m5j`T2J$_2s} z)N3wh7c&5q=QH>i(rI;9LiC{7JPH6VuhIzH(hL3f0ckTu^RXQXSvbs>ashy_g@%kr z6D(n(JQWE^L{XKeP@d0tG+}GorCxIpw$K->bO3O0xUZLX_jZ;t`RioKL8sLA#>8vu*##Qn^T^#jmMf~0;KHTVDk002ovPDHLkV1no}rV0Q6 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/tank/tank_COLLOID.png b/src/main/resources/assets/hbm/textures/models/tank/tank_COLLOID.png new file mode 100644 index 0000000000000000000000000000000000000000..1f14fd1066adf07140827e2631e03d306989d1be GIT binary patch literal 1092 zcmV-K1iSl*P)G{6;Agc^3Q%nF^cJjfbZ z^1RO#B>ebzVo9GZD~F)){r&w{^E$k`TrP*D*Tnnwe!qv$&(G)M$Kw&czP_q#%LhfY z^X|TVJRUEPe}8|gZOef|`|xM$4L}1G)+8(-T_S$Poa07$8P zhI*PDNWAJuX}r?pXqxUFppSNf9E~TgUKwf?uckhlt5<_4jaRBUV;rq^TE#0>j(%rD zV5>A-mBV1HBe{jyHGdGfKL+BJAtnbx#N#N@z1F*y(-?!7`5qi!cS zVd4Z!TWpM_Eg)iPi$O6t5F#cABI|fOE{+E%v=bEC39eolvWi#f?K+z8;)w2uHeQu1 zHb=ZNWEHPURzo0Ob%doYuo_47;Iuc$b3{8qyfS1FuhMA65j`MHyeeJCn|Ni&B3_k_ z#uCoKB}IpGUmv&{X8~aZAK2V^U$y=kw|#yQg^N{)mo?d^(+8irf0gPUDs4E=eud zg-(ksJ>IGrugz_t(;`pLr2*LE~PSz)5bKOa1)(gb+fw-EOn{xYb~|dea^6sA)h{=Hv5w8Z-Q@rBdtB!E*6;`9rPEcqkh*yS)R}c}e21UGr zhtK8#H&FOuOK2`VKoZv1ci2jcx9-kc=ZoB1Jrj9;_Ku90000< KMNUMnLSTZo6bT9d literal 0 HcmV?d00001