From 0ba71533349be2d8b643b3cb436c6f875063ff50 Mon Sep 17 00:00:00 2001 From: Vaern Date: Thu, 16 Jun 2022 19:45:04 -0700 Subject: [PATCH] Recipe changes, messing around with nuke items, remappings and ignored --- .../java/com/hbm/crafting/WeaponRecipes.java | 2 - .../java/com/hbm/hazard/HazardRegistry.java | 5 -- .../com/hbm/inventory/gui/GUINukeBoy.java | 14 +++- .../com/hbm/inventory/gui/GUINukeGadget.java | 14 +++- .../com/hbm/inventory/gui/GUINukeMan.java | 14 +++- .../com/hbm/inventory/gui/GUINukeMike.java | 16 ++++- .../com/hbm/inventory/gui/GUINukeTsar.java | 14 +++- .../inventory/recipes/AssemblerRecipes.java | 15 +--- .../inventory/recipes/anvil/AnvilRecipes.java | 12 ++++ .../java/com/hbm/items/ItemCustomLore.java | 4 +- src/main/java/com/hbm/items/ModItems.java | 68 +++++++++--------- src/main/java/com/hbm/items/bomb/ItemBoy.java | 19 ----- .../java/com/hbm/items/bomb/ItemGadget.java | 19 ----- src/main/java/com/hbm/items/bomb/ItemMan.java | 19 ----- .../java/com/hbm/items/bomb/ItemManMike.java | 21 ------ .../java/com/hbm/items/bomb/ItemMike.java | 18 ----- .../java/com/hbm/items/bomb/ItemTsar.java | 19 ----- .../com/hbm/items/special/ItemStarterKit.java | 32 ++++----- src/main/java/com/hbm/main/MainRegistry.java | 8 ++- .../tileentity/bomb/TileEntityNukeGadget.java | 10 +-- .../tileentity/bomb/TileEntityNukeMan.java | 10 +-- .../tileentity/bomb/TileEntityNukeMike.java | 18 ++--- .../tileentity/bomb/TileEntityNukeTsar.java | 18 ++--- src/main/resources/assets/hbm/lang/en_US.lang | 17 +++-- .../textures/gui/weapon/fatManSchematic.png | Bin 10273 -> 10270 bytes 25 files changed, 176 insertions(+), 230 deletions(-) delete mode 100644 src/main/java/com/hbm/items/bomb/ItemBoy.java delete mode 100644 src/main/java/com/hbm/items/bomb/ItemGadget.java delete mode 100644 src/main/java/com/hbm/items/bomb/ItemMan.java delete mode 100644 src/main/java/com/hbm/items/bomb/ItemManMike.java delete mode 100644 src/main/java/com/hbm/items/bomb/ItemMike.java delete mode 100644 src/main/java/com/hbm/items/bomb/ItemTsar.java diff --git a/src/main/java/com/hbm/crafting/WeaponRecipes.java b/src/main/java/com/hbm/crafting/WeaponRecipes.java index be12d3896..b11c1091a 100644 --- a/src/main/java/com/hbm/crafting/WeaponRecipes.java +++ b/src/main/java/com/hbm/crafting/WeaponRecipes.java @@ -380,8 +380,6 @@ public class WeaponRecipes { CraftingManager.addRecipeAuto(new ItemStack(ModBlocks.mine_fat, 1), new Object[] { "CDN", 'C', ModItems.circuit_targeting_tier2, 'D', ModItems.ducttape, 'N', ModItems.ammo_nuke }); //Nuke parts - CraftingManager.addRecipeAuto(new ItemStack(ModItems.gadget_explosive8, 1), new Object[] { "EEE", "EPE", "EEE", 'E', ModItems.gadget_explosive, 'P', AL.plate() }); - CraftingManager.addRecipeAuto(new ItemStack(ModItems.man_explosive8, 1), new Object[] { "EEE", "ESE", "EEE", 'E', ModItems.man_explosive, 'S', STEEL.plate() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.n2_charge, 1), new Object[] { " D ", "ERE", " D ", 'D', ModItems.ducttape, 'E', ModBlocks.det_charge, 'R', REDSTONE.block() }); //Custom nuke rods diff --git a/src/main/java/com/hbm/hazard/HazardRegistry.java b/src/main/java/com/hbm/hazard/HazardRegistry.java index c1c0f1ffb..8d396fafe 100644 --- a/src/main/java/com/hbm/hazard/HazardRegistry.java +++ b/src/main/java/com/hbm/hazard/HazardRegistry.java @@ -442,12 +442,7 @@ public class HazardRegistry { HazardSystem.register(ModItems.crystal_trixite, makeData(RADIATION, trx * crystal)); //nuke parts - HazardSystem.register(gadget_explosive, makeData(EXPLOSIVE, 1F)); - HazardSystem.register(gadget_explosive8, makeData(EXPLOSIVE, 8F)); HazardSystem.register(boy_propellant, makeData(EXPLOSIVE, 2F)); - HazardSystem.register(boy_igniter, makeData(EXPLOSIVE, 1F)); - HazardSystem.register(man_explosive, makeData(EXPLOSIVE, 2F)); - HazardSystem.register(man_explosive8, makeData(EXPLOSIVE, 16F)); HazardSystem.register(gadget_core, makeData(RADIATION, pu239 * nugget * 10)); HazardSystem.register(boy_target, makeData(RADIATION, u235 * ingot * 2)); diff --git a/src/main/java/com/hbm/inventory/gui/GUINukeBoy.java b/src/main/java/com/hbm/inventory/gui/GUINukeBoy.java index 43640fb1d..b89cff524 100644 --- a/src/main/java/com/hbm/inventory/gui/GUINukeBoy.java +++ b/src/main/java/com/hbm/inventory/gui/GUINukeBoy.java @@ -6,14 +6,14 @@ import com.hbm.inventory.container.ContainerNukeBoy; import com.hbm.items.ModItems; import com.hbm.lib.RefStrings; import com.hbm.tileentity.bomb.TileEntityNukeBoy; +import com.hbm.util.I18nUtil; import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.client.resources.I18n; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.util.ResourceLocation; -public class GUINukeBoy extends GuiContainer { +public class GUINukeBoy extends GuiInfoContainer { private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/lilBoySchematic.png"); private TileEntityNukeBoy testNuke; @@ -25,6 +25,14 @@ public class GUINukeBoy extends GuiContainer { this.xSize = 176; this.ySize = 222; } + + @Override + public void drawScreen(int mouseX, int mouseY, float f) { + super.drawScreen(mouseX, mouseY, f); + + String[] descText = I18nUtil.resolveKeyArray("desc.gui.nukeBoy.desc"); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 16, 16, 16, guiLeft - 8, guiTop + 16 + 16, descText); + } @Override protected void drawGuiContainerForegroundLayer( int i, int j) { @@ -55,6 +63,8 @@ public class GUINukeBoy extends GuiContainer { drawTexturedModalRect(guiLeft + 92, guiTop + 95, 176, 66, 12, 6); if(testNuke.getStackInSlot(4) != null && testNuke.getStackInSlot(4).getItem() == ModItems.boy_igniter) drawTexturedModalRect(guiLeft + 107, guiTop + 91, 176, 75, 16, 14); + + this.drawInfoPanel(guiLeft - 16, guiTop + 16, 16, 16, 2); } } diff --git a/src/main/java/com/hbm/inventory/gui/GUINukeGadget.java b/src/main/java/com/hbm/inventory/gui/GUINukeGadget.java index e8f533d9b..ad0d4c8ef 100644 --- a/src/main/java/com/hbm/inventory/gui/GUINukeGadget.java +++ b/src/main/java/com/hbm/inventory/gui/GUINukeGadget.java @@ -1,7 +1,6 @@ package com.hbm.inventory.gui; import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.client.resources.I18n; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.util.ResourceLocation; @@ -11,8 +10,9 @@ import org.lwjgl.opengl.GL11; import com.hbm.inventory.container.ContainerNukeGadget; import com.hbm.lib.RefStrings; import com.hbm.tileentity.bomb.TileEntityNukeGadget; +import com.hbm.util.I18nUtil; -public class GUINukeGadget extends GuiContainer { +public class GUINukeGadget extends GuiInfoContainer { private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/gadgetSchematic.png"); private TileEntityNukeGadget testNuke; @@ -25,6 +25,14 @@ public class GUINukeGadget extends GuiContainer { this.ySize = 166; } + @Override + public void drawScreen(int mouseX, int mouseY, float f) { + super.drawScreen(mouseX, mouseY, f); + + String[] descText = I18nUtil.resolveKeyArray("desc.gui.nukeGadget.desc"); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 16, 16, 16, guiLeft - 8, guiTop + 16 + 16, descText); + } + @Override protected void drawGuiContainerForegroundLayer( int i, int j) { String name = this.testNuke.hasCustomInventoryName() ? this.testNuke.getInventoryName() : I18n.format(this.testNuke.getInventoryName()); @@ -63,5 +71,7 @@ public class GUINukeGadget extends GuiContainer { { drawTexturedModalRect(guiLeft + 134, guiTop + 35, 176, 48, 16, 16); } + + this.drawInfoPanel(guiLeft - 16, guiTop + 16, 16, 16, 2); } } diff --git a/src/main/java/com/hbm/inventory/gui/GUINukeMan.java b/src/main/java/com/hbm/inventory/gui/GUINukeMan.java index cd5040b18..b89d2b043 100644 --- a/src/main/java/com/hbm/inventory/gui/GUINukeMan.java +++ b/src/main/java/com/hbm/inventory/gui/GUINukeMan.java @@ -1,7 +1,6 @@ package com.hbm.inventory.gui; import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.client.resources.I18n; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.util.ResourceLocation; @@ -11,8 +10,9 @@ import org.lwjgl.opengl.GL11; import com.hbm.inventory.container.ContainerNukeMan; import com.hbm.lib.RefStrings; import com.hbm.tileentity.bomb.TileEntityNukeMan; +import com.hbm.util.I18nUtil; -public class GUINukeMan extends GuiContainer { +public class GUINukeMan extends GuiInfoContainer { private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/fatManSchematic.png"); private TileEntityNukeMan testNuke; @@ -25,6 +25,14 @@ public class GUINukeMan extends GuiContainer { this.ySize = 166; } + @Override + public void drawScreen(int mouseX, int mouseY, float f) { + super.drawScreen(mouseX, mouseY, f); + + String[] descText = I18nUtil.resolveKeyArray("desc.gui.nukeMan.desc"); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 16, 16, 16, guiLeft - 8, guiTop + 16 + 16, descText); + } + @Override protected void drawGuiContainerForegroundLayer( int i, int j) { String name = this.testNuke.hasCustomInventoryName() ? this.testNuke.getInventoryName() : I18n.format(this.testNuke.getInventoryName()); @@ -63,5 +71,7 @@ public class GUINukeMan extends GuiContainer { { drawTexturedModalRect(guiLeft + 134, guiTop + 35, 176, 48, 16, 16); } + + this.drawInfoPanel(guiLeft - 16, guiTop + 16, 16, 16, 2); } } diff --git a/src/main/java/com/hbm/inventory/gui/GUINukeMike.java b/src/main/java/com/hbm/inventory/gui/GUINukeMike.java index bef83622d..b42539226 100644 --- a/src/main/java/com/hbm/inventory/gui/GUINukeMike.java +++ b/src/main/java/com/hbm/inventory/gui/GUINukeMike.java @@ -6,14 +6,14 @@ import com.hbm.inventory.container.ContainerNukeMike; import com.hbm.items.ModItems; import com.hbm.lib.RefStrings; import com.hbm.tileentity.bomb.TileEntityNukeMike; +import com.hbm.util.I18nUtil; import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.client.resources.I18n; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.util.ResourceLocation; -public class GUINukeMike extends GuiContainer { +public class GUINukeMike extends GuiInfoContainer { private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/ivyMikeSchematic.png"); private TileEntityNukeMike testNuke; @@ -26,6 +26,14 @@ public class GUINukeMike extends GuiContainer { this.ySize = 217; } + @Override + public void drawScreen(int mouseX, int mouseY, float f) { + super.drawScreen(mouseX, mouseY, f); + + String[] descText = I18nUtil.resolveKeyArray("desc.gui.nukeMike.desc"); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 16, 16, 16, guiLeft - 8, guiTop + 16 + 16, descText); + } + @Override protected void drawGuiContainerForegroundLayer( int i, int j) { String name = this.testNuke.hasCustomInventoryName() ? this.testNuke.getInventoryName() : I18n.format(this.testNuke.getInventoryName()); @@ -60,7 +68,7 @@ public class GUINukeMike extends GuiContainer { drawTexturedModalRect(guiLeft + 140, guiTop + 30, 240, 88, 12, 26); for(int i = 0; i < 4; i++) { - if(testNuke.getStackInSlot(i) != null && testNuke.getStackInSlot(i).getItem() == ModItems.man_explosive8) + if(testNuke.getStackInSlot(i) != null && testNuke.getStackInSlot(i).getItem() == ModItems.explosive_lenses) switch(i) { case 0: drawTexturedModalRect(guiLeft + 24, guiTop + 20 , 209, 1, 23, 23); break; case 2: drawTexturedModalRect(guiLeft + 47, guiTop + 20 , 232, 1, 23, 23); break; @@ -68,5 +76,7 @@ public class GUINukeMike extends GuiContainer { case 3: drawTexturedModalRect(guiLeft + 47, guiTop + 43 , 232, 24, 23, 23); break; } } + + this.drawInfoPanel(guiLeft - 16, guiTop + 16, 16, 16, 2); } } \ No newline at end of file diff --git a/src/main/java/com/hbm/inventory/gui/GUINukeTsar.java b/src/main/java/com/hbm/inventory/gui/GUINukeTsar.java index d610d597f..e91e91e65 100644 --- a/src/main/java/com/hbm/inventory/gui/GUINukeTsar.java +++ b/src/main/java/com/hbm/inventory/gui/GUINukeTsar.java @@ -1,7 +1,6 @@ package com.hbm.inventory.gui; import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.client.resources.I18n; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.util.ResourceLocation; @@ -11,8 +10,9 @@ import org.lwjgl.opengl.GL11; import com.hbm.inventory.container.ContainerNukeTsar; import com.hbm.lib.RefStrings; import com.hbm.tileentity.bomb.TileEntityNukeTsar; +import com.hbm.util.I18nUtil; -public class GUINukeTsar extends GuiContainer { +public class GUINukeTsar extends GuiInfoContainer { private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/tsarBombaSchematic.png"); private TileEntityNukeTsar testNuke; @@ -25,6 +25,14 @@ public class GUINukeTsar extends GuiContainer { this.ySize = 166; } + @Override + public void drawScreen(int mouseX, int mouseY, float f) { + super.drawScreen(mouseX, mouseY, f); + + String[] descText = I18nUtil.resolveKeyArray("desc.gui.nukeTsar.desc"); + this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 16, 16, 16, guiLeft - 8, guiTop + 16 + 16, descText); + } + @Override protected void drawGuiContainerForegroundLayer( int i, int j) { String name = this.testNuke.hasCustomInventoryName() ? this.testNuke.getInventoryName() : I18n.format(this.testNuke.getInventoryName()); @@ -48,5 +56,7 @@ public class GUINukeTsar extends GuiContainer { { drawTexturedModalRect(guiLeft + 133, guiTop + 34, 176, 18, 16, 16); } + + this.drawInfoPanel(guiLeft - 16, guiTop + 16, 16, 16, 2); } } diff --git a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java index 74b079842..b6348bd0e 100644 --- a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java @@ -374,7 +374,8 @@ public class AssemblerRecipes { makeRecipe(new ComparableStack(ModItems.grenade_nuclear, 1), new AStack[] {new OreDictStack(IRON.plate(), 1), new OreDictStack(STEEL.plate(), 1), new OreDictStack(PU239.nugget(), 2), new ComparableStack(ModItems.wire_red_copper, 2), },200); makeRecipe(new ComparableStack(ModItems.grenade_zomg, 1), new AStack[] {new ComparableStack(ModItems.plate_paa, 3), new OreDictStack(OreDictManager.getReflector(), 1), new ComparableStack(ModItems.coil_magnetized_tungsten, 3), new ComparableStack(ModItems.powder_power, 3), },300); makeRecipe(new ComparableStack(ModItems.grenade_black_hole, 1), new AStack[] {new OreDictStack(ANY_PLASTIC.ingot(), 6), new OreDictStack(OreDictManager.getReflector(), 3), new ComparableStack(ModItems.coil_magnetized_tungsten, 2), new ComparableStack(ModItems.black_hole, 1), },500); - makeRecipe(new ComparableStack(ModItems.gadget_explosive, 1), new AStack[] {new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 4), new OreDictStack(STEEL.plate(), 2), new OreDictStack(AL.plate(), 3), new ComparableStack(ModItems.wire_gold, 3), },200); + makeRecipe(new ComparableStack(ModItems.early_explosive_lenses, 1), new AStack[] {new OreDictStack(AL.plate(), 8), new ComparableStack(ModItems.hull_small_steel, 4), new ComparableStack(ModItems.wire_copper, 16), new ComparableStack(ModItems.wire_tungsten, 8), new ComparableStack(ModItems.ball_dynamite, 4), new OreDictStack(CU.plate(), 4), new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 24), new OreDictStack(AL.ingot(), 8)},400); //8 HE lenses w/ bridge-wire detonators, aluminum pushers, & duraluminum shell + makeRecipe(new ComparableStack(ModItems.explosive_lenses, 1), new AStack[] {new OreDictStack(AL.plate(), 8), new ComparableStack(ModItems.hull_small_steel, 2), new ComparableStack(ModItems.wire_red_copper, 8), new ComparableStack(ModItems.wire_gold, 8), new OreDictStack(ANY_PLASTICEXPLOSIVE.ingot(), 4), new OreDictStack(CU.plate(), 4), new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 20), new OreDictStack(AL.ingot(), 1)},500); //8 HE (To use 16 PBX ingots) lenses w/ improved bridge-wire detonators, thin aluminum pushers, & duraluminum shell makeRecipe(new ComparableStack(ModItems.gadget_wireing, 1), new AStack[] {new OreDictStack(IRON.plate(), 1), new ComparableStack(ModItems.wire_gold, 12), },100); makeRecipe(new ComparableStack(ModItems.gadget_core, 1), new AStack[] {new OreDictStack(PU239.nugget(), 7), new OreDictStack(U238.nugget(), 3), },200); makeRecipe(new ComparableStack(ModItems.boy_shielding, 1), new AStack[] {new OreDictStack(OreDictManager.getReflector(), 12), new OreDictStack(STEEL.plate(), 4), },150); @@ -382,7 +383,6 @@ public class AssemblerRecipes { makeRecipe(new ComparableStack(ModItems.boy_bullet, 1), new AStack[] {new OreDictStack(U235.nugget(), 9), },100); makeRecipe(new ComparableStack(ModItems.boy_propellant, 1), new AStack[] {new ComparableStack(ModItems.cordite, 8), new OreDictStack(IRON.plate(), 8), new OreDictStack(AL.plate(), 4), new ComparableStack(ModItems.wire_red_copper, 4), },100); makeRecipe(new ComparableStack(ModItems.boy_igniter, 1), new AStack[] {new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 1), new OreDictStack(AL.plate(), 6), new OreDictStack(STEEL.plate(), 1), new ComparableStack(ModItems.circuit_red_copper, 1), new ComparableStack(ModItems.wire_red_copper, 3), },150); //HE for gating purposes - makeRecipe(new ComparableStack(ModItems.man_explosive, 1), new AStack[] {new OreDictStack(ANY_HIGHEXPLOSIVE.ingot(), 2), new OreDictStack(ANY_PLASTICEXPLOSIVE.ingot(), 1), new OreDictStack(STEEL.plate(), 2), new OreDictStack(TI.plate(), 1), new ComparableStack(ModItems.wire_red_copper, 3), },200); makeRecipe(new ComparableStack(ModItems.man_igniter, 1), new AStack[] {new OreDictStack(STEEL.plate(), 6), new ComparableStack(ModItems.circuit_red_copper, 1), new ComparableStack(ModItems.wire_red_copper, 9), },150); makeRecipe(new ComparableStack(ModItems.man_core, 1), new AStack[] {new OreDictStack(PU239.nugget(), 8), new OreDictStack(BE.nugget(), 2), },250); makeRecipe(new ComparableStack(ModItems.mike_core, 1), new AStack[] {new OreDictStack(U238.nugget(), 24), new OreDictStack(PB.ingot(), 6), },250); @@ -775,17 +775,6 @@ public class AssemblerRecipes { new ComparableStack(ModItems.circuit_tantalium, 16) }, 100); - makeRecipe(new ComparableStack(ModBlocks.machine_deuterium_extractor, 1), new AStack[] { - new ComparableStack(ModItems.deuterium_filter, 1), - new ComparableStack(ModItems.sulfur, 12), - new OreDictStack(STEEL.plate(), 4), - new OreDictStack(AL.plate(), 2), - new ComparableStack(ModBlocks.deco_pipe_quad, 4), - new ComparableStack(ModItems.board_copper, 1), - new ComparableStack(ModItems.turbine_titanium, 2), - new ComparableStack(ModItems.circuit_aluminium, 2) - }, 100); - makeRecipe(new ComparableStack(ModBlocks.machine_assemfac, 1), new AStack[] { new OreDictStack(STEEL.ingot(), 48), new OreDictStack(TCALLOY.ingot(), 8), diff --git a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java index 9f79840e7..b6476112f 100644 --- a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java @@ -202,6 +202,18 @@ public class AnvilRecipes { new ComparableStack(Items.feather, 24) }, new AnvilOutput(new ItemStack(ModItems.wings_limp))).setTier(2)); + constructionRecipes.add(new AnvilConstructionRecipe( + new AStack[] { + new ComparableStack(ModItems.sulfur, 8), + new OreDictStack(STEEL.plate(), 4), + new OreDictStack(AL.plate(), 2), + new ComparableStack(ModItems.hull_small_steel, 4), + new ComparableStack(ModItems.board_copper, 1), + new ComparableStack(ModItems.turbine_titanium, 1), + new ComparableStack(ModItems.circuit_aluminium, 1) + }, + new AnvilOutput(new ItemStack(ModBlocks.machine_deuterium_extractor))).setTier(2)); + constructionRecipes.add(new AnvilConstructionRecipe( new AStack[] { new ComparableStack(ModItems.deuterium_filter, 2), diff --git a/src/main/java/com/hbm/items/ItemCustomLore.java b/src/main/java/com/hbm/items/ItemCustomLore.java index 4a845ca3f..883be3ee6 100644 --- a/src/main/java/com/hbm/items/ItemCustomLore.java +++ b/src/main/java/com/hbm/items/ItemCustomLore.java @@ -23,7 +23,9 @@ public class ItemCustomLore extends Item { @Override public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) { - if(MainRegistry.polaroidID == 11) { + boolean p11 = !I18nUtil.resolveKey(this.getUnlocalizedName() + ".desc.P11").equals(this.getUnlocalizedName() + ".desc.P11"); + + if(MainRegistry.polaroidID == 11 && p11) { String unlocP11 = this.getUnlocalizedName() + ".desc.P11"; String locP11 = I18nUtil.resolveKey(unlocP11); diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 9ee90e9e7..382b319b2 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -774,8 +774,8 @@ public class ModItems { public static Item piston_selenium; - public static Item crystal_energy; - public static Item pellet_coolant; + //public static Item crystal_energy; + //public static Item pellet_coolant; public static Item rune_blank; public static Item rune_isa; @@ -1810,8 +1810,9 @@ public class ModItems { public static Item flame_politics; public static Item flame_opinion; - public static Item gadget_explosive; - public static Item gadget_explosive8; + //public static Item gadget_explosive; + public static Item early_explosive_lenses; + public static Item explosive_lenses; public static Item gadget_wireing; public static Item gadget_core; public static Item boy_igniter; @@ -1819,8 +1820,7 @@ public class ModItems { public static Item boy_bullet; public static Item boy_target; public static Item boy_shielding; - public static Item man_explosive; - public static Item man_explosive8; + //public static Item man_explosive; public static Item man_igniter; public static Item man_core; public static Item mike_core; @@ -3202,9 +3202,9 @@ public class ModItems { piston_selenium = new Item().setUnlocalizedName("piston_selenium").setCreativeTab(MainRegistry.controlTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":piston_selenium"); - crystal_energy = new ItemCustomLore().setUnlocalizedName("crystal_energy").setCreativeTab(MainRegistry.controlTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":crystal_energy"); - pellet_coolant = new ItemCustomLore().setUnlocalizedName("pellet_coolant").setMaxDamage(41400).setCreativeTab(MainRegistry.controlTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":pellet_coolant"); - + //crystal_energy = new ItemCustomLore().setUnlocalizedName("crystal_energy").setCreativeTab(MainRegistry.controlTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":crystal_energy"); + //pellet_coolant = new ItemCustomLore().setUnlocalizedName("pellet_coolant").setMaxDamage(41400).setCreativeTab(MainRegistry.controlTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":pellet_coolant"); + rune_blank = new ItemCustomLore().setUnlocalizedName("rune_blank").setCreativeTab(MainRegistry.partsTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":rune_blank"); rune_isa = new ItemCustomLore().setUnlocalizedName("rune_isa").setCreativeTab(MainRegistry.partsTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":rune_isa"); rune_dagaz = new ItemCustomLore().setUnlocalizedName("rune_dagaz").setCreativeTab(MainRegistry.partsTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":rune_dagaz"); @@ -4538,27 +4538,27 @@ public class ModItems { flame_politics = new ItemCustomLore().setUnlocalizedName("flame_politics").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":flame_politics"); flame_opinion = new ItemCustomLore().setUnlocalizedName("flame_opinion").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":flame_opinion"); - gadget_explosive = new Item().setUnlocalizedName("gadget_explosive").setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":gadget_explosive"); - gadget_explosive8 = new ItemGadget().setUnlocalizedName("gadget_explosive8").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":gadget_explosive8"); - gadget_wireing = new ItemGadget().setUnlocalizedName("gadget_wireing").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":gadget_wireing"); - gadget_core = new ItemGadget().setUnlocalizedName("gadget_core").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":gadget_core"); + //gadget_explosive = new Item().setUnlocalizedName("gadget_explosive").setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":gadget_explosive"); + early_explosive_lenses = new ItemCustomLore().setUnlocalizedName("early_explosive_lenses").setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":gadget_explosive8"); + explosive_lenses = new ItemCustomLore().setUnlocalizedName("explosive_lenses").setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":man_explosive8"); + gadget_wireing = new Item().setUnlocalizedName("gadget_wireing").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":gadget_wireing"); + gadget_core = new ItemCustomLore().setRarity(EnumRarity.uncommon).setUnlocalizedName("gadget_core").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":gadget_core"); - boy_igniter = new ItemBoy().setUnlocalizedName("boy_igniter").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":boy_igniter"); - boy_propellant = new ItemBoy().setUnlocalizedName("boy_propellant").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":boy_propellant"); - boy_bullet = new ItemBoy().setUnlocalizedName("boy_bullet").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":boy_bullet"); - boy_target = new ItemBoy().setUnlocalizedName("boy_target").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":boy_target"); - boy_shielding = new ItemBoy().setUnlocalizedName("boy_shielding").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":boy_shielding"); + boy_igniter = new Item().setUnlocalizedName("boy_igniter").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":boy_igniter"); + boy_propellant = new Item().setUnlocalizedName("boy_propellant").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":boy_propellant"); + boy_bullet = new ItemCustomLore().setRarity(EnumRarity.uncommon).setUnlocalizedName("boy_bullet").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":boy_bullet"); + boy_target = new ItemCustomLore().setRarity(EnumRarity.uncommon).setUnlocalizedName("boy_target").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":boy_target"); + boy_shielding = new Item().setUnlocalizedName("boy_shielding").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":boy_shielding"); - man_explosive = new Item().setUnlocalizedName("man_explosive").setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":man_explosive"); - man_explosive8 = new ItemManMike().setUnlocalizedName("man_explosive8").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":man_explosive8"); - man_igniter = new ItemMan().setUnlocalizedName("man_igniter").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":man_igniter"); - man_core = new ItemManMike().setUnlocalizedName("man_core").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":man_core"); + //man_explosive = new Item().setUnlocalizedName("man_explosive").setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":man_explosive"); + man_igniter = new Item().setUnlocalizedName("man_igniter").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":man_igniter"); + man_core = new ItemCustomLore().setRarity(EnumRarity.uncommon).setUnlocalizedName("man_core").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":man_core"); - mike_core = new ItemMike().setUnlocalizedName("mike_core").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":mike_core"); - mike_deut = new ItemMike().setUnlocalizedName("mike_deut").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setContainerItem(ModItems.tank_steel).setTextureName(RefStrings.MODID + ":mike_deut"); - mike_cooling_unit = new ItemMike().setUnlocalizedName("mike_cooling_unit").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":mike_cooling_unit"); + mike_core = new Item().setUnlocalizedName("mike_core").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":mike_core"); + mike_deut = new Item().setUnlocalizedName("mike_deut").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setContainerItem(ModItems.tank_steel).setTextureName(RefStrings.MODID + ":mike_deut"); + mike_cooling_unit = new Item().setUnlocalizedName("mike_cooling_unit").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":mike_cooling_unit"); - tsar_core = new ItemTsar().setUnlocalizedName("tsar_core").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":tsar_core"); + tsar_core = new Item().setUnlocalizedName("tsar_core").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":tsar_core"); fleija_igniter = new ItemFleija().setUnlocalizedName("fleija_igniter").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":fleija_igniter"); fleija_propellant = new ItemFleija().setUnlocalizedName("fleija_propellant").setMaxStackSize(1).setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":fleija_propellant"); @@ -6664,8 +6664,8 @@ public class ModItems { GameRegistry.registerItem(arc_electrode_desh, arc_electrode_desh.getUnlocalizedName()); //Particle Collider Items - GameRegistry.registerItem(crystal_energy, crystal_energy.getUnlocalizedName()); - GameRegistry.registerItem(pellet_coolant, pellet_coolant.getUnlocalizedName()); + //GameRegistry.registerItem(crystal_energy, crystal_energy.getUnlocalizedName()); + //GameRegistry.registerItem(pellet_coolant, pellet_coolant.getUnlocalizedName()); //Particle Collider Fuel GameRegistry.registerItem(part_lithium, part_lithium.getUnlocalizedName()); @@ -7834,10 +7834,13 @@ public class ModItems { //Minecarts GameRegistry.registerItem(cart, cart.getUnlocalizedName()); - + + //High Explosive Lenses + GameRegistry.registerItem(early_explosive_lenses, early_explosive_lenses.getUnlocalizedName()); + GameRegistry.registerItem(explosive_lenses, explosive_lenses.getUnlocalizedName()); + //The Gadget - GameRegistry.registerItem(gadget_explosive, gadget_explosive.getUnlocalizedName()); - GameRegistry.registerItem(gadget_explosive8, gadget_explosive8.getUnlocalizedName()); + //GameRegistry.registerItem(gadget_explosive, gadget_explosive.getUnlocalizedName()); GameRegistry.registerItem(gadget_wireing, gadget_wireing.getUnlocalizedName()); GameRegistry.registerItem(gadget_core, gadget_core.getUnlocalizedName()); @@ -7849,8 +7852,7 @@ public class ModItems { GameRegistry.registerItem(boy_igniter, boy_igniter.getUnlocalizedName());; //Fat Man - GameRegistry.registerItem(man_explosive, man_explosive.getUnlocalizedName()); - GameRegistry.registerItem(man_explosive8, man_explosive8.getUnlocalizedName()); + //GameRegistry.registerItem(man_explosive, man_explosive.getUnlocalizedName()); GameRegistry.registerItem(man_igniter, man_igniter.getUnlocalizedName()); GameRegistry.registerItem(man_core, man_core.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/bomb/ItemBoy.java b/src/main/java/com/hbm/items/bomb/ItemBoy.java deleted file mode 100644 index a857ce098..000000000 --- a/src/main/java/com/hbm/items/bomb/ItemBoy.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.hbm.items.bomb; - -import java.util.List; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -public class ItemBoy extends Item { - - @Override - public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) - { - list.add("Used in:"); - list.add("Little Boy"); - super.addInformation(itemstack, player, list, bool); - } - -} diff --git a/src/main/java/com/hbm/items/bomb/ItemGadget.java b/src/main/java/com/hbm/items/bomb/ItemGadget.java deleted file mode 100644 index ff7bf9549..000000000 --- a/src/main/java/com/hbm/items/bomb/ItemGadget.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.hbm.items.bomb; - -import java.util.List; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -public class ItemGadget extends Item { - - @Override - public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) - { - list.add("Used in:"); - list.add("The Gadget"); - super.addInformation(itemstack, player, list, bool); - } - -} diff --git a/src/main/java/com/hbm/items/bomb/ItemMan.java b/src/main/java/com/hbm/items/bomb/ItemMan.java deleted file mode 100644 index 1d51867a8..000000000 --- a/src/main/java/com/hbm/items/bomb/ItemMan.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.hbm.items.bomb; - -import java.util.List; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -public class ItemMan extends Item { - - @Override - public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) - { - list.add("Used in:"); - list.add("Fat Man"); - super.addInformation(itemstack, player, list, bool); - } - -} diff --git a/src/main/java/com/hbm/items/bomb/ItemManMike.java b/src/main/java/com/hbm/items/bomb/ItemManMike.java deleted file mode 100644 index 52bfa5616..000000000 --- a/src/main/java/com/hbm/items/bomb/ItemManMike.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.hbm.items.bomb; - -import java.util.List; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -public class ItemManMike extends Item { - - @Override - public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) - { - list.add("Used in:"); - list.add("Fat Man"); - list.add("Ivy Mike"); - list.add("Tsar Bomba"); - super.addInformation(itemstack, player, list, bool); - } - -} diff --git a/src/main/java/com/hbm/items/bomb/ItemMike.java b/src/main/java/com/hbm/items/bomb/ItemMike.java deleted file mode 100644 index 29411e724..000000000 --- a/src/main/java/com/hbm/items/bomb/ItemMike.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.hbm.items.bomb; - -import java.util.List; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -public class ItemMike extends Item { - - @Override - public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) - { - list.add("Used in:"); - list.add("Ivy Mike"); - } - -} diff --git a/src/main/java/com/hbm/items/bomb/ItemTsar.java b/src/main/java/com/hbm/items/bomb/ItemTsar.java deleted file mode 100644 index 57ac1804e..000000000 --- a/src/main/java/com/hbm/items/bomb/ItemTsar.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.hbm.items.bomb; - -import java.util.List; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; - -public class ItemTsar extends Item { - - @Override - public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) - { - list.add("Used in:"); - list.add("Tsar Bomba"); - super.addInformation(itemstack, player, list, bool); - } - -} diff --git a/src/main/java/com/hbm/items/special/ItemStarterKit.java b/src/main/java/com/hbm/items/special/ItemStarterKit.java index 632119c6f..1890a002d 100644 --- a/src/main/java/com/hbm/items/special/ItemStarterKit.java +++ b/src/main/java/com/hbm/items/special/ItemStarterKit.java @@ -230,10 +230,10 @@ public class ItemStarterKit extends Item { if(this == ModItems.gadget_kit) { player.inventory.addItemStackToInventory(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_gadget), 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.gadget_explosive8, 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.gadget_explosive8, 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.gadget_explosive8, 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.gadget_explosive8, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.early_explosive_lenses, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.early_explosive_lenses, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.early_explosive_lenses, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.early_explosive_lenses, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.gadget_wireing, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.gadget_core, 1)); @@ -255,10 +255,10 @@ public class ItemStarterKit extends Item { if(this == ModItems.man_kit) { player.inventory.addItemStackToInventory(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_man), 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_explosive8, 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_explosive8, 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_explosive8, 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_explosive8, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.early_explosive_lenses, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.early_explosive_lenses, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.early_explosive_lenses, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.early_explosive_lenses, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_igniter, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_core, 1)); @@ -268,10 +268,10 @@ public class ItemStarterKit extends Item { if(this == ModItems.mike_kit) { player.inventory.addItemStackToInventory(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_mike), 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_explosive8, 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_explosive8, 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_explosive8, 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_explosive8, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.explosive_lenses, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.explosive_lenses, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.explosive_lenses, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.explosive_lenses, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_core, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.mike_core, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.mike_deut, 1)); @@ -283,10 +283,10 @@ public class ItemStarterKit extends Item { if(this == ModItems.tsar_kit) { player.inventory.addItemStackToInventory(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_tsar), 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_explosive8, 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_explosive8, 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_explosive8, 1)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_explosive8, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.explosive_lenses, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.explosive_lenses, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.explosive_lenses, 1)); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.explosive_lenses, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.man_core, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.tsar_core, 1)); diff --git a/src/main/java/com/hbm/main/MainRegistry.java b/src/main/java/com/hbm/main/MainRegistry.java index 74b8d2d49..d85a0c8b1 100644 --- a/src/main/java/com/hbm/main/MainRegistry.java +++ b/src/main/java/com/hbm/main/MainRegistry.java @@ -868,7 +868,7 @@ public class MainRegistry { achBismuth = new Achievement("achievement.bismuth", "bismuth", 11, -6, ModItems.ingot_bismuth, achRBMK).initIndependentStat().registerStat(); achBreeding = new Achievement("achievement.breeding", "breeding", 7, -6, ModItems.ingot_am_mix, achRBMK).initIndependentStat().setSpecial().registerStat(); achFusion = new Achievement("achievement.fusion", "fusion", 13, -7, new ItemStack(ModBlocks.iter), achBismuth).initIndependentStat().setSpecial().registerStat(); - achMeltdown = new Achievement("achievement.meltdown", "meltdown", 15, -7, ModItems.crystal_energy, achFusion).initIndependentStat().setSpecial().registerStat(); + achMeltdown = new Achievement("achievement.meltdown", "meltdown", 15, -7, ModItems.powder_balefire, achFusion).initIndependentStat().setSpecial().registerStat(); achRedBalloons = new Achievement("achievement.redBalloons", "redBalloons", 11, 0, ModItems.missile_nuclear, achPolymer).initIndependentStat().setSpecial().registerStat(); achManhattan = new Achievement("achievement.manhattan", "manhattan", 11, -4, new ItemStack(ModBlocks.nuke_boy), achPolymer).initIndependentStat().setSpecial().registerStat(); @@ -1116,6 +1116,12 @@ public class MainRegistry { ignoreMappings.add("hbm:item.thermo_unit_empty"); ignoreMappings.add("hbm:item.thermo_unit_endo"); ignoreMappings.add("hbm:item.thermo_unit_exo"); + ignoreMappings.add("hbm:item.gadget_explosive"); + ignoreMappings.add("hbm:item.man_explosive"); + ignoreMappings.add("hbm:item.crystal_energy"); + ignoreMappings.add("hbm:item.pellet_coolant"); + remapItems.put("hbm:item.gadget_explosive8", ModItems.early_explosive_lenses); + remapItems.put("hbm:item.man_explosive8", ModItems.explosive_lenses); for(MissingMapping mapping : event.get()) { diff --git a/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeGadget.java b/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeGadget.java index adcb48d52..4777be282 100644 --- a/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeGadget.java +++ b/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeGadget.java @@ -91,7 +91,7 @@ public class TileEntityNukeGadget extends TileEntity implements ISidedInventory @Override public int getInventoryStackLimit() { - return 64; + return 1; } @Override @@ -196,7 +196,7 @@ public class TileEntityNukeGadget extends TileEntity implements ISidedInventory }*/ public boolean exp1() { - if(this.slots[1] != null && this.slots[1].getItem() == ModItems.gadget_explosive8) + if(this.slots[1] != null && this.slots[1].getItem() == ModItems.early_explosive_lenses) { return true; } @@ -205,7 +205,7 @@ public class TileEntityNukeGadget extends TileEntity implements ISidedInventory } public boolean exp2() { - if(this.slots[2] != null && this.slots[2].getItem() == ModItems.gadget_explosive8) + if(this.slots[2] != null && this.slots[2].getItem() == ModItems.early_explosive_lenses) { return true; } @@ -214,7 +214,7 @@ public class TileEntityNukeGadget extends TileEntity implements ISidedInventory } public boolean exp3() { - if(this.slots[3] != null && this.slots[3].getItem() == ModItems.gadget_explosive8) + if(this.slots[3] != null && this.slots[3].getItem() == ModItems.early_explosive_lenses) { return true; } @@ -223,7 +223,7 @@ public class TileEntityNukeGadget extends TileEntity implements ISidedInventory } public boolean exp4() { - if(this.slots[4] != null && this.slots[4].getItem() == ModItems.gadget_explosive8) + if(this.slots[4] != null && this.slots[4].getItem() == ModItems.early_explosive_lenses) { return true; } diff --git a/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeMan.java b/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeMan.java index 8ec6010d9..0ddb12425 100644 --- a/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeMan.java +++ b/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeMan.java @@ -91,7 +91,7 @@ public class TileEntityNukeMan extends TileEntity implements ISidedInventory { @Override public int getInventoryStackLimit() { - return 64; + return 1; } @Override @@ -170,7 +170,7 @@ public class TileEntityNukeMan extends TileEntity implements ISidedInventory { } public boolean exp1() { - if(this.slots[1] != null && this.slots[1].getItem() == ModItems.man_explosive8) + if(this.slots[1] != null && this.slots[1].getItem() == ModItems.early_explosive_lenses) { return true; } @@ -179,7 +179,7 @@ public class TileEntityNukeMan extends TileEntity implements ISidedInventory { } public boolean exp2() { - if(this.slots[2] != null && this.slots[2].getItem() == ModItems.man_explosive8) + if(this.slots[2] != null && this.slots[2].getItem() == ModItems.early_explosive_lenses) { return true; } @@ -188,7 +188,7 @@ public class TileEntityNukeMan extends TileEntity implements ISidedInventory { } public boolean exp3() { - if(this.slots[3] != null && this.slots[3].getItem() == ModItems.man_explosive8) + if(this.slots[3] != null && this.slots[3].getItem() == ModItems.early_explosive_lenses) { return true; } @@ -197,7 +197,7 @@ public class TileEntityNukeMan extends TileEntity implements ISidedInventory { } public boolean exp4() { - if(this.slots[4] != null && this.slots[4].getItem() == ModItems.man_explosive8) + if(this.slots[4] != null && this.slots[4].getItem() == ModItems.early_explosive_lenses) { return true; } diff --git a/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeMike.java b/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeMike.java index f4299b6a4..1a4d07f0f 100644 --- a/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeMike.java +++ b/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeMike.java @@ -91,7 +91,7 @@ public class TileEntityNukeMike extends TileEntity implements ISidedInventory { @Override public int getInventoryStackLimit() { - return 64; + return 1; } @Override @@ -172,10 +172,10 @@ public class TileEntityNukeMike extends TileEntity implements ISidedInventory { public boolean isReady() { if(slots[0] != null && slots[1] != null && slots[2] != null && slots[3] != null && slots[4] != null) - if(slots[0].getItem() == ModItems.man_explosive8 && - slots[1].getItem() == ModItems.man_explosive8 && - slots[2].getItem() == ModItems.man_explosive8 && - slots[3].getItem() == ModItems.man_explosive8 && + if(slots[0].getItem() == ModItems.explosive_lenses && + slots[1].getItem() == ModItems.explosive_lenses && + slots[2].getItem() == ModItems.explosive_lenses && + slots[3].getItem() == ModItems.explosive_lenses && slots[4].getItem() == ModItems.man_core) { return true; @@ -187,10 +187,10 @@ public class TileEntityNukeMike extends TileEntity implements ISidedInventory { public boolean isFilled() { if(slots[0] != null && slots[1] != null && slots[2] != null && slots[3] != null && slots[4] != null && slots[5] != null && slots[6] != null && slots[7] != null) - if(slots[0].getItem() == ModItems.man_explosive8 && - slots[1].getItem() == ModItems.man_explosive8 && - slots[2].getItem() == ModItems.man_explosive8 && - slots[3].getItem() == ModItems.man_explosive8 && + if(slots[0].getItem() == ModItems.explosive_lenses && + slots[1].getItem() == ModItems.explosive_lenses && + slots[2].getItem() == ModItems.explosive_lenses && + slots[3].getItem() == ModItems.explosive_lenses && slots[4].getItem() == ModItems.man_core && slots[5].getItem() == ModItems.mike_core && slots[6].getItem() == ModItems.mike_deut && diff --git a/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeTsar.java b/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeTsar.java index 0975f5817..1df071c68 100644 --- a/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeTsar.java +++ b/src/main/java/com/hbm/tileentity/bomb/TileEntityNukeTsar.java @@ -91,7 +91,7 @@ public class TileEntityNukeTsar extends TileEntity implements ISidedInventory { @Override public int getInventoryStackLimit() { - return 64; + return 1; } @Override @@ -172,10 +172,10 @@ public class TileEntityNukeTsar extends TileEntity implements ISidedInventory { public boolean isReady() { if(slots[0] != null && slots[1] != null && slots[2] != null && slots[3] != null && slots[4] != null) - if(slots[0].getItem() == ModItems.man_explosive8 && - slots[1].getItem() == ModItems.man_explosive8 && - slots[2].getItem() == ModItems.man_explosive8 && - slots[3].getItem() == ModItems.man_explosive8 && + if(slots[0].getItem() == ModItems.explosive_lenses && + slots[1].getItem() == ModItems.explosive_lenses && + slots[2].getItem() == ModItems.explosive_lenses && + slots[3].getItem() == ModItems.explosive_lenses && slots[4].getItem() == ModItems.man_core) { return true; @@ -187,10 +187,10 @@ public class TileEntityNukeTsar extends TileEntity implements ISidedInventory { public boolean isFilled() { if(slots[0] != null && slots[1] != null && slots[2] != null && slots[3] != null && slots[4] != null && slots[5] != null) - if(slots[0].getItem() == ModItems.man_explosive8 && - slots[1].getItem() == ModItems.man_explosive8 && - slots[2].getItem() == ModItems.man_explosive8 && - slots[3].getItem() == ModItems.man_explosive8 && + if(slots[0].getItem() == ModItems.explosive_lenses && + slots[1].getItem() == ModItems.explosive_lenses && + slots[2].getItem() == ModItems.explosive_lenses && + slots[3].getItem() == ModItems.explosive_lenses && slots[4].getItem() == ModItems.man_core && slots[5].getItem() == ModItems.tsar_core) { diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 33e0cd4bc..b9dd2951c 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -571,6 +571,11 @@ desc.gui.assembler.warning=§cError:§r This machine requires an assembly templa desc.gui.chemplant.warning=§cError:§r This machine requires an chemistry template! desc.gui.gasCent.enrichment=§2Enrichment§r$Uranium enrichment requires cascades.$Two-centrifuge cascades will give$uranium fuel, four-centrifuge cascades$will give total separation. desc.gui.gasCent.output=§6Fluid Transfer§r$Fluid can be transferred to another centrifuge$via the output port for further processing. +desc.gui.nukeBoy.desc=§1Requires:§r$ * Neutron Shielding$ * U235 Projectile$ * Subcritical U235 Target$ * Propellant$ * Bomb Igniter +desc.gui.nukeGadget.desc=§1Requires:§r$ * 4 Arrays of First-Generation$ High-Explosive Lenses$ * Heavy Plutonium Core$ * Wiring +desc.gui.nukeMan.desc=§1Requires:§r$ * 4 Arrays of First-Generation$ High-Explosive Lenses$ * Plutonium Core$ * Bomb Firing Unit +desc.gui.nukeMike.desc=§1Requires:§r$ * 4 Arrays of High-Explosive Lenses$ * Plutonium Core$ * Deuterium Cooling Unit$ * Uranium Coated Deuterium Tank$ * Deuterium Tank +desc.gui.nukeTsar.desc=§1Requires:§r$ * 4 Arrays of High-Explosive Lenses$ * Plutonium Core$§9Optional:§r$ * Tsar Bomba Core desc.gui.radiolysis.desc=§9Description§r$This RTG is more efficient then others, and$comes equipped with a radiolysis chamber for$cracking and sterilization. desc.gui.rtgBFurnace.desc=Requires at least 15 heat to process$The more heat on top of that, the faster it runs$Heat going over maximum speed will have no effect$Short-lived pellets may decay desc.gui.rtg.heat=§eCurrent heat level: %s @@ -970,7 +975,7 @@ item.ams_core_thingy.name=Thingy (AMS/DFC Core) item.ams_core_wormhole.name=Tiny Wormhole (AMS/DFC Core) item.ams_focus_blank.name=Blank Stabilizer Focus item.ams_focus_booster.name=Boosting Stabilizer Focus -item.ams_focus_booster.name=Weaker restriction field and core energy injection:$More heat generation, extra energy. +item.ams_focus_booster.desc=Weaker restriction field and core energy injection:$More heat generation, extra energy. item.ams_focus_limiter.name=Limiting Stabilizer Focus item.ams_focus_limiter.desc=Maximum performance for restriction field:$Standard cooling, no energy bonus. item.ams_lens.name=Stabilizer Lens @@ -1556,6 +1561,8 @@ item.dynosphere_euphemium_charged.name=Euphemium Dynosphere (Charged) item.dynosphere_schrabidium.name=Schrabidium Dynosphere item.dynosphere_schrabidium_charged.name=Schrabidium Dynosphere (Charged) item.dysfunctional_reactor.name=Dysfunctional Nuclear Reactor +item.early_explosive_lenses.name=Array of First-Generation High-Explosive Lenses +item.early_explosive_lenses.desc=Assembly of 8 high-explosive lenses with an aluminium$pusher, duraluminium shell, and bridgewire detonators. item.egg_balefire.name=Balefire Egg item.egg_balefire.desc=What kind of bird lays a radioactive egg? item.egg_balefire_shard.name=Balefire Shard @@ -1572,6 +1579,8 @@ item.euphemium_kit.name=Euphemium Kit item.euphemium_legs.name=Euphemium Leggings item.euphemium_plate.name=Euphemium Chestplate item.euphemium_stopper.name=Stopper +item.explosive_lenses.name=Array of High-Explosive Lenses +item.explosive_lenses.desc=Assembly of 8 PBX lenses with a thin$aluminium pusher, duraluminium shell, and$miniaturized bridgewire detonators. item.fabsols_vodka.name=Fabsol's Vodka item.factory_core_advanced.name=Advanced Factory Energy Cluster item.factory_core_titanium.name=Basic Factory Energy Cluster @@ -1642,9 +1651,8 @@ item.fusion_shield_chlorophyte.name=Chlorophyte-Metallized Fusion Reactor Blanke item.fusion_shield_desh.name=Desh Fusion Reactor Blanket item.fusion_shield_tungsten.name=Tungsten Fusion Reactor Blanket item.fusion_shield_vaporwave.name=Vaporwave Fusion Reactor Blanket -item.gadget_core.name=Plutonium Core +item.gadget_core.name=Large Plutonium Core item.gadget_explosive.name=First Generation Explosive Lens -item.gadget_explosive8.name=Bundle of First Generation Implosion Propellant item.gadget_kit.name=The Gadget Kit item.gadget_wireing.name=Wiring item.gas_biogas.name=Biogas Tank @@ -2050,8 +2058,7 @@ item.magnet_dee.name=Dee Magnets item.magnetron.name=Magnetron item.man_core.name=Plutonium Core item.man_explosive.name=Explosive Lens -item.man_explosive8.name=Bundle of Implosion Propellant -item.man_igniter.name=Bomb Igniter +item.man_igniter.name=Bomb Firing Unit item.man_kit.name=Fat Man Kit item.marshmallow.name=Marshmallow on a Stick item.mask_of_infamy.name=Mask of Infamy diff --git a/src/main/resources/assets/hbm/textures/gui/weapon/fatManSchematic.png b/src/main/resources/assets/hbm/textures/gui/weapon/fatManSchematic.png index 8eb62ae2e858d58ca2c1c8b9467cb66e9bc88c7f..631b0cd719e47539801592b86262fd8b18ca63af 100644 GIT binary patch delta 8872 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

j9)&WwgN9ZPA?J(vf~~ueKR} z5>3L!cACX|o6)_xUxT#@$7#fs^nxqaY+?_NbQa)FF%J3cb^%V08mAZju;&@2v+~?w z@un|B{&pH^ot@>Z)JgW9`(u*1nQqO)#zf=9xAXPNXiNz`c2Z9*+LAXb{Ur|^EGuuh zscDr#jc6$2M9QcO^p0-X_}HAU<~8SqOjs-&FnLX|rmL>Oxo!&yE|AX!>dIgcfvYpA zNj>`Upmfb*>@R1nt+Zmhr|lLA0A&u#Q0$ycd6PiApCkBalUB1=0 z70Y&6NM@#KX_GtdXGI<_->DC_A-e0%u#>!uihZI`q+Od!hlKIBqwjUi#%yD}J-Ebh zNnqASK!poakF7TFm6Hp9)VQ&ctu;?2I>s|1+{Y7C9%NFGJ@GmlX^ATh8;}ZfB4LIM znEB9gkjD{@vrIFOj&(W_rOqqfnfQnXjQf);qk31f9?wL?J#Q#O8kp3TGb}k$l1}+P z1lz{-@!!C7<7Nh>Y{wd_SNLT@9NjP|@R%dI7#)Py)*1&n)C@mm+#mP;=i#A9lB=cp zy!5Gq;nOjtiP3J*PFY}$Xh-*JRQQTVP@7f1@q}{rJ8G=?xQpX zTgt>1m1&{lq4x^qpbFFLvWUf5d{3Rdi@rDK3OC!B*mf-AQek*=B4-zu5~nJMry56u zY%iI1uyU@RE$)cg>$%%tqP||U=fs>}MPprRXxb zRDAB71DqtpGwpu8VoUO>GXDYN38U(ADXLnuy7{_dv7_%aD0c6f&C{2Z`Go3E#|TH} z0YzIfKqcr^!H^^m%@4%oY{|6NMI~Pt>Dc@>&JMAZDV6NMa!VS}AK_FLu5}{0a;Hc! z?~x$D&qG*jG9FbB5BZq$R!-ct`ALOwb6jr_Q_|4Y3wFc%mT1rCl<@|pT0?gqFKlSd z-1N(ie8OM94I;mF6qf-Ssw&E5-1yWq)>n9u2iE7!MC<+TtYaTu8kQcTK!d5S9o`TO zB=EG{dacZ*J`5}8IYbjf-}o9s8;?&M;MKg448XYE2e;EjJ5+b;x(Q zGWq7;-@v|$UQZPz#nV)xu2Z(Jg}PRlb!c9B-^svet&|08CP~!blcb9yj*C?L>vSF# zn^?S~RAE7-8n4Kv7&V4;Xc3$^ky_!2mzN_6AF62i#BPeL$mhVxbApw3^?>Y}-_DP= z4!(nHBMN?yLZL47@sG21Wt%jpT0QmFfO2qzBWcRr?caEPo!x>3x}7gx#^QgsU(;d6 zpej3HygAiER0Q&pSz11Y z{qQf3P-RGGq@pR-%CuHVh)^|`gLAKwc+`LlH4qJc4n?vmf=+0|WwINIasbWD*h_g- ze(Ky(^V$iPG|F+I3rOz=NuBc8YDuM7|p6ydft~lNsDqQEP!a-MWR~j7I zGW5`^5#~f>Wif>YLLoii&k(vZ>`M2!l`!L7=pgHsXB>%G-XtXM-D=H z*d-I!C`~F&g31oMq`;&Omd9G?c zhEc>Eh#e8wi7NLz?y%eR^pXA5jOr$1UIevy=9(kQsUUn4pH{6-9bg zxggAP>j5?yRGh7q`WJ$^yL-E>ZV37AO zhI8E)ubIEnEtB3Yq;Yqk`w)0@lx~VIe)nGi&Pm^K^z}U0?dJbOveo~ZJdTUti*{sG zW^nYWp;FcD8wFsmIR0V5IDsw5=O(9*SvT^w=v}L)=wC64h}F>{?P9NC#81xscZ6|KCp zO&VIH#|_a7p(y?mT1d+kE>rwUni%;UAd}<-;2BQ#7Rp6nvs4D>QEJiv>08xX4|G2j z;3<0LN%^At$hjeu=~y9-e~;7hKbww&ZSxW`K8vn%bh`Kr{9E_59%)vo+eZFBWR_9h delta 8883 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 NO*L&)k&1cH{{i?ENFx9M