diff --git a/changelog b/changelog index a05a9fc17..0a380e1fd 100644 --- a/changelog +++ b/changelog @@ -4,6 +4,14 @@ * Drone hitboxes are now way smaller, which should cause them to get stuck when flying less * The new FENSU now keeps its charge and installed muffler when broken * Battery sockets are now compatible with comparator output +* Battery sockets now have a tooltip when a battery pack is installed +* Sef-charging batteries have been reworked + * They are now a new item with metadata (legacy ones still work) + * The base form is an empty selfcharger which is filled with two billets of material, i.e. no more upgrade recipes + * There are a few new variants like cobalt-60 and gold-198 + * New selfchargers have a model when plugged into a battery socket + * Selfchargers are a fair bit weaker than their old counterparts, but substantially cheaper too +* Old batteries now have the "LEGACY" tag ## Fixed * Fixed the FEnSU, cyclotron and reliant robin missile being uncraftable due to stacksize limitations @@ -15,4 +23,6 @@ * Fixed enchantability on many armor sets being incorrect * Most power armors are intended to not be enchantable at all * Fixed crash caused by the balefire bomb -* Fixed JSON gun reload animations becoming faster and faster with the trenchmaster set \ No newline at end of file +* Fixed JSON gun reload animations becoming faster and faster with the trenchmaster set +* Fixed heat transfer rate labels on the boilers and coker unit being off by a magnitude of 10 +* Fixed crucible not having a heat transfer rate tooltip \ No newline at end of file diff --git a/src/main/java/com/hbm/blocks/machine/MachineCrucible.java b/src/main/java/com/hbm/blocks/machine/MachineCrucible.java index cb9671776..c7ad347bd 100644 --- a/src/main/java/com/hbm/blocks/machine/MachineCrucible.java +++ b/src/main/java/com/hbm/blocks/machine/MachineCrucible.java @@ -5,6 +5,7 @@ import java.util.List; import com.hbm.blocks.BlockDummyable; import com.hbm.blocks.ICustomBlockHighlight; +import com.hbm.blocks.ITooltipProvider; import com.hbm.inventory.material.Mats.MaterialStack; import com.hbm.items.machine.ItemScraps; import com.hbm.main.MainRegistry; @@ -27,7 +28,7 @@ import net.minecraft.world.World; import net.minecraftforge.client.event.DrawBlockHighlightEvent; import net.minecraftforge.common.util.ForgeDirection; -public class MachineCrucible extends BlockDummyable implements ICrucibleAcceptor { +public class MachineCrucible extends BlockDummyable implements ICrucibleAcceptor, ITooltipProvider { public MachineCrucible() { super(Material.rock); @@ -181,4 +182,9 @@ public class MachineCrucible extends BlockDummyable implements ICrucibleAcceptor @Override public boolean canAcceptPartialFlow(World world, int x, int y, int z, ForgeDirection side, MaterialStack stack) { return false; } @Override public MaterialStack flow(World world, int x, int y, int z, ForgeDirection side, MaterialStack stack) { return null; } + + @Override + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) { + this.addStandardInfo(stack, player, list, ext); + } } diff --git a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java index 6ad7036c3..97510ed26 100644 --- a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java @@ -126,7 +126,6 @@ import net.minecraft.item.ItemStack; makeRecipe(new ComparableStack(ModBlocks.machine_crystallizer, 1), new AStack[] {new OreDictStack(STEEL.plateWelded(), 2), new OreDictStack(TI.shell(), 3), new OreDictStack(DESH.ingot(), 4), new ComparableStack(ModItems.motor, 1), new ComparableStack(ModItems.circuit, 2, EnumCircuitType.BASIC), },200); makeRecipe(new ComparableStack(ModBlocks.machine_fluidtank, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 2), new OreDictStack(STEEL.plate(), 6), new OreDictStack(STEEL.shell(), 4), new OreDictStack(ANY_TAR.any(), 4), },150); makeRecipe(new ComparableStack(ModBlocks.machine_bat9000, 1), new AStack[] {new OreDictStack(STEEL.plate(), 16), new OreDictStack(ANY_RESISTANTALLOY.plateWelded(), 2), new ComparableStack(ModBlocks.steel_scaffold, 16), new OreDictStack(ANY_TAR.any(), 16), },150); - makeRecipe(new ComparableStack(ModBlocks.machine_orbus, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 12), new OreDictStack(ANY_RESISTANTALLOY.plateWelded(), 8), new OreDictStack(BIGMT.plate(), 12), new ComparableStack(ModItems.coil_advanced_alloy, 12), new ComparableStack(ModItems.battery_sc_polonium, 1) }, 200); makeRecipe(new ComparableStack(ModBlocks.machine_turbofan, 1), new AStack[] {!exp ? new OreDictStack(TI.shell(), 8) : new OreDictStack(TI.heavyComp(), 1), new OreDictStack(DURA.pipe(), 4), new OreDictStack(ANY_PLASTIC.ingot(), 12), new ComparableStack(ModItems.turbine_tungsten, 1), new OreDictStack(GOLD.wireDense(), 12), new ComparableStack(ModItems.circuit, 3, EnumCircuitType.BASIC.ordinal()) }, 300); makeRecipe(new ComparableStack(ModBlocks.machine_turbinegas, 1), new AStack[] {!exp ? new OreDictStack(STEEL.shell(), 10) : new OreDictStack(STEEL.heavyComp(), 2), new OreDictStack(GOLD.wireDense(), 12), new OreDictStack(DURA.pipe(), 4), new ComparableStack(ModBlocks.steel_scaffold, 8), new OreDictStack(STEEL.pipe(), 4), new ComparableStack(ModItems.turbine_tungsten, 3), new ComparableStack(ModItems.motor, 2), new ComparableStack(ModItems.ingot_rubber, 4), new ComparableStack(ModItems.circuit, 3, EnumCircuitType.BASIC.ordinal())}, 600); makeRecipe(new ComparableStack(ModBlocks.watz_element, 3), new AStack[] {new OreDictStack(STEEL.plateCast(), 2), new OreDictStack(ZR.ingot(), 2), new OreDictStack(BIGMT.ingot(), 2), new OreDictStack(ANY_HARDPLASTIC.ingot(), 4)},200); diff --git a/src/main/java/com/hbm/inventory/recipes/AssemblyMachineRecipes.java b/src/main/java/com/hbm/inventory/recipes/AssemblyMachineRecipes.java index aee6c4b70..2a9c16c95 100644 --- a/src/main/java/com/hbm/inventory/recipes/AssemblyMachineRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/AssemblyMachineRecipes.java @@ -28,6 +28,7 @@ import com.hbm.items.ItemEnums.EnumSecretType; import com.hbm.items.ItemGenericPart.EnumPartType; import com.hbm.items.machine.ItemFluidIcon; import com.hbm.items.machine.ItemBatteryPack.EnumBatteryPack; +import com.hbm.items.machine.ItemBatterySC.EnumBatterySC; import com.hbm.items.machine.ItemCircuit.EnumCircuitType; import com.hbm.items.machine.ItemDrillbit.EnumDrillType; import com.hbm.items.machine.ItemPACoil.EnumCoilType; @@ -456,8 +457,8 @@ public class AssemblyMachineRecipes extends GenericRecipes { .inputItems(new OreDictStack(STEEL.plate(), 16), new OreDictStack(ANY_RESISTANTALLOY.plateWelded(), 2), new ComparableStack(ModBlocks.steel_scaffold, 16), new OreDictStack(ANY_TAR.any(), 16)) .inputItemsEx(new ComparableStack(ModItems.item_expensive, 4, EnumExpensiveType.FERRO_PLATING), new ComparableStack(ModBlocks.steel_scaffold, 16), new OreDictStack(ANY_TAR.any(), 16))); this.register(new GenericRecipe("ass.orbus").setup(300, 100).outputItems(new ItemStack(ModBlocks.machine_orbus, 1)) - .inputItems(new OreDictStack(ANY_RESISTANTALLOY.plateWelded(), 8), new OreDictStack(BIGMT.plateCast(), 4), new ComparableStack(ModItems.coil_advanced_alloy, 12), new ComparableStack(ModItems.battery_sc_polonium, 1)) - .inputItemsEx(new ComparableStack(ModItems.item_expensive, 8, EnumExpensiveType.FERRO_PLATING), new OreDictStack(BIGMT.plateCast(), 16), new ComparableStack(ModItems.coil_advanced_alloy, 24), new ComparableStack(ModItems.battery_sc_polonium, 1))); + .inputItems(new OreDictStack(ANY_RESISTANTALLOY.plateWelded(), 8), new OreDictStack(BIGMT.plateCast(), 4), new ComparableStack(ModItems.coil_advanced_alloy, 12), new ComparableStack(ModItems.battery_sc, 1, EnumBatterySC.PO210)) + .inputItemsEx(new ComparableStack(ModItems.item_expensive, 8, EnumExpensiveType.FERRO_PLATING), new OreDictStack(BIGMT.plateCast(), 16), new ComparableStack(ModItems.coil_advanced_alloy, 24), new ComparableStack(ModItems.battery_sc, 1, EnumBatterySC.PO210))); // accelerators this.register(new GenericRecipe("ass.cyclotron").setup(600, 100).outputItems(new ItemStack(ModBlocks.machine_cyclotron, 1)) diff --git a/src/main/java/com/hbm/inventory/recipes/MachineRecipes.java b/src/main/java/com/hbm/inventory/recipes/MachineRecipes.java index ecbe59072..fd6668851 100644 --- a/src/main/java/com/hbm/inventory/recipes/MachineRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/MachineRecipes.java @@ -7,6 +7,7 @@ import com.hbm.inventory.FluidContainer; import com.hbm.inventory.FluidContainerRegistry; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemBatteryPack.EnumBatteryPack; +import com.hbm.items.machine.ItemBatterySC.EnumBatterySC; import com.hbm.util.Tuple.Triplet; import net.minecraft.init.Blocks; @@ -52,14 +53,8 @@ public class MachineRecipes { fuels.add(new ItemStack(ModItems.fusion_core)); fuels.add(new ItemStack(ModItems.energy_core)); for(EnumBatteryPack num : EnumBatteryPack.values()) fuels.add(new ItemStack(ModItems.battery_pack, 1, num.ordinal())); + for(EnumBatterySC num : EnumBatterySC.values()) fuels.add(new ItemStack(ModItems.battery_sc, 1, num.ordinal())); fuels.add(new ItemStack(ModItems.battery_creative)); - fuels.add(new ItemStack(ModItems.battery_sc_uranium)); - fuels.add(new ItemStack(ModItems.battery_sc_technetium)); - fuels.add(new ItemStack(ModItems.battery_sc_plutonium)); - fuels.add(new ItemStack(ModItems.battery_sc_polonium)); - fuels.add(new ItemStack(ModItems.battery_sc_gold)); - fuels.add(new ItemStack(ModItems.battery_sc_lead)); - fuels.add(new ItemStack(ModItems.battery_sc_americium)); return fuels; } 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 27d058172..de7d3e6e8 100644 --- a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java @@ -26,6 +26,7 @@ import com.hbm.inventory.recipes.loader.SerializableRecipe; import com.hbm.items.ItemEnums.EnumChunkType; import com.hbm.items.ModItems; import com.hbm.items.food.ItemFlask.EnumInfusion; +import com.hbm.items.machine.ItemBatterySC.EnumBatterySC; import com.hbm.items.machine.ItemCircuit.EnumCircuitType; import com.hbm.util.Tuple.Pair; @@ -751,7 +752,7 @@ public class AnvilRecipes extends SerializableRecipe { new AnvilOutput(new ItemStack(ModItems.scrap, 1)), new AnvilOutput(new ItemStack(ModItems.coil_tungsten, 2)), new AnvilOutput(new ItemStack(Items.bread, 1), 0.5F), - new AnvilOutput(new ItemStack(ModItems.battery_sc_uranium, 1), 0.1F), + new AnvilOutput(new ItemStack(ModItems.battery_sc, 1, EnumBatterySC.RA226.ordinal()), 0.1F), new AnvilOutput(new ItemStack(ModItems.fusion_core, 1), 0.05F) } diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 73dd3ea86..7fd1ba599 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -1657,13 +1657,15 @@ public class ModItems { public static Item battery_spark; public static Item battery_trixite; - public static Item battery_sc_uranium; - public static Item battery_sc_technetium; - public static Item battery_sc_plutonium; - public static Item battery_sc_polonium; - public static Item battery_sc_gold; - public static Item battery_sc_lead; - public static Item battery_sc_americium; + @Deprecated public static Item battery_sc_uranium; + @Deprecated public static Item battery_sc_technetium; + @Deprecated public static Item battery_sc_plutonium; + @Deprecated public static Item battery_sc_polonium; + @Deprecated public static Item battery_sc_gold; + @Deprecated public static Item battery_sc_lead; + @Deprecated public static Item battery_sc_americium; + + public static Item battery_sc; public static Item battery_potato; public static Item battery_potatos; @@ -3899,13 +3901,14 @@ public class ModItems { battery_creative = new ItemBatteryCreative().setUnlocalizedName("battery_creative").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_creative_new"); cube_power = new ItemBattery(1000000000000000000L, 1000000000000000L, 1000000000000000L).setUnlocalizedName("cube_power").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":cube_power"); - battery_sc_uranium = new ItemSelfcharger(5).setUnlocalizedName("battery_sc_uranium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_sc_uranium"); - battery_sc_technetium = new ItemSelfcharger(25).setUnlocalizedName("battery_sc_technetium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_sc_technetium"); - battery_sc_plutonium = new ItemSelfcharger(100).setUnlocalizedName("battery_sc_plutonium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_sc_plutonium"); - battery_sc_polonium = new ItemSelfcharger(500).setUnlocalizedName("battery_sc_polonium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_sc_polonium"); - battery_sc_gold = new ItemSelfcharger(2500).setUnlocalizedName("battery_sc_gold").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_sc_gold"); - battery_sc_lead = new ItemSelfcharger(5000).setUnlocalizedName("battery_sc_lead").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_sc_lead"); - battery_sc_americium = new ItemSelfcharger(10000).setUnlocalizedName("battery_sc_americium").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_sc_americium"); + battery_sc_uranium = new ItemSelfcharger(5).setUnlocalizedName("battery_sc_uranium").setMaxStackSize(1).setCreativeTab(null).setTextureName(RefStrings.MODID + ":battery_sc_uranium"); + battery_sc_technetium = new ItemSelfcharger(25).setUnlocalizedName("battery_sc_technetium").setMaxStackSize(1).setCreativeTab(null).setTextureName(RefStrings.MODID + ":battery_sc_technetium"); + battery_sc_plutonium = new ItemSelfcharger(100).setUnlocalizedName("battery_sc_plutonium").setMaxStackSize(1).setCreativeTab(null).setTextureName(RefStrings.MODID + ":battery_sc_plutonium"); + battery_sc_polonium = new ItemSelfcharger(500).setUnlocalizedName("battery_sc_polonium").setMaxStackSize(1).setCreativeTab(null).setTextureName(RefStrings.MODID + ":battery_sc_polonium"); + battery_sc_gold = new ItemSelfcharger(2500).setUnlocalizedName("battery_sc_gold").setMaxStackSize(1).setCreativeTab(null).setTextureName(RefStrings.MODID + ":battery_sc_gold"); + battery_sc_lead = new ItemSelfcharger(5000).setUnlocalizedName("battery_sc_lead").setMaxStackSize(1).setCreativeTab(null).setTextureName(RefStrings.MODID + ":battery_sc_lead"); + battery_sc_americium = new ItemSelfcharger(10000).setUnlocalizedName("battery_sc_americium").setMaxStackSize(1).setCreativeTab(null).setTextureName(RefStrings.MODID + ":battery_sc_americium"); + battery_sc = new ItemBatterySC().setUnlocalizedName("battery_sc").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_sc"); battery_potato = new ItemBattery(1000, 0, 100).setUnlocalizedName("battery_potato").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_potato"); battery_potatos = new ItemPotatos(500000, 0, 100).setUnlocalizedName("battery_potatos").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_potatos"); @@ -5704,6 +5707,7 @@ public class ModItems { GameRegistry.registerItem(battery_spark_cell_power, battery_spark_cell_power.getUnlocalizedName()); GameRegistry.registerItem(battery_pack, battery_pack.getUnlocalizedName()); + GameRegistry.registerItem(battery_sc, battery_sc.getUnlocalizedName()); GameRegistry.registerItem(battery_creative, battery_creative.getUnlocalizedName()); GameRegistry.registerItem(cube_power, cube_power.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/machine/ItemBatterySC.java b/src/main/java/com/hbm/items/machine/ItemBatterySC.java new file mode 100644 index 000000000..691b60b1a --- /dev/null +++ b/src/main/java/com/hbm/items/machine/ItemBatterySC.java @@ -0,0 +1,62 @@ +package com.hbm.items.machine; + +import java.util.List; + +import com.hbm.items.ItemEnumMulti; +import com.hbm.main.MainRegistry; +import com.hbm.util.BobMathUtil; +import com.hbm.util.EnumUtil; + +import api.hbm.energymk2.IBatteryItem; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; + +public class ItemBatterySC extends ItemEnumMulti implements IBatteryItem { + + public ItemBatterySC() { + super(EnumBatterySC.class, true, true); + this.setMaxStackSize(1); + this.setCreativeTab(MainRegistry.controlTab); + } + + public static enum EnumBatterySC { + + EMPTY( 0), + WASTE( 150), + RA226( 200), + TC99( 500), + CO60( 750), + PU238( 1_000), + PO210( 1_250), + AU198( 1_500), + PB209( 2_000), + AM241( 2_500); + + public long power; + + private EnumBatterySC(long power) { + this.power = power; + } + } + + @Override public void chargeBattery(ItemStack stack, long i) { } + @Override public void setCharge(ItemStack stack, long i) { } + @Override public void dischargeBattery(ItemStack stack, long i) { } + @Override public long getChargeRate(ItemStack stack) { return 0; } + + @Override public long getCharge(ItemStack stack) { return getMaxCharge(stack); } + @Override public long getDischargeRate(ItemStack stack) { return getMaxCharge(stack); } + + @Override + public long getMaxCharge(ItemStack stack) { + EnumBatterySC pack = EnumUtil.grabEnumSafely(EnumBatterySC.class, stack.getItemDamage()); + return pack.power; + } + + @Override + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) { + EnumBatterySC pack = EnumUtil.grabEnumSafely(EnumBatterySC.class, stack.getItemDamage()); + if(pack.power > 0) list.add(EnumChatFormatting.YELLOW + "Discharge rate: " + BobMathUtil.getShortNumber(pack.power) + "HE/t"); + } +} diff --git a/src/main/java/com/hbm/main/CraftingManager.java b/src/main/java/com/hbm/main/CraftingManager.java index 26e7fafe1..47e9829bb 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -31,6 +31,7 @@ import com.hbm.items.food.ItemConserve.EnumFoodType; import com.hbm.items.machine.ItemArcElectrode.EnumElectrodeType; import com.hbm.items.machine.ItemBattery; import com.hbm.items.machine.ItemBatteryPack.EnumBatteryPack; +import com.hbm.items.machine.ItemBatterySC.EnumBatterySC; import com.hbm.items.machine.ItemCircuit.EnumCircuitType; import com.hbm.items.machine.ItemFluidIDMulti; import com.hbm.items.special.ItemCircuitStarComponent.CircuitComponentType; @@ -271,6 +272,17 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModItems.battery_pack, 1, EnumBatteryPack.BATTERY_REDSTONE.ordinal()), new Object[] { "IRI", "PRP", "IRI", 'I', IRON.plate(), 'R', REDSTONE.block(), 'P', ModItems.plate_polymer }); addRecipeAuto(new ItemStack(ModItems.battery_pack, 1, EnumBatteryPack.CAPACITOR_COPPER.ordinal()), new Object[] { "IRI", "PRP", "IRI", 'I', STEEL.plate(), 'R', CU.block(), 'P', ModItems.plate_polymer }); + addRecipeAuto(new ItemStack(ModItems.battery_sc, 1, EnumBatterySC.EMPTY.ordinal()), new Object[] { "PGP", "L L", "PGP", 'P', ANY_PLASTIC.ingot(), 'G', GOLD.wireFine(), 'L', PB.plate() }); + addShapelessAuto(new ItemStack(ModItems.battery_sc, 1, EnumBatterySC.WASTE.ordinal()), new Object[] { DictFrame.fromOne(ModItems.battery_sc, EnumBatterySC.EMPTY), ModItems.billet_nuclear_waste, ModItems.billet_nuclear_waste }); + addShapelessAuto(new ItemStack(ModItems.battery_sc, 1, EnumBatterySC.RA226.ordinal()), new Object[] { DictFrame.fromOne(ModItems.battery_sc, EnumBatterySC.EMPTY), RA226.billet(), RA226.billet() }); + addShapelessAuto(new ItemStack(ModItems.battery_sc, 1, EnumBatterySC.TC99.ordinal()), new Object[] { DictFrame.fromOne(ModItems.battery_sc, EnumBatterySC.EMPTY), TC99.billet(), TC99.billet() }); + addShapelessAuto(new ItemStack(ModItems.battery_sc, 1, EnumBatterySC.CO60.ordinal()), new Object[] { DictFrame.fromOne(ModItems.battery_sc, EnumBatterySC.EMPTY), CO60.billet(), CO60.billet() }); + addShapelessAuto(new ItemStack(ModItems.battery_sc, 1, EnumBatterySC.PU238.ordinal()), new Object[] { DictFrame.fromOne(ModItems.battery_sc, EnumBatterySC.EMPTY), PU238.billet(), PU238.billet() }); + addShapelessAuto(new ItemStack(ModItems.battery_sc, 1, EnumBatterySC.PO210.ordinal()), new Object[] { DictFrame.fromOne(ModItems.battery_sc, EnumBatterySC.EMPTY), PO210.billet(), PO210.billet() }); + addShapelessAuto(new ItemStack(ModItems.battery_sc, 1, EnumBatterySC.AU198.ordinal()), new Object[] { DictFrame.fromOne(ModItems.battery_sc, EnumBatterySC.EMPTY), AU198.billet(), AU198.billet() }); + addShapelessAuto(new ItemStack(ModItems.battery_sc, 1, EnumBatterySC.PB209.ordinal()), new Object[] { DictFrame.fromOne(ModItems.battery_sc, EnumBatterySC.EMPTY), PB209.billet(), PB209.billet() }); + addShapelessAuto(new ItemStack(ModItems.battery_sc, 1, EnumBatterySC.AM241.ordinal()), new Object[] { DictFrame.fromOne(ModItems.battery_sc, EnumBatterySC.EMPTY), AM241.billet(), AM241.billet() }); + GameRegistry.addRecipe(new ContainerUpgradeCraftingHandler(new ItemStack(ModBlocks.crate_desh, 1), new Object[] { " D ", "DSD", " D ", 'D', ModItems.plate_desh, 'S', ModBlocks.crate_steel })); GameRegistry.addRecipe(new ContainerUpgradeCraftingHandler(new ItemStack(ModBlocks.crate_tungsten, 1), new Object[] { "BPB", "PCP", "BPB", 'B', W.block(), 'P', CU.plateCast(), 'C', ModBlocks.crate_steel })); // Note: voids the last few slots when placed, because a safe's inventory is smaller than a crate's one @@ -535,14 +547,6 @@ public class CraftingManager { addShapelessAuto(ItemBattery.getFullBattery(ModItems.battery_potato), new Object[] { Items.potato, AL.wireFine(), CU.wireFine() }); addShapelessAuto(ItemBattery.getFullBattery(ModItems.battery_potatos), new Object[] { ItemBattery.getFullBattery(ModItems.battery_potato), ModItems.turret_chip, REDSTONE.dust() }); - addRecipeAuto(new ItemStack(ModItems.battery_sc_uranium), new Object[] { "NBN", "PCP", "NBN", 'N', GOLD.nugget(), 'B', U238.billet(), 'P', PB.plate(), 'C', ModItems.thermo_element }); - addRecipeAuto(new ItemStack(ModItems.battery_sc_technetium), new Object[] { "NBN", "PCP", "NBN", 'N', GOLD.nugget(), 'B', TC99.billet(), 'P', PB.plate(), 'C', ModItems.battery_sc_uranium }); - addRecipeAuto(new ItemStack(ModItems.battery_sc_plutonium), new Object[] { "NBN", "PCP", "NBN", 'N', TC99.nugget(), 'B', PU238.billet(), 'P', PB.plate(), 'C', ModItems.battery_sc_technetium }); - addRecipeAuto(new ItemStack(ModItems.battery_sc_polonium), new Object[] { "NBN", "PCP", "NBN", 'N', TC99.nugget(), 'B', PO210.billet(), 'P', ANY_PLASTIC.ingot(), 'C', ModItems.battery_sc_plutonium }); - addRecipeAuto(new ItemStack(ModItems.battery_sc_gold), new Object[] { "NBN", "PCP", "NBN", 'N', TA.nugget(), 'B', AU198.billet(), 'P', ANY_PLASTIC.ingot(), 'C', ModItems.battery_sc_polonium }); - addRecipeAuto(new ItemStack(ModItems.battery_sc_lead), new Object[] { "NBN", "PCP", "NBN", 'N', TA.nugget(), 'B', PB209.billet(), 'P', ANY_PLASTIC.ingot(), 'C', ModItems.battery_sc_gold }); - addRecipeAuto(new ItemStack(ModItems.battery_sc_americium), new Object[] { "NBN", "PCP", "NBN", 'N', TA.nugget(), 'B', AM241.billet(), 'P', ANY_PLASTIC.ingot(), 'C', ModItems.battery_sc_lead }); - addRecipeAuto(new ItemStack(ModItems.wiring_red_copper, 1), new Object[] { "PPP", "PIP", "PPP", 'P', STEEL.plate(), 'I', STEEL.ingot() }); addRecipeAuto(new ItemStack(ModItems.jetpack_tank, 1), new Object[] { " S ", "BKB", " S ", 'S', STEEL.plate(), 'B', STEEL.bolt(), 'K', Fluids.KEROSENE.getDict(1000) }); @@ -738,7 +742,7 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModBlocks.barrel_plastic, 1), new Object[] { "IPI", "I I", "IPI", 'I', ModItems.plate_polymer, 'P', AL.plate() }); addRecipeAuto(new ItemStack(ModBlocks.barrel_steel, 1), new Object[] { "IPI", "I I", "IPI", 'I', STEEL.plate(), 'P', STEEL.ingot() }); addRecipeAuto(new ItemStack(ModBlocks.barrel_tcalloy, 1), new Object[] { "IPI", "I I", "IPI", 'I', "ingotTcAlloy", 'P', TI.plate() }); - addRecipeAuto(new ItemStack(ModBlocks.barrel_antimatter, 1), new Object[] { "IPI", "IBI", "IPI", 'I', BIGMT.plate(), 'P', ModItems.coil_advanced_torus, 'B', ModItems.battery_sc_technetium }); + addRecipeAuto(new ItemStack(ModBlocks.barrel_antimatter, 1), new Object[] { "IPI", "I I", "IPI", 'I', BIGMT.plate(), 'P', ModItems.coil_advanced_torus }); addRecipeAuto(new ItemStack(ModBlocks.tesla, 1), new Object[] { "CCC", "PIP", "WTW", 'C', ModItems.coil_copper, 'I', IRON.ingot(), 'P', ANY_PLASTIC.ingot(), 'T', ModBlocks.machine_transformer, 'W', KEY_PLANKS }); addRecipeAuto(new ItemStack(ModBlocks.struct_watz_core, 1), new Object[] { "CBC", "BHB", "CBC", 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.ADVANCED), 'B', ANY_RESISTANTALLOY.plateCast(), 'H', ModBlocks.watz_cooler }); addShapelessAuto(new ItemStack(ModItems.energy_core), new Object[] { ModItems.fusion_core, ModItems.fuse }); diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index d3de4e543..5052dd575 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -741,6 +741,7 @@ public class ResourceManager { //FENSU public static final ResourceLocation battery_socket_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/battery_socket.png"); + public static final ResourceLocation battery_sc_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/battery_sc.png"); public static final ResourceLocation battery_redd_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/fensu2.png"); public static final ResourceLocation fensu_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/fensu.png"); diff --git a/src/main/java/com/hbm/render/tileentity/RenderBatterySocket.java b/src/main/java/com/hbm/render/tileentity/RenderBatterySocket.java index 6b4e8828e..7d3264202 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderBatterySocket.java +++ b/src/main/java/com/hbm/render/tileentity/RenderBatterySocket.java @@ -1,12 +1,19 @@ package com.hbm.render.tileentity; +import java.util.Random; + import org.lwjgl.opengl.GL11; import com.hbm.blocks.ModBlocks; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemBatteryPack.EnumBatteryPack; +import com.hbm.lib.RefStrings; import com.hbm.main.ResourceManager; import com.hbm.render.item.ItemRenderBase; +import com.hbm.render.util.BeamPronter; +import com.hbm.render.util.HorsePronter; +import com.hbm.render.util.BeamPronter.EnumBeamType; +import com.hbm.render.util.BeamPronter.EnumWaveType; import com.hbm.tileentity.machine.storage.TileEntityBatterySocket; import com.hbm.util.EnumUtil; @@ -14,10 +21,14 @@ import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.Vec3; import net.minecraftforge.client.IItemRenderer; public class RenderBatterySocket extends TileEntitySpecialRenderer implements IItemRendererProvider { + private static ResourceLocation blorbo = new ResourceLocation(RefStrings.MODID, "textures/models/horse/sunburst.png"); + @Override public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float interp) { GL11.glPushMatrix(); @@ -47,6 +58,29 @@ public class RenderBatterySocket extends TileEntitySpecialRenderer implements II EnumBatteryPack pack = EnumUtil.grabEnumSafely(EnumBatteryPack.class, render.getItemDamage()); bindTexture(pack.texture); ResourceManager.battery_socket.renderPart(pack.isCapacitor() ? "Capacitor" : "Battery"); + } else if(render.getItem() == ModItems.battery_sc) { + bindTexture(ResourceManager.battery_sc_tex); + ResourceManager.battery_socket.renderPart("Battery"); + } else if(render.getItem() == ModItems.battery_creative) { + GL11.glPushMatrix(); + GL11.glScaled(0.75, 0.75, 0.75); + GL11.glRotated((socket.getWorldObj().getTotalWorldTime() % 360 + interp) * 25D, 0, -1, 0); + this.bindTexture(blorbo); + HorsePronter.reset(); + HorsePronter.enableHorn(); + HorsePronter.pront(); + GL11.glPopMatrix(); + + Random rand = new Random(tile.getWorldObj().getTotalWorldTime() / 5); + rand.nextBoolean(); + + for(int i = -1; i <= 1; i += 2) for(int j = -1; j <= 1; j += 2) if(rand.nextInt(4) == 0) { + GL11.glPushMatrix(); + GL11.glTranslated(0, 0.75, 0); + BeamPronter.prontBeam(Vec3.createVectorHelper(0.4375 * i, 1.1875, 0.4375 * j), EnumWaveType.RANDOM, EnumBeamType.SOLID, 0x404040, 0x002040, (int)(System.currentTimeMillis() % 1000) / 50, 15, 0.0625F, 3, 0.025F); + BeamPronter.prontBeam(Vec3.createVectorHelper(0.4375 * i, 1.1875, 0.4375 * j), EnumWaveType.RANDOM, EnumBeamType.SOLID, 0x404040, 0x002040, (int)(System.currentTimeMillis() % 1000) / 50, 1, 0, 3, 0.025F); + GL11.glPopMatrix(); + } } } diff --git a/src/main/java/com/hbm/render/tileentity/RendererObjTester.java b/src/main/java/com/hbm/render/tileentity/RendererObjTester.java index 450fcd6cb..3bffbaf34 100644 --- a/src/main/java/com/hbm/render/tileentity/RendererObjTester.java +++ b/src/main/java/com/hbm/render/tileentity/RendererObjTester.java @@ -6,81 +6,30 @@ import org.lwjgl.BufferUtils; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; -import com.hbm.items.ModItems; import com.hbm.lib.RefStrings; import com.hbm.main.ResourceManager; import com.hbm.render.util.HorsePronter; -import com.hbm.wiaj.WorldInAJar; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.ItemRenderer; -import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.client.renderer.RenderHelper; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.client.renderer.texture.TextureMap; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; -import net.minecraft.init.Blocks; -import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.IIcon; import net.minecraft.util.ResourceLocation; public class RendererObjTester extends TileEntitySpecialRenderer { - private static RenderBlocks renderer; - private static WorldInAJar world; - private static ResourceLocation extra = new ResourceLocation(RefStrings.MODID, "textures/models/horse/dyx.png"); + private static ResourceLocation extra = new ResourceLocation(RefStrings.MODID, "textures/models/horse/sunburst.png"); @Override public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f) { GL11.glPushMatrix(); - GL11.glTranslated(x + 0.5, y + 1, z + 0.5); + GL11.glTranslated(x + 0.5, y, z + 0.5); GL11.glDisable(GL11.GL_CULL_FACE); - - if(world == null) { - world = new WorldInAJar(5, 3, 5); - for(int i = 0; i < 25; i++) world.setBlock(i / 5, 1, i % 5, Blocks.brick_block, 0); - for(int i = 0; i < 9; i++) world.setBlock(1 + i / 3, 0, 1 + i % 3, Blocks.brick_block, 0); - } - - if(renderer == null) { - renderer = new RenderBlocks(world); - } - renderer.enableAO = true; - world.lightlevel = tileEntity.getWorldObj().getLightBrightnessForSkyBlocks(tileEntity.xCoord, tileEntity.yCoord, tileEntity.zCoord, 0); - - RenderHelper.disableStandardItemLighting(); - - GL11.glPushMatrix(); - GL11.glRotated(15, 0, 0, 1); - GL11.glRotated(System.currentTimeMillis() / 5D % 360D, 0, -1, 0); - GL11.glTranslated(-2.5, 0, -2.5); - Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.locationBlocksTexture); - GL11.glShadeModel(GL11.GL_SMOOTH); - Tessellator.instance.startDrawingQuads(); - - for(int ix = 0; ix < world.sizeX; ix++) { - for(int iy = 0; iy < world.sizeY; iy++) { - for(int iz = 0; iz < world.sizeZ; iz++) { - try { renderer.renderBlockByRenderType(world.getBlock(ix, iy, iz), ix, iy, iz); } catch(Exception ex) { } - } - } - } - - Tessellator.instance.draw(); - GL11.glShadeModel(GL11.GL_FLAT); - GL11.glPopMatrix(); RenderHelper.enableStandardItemLighting(); - - GL11.glRotated(15, 0, 0, 1); - GL11.glRotated(System.currentTimeMillis() / 5D % 360D, 0, -1, 0); - - GL11.glTranslated(0, 2.1, 0.5); this.bindTexture(extra); HorsePronter.reset(); - double r = 60; + /*double r = 60; HorsePronter.pose(HorsePronter.id_body, 0, -r, 0); HorsePronter.pose(HorsePronter.id_tail, 0, 45, 90); HorsePronter.pose(HorsePronter.id_lbl, 0, -90 + r, 35); @@ -88,20 +37,10 @@ public class RendererObjTester extends TileEntitySpecialRenderer { HorsePronter.pose(HorsePronter.id_lfl, 0, r - 10, 5); HorsePronter.pose(HorsePronter.id_rfl, 0, r - 10, -5); HorsePronter.pose(HorsePronter.id_head, 0, r, 0); + HorsePronter.enableWings();*/ HorsePronter.enableHorn(); - HorsePronter.enableWings(); HorsePronter.pront(); - ItemStack stack = new ItemStack(ModItems.cigarette); - double scale = 0.25; - GL11.glTranslated(0.02, 1.13, -0.42); - GL11.glScaled(scale, scale, scale); - GL11.glRotated(90, 0, -1, 0); - GL11.glRotated(60, 0, 0, -1); - bindTexture(TextureMap.locationItemsTexture); - IIcon icon = stack.getIconIndex(); - ItemRenderer.renderItemIn2D(Tessellator.instance, icon.getMaxU(), icon.getMinV(), icon.getMinU(), icon.getMaxV(), icon.getIconWidth(), icon.getIconHeight(), 0.0625F); - GL11.glPopMatrix(); } diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 772fd5ee0..6e3394ca5 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -1308,16 +1308,16 @@ item.ballistite.name=Ballistit item.bandaid.name=Samtenes Pflaster item.bathwater.name=Toxisches Seifenwasser item.bathwater_mk2.name=Toxisches Seifenwasser (Pferdearoma) -item.battery_advanced.name=Fortgeschrittene Batterie -item.battery_advanced_cell.name=Fortgeschrittene Energiezelle -item.battery_advanced_cell_12.name=Zwölffache fortgeschrittene Energiezelle -item.battery_advanced_cell_4.name=Vierfache fortgeschrittene Energiezelle +item.battery_advanced.name=Fortgeschrittene Batterie (LEGACY) +item.battery_advanced_cell.name=Fortgeschrittene Energiezelle (LEGACY) +item.battery_advanced_cell_12.name=Zwölffache fortgeschrittene Energiezelle (LEGACY) +item.battery_advanced_cell_4.name=Vierfache fortgeschrittene Energiezelle (LEGACY) item.battery_creative.name=Unendliche Batterie -item.battery_generic.name=Batterie -item.battery_lithium.name=Lithium-Ionen-Batterie -item.battery_lithium_cell.name=Lithium-Ionen-Energiezelle -item.battery_lithium_cell_3.name=Dreifache Lithium-Ionen-Energiezelle -item.battery_lithium_cell_6.name=Sechsfache Lithium-Ionen-Energiezelle +item.battery_generic.name=Batterie (LEGACY) +item.battery_lithium.name=Lithium-Ionen-Batterie (LEGACY) +item.battery_lithium_cell.name=Lithium-Ionen-Energiezelle (LEGACY) +item.battery_lithium_cell_3.name=Dreifache Lithium-Ionen-Energiezelle (LEGACY) +item.battery_lithium_cell_6.name=Sechsfache Lithium-Ionen-Energiezelle (LEGACY) item.battery_pack.battery_lead.name=Bleisäure-Akku item.battery_pack.battery_lithium.name=Lithium-Ionen-Akku item.battery_pack.battery_quantum.name=Quantenakku @@ -1332,33 +1332,41 @@ item.battery_pack.capacitor_spark.name=Spark-Kondensator item.battery_pack.capacitor_tantalum.name=Tantalkondensator item.battery_potato.name=Katoffelbatterie item.battery_potatos.name=PotatOS -item.battery_red_cell.name=Redstone-Energiezelle -item.battery_red_cell_24.name=24-fache Redstone-Energiezelle -item.battery_red_cell_6.name=Sechsfache Redstone-Energiezelle -item.battery_sc_americium.name=Americium-241-Selbstlader -item.battery_sc_gold.name=Gold-198-Selbstlader -item.battery_sc_lead.name=Blei-209-Selbstlader -item.battery_sc_plutonium.name=Plutonium-238-Selbstlader -item.battery_sc_polonium.name=Polonium-210-Selbstlader -item.battery_sc_technetium.name=Technerium-99-Selbstlader -item.battery_sc_uranium.name=Uran-238-Selbstlader -item.battery_schrabidium.name=Schrabidiumbatterie -item.battery_schrabidium_cell.name=Schrabidium-Energiezelle -item.battery_schrabidium_cell_2.name=Doppelte Schrabidium-Energiezelle -item.battery_schrabidium_cell_4.name=Vierfache Schrabidium-Energiezelle +item.battery_red_cell.name=Redstone-Energiezelle (LEGACY) +item.battery_red_cell_24.name=24-fache Redstone-Energiezelle (LEGACY) +item.battery_red_cell_6.name=Sechsfache Redstone-Energiezelle (LEGACY) +item.battery_sc.am241.name=Americium-241-Selbstlader +item.battery_sc.au198.name=Gold-198-Selbstlader +item.battery_sc.co60.name=Kobalt-60-Selbstlader +item.battery_sc.empty.name=Leerer Selbstlader +item.battery_sc.pb209.name=Blei-209-Selbstlader +item.battery_sc.po210.name=Polonium-210-Selbstlader +item.battery_sc.pu238.name=Plutonium-238-Selbstlader +item.battery_sc.ra226.name=Radium-226-Selbstlader +item.battery_sc.tc99.name=Technetium-99-Selbstlader +item.battery_sc.waste.name=Atommüll-Selbstlader +item.battery_sc_americium.name=Americium-241-Selbstlader (LEGACY) +item.battery_sc_gold.name=Gold-198-Selbstlader (LEGACY) +item.battery_sc_lead.name=Blei-209-Selbstlader (LEGACY) +item.battery_sc_plutonium.name=Plutonium-238-Selbstlader (LEGACY) +item.battery_sc_polonium.name=Polonium-210-Selbstlader (LEGACY) +item.battery_sc_technetium.name=Technerium-99-Selbstlader (LEGACY) +item.battery_sc_uranium.name=Uran-238-Selbstlader (LEGACY) +item.battery_schrabidium.name=Schrabidiumbatterie (LEGACY) +item.battery_schrabidium_cell.name=Schrabidium-Energiezelle (LEGACY) +item.battery_schrabidium_cell_2.name=Doppelte Schrabidium-Energiezelle (LEGACY) +item.battery_schrabidium_cell_4.name=Vierfache Schrabidium-Energiezelle (LEGACY) item.battery_spark.name=Spark-Batterie -item.battery_spark_cell_100.name=Spark-Arkane Energiespeicher-Matrix -item.battery_spark_cell_1000.name=Spark-Arkane Massen-Energie Speicherleere -item.battery_spark_cell_10000.name=Spark Solider Raumzeit Kristall -item.battery_spark_cell_25.name=Spark-Arkane Autobatterie -item.battery_spark_cell_2500.name=Spark-Arkanes Dirac'sches Meer -item.battery_spark_cell_6.name=Spark-Energiezelle -item.battery_spark_cell_power.name=Spark Lächerliche Physik-missachtende Energiespeichereinheit -item.battery_steam.name=Dampfbetriebener Energiespeichertank -item.battery_steam_large.name=Großer dampfbetriebener Energiespeichertank -item.battery_su.name=Einwegbatterie -item.battery_su_l.name=Große Einwegbatterie -item.battery_trixite.name=Billige Spark-Batterie-Nachmache +item.battery_spark_cell_100.name=Spark-Arkane Energiespeicher-Matrix (LEGACY) +item.battery_spark_cell_1000.name=Spark-Arkane Massen-Energie Speicherleere (LEGACY) +item.battery_spark_cell_10000.name=Spark Solider Raumzeit Kristall (LEGACY) +item.battery_spark_cell_25.name=Spark-Arkane Autobatterie (LEGACY) +item.battery_spark_cell_2500.name=Spark-Arkanes Dirac'sches Meer (LEGACY) +item.battery_spark_cell_6.name=Spark-Energiezelle (LEGACY) +item.battery_spark_cell_power.name=Spark Lächerliche Physik-missachtende Energiespeichereinheit (LEGACY) +item.battery_steam.name=Dampfbetriebener Energiespeichertank (LEGACY) +item.battery_steam_large.name=Großer dampfbetriebener Energiespeichertank (LEGACY) +item.battery_trixite.name=Billiger Spark-Batterie Nachbau item.bdcl.name=BDCL item.bedrock_ore.grade.base.name=%s-Bedrockerz item.bedrock_ore.grade.base_roasted.name=Geröstetes %s-Bedrockerz @@ -4479,7 +4487,7 @@ tile.machine_battery_redd.name=FEnSU tile.machine_battery_socket.name=Batteriesockel tile.machine_battery_socket.desc=Erlaubt es, Batterien direkt mit$dem Stromnetz zu verbinden.$Verhält sich wie ein Kabel, alle$Verbindungen sind im selben Netzwek. tile.machine_boiler.name=Boiler -tile.machine_boiler.desc=Großer Boiler zum Verdampfen von Wasser oder$Erhitzen von Öl. Benötigt externe Hitzequelle.$Wärmestransferrate: ΔT*0.01 TU/t +tile.machine_boiler.desc=Großer Boiler zum Verdampfen von Wasser oder$Erhitzen von Öl. Benötigt externe Hitzequelle.$Wärmestransferrate: ΔT*0.1 TU/t tile.machine_boiler_electric_off.name=Elektrischer Ölwärmer tile.machine_boiler_electric_on.name=Elektrischer Ölwärmer tile.machine_boiler_off.name=Alter Boiler @@ -4495,7 +4503,7 @@ tile.machine_chungus.desc=Effizienz: 85%% tile.machine_coal_off.name=Verbrennungsgenerator tile.machine_coal_on.name=Verbrennungsgenerator tile.machine_coker.name=Koker-Anlage -tile.machine_coker.desc=Verkokt Öl, erzeugt fluides Nebenprodukt.$Benötigt externe Hitzequelle.$Wärmestransferrate: ΔT*0.025 TU/t +tile.machine_coker.desc=Verkokt Öl, erzeugt fluides Nebenprodukt.$Benötigt externe Hitzequelle.$Wärmestransferrate: ΔT*0.25 TU/t tile.machine_combine_factory.name=CMB-Stahl Hochofen tile.machine_combustion_engine.name=Industrieller Verbrennungsmotor tile.machine_compressor.name=Kompressor @@ -4508,6 +4516,7 @@ tile.machine_converter_rf_he.name=RF zu HE Konverter tile.machine_conveyor_press.name=Förderband-Presse tile.machine_conveyor_press.desc=Band bewegt sich von links nach rechts$Rechtsclick um Stempel zu montieren$Stempel kann mit Schraubenzieher entfernt werden tile.machine_crucible.name=Schmelztiegel +tile.machine_crucible.desc=Wärmestransferrate: ΔT*0.25 TU/t tile.machine_crystallizer.name=Erzauflöser tile.machine_cyclotron.name=Zyklotron tile.machine_detector.name=Energiedetektor @@ -4543,7 +4552,7 @@ tile.machine_geo.name=Geothermiegenerator tile.machine_hephaestus.name=Geothermischer Wärmetauscher tile.machine_icf_press.name=ICF-Brennstoffpellet-Fabrikant tile.machine_industrial_boiler.name=Industrieller Boiler -tile.machine_industrial_boiler.desc=Großer Boiler zum Verdampfen von Wasser oder$Erhitzen von Öl. Benötigt externe Hitzequelle.$Wärmestransferrate: ΔT*0.01 TU/t$Überdrucksicher +tile.machine_industrial_boiler.desc=Großer Boiler zum Verdampfen von Wasser oder$Erhitzen von Öl. Benötigt externe Hitzequelle.$Wärmestransferrate: ΔT*0.1 TU/t$Überdrucksicher tile.machine_industrial_generator.name=Industrieller Generator tile.machine_intake.name=Lufteinlass tile.machine_keyforge.name=Schlossertisch diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 3fef4b463..32007905e 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -2066,16 +2066,16 @@ item.ballistite.name=Ballistite item.bandaid.name=Velvet Band-Aid item.bathwater.name=Toxic Soapy Water item.bathwater_mk2.name=Toxic Soapy Water (Horse Scented) -item.battery_advanced.name=Advanced Battery -item.battery_advanced_cell.name=Advanced Power Cell -item.battery_advanced_cell_12.name=Twelvefold Advanced Power Cell -item.battery_advanced_cell_4.name=Quadruple Advanced Power Cell +item.battery_advanced.name=Advanced Battery (LEGACY) +item.battery_advanced_cell.name=Advanced Power Cell (LEGACY) +item.battery_advanced_cell_12.name=Twelvefold Advanced Power Cell (LEGACY) +item.battery_advanced_cell_4.name=Quadruple Advanced Power Cell (LEGACY) item.battery_creative.name=Infinite Battery -item.battery_generic.name=Battery -item.battery_lithium.name=Lithium-Ion Battery -item.battery_lithium_cell.name=Lithium-Ion Power Cell -item.battery_lithium_cell_3.name=Triple Lithium-Ion Power Cell -item.battery_lithium_cell_6.name=Sixfold Lithium-Ion Power Cell +item.battery_generic.name=Battery (LEGACY) +item.battery_lithium.name=Lithium-Ion Battery (LEGACY) +item.battery_lithium_cell.name=Lithium-Ion Power Cell (LEGACY) +item.battery_lithium_cell_3.name=Triple Lithium-Ion Power Cell (LEGACY) +item.battery_lithium_cell_6.name=Sixfold Lithium-Ion Power Cell (LEGACY) item.battery_pack.battery_lead.name=Lead-Acid Battery item.battery_pack.battery_lithium.name=Lithium-Ion Battery item.battery_pack.battery_quantum.name=Quantum Battery @@ -2090,32 +2090,40 @@ item.battery_pack.capacitor_spark.name=Spark Capacitor item.battery_pack.capacitor_tantalum.name=Tantalum Capacitor item.battery_potato.name=Potato Battery item.battery_potatos.name=PotatOS -item.battery_red_cell.name=Redstone Power Cell -item.battery_red_cell_24.name=24-Fold Redstone Power Cell -item.battery_red_cell_6.name=Sixfold Redstone Power Cell -item.battery_sc_americium.name=Self-Charging Americium-241 Battery -item.battery_sc_gold.name=Self-Charging Gold-198 Battery -item.battery_sc_lead.name=Self-Charging Lead-209 Battery -item.battery_sc_plutonium.name=Self-Charging Plutonium-238 Battery -item.battery_sc_polonium.name=Self-Charging Polonium-210 Battery -item.battery_sc_technetium.name=Self-Charging Technetium-99 Battery -item.battery_sc_uranium.name=Self-Charging Uranium-238 Battery -item.battery_schrabidium.name=Schrabidium Battery -item.battery_schrabidium_cell.name=Schrabidium Power Cell -item.battery_schrabidium_cell_2.name=Double Schrabidium Power Cell -item.battery_schrabidium_cell_4.name=Quadruple Schrabidium Power Cell +item.battery_red_cell.name=Redstone Power Cell (LEGACY) +item.battery_red_cell_24.name=24-Fold Redstone Power Cell (LEGACY) +item.battery_red_cell_6.name=Sixfold Redstone Power Cell (LEGACY) +item.battery_sc.am241.name=Americium-241 Self-Charging Battery +item.battery_sc.au198.name=Gold-198 Self-Charging Battery +item.battery_sc.co60.name=Cobalt-60 Self-Charging Battery +item.battery_sc.empty.name=Empty Self-Charging Battery +item.battery_sc.pb209.name=Lead-209 Self-Charging Battery +item.battery_sc.po210.name=Polonium-210 Self-Charging Battery +item.battery_sc.pu238.name=Plutonium-238 Self-Charging Battery +item.battery_sc.ra226.name=Radium-226 Self-Charging Battery +item.battery_sc.tc99.name=Technetium-99 Self-Charging Battery +item.battery_sc.waste.name=Spent Fuel Self-Charging Battery +item.battery_sc_americium.name=Self-Charging Americium-241 Battery (LEGACY) +item.battery_sc_gold.name=Self-Charging Gold-198 Battery (LEGACY) +item.battery_sc_lead.name=Self-Charging Lead-209 Battery (LEGACY) +item.battery_sc_plutonium.name=Self-Charging Plutonium-238 Battery (LEGACY) +item.battery_sc_polonium.name=Self-Charging Polonium-210 Battery (LEGACY) +item.battery_sc_technetium.name=Self-Charging Technetium-99 Battery (LEGACY) +item.battery_sc_uranium.name=Self-Charging Uranium-238 Battery (LEGACY) +item.battery_schrabidium.name=Schrabidium Battery (LEGACY) +item.battery_schrabidium_cell.name=Schrabidium Power Cell (LEGACY) +item.battery_schrabidium_cell_2.name=Double Schrabidium Power Cell (LEGACY) +item.battery_schrabidium_cell_4.name=Quadruple Schrabidium Power Cell (LEGACY) item.battery_spark.name=Spark Battery -item.battery_spark_cell_100.name=Spark Arcane Energy Storage Array -item.battery_spark_cell_1000.name=Spark Arcane Mass-Energy Void -item.battery_spark_cell_10000.name=Spark Solid Space-Time Crystal -item.battery_spark_cell_25.name=Spark Arcane Car Battery -item.battery_spark_cell_2500.name=Spark Arcane Dirac Sea -item.battery_spark_cell_6.name=Spark Power Cell -item.battery_spark_cell_power.name=Spark Ludicrous Physics-Defying Energy Storage Unit -item.battery_steam.name=Steam Powered Energy Storage Tank -item.battery_steam_large.name=Large Steam Powered Energy Storage Tank -item.battery_su.name=SU-Battery -item.battery_su_l.name=Large SU-Battery +item.battery_spark_cell_100.name=Spark Arcane Energy Storage Array (LEGACY) +item.battery_spark_cell_1000.name=Spark Arcane Mass-Energy Void (LEGACY) +item.battery_spark_cell_10000.name=Spark Solid Space-Time Crystal (LEGACY) +item.battery_spark_cell_25.name=Spark Arcane Car Battery (LEGACY) +item.battery_spark_cell_2500.name=Spark Arcane Dirac Sea (LEGACY) +item.battery_spark_cell_6.name=Spark Power Cell (LEGACY) +item.battery_spark_cell_power.name=Spark Ludicrous Physics-Defying Energy Storage Unit (LEGACY) +item.battery_steam.name=Steam Powered Energy Storage Tank (LEGACY) +item.battery_steam_large.name=Large Steam Powered Energy Storage Tank (LEGACY) item.battery_trixite.name=Off-Brand Spark Battery item.bdcl.name=BDCL item.bedrock_ore.grade.base.name=%s Bedrock Ore @@ -5742,7 +5750,7 @@ tile.machine_battery_redd.name=FEnSU tile.machine_battery_socket.name=Battery Socket tile.machine_battery_socket.desc=Allows battery items to be connected$to the power grid directly.$Acts as a cable, all ports are connected$to the same network. tile.machine_boiler.name=Boiler -tile.machine_boiler.desc=Large boiler that can boil water or heat up oil.$Requires external heat source.$Heat transfer rate: ΔT*0.01 TU/t +tile.machine_boiler.desc=Large boiler that can boil water or heat up oil.$Requires external heat source.$Heat transfer rate: ΔT*0.1 TU/t tile.machine_boiler_electric_off.name=Electric Oil Heater tile.machine_boiler_electric_on.name=Electric Oil Heater tile.machine_boiler_off.name=Old Boiler @@ -5759,7 +5767,7 @@ tile.machine_chungus.desc=Efficiency: 85%% tile.machine_coal_off.name=Combustion Generator tile.machine_coal_on.name=Combustion Generator tile.machine_coker.name=Coker Unit -tile.machine_coker.desc=Cokes oil, creating fluid byproducts.$Requires external heat source.$Heat transfer rate: ΔT*0.025 TU/t +tile.machine_coker.desc=Cokes oil, creating fluid byproducts.$Requires external heat source.$Heat transfer rate: ΔT*0.25 TU/t tile.machine_combine_factory.name=CMB Steel Furnace tile.machine_combustion_engine.name=Industrial Combustion Engine tile.machine_compressor.name=Compressor @@ -5772,6 +5780,7 @@ tile.machine_converter_rf_he.name=RF to HE Converter tile.machine_conveyor_press.name=Conveyor Press tile.machine_conveyor_press.desc=Conveyor moves left to right$Right click stamp to install$Use screwdriver to remove stamp tile.machine_crucible.name=Crucible +tile.machine_crucible.desc=Heat transfer rate: ΔT*0.25 TU/t tile.machine_crystallizer.name=Ore Acidizer tile.machine_cyclotron.name=Cyclotron tile.machine_detector.name=Power Detector @@ -5808,7 +5817,7 @@ tile.machine_hephaestus.name=Geothermal Heat Exchanger tile.machine_icf_press.name=ICF Fuel Pellet Maker tile.machine_icf_press.desc=Fills ICF Fuel pellets$Left fuel slot is accepted by top/bottom, right by the sides$Muons and pellets may be supplied from any side tile.machine_industrial_boiler.name=Industrial Boiler -tile.machine_industrial_boiler.desc=Large boiler that can boil water or heat up oil.$Requires external heat source.$Heat transfer rate: ΔT*0.01 TU/t$Cannot explode +tile.machine_industrial_boiler.desc=Large boiler that can boil water or heat up oil.$Requires external heat source.$Heat transfer rate: ΔT*0.1 TU/t$Cannot explode tile.machine_industrial_generator.name=Industrial Generator tile.machine_intake.name=Air Intake tile.machine_keyforge.name=Locksmith Table diff --git a/src/main/resources/assets/hbm/textures/items/battery_sc.am241.png b/src/main/resources/assets/hbm/textures/items/battery_sc.am241.png new file mode 100644 index 000000000..2837a00e3 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/battery_sc.am241.png differ diff --git a/src/main/resources/assets/hbm/textures/items/battery_sc.au198.png b/src/main/resources/assets/hbm/textures/items/battery_sc.au198.png new file mode 100644 index 000000000..ef4d823da Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/battery_sc.au198.png differ diff --git a/src/main/resources/assets/hbm/textures/items/battery_sc.co60.png b/src/main/resources/assets/hbm/textures/items/battery_sc.co60.png new file mode 100644 index 000000000..1d4ca94a0 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/battery_sc.co60.png differ diff --git a/src/main/resources/assets/hbm/textures/items/battery_sc.empty.png b/src/main/resources/assets/hbm/textures/items/battery_sc.empty.png new file mode 100644 index 000000000..661e210e7 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/battery_sc.empty.png differ diff --git a/src/main/resources/assets/hbm/textures/items/battery_sc.pb209.png b/src/main/resources/assets/hbm/textures/items/battery_sc.pb209.png new file mode 100644 index 000000000..00300e3bd Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/battery_sc.pb209.png differ diff --git a/src/main/resources/assets/hbm/textures/items/battery_sc.po210.png b/src/main/resources/assets/hbm/textures/items/battery_sc.po210.png new file mode 100644 index 000000000..714631288 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/battery_sc.po210.png differ diff --git a/src/main/resources/assets/hbm/textures/items/battery_sc.pu238.png b/src/main/resources/assets/hbm/textures/items/battery_sc.pu238.png new file mode 100644 index 000000000..99e909862 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/battery_sc.pu238.png differ diff --git a/src/main/resources/assets/hbm/textures/items/battery_sc.ra226.png b/src/main/resources/assets/hbm/textures/items/battery_sc.ra226.png new file mode 100644 index 000000000..7198a5319 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/battery_sc.ra226.png differ diff --git a/src/main/resources/assets/hbm/textures/items/battery_sc.tc99.png b/src/main/resources/assets/hbm/textures/items/battery_sc.tc99.png new file mode 100644 index 000000000..73e130ea4 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/battery_sc.tc99.png differ diff --git a/src/main/resources/assets/hbm/textures/items/battery_sc.waste.png b/src/main/resources/assets/hbm/textures/items/battery_sc.waste.png new file mode 100644 index 000000000..601e0c066 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/items/battery_sc.waste.png differ diff --git a/src/main/resources/assets/hbm/textures/models/horse/sunburst.png b/src/main/resources/assets/hbm/textures/models/horse/sunburst.png new file mode 100644 index 000000000..2cb6b066c Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/horse/sunburst.png differ diff --git a/src/main/resources/assets/hbm/textures/models/machines/battery_sc.png b/src/main/resources/assets/hbm/textures/models/machines/battery_sc.png new file mode 100644 index 000000000..554c40785 Binary files /dev/null and b/src/main/resources/assets/hbm/textures/models/machines/battery_sc.png differ