From 82911a9027bb0487fee5f0da804c5c7f1eeecc58 Mon Sep 17 00:00:00 2001 From: Boblet Date: Fri, 1 Oct 2021 15:25:35 +0200 Subject: [PATCH] fixed SILEX recipes, ZFB textures, more ItemHazard entries & modifiers --- src/main/java/com/hbm/hazard/HazardEntry.java | 1 + .../java/com/hbm/hazard/HazardRegistry.java | 87 ++++++++++++++++-- .../hazard/{ => modifier}/HazardModifier.java | 2 +- .../modifier/HazardModifierRBMKHot.java | 24 +++++ .../modifier/HazardModifierRBMKRadiation.java | 39 ++++++++ .../hbm/hazard/type/HazardTypeAsbestos.java | 2 +- .../com/hbm/hazard/type/HazardTypeBase.java | 2 +- .../hbm/hazard/type/HazardTypeBlinding.java | 2 +- .../com/hbm/hazard/type/HazardTypeCoal.java | 2 +- .../hbm/hazard/type/HazardTypeDigamma.java | 2 +- .../hbm/hazard/type/HazardTypeExplosive.java | 2 +- .../com/hbm/hazard/type/HazardTypeHot.java | 10 +- .../hazard/type/HazardTypeHydroactive.java | 2 +- .../hbm/hazard/type/HazardTypeRadiation.java | 2 +- .../com/hbm/inventory/OreDictManager.java | 12 +-- .../hbm/inventory/recipes/SILEXRecipes.java | 10 +- src/main/java/com/hbm/items/ModItems.java | 13 ++- .../com/hbm/items/machine/ItemRBMKPellet.java | 4 +- src/main/java/com/hbm/main/MainRegistry.java | 1 + .../java/com/hbm/main/ModEventHandler.java | 1 + .../hbm/textures/items/billet_bismuth.png | Bin 0 -> 400 bytes .../hbm/textures/items/billet_zfb_am_mix.png | Bin 0 -> 453 bytes .../hbm/textures/items/billet_zfb_bismuth.png | Bin 0 -> 484 bytes .../hbm/textures/items/billet_zfb_pu241.png | Bin 0 -> 466 bytes .../hbm/textures/items/billet_zirconium.png | Bin 0 -> 292 bytes .../textures/items/rbmk_fuel_zfb_am_mix.png | Bin 0 -> 711 bytes .../hbm/textures/items/rbmk_fuel_zfb_base.png | Bin 0 -> 465 bytes .../textures/items/rbmk_fuel_zfb_bismuth.png | Bin 0 -> 774 bytes .../textures/items/rbmk_fuel_zfb_pu241.png | Bin 0 -> 676 bytes .../textures/items/rbmk_pellet_zfb_am_mix.png | Bin 0 -> 413 bytes .../items/rbmk_pellet_zfb_bismuth.png | Bin 0 -> 415 bytes .../textures/items/rbmk_pellet_zfb_pu241.png | Bin 0 -> 407 bytes .../textures/items/rbmk_pellet_zirconium.png | Bin 0 -> 274 bytes .../items/rbmk_pellet_zirconium_overlay.png | Bin 0 -> 385 bytes 34 files changed, 187 insertions(+), 33 deletions(-) rename src/main/java/com/hbm/hazard/{ => modifier}/HazardModifier.java (95%) create mode 100644 src/main/java/com/hbm/hazard/modifier/HazardModifierRBMKHot.java create mode 100644 src/main/java/com/hbm/hazard/modifier/HazardModifierRBMKRadiation.java create mode 100644 src/main/resources/assets/hbm/textures/items/billet_bismuth.png create mode 100644 src/main/resources/assets/hbm/textures/items/billet_zfb_am_mix.png create mode 100644 src/main/resources/assets/hbm/textures/items/billet_zfb_bismuth.png create mode 100644 src/main/resources/assets/hbm/textures/items/billet_zfb_pu241.png create mode 100644 src/main/resources/assets/hbm/textures/items/billet_zirconium.png create mode 100644 src/main/resources/assets/hbm/textures/items/rbmk_fuel_zfb_am_mix.png create mode 100644 src/main/resources/assets/hbm/textures/items/rbmk_fuel_zfb_base.png create mode 100644 src/main/resources/assets/hbm/textures/items/rbmk_fuel_zfb_bismuth.png create mode 100644 src/main/resources/assets/hbm/textures/items/rbmk_fuel_zfb_pu241.png create mode 100644 src/main/resources/assets/hbm/textures/items/rbmk_pellet_zfb_am_mix.png create mode 100644 src/main/resources/assets/hbm/textures/items/rbmk_pellet_zfb_bismuth.png create mode 100644 src/main/resources/assets/hbm/textures/items/rbmk_pellet_zfb_pu241.png create mode 100644 src/main/resources/assets/hbm/textures/items/rbmk_pellet_zirconium.png create mode 100644 src/main/resources/assets/hbm/textures/items/rbmk_pellet_zirconium_overlay.png diff --git a/src/main/java/com/hbm/hazard/HazardEntry.java b/src/main/java/com/hbm/hazard/HazardEntry.java index 1bdf2ad0f..358500973 100644 --- a/src/main/java/com/hbm/hazard/HazardEntry.java +++ b/src/main/java/com/hbm/hazard/HazardEntry.java @@ -3,6 +3,7 @@ package com.hbm.hazard; import java.util.ArrayList; import java.util.List; +import com.hbm.hazard.modifier.HazardModifier; import com.hbm.hazard.type.HazardTypeBase; import net.minecraft.entity.EntityLivingBase; diff --git a/src/main/java/com/hbm/hazard/HazardRegistry.java b/src/main/java/com/hbm/hazard/HazardRegistry.java index 67a98d0e8..31b71a097 100644 --- a/src/main/java/com/hbm/hazard/HazardRegistry.java +++ b/src/main/java/com/hbm/hazard/HazardRegistry.java @@ -3,6 +3,7 @@ package com.hbm.hazard; import static com.hbm.blocks.ModBlocks.*; import static com.hbm.items.ModItems.*; +import com.hbm.hazard.modifier.*; import com.hbm.hazard.transformer.HazardTransformerRadiationNBT; import com.hbm.hazard.type.*; import com.hbm.items.special.ItemWasteLong; @@ -12,6 +13,7 @@ import com.hbm.main.MainRegistry; import net.minecraft.init.Blocks; import net.minecraft.init.Items; +import net.minecraft.item.Item; public class HazardRegistry { @@ -20,7 +22,7 @@ public class HazardRegistry { //I181 192h β− 150.00Rad/s 2 much spice :( //XE135 9h β− aaaaaaaaaaaaaaaa //CS137 30a β− 020.00Rad/s Spicy - //AU192 64h β− 500.00Rad/s 2 much spice :( + //AU198 64h β− 500.00Rad/s 2 much spice :( //AT209 5h β+ like 2k or sth idk bruv //PO210 138d α 075.00Rad/s Spicy //RA226 1,600a α 007.50Rad/s @@ -69,10 +71,16 @@ public class HazardRegistry { public static final float sa326 = 15.0F; public static final float sa327 = 17.5F; public static final float saf = 5.85F; + public static final float sas3 = 5F; public static final float radsource_mult = 0.5F; public static final float pobe = po210 * radsource_mult; public static final float rabe = ra226 * radsource_mult; public static final float pube = pu238 * radsource_mult; + public static final float zfb_bi = u235 * 0.35F; + public static final float zfb_pu241 = pu241 * 0.5F; + public static final float zfb_am_mix = amrg * 0.5F; + public static final float bf = 300_000.0F; + public static final float bfb = 500_000.0F; public static final float sr = sa326 * 0.1F; public static final float sb = sa326 * 0.1F; @@ -121,6 +129,20 @@ public class HazardRegistry { HazardSystem.register(ingot_semtex, makeData(EXPLOSIVE, 10F)); HazardSystem.register(block_semtex, makeData(EXPLOSIVE, 40F)); + HazardSystem.register(cordite, makeData(EXPLOSIVE, 2F)); + HazardSystem.register(ballistite, makeData(EXPLOSIVE, 1F)); + + HazardSystem.register(insert_polonium, makeData(RADIATION, 100F)); + + HazardSystem.register(demon_core_open, makeData(RADIATION, 5F)); + HazardSystem.register(demon_core_closed, makeData(RADIATION, 100_000F)); + + HazardSystem.register(cell_tritium, makeData(RADIATION, 0.001F)); + HazardSystem.register(cell_sas3, new HazardData().addEntry(RADIATION, sas3).addEntry(BLINDING, 3F)); + HazardSystem.register(cell_balefire, makeData(RADIATION, 50F)); + HazardSystem.register(powder_balefire, makeData(RADIATION, 500F)); + HazardSystem.register(egg_balefire_shard, makeData(RADIATION, bf * nugget)); + HazardSystem.register(egg_balefire, makeData(RADIATION, bf * ingot)); HazardSystem.register(trinitite, makeData(RADIATION, trn * ingot)); HazardSystem.register(nuclear_waste_long, makeData(RADIATION, 5F)); @@ -174,10 +196,10 @@ public class HazardRegistry { HazardSystem.register(billet_americium_fuel, makeData(RADIATION, amf * billet)); HazardSystem.register(ingot_americium_fuel, makeData(RADIATION, amf * ingot)); - HazardSystem.register(nugget_schrabidium_fuel, makeData(RADIATION, saf * nugget)); - HazardSystem.register(billet_schrabidium_fuel, makeData(RADIATION, saf * billet)); - HazardSystem.register(ingot_schrabidium_fuel, makeData(RADIATION, saf * ingot)); - HazardSystem.register(block_schrabidium_fuel, makeData(RADIATION, saf * block)); + HazardSystem.register(nugget_schrabidium_fuel, new HazardData().addEntry(RADIATION, saf * nugget).addEntry(BLINDING, 5F * nugget)); + HazardSystem.register(billet_schrabidium_fuel, new HazardData().addEntry(RADIATION, saf * billet).addEntry(BLINDING, 5F * billet)); + HazardSystem.register(ingot_schrabidium_fuel, new HazardData().addEntry(RADIATION, saf * ingot).addEntry(BLINDING, 5F * ingot)); + HazardSystem.register(block_schrabidium_fuel, new HazardData().addEntry(RADIATION, saf * block).addEntry(BLINDING, 5F * block)); HazardSystem.register(nugget_hes, makeData(RADIATION, saf * nugget)); HazardSystem.register(billet_hes, makeData(RADIATION, saf * billet)); @@ -191,8 +213,32 @@ public class HazardRegistry { HazardSystem.register(billet_po210be, makeData(RADIATION, pobe * billet)); HazardSystem.register(billet_ra226be, makeData(RADIATION, rabe * billet)); HazardSystem.register(billet_pu238be, makeData(RADIATION, pube * billet)); + + registerRodRadiation(rod_th232, rod_dual_th232, rod_quad_th232, th232); + registerRodRadiation(rod_uranium, rod_dual_uranium, rod_quad_uranium, u); + registerRodRadiation(rod_u233, rod_dual_u233, rod_quad_u233, u233); + registerRodRadiation(rod_u235, rod_dual_u235, rod_quad_u235, u235); + registerRodRadiation(rod_u238, rod_dual_u238, rod_quad_u238, u238); + registerRodRadiation(rod_plutonium, rod_dual_plutonium, rod_quad_plutonium, pu); + registerRodRadiation(rod_pu238, rod_dual_pu238, rod_quad_pu238, pu238); + registerRodRadiation(rod_pu239, rod_dual_pu239, rod_quad_pu239, pu239); + registerRodRadiation(rod_pu240, rod_dual_pu240, rod_quad_pu240, pu240); + registerRodRadiation(rod_neptunium, rod_dual_neptunium, rod_quad_neptunium, np237); + registerRodRadiation(rod_polonium, rod_dual_polonium, rod_quad_polonium, po210); + registerRodRadiationExtra(rod_schrabidium, rod_dual_schrabidium, rod_quad_schrabidium, sa326, BLINDING, 3F); + registerRodRadiationExtra(rod_solinium, rod_dual_solinium, rod_quad_solinium, sa327, BLINDING, 3F); + registerRodRadiation(rod_balefire, rod_dual_balefire, rod_quad_balefire, bf); + registerRodRadiationExtra(rod_balefire_blazing, rod_dual_balefire_blazing, rod_quad_balefire_blazing, bfb, HOT, 5F); + + registerRBMKRod(rbmk_fuel_ueu, u * rod_rbmk, u * rod_rbmk * 100); + registerRBMKRod(rbmk_fuel_meu, uf * rod_rbmk, uf * rod_rbmk * 100); + registerRBMKRod(rbmk_fuel_heu233, u233 * rod_rbmk, u233 * rod_rbmk * 100); + registerRBMKRod(rbmk_fuel_heu235, u235 * rod_rbmk, u235 * rod_rbmk * 100); - //TODO: move this into its own method + //TODO + } + + public static void registerTrafos() { HazardSystem.trafos.add(new HazardTransformerRadiationNBT()); } @@ -200,4 +246,33 @@ public class HazardRegistry { private static HazardData makeData(HazardTypeBase hazard) { return new HazardData().addEntry(hazard); } private static HazardData makeData(HazardTypeBase hazard, float level) { return new HazardData().addEntry(hazard, level); } private static HazardData makeData(HazardTypeBase hazard, float level, boolean override) { return new HazardData().addEntry(hazard, level, override); } + + private static void registerRodRadiation(Item single, Item dual, Item quad, float base) { + HazardSystem.register(single, makeData(RADIATION, base * rod)); + HazardSystem.register(dual, makeData(RADIATION, base * rod_dual)); + HazardSystem.register(quad, makeData(RADIATION, base * rod_quad)); + } + + private static void registerRodRadiationExtra(Item single, Item dual, Item quad, float base, HazardTypeBase extra, float base2) { + HazardSystem.register(single, new HazardData().addEntry(RADIATION, base * rod).addEntry(extra, base2 * rod)); + HazardSystem.register(dual, new HazardData().addEntry(RADIATION, base * rod_dual).addEntry(extra, base2 * rod_dual)); + HazardSystem.register(quad, new HazardData().addEntry(RADIATION, base * rod_quad).addEntry(extra, base2 * rod_quad)); + } + + private static void registerRBMKPellet(Item rod, float base, float dep) { registerRBMKPellet(rod, base, dep, 0F); } + private static void registerRBMKPellet(Item rod, float base, float dep, float blinding) { + + } + + private static void registerRBMKRod(Item rod, float base, float dep) { registerRBMK(rod, base, dep, true, 0F); } + private static void registerRBMKRod(Item rod, float base, float dep, float blinding) { registerRBMK(rod, base, dep, true, blinding); } + + private static void registerRBMK(Item rod, float base, float dep, boolean hot, float blinding) { + + HazardData data = new HazardData(); + data.addEntry(new HazardEntry(RADIATION, base).addMod(new HazardModifierRBMKRadiation(dep))); + if(hot) data.addEntry(new HazardEntry(HOT, 0).addMod(new HazardModifierRBMKHot())); + if(blinding > 0) data.addEntry(new HazardEntry(BLINDING, blinding)); + HazardSystem.register(rod, data); + } } diff --git a/src/main/java/com/hbm/hazard/HazardModifier.java b/src/main/java/com/hbm/hazard/modifier/HazardModifier.java similarity index 95% rename from src/main/java/com/hbm/hazard/HazardModifier.java rename to src/main/java/com/hbm/hazard/modifier/HazardModifier.java index 4f9eb3f37..3bcf26669 100644 --- a/src/main/java/com/hbm/hazard/HazardModifier.java +++ b/src/main/java/com/hbm/hazard/modifier/HazardModifier.java @@ -1,4 +1,4 @@ -package com.hbm.hazard; +package com.hbm.hazard.modifier; import java.util.List; diff --git a/src/main/java/com/hbm/hazard/modifier/HazardModifierRBMKHot.java b/src/main/java/com/hbm/hazard/modifier/HazardModifierRBMKHot.java new file mode 100644 index 000000000..669e9d64a --- /dev/null +++ b/src/main/java/com/hbm/hazard/modifier/HazardModifierRBMKHot.java @@ -0,0 +1,24 @@ +package com.hbm.hazard.modifier; + +import com.hbm.items.machine.ItemRBMKRod; + +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.item.ItemStack; + +public class HazardModifierRBMKHot extends HazardModifier { + + @Override + public float modify(ItemStack stack, EntityLivingBase holder, float level) { + + level = 0; + + if(stack.getItem() instanceof ItemRBMKRod) { + double heat = ItemRBMKRod.getHullHeat(stack); + int fire = (int)Math.min(Math.ceil((heat - 100) / 10D), 60); + level = fire; + } + + return level; + } + +} diff --git a/src/main/java/com/hbm/hazard/modifier/HazardModifierRBMKRadiation.java b/src/main/java/com/hbm/hazard/modifier/HazardModifierRBMKRadiation.java new file mode 100644 index 000000000..e864c5480 --- /dev/null +++ b/src/main/java/com/hbm/hazard/modifier/HazardModifierRBMKRadiation.java @@ -0,0 +1,39 @@ +package com.hbm.hazard.modifier; + +import com.hbm.hazard.HazardRegistry; +import com.hbm.items.machine.ItemRBMKPellet; +import com.hbm.items.machine.ItemRBMKRod; + +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.item.ItemStack; + +public class HazardModifierRBMKRadiation extends HazardModifier { + + float target; + + public HazardModifierRBMKRadiation(float target) { + this.target = target; + } + + @Override + public float modify(ItemStack stack, EntityLivingBase holder, float level) { + + if(stack.getItem() instanceof ItemRBMKRod) { + double depletion = 1D - ItemRBMKRod.getEnrichment(stack); + double xenon = ItemRBMKRod.getPoisonLevel(stack); + + level = (float) (level + (this.target - level) * depletion); + level += HazardRegistry.xe135 * xenon; + + } else if(stack.getItem() instanceof ItemRBMKPellet) { + + level = level + (target - level) * (ItemRBMKPellet.rectify(stack.getItemDamage()) / 4F); + + if(ItemRBMKPellet.hasXenon(stack.getItemDamage())) + level += HazardRegistry.xe135 * HazardRegistry.nugget; + } + + return level; + } + +} diff --git a/src/main/java/com/hbm/hazard/type/HazardTypeAsbestos.java b/src/main/java/com/hbm/hazard/type/HazardTypeAsbestos.java index 8e2acdc1d..22c077bf7 100644 --- a/src/main/java/com/hbm/hazard/type/HazardTypeAsbestos.java +++ b/src/main/java/com/hbm/hazard/type/HazardTypeAsbestos.java @@ -3,7 +3,7 @@ package com.hbm.hazard.type; import java.util.List; import com.hbm.extprop.HbmLivingProps; -import com.hbm.hazard.HazardModifier; +import com.hbm.hazard.modifier.HazardModifier; import com.hbm.util.ArmorRegistry; import com.hbm.util.ArmorUtil; import com.hbm.util.I18nUtil; diff --git a/src/main/java/com/hbm/hazard/type/HazardTypeBase.java b/src/main/java/com/hbm/hazard/type/HazardTypeBase.java index 7c7a96b63..b8f7e30c4 100644 --- a/src/main/java/com/hbm/hazard/type/HazardTypeBase.java +++ b/src/main/java/com/hbm/hazard/type/HazardTypeBase.java @@ -2,7 +2,7 @@ package com.hbm.hazard.type; import java.util.List; -import com.hbm.hazard.HazardModifier; +import com.hbm.hazard.modifier.HazardModifier; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; diff --git a/src/main/java/com/hbm/hazard/type/HazardTypeBlinding.java b/src/main/java/com/hbm/hazard/type/HazardTypeBlinding.java index 223bd3e45..6a5f207db 100644 --- a/src/main/java/com/hbm/hazard/type/HazardTypeBlinding.java +++ b/src/main/java/com/hbm/hazard/type/HazardTypeBlinding.java @@ -2,7 +2,7 @@ package com.hbm.hazard.type; import java.util.List; -import com.hbm.hazard.HazardModifier; +import com.hbm.hazard.modifier.HazardModifier; import com.hbm.util.ArmorRegistry; import com.hbm.util.I18nUtil; import com.hbm.util.ArmorRegistry.HazardClass; diff --git a/src/main/java/com/hbm/hazard/type/HazardTypeCoal.java b/src/main/java/com/hbm/hazard/type/HazardTypeCoal.java index 0fd78aeab..36c10f172 100644 --- a/src/main/java/com/hbm/hazard/type/HazardTypeCoal.java +++ b/src/main/java/com/hbm/hazard/type/HazardTypeCoal.java @@ -3,7 +3,7 @@ package com.hbm.hazard.type; import java.util.List; import com.hbm.extprop.HbmLivingProps; -import com.hbm.hazard.HazardModifier; +import com.hbm.hazard.modifier.HazardModifier; import com.hbm.util.ArmorRegistry; import com.hbm.util.ArmorUtil; import com.hbm.util.I18nUtil; diff --git a/src/main/java/com/hbm/hazard/type/HazardTypeDigamma.java b/src/main/java/com/hbm/hazard/type/HazardTypeDigamma.java index 02ecef58e..a32c1d0d8 100644 --- a/src/main/java/com/hbm/hazard/type/HazardTypeDigamma.java +++ b/src/main/java/com/hbm/hazard/type/HazardTypeDigamma.java @@ -2,7 +2,7 @@ package com.hbm.hazard.type; import java.util.List; -import com.hbm.hazard.HazardModifier; +import com.hbm.hazard.modifier.HazardModifier; import com.hbm.util.ContaminationUtil; import com.hbm.util.I18nUtil; diff --git a/src/main/java/com/hbm/hazard/type/HazardTypeExplosive.java b/src/main/java/com/hbm/hazard/type/HazardTypeExplosive.java index dca6fa10a..b2279c2fa 100644 --- a/src/main/java/com/hbm/hazard/type/HazardTypeExplosive.java +++ b/src/main/java/com/hbm/hazard/type/HazardTypeExplosive.java @@ -2,7 +2,7 @@ package com.hbm.hazard.type; import java.util.List; -import com.hbm.hazard.HazardModifier; +import com.hbm.hazard.modifier.HazardModifier; import com.hbm.util.I18nUtil; import net.minecraft.entity.EntityLivingBase; diff --git a/src/main/java/com/hbm/hazard/type/HazardTypeHot.java b/src/main/java/com/hbm/hazard/type/HazardTypeHot.java index e20d9e278..f00d3ef77 100644 --- a/src/main/java/com/hbm/hazard/type/HazardTypeHot.java +++ b/src/main/java/com/hbm/hazard/type/HazardTypeHot.java @@ -3,7 +3,7 @@ package com.hbm.hazard.type; import java.util.List; import com.hbm.config.GeneralConfig; -import com.hbm.hazard.HazardModifier; +import com.hbm.hazard.modifier.HazardModifier; import com.hbm.items.ModItems; import com.hbm.util.I18nUtil; @@ -23,7 +23,7 @@ public class HazardTypeHot extends HazardTypeBase { if(target instanceof EntityPlayer && !GeneralConfig.enable528) reacher = ((EntityPlayer) target).inventory.hasItem(ModItems.reacher); - if(!reacher && !target.isWet()) + if(!reacher && !target.isWet() && level > 0) target.setFire((int) Math.ceil(level)); } @@ -32,7 +32,11 @@ public class HazardTypeHot extends HazardTypeBase { @Override public void addHazardInformation(EntityPlayer player, List list, float level, ItemStack stack, List modifiers) { - list.add(EnumChatFormatting.GOLD + "[" + I18nUtil.resolveKey("trait.hot") + "]"); + + level = HazardModifier.evalAllModifiers(stack, player, level, modifiers); + + if(level > 0) + list.add(EnumChatFormatting.GOLD + "[" + I18nUtil.resolveKey("trait.hot") + "]"); } } diff --git a/src/main/java/com/hbm/hazard/type/HazardTypeHydroactive.java b/src/main/java/com/hbm/hazard/type/HazardTypeHydroactive.java index 5c6f8c52f..43d7507e2 100644 --- a/src/main/java/com/hbm/hazard/type/HazardTypeHydroactive.java +++ b/src/main/java/com/hbm/hazard/type/HazardTypeHydroactive.java @@ -2,7 +2,7 @@ package com.hbm.hazard.type; import java.util.List; -import com.hbm.hazard.HazardModifier; +import com.hbm.hazard.modifier.HazardModifier; import com.hbm.util.I18nUtil; import net.minecraft.block.material.Material; diff --git a/src/main/java/com/hbm/hazard/type/HazardTypeRadiation.java b/src/main/java/com/hbm/hazard/type/HazardTypeRadiation.java index c6e4c7a76..3b633494d 100644 --- a/src/main/java/com/hbm/hazard/type/HazardTypeRadiation.java +++ b/src/main/java/com/hbm/hazard/type/HazardTypeRadiation.java @@ -3,7 +3,7 @@ package com.hbm.hazard.type; import java.util.List; import com.hbm.config.GeneralConfig; -import com.hbm.hazard.HazardModifier; +import com.hbm.hazard.modifier.HazardModifier; import com.hbm.items.ModItems; import com.hbm.util.ContaminationUtil; import com.hbm.util.I18nUtil; diff --git a/src/main/java/com/hbm/inventory/OreDictManager.java b/src/main/java/com/hbm/inventory/OreDictManager.java index e62311748..f876e1947 100644 --- a/src/main/java/com/hbm/inventory/OreDictManager.java +++ b/src/main/java/com/hbm/inventory/OreDictManager.java @@ -81,7 +81,7 @@ public class OreDictManager { new DictFrame("Tantalum") .nugget(nugget_tantalium) .gem(gem_tantalium) .ingot(ingot_tantalium) .dust(powder_tantalium) .block(block_tantalium); new DictFrame("Coltan") .ingot(fragment_coltan) .dust(powder_coltan_ore) .block(block_coltan) .ore(ore_coltan); new DictFrame("Niobium") .nugget(fragment_niobium) .ingot(ingot_niobium) .dustSmall(powder_niobium_tiny) .dust(powder_niobium) .block(block_niobium); - new DictFrame("Beryllium") .nugget(nugget_beryllium) .ingot(ingot_beryllium) .dust(powder_beryllium) .block(block_beryllium) .ore(ore_beryllium); + new DictFrame("Beryllium") .nugget(nugget_beryllium) .billet(billet_beryllium) .ingot(ingot_beryllium) .dust(powder_beryllium) .block(block_beryllium) .ore(ore_beryllium); new DictFrame("Cobalt") .nugget(fragment_cobalt) .ingot(ingot_cobalt) .dustSmall(powder_cobalt_tiny) .dust(powder_cobalt) .block(block_cobalt) .ore(ore_cobalt, ore_nether_cobalt); new DictFrame("Boron") .nugget(fragment_boron) .ingot(ingot_boron) .dustSmall(powder_boron_tiny) .dust(powder_boron) .block(block_boron); new DictFrame("Graphite") .ingot(ingot_graphite) .block(block_graphite); @@ -131,11 +131,11 @@ public class OreDictManager { /* * RARE EARTHS */ - new DictFrame("Lanthanum") .nugget(fragment_lanthanium) .ingot(ingot_lanthanium) .dustSmall(powder_lanthanium_tiny) .dust(powder_lanthanium) .block(block_lanthanium); - new DictFrame("Actinium") .nugget(fragment_actinium) .ingot(ingot_actinium) .dustSmall(powder_actinium_tiny) .dust(powder_actinium) .block(block_actinium); - new DictFrame("Zirconium") .nugget(nugget_zirconium) .ingot(ingot_zirconium) .dust(powder_zirconium) .block(block_zirconium) .ore(ore_depth_zirconium); - new DictFrame("Neodymium") .nugget(fragment_neodymium) .dustSmall(powder_neodymium_tiny) .dust(powder_neodymium) .ore(ore_depth_nether_neodymium); - new DictFrame("Cerium") .nugget(fragment_cerium) .dustSmall(powder_cerium_tiny) .dust(powder_cerium); + new DictFrame("Lanthanum") .nugget(fragment_lanthanium) .ingot(ingot_lanthanium) .dustSmall(powder_lanthanium_tiny) .dust(powder_lanthanium) .block(block_lanthanium); + new DictFrame("Actinium") .nugget(fragment_actinium) .ingot(ingot_actinium) .dustSmall(powder_actinium_tiny) .dust(powder_actinium) .block(block_actinium); + new DictFrame("Zirconium") .nugget(nugget_zirconium) .ingot(ingot_zirconium) .billet(billet_zirconium) .dust(powder_zirconium) .block(block_zirconium) .ore(ore_depth_zirconium); + new DictFrame("Neodymium") .nugget(fragment_neodymium) .dustSmall(powder_neodymium_tiny) .dust(powder_neodymium) .ore(ore_depth_nether_neodymium); + new DictFrame("Cerium") .nugget(fragment_cerium) .dustSmall(powder_cerium_tiny) .dust(powder_cerium); /* * NITAN diff --git a/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java b/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java index 05f7d4814..53db4b189 100644 --- a/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java @@ -153,7 +153,7 @@ public class SILEXRecipes { // MEP // recipes.put(new ComparableStack(ModItems.rbmk_pellet_mep, 1, i), new SILEXRecipe(600, 100) - .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_plutonium_fuel), 85 - i * 20)) + .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_pu_mix), 85 - i * 20)) .addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_short_tiny, 1, ItemWasteShort.WasteClass.PLUTONIUM239.ordinal()), 10 + 10 * i)) .addOut(new WeightedRandomObject(new ItemStack(ModItems.nuclear_waste_short_tiny, 1, ItemWasteShort.WasteClass.PLUTONIUM240.ordinal()), 5 + 5 * i)) ); @@ -245,13 +245,13 @@ public class SILEXRecipes { // FLASHGOLD // recipes.put(new ComparableStack(ModItems.rbmk_pellet_balefire_gold, 1, i), new SILEXRecipe(600, 100) - .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_au198), 9 - 2 * i)) - .addOut(new WeightedRandomObject(new ItemStack(ModItems.powder_balefire), 1 + 2 * i)) ); + .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_au198), 90 - 20 * i)) + .addOut(new WeightedRandomObject(new ItemStack(ModItems.powder_balefire), 10 + 20 * i)) ); recipes.put(new ComparableStack(ModItems.rbmk_pellet_balefire_gold, 1, i + 5), new SILEXRecipe(600, 100) .addOut(new WeightedRandomObject(new ItemStack(ModItems.powder_xe135_tiny), 1)) - .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_au198), 8 - 2 * i)) - .addOut(new WeightedRandomObject(new ItemStack(ModItems.powder_balefire), 1 + 2 * i)) ); + .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_au198), 89 - 20 * i)) + .addOut(new WeightedRandomObject(new ItemStack(ModItems.powder_balefire), 10 + 20 * i)) ); // POBE // recipes.put(new ComparableStack(ModItems.rbmk_pellet_po210be, 1, i), new SILEXRecipe(600, 100) diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 0e6fe9b28..05baecd8e 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -200,6 +200,9 @@ public class ModItems { public static Item billet_pu238be; public static Item billet_yharonite; public static Item billet_balefire_gold; + public static Item billet_beryllium; + public static Item billet_bismuth; + public static Item billet_zirconium; public static Item nugget_th232; public static Item nugget_uranium; @@ -2586,6 +2589,9 @@ public class ModItems { billet_po210be = new ItemHazard().addRadiation(ItemHazard.pobe * ItemHazard.billet).toItem().setUnlocalizedName("billet_po210be").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_po210be"); billet_ra226be = new ItemHazard().addRadiation(ItemHazard.rabe * ItemHazard.billet).toItem().setUnlocalizedName("billet_ra226be").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_ra226be"); billet_pu238be = new ItemHazard().addRadiation(ItemHazard.pube * ItemHazard.billet).toItem().setUnlocalizedName("billet_pu238be").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_pu238be"); + billet_beryllium = new Item().setUnlocalizedName("billet_beryllium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_beryllium"); + billet_bismuth = new Item().setUnlocalizedName("billet_bismuth").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_bismuth"); + billet_zirconium = new Item().setUnlocalizedName("billet_zirconium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_zirconium"); billet_yharonite = new Item().setUnlocalizedName("billet_yharonite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_yharonite"); billet_balefire_gold = new ItemHazard().addRadiation(ItemHazard.au198 * ItemHazard.billet).toItem().setUnlocalizedName("billet_balefire_gold").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":billet_balefire_gold"); @@ -3198,7 +3204,7 @@ public class ModItems { insert_xsapi = new ItemModInsert(2500, 0.9F, 0.75F, 1F, 1F).setUnlocalizedName("insert_xsapi").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_xsapi"); insert_steel = new ItemModInsert(1000, 1F, 0.95F, 0.75F, 0.95F).setUnlocalizedName("insert_steel").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_steel"); insert_du = new ItemModInsert(1500, 0.9F, 0.85F, 0.5F, 0.9F).setUnlocalizedName("insert_du").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_du"); - insert_polonium = new ItemModInsert(500, 0.9F, 1F, 0.95F, 0.9F).addRadiation(100F).toItem().setUnlocalizedName("insert_polonium").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_polonium"); + insert_polonium = new ItemModInsert(500, 0.9F, 1F, 0.95F, 0.9F).setUnlocalizedName("insert_polonium").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_polonium"); insert_era = new ItemModInsert(25, 0.5F, 1F, 0.25F, 1F).setUnlocalizedName("insert_era").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_era"); insert_yharonite = new ItemModInsert(9999, 0.01F, 1F, 1F, 1F).setUnlocalizedName("insert_yharonite").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_yharonite"); insert_doxium = new ItemModInsert(9999, 5.0F, 1F, 1F, 1F).setUnlocalizedName("insert_doxium").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_doxium"); @@ -3439,7 +3445,7 @@ public class ModItems { rbmk_pellet_balefire = (ItemRBMKPellet) new ItemRBMKPellet("Draconic Flames").setUnlocalizedName("rbmk_pellet_balefire").setTextureName(RefStrings.MODID + ":rbmk_pellet_balefire"); rbmk_pellet_drx = (ItemRBMKPellet) new ItemRBMKPellet(EnumChatFormatting.OBFUSCATED + "can't you hear, can't you hear the thunder?").setUnlocalizedName("rbmk_pellet_drx").setTextureName(RefStrings.MODID + ":rbmk_pellet_drx"); - rbmk_fuel_empty = new Item().setUnlocalizedName("rbmk_fuel_empty").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":rbmk_fuel_empty"); + rbmk_fuel_empty = new Item().setUnlocalizedName("rbmk_fuel_empty").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":rbmk_fuel_empty"); rbmk_fuel_ueu = (ItemRBMKRod) new ItemRBMKRod(rbmk_pellet_ueu) .setYield(100000000D) .setStats(15) @@ -5473,6 +5479,9 @@ public class ModItems { GameRegistry.registerItem(billet_po210be, billet_po210be.getUnlocalizedName()); GameRegistry.registerItem(billet_ra226be, billet_ra226be.getUnlocalizedName()); GameRegistry.registerItem(billet_pu238be, billet_pu238be.getUnlocalizedName()); + GameRegistry.registerItem(billet_beryllium, billet_beryllium.getUnlocalizedName()); + GameRegistry.registerItem(billet_bismuth, billet_bismuth.getUnlocalizedName()); + GameRegistry.registerItem(billet_zirconium, billet_zirconium.getUnlocalizedName()); GameRegistry.registerItem(billet_yharonite, billet_yharonite.getUnlocalizedName()); GameRegistry.registerItem(billet_balefire_gold, billet_balefire_gold.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/machine/ItemRBMKPellet.java b/src/main/java/com/hbm/items/machine/ItemRBMKPellet.java index dd3715d6d..72a77098e 100644 --- a/src/main/java/com/hbm/items/machine/ItemRBMKPellet.java +++ b/src/main/java/com/hbm/items/machine/ItemRBMKPellet.java @@ -103,11 +103,11 @@ public class ItemRBMKPellet extends ItemNuclearWaste { return this.enrichmentOverlays[rectify(meta) % 5]; } - private boolean hasXenon(int meta) { + public static boolean hasXenon(int meta) { return rectify(meta) >= 5; } - private int rectify(int meta) { + public static int rectify(int meta) { return Math.abs(meta) % 10; } } diff --git a/src/main/java/com/hbm/main/MainRegistry.java b/src/main/java/com/hbm/main/MainRegistry.java index 59b038aa3..c9a62c984 100644 --- a/src/main/java/com/hbm/main/MainRegistry.java +++ b/src/main/java/com/hbm/main/MainRegistry.java @@ -263,6 +263,7 @@ public class MainRegistry { AssemblerRecipes.preInit(PreEvent.getModConfigurationDirectory()); SiegeTier.registerTiers(); HazardRegistry.registerItems(); + HazardRegistry.registerTrafos(); Library.superuser.add("192af5d7-ed0f-48d8-bd89-9d41af8524f8"); Library.superuser.add("5aee1e3d-3767-4987-a222-e7ce1fbdf88e"); diff --git a/src/main/java/com/hbm/main/ModEventHandler.java b/src/main/java/com/hbm/main/ModEventHandler.java index a92445a76..7aead8abd 100644 --- a/src/main/java/com/hbm/main/ModEventHandler.java +++ b/src/main/java/com/hbm/main/ModEventHandler.java @@ -472,6 +472,7 @@ public class ModEventHandler { if(mod != null && mod.getItem() instanceof ItemArmorMod) { ((ItemArmorMod)mod.getItem()).modUpdate(event.entityLiving, armor); + HazardSystem.applyHazards(mod, event.entityLiving); if(reapply) { diff --git a/src/main/resources/assets/hbm/textures/items/billet_bismuth.png b/src/main/resources/assets/hbm/textures/items/billet_bismuth.png new file mode 100644 index 0000000000000000000000000000000000000000..252c5dac9de16e69711ab717c95eef1a1ded2854 GIT binary patch literal 400 zcmV;B0dM|^P)}uX2-YRUycE^5f+pB4o20J8t2Q2D4=9yN9G>JM*1@h>ECQ;o-~;rm4hwL0QKtR! zHaWzDRLo?-tvPQ10000fvVBt#0MwD0?LR@0K+N6k${xjV_ z5fy?>iX;#}FewaZP_&3P>%HqDx~MP~i&r+f&32w{&O7JfJs(==k?tjqVnRAQmDM2#(9?mz4HJhi6co8`V0MhnxE%mbv!%*0C?{x z`XbIb(lq5PJRx32m8~CE9I$K2>!5W2)6t&tCajf~d z@tq&rr}CtOzbF4hHVLA@SVgm$VXflkw#ClQ7TUnZ@6(PowjVD;d#d}Ai?4=qchdFf+JJjVPjO$|1LR?iJvz7pa^!DOoUaYU00000NkvXXu0mjfK)udd literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/billet_zfb_bismuth.png b/src/main/resources/assets/hbm/textures/items/billet_zfb_bismuth.png new file mode 100644 index 0000000000000000000000000000000000000000..9ff7b2e60b56f954f1bc88e4c2a2265756b183e9 GIT binary patch literal 484 zcmVJlie0)^6g8Q4sV}r56blx4McqjfnBq_5*n8 z2l62C;1>{Fd;yhuv7{!R^rGTfsczbhSurNr9dBw)gXqn<&D)Qe{|x;1CX*7E&tFjy zMNN)K&V#2 zui_&fEL~rw|0TiLfyNKpG6twcbzKNU{DT3TorJ=L*`q!O^NF3KvR;OH=}v8Gr)P zB!wYtcT-Nz&+jf`4#e?YE-lrO{omMpn=maxnrvgSRKqI9LZfk;BuT~rkJn?#dYN{z z9Fc7gXH>;}n>D#EaJRiBE^FqWT)0SnwzN(LAUB2+`xpoNCP9 a1HJRvsz%a zAY&x^Z$4d`tN%Q>Ie*J(3Cqh5@iK~HAL5Be6y@ zWi`*At&{aMwf#Nz>fgns6~u=}qF$>xDZy&R&u$0LD$Y(%c>lJJ)lh%e9JkRmZ~&tG z+ty-f+Gzzw35aq@qfqw=PHDAG~6*}bpQYW07*qo IM6N<$g62BYL;wH) literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/billet_zirconium.png b/src/main/resources/assets/hbm/textures/items/billet_zirconium.png new file mode 100644 index 0000000000000000000000000000000000000000..aba613fecc2bd7e7186d692bbe92edb8ef7d7b57 GIT binary patch literal 292 zcmV+<0o(qGP)W-js#VzHcmYI{-}WK;3h*E+YjM~WIBF3H zOda7*&7_7VBt>o0?d1XBbCdbb*$e#nBu9(W{mrzTpPt`#yH`hGRaF3}DrN>W)1D|< z!%Hw0fSJ)WO(eNo!>Yp646U z5;n8B6B6B^ZCi?>hzbD?pmUDC@8^B=iFdcxQ(2azX}S?P=K%2D^YZ$c>acsk-DMKA)*sihPFu14oG38DxIpr zkd+A`u_3V#iN63V1|jkC+*1?6{r>tH5v_+%Vl)C-P8}YS`Du2qTlZ;#Z_`3iF&<`(P#t! za9vk7jJ^OB{00aBmI9h`M`!I405qG;lmnslxtKOU)$se|y~c9`wD()IwSJ32A(PMB z*DvYO!~3}vV8>$$p_~HK0wj10+MuC`AIy3~7!p$crx-3_PvH;F`nDcR1 z18J@tPkDk_iY+HU$BPhI&w?6A6`^_xc)b7nzRd9=%(Mo$88)7T1I9lbxC~kjM2#nM zAjwssR0Bc?n!IsTgc&Y`Ajff1c`mYEOMv4zXg_-a0BCJBf@K)iz`OTfCu5Reoy)i0 z|3|W*2$zYlOv-;MW&t)4006((G}b8{$)-ajU7eJE$N#H{sP95e7x^VU&H_a002ovPDHLkV1fi-I)nfK literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/rbmk_fuel_zfb_base.png b/src/main/resources/assets/hbm/textures/items/rbmk_fuel_zfb_base.png new file mode 100644 index 0000000000000000000000000000000000000000..eceda3f70bf3d3f3a534434c39ef3d6715d99e07 GIT binary patch literal 465 zcmV;?0WSWDP)b;@5JjION~&=mA|WACQE>n+kb|U1kt&@JfrQef$PIE6 zYMQvWmM!Qfg>CR+W4tRciIgu{^4PO8fB(!{WB9X(6J?^BfGTKjc@;DPWui))=&^lu z0{a~wD^S?J@$P(_MdWOPE=lh(+p&b%|s##u%TFL|)#Y^ZA_NaL9VSc3zCf zW307oHXEQOy#xT!3ZfN}=4705^g^HwHz&|b z6PD6Pc@H>E_}>FJC*aisBBGp`ctk{vF;1PEqz{FPh>A#UDBVBzO!Rw3GGAPDB>Unp zNIVgRPb&e4N&+54e-7=61l6D+RUMw6&f4uVYxsNr%D#Os6Gc$Uyveb zk;*zC2sX-rja3XbHnEF}*_;rpWI+$%z<8C-IoTqGxt+PsV)r(;xxGtflaR&-$1&W@ zH}Bqi^UVOK3@hux?^Ty7l})UzzDA?bz{Z!~nQGal3rfZFbpQ5MTK`nRkNE8a!u;G5j;LtFn+(w}=1=n3OEoVl+aU9}YfH96BXhLZP zE(Tz84yBsVI)LLiMk;WV$x=$ZdtU_rs33q=3S0;fu+a4aNjS+y??^tuSyV2gW&qs1NMNNXKUN6eWy1VR-I2R1iR^ zs1dQS5w&!;0>^HF-~v4AggWYkj0>nBU4e)M&=JNX6NoKP3QUMt0iB}2#rcjwxx1dZ z1w0I)Qeg)6?uOnWw90^0hD9NngdN!kL>bUpCoZE_4-5Lin1J8|2@AN0#%ed!f`f46 zV|bVlwxzei3?xE$Gz+5ZxL*i?W6pr!0?g)d2w7VZ)kLdD2>T(E0(_qZoi8HedM1+{ z$Dud_f17b9WQ=1s2t(*N4oN8!KBq~aiGY+64;B^y0CV?>(J>UTxxmWX^>|JvtaAUW z_y3d31^@zx=6l~*CkYDxXdZ+Gz`AlM>5QIahXVbG{{1K&sDk(L1C^JSx}Ib+(_?hA zcp;;TbeS+pw2FfXv@tV1MmGwBeA89kAp zjYW!pl|QMkPT(LANN*De$|YQRq7XgMY$d|ou*G%m?z7k*clXxwX2_bx502xpGjG2A z-ZyU_aKd1^8(Z5gY9Dm)uG?i2^R2EAq@pkt! z0N|eEfIJsM7~ovs`Loq%jS5taL)B^(g+c+{Za49uR4T!?ZS;CQrMyZC#8EDnF&qv7 z0Jd%GrqL&$0t+AjnD)bjIy!fk0H9W@B@_sxAIWI}6drs8&}IE|eLQ|xr-j=U3W!9% z*XwI^|3Q7^23Wt>WJ0+FLKtA25?}#;VBO0{{?8&wLLg zOsMYxC*=X>A9;WWozM+BUpiLKr@BGs7L0?E2ht-MrA9IeMlva7qRv^;YY~uA;>Fq< z0KnZlm4pI2JDq4v9IQG1)BArU;{ZU1AUgc>7b{P&kN^O%D-%hlG?Gn(kiaA=Y;JAP z@=9Z5BwJdXq4~KfJr%4%P)i|H?Ia1E?2h?AdK4U(rk_aj1 zD2V{%2GdR%L4`nB*w{Ii=7RSVGW}^M0{O8#$qocn;V**hS0>Tl<%dAE`#v-Qz?9+9AfVeR9!o_J4T=hO$y~;O;$B00000NkvXX Hu0mjfPKULP literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/rbmk_pellet_zfb_bismuth.png b/src/main/resources/assets/hbm/textures/items/rbmk_pellet_zfb_bismuth.png new file mode 100644 index 0000000000000000000000000000000000000000..7d385d0bd2c9429c7bf389bf2ab58490b1549b9b GIT binary patch literal 415 zcmV;Q0bu@#P))UAB$@{$vIc6FqO^d;^G3yWCCl1yW2X$sRYr8WiaB=Y2CBCv(3)IyTtn(DM$nW_(6d43;?lM zoM^<*Zrc78J~Ee`M+B~}F7bUIXASjwjhX2w270#p2nvNQL|`?a#~SbqI18Jb8$_M? zUH}k}#VHmGw3`i_Cpaqvu^}GXjh_hs{J2jTz8rU2y@#*#X8I++7F4U%uDR#C#wSNr zfR*JX!m##M;j~=B$|EPGo39_~BNLNpHKG_4D^HZm*I(}bFVAaJV|77-a%BJj002ov JPDHLkV1m3Eug(Af literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/rbmk_pellet_zfb_pu241.png b/src/main/resources/assets/hbm/textures/items/rbmk_pellet_zfb_pu241.png new file mode 100644 index 0000000000000000000000000000000000000000..29725c07a98c18b31c60f2c5a8473c52870db6e0 GIT binary patch literal 407 zcmV;I0cie-P)}`)p;oje3H7x@v3TB8pn{ z02L8YAVRAssD+RSrj{}-#L&bnTlB5waOVHuzz={fqjee01Q?Tq`Z0SCkw)k;TBH#G zsik?XOo8$k*p|WB#hv(8&^sZXN@~*(tmSef;!(V|Md$4mN1bR}NsdoT1EPUpb|I-( zvst3iX_O^t)@vl@V)(rt0)7RZ7KaB#ibuDfIg>9$A`t-GaG0j*u0tW0fM228jnOCc z$gE_LhT!qx9@h=ywN0wk7t)K%O!++H1%*NZ(-7qITPRE7D2dlL+1=U3=UC$f0Ks68 z{k;O6_a=^~D~Qdw=uYcr0sz-_Y1C^tN}}7t!5)7u(ys-TN@ZXkYF9WB(^A0Z#`?es zH`kXaOK^VmG`dLr#FH^?NwB0qnNTV}kNo?;d;q4YSf|N1fL#Cp002ovPDHLkV1mv| BwR!*m literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/rbmk_pellet_zirconium.png b/src/main/resources/assets/hbm/textures/items/rbmk_pellet_zirconium.png new file mode 100644 index 0000000000000000000000000000000000000000..a3681aae6723ec3a3e827c6e61c2aaa1772c446b GIT binary patch literal 274 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vfwcpfb8kI(wdjI{UW4kv6@ukV&?8cU}!UW;OQWRX|xrMXEbdOM?oh-*Z4;km80f-fuApH=zB zD=6ralJ~?oVeLM)kkG527r(ZWE8}&TwM@j7v7xxn<~-w$yYoM{o3MV8V*Br|FInKi UdseBc9Ox+qPgg&ebxsLQ0HeBSSO5S3 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/rbmk_pellet_zirconium_overlay.png b/src/main/resources/assets/hbm/textures/items/rbmk_pellet_zirconium_overlay.png new file mode 100644 index 0000000000000000000000000000000000000000..636a5a815d964310a233637a674a16125b56a931 GIT binary patch literal 385 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=De8Ak0{?)V>TT$X?><>&pI=i;+W^?ccdqUO*wq64!_l=ltB<)VvY~=c3falGGH1 z^30M91$R&1fbd2>aiF4?o-U3d7N^fnQp`K-AmBRxvX|px#i^Tkqo(R`acZtCYTUpe zeE-0aa!qanoydff2gEtJzbPgqB>iO2-K6S%Q!Uit*U5Kh&i((j`PYXGmxb+j%eFGa zHK=|F3;Fu*(w)z&kAw~UC$WUGE_iMA;I(jsc<5h2ksG<;bA&@hLsfk*JHFVx;+4jW z1O@)*KmWesI%ml+YuQYT!gGl|JM|vyWmo8XyfM8;@%-o8G7J&fAMaiM{`ZFPL{HlU zv0G=Ox;qq<_CHG~%b)O1=fbw!AN*abiB!&EV