Compare commits

...

2 Commits

Author SHA1 Message Date
Boblet
d67cb7e49e have fun 2026-07-13 15:50:59 +02:00
Boblet
4ba77e96de fried dough balls. of octopus. 2026-07-13 14:58:01 +02:00
13 changed files with 52 additions and 101 deletions

View File

@ -4,6 +4,9 @@
* Each trinitite ore block now has four randomized texture variants * Each trinitite ore block now has four randomized texture variants
* Trinitite ores now spawn fewer particles * Trinitite ores now spawn fewer particles
* The radiation effect caused by walking on trinitite ore is now much shorter but more intense to compensate * The radiation effect caused by walking on trinitite ore is now much shorter but more intense to compensate
* Finally removed the old terra drill items after being deprecated for almost a year
* The electrolysis machine now instantly annihilates all buffered fluid output when changing recipe
* This is a straight downgrade but people for some reason wanted it so sure why not
## Fixed ## Fixed
* Fixed burner press GUI offsets being incorrect * Fixed burner press GUI offsets being incorrect

View File

@ -19,33 +19,20 @@ public class BlockWand extends Block {
setBlockBounds(1F/16F, 1F/16F, 1F/16F, 15F/16F, 15F/16F, 15F/16F); setBlockBounds(1F/16F, 1F/16F, 1F/16F, 15F/16F, 15F/16F, 15F/16F);
} }
@Override public static int renderID = RenderingRegistry.getNextAvailableRenderId();
public boolean isOpaqueCube() {
return false;
}
@Override @Override public int getRenderType() { return renderID; }
public boolean renderAsNormalBlock() { @Override public boolean isOpaqueCube() { return false; }
return false; @Override public boolean renderAsNormalBlock() { return false; }
}
@Override @Override
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) { public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) {
return null; return null;
} }
public static int renderID = RenderingRegistry.getNextAvailableRenderId();
@Override
public int getRenderType() {
return renderID;
}
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
public boolean shouldSideBeRendered(IBlockAccess world, int x, int y, int z, int side) { public boolean shouldSideBeRendered(IBlockAccess world, int x, int y, int z, int side) {
Block block = world.getBlock(x, y, z); Block block = world.getBlock(x, y, z);
return block != this; return block != this;
} }
} }

View File

