From 72fad8d2de997bbbb2f4c3dcac27dccc237bcada Mon Sep 17 00:00:00 2001 From: Boblet Date: Thu, 24 Feb 2022 16:22:01 +0100 Subject: [PATCH] metadata canisters, more leaded fuels, more certus quartz yield --- .../hbm/inventory/FluidContainerRegistry.java | 4 + .../com/hbm/inventory/fluid/FluidType.java | 18 +++++ .../java/com/hbm/inventory/fluid/Fluids.java | 26 ++++-- .../inventory/recipes/CentrifugeRecipes.java | 9 ++- .../inventory/recipes/ChemplantRecipes.java | 15 +++- .../recipes/CrystallizerRecipes.java | 2 +- src/main/java/com/hbm/items/ModItems.java | 40 +++++----- .../com/hbm/items/machine/ItemCanister.java | 74 ++++++++++++++++++ .../com/hbm/main/ModEventHandlerClient.java | 2 +- .../hbm/textures/gui/fluids/coalgas.png | Bin 0 -> 501 bytes .../textures/gui/fluids/coalgas_leaded.png | Bin 0 -> 548 bytes .../hbm/textures/gui/fluids/coaloil.png | Bin 0 -> 399 bytes .../hbm/textures/gui/fluids/gasoline.png | Bin 671 -> 591 bytes .../textures/gui/fluids/gasoline_leaded.png | Bin 0 -> 641 bytes .../textures/gui/fluids/petroil_leaded.png | Bin 0 -> 514 bytes .../hbm/textures/items/canister_overlay.png | Bin 0 -> 413 bytes .../items/chem_icon_COALGAS_LEADED.png | Bin 0 -> 592 bytes .../items/chem_icon_GASOLINE_LEADED.png | Bin 0 -> 591 bytes .../items/chem_icon_PETROIL_LEADED.png | Bin 0 -> 581 bytes 19 files changed, 155 insertions(+), 35 deletions(-) create mode 100644 src/main/java/com/hbm/items/machine/ItemCanister.java create mode 100644 src/main/resources/assets/hbm/textures/gui/fluids/coalgas.png create mode 100644 src/main/resources/assets/hbm/textures/gui/fluids/coalgas_leaded.png create mode 100644 src/main/resources/assets/hbm/textures/gui/fluids/coaloil.png create mode 100644 src/main/resources/assets/hbm/textures/gui/fluids/gasoline_leaded.png create mode 100644 src/main/resources/assets/hbm/textures/gui/fluids/petroil_leaded.png create mode 100644 src/main/resources/assets/hbm/textures/items/canister_overlay.png create mode 100644 src/main/resources/assets/hbm/textures/items/chem_icon_COALGAS_LEADED.png create mode 100644 src/main/resources/assets/hbm/textures/items/chem_icon_GASOLINE_LEADED.png create mode 100644 src/main/resources/assets/hbm/textures/items/chem_icon_PETROIL_LEADED.png diff --git a/src/main/java/com/hbm/inventory/FluidContainerRegistry.java b/src/main/java/com/hbm/inventory/FluidContainerRegistry.java index e88ed6eb9..95041df98 100644 --- a/src/main/java/com/hbm/inventory/FluidContainerRegistry.java +++ b/src/main/java/com/hbm/inventory/FluidContainerRegistry.java @@ -6,6 +6,7 @@ import java.util.List; import com.hbm.blocks.ModBlocks; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; +import com.hbm.inventory.fluid.FluidType.ExtContainer; import com.hbm.items.ModItems; import net.minecraft.init.Items; @@ -84,6 +85,9 @@ public class FluidContainerRegistry { FluidType type = fluids[i]; + if(type.containers.contains(ExtContainer.CANISTER)) + FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.canister_full, 1, i), new ItemStack(ModItems.canister_empty), Fluids.fromID(i), 1000)); + if(type.hasNoContainer()) continue; diff --git a/src/main/java/com/hbm/inventory/fluid/FluidType.java b/src/main/java/com/hbm/inventory/fluid/FluidType.java index 42825eaf9..fe8f94440 100644 --- a/src/main/java/com/hbm/inventory/fluid/FluidType.java +++ b/src/main/java/com/hbm/inventory/fluid/FluidType.java @@ -2,7 +2,9 @@ package com.hbm.inventory.fluid; import java.util.ArrayList; import java.util.Collections; +import java.util.HashSet; import java.util.List; +import java.util.Set; import com.hbm.inventory.FluidTank; import com.hbm.lib.RefStrings; @@ -18,6 +20,7 @@ public class FluidType { private int id; //Approximate HEX Color of the fluid, used for pipe rendering private int color; + private int containerColor = 0xffffff; //Unlocalized string ID of the fluid private String unlocalized; @@ -26,6 +29,7 @@ public class FluidType { public int reactivity; public EnumSymbol symbol; public int temperature; + public Set containers = new HashSet(); public List traits = new ArrayList(); private String stringId; @@ -57,6 +61,12 @@ public class FluidType { return this; } + public FluidType addContainers(int color, ExtContainer... containers) { + this.containerColor = color; + Collections.addAll(this.containers, containers); + return this; + } + public FluidType addTraits(FluidTrait... traits) { Collections.addAll(this.traits, traits); return this; @@ -73,6 +83,10 @@ public class FluidType { public int getColor() { return this.color; } + + public int getContainerColor() { + return this.containerColor; + } public ResourceLocation getTexture() { return this.texture; } @@ -145,6 +159,10 @@ public class FluidType { NO_ID; } + public static enum ExtContainer { + CANISTER + } + //shitty wrapper delegates, go! //only used for compatibility purposes, these will be removed soon //don't use these, dumbfuck diff --git a/src/main/java/com/hbm/inventory/fluid/Fluids.java b/src/main/java/com/hbm/inventory/fluid/Fluids.java index aa2fee227..180b1cf2d 100644 --- a/src/main/java/com/hbm/inventory/fluid/Fluids.java +++ b/src/main/java/com/hbm/inventory/fluid/Fluids.java @@ -4,6 +4,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import com.hbm.inventory.fluid.FluidType.ExtContainer; import com.hbm.inventory.fluid.FluidType.FluidTrait; import com.hbm.inventory.fluid.FluidTypeCombustible.FuelGrade; import com.hbm.render.util.EnumSymbol; @@ -30,7 +31,6 @@ public class Fluids { public static FluidType SMEAR; public static FluidType HEATINGOIL; public static FluidType RECLAIMED; - public static FluidType PETROIL; public static FluidType LUBRICANT; public static FluidType NAPHTHA; public static FluidType NAPHTHA_CRACK; @@ -64,8 +64,12 @@ public class Fluids { public static FluidType PAIN; //tantalite solution public static FluidType WASTEFLUID; public static FluidType WASTEGAS; - public static FluidType GASOLINE; //gasoline, leaded + public static FluidType PETROIL; + public static FluidType PETROIL_LEADED; + public static FluidType GASOLINE; + public static FluidType GASOLINE_LEADED; public static FluidType COALGAS; //coal-based gasoline + public static FluidType COALGAS_LEADED; public static FluidType SPENTSTEAM; public static FluidType FRACKSOL; public static FluidType PLASMA_DT; @@ -112,12 +116,12 @@ public class Fluids { LAVA = new FluidType( "LAVA", 0xFF3300, 4, 0, 0, EnumSymbol.NOWATER).setTemp(1200); DEUTERIUM = new FluidTypeCombustible( "DEUTERIUM", 0x0000FF, 3, 4, 0, EnumSymbol.NONE); TRITIUM = new FluidTypeCombustible( "TRITIUM", 0x000099, 3, 4, 0, EnumSymbol.RADIATION); - OIL = new FluidTypeFlammable( "OIL", 0x020202, 2, 1, 0, EnumSymbol.NONE); + OIL = new FluidTypeFlammable( "OIL", 0x020202, 2, 1, 0, EnumSymbol.NONE).addContainers(0x101010, ExtContainer.CANISTER); HOTOIL = new FluidTypeFlammable( "HOTOIL", 0x300900, 2, 3, 0, EnumSymbol.NONE).setTemp(350); - HEAVYOIL = new FluidTypeFlammable( "HEAVYOIL", 0x141312, 2, 1, 0, EnumSymbol.NONE); - BITUMEN = new FluidType( "BITUMEN", 0x1f2426, 2, 0, 0, EnumSymbol.NONE); - SMEAR = new FluidTypeFlammable( "SMEAR", 0x190f01, 2, 1, 0, EnumSymbol.NONE); - HEATINGOIL = new FluidTypeCombustible( "HEATINGOIL", 0x211806, 2, 2, 0, EnumSymbol.NONE); + HEAVYOIL = new FluidTypeFlammable( "HEAVYOIL", 0x141312, 2, 1, 0, EnumSymbol.NONE).addContainers(0x808000, ExtContainer.CANISTER); + BITUMEN = new FluidType( "BITUMEN", 0x1f2426, 2, 0, 0, EnumSymbol.NONE).addContainers(0x101080, ExtContainer.CANISTER); + SMEAR = new FluidTypeFlammable( "SMEAR", 0x190f01, 2, 1, 0, EnumSymbol.NONE).addContainers(0x808030, ExtContainer.CANISTER); + HEATINGOIL = new FluidTypeCombustible( "HEATINGOIL", 0x211806, 2, 2, 0, EnumSymbol.NONE).addContainers(0x404000, ExtContainer.CANISTER); //TODO: and so forth RECLAIMED = new FluidTypeCombustible( "RECLAIMED", 0x332b22, 2, 2, 0, EnumSymbol.NONE); PETROIL = new FluidTypeCombustible( "PETROIL", 0x44413d, 1, 3, 0, EnumSymbol.NONE).setCombustionEnergy(FuelGrade.MEDIUM, 300_000); LUBRICANT = new FluidType( "LUBRICANT", 0x606060, 2, 1, 0, EnumSymbol.NONE); @@ -148,7 +152,7 @@ public class Fluids { PAIN = new FluidType( "PAIN", 0x938541, 2, 0, 1, EnumSymbol.ACID).setTemp(300).addTraits(FluidTrait.CORROSIVE); WASTEFLUID = new FluidType( "WASTEFLUID", 0x544400, 2, 0, 1, EnumSymbol.RADIATION).addTraits(FluidTrait.NO_CONTAINER); WASTEGAS = new FluidType( "WASTEGAS", 0xB8B8B8, 2, 0, 1, EnumSymbol.RADIATION).addTraits(FluidTrait.NO_CONTAINER); - GASOLINE = new FluidTypeCombustible( "GASOLINE", 0x445772, 1, 2, 0, EnumSymbol.NONE).setCombustionEnergy(FuelGrade.HIGH, 1_500_000); + GASOLINE = new FluidTypeCombustible( "GASOLINE", 0x445772, 1, 2, 0, EnumSymbol.NONE).setCombustionEnergy(FuelGrade.HIGH, 1_000_000); COALGAS = new FluidTypeCombustible( "COALGAS", 0x445772, 1, 2, 0, EnumSymbol.NONE).setCombustionEnergy(FuelGrade.MEDIUM, 150_000); SPENTSTEAM = new FluidType( "SPENTSTEAM", 0x445772, 2, 0, 0, EnumSymbol.NONE).addTraits(FluidTrait.NO_CONTAINER); FRACKSOL = new FluidType( "FRACKSOL", 0x798A6B, 1, 3, 3, EnumSymbol.ACID).addTraits(FluidTrait.CORROSIVE); @@ -174,6 +178,9 @@ public class Fluids { SALIENT = new FluidType(69, "SALIENT", 0x457F2D, 0, 0, 0, EnumSymbol.NONE); XPJUICE = new FluidType( "XPJUICE", 0xBBFF09, 0, 0, 0, EnumSymbol.NONE); ENDERJUICE = new FluidType( "ENDERJUICE", 0x127766, 0, 0, 0, EnumSymbol.NONE); + PETROIL_LEADED = new FluidTypeCombustible( "PETROIL_LEADED", 0x44413d, 1, 3, 0, EnumSymbol.NONE).setCombustionEnergy(FuelGrade.MEDIUM, 450_000); + GASOLINE_LEADED = new FluidTypeCombustible( "GASOLINE_LEADED", 0x445772, 1, 2, 0, EnumSymbol.NONE).setCombustionEnergy(FuelGrade.HIGH, 1_500_000); + COALGAS_LEADED = new FluidTypeCombustible( "COALGAS_LEADED", 0x445772, 1, 2, 0, EnumSymbol.NONE).setCombustionEnergy(FuelGrade.MEDIUM, 250_000); // ^ ^ ^ ^ ^ ^ ^ ^ @@ -230,8 +237,11 @@ public class Fluids { metaOrder.add(DIESEL_CRACK); metaOrder.add(KEROSENE); metaOrder.add(PETROIL); + metaOrder.add(PETROIL_LEADED); metaOrder.add(GASOLINE); + metaOrder.add(GASOLINE_LEADED); metaOrder.add(COALGAS); + metaOrder.add(COALGAS_LEADED); metaOrder.add(BIOGAS); metaOrder.add(BIOFUEL); metaOrder.add(ETHANOL); diff --git a/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java b/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java index 3aafade42..b3e251350 100644 --- a/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java @@ -279,12 +279,13 @@ public class CentrifugeRecipes { if(quartz != null && !quartz.isEmpty()) { ItemStack qItem = quartz.get(0).copy(); + qItem.stackSize = 2; recipes.put("oreCertusQuartz", new ItemStack[] { - qItem, - qItem, - qItem, - qItem }); + qItem.copy(), + qItem.copy(), + qItem.copy(), + qItem.copy() }); } recipes.put(new ComparableStack(Items.blaze_rod), new ItemStack[] {new ItemStack(Items.blaze_powder, 1), new ItemStack(Items.blaze_powder, 1), new ItemStack(ModItems.powder_fire, 1), new ItemStack(ModItems.powder_fire, 1) }); diff --git a/src/main/java/com/hbm/inventory/recipes/ChemplantRecipes.java b/src/main/java/com/hbm/inventory/recipes/ChemplantRecipes.java index 9401856a9..aafeb09fa 100644 --- a/src/main/java/com/hbm/inventory/recipes/ChemplantRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/ChemplantRecipes.java @@ -275,10 +275,21 @@ public class ChemplantRecipes { new FluidStack(Fluids.PETROLEUM, 100), new FluidStack(Fluids.STEAM, 1000)) .outputItems(new ItemStack(ModItems.antiknock))); - recipes.add(new ChemRecipe(71, "GASOLINE", 40) + recipes.add(new ChemRecipe(86, "PETROIL_LEADED", 40) .inputItems(new ComparableStack(ModItems.antiknock)) .inputFluids(new FluidStack(Fluids.PETROIL, 10_000)) - .outputFluids(new FluidStack(Fluids.GASOLINE, 12_000))); + .outputFluids(new FluidStack(Fluids.PETROIL_LEADED, 12_000))); + recipes.add(new ChemRecipe(71, "GASOLINE", 40) + .inputFluids(new FluidStack(Fluids.NAPHTHA, 1000)) + .outputFluids(new FluidStack(Fluids.GASOLINE, 800))); + recipes.add(new ChemRecipe(85, "GASOLINE_LEADED", 40) + .inputItems(new ComparableStack(ModItems.antiknock)) + .inputFluids(new FluidStack(Fluids.GASOLINE, 10_000)) + .outputFluids(new FluidStack(Fluids.GASOLINE_LEADED, 12_000))); + recipes.add(new ChemRecipe(87, "COALGAS_LEADED", 40) + .inputItems(new ComparableStack(ModItems.antiknock)) + .inputFluids(new FluidStack(Fluids.COALGAS, 10_000)) + .outputFluids(new FluidStack(Fluids.COALGAS_LEADED, 12_000))); recipes.add(new ChemRecipe(72, "FRACKSOL", 20) .inputItems(new OreDictStack(S.dust())) .inputFluids( diff --git a/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java b/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java index 9aeb73bec..ae462ead1 100644 --- a/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java @@ -89,7 +89,7 @@ public class CrystallizerRecipes { if(quartz != null && !quartz.isEmpty()) { ItemStack qItem = quartz.get(0).copy(); - qItem.stackSize = 6; + qItem.stackSize = 12; recipes.put("oreCertusQuartz", qItem); } diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 95e2c6fb7..e98200508 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -848,8 +848,9 @@ public class ModItems { public static Item inf_water_mk2; public static Item antiknock; - + public static Item canister_empty; + public static Item canister_full; public static Item canister_smear; public static Item canister_canola; public static Item canister_oil; @@ -3276,24 +3277,25 @@ public class ModItems { antiknock = new Item().setUnlocalizedName("antiknock").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":antiknock"); canister_empty = new ItemCustomLore().setUnlocalizedName("canister_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":canister_empty"); - canister_smear = new ItemCustomLore().setUnlocalizedName("canister_smear").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_smear"); - canister_canola = new ItemCustomLore().setUnlocalizedName("canister_canola").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_canola"); - canister_oil = new ItemCustomLore().setUnlocalizedName("canister_oil").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_oil"); - canister_fuel = new ItemCustomLore().setUnlocalizedName("canister_fuel").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_fuel"); - canister_kerosene = new ItemCustomLore().setUnlocalizedName("canister_kerosene").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_kerosene"); - canister_reoil = new ItemCustomLore().setUnlocalizedName("canister_reoil").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_reoil"); - canister_petroil = new ItemCustomLore().setUnlocalizedName("canister_petroil").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_petroil"); - canister_napalm = new ItemCustomLore().setUnlocalizedName("canister_napalm").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_napalm"); - canister_gasoline = new ItemCustomLore().setUnlocalizedName("canister_gasoline").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_gasoline"); - canister_fracksol = new ItemCustomLore().setUnlocalizedName("canister_fracksol").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_fracksol"); - canister_NITAN = new ItemCustomLore().setUnlocalizedName("canister_NITAN").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_superfuel"); - canister_heavyoil = new ItemCustomLore().setUnlocalizedName("canister_heavyoil").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_heavyoil"); - canister_bitumen = new ItemCustomLore().setUnlocalizedName("canister_bitumen").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_bitumen"); - canister_heatingoil = new ItemCustomLore().setUnlocalizedName("canister_heatingoil").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_heatingoil"); - canister_naphtha = new ItemCustomLore().setUnlocalizedName("canister_naphtha").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_naphtha"); - canister_lightoil = new ItemCustomLore().setUnlocalizedName("canister_lightoil").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_lightoil"); - canister_biofuel = new ItemCustomLore().setUnlocalizedName("canister_biofuel").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_biofuel"); - canister_ethanol = new ItemCustomLore().setUnlocalizedName("canister_ethanol").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_ethanol"); + canister_full = new ItemCanister().setUnlocalizedName("canister_full").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_full"); + canister_smear = new ItemCustomLore().setUnlocalizedName("canister_smear").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_smear"); + canister_canola = new ItemCustomLore().setUnlocalizedName("canister_canola").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_canola"); + canister_oil = new ItemCustomLore().setUnlocalizedName("canister_oil").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_oil"); + canister_fuel = new ItemCustomLore().setUnlocalizedName("canister_fuel").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_fuel"); + canister_kerosene = new ItemCustomLore().setUnlocalizedName("canister_kerosene").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_kerosene"); + canister_reoil = new ItemCustomLore().setUnlocalizedName("canister_reoil").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_reoil"); + canister_petroil = new ItemCustomLore().setUnlocalizedName("canister_petroil").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_petroil"); + canister_napalm = new ItemCustomLore().setUnlocalizedName("canister_napalm").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_napalm"); + canister_gasoline = new ItemCustomLore().setUnlocalizedName("canister_gasoline").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_gasoline"); + canister_fracksol = new ItemCustomLore().setUnlocalizedName("canister_fracksol").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_fracksol"); + canister_NITAN = new ItemCustomLore().setUnlocalizedName("canister_NITAN").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_superfuel"); + canister_heavyoil = new ItemCustomLore().setUnlocalizedName("canister_heavyoil").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_heavyoil"); + canister_bitumen = new ItemCustomLore().setUnlocalizedName("canister_bitumen").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_bitumen"); + canister_heatingoil = new ItemCustomLore().setUnlocalizedName("canister_heatingoil").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_heatingoil"); + canister_naphtha = new ItemCustomLore().setUnlocalizedName("canister_naphtha").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_naphtha"); + canister_lightoil = new ItemCustomLore().setUnlocalizedName("canister_lightoil").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_lightoil"); + canister_biofuel = new ItemCustomLore().setUnlocalizedName("canister_biofuel").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_biofuel"); + canister_ethanol = new ItemCustomLore().setUnlocalizedName("canister_ethanol").setCreativeTab(null).setContainerItem(ModItems.canister_empty).setTextureName(RefStrings.MODID + ":canister_ethanol"); gas_empty = new Item().setUnlocalizedName("gas_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":gas_empty"); gas_full = new Item().setUnlocalizedName("gas_full").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.gas_empty).setTextureName(RefStrings.MODID + ":gas_full"); gas_petroleum = new Item().setUnlocalizedName("gas_petroleum").setCreativeTab(MainRegistry.controlTab).setContainerItem(ModItems.gas_empty).setTextureName(RefStrings.MODID + ":gas_petroleum"); diff --git a/src/main/java/com/hbm/items/machine/ItemCanister.java b/src/main/java/com/hbm/items/machine/ItemCanister.java new file mode 100644 index 000000000..a7a853e3f --- /dev/null +++ b/src/main/java/com/hbm/items/machine/ItemCanister.java @@ -0,0 +1,74 @@ +package com.hbm.items.machine; + +import java.util.List; + +import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.FluidType.ExtContainer; +import com.hbm.inventory.fluid.Fluids; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; + +public class ItemCanister extends Item { + + IIcon overlayIcon; + + public ItemCanister() { + this.setHasSubtypes(true); + this.setMaxDamage(0); + } + + @Override + @SideOnly(Side.CLIENT) + public void getSubItems(Item item, CreativeTabs tabs, List list) { + + FluidType[] order = Fluids.getInNiceOrder(); + for(int i = 1; i < order.length; ++i) { + FluidType type = order[i]; + + if(type.containers.contains(ExtContainer.CANISTER)) { + list.add(new ItemStack(item, 1, type.getID())); + } + } + } + + @Override + @SideOnly(Side.CLIENT) + public boolean requiresMultipleRenderPasses() { + return true; + } + + @Override + @SideOnly(Side.CLIENT) + public void registerIcons(IIconRegister reg) { + super.registerIcons(reg); + this.overlayIcon = reg.registerIcon("hbm:canister_overlay"); + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIconFromDamageForRenderPass(int p_77618_1_, int p_77618_2_) { + return p_77618_2_ == 1 ? this.overlayIcon : super.getIconFromDamageForRenderPass(p_77618_1_, p_77618_2_); + } + + @Override + @SideOnly(Side.CLIENT) + public int getColorFromItemStack(ItemStack stack, int p_82790_2_) { + if(p_82790_2_ == 0) { + return 16777215; + } else { + int j = Fluids.fromID(stack.getItemDamage()).getContainerColor(); + + if(j < 0) { + j = 16777215; + } + + return j; + } + } +} diff --git a/src/main/java/com/hbm/main/ModEventHandlerClient.java b/src/main/java/com/hbm/main/ModEventHandlerClient.java index 42688a750..95068fd96 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerClient.java +++ b/src/main/java/com/hbm/main/ModEventHandlerClient.java @@ -549,7 +549,7 @@ public class ModEventHandlerClient { int breeder = TileEntityNukeFurnace.getFuelValue(stack); if(breeder != 0) { - list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.furnace", (breeder * 5))); + list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("trait.furnace", breeder)); } /// CUSTOM NUKE /// diff --git a/src/main/resources/assets/hbm/textures/gui/fluids/coalgas.png b/src/main/resources/assets/hbm/textures/gui/fluids/coalgas.png new file mode 100644 index 0000000000000000000000000000000000000000..3f085dbf7ac6bb6e9d42cb0c8370374900a32144 GIT binary patch literal 501 zcmV-G9Gjw1jfLI{BrT5F6kh)B+@wbXS@(=<5eux;C-lp@B6QVOj#T5DpA z#29l!5n)*ty!Z5d&+GLf#)vh>pp-&H@`3cNl)_qzQVQo>p3Hmy_dh@gAs37>)OAe= zA>W?rT5HB}%z2CvoA4Q9^4j-3F~)pYDTVib!;Mmk5CS&c3}gseYn*c|%aWTEMZq*p zhzKH*Vc5E^S(XJ6*)*D_DUS+}lxmtL6aD-9i><1PjJv8T=6TLg(%QBy z#u&=7{K{HY6~izfB3NtL@AvF>JG!phKuY{*t(oVUX_~0(8g;o`e)vzE&*zN)cDu3W zN^70XWs@9f#I)glzyIS%V@y_~D2lHNsZ)xz`%=EHC0XZr{&KJ$Ep1rGI$v8n#`xuJ z{aDiGB;VT7MNwdkVHk!D4;u(;9@2N_P?jZ! r!+{V2pU;O70^WO`&*#P$$zXo~Qq3_c9_w9N00000NkvXXu0mjfB{SqL literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/gui/fluids/coalgas_leaded.png b/src/main/resources/assets/hbm/textures/gui/fluids/coalgas_leaded.png new file mode 100644 index 0000000000000000000000000000000000000000..c4e45f35e8adbad32a23774bcc80f680c456162d GIT binary patch literal 548 zcmV+<0^9wGP);O@k=zo4P@8I)<7S_>bCMT9b!FWQI*R*ksc4B+lqHAID>A6S-U z14%KF=Zu>-vFFA*rj%Hg1vf{e0pT#`d7}z&$rk|jH~Z#}DDUTY;xG){|G4M%?UnQS zys17617#^&D|~#$(})IT=m%7^0Zf+(Gb6^x@NHnX+i^ahahzH!s@il40Trbzg*<0c zO2p^qXRd3SCXUA=4-XIQb~{9b$G?v_&Qg|5L^ES7W6OcNe^UL}@bvifUm`;Yn;Wr< z&4ty*wVW2FZS0O)n=7RtG+URlv}j-32z>cpExcy3vUQrBF=*Hx%eq-aJ|B?-0$tY; zG;p~zJ5}2Hmlm#dSShZdy8V8OnQ?b_$IHtLdCrIkF?Nx@>nTeUr|*0A`#rT*PNx&K mR^~EuI2ByQ}r3Ee*!8 z!^iXa`~-k81_)K%zW>6JQosB}C#6ijDdE&aRP&4NYB`e9Q2mplrQ`&k0VP?oV$2-Z~9kR+?p{g)5 zs4CnYt+mY)5{Za}B$6?O-utGCo7Xy7`{Cm4c0(!US7r1_L@>s{u_i!V*9CV6BVLhn z-cl2qv-Uj3_)&Pj-vI!vwMZl9452xcMx*AO;SB)1-*1#swiJ5r|2$x^nT6!udz?zt zTH)?6v;T9zsashek4MbLoD(Uf7-gzu?Xlhi5rL}W^?HHI*cO28j_|;P#;7VKDp!w$KhE>qdSx;M2aTkBegT3R0~9jECh-6O002ovPDHLkV1hQrv^xL* literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/gui/fluids/gasoline.png b/src/main/resources/assets/hbm/textures/gui/fluids/gasoline.png index 8a7b8a4fd4308fcd23af26f5fb2cae5de7b87585..58440ebc7a69ffcf8adbc9caf6854c8ca99a9066 100644 GIT binary patch delta 550 zcmV+>0@?ka1zfB)+MY)HHR}rm8@qV#S^{M{GMmxL1co3O zV{HzA){4EoF-P+QPLCo02CrVfIcLaDk=6?5Jbh(0gPMON&40uIP?jF&J=sG>W@$bi z!fZN42*Js5%!ADk1I79-p)8vLa;N(c%*3!bjBuqVP4jM2o_qEJ!#ddj5QZUDRUzA* zTPIp8zI?l;uB)B3?vkW??$*jOWIGukFADOaU_2TTMIqKc<}iN}vA#>XJlerBj^`B4 z;hbkY8g(wxG=E13K@cc_uK4-0C1b6SLa@5NK`svWIXjK{xVm9=b%S#r=R8pqlBPM< zLRD3irKhZFEL?1$X`O7UgAz44NR*@W-wdjPEUjI;(|q%}$pvDR~& zY>4O4mV^JuR~~9mN;MhvveHUXR`nwXEd#BFLxJkSrGJ&e7=sX^qtciLHu-lkH9IG4 zow#DN?cOxZY=#L8(iNUQ%6*$ssxG|tLfyc+Ip@$!OtW8)a}yYhX@HSZbzGbr$4IG~ z_gnB968jE1P#&pU97eo&dPGrHygXa-;o@`0g`7>NM6;01?}n^-G-bJnsH&RFuRrjv o<{>M%xF1}Rrg`_52EiDBKUq-+Qr^0R#sB~S07*qoM6N<$f>h!N?EnA( delta 630 zcmV-+0*U?41fK-(=2wXU;j}efaq4;N)xs zfYF8|%UD#b6j9V*GARI%zNFoX*z9%Kf7SuOd;9MFfhWWxP=62x*wW&htM-#DWBQ<9 zlx)T^LI||c6x#47N$@hk)HysM=(Jk|zGQc2Ksw2(c{R?5SCqD#T>x;KBo&|;$84>y zqHW2|IISk-xnWr;&PUe>A!t2W#*`Mhcylw30SLl?pU0<^);@aHaCB9z7nNlhaxod8 z(3(PP>S4(CR)3!~EvmzVewX3s8s{8ImQ`ZQ?acw{q`+uHV`-^U`(~UH_>w59127z2 z1F*mMlx8Eq_iG%TTp-u`9bUg!<=fGSAIIkyZ7|x<>$SNVr=)3tDJ|M)?(Q6i-%kj_ zfXzXdnpZ=vuf&{QCRpn#k2h8nzs_y}NYjF-F=G)m>VE{GBuxu0F2`)Hb!R#F&s@M- z%bjzCL4YUjZ3U=@K_#+m#xbQWDYU7;zLa=E;LrPd7@(9Q@Fi(F0YE8*(FXZ1c#y=NtQig0JD$7oT3ndjkPYX_WI<;@#f_QpT8b+ zKAa^}cG@la-4@rslUd?cJ3Qa&P?RNyzlIoXNwS34{=&p}6>OW^8xi#3ZO^H5%P}=bUrTIA6YgJH5GE0bsNtEpj%90)+|#ib4Y* zghw1J=A!{8M|}XCkDorD;yOD`(wA6U(bRQ!pB6dP4KE?0FvM|PjM0?FkY*VaPFw6c z4B{9eJdTg1WJQ6C$NlmFTiJF1z*ClX4N(}fm>r-iOOiaxDGI}0ptxH-;hkb3;~e7SS*B4z z%R&V{()Y+R&2p76pA6SI_z!Glsp|$`%GRSTuX<8;CW|Nxv6ZDX<~bam$9A}SQlgYX z2#-7~S~f~yv_ZUVrf#sc-C;uAP?qbBxDGujNt2u?P>8bBJFjii6rR9V7F$&WeyoKKm`0#ed_p@v6mu)h|AdVRi_xbZT17Ld4=hdQ*wwCj&B}P}IdCA$&TaqNl=+-Y4 bwxRn65L6k4P;m%z00000NkvXXu0mjfdJi3% literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/gui/fluids/petroil_leaded.png b/src/main/resources/assets/hbm/textures/gui/fluids/petroil_leaded.png new file mode 100644 index 0000000000000000000000000000000000000000..78458ddd5b22741cdf6d74266631f0c62819d0d5 GIT binary patch literal 514 zcmV+d0{#7oP)3`GwqT5d7{(w!9OF1q|~WY9?_u5C$VKNQ=U@<)&$ zlIQXvKYsrDUCIi8d*I&KOhwV8xJSRMplXacb3UIi8?b4b5P=8~=}w|bL_h@Iyax}b zHGs;p%-lb3M1Un#5Fy+Ng658d?*UUXM8IU&$!aY`M1Sw-?Ql>f=iKE)mm>(Of~Zo; z3L>PWoxr0bCe^MpDa*1D#O^F2lv=*jMo`=vwq*v0r)E)QumShF2gxZ@Y9-w9aJ+Vz zHs+D$jc`YfNYoAWNw$_wa6X?AQACCL?~LU<@b>nd$K%1g%zM>`oN2A@Qiy&|(}bo@ zC@R>HGt0W-5vUrcabWy5GS4#+5Z(|`NT8As6H|T%O#lD@07*qoM6N<$ Ef;&9n;{X5v literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/canister_overlay.png b/src/main/resources/assets/hbm/textures/items/canister_overlay.png new file mode 100644 index 0000000000000000000000000000000000000000..28ab784a954d0d7d47970689605d865d03faf70a GIT binary patch literal 413 zcmV;O0b>4%P)>3`9N@k0Ra8|)2!XEa$g&Io5#h5201?4CM~so>a*3)kola@nwwL~VJ_mro z6|A+CWy$S!>u0Lkhs!zl>k7Xz{tn99>w7^&@ZNJg9tS&L<7Kra9-#Fr00000NkvXX Hu0mjfjD4?y literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/chem_icon_COALGAS_LEADED.png b/src/main/resources/assets/hbm/textures/items/chem_icon_COALGAS_LEADED.png new file mode 100644 index 0000000000000000000000000000000000000000..eddc981fb497affbf5ca296694a7061f374c9d4c GIT binary patch literal 592 zcmV-W0nV+^~yyXvZUdRl>@8DsE$e=44v2ArIn{5N@w!OvIAG77BTEK*h> zm1`YrZP-}3A$M&hlLe+SxV*e1j$^de^!t61B%xZZBH{_a(HZKW0&sP9N&%i6ouM>9qtTFZJ_f*b-R$h|@3Z;rB}tN?bt*#B^_7U= zpTRsx4j_sm-u}J^z}(z;D^V07B2+3BmX@vyKp2KNw!#Y}ZDDKY7SA8036^CMMN#HI zZqKq*7$72qVF*AzpGQQ{!x@zADqA~naUK8zV0OeqsZ^rd?Gnc^K@i|L4oL#ZsElR1 z%1qH_rf36X9-!CjVObW&7#zpR;%ZWb=9e|Teg6T>^KfI02amS_h~t>!<6{;U7U*`n zDSZvX6{~#c9&qR$jKw_9!*Lusoerf^34p;M#l{${KivcFb8#N- literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/chem_icon_GASOLINE_LEADED.png b/src/main/resources/assets/hbm/textures/items/chem_icon_GASOLINE_LEADED.png new file mode 100644 index 0000000000000000000000000000000000000000..866e8540e2fcf141b532376085166f2adb974101 GIT binary patch literal 591 zcmV-V0co;puBq8~noMz&ZDR@AsVV z5sX2(Tvmlbfo8LbVHnhEHF4QJZ5+X07=}T+-5y(yj4QNSt^YnAQLwjMRKo?ic!SOz z8|S`{UG$iFHLIpe(`qciMM&30`5u~f1&}CT63ryZm+~rK%7;YZVD^@aDyw_E*PewW zsZ@&9?`vqf&RM(1(e{y;c~MXbaEv~OpALlvP_0%~R`&pCG#cTl*Xz8#yM*#3LJR)- zvC$L)uud!{A55wUfN7e%`*{z5WOB3>(=-u4ER$sR&Ab9|x?Q5zqu3{Q;KKUWZC);( z%Qj6jjH{aoQgc4aS2*2nFgQJeKp->`5M*;xtZ#ue=l~K(3`K}eT*DmqQ|U-Y#jlT?@zPbJp(R^!nJwX}A|*JC#aBL0}^gTDkIZhK<5Ae002ovPDHLkV1igD2Z{gy literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/chem_icon_PETROIL_LEADED.png b/src/main/resources/assets/hbm/textures/items/chem_icon_PETROIL_LEADED.png new file mode 100644 index 0000000000000000000000000000000000000000..00b082deb68e366698429b9636a2e6b96521c279 GIT binary patch literal 581 zcmV-L0=oT)P)H%D8@!v#yZ64sx%V86 zDbZ*&WUW@C)9E0Dpxth3m(A(Z0RDs!f*=T{_Kj(cZnyj2&j2~C{pVNZtyfQ_?hrY8C1&Nxda6Wl%0AywM-zAf{>J zwjWX`l}Jxc;M<1A`k_SA!1v*BT{8e&*Old;?*Z^UZ-R+?8{GXziU~lgu0VnSD(|EL z5XUhuzh47jVPSHWIF3O|s8p~ve@FmvdJ2vMzOPi++F4?AV@x}a<2=9Jo`Iym6^g2f&dHybbai^X0s_l$q3|9y04ej&M-DpmO-%yy(ii)OJ~^Y Tgy;Jg00000NkvXXu0mjfsp