@ -9,6 +9,7 @@ import com.hbm.blocks.IBlockSideRotation;
import com.hbm.blocks.ILookOverlay; import com.hbm.blocks.ILookOverlay;
import com.hbm.blocks.ModBlocks; import com.hbm.blocks.ModBlocks;
import com.hbm.interfaces.IControlReceiver; import com.hbm.interfaces.IControlReceiver;
import com.hbm.interfaces.NotableComments;
import com.hbm.items.ModItems; import com.hbm.items.ModItems;
import com.hbm.lib.RefStrings; import com.hbm.lib.RefStrings;
import com.hbm.main.MainRegistry; import com.hbm.main.MainRegistry;
@ -73,6 +74,7 @@ import net.minecraftforge.common.util.ForgeDirection;
* *
* @author hbm, Mellow * @author hbm, Mellow
*/ */
@NotableComments
public class BlockWandTandem extends BlockContainer implements IBlockSideRotation, INBTBlockTransformable, IGUIProvider, ILookOverlay { public class BlockWandTandem extends BlockContainer implements IBlockSideRotation, INBTBlockTransformable, IGUIProvider, ILookOverlay {
private IIcon iconTop; private IIcon iconTop;

View File

@ -62,7 +62,6 @@ public class ToolRecipes {
CraftingManager.addRecipeAuto(new ItemStack(ModItems.elec_pickaxe, 1), new Object[] { "RDM", " PB", " P ", 'P', ANY_PLASTIC.ingot(), 'D', DURA.ingot(), 'R', DURA.bolt(), 'M', ModItems.motor, 'B', EnumBatteryPack.BATTERY_LEAD.stack() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.elec_pickaxe, 1), new Object[] { "RDM", " PB", " P ", 'P', ANY_PLASTIC.ingot(), 'D', DURA.ingot(), 'R', DURA.bolt(), 'M', ModItems.motor, 'B', EnumBatteryPack.BATTERY_LEAD.stack() });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.elec_axe, 1), new Object[] { " DP", "RRM", " PB", 'P', ANY_PLASTIC.ingot(), 'D', DURA.ingot(), 'R', DURA.bolt(), 'M', ModItems.motor, 'B', EnumBatteryPack.BATTERY_LEAD.stack() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.elec_axe, 1), new Object[] { " DP", "RRM", " PB", 'P', ANY_PLASTIC.ingot(), 'D', DURA.ingot(), 'R', DURA.bolt(), 'M', ModItems.motor, 'B', EnumBatteryPack.BATTERY_LEAD.stack() });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.elec_shovel, 1), new Object[] { " P", "RRM", " B", 'P', ANY_PLASTIC.ingot(), 'D', DURA.ingot(), 'R', DURA.bolt(), 'M', ModItems.motor, 'B', EnumBatteryPack.BATTERY_LEAD.stack() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.elec_shovel, 1), new Object[] { " P", "RRM", " B", 'P', ANY_PLASTIC.ingot(), 'D', DURA.ingot(), 'R', DURA.bolt(), 'M', ModItems.motor, 'B', EnumBatteryPack.BATTERY_LEAD.stack() });
CraftingManager.addShapelessAuto(new ItemStack(ModItems.centri_stick, 1), new Object[] { ModItems.centrifuge_element, ModItems.energy_core, KEY_STICK });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.smashing_hammer, 1), new Object[] { "STS", "SPS", " P ", 'S', STEEL.block(), 'T', W.block(), 'P', ANY_PLASTIC.ingot() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.smashing_hammer, 1), new Object[] { "STS", "SPS", " P ", 'S', STEEL.block(), 'T', W.block(), 'P', ANY_PLASTIC.ingot() });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.meteorite_sword, 1), new Object[] { " B", "GB ", "SG ", 'B', ModItems.blade_meteorite, 'G', GOLD.plate(), 'S', KEY_STICK }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.meteorite_sword, 1), new Object[] { " B", "GB ", "SG ", 'B', ModItems.blade_meteorite, 'G', GOLD.plate(), 'S', KEY_STICK });
CraftingManager.addRecipeAuto(new ItemStack(ModItems.dwarven_pickaxe, 1), new Object[] { "CIC", " S ", " S ", 'C', CU.ingot(), 'I', IRON.ingot(), 'S', KEY_STICK }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.dwarven_pickaxe, 1), new Object[] { "CIC", " S ", " S ", 'C', CU.ingot(), 'I', IRON.ingot(), 'S', KEY_STICK });

View File

@ -29,7 +29,7 @@ public class ElectrolyserFluidRecipes extends SerializableRecipe {
recipes.put(Fluids.VITRIOL, new ElectrolysisRecipe(1_000, new FluidStack(Fluids.SULFURIC_ACID, 500), new FluidStack(Fluids.CHLORINE, 500), new ItemStack(ModItems.powder_iron), new ItemStack(ModItems.ingot_mercury))); recipes.put(Fluids.VITRIOL, new ElectrolysisRecipe(1_000, new FluidStack(Fluids.SULFURIC_ACID, 500), new FluidStack(Fluids.CHLORINE, 500), new ItemStack(ModItems.powder_iron), new ItemStack(ModItems.ingot_mercury)));
recipes.put(Fluids.SLOP, new ElectrolysisRecipe(1_000, new FluidStack(Fluids.MERCURY, 250), new FluidStack(Fluids.NONE, 0), new ItemStack(ModItems.niter, 2), new ItemStack(ModItems.powder_limestone, 2), new ItemStack(ModItems.sulfur))); recipes.put(Fluids.SLOP, new ElectrolysisRecipe(1_000, new FluidStack(Fluids.MERCURY, 250), new FluidStack(Fluids.NONE, 0), new ItemStack(ModItems.niter, 2), new ItemStack(ModItems.powder_limestone, 2), new ItemStack(ModItems.sulfur)));
recipes.put(Fluids.REDMUD, new ElectrolysisRecipe(450, new FluidStack(Fluids.MERCURY, 150), new FluidStack(Fluids.LYE, 50), new ItemStack(ModItems.powder_titanium, 3), new ItemStack(ModItems.powder_iron, 3), new ItemStack(ModItems.powder_aluminium, 2))); recipes.put(Fluids.REDMUD, new ElectrolysisRecipe(450, new FluidStack(Fluids.MERCURY, 150), new FluidStack(Fluids.LYE, 50), new ItemStack(ModItems.powder_titanium, 3), new ItemStack(ModItems.powder_iron, 3), new ItemStack(ModItems.powder_aluminium, 2)));
recipes.put(Fluids.ALUMINA, new ElectrolysisRecipe(200, new FluidStack(Fluids.CARBONDIOXIDE, 100), new FluidStack(Fluids.NONE, 0),40, new ItemStack(ModItems.powder_aluminium, 7), new ItemStack(ModItems.fluorite, 2))); recipes.put(Fluids.ALUMINA, new ElectrolysisRecipe(200, new FluidStack(Fluids.CARBONDIOXIDE, 100), new FluidStack(Fluids.NONE, 0), 40, new ItemStack(ModItems.powder_aluminium, 7), new ItemStack(ModItems.fluorite, 2)));
recipes.put(Fluids.POTASSIUM_CHLORIDE, new ElectrolysisRecipe(250, new FluidStack(Fluids.CHLORINE, 125), new FluidStack(Fluids.NONE, 0), new ItemStack(ModItems.dust))); recipes.put(Fluids.POTASSIUM_CHLORIDE, new ElectrolysisRecipe(250, new FluidStack(Fluids.CHLORINE, 125), new FluidStack(Fluids.NONE, 0), new ItemStack(ModItems.dust)));
recipes.put(Fluids.CALCIUM_CHLORIDE, new ElectrolysisRecipe(250, new FluidStack(Fluids.CHLORINE, 125), new FluidStack(Fluids.CALCIUM_SOLUTION, 125))); recipes.put(Fluids.CALCIUM_CHLORIDE, new ElectrolysisRecipe(250, new FluidStack(Fluids.CHLORINE, 125), new FluidStack(Fluids.CALCIUM_SOLUTION, 125)));

View File

@ -47,9 +47,6 @@ public class MachineRecipes {
public ArrayList<ItemStack> getBatteries() { public ArrayList<ItemStack> getBatteries() {
ArrayList<ItemStack> fuels = new ArrayList<ItemStack>(); ArrayList<ItemStack> fuels = new ArrayList<ItemStack>();
fuels.add(new ItemStack(ModItems.battery_potato));
fuels.add(new ItemStack(ModItems.battery_potatos));
fuels.add(new ItemStack(ModItems.energy_core));
for(EnumBatteryPack num : EnumBatteryPack.values()) fuels.add(new ItemStack(ModItems.battery_pack, 1, num.ordinal())); 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())); 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_creative));

View File

@ -1547,7 +1547,6 @@ public class ModItems {
public static Item battery_potatos; public static Item battery_potatos;
public static Item hev_battery; public static Item hev_battery;
public static Item fusion_core; public static Item fusion_core;
@Deprecated public static Item energy_core;
public static Item fuse; public static Item fuse;
//by using these in crafting table recipes, i'm running the risk of making my recipes too greg-ian (which i don't like) //by using these in crafting table recipes, i'm running the risk of making my recipes too greg-ian (which i don't like)
//in the event that i forget about the meaning of the word "sparingly", please throw a brick at my head //in the event that i forget about the meaning of the word "sparingly", please throw a brick at my head
@ -1793,9 +1792,6 @@ public class ModItems {
public static Item starmetal_hoe; public static Item starmetal_hoe;
public static Item smashing_hammer; public static Item smashing_hammer;
public static Item centri_stick; public static Item centri_stick;
public static Item drax;
public static Item drax_mk2;
public static Item drax_mk3;
public static Item bismuth_pickaxe; public static Item bismuth_pickaxe;
public static Item bismuth_axe; public static Item bismuth_axe;
public static Item volcanic_pickaxe; public static Item volcanic_pickaxe;
@ -3704,7 +3700,6 @@ public class ModItems {
battery_potatos = new ItemPotatos(500000, 0, 100).setUnlocalizedName("battery_potatos").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_potatos"); battery_potatos = new ItemPotatos(500000, 0, 100).setUnlocalizedName("battery_potatos").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":battery_potatos");
hev_battery = new ItemFusionCore(150000).setUnlocalizedName("hev_battery").setMaxStackSize(4).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":hev_battery"); hev_battery = new ItemFusionCore(150000).setUnlocalizedName("hev_battery").setMaxStackSize(4).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":hev_battery");
fusion_core = new ItemFusionCore(2500000).setUnlocalizedName("fusion_core").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fusion_core"); fusion_core = new ItemFusionCore(2500000).setUnlocalizedName("fusion_core").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fusion_core");
energy_core = new ItemBattery(10000000, 0, 1000).setUnlocalizedName("energy_core").setMaxStackSize(1).setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":energy_core");
fuse = new ItemCustomLore().setUnlocalizedName("fuse").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fuse"); fuse = new ItemCustomLore().setUnlocalizedName("fuse").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":fuse");
screwdriver = new ItemTooling(ToolType.SCREWDRIVER, 100).setUnlocalizedName("screwdriver"); screwdriver = new ItemTooling(ToolType.SCREWDRIVER, 100).setUnlocalizedName("screwdriver");
screwdriver_desh = new ItemTooling(ToolType.SCREWDRIVER, 0).setUnlocalizedName("screwdriver_desh"); screwdriver_desh = new ItemTooling(ToolType.SCREWDRIVER, 0).setUnlocalizedName("screwdriver_desh");
@ -4133,31 +4128,6 @@ public class ModItems {
.addAbility(IToolHarvestAbility.CENTRIFUGE, 0).setMaxDamage(50).setUnlocalizedName("centri_stick").setTextureName(RefStrings.MODID + ":centri_stick"); .addAbility(IToolHarvestAbility.CENTRIFUGE, 0).setMaxDamage(50).setUnlocalizedName("centri_stick").setTextureName(RefStrings.MODID + ":centri_stick");
smashing_hammer = new ItemToolAbility(12F, -0.1, MainRegistry.tMatSteel, EnumToolType.MINER) smashing_hammer = new ItemToolAbility(12F, -0.1, MainRegistry.tMatSteel, EnumToolType.MINER)
.addAbility(IToolHarvestAbility.SHREDDER, 0).setMaxDamage(2500).setUnlocalizedName("smashing_hammer").setTextureName(RefStrings.MODID + ":smashing_hammer"); .addAbility(IToolHarvestAbility.SHREDDER, 0).setMaxDamage(2500).setUnlocalizedName("smashing_hammer").setTextureName(RefStrings.MODID + ":smashing_hammer");
drax = new ItemToolAbilityPower(10F, -0.05, MainRegistry.tMatElec, EnumToolType.MINER, 500000000, 100000, 5000)
.addAbility(IToolHarvestAbility.SMELTER, 0)
.addAbility(IToolHarvestAbility.SHREDDER, 0)
.addAbility(IToolHarvestAbility.LUCK, 1)
.addAbility(IToolAreaAbility.HAMMER, 1)
.addAbility(IToolAreaAbility.HAMMER_FLAT, 1)
.addAbility(IToolAreaAbility.RECURSION, 2).setUnlocalizedName("drax").setCreativeTab(null).setTextureName(RefStrings.MODID + ":drax");
drax_mk2 = new ItemToolAbilityPower(15F, -0.05, MainRegistry.tMatElec, EnumToolType.MINER, 1000000000, 250000, 7500)
.addAbility(IToolHarvestAbility.SMELTER, 0)
.addAbility(IToolHarvestAbility.SHREDDER, 0)
.addAbility(IToolHarvestAbility.CENTRIFUGE, 0)
.addAbility(IToolHarvestAbility.LUCK, 2)
.addAbility(IToolAreaAbility.HAMMER, 2)
.addAbility(IToolAreaAbility.HAMMER_FLAT, 2)
.addAbility(IToolAreaAbility.RECURSION, 4).setUnlocalizedName("drax_mk2").setCreativeTab(null).setTextureName(RefStrings.MODID + ":drax_mk2");
drax_mk3 = new ItemToolAbilityPower(20F, -0.05, MainRegistry.tMatElec, EnumToolType.MINER, 2500000000L, 500000, 10000)
.addAbility(IToolHarvestAbility.SMELTER, 0)
.addAbility(IToolHarvestAbility.SHREDDER, 0)
.addAbility(IToolHarvestAbility.CENTRIFUGE, 0)
.addAbility(IToolHarvestAbility.CRYSTALLIZER, 0)
.addAbility(IToolHarvestAbility.SILK, 0)
.addAbility(IToolHarvestAbility.LUCK, 3)
.addAbility(IToolAreaAbility.HAMMER, 3)
.addAbility(IToolAreaAbility.HAMMER_FLAT, 3)
.addAbility(IToolAreaAbility.RECURSION, 5).setUnlocalizedName("drax_mk3").setCreativeTab(null).setTextureName(RefStrings.MODID + ":drax_mk3");
ToolMaterial matBismuth = EnumHelper.addToolMaterial("HBM_BISMUTH", 4, 0, 50F, 0.0F, 200).setRepairItem(new ItemStack(ModItems.ingot_bismuth)); ToolMaterial matBismuth = EnumHelper.addToolMaterial("HBM_BISMUTH", 4, 0, 50F, 0.0F, 200).setRepairItem(new ItemStack(ModItems.ingot_bismuth));
bismuth_pickaxe = new ItemToolAbility(15F, 0, matBismuth, EnumToolType.MINER) bismuth_pickaxe = new ItemToolAbility(15F, 0, matBismuth, EnumToolType.MINER)
@ -5173,7 +5143,6 @@ public class ModItems {
GameRegistry.registerItem(battery_potatos, battery_potatos.getUnlocalizedName()); GameRegistry.registerItem(battery_potatos, battery_potatos.getUnlocalizedName());
GameRegistry.registerItem(hev_battery, hev_battery.getUnlocalizedName()); GameRegistry.registerItem(hev_battery, hev_battery.getUnlocalizedName());
GameRegistry.registerItem(fusion_core, fusion_core.getUnlocalizedName()); GameRegistry.registerItem(fusion_core, fusion_core.getUnlocalizedName());
GameRegistry.registerItem(energy_core, energy_core.getUnlocalizedName());
//Folders //Folders
GameRegistry.registerItem(blueprints, blueprints.getUnlocalizedName()); GameRegistry.registerItem(blueprints, blueprints.getUnlocalizedName());
@ -5929,9 +5898,6 @@ public class ModItems {
GameRegistry.registerItem(dnt_sword, dnt_sword.getUnlocalizedName()); GameRegistry.registerItem(dnt_sword, dnt_sword.getUnlocalizedName());
GameRegistry.registerItem(smashing_hammer, smashing_hammer.getUnlocalizedName()); GameRegistry.registerItem(smashing_hammer, smashing_hammer.getUnlocalizedName());
GameRegistry.registerItem(centri_stick, centri_stick.getUnlocalizedName()); GameRegistry.registerItem(centri_stick, centri_stick.getUnlocalizedName());
GameRegistry.registerItem(drax, drax.getUnlocalizedName());
GameRegistry.registerItem(drax_mk2, drax_mk2.getUnlocalizedName());
GameRegistry.registerItem(drax_mk3, drax_mk3.getUnlocalizedName());
GameRegistry.registerItem(bismuth_pickaxe, bismuth_pickaxe.getUnlocalizedName()); GameRegistry.registerItem(bismuth_pickaxe, bismuth_pickaxe.getUnlocalizedName());
GameRegistry.registerItem(bismuth_axe, bismuth_axe.getUnlocalizedName()); GameRegistry.registerItem(bismuth_axe, bismuth_axe.getUnlocalizedName());
GameRegistry.registerItem(volcanic_pickaxe, volcanic_pickaxe.getUnlocalizedName()); GameRegistry.registerItem(volcanic_pickaxe, volcanic_pickaxe.getUnlocalizedName());
@ -5939,7 +5905,8 @@ public class ModItems {
GameRegistry.registerItem(chlorophyte_pickaxe, chlorophyte_pickaxe.getUnlocalizedName()); GameRegistry.registerItem(chlorophyte_pickaxe, chlorophyte_pickaxe.getUnlocalizedName());
GameRegistry.registerItem(chlorophyte_axe, chlorophyte_axe.getUnlocalizedName()); GameRegistry.registerItem(chlorophyte_axe, chlorophyte_axe.getUnlocalizedName());
GameRegistry.registerItem(mese_pickaxe, mese_pickaxe.getUnlocalizedName()); GameRegistry.registerItem(mese_pickaxe, mese_pickaxe.getUnlocalizedName());
GameRegistry.registerItem(mese_axe, mese_axe.getUnlocalizedName()); GameRegistry.registerItem(matchstick, matchstick.getUnlocalizedName()); GameRegistry.registerItem(mese_axe, mese_axe.getUnlocalizedName());
GameRegistry.registerItem(matchstick, matchstick.getUnlocalizedName());
GameRegistry.registerItem(balefire_and_steel, balefire_and_steel.getUnlocalizedName()); GameRegistry.registerItem(balefire_and_steel, balefire_and_steel.getUnlocalizedName());
GameRegistry.registerItem(crowbar, crowbar.getUnlocalizedName()); GameRegistry.registerItem(crowbar, crowbar.getUnlocalizedName());
GameRegistry.registerItem(wrench, wrench.getUnlocalizedName()); GameRegistry.registerItem(wrench, wrench.getUnlocalizedName());

View File

@ -2,7 +2,6 @@ package com.hbm.items.machine;
import java.util.List; import java.util.List;
import com.hbm.items.ModItems;
import com.hbm.util.BobMathUtil; import com.hbm.util.BobMathUtil;
import api.hbm.energymk2.IBatteryItem; import api.hbm.energymk2.IBatteryItem;
@ -10,7 +9,6 @@ import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.creativetab.CreativeTabs; import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.EnumRarity;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
@ -30,30 +28,15 @@ public class ItemBattery extends Item implements IBatteryItem {
@Override @Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) { public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) {
long charge = maxCharge; long charge = maxCharge;
if(itemstack.hasTagCompound()) if(itemstack.hasTagCompound())
charge = getCharge(itemstack); charge = getCharge(itemstack);
if(itemstack.getItem() != ModItems.fusion_core && itemstack.getItem() != ModItems.energy_core) { list.add("Energy stored: " + BobMathUtil.getShortNumber(charge) + "/" + BobMathUtil.getShortNumber(maxCharge) + "HE");
list.add("Energy stored: " + BobMathUtil.getShortNumber(charge) + "/" + BobMathUtil.getShortNumber(maxCharge) + "HE");
} else {
String charge1 = BobMathUtil.getShortNumber((charge * 100) / this.maxCharge);
list.add("Charge: " + charge1 + "%");
list.add("(" + BobMathUtil.getShortNumber(charge) + "/" + BobMathUtil.getShortNumber(maxCharge) + "HE)");
}
list.add("Charge rate: " + BobMathUtil.getShortNumber(chargeRate) + "HE/t"); list.add("Charge rate: " + BobMathUtil.getShortNumber(chargeRate) + "HE/t");
list.add("Discharge rate: " + BobMathUtil.getShortNumber(dischargeRate) + "HE/t"); list.add("Discharge rate: " + BobMathUtil.getShortNumber(dischargeRate) + "HE/t");
} }
@Override
public EnumRarity getRarity(ItemStack p_77613_1_) {
if(this == ModItems.fusion_core || this == ModItems.energy_core) {
return EnumRarity.uncommon;
}
return EnumRarity.common;
}
public void chargeBattery(ItemStack stack, long i) { public void chargeBattery(ItemStack stack, long i) {
if(stack.getItem() instanceof ItemBattery) { if(stack.getItem() instanceof ItemBattery) {
if(stack.hasTagCompound()) { if(stack.hasTagCompound()) {

View File

@ -3,7 +3,6 @@ package com.hbm.items.tool;
import java.util.List; import java.util.List;
import com.hbm.blocks.ModBlocks; import com.hbm.blocks.ModBlocks;
import com.hbm.items.ModItems;
import com.hbm.items.machine.ItemBattery; import com.hbm.items.machine.ItemBattery;
import com.hbm.main.NTMSounds; import com.hbm.main.NTMSounds;
import com.hbm.util.BobMathUtil; import com.hbm.util.BobMathUtil;
@ -20,21 +19,10 @@ public class ItemAnchorRemote extends ItemBattery {
} }
@Override @Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) { public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) {
long charge = maxCharge; long charge = maxCharge;
if(stack.hasTagCompound()) charge = getCharge(stack);
if(itemstack.hasTagCompound()) list.add("Energy stored: " + BobMathUtil.getShortNumber(charge) + "/" + BobMathUtil.getShortNumber(maxCharge) + "HE");
charge = getCharge(itemstack);
if(itemstack.getItem() != ModItems.fusion_core && itemstack.getItem() != ModItems.energy_core) {
list.add("Energy stored: " + BobMathUtil.getShortNumber(charge) + "/" + BobMathUtil.getShortNumber(maxCharge) + "HE");
} else {
String charge1 = BobMathUtil.getShortNumber((charge * 100) / this.maxCharge);
list.add("Charge: " + charge1 + "%");
list.add("(" + BobMathUtil.getShortNumber(charge) + "/" + BobMathUtil.getShortNumber(maxCharge) + "HE)");
}
list.add("Charge rate: " + BobMathUtil.getShortNumber(chargeRate) + "HE/t"); list.add("Charge rate: " + BobMathUtil.getShortNumber(chargeRate) + "HE/t");
} }

View File

@ -703,11 +703,10 @@ public class CraftingManager {
addShapelessAuto(new ItemStack(ModItems.ams_catalyst_dineutronium, 1), new Object[] { ModItems.ams_catalyst_blank, ModItems.rune_hagalaz, ModItems.rune_hagalaz, ModItems.rune_thurisaz, ModItems.rune_thurisaz, DNT.dust(), DNT.dust(), DNT.dust(), DNT.dust() }); addShapelessAuto(new ItemStack(ModItems.ams_catalyst_dineutronium, 1), new Object[] { ModItems.ams_catalyst_blank, ModItems.rune_hagalaz, ModItems.rune_hagalaz, ModItems.rune_thurisaz, ModItems.rune_thurisaz, DNT.dust(), DNT.dust(), DNT.dust(), DNT.dust() });
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_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_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_tcalloy, 1), new Object[] { "IPI", "I I", "IPI", 'I', TCALLOY.ingot(), 'P', TI.plate() });
addRecipeAuto(new ItemStack(ModBlocks.barrel_antimatter, 1), new Object[] { "IPI", "I I", "IPI", 'I', BIGMT.plate(), 'P', ModItems.coil_gold_torus }); addRecipeAuto(new ItemStack(ModBlocks.barrel_antimatter, 1), new Object[] { "IPI", "I I", "IPI", 'I', BIGMT.plate(), 'P', BSCCO.wireDense() });
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.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 }); 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 });
addRecipeAuto(new ItemStack(ModItems.catalytic_converter, 1), new Object[] { "PCP", "PBP", "PCP", 'P', ANY_HARDPLASTIC.ingot(), 'C', CO.dust(), 'B', ANY_BISMOID.ingot() }); addRecipeAuto(new ItemStack(ModItems.catalytic_converter, 1), new Object[] { "PCP", "PBP", "PCP", 'P', ANY_HARDPLASTIC.ingot(), 'C', CO.dust(), 'B', ANY_BISMOID.ingot() });
addRecipeAuto(new ItemStack(ModItems.upgrade_nullifier, 1), new Object[] { "SPS", "PUP", "SPS", 'S', STEEL.plate(), 'P', ModItems.powder_fire, 'U', ModItems.upgrade_template }); addRecipeAuto(new ItemStack(ModItems.upgrade_nullifier, 1), new Object[] { "SPS", "PUP", "SPS", 'S', STEEL.plate(), 'P', ModItems.powder_fire, 'U', ModItems.upgrade_template });

View File

@ -1631,6 +1631,10 @@ public class MainRegistry {
ignoreMappings.add("hbm:item.blades_advanced_alloy"); ignoreMappings.add("hbm:item.blades_advanced_alloy");
ignoreMappings.add("hbm:tile.machine_minirtg"); ignoreMappings.add("hbm:tile.machine_minirtg");
ignoreMappings.add("hbm:tile.machine_powerrtg"); ignoreMappings.add("hbm:tile.machine_powerrtg");
ignoreMappings.add("hbm:item.energy_core");
ignoreMappings.add("hbm:item.drax");
ignoreMappings.add("hbm:item.drax_mk2");
ignoreMappings.add("hbm:item.drax_mk3");
/// REMAP /// /// REMAP ///
remapItems.put("hbm:item.gadget_explosive8", ModItems.early_explosive_lenses); remapItems.put("hbm:item.gadget_explosive8", ModItems.early_explosive_lenses);

View File

@ -278,9 +278,11 @@ public class TileEntityElectrolyser extends TileEntityMachineBase implements IEn
ElectrolysisRecipe recipe = ElectrolyserFluidRecipes.recipes.get(tanks[0].getTankType()); ElectrolysisRecipe recipe = ElectrolyserFluidRecipes.recipes.get(tanks[0].getTankType());
if(recipe == null) return false; if(recipe == null) return false;
tanks[1].setTankType(recipe.output1.type);
tanks[2].setTankType(recipe.output2.type);
if(recipe.amount > tanks[0].getFill()) return false; if(recipe.amount > tanks[0].getFill()) return false;
if(recipe.output1.type == tanks[1].getTankType() && recipe.output1.fill + tanks[1].getFill() > tanks[1].getMaxFill()) return false; if(recipe.output1.fill + tanks[1].getFill() > tanks[1].getMaxFill()) return false;
if(recipe.output2.type == tanks[2].getTankType() && recipe.output2.fill + tanks[2].getFill() > tanks[2].getMaxFill()) return false; if(recipe.output2.fill + tanks[2].getFill() > tanks[2].getMaxFill()) return false;
if(recipe.byproduct != null) { if(recipe.byproduct != null) {

View File

@ -7,6 +7,7 @@ import java.io.FileOutputStream;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.util.*; import java.util.*;
import java.util.function.Consumer;
import java.util.function.Predicate; import java.util.function.Predicate;
import com.hbm.config.ServerConfig; import com.hbm.config.ServerConfig;
@ -84,9 +85,25 @@ public class NBTStructure {
// incredibly shitty system for translating legacy block definitions to new ones // incredibly shitty system for translating legacy block definitions to new ones
@Untested // i can't find a god damn factory @Untested // i can't find a god damn factory
private static Map<String, String> substitutions = new HashMap() {{ private static Map<String, BlockMigration> substitutions = new HashMap() {{
put("hbm:tile.ore_coal_oil", "coal_ore"); put("hbm:tile.ore_coal_oil", new BlockMigration("coal_ore"));
}}; }};
public static class BlockMigration {
public String block;
public int meta;
// i may have misjudged, migration is only done when the palette is loaded, rendering this basically useless
public Consumer<TileEntity> tileEntityTransformerObject;
public BlockMigration(String block) { this(block, 0, null); }
public BlockMigration(String block, int meta) { this(block, meta, null); }
public BlockMigration(String block, Consumer<TileEntity> teto) { this(block, 0, teto); }
public BlockMigration(String block, int meta, Consumer<TileEntity> teto) {
this.block = block;
this.meta = meta;
this.tileEntityTransformerObject = teto;
}
}
public NBTStructure(ResourceLocation resource) { public NBTStructure(ResourceLocation resource) {
// Can't use regular resource loading, servers don't know how! // Can't use regular resource loading, servers don't know how!
@ -328,13 +345,16 @@ public class NBTStructure {
NBTTagCompound p = paletteList.getCompoundTagAt(i); NBTTagCompound p = paletteList.getCompoundTagAt(i);
String blockName = p.getString("Name"); String blockName = p.getString("Name");
int meta = 0;
NBTTagCompound prop = p.getCompoundTag("Properties"); NBTTagCompound prop = p.getCompoundTag("Properties");
/// BOB PATCH /// /// BOB PATCH ///
if(substitutions.containsKey(blockName)) blockName = substitutions.get(blockName); if(substitutions.containsKey(blockName)) {
BlockMigration mig = substitutions.get(blockName);
blockName = mig.block;
meta = mig.meta;
}
/// BOB PATCH /// /// BOB PATCH ///
int meta = 0;
try { try {
meta = Integer.parseInt(prop.getString("meta")); meta = Integer.parseInt(prop.getString("meta"));
} catch(NumberFormatException ex) { } catch(NumberFormatException ex) {