From 39d57c61a0cc90e8e9d5571f646446723b0f9354 Mon Sep 17 00:00:00 2001 From: Bob Date: Sun, 16 Jan 2022 21:21:51 +0100 Subject: [PATCH] the lorax, i mean borax --- src/main/java/com/hbm/blocks/ModBlocks.java | 3 + .../java/com/hbm/config/MachineConfig.java | 9 +- .../java/com/hbm/config/VersatileConfig.java | 6 +- .../java/com/hbm/crafting/ArmorRecipes.java | 8 +- .../java/com/hbm/crafting/WeaponRecipes.java | 14 +- .../com/hbm/handler/FluidTypeHandler.java | 162 -- .../nei/CrystallizerRecipeHandler.java | 6 +- .../hbm/handler/nei/NEIUniversalHandler.java | 165 ++ .../com/hbm/handler/nei/RTGRecipeHandler.java | 18 + .../hbm/handler/nei/ZirnoxRecipeHandler.java | 11 + .../hbm/inventory/FluidContainerRegistry.java | 9 +- .../java/com/hbm/inventory/FluidTank.java | 8 +- .../com/hbm/inventory/OreDictManager.java | 2 + .../container/ContainerMachineCyclotron.java | 6 +- .../container/ContainerReactorZirnox.java | 6 +- .../com/hbm/inventory/fluid/FluidType.java | 9 +- .../hbm/inventory/gui/GUIMachineBoiler.java | 6 +- .../gui/GUIMachineBoilerElectric.java | 6 +- .../hbm/inventory/gui/GUIMachineDiesel.java | 1 - .../inventory/gui/GUIMachineLargeTurbine.java | 14 +- .../hbm/inventory/gui/GUIMachineSelenium.java | 1 - .../hbm/inventory/gui/GUIMachineTurbine.java | 14 +- .../com/hbm/inventory/gui/GUIRBMKConsole.java | 10 +- .../java/com/hbm/inventory/gui/GUISILEX.java | 6 +- .../gui/GUIScreenTemplateFolder.java | 12 +- .../inventory/recipes/AssemblerRecipes.java | 12 +- .../recipes/CrystallizerRecipes.java | 1 + .../recipes/GasCentrifugeRecipes.java | 3 +- .../hbm/inventory/recipes/MachineRecipes.java | 304 +- .../inventory/recipes/RefineryRecipes.java | 19 +- .../hbm/inventory/recipes/SILEXRecipes.java | 8 +- .../inventory/recipes/anvil/AnvilRecipes.java | 2 +- .../com/hbm/items/machine/ItemFluidDuct.java | 205 +- .../com/hbm/items/machine/ItemFluidIcon.java | 73 +- .../items/machine/ItemFluidIdentifier.java | 15 +- .../com/hbm/items/machine/ItemFluidTank.java | 18 +- .../com/hbm/items/machine/ItemRTGPellet.java | 22 +- .../com/hbm/items/special/ItemStarterKit.java | 75 +- .../com/hbm/items/special/ItemSyringe.java | 5 +- .../java/com/hbm/items/tool/ItemWandD.java | 9 +- .../com/hbm/items/weapon/ItemCrucible.java | 2 +- .../com/hbm/items/weapon/ItemGunShotty.java | 2 +- src/main/java/com/hbm/lib/Library.java | 1 - src/main/java/com/hbm/lib/RefStrings.java | 2 +- src/main/java/com/hbm/main/ClientProxy.java | 2 +- .../java/com/hbm/main/CraftingManager.java | 22 +- src/main/java/com/hbm/main/MainRegistry.java | 3 +- .../java/com/hbm/main/ModEventHandler.java | 11 +- src/main/java/com/hbm/main/NEIConfig.java | 9 + .../java/com/hbm/main/ResourceManager.java | 2 + .../java/com/hbm/packet/AuxButtonPacket.java | 10 +- .../java/com/hbm/packet/TEFluidPacket.java | 6 +- .../com/hbm/packet/TEFluidPipePacket.java | 11 +- .../item/weapon/ItemRenderWeaponFFCursed.java | 91 + .../render/tileentity/RenderChemplant.java | 223 +- .../tileentity/RenderTurretBrandon.java | 1 - .../tileentity/RenderTurretChekhov.java | 4 +- .../tileentity/RenderTurretFriendly.java | 4 +- .../render/tileentity/RenderTurretHoward.java | 4 +- .../tileentity/RenderTurretHowardDamaged.java | 1 - .../render/tileentity/RenderTurretJeremy.java | 4 +- .../tileentity/RenderTurretMaxwell.java | 4 +- .../tileentity/RenderTurretRichard.java | 4 +- .../render/tileentity/RenderTurretTauon.java | 4 +- .../java/com/hbm/tileentity/IRTGUser.java | 3 +- .../com/hbm/tileentity/IRadioisotopeFuel.java | 5 +- .../conductor/TileEntityFluidDuct.java | 18 +- .../conductor/TileEntityGasDuctSolid.java | 4 +- .../conductor/TileEntityOilDuct.java | 6 +- .../conductor/TileEntityOilDuctSolid.java | 4 +- .../tileentity/machine/TileEntityAMSBase.java | 17 +- .../machine/TileEntityAMSEmitter.java | 12 +- .../machine/TileEntityAMSLimiter.java | 12 +- .../tileentity/machine/TileEntityBarrel.java | 5 +- .../tileentity/machine/TileEntityChungus.java | 7 + .../machine/TileEntityCondenser.java | 8 +- .../tileentity/machine/TileEntityCore.java | 9 +- .../machine/TileEntityCoreEmitter.java | 4 +- .../machine/TileEntityCoreInjector.java | 6 +- .../machine/TileEntityCoreReceiver.java | 5 +- .../machine/TileEntityDeuteriumExtractor.java | 6 +- .../machine/TileEntityDeuteriumTower.java | 9 +- .../machine/TileEntityFWatzCore.java | 8 +- .../machine/TileEntityFusionMultiblock.java | 8 +- .../tileentity/machine/TileEntityITER.java | 8 +- .../machine/TileEntityMachineBattery.java | 18 +- .../machine/TileEntityMachineBoiler.java | 13 +- .../TileEntityMachineBoilerElectric.java | 10 +- .../machine/TileEntityMachineCMBFactory.java | 4 +- .../machine/TileEntityMachineChemplant.java | 18 +- .../machine/TileEntityMachineCoal.java | 6 +- .../TileEntityMachineCrystallizer.java | 12 +- .../machine/TileEntityMachineCyclotron.java | 16 +- .../machine/TileEntityMachineDiesel.java | 22 +- .../machine/TileEntityMachineFENSU.java | 2 +- .../machine/TileEntityMachineFluidTank.java | 4 +- .../machine/TileEntityMachineGenerator.java | 6 +- .../machine/TileEntityMachineIGenerator.java | 36 +- .../machine/TileEntityMachineInserter.java | 8 +- .../TileEntityMachineLargeTurbine.java | 10 +- .../machine/TileEntityMachineMiningLaser.java | 10 +- .../machine/TileEntityMachineOrbus.java | 1 - .../TileEntityMachinePlasmaHeater.java | 38 +- .../machine/TileEntityMachinePuF6Tank.java | 4 +- .../TileEntityMachineReactorLarge.java | 7 +- .../TileEntityMachineSeleniumEngine.java | 30 +- .../machine/TileEntityMachineTurbine.java | 10 +- .../machine/TileEntityMachineTurbofan.java | 4 +- .../machine/TileEntityMachineUF6Tank.java | 4 +- .../machine/TileEntityReactorZirnox.java | 9 +- .../tileentity/machine/TileEntitySILEX.java | 16 +- .../machine/TileEntitySolarBoiler.java | 20 +- .../machine/TileEntitySoyuzLauncher.java | 6 +- .../machine/TileEntityStorageDrum.java | 6 +- .../machine/TileEntityTowerLarge.java | 6 +- .../machine/TileEntityWatzCore.java | 4 +- .../TileEntityMachineCatalyticCracker.java | 20 +- .../oil/TileEntityMachineFrackingTower.java | 10 +- .../oil/TileEntityMachineFractionTower.java | 14 +- .../oil/TileEntityMachineGasFlare.java | 4 +- .../machine/oil/TileEntityMachineOilWell.java | 1 - .../oil/TileEntityMachineRefinery.java | 14 +- .../machine/oil/TileEntityOilDrillBase.java | 6 +- .../machine/rbmk/TileEntityRBMKConsole.java | 4 +- .../machine/rbmk/TileEntityRBMKCooler.java | 4 +- .../machine/rbmk/TileEntityRBMKInlet.java | 10 +- .../machine/rbmk/TileEntityRBMKOutgasser.java | 12 +- .../machine/rbmk/TileEntityRBMKOutlet.java | 4 +- .../turret/TileEntityTurretFritz.java | 8 +- src/main/java/com/hbm/util/ArmorUtil.java | 20 + src/main/java/com/hbm/util/InventoryUtil.java | 52 +- src/main/java/com/hbm/util/RTGUtil.java | 7 +- src/main/resources/assets/hbm/lang/de_DE.lang | 4 + src/main/resources/assets/hbm/lang/en_US.lang | 4 + .../assets/hbm/models/weapons/cursed.obj | 2516 +++++++++++++++++ .../hbm/textures/blocks/anvil_osmiridium.png | Bin 0 -> 516 bytes .../hbm/textures/models/weapons/ff/cursed.png | Bin 0 -> 179 bytes src/main/resources/mcmod.info | 2 +- 138 files changed, 3820 insertions(+), 1130 deletions(-) delete mode 100644 src/main/java/com/hbm/handler/FluidTypeHandler.java create mode 100644 src/main/java/com/hbm/handler/nei/NEIUniversalHandler.java create mode 100644 src/main/java/com/hbm/handler/nei/RTGRecipeHandler.java create mode 100644 src/main/java/com/hbm/handler/nei/ZirnoxRecipeHandler.java create mode 100644 src/main/java/com/hbm/render/item/weapon/ItemRenderWeaponFFCursed.java create mode 100644 src/main/resources/assets/hbm/models/weapons/cursed.obj create mode 100644 src/main/resources/assets/hbm/textures/blocks/anvil_osmiridium.png create mode 100644 src/main/resources/assets/hbm/textures/models/weapons/ff/cursed.png diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 9617283a8..05575f9a5 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -1011,6 +1011,7 @@ public class ModBlocks { public static Block anvil_bismuth; public static Block anvil_schrabidate; public static Block anvil_dnt; + public static Block anvil_osmiridium; public static Block anvil_murky; public static final int guiID_anvil = 121; @@ -2067,6 +2068,7 @@ public class ModBlocks { anvil_bismuth = new NTMAnvil(Material.iron, 5).setBlockName("anvil_bismuth").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_bismuth"); anvil_schrabidate = new NTMAnvil(Material.iron, 6).setBlockName("anvil_schrabidate").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_schrabidate"); anvil_dnt = new NTMAnvil(Material.iron, 7).setBlockName("anvil_dnt").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_dnt"); + anvil_osmiridium = new NTMAnvil(Material.iron, 8).setBlockName("anvil_osmiridium").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_osmiridium"); anvil_murky = new NTMAnvil(Material.iron, 1916169).setBlockName("anvil_murky").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_steel"); machine_deaerator = new MachineDeaerator(Material.iron).setBlockName("machine_deaerator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_deaerator"); @@ -2773,6 +2775,7 @@ public class ModBlocks { GameRegistry.registerBlock(anvil_bismuth, ItemBlockBase.class, anvil_bismuth.getUnlocalizedName()); GameRegistry.registerBlock(anvil_schrabidate, ItemBlockBase.class, anvil_schrabidate.getUnlocalizedName()); GameRegistry.registerBlock(anvil_dnt, ItemBlockBase.class, anvil_dnt.getUnlocalizedName()); + GameRegistry.registerBlock(anvil_osmiridium, ItemBlockBase.class, anvil_osmiridium.getUnlocalizedName()); GameRegistry.registerBlock(anvil_murky, ItemBlockBase.class, anvil_murky.getUnlocalizedName()); GameRegistry.registerBlock(machine_press, machine_press.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/config/MachineConfig.java b/src/main/java/com/hbm/config/MachineConfig.java index 2ce702d73..555bfd4a8 100644 --- a/src/main/java/com/hbm/config/MachineConfig.java +++ b/src/main/java/com/hbm/config/MachineConfig.java @@ -4,8 +4,8 @@ import net.minecraftforge.common.config.Configuration; public class MachineConfig { - public static boolean scaleRTGPower = false; - public static boolean doRTGsDecay = true; + protected static boolean scaleRTGPower = false; + protected static boolean doRTGsDecay = true; public static void loadFromConfig(Configuration config) { @@ -13,11 +13,6 @@ public class MachineConfig { scaleRTGPower = CommonConfig.createConfigBool(config, CATEGORY_MACHINE, "9.00_scaleRTGPower", "Should RTG/Betavoltaic fuel power scale down as it decays?", false); doRTGsDecay = CommonConfig.createConfigBool(config, CATEGORY_MACHINE, "9.01_doRTGsDecay", "Should RTG/Betavoltaic fuel decay at all?", true); - - if(VersatileConfig.rtgDecay()) { - scaleRTGPower = true; - doRTGsDecay = true; - } } } diff --git a/src/main/java/com/hbm/config/VersatileConfig.java b/src/main/java/com/hbm/config/VersatileConfig.java index 27c4b03bc..218783eb0 100644 --- a/src/main/java/com/hbm/config/VersatileConfig.java +++ b/src/main/java/com/hbm/config/VersatileConfig.java @@ -41,7 +41,11 @@ public class VersatileConfig { } public static boolean rtgDecay() { - return GeneralConfig.enable528; + return GeneralConfig.enable528 || MachineConfig.doRTGsDecay; + } + + public static boolean scaleRTGPower() { + return GeneralConfig.enable528 || MachineConfig.scaleRTGPower; } static int minute = 60 * 20; diff --git a/src/main/java/com/hbm/crafting/ArmorRecipes.java b/src/main/java/com/hbm/crafting/ArmorRecipes.java index 6abe1805b..33b1c94e4 100644 --- a/src/main/java/com/hbm/crafting/ArmorRecipes.java +++ b/src/main/java/com/hbm/crafting/ArmorRecipes.java @@ -2,20 +2,18 @@ package com.hbm.crafting; import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.OreDictManager; +import com.hbm.inventory.fluid.Fluids; + import static com.hbm.inventory.OreDictManager.*; import com.hbm.items.ModItems; import com.hbm.main.CraftingManager; -import cpw.mods.fml.common.registry.GameRegistry; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.oredict.OreDictionary; -import net.minecraftforge.oredict.ShapedOreRecipe; -import net.minecraftforge.oredict.ShapelessOreRecipe; /** * For player armor @@ -79,7 +77,7 @@ public class ArmorRecipes { CraftingManager.addShapelessAuto(new ItemStack(ModItems.ajro_boots, 1), new Object[] { ModItems.ajr_boots, KEY_RED, KEY_BLACK }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.bj_helmet, 1), new Object[] { "SBS", " C ", " I ", 'S', Items.string, 'B', new ItemStack(Blocks.wool, 1, 15), 'C', ModItems.circuit_targeting_tier4, 'I', STAR.ingot() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.bj_plate, 1), new Object[] { "N N", "MSM", "NCN", 'N', ModItems.plate_armor_lunar, 'M', ModItems.motor_desh, 'S', ModItems.starmetal_plate, 'C', ModItems.circuit_targeting_tier5 }); - CraftingManager.addRecipeAuto(new ItemStack(ModItems.bj_plate_jetpack, 1), new Object[] { "NFN", "TPT", "ICI", 'N', ModItems.plate_armor_lunar, 'F', ModItems.fins_quad_titanium, 'T', new ItemStack(ModItems.fluid_tank_full, 1, FluidTypeTheOldOne.XENON.ordinal()), 'P', ModItems.bj_plate, 'I', ModItems.mp_thruster_10_xenon, 'C', ModItems.crystal_phosphorus }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.bj_plate_jetpack, 1), new Object[] { "NFN", "TPT", "ICI", 'N', ModItems.plate_armor_lunar, 'F', ModItems.fins_quad_titanium, 'T', new ItemStack(ModItems.fluid_tank_full, 1, Fluids.XENON.ordinal()), 'P', ModItems.bj_plate, 'I', ModItems.mp_thruster_10_xenon, 'C', ModItems.crystal_phosphorus }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.bj_legs, 1), new Object[] { "MBM", "NSN", "N N", 'N', ModItems.plate_armor_lunar, 'M', ModItems.motor_desh, 'S', ModItems.starmetal_legs, 'B', ModBlocks.block_starmetal }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.bj_boots, 1), new Object[] { "N N", "BSB", 'N', ModItems.plate_armor_lunar, 'S', ModItems.starmetal_boots, 'B', ModBlocks.block_starmetal }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.hev_helmet, 1), new Object[] { "PPC", "PBP", "IFI", 'P', ModItems.plate_armor_hev, 'C', ModItems.circuit_targeting_tier4, 'B', ModItems.titanium_helmet, 'I', ModItems.plate_polymer, 'F', ModItems.gas_mask_filter }); diff --git a/src/main/java/com/hbm/crafting/WeaponRecipes.java b/src/main/java/com/hbm/crafting/WeaponRecipes.java index 2b3950b0c..f5249172e 100644 --- a/src/main/java/com/hbm/crafting/WeaponRecipes.java +++ b/src/main/java/com/hbm/crafting/WeaponRecipes.java @@ -1,20 +1,18 @@ package com.hbm.crafting; import com.hbm.blocks.ModBlocks; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.OreDictManager; +import com.hbm.inventory.fluid.Fluids; + import static com.hbm.inventory.OreDictManager.*; import com.hbm.items.ModItems; import com.hbm.items.weapon.GunB92Cell; import com.hbm.main.CraftingManager; -import cpw.mods.fml.common.registry.GameRegistry; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; -import net.minecraftforge.oredict.ShapedOreRecipe; -import net.minecraftforge.oredict.ShapelessOreRecipe; /** * For guns, ammo and the like @@ -136,7 +134,7 @@ public class WeaponRecipes { CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_b92), new Object[] { "DDD", "SSC", " R", 'D', ModItems.plate_dineutronium, 'S', STAR.ingot(), 'C', ModItems.circuit_targeting_tier6, 'R', ModItems.gun_revolver_schrabidium }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_b93), new Object[] { "PCE", "SEB", "PCE", 'P', ModItems.plate_dineutronium, 'C', ModItems.weaponized_starblaster_cell, 'E', ModItems.component_emitter, 'B', ModItems.gun_b92, 'S', ModItems.singularity_spark }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_b92_ammo, 1), new Object[] { "PSP", "ESE", "PSP", 'P', STEEL.plate(), 'S', STAR.ingot(), 'E', ModItems.powder_spark_mix }); - CraftingManager.addShapelessAuto(new ItemStack(ModItems.weaponized_starblaster_cell, 1), new Object[] { new ItemStack(ModItems.fluid_tank_full, 1, FluidTypeTheOldOne.ACID.getID()), GunB92Cell.getFullCell(), ModItems.wire_copper }); + CraftingManager.addShapelessAuto(new ItemStack(ModItems.weaponized_starblaster_cell, 1), new Object[] { new ItemStack(ModItems.fluid_tank_full, 1, Fluids.ACID.getID()), GunB92Cell.getFullCell(), ModItems.wire_copper }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_uzi, 1), new Object[] { "SMS", " PB", " P ", 'S', STEEL.ingot(), 'M', ModItems.mechanism_rifle_2, 'P', STEEL.plate(), 'B', ModItems.bolt_dura_steel }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_uzi_silencer, 1), new Object[] { "P ", " P ", " U", 'P', POLYMER.ingot(), 'U', ModItems.gun_uzi }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_uzi_saturnite, 1), new Object[] { "SMS", " PB", " P ", 'S', BIGMT.ingot(), 'M', ModItems.mechanism_rifle_2, 'P', BIGMT.plate(), 'B', ModItems.bolt_tungsten }); @@ -216,7 +214,7 @@ public class WeaponRecipes { CraftingManager.addRecipeAuto(new ItemStack(ModItems.assembly_calamity, 12), new Object[] { " I ", "GCG", " P ", 'I', PB.ingot(), 'G', ModItems.cordite, 'C', ModItems.casing_50, 'P', ModItems.primer_50 }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.assembly_actionexpress, 12), new Object[] { " I", "GC", " P", 'I', PB.ingot(), 'G', ModItems.cordite, 'C', ModItems.casing_50, 'P', ModItems.primer_50 }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.assembly_nuke, 1), new Object[] { " WP", "SEP", " WP", 'W', ModItems.wire_aluminium, 'P', STEEL.plate(), 'S', ModItems.hull_small_steel, 'E', ModItems.ingot_semtex }); - CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_dart, 16), new Object[] { "IPI", "ICI", "IPI", 'I', ModItems.plate_polymer, 'P', IRON.plate(), 'C', new ItemStack(ModItems.fluid_tank_lead_full, 1, FluidTypeTheOldOne.WATZ.ordinal()) }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_dart, 16), new Object[] { "IPI", "ICI", "IPI", 'I', ModItems.plate_polymer, 'P', IRON.plate(), 'C', new ItemStack(ModItems.fluid_tank_lead_full, 1, Fluids.WATZ.ordinal()) }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_dart_nerf, 16), new Object[] { "I", "I", 'I', ModItems.plate_polymer }); //Folly shells @@ -307,7 +305,7 @@ public class WeaponRecipes { CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_fuel_vaporizer, 1), new Object[] { "PSP", "SNS", "PSP", 'P', P_WHITE.ingot(), 'S', ModItems.crystal_sulfur, 'N', ModItems.ammo_fuel_napalm }); //Fire Extingusisher Tanks - CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_fireext, 1), new Object[] { " P ", "BDB", " P ", 'P', STEEL.plate(), 'B', ModItems.bolt_tungsten, 'D', new ItemStack(ModItems.fluid_tank_full, 1, FluidTypeTheOldOne.WATER.ordinal()) }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_fireext, 1), new Object[] { " P ", "BDB", " P ", 'P', STEEL.plate(), 'B', ModItems.bolt_tungsten, 'D', new ItemStack(ModItems.fluid_tank_full, 1, Fluids.WATER.ordinal()) }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_fireext_foam, 1), new Object[] { " N ", "NFN", " N ", 'N', KNO.dust(), 'F', ModItems.ammo_fireext }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.ammo_fireext_sand, 1), new Object[] { "NNN", "NFN", "NNN", 'N', ModBlocks.sand_boron, 'F', ModItems.ammo_fireext }); @@ -339,7 +337,7 @@ public class WeaponRecipes { CraftingManager.addRecipeAuto(new ItemStack(ModItems.grenade_mirv, 1), new Object[] { "GGG", "GCG", "GGG", 'G', ModItems.grenade_smart, 'C', ModItems.grenade_generic }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.grenade_breach, 1), new Object[] { "G", "G", "P", 'G', ModItems.grenade_smart, 'P', BIGMT.plate() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.grenade_burst, 1), new Object[] { "GGG", "GCG", "GGG", 'G', ModItems.grenade_breach, 'C', ModItems.grenade_generic }); - CraftingManager.addRecipeAuto(new ItemStack(ModItems.grenade_cloud), new Object[] { "SPS", "CAC", "SPS", 'S', S.dust(), 'P', ModItems.powder_poison, 'C', CU.dust(), 'A', new ItemStack(ModItems.fluid_tank_full, 1, FluidTypeTheOldOne.ACID.getID()) }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.grenade_cloud), new Object[] { "SPS", "CAC", "SPS", 'S', S.dust(), 'P', ModItems.powder_poison, 'C', CU.dust(), 'A', new ItemStack(ModItems.fluid_tank_full, 1, Fluids.ACID.getID()) }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.grenade_pink_cloud), new Object[] { " S ", "ECE", " E ", 'S', ModItems.powder_spark_mix, 'E', ModItems.powder_magic, 'C', ModItems.grenade_cloud }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.nuclear_waste_pearl), new Object[] { "WWW", "WFW", "WWW", 'W', ModItems.nuclear_waste_tiny, 'F', ModBlocks.block_fallout }); //CraftingManager.addRecipeAuto(new ItemStack(ModItems.grenade_nuke), new Object[] { "CGC", "CGC", "PAP", 'C', ModBlocks.det_charge, 'G', ModItems.grenade_mk2, 'P', ALLOY.plate(), 'A', Blocks.anvil }); diff --git a/src/main/java/com/hbm/handler/FluidTypeHandler.java b/src/main/java/com/hbm/handler/FluidTypeHandler.java deleted file mode 100644 index d4adf7ab3..000000000 --- a/src/main/java/com/hbm/handler/FluidTypeHandler.java +++ /dev/null @@ -1,162 +0,0 @@ -package com.hbm.handler; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -import com.hbm.inventory.fluid.FluidType; -import com.hbm.inventory.fluid.FluidType.FluidTrait; -import com.hbm.inventory.fluid.Fluids; -import com.hbm.render.util.EnumSymbol; - -public class FluidTypeHandler { - - @Deprecated //you might spot this deprecated annotation and thing "oh goodie, that's something for me to remove and replace!" - //no. - //if you tough any of this i promise you will regret being born - //deprecated means "avoid using in the future" not "fuck with this with your heart's content" - //hands off. if you can read this, close this class now. - public static class FluidTypeTheOldOne extends com.hbm.inventory.fluid.FluidType { - - /*WATER = new FluidType (0x3333FF, 1, 1, 1, 0, 0, 0, EnumSymbol.NONE, "hbmfluid.water"), - STEAM = new FluidType (0xe5e5e5, 9, 2, 1, 3, 0, 0, EnumSymbol.NONE, "hbmfluid.steam", 100), - HOTSTEAM = new FluidType (0xE7D6D6, 1, 1, 2, 4, 0, 0, EnumSymbol.NONE, "hbmfluid.hotsteam", 300), - SUPERHOTSTEAM = new FluidType (0xE7B7B7, 2, 1, 2, 4, 0, 0, EnumSymbol.NONE, "hbmfluid.superhotsteam", 450), - ULTRAHOTSTEAM = new FluidType (0xE39393, 13, 1, 2, 4, 0, 0, EnumSymbol.NONE, "hbmfluid.ultrahotsteam", 600), - COOLANT = new FluidType (0xd8fcff, 2, 1, 1, 1, 0, 0, EnumSymbol.NONE, "hbmfluid.coolant"), - - LAVA = new FluidType (0xFF3300, 3, 1, 1, 4, 0, 0, EnumSymbol.NOWATER, "hbmfluid.lava", 1200), - - DEUTERIUM = new FluidType (0x0000FF, 4, 1, 1, 3, 4, 0, EnumSymbol.NONE, "hbmfluid.deuterium"), - TRITIUM = new FluidType (0x000099, 5, 1, 1, 3, 4, 0, EnumSymbol.RADIATION, "hbmfluid.tritium"), - - OIL = new FluidType (0x020202, 6, 1, 1, 2, 1, 0, EnumSymbol.NONE, "hbmfluid.oil"), - HOTOIL = new FluidType (0x300900, 8, 2, 1, 2, 3, 0, EnumSymbol.NONE, "hbmfluid.hotoil", 350), - - HEAVYOIL = new FluidType (0x141312, 2, 2, 1, 2, 1, 0, EnumSymbol.NONE, "hbmfluid.heavyoil"), - BITUMEN = new FluidType (0x1f2426, 3, 2, 1, 2, 0, 0, EnumSymbol.NONE, "hbmfluid.bitumen"), - SMEAR = new FluidType (0x190f01, 7, 1, 1, 2, 1, 0, EnumSymbol.NONE, "hbmfluid.smear"), - HEATINGOIL = new FluidType (0x211806, 4, 2, 1, 2, 2, 0, EnumSymbol.NONE, "hbmfluid.heatingoil"), - - RECLAIMED = new FluidType (0x332b22, 8, 1, 1, 2, 2, 0, EnumSymbol.NONE, "hbmfluid.reclaimed"), - PETROIL = new FluidType (0x44413d, 9, 1, 1, 1, 3, 0, EnumSymbol.NONE, "hbmfluid.petroil"), - - LUBRICANT = new FluidType (0x606060, 10, 1, 1, 2, 1, 0, EnumSymbol.NONE, "hbmfluid.lubricant"), - - NAPHTHA = new FluidType (0x595744, 5, 2, 1, 2, 1, 0, EnumSymbol.NONE, "hbmfluid.naphtha"), - DIESEL = new FluidType (0xf2eed5, 11, 1, 1, 1, 2, 0, EnumSymbol.NONE, "hbmfluid.diesel"), - - LIGHTOIL = new FluidType (0x8c7451, 6, 2, 1, 1, 2, 0, EnumSymbol.NONE, "hbmfluid.lightoil"), - KEROSENE = new FluidType (0xffa5d2, 12, 1, 1, 1, 2, 0, EnumSymbol.NONE, "hbmfluid.kerosene"), - - GAS = new FluidType (0xfffeed, 13, 1, 1, 1, 4, 1, EnumSymbol.NONE, "hbmfluid.gas"), - PETROLEUM = new FluidType (0x7cb7c9, 7, 2, 1, 1, 4, 1, EnumSymbol.NONE, "hbmfluid.petroleum"), - LPG = new FluidType (0x4747EA, 5, 2, 2, 1, 3, 1, EnumSymbol.NONE, "hbmfluid.lpg"), - - BIOGAS = new FluidType (0xbfd37c, 12, 2, 1, 1, 4, 1, EnumSymbol.NONE, "hbmfluid.biogas"), - BIOFUEL = new FluidType (0xeef274, 13, 2, 1, 1, 2, 0, EnumSymbol.NONE, "hbmfluid.biofuel"), - - NITAN = new FluidType (0x8018ad, 15, 2, 1, 2, 4, 1, EnumSymbol.NONE, "hbmfluid.nitan"), - - UF6 = new FluidType (0xD1CEBE, 14, 1, 1, 4, 0, 2, EnumSymbol.RADIATION, "hbmfluid.uf6", FluidTrait.CORROSIVE), - PUF6 = new FluidType (0x4C4C4C, 15, 1, 1, 4, 0, 4, EnumSymbol.RADIATION, "hbmfluid.puf6", FluidTrait.CORROSIVE, FluidTrait.LEAD_CONTAINER), - SAS3 = new FluidType (0x4ffffc, 14, 2, 1, 5, 0, 4, EnumSymbol.RADIATION, "hbmfluid.sas3", FluidTrait.CORROSIVE, FluidTrait.LEAD_CONTAINER), - SCHRABIDIC = new FluidType (0x006B6B, 14, 1, 2, 5, 0, 5, EnumSymbol.ACID, "hbmfluid.schrabidic", FluidTrait.CORROSIVE_2, FluidTrait.LEAD_CONTAINER), - - AMAT = new FluidType (0x010101, 0, 2, 1, 5, 0, 5, EnumSymbol.ANTIMATTER, "hbmfluid.amat", FluidTrait.AMAT), - ASCHRAB = new FluidType (0xb50000, 1, 2, 1, 5, 0, 5, EnumSymbol.ANTIMATTER, "hbmfluid.aschrab", FluidTrait.AMAT), - - ACID = new FluidType (0xfff7aa, 10, 2, 1, 3, 0, 3, EnumSymbol.OXIDIZER, "hbmfluid.acid", FluidTrait.CORROSIVE), - WATZ = new FluidType (0x86653E, 11, 2, 1, 4, 0, 3, EnumSymbol.ACID, "hbmfluid.watz", FluidTrait.CORROSIVE_2, FluidTrait.LEAD_CONTAINER), - CRYOGEL = new FluidType (0x32ffff, 0, 1, 2, 2, 0, 0, EnumSymbol.CROYGENIC, "hbmfluid.cryogel", -170), - - HYDROGEN = new FluidType (0x4286f4, 3, 1, 2, 3, 4, 0, EnumSymbol.CROYGENIC, "hbmfluid.hydrogen"), - OXYGEN = new FluidType (0x98bdf9, 4, 1, 2, 3, 0, 0, EnumSymbol.CROYGENIC, "hbmfluid.oxygen"), - XENON = new FluidType (0xba45e8, 5, 1, 2, 0, 0, 0, EnumSymbol.ASPHYXIANT, "hbmfluid.xenon"), - BALEFIRE = new FluidType (0x28e02e, 6, 1, 2, 4, 4, 3, EnumSymbol.RADIATION, "hbmfluid.balefire", 1500, FluidTrait.CORROSIVE, FluidTrait.LEAD_CONTAINER), - - MERCURY = new FluidType (0x808080, 7, 1, 2, 2, 0, 0, EnumSymbol.NONE, "hbmfluid.mercury"), - PAIN = new FluidType (0x938541, 15, 1, 2, 2, 0, 1, EnumSymbol.ACID, "hbmfluid.pain", 300, FluidTrait.CORROSIVE), - - WASTEFLUID = new FluidType (0x544400, 0, 2, 2, 2, 0, 1, EnumSymbol.RADIATION, "hbmfluid.wastefluid", FluidTrait.LEAD_CONTAINER), - WASTEGAS = new FluidType (0xB8B8B8, 1, 2, 2, 2, 0, 1, EnumSymbol.RADIATION, "hbmfluid.wastegas", FluidTrait.LEAD_CONTAINER), - - GASOLINE = new FluidType (0x445772, 2, 2, 2, 1, 2, 0, EnumSymbol.NONE, "hbmfluid.gasoline"), - SPENTSTEAM = new FluidType (0x445772, 3, 2, 2, 2, 0, 0, EnumSymbol.NONE, "hbmfluid.spentsteam"), - FRACKSOL = new FluidType (0x798A6B, 4, 2, 2, 1, 3, 3, EnumSymbol.ACID, "hbmfluid.fracksol", FluidTrait.CORROSIVE), - - PLASMA_DT = new FluidType (0xF7AFDE, 8, 1, 2, 0, 4, 0, EnumSymbol.RADIATION, "hbmfluid.plasma_dt", 3250, FluidTrait.NO_CONTAINER, FluidTrait.NO_ID), - PLASMA_HD = new FluidType (0xF0ADF4, 9, 1, 2, 0, 4, 0, EnumSymbol.RADIATION, "hbmfluid.plasma_hd", 2500, FluidTrait.NO_CONTAINER, FluidTrait.NO_ID), - PLASMA_HT = new FluidType (0xD1ABF2, 10, 1, 2, 0, 4, 0, EnumSymbol.RADIATION, "hbmfluid.plasma_ht", 3000, FluidTrait.NO_CONTAINER, FluidTrait.NO_ID), - PLASMA_XM = new FluidType (0xC6A5FF, 11, 1, 2, 0, 4, 1, EnumSymbol.RADIATION, "hbmfluid.plasma_xm", 4250, FluidTrait.NO_CONTAINER, FluidTrait.NO_ID), - PLASMA_BF = new FluidType (0xA7F1A3, 12, 1, 2, 4, 5, 4, EnumSymbol.ANTIMATTER, "hbmfluid.plasma_bf", 8500, FluidTrait.NO_CONTAINER, FluidTrait.NO_ID), - PLASMA_DH3 = new FluidType (0xFF83AA, 6, 2, 2, 0, 4, 0, EnumSymbol.RADIATION, "hbmfluid.plasma_dh3", 3480, FluidTrait.NO_CONTAINER, FluidTrait.NO_ID), - - HELIUM3 = new FluidType (0xFCF0C4, 7, 2, 2, 3, 4, 0, EnumSymbol.ASPHYXIANT, "hbmfluid.helium3"), - DEATH = new FluidType (0x717A88, 8, 2, 2, 2, 0, 1, EnumSymbol.ACID, "hbmfluid.death", 300, FluidTrait.CORROSIVE_2, FluidTrait.LEAD_CONTAINER), - ETHANOL = new FluidType (0xe0ffff, 9, 2, 2, 2, 3, 0, EnumSymbol.NONE, "hbmfluid.ethanol"), - HEAVYWATER = new FluidType (0x00a0b0, 10, 2, 2, 1, 0, 0, EnumSymbol.NONE, "hbmfluid.heavywater"), - CARBONDIOXIDE = new FluidType (0x747474, 11, 2, 2, 3, 0, 0, EnumSymbol.ASPHYXIANT, "hbmfluid.carbondioxide");*/ - - public static FluidType NONE = Fluids.NONE, WATER = Fluids.WATER, STEAM = Fluids.STEAM, HOTSTEAM = Fluids.HOTSTEAM, - SUPERHOTSTEAM = Fluids.SUPERHOTSTEAM, ULTRAHOTSTEAM = Fluids.ULTRAHOTSTEAM, COOLANT = Fluids.COOLANT, LAVA = Fluids.LAVA, DEUTERIUM = Fluids.DEUTERIUM, - TRITIUM = Fluids.TRITIUM, OIL = Fluids.OIL, HOTOIL = Fluids.HOTOIL, HEAVYOIL = Fluids.HEAVYOIL, BITUMEN = Fluids.BITUMEN, SMEAR = Fluids.SMEAR, - HEATINGOIL = Fluids.HEATINGOIL, RECLAIMED = Fluids.RECLAIMED, PETROIL = Fluids.PETROIL, LUBRICANT = Fluids.LUBRICANT, NAPHTHA = Fluids.NAPHTHA, - DIESEL = Fluids.DIESEL, LIGHTOIL = Fluids.LIGHTOIL, KEROSENE = Fluids.KEROSENE, GAS = Fluids.GAS, PETROLEUM = Fluids.PETROLEUM, LPG = Fluids.LPG, - BIOGAS = Fluids.BIOGAS, BIOFUEL = Fluids.BIOFUEL, NITAN = Fluids.NITAN, UF6 = Fluids.UF6, PUF6 = Fluids.PUF6, SAS3 = Fluids.SAS3, SCHRABIDIC = Fluids.SCHRABIDIC, - AMAT = Fluids.AMAT, ASCHRAB = Fluids.ASCHRAB, ACID = Fluids.ACID, WATZ = Fluids.WATZ, CRYOGEL = Fluids.CRYOGEL, HYDROGEN = Fluids.HYDROGEN, OXYGEN = Fluids.OXYGEN, - XENON = Fluids.XENON, BALEFIRE = Fluids.BALEFIRE, MERCURY = Fluids.MERCURY, PAIN = Fluids.PAIN, WASTEFLUID = Fluids.WASTEFLUID, WASTEGAS = Fluids.WASTEGAS, - GASOLINE = Fluids.GASOLINE, SPENTSTEAM = Fluids.SPENTSTEAM, FRACKSOL = Fluids.FRACKSOL, PLASMA_DT = Fluids.PLASMA_DT, PLASMA_HD = Fluids.PLASMA_HD, - PLASMA_HT = Fluids.PLASMA_HT, PLASMA_XM = Fluids.PLASMA_XM, PLASMA_BF = Fluids.PLASMA_BF, PLASMA_DH3 = Fluids.PLASMA_DH3, HELIUM3 = Fluids.HELIUM3, - DEATH = Fluids.DEATH, ETHANOL = Fluids.ETHANOL, HEAVYWATER = Fluids.HEAVYWATER, CARBONDIOXIDE = Fluids.CARBONDIOXIDE; - - /*//Approximate HEX Color of the fluid, used for pipe rendering - private int color; - //X position of the fluid on the sheet, the "row" - private int textureX; - //Y position of the fluid on the sheet, the "column" - private int textureY; - //ID of the texture sheet the fluid is on - private int sheetID; - //Unlocalized string ID of the fluid - private String name; - //Whether the fluid counts is too hot for certain tanks - //private boolean hot; - //Whether the fluid counts as corrosive and requires a steel tank - //private boolean corrosive; - //Whether the fluid is antimatter and requires magnetic storage - //private boolean antimatter; - - public int poison; - public int flammability; - public int reactivity; - public EnumSymbol symbol; - public int temperature; - public List traits = new ArrayList();*/ - - private FluidTypeTheOldOne(int color, int x, int y, int sheet, int p, int f, int r, EnumSymbol symbol, String name) { - this(color, x, y, sheet, p, f, r, symbol, name, 0, new FluidTrait[0]); - } - - private FluidTypeTheOldOne(int color, int x, int y, int sheet, int p, int f, int r, EnumSymbol symbol, String name, FluidTrait... traits) { - this(color, x, y, sheet, p, f, r, symbol, name, 0, traits); - } - - private FluidTypeTheOldOne(int color, int x, int y, int sheet, int p, int f, int r, EnumSymbol symbol, String name, int temperature) { - this(color, x, y, sheet, p, f, r, symbol, name, temperature, new FluidTrait[0]); - } - - private FluidTypeTheOldOne(int color, int x, int y, int sheet, int p, int f, int r, EnumSymbol symbol, String name, int temperature, FluidTrait... traits) { - super(color, x, y, sheet, p, f, r, symbol, name, temperature, traits); - } - - /*public static com.hbm.inventory.fluid.FluidType[] values() { - return Fluids.metaOrder.toArray(new com.hbm.inventory.fluid.FluidType[0]); - } - - public boolean needsLeadContainer() { - return this.traits.contains(FluidTrait.LEAD_CONTAINER); - }*/ - }; -} diff --git a/src/main/java/com/hbm/handler/nei/CrystallizerRecipeHandler.java b/src/main/java/com/hbm/handler/nei/CrystallizerRecipeHandler.java index 17b23be39..358aac421 100644 --- a/src/main/java/com/hbm/handler/nei/CrystallizerRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/CrystallizerRecipeHandler.java @@ -6,7 +6,7 @@ import java.util.Arrays; import java.util.List; import java.util.Map; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.gui.GUICrystallizer; import com.hbm.inventory.recipes.CrystallizerRecipes; import com.hbm.inventory.recipes.MachineRecipes; @@ -31,7 +31,7 @@ public class CrystallizerRecipeHandler extends TemplateRecipeHandler { public RecipeSet(Object input, ItemStack result) { this.input = new PositionedStack(input, 75, 24); - this.acid = new PositionedStack(ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.ACID.ordinal()), TileEntityMachineCrystallizer.acidRequired), 39, 24); + this.acid = new PositionedStack(ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, Fluids.ACID.ordinal()), TileEntityMachineCrystallizer.acidRequired), 39, 24); this.result = new PositionedStack(result, 135, 24); } @@ -126,7 +126,7 @@ public class CrystallizerRecipeHandler extends TemplateRecipeHandler { for (Map.Entry recipe : recipes.entrySet()) { if(NEIServerUtils.areStacksSameTypeCrafting(ingredient, ItemFluidIcon.addQuantity( - new ItemStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.ACID.ordinal()), TileEntityMachineCrystallizer.acidRequired))) { + new ItemStack(ModItems.fluid_icon, 1, Fluids.ACID.ordinal()), TileEntityMachineCrystallizer.acidRequired))) { if(recipe.getKey() instanceof ItemStack) { this.arecipes.add(new RecipeSet(recipe.getKey(), (ItemStack)recipe.getValue())); diff --git a/src/main/java/com/hbm/handler/nei/NEIUniversalHandler.java b/src/main/java/com/hbm/handler/nei/NEIUniversalHandler.java new file mode 100644 index 000000000..72746c81c --- /dev/null +++ b/src/main/java/com/hbm/handler/nei/NEIUniversalHandler.java @@ -0,0 +1,165 @@ +package com.hbm.handler.nei; + +import static codechicken.lib.gui.GuiDraw.drawTexturedModalRect; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map.Entry; + +import com.hbm.lib.RefStrings; +import com.hbm.util.InventoryUtil; + +import codechicken.nei.NEIServerUtils; +import codechicken.nei.PositionedStack; +import codechicken.nei.recipe.TemplateRecipeHandler; +import net.minecraft.block.Block; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; + +public abstract class NEIUniversalHandler extends TemplateRecipeHandler { + + /// SETUP /// + public final String display; + public final String key; + public final ItemStack[] machine; + public final HashMap recipes; + /// SETUP /// + + public NEIUniversalHandler(String key, String display, ItemStack machine[], HashMap recipes) { + this.key = key; + this.display = display; + this.machine = machine; + this.recipes = recipes; + } + + public NEIUniversalHandler(String key, String display, ItemStack machine, HashMap recipes) { this(key, display, new ItemStack[]{machine}, recipes); } + public NEIUniversalHandler(String key, String display, Item machine, HashMap recipes) { this(key, display, new ItemStack(machine), recipes); } + public NEIUniversalHandler(String key, String display, Block machine, HashMap recipes) { this(key, display, new ItemStack(machine), recipes); } + + public class RecipeSet extends TemplateRecipeHandler.CachedRecipe { + + PositionedStack[] input; + PositionedStack[] output; + PositionedStack machinePositioned; + + public RecipeSet(ItemStack[][] in, ItemStack[][] out) { + + input = new PositionedStack[in.length]; + for(int i = 0; i < in.length; i++) { + ItemStack[] sub = in[i]; + this.input[i] = new PositionedStack(sub, 48 + i * 18, 24); + } + output = new PositionedStack[out.length]; + for(int i = 0; i < out.length; i++) { + ItemStack[] sub = out[i]; + this.output[i] = new PositionedStack(sub, 102 + i * 18, 24); + } + + this.machinePositioned = new PositionedStack(machine, 75, 31); + } + + @Override + public List getIngredients() { + return getCycledIngredients(cycleticks / 20, Arrays.asList(input)); + } + + @Override + public PositionedStack getResult() { + return output[0]; + } + + @Override + public List getOtherStacks() { + List other = new ArrayList(); + for(PositionedStack pos : output) { + other.add(pos); + } + other.add(machinePositioned); + return getCycledIngredients(cycleticks / 20, other); + } + } + + @Override + public String getRecipeName() { + return this.display; + } + + @Override + public String getGuiTexture() { + return RefStrings.MODID + ":textures/gui/nei/gui_nei.png"; + } + + @Override + public void drawBackground(int recipe) { + super.drawBackground(recipe); + drawTexturedModalRect(47, 23, 5, 87, 18, 18); + drawTexturedModalRect(101, 23, 5, 87, 18, 18); + drawTexturedModalRect(74, 14, 59, 87, 18, 38); + } + + @Override + public void loadCraftingRecipes(String outputId, Object... results) { + + if(outputId.equals(key)) { + + for(Entry recipe : recipes.entrySet()) { + ItemStack[][] ins = InventoryUtil.extractObject(recipe.getKey()); + ItemStack[][] outs = InventoryUtil.extractObject(recipe.getValue()); + this.arecipes.add(new RecipeSet(ins, outs)); + } + + } else { + super.loadCraftingRecipes(outputId, results); + } + } + + @Override + public void loadCraftingRecipes(ItemStack result) { + + for(Entry recipe : recipes.entrySet()) { + ItemStack[][] ins = InventoryUtil.extractObject(recipe.getKey()); + ItemStack[][] outs = InventoryUtil.extractObject(recipe.getValue()); + + match: + for(ItemStack[] array : outs) { + for(ItemStack stack : array) { + if(NEIServerUtils.areStacksSameTypeCrafting(stack, result)) { + this.arecipes.add(new RecipeSet(ins, outs)); + break match; + } + } + } + } + } + + @Override + public void loadUsageRecipes(String inputId, Object... ingredients) { + + if(inputId.equals(key)) { + loadCraftingRecipes(key, new Object[0]); + } else { + super.loadUsageRecipes(inputId, ingredients); + } + } + + @Override + public void loadUsageRecipes(ItemStack ingredient) { + + for(Entry recipe : recipes.entrySet()) { + ItemStack[][] ins = InventoryUtil.extractObject(recipe.getKey()); + ItemStack[][] outs = InventoryUtil.extractObject(recipe.getValue()); + + match: + for(ItemStack[] array : ins) { + for(ItemStack stack : array) { + if(NEIServerUtils.areStacksSameTypeCrafting(stack, ingredient)) { + this.arecipes.add(new RecipeSet(ins, outs)); + break match; + } + } + } + } + } +} diff --git a/src/main/java/com/hbm/handler/nei/RTGRecipeHandler.java b/src/main/java/com/hbm/handler/nei/RTGRecipeHandler.java new file mode 100644 index 000000000..d11186c53 --- /dev/null +++ b/src/main/java/com/hbm/handler/nei/RTGRecipeHandler.java @@ -0,0 +1,18 @@ +package com.hbm.handler.nei; + +import com.hbm.blocks.ModBlocks; +import com.hbm.items.machine.ItemRTGPellet; + +import net.minecraft.item.ItemStack; + +public class RTGRecipeHandler extends NEIUniversalHandler { + + public RTGRecipeHandler() { + super("ntmRTG", "RTG", new ItemStack[] { + new ItemStack(ModBlocks.machine_rtg_grey), + new ItemStack(ModBlocks.machine_difurnace_rtg_off), + new ItemStack(ModBlocks.machine_industrial_generator), + new ItemStack(ModBlocks.machine_rtg_furnace_off) + }, ItemRTGPellet.getRecipeMap()); + } +} diff --git a/src/main/java/com/hbm/handler/nei/ZirnoxRecipeHandler.java b/src/main/java/com/hbm/handler/nei/ZirnoxRecipeHandler.java new file mode 100644 index 000000000..b3f0b072e --- /dev/null +++ b/src/main/java/com/hbm/handler/nei/ZirnoxRecipeHandler.java @@ -0,0 +1,11 @@ +package com.hbm.handler.nei; + +import com.hbm.blocks.ModBlocks; +import com.hbm.tileentity.machine.TileEntityReactorZirnox; + +public class ZirnoxRecipeHandler extends NEIUniversalHandler { + + public ZirnoxRecipeHandler() { + super("ntmZirnox", "ZIRNOX", ModBlocks.reactor_zirnox, TileEntityReactorZirnox.fuelMap); + } +} diff --git a/src/main/java/com/hbm/inventory/FluidContainerRegistry.java b/src/main/java/com/hbm/inventory/FluidContainerRegistry.java index 6827880d5..e646efc91 100644 --- a/src/main/java/com/hbm/inventory/FluidContainerRegistry.java +++ b/src/main/java/com/hbm/inventory/FluidContainerRegistry.java @@ -60,6 +60,8 @@ public class FluidContainerRegistry { FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.bottle_mercury), new ItemStack(Items.glass_bottle), Fluids.MERCURY, 1000)); FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.nugget_mercury), null, Fluids.MERCURY, 125)); + FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.rod_zirnox_tritium), new ItemStack(ModItems.rod_zirnox_empty), Fluids.TRITIUM, 2000)); + FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.tank_waste, 1, 1), new ItemStack(ModItems.tank_waste, 1, 0), Fluids.WATZ, 8000)); FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.tank_waste, 1, 2), new ItemStack(ModItems.tank_waste, 1, 1), Fluids.WATZ, 8000)); FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.tank_waste, 1, 3), new ItemStack(ModItems.tank_waste, 1, 2), Fluids.WATZ, 8000)); @@ -73,9 +75,10 @@ public class FluidContainerRegistry { FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.particle_amat), new ItemStack(ModItems.particle_empty), Fluids.AMAT, 1000)); FluidContainerRegistry.registerContainer(new FluidContainer(new ItemStack(ModItems.particle_aschrab), new ItemStack(ModItems.particle_empty), Fluids.ASCHRAB, 1000)); - for(int i = 1; i < FluidType.values().length; i++) { + FluidType[] fluids = Fluids.getAll(); + for(int i = 1; i < fluids.length; i++) { - FluidType type = FluidType.values()[i]; + FluidType type = fluids[i]; if(type.hasNoContainer()) continue; @@ -94,7 +97,7 @@ public class FluidContainerRegistry { allContainers.add(con); } - public static int getFluidContent(ItemStack stack, com.hbm.inventory.fluid.FluidType type) { + public static int getFluidContent(ItemStack stack, FluidType type) { if(stack == null) return 0; diff --git a/src/main/java/com/hbm/inventory/FluidTank.java b/src/main/java/com/hbm/inventory/FluidTank.java index 5808d9ed5..101e33e8a 100644 --- a/src/main/java/com/hbm/inventory/FluidTank.java +++ b/src/main/java/com/hbm/inventory/FluidTank.java @@ -79,7 +79,6 @@ public class FluidTank { //Called on TE update public void updateTank(int x, int y, int z, int dim) { - PacketDispatcher.wrapper.sendToAllAround(new TEFluidPacket(x, y, z, fluid, index, type), new TargetPoint(dim, x, y, z, 100)); } @@ -294,7 +293,7 @@ public class FluidTank { public void writeToNBT(NBTTagCompound nbt, String s) { nbt.setInteger(s, fluid); nbt.setInteger(s + "_max", maxFluid); - nbt.setString(s + "_type", type.getName()); + nbt.setInteger(s + "_type", type.getID()); } //Called by TE to load fillstate @@ -303,9 +302,10 @@ public class FluidTank { int max = nbt.getInteger(s + "_max"); if(max > 0) maxFluid = nbt.getInteger(s + "_max"); - type = FluidType.getEnum(nbt.getInteger(s + "_type")); + + type = FluidType.getEnumFromName(nbt.getString(s + "_type")); //compat if(type.getName().equals(Fluids.NONE.name())) - type = FluidType.getEnumFromName(nbt.getString(s + "_type")); + type = Fluids.fromID(nbt.getInteger(s + "_type")); } } diff --git a/src/main/java/com/hbm/inventory/OreDictManager.java b/src/main/java/com/hbm/inventory/OreDictManager.java index 1d0c9c461..8ac4192c4 100644 --- a/src/main/java/com/hbm/inventory/OreDictManager.java +++ b/src/main/java/com/hbm/inventory/OreDictManager.java @@ -157,6 +157,7 @@ public class OreDictManager { public static final DictFrame F = new DictFrame("Fluorite"); public static final DictFrame LIGNITE = new DictFrame("Lignite"); public static final DictFrame CINNABAR = new DictFrame("Cinnabar"); + public static final DictFrame BORAX = new DictFrame("Borax"); public static final DictFrame VOLCANIC = new DictFrame("Volcanic"); /* * HAZARDS, MISC @@ -294,6 +295,7 @@ public class OreDictManager { F .dust(fluorite) .block(block_fluorite) .ore(ore_fluorite, basalt_fluorite); LIGNITE .gem(lignite) .dust(powder_lignite) .ore(ore_lignite); CINNABAR .crystal(cinnebar) .gem(cinnebar) .ore(ore_cinnebar, ore_depth_cinnebar); + BORAX .dust(powder_borax) .ore(ore_depth_borax); VOLCANIC .gem(gem_volcanic) .ore(basalt_gem); /* diff --git a/src/main/java/com/hbm/inventory/container/ContainerMachineCyclotron.java b/src/main/java/com/hbm/inventory/container/ContainerMachineCyclotron.java index fe72884a3..0a4d47c30 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerMachineCyclotron.java +++ b/src/main/java/com/hbm/inventory/container/ContainerMachineCyclotron.java @@ -1,9 +1,9 @@ package com.hbm.inventory.container; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.FluidContainerRegistry; import com.hbm.inventory.SlotMachineOutput; import com.hbm.inventory.SlotUpgrade; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemMachineUpgrade; import com.hbm.tileentity.machine.TileEntityMachineCyclotron; @@ -84,11 +84,11 @@ public class ContainerMachineCyclotron extends Container { if(!this.mergeItemStack(stack, 13, 14, true)) return null; - } else if(FluidContainerRegistry.getFluidContent(stack, FluidTypeTheOldOne.COOLANT) > 0) { + } else if(FluidContainerRegistry.getFluidContent(stack, Fluids.COOLANT) > 0) { if(!this.mergeItemStack(stack, 11, 12, true)) return null; - } else if(FluidContainerRegistry.getFullContainer(stack, FluidTypeTheOldOne.AMAT) != null) { + } else if(FluidContainerRegistry.getFullContainer(stack, Fluids.AMAT) != null) { if(!this.mergeItemStack(stack, 9, 10, true)) return null; diff --git a/src/main/java/com/hbm/inventory/container/ContainerReactorZirnox.java b/src/main/java/com/hbm/inventory/container/ContainerReactorZirnox.java index b3cd49ead..4f82aec44 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerReactorZirnox.java +++ b/src/main/java/com/hbm/inventory/container/ContainerReactorZirnox.java @@ -1,8 +1,8 @@ package com.hbm.inventory.container; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.FluidContainerRegistry; import com.hbm.inventory.SlotMachineOutput; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.machine.ItemZirnoxRod; import com.hbm.tileentity.machine.TileEntityReactorZirnox; @@ -78,11 +78,11 @@ public class ContainerReactorZirnox extends Container { } } else { - if(FluidContainerRegistry.getFluidContent(stack, FluidTypeTheOldOne.CARBONDIOXIDE) > 0) { + if(FluidContainerRegistry.getFluidContent(stack, Fluids.CARBONDIOXIDE) > 0) { if(!this.mergeItemStack(stack, 24, 25, true)) return null; - } else if(FluidContainerRegistry.getFluidContent(stack, FluidTypeTheOldOne.WATER) > 0) { + } else if(FluidContainerRegistry.getFluidContent(stack, Fluids.WATER) > 0) { if(!this.mergeItemStack(stack, 25, 26, true)) return null; diff --git a/src/main/java/com/hbm/inventory/fluid/FluidType.java b/src/main/java/com/hbm/inventory/fluid/FluidType.java index 30437c2a0..c1ddd39d1 100644 --- a/src/main/java/com/hbm/inventory/fluid/FluidType.java +++ b/src/main/java/com/hbm/inventory/fluid/FluidType.java @@ -148,20 +148,17 @@ public class FluidType { //shitty wrapper delegates, go! //only used for compatibility purposes, these will be removed soon //don't use these, dumbfuck - @Deprecated //reason: use the fucking registry you dumbass this isn't a fucking enum anymore, we don't sell lists of all our instances here + /*@Deprecated //reason: use the fucking registry you dumbass this isn't a fucking enum anymore, we don't sell lists of all our instances here public static FluidType[] values() { return Fluids.metaOrder.toArray(new FluidType[0]); - } + }*/ @Deprecated //reason: not an enum, asshole, use the registry public static FluidType getEnum(int i) { return Fluids.fromID(i); } @Deprecated //reason: the more time you waste reading this the less time is there for you to use that fucking registry already public static FluidType getEnumFromName(String s) { - for(int i = 0; i < FluidType.values().length; i++) - if(FluidType.values()[i].getName().equals(s)) - return FluidType.values()[i]; - return Fluids.NONE; + return Fluids.fromName(s); } @Deprecated //reason: not an enum, again, fuck you public int ordinal() { diff --git a/src/main/java/com/hbm/inventory/gui/GUIMachineBoiler.java b/src/main/java/com/hbm/inventory/gui/GUIMachineBoiler.java index e16cb2f54..3a6ee8f68 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIMachineBoiler.java +++ b/src/main/java/com/hbm/inventory/gui/GUIMachineBoiler.java @@ -2,9 +2,9 @@ package com.hbm.inventory.gui; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.FluidTank; import com.hbm.inventory.container.ContainerMachineBoiler; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.RefStrings; import com.hbm.tileentity.machine.TileEntityMachineBoiler; @@ -58,7 +58,7 @@ public class GUIMachineBoiler extends GuiInfoContainer { " of boiling points reached" }; this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 36 + 16, 16, 16, guiLeft - 8, guiTop + 36 + 16, text1); - if(dud.tanks[1].getTankType().name().equals(FluidTypeTheOldOne.NONE.name())) { + if(dud.tanks[1].getTankType().name().equals(Fluids.NONE.name())) { String[] text2 = new String[] { "Error: Liquid can not be boiled!" }; this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 36 + 32, 16, 16, guiLeft - 8, guiTop + 36 + 16 + 32, text2); @@ -94,7 +94,7 @@ public class GUIMachineBoiler extends GuiInfoContainer { this.drawInfoPanel(guiLeft - 16, guiTop + 36, 16, 16, 2); this.drawInfoPanel(guiLeft - 16, guiTop + 36 + 16, 16, 16, 3); - if(dud.tanks[1].getTankType().name().equals(FluidTypeTheOldOne.NONE.name())) { + if(dud.tanks[1].getTankType().name().equals(Fluids.NONE.name())) { this.drawInfoPanel(guiLeft - 16, guiTop + 36 + 32, 16, 16, 6); } diff --git a/src/main/java/com/hbm/inventory/gui/GUIMachineBoilerElectric.java b/src/main/java/com/hbm/inventory/gui/GUIMachineBoilerElectric.java index 3862c6b5f..1bfb8a670 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIMachineBoilerElectric.java +++ b/src/main/java/com/hbm/inventory/gui/GUIMachineBoilerElectric.java @@ -2,9 +2,9 @@ package com.hbm.inventory.gui; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.FluidTank; import com.hbm.inventory.container.ContainerMachineBoilerElectric; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.RefStrings; import com.hbm.tileentity.machine.TileEntityMachineBoilerElectric; @@ -52,7 +52,7 @@ public class GUIMachineBoilerElectric extends GuiInfoContainer { " of boiling points reached" }; this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 36 + 16, 16, 16, guiLeft - 8, guiTop + 36 + 16, text1); - if(diFurnace.tanks[1].getTankType().name().equals(FluidTypeTheOldOne.NONE.name())) { + if(diFurnace.tanks[1].getTankType().name().equals(Fluids.NONE.name())) { String[] text2 = new String[] { "Error: Liquid can not be boiled!" }; this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 36 + 32, 16, 16, guiLeft - 8, guiTop + 36 + 16 + 32, text2); @@ -93,7 +93,7 @@ public class GUIMachineBoilerElectric extends GuiInfoContainer { this.drawInfoPanel(guiLeft - 16, guiTop + 36, 16, 16, 2); this.drawInfoPanel(guiLeft - 16, guiTop + 36 + 16, 16, 16, 3); - if(dud.tanks[1].getTankType().name().equals(FluidTypeTheOldOne.NONE.name())) { + if(dud.tanks[1].getTankType().name().equals(Fluids.NONE.name())) { this.drawInfoPanel(guiLeft - 16, guiTop + 36 + 32, 16, 16, 6); } diff --git a/src/main/java/com/hbm/inventory/gui/GUIMachineDiesel.java b/src/main/java/com/hbm/inventory/gui/GUIMachineDiesel.java index 767cbb2d7..f26f7f787 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIMachineDiesel.java +++ b/src/main/java/com/hbm/inventory/gui/GUIMachineDiesel.java @@ -7,7 +7,6 @@ import java.util.Map.Entry; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.FluidTank; import com.hbm.inventory.container.ContainerMachineDiesel; import com.hbm.inventory.fluid.FluidType; diff --git a/src/main/java/com/hbm/inventory/gui/GUIMachineLargeTurbine.java b/src/main/java/com/hbm/inventory/gui/GUIMachineLargeTurbine.java index 1d64663fe..b601c95fb 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIMachineLargeTurbine.java +++ b/src/main/java/com/hbm/inventory/gui/GUIMachineLargeTurbine.java @@ -2,9 +2,9 @@ package com.hbm.inventory.gui; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.FluidTank; import com.hbm.inventory.container.ContainerMachineLargeTurbine; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.RefStrings; import com.hbm.tileentity.machine.TileEntityMachineLargeTurbine; @@ -33,7 +33,7 @@ public class GUIMachineLargeTurbine extends GuiInfoContainer { turbine.tanks[0].renderTankInfo(this, mouseX, mouseY, guiLeft + 62, guiTop + 69 - 52, 16, 52); turbine.tanks[1].renderTankInfo(this, mouseX, mouseY, guiLeft + 134, guiTop + 69 - 52, 16, 52); - if(turbine.tanks[1].getTankType().name().equals(FluidTypeTheOldOne.NONE.name())) { + if(turbine.tanks[1].getTankType().name().equals(Fluids.NONE.name())) { String[] text2 = new String[] { "Error: Invalid fluid!" }; this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 36 + 32, 16, 16, guiLeft - 8, guiTop + 36 + 16 + 32, text2); @@ -56,23 +56,23 @@ public class GUIMachineLargeTurbine extends GuiInfoContainer { Minecraft.getMinecraft().getTextureManager().bindTexture(texture); drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); - if(turbine.tanks[0].getTankType().name().equals(FluidTypeTheOldOne.STEAM.name())) { + if(turbine.tanks[0].getTankType().name().equals(Fluids.STEAM.name())) { drawTexturedModalRect(guiLeft + 99, guiTop + 18, 183, 0, 14, 14); } - if(turbine.tanks[0].getTankType().name().equals(FluidTypeTheOldOne.HOTSTEAM.name())) { + if(turbine.tanks[0].getTankType().name().equals(Fluids.HOTSTEAM.name())) { drawTexturedModalRect(guiLeft + 99, guiTop + 18, 183, 14, 14, 14); } - if(turbine.tanks[0].getTankType().name().equals(FluidTypeTheOldOne.SUPERHOTSTEAM.name())) { + if(turbine.tanks[0].getTankType().name().equals(Fluids.SUPERHOTSTEAM.name())) { drawTexturedModalRect(guiLeft + 99, guiTop + 18, 183, 28, 14, 14); } - if(turbine.tanks[0].getTankType().name().equals(FluidTypeTheOldOne.ULTRAHOTSTEAM.name())) { + if(turbine.tanks[0].getTankType().name().equals(Fluids.ULTRAHOTSTEAM.name())) { drawTexturedModalRect(guiLeft + 99, guiTop + 18, 183, 42, 14, 14); } int i = (int)turbine.getPowerScaled(34); drawTexturedModalRect(guiLeft + 123, guiTop + 69 - i, 176, 34 - i, 7, i); - if(turbine.tanks[1].getTankType().name().equals(FluidTypeTheOldOne.NONE.name())) { + if(turbine.tanks[1].getTankType().name().equals(Fluids.NONE.name())) { this.drawInfoPanel(guiLeft - 16, guiTop + 36 + 32, 16, 16, 6); } diff --git a/src/main/java/com/hbm/inventory/gui/GUIMachineSelenium.java b/src/main/java/com/hbm/inventory/gui/GUIMachineSelenium.java index 7b405b6d7..497a88505 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIMachineSelenium.java +++ b/src/main/java/com/hbm/inventory/gui/GUIMachineSelenium.java @@ -6,7 +6,6 @@ import java.util.Map.Entry; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.FluidTank; import com.hbm.inventory.container.ContainerMachineSelenium; import com.hbm.inventory.fluid.FluidType; diff --git a/src/main/java/com/hbm/inventory/gui/GUIMachineTurbine.java b/src/main/java/com/hbm/inventory/gui/GUIMachineTurbine.java index 5e94626d0..f7aaf0a98 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIMachineTurbine.java +++ b/src/main/java/com/hbm/inventory/gui/GUIMachineTurbine.java @@ -2,9 +2,9 @@ package com.hbm.inventory.gui; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.FluidTank; import com.hbm.inventory.container.ContainerMachineTurbine; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.RefStrings; import com.hbm.tileentity.machine.TileEntityMachineTurbine; @@ -33,7 +33,7 @@ public class GUIMachineTurbine extends GuiInfoContainer { diFurnace.tanks[0].renderTankInfo(this, mouseX, mouseY, guiLeft + 62, guiTop + 69 - 52, 16, 52); diFurnace.tanks[1].renderTankInfo(this, mouseX, mouseY, guiLeft + 134, guiTop + 69 - 52, 16, 52); - if(diFurnace.tanks[1].getTankType().name().equals(FluidTypeTheOldOne.NONE.name())) { + if(diFurnace.tanks[1].getTankType().name().equals(Fluids.NONE.name())) { String[] text2 = new String[] { "Error: Invalid fluid!" }; this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 36 + 32, 16, 16, guiLeft - 8, guiTop + 36 + 16 + 32, text2); @@ -56,23 +56,23 @@ public class GUIMachineTurbine extends GuiInfoContainer { Minecraft.getMinecraft().getTextureManager().bindTexture(texture); drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); - if(diFurnace.tanks[0].getTankType().name().equals(FluidTypeTheOldOne.STEAM.name())) { + if(diFurnace.tanks[0].getTankType().name().equals(Fluids.STEAM.name())) { drawTexturedModalRect(guiLeft + 99, guiTop + 18, 183, 0, 14, 14); } - if(diFurnace.tanks[0].getTankType().name().equals(FluidTypeTheOldOne.HOTSTEAM.name())) { + if(diFurnace.tanks[0].getTankType().name().equals(Fluids.HOTSTEAM.name())) { drawTexturedModalRect(guiLeft + 99, guiTop + 18, 183, 14, 14, 14); } - if(diFurnace.tanks[0].getTankType().name().equals(FluidTypeTheOldOne.SUPERHOTSTEAM.name())) { + if(diFurnace.tanks[0].getTankType().name().equals(Fluids.SUPERHOTSTEAM.name())) { drawTexturedModalRect(guiLeft + 99, guiTop + 18, 183, 28, 14, 14); } - if(diFurnace.tanks[0].getTankType().name().equals(FluidTypeTheOldOne.ULTRAHOTSTEAM.name())) { + if(diFurnace.tanks[0].getTankType().name().equals(Fluids.ULTRAHOTSTEAM.name())) { drawTexturedModalRect(guiLeft + 99, guiTop + 18, 183, 42, 14, 14); } int i = (int)diFurnace.getPowerScaled(34); drawTexturedModalRect(guiLeft + 123, guiTop + 69 - i, 176, 34 - i, 7, i); - if(diFurnace.tanks[1].getTankType().name().equals(FluidTypeTheOldOne.NONE.name())) { + if(diFurnace.tanks[1].getTankType().name().equals(Fluids.NONE.name())) { this.drawInfoPanel(guiLeft - 16, guiTop + 36 + 32, 16, 16, 6); } diff --git a/src/main/java/com/hbm/inventory/gui/GUIRBMKConsole.java b/src/main/java/com/hbm/inventory/gui/GUIRBMKConsole.java index b863425a4..27fb510f9 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIRBMKConsole.java +++ b/src/main/java/com/hbm/inventory/gui/GUIRBMKConsole.java @@ -8,7 +8,7 @@ import org.apache.commons.lang3.math.NumberUtils; import org.lwjgl.input.Keyboard; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.RefStrings; import com.hbm.packet.NBTControlPacket; import com.hbm.packet.PacketDispatcher; @@ -276,13 +276,13 @@ public class GUIRBMKConsole extends GuiScreen { int fs = (int)Math.ceil((col.data.getInteger("steam")) * 8 / col.data.getDouble("maxSteam")); drawTexturedModalRect(guiLeft + x + 6, guiTop + y + size - fs - 1, 46, 191 - fs, 3, fs); - if(col.data.getShort("type") == FluidTypeTheOldOne.STEAM.ordinal()) + if(col.data.getShort("type") == Fluids.STEAM.ordinal()) drawTexturedModalRect(guiLeft + x + 4, guiTop + y + 1, 44, 183, 2, 2); - if(col.data.getShort("type") == FluidTypeTheOldOne.HOTSTEAM.ordinal()) + if(col.data.getShort("type") == Fluids.HOTSTEAM.ordinal()) drawTexturedModalRect(guiLeft + x + 4, guiTop + y + 3, 44, 185, 2, 2); - if(col.data.getShort("type") == FluidTypeTheOldOne.SUPERHOTSTEAM.ordinal()) + if(col.data.getShort("type") == Fluids.SUPERHOTSTEAM.ordinal()) drawTexturedModalRect(guiLeft + x + 4, guiTop + y + 5, 44, 187, 2, 2); - if(col.data.getShort("type") == FluidTypeTheOldOne.ULTRAHOTSTEAM.ordinal()) + if(col.data.getShort("type") == Fluids.ULTRAHOTSTEAM.ordinal()) drawTexturedModalRect(guiLeft + x + 4, guiTop + y + 7, 44, 189, 2, 2); break; diff --git a/src/main/java/com/hbm/inventory/gui/GUISILEX.java b/src/main/java/com/hbm/inventory/gui/GUISILEX.java index 8a068f448..ff2f7604c 100644 --- a/src/main/java/com/hbm/inventory/gui/GUISILEX.java +++ b/src/main/java/com/hbm/inventory/gui/GUISILEX.java @@ -2,8 +2,8 @@ package com.hbm.inventory.gui; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.container.ContainerSILEX; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.RefStrings; import com.hbm.packet.AuxButtonPacket; import com.hbm.packet.PacketDispatcher; @@ -67,7 +67,7 @@ public class GUISILEX extends GuiInfoContainer { if(silex.tank.getFill() > 0) { - if(silex.tank.getTankType() == FluidTypeTheOldOne.ACID || silex.fluidConversion.containsKey(silex.tank.getTankType())) { + if(silex.tank.getTankType() == Fluids.ACID || silex.fluidConversion.containsKey(silex.tank.getTankType())) { drawTexturedModalRect(guiLeft + 43, guiTop + 53, 176, 118, 54, 9); } else { drawTexturedModalRect(guiLeft + 43, guiTop + 53, 176, 109, 54, 9); @@ -81,6 +81,6 @@ public class GUISILEX extends GuiInfoContainer { drawTexturedModalRect(guiLeft + 26, guiTop + 124 - f, 176, 109 - f, 16, f); int i = silex.getFluidScaled(52); - drawTexturedModalRect(guiLeft + 44, guiTop + 54, 176, silex.tank.getTankType() == FluidTypeTheOldOne.ACID ? 43 : 50, i, 7); + drawTexturedModalRect(guiLeft + 44, guiTop + 54, 176, silex.tank.getTankType() == Fluids.ACID ? 43 : 50, i, 7); } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIScreenTemplateFolder.java b/src/main/java/com/hbm/inventory/gui/GUIScreenTemplateFolder.java index 08897ae48..2af357ead 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIScreenTemplateFolder.java +++ b/src/main/java/com/hbm/inventory/gui/GUIScreenTemplateFolder.java @@ -7,9 +7,9 @@ import java.util.List; import org.lwjgl.input.Keyboard; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.AssemblerRecipes; -import com.hbm.inventory.recipes.MachineRecipes; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemCassette; import com.hbm.items.machine.ItemChemistryTemplate; @@ -27,7 +27,6 @@ import net.minecraft.client.renderer.OpenGlHelper; import net.minecraft.client.renderer.RenderHelper; import net.minecraft.client.resources.I18n; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; @@ -66,9 +65,10 @@ public class GUIScreenTemplateFolder extends GuiScreen { allStacks.add(new ItemStack(ModItems.siren_track, 1, i)); } // Fluid IDs - for(int i = 1; i < FluidTypeTheOldOne.values().length; i++) { - if(!FluidTypeTheOldOne.values()[i].hasNoID()) { - allStacks.add(new ItemStack(ModItems.fluid_identifier, 1, i)); + FluidType[] fluids = Fluids.getInNiceOrder(); + for(int i = 1; i < fluids.length; i++) { + if(!fluids[i].hasNoID()) { + allStacks.add(new ItemStack(ModItems.fluid_identifier, 1, fluids[i].getID())); } } // Assembly Templates diff --git a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java index f5892d50f..52dbf6e03 100644 --- a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java @@ -20,13 +20,13 @@ import com.google.gson.JsonObject; import com.google.gson.stream.JsonWriter; import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.OreDictManager; import static com.hbm.inventory.OreDictManager.*; import com.hbm.inventory.RecipesCommon; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.RecipesCommon.OreDictStack; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemAssemblyTemplate; import com.hbm.main.MainRegistry; @@ -165,7 +165,7 @@ public class AssemblerRecipes { makeRecipe(new ComparableStack(ModItems.entanglement_kit, 1), new AStack[] {new ComparableStack(ModItems.coil_magnetized_tungsten, 6), new OreDictStack(PB.plate(), 16), new OreDictStack(OreDictManager.getReflector(), 4), new ComparableStack(ModItems.singularity_counter_resonant, 1), new ComparableStack(ModItems.singularity_super_heated, 1), new ComparableStack(ModItems.powder_power, 4), },200); makeRecipe(new ComparableStack(ModItems.dysfunctional_reactor, 1), new AStack[] {new OreDictStack(STEEL.plate(), 15), new OreDictStack(PB.ingot(), 5), new ComparableStack(ModItems.rod_quad_empty, 10), new OreDictStack("dyeBrown", 3), },200); makeRecipe(new ComparableStack(ModItems.missile_assembly, 1), new AStack[] {new ComparableStack(ModItems.hull_small_steel, 1), new ComparableStack(ModItems.hull_small_aluminium, 4), new OreDictStack(STEEL.ingot(), 2), new OreDictStack(TI.plate(), 6), new ComparableStack(ModItems.wire_aluminium, 6), new ComparableStack(ModItems.canister_kerosene, 3), new ComparableStack(ModItems.circuit_targeting_tier1, 1), },200); - makeRecipe(new ComparableStack(ModItems.missile_carrier, 1), new AStack[] {new ComparableStack(ModItems.fluid_barrel_full, 16, FluidTypeTheOldOne.KEROSENE.ordinal()), new ComparableStack(ModItems.thruster_medium, 4), new ComparableStack(ModItems.thruster_large, 1), new ComparableStack(ModItems.hull_big_titanium, 6), new ComparableStack(ModItems.hull_big_steel, 2), new ComparableStack(ModItems.hull_small_aluminium, 12), new OreDictStack(TI.plate(), 24), new ComparableStack(ModItems.plate_polymer, 128), new ComparableStack(ModBlocks.det_cord, 8), new ComparableStack(ModItems.circuit_targeting_tier3, 12), new ComparableStack(ModItems.circuit_targeting_tier4, 3), },4800); + makeRecipe(new ComparableStack(ModItems.missile_carrier, 1), new AStack[] {new ComparableStack(ModItems.fluid_barrel_full, 16, Fluids.KEROSENE.ordinal()), new ComparableStack(ModItems.thruster_medium, 4), new ComparableStack(ModItems.thruster_large, 1), new ComparableStack(ModItems.hull_big_titanium, 6), new ComparableStack(ModItems.hull_big_steel, 2), new ComparableStack(ModItems.hull_small_aluminium, 12), new OreDictStack(TI.plate(), 24), new ComparableStack(ModItems.plate_polymer, 128), new ComparableStack(ModBlocks.det_cord, 8), new ComparableStack(ModItems.circuit_targeting_tier3, 12), new ComparableStack(ModItems.circuit_targeting_tier4, 3), },4800); makeRecipe(new ComparableStack(ModItems.warhead_generic_small, 1), new AStack[] {new OreDictStack(TI.plate(), 5), new OreDictStack(STEEL.plate(), 3), new ComparableStack(Blocks.tnt, 2), },100); makeRecipe(new ComparableStack(ModItems.warhead_generic_medium, 1), new AStack[] {new OreDictStack(TI.plate(), 8), new OreDictStack(STEEL.plate(), 5), new ComparableStack(Blocks.tnt, 4), },150); makeRecipe(new ComparableStack(ModItems.warhead_generic_large, 1), new AStack[] {new OreDictStack(TI.plate(), 15), new OreDictStack(STEEL.plate(), 8), new ComparableStack(Blocks.tnt, 8), },200); @@ -191,15 +191,15 @@ public class AssemblerRecipes { makeRecipe(new ComparableStack(ModItems.thruster_medium, 1), new AStack[] {new ComparableStack(ModItems.thruster_small, 1), new OreDictStack(STEEL.plate(), 2), new ComparableStack(ModItems.hull_small_steel, 1), new ComparableStack(ModItems.hull_big_steel, 1), new ComparableStack(ModItems.wire_copper, 4), },150); makeRecipe(new ComparableStack(ModItems.thruster_large, 1), new AStack[] {new ComparableStack(ModItems.thruster_medium, 1), new OreDictStack(STEEL.plate(), 4), new ComparableStack(ModItems.hull_big_steel, 2), new ComparableStack(ModItems.wire_red_copper, 4), },200); makeRecipe(new ComparableStack(ModItems.thruster_nuclear, 1), new AStack[] {new ComparableStack(ModItems.thruster_large, 1), new ComparableStack(ModItems.tank_steel, 2), new ComparableStack(ModBlocks.deco_pipe_quad, 3), new ComparableStack(ModItems.board_copper, 6), new ComparableStack(ModItems.motor, 1), new ComparableStack(ModItems.circuit_targeting_tier4, 2), new ComparableStack(ModBlocks.reactor_research, 1), },600); - makeRecipe(new ComparableStack(ModItems.sat_base, 1), new AStack[] {new ComparableStack(ModItems.thruster_large, 1), new OreDictStack(STEEL.plate(), 6), new ComparableStack(ModItems.plate_desh, 4), new ComparableStack(ModItems.hull_big_titanium, 3), new ComparableStack(ModItems.fluid_barrel_full, 1, FluidTypeTheOldOne.KEROSENE.ordinal()), new ComparableStack(ModItems.photo_panel, 24), new ComparableStack(ModItems.board_copper, 12), new ComparableStack(ModItems.circuit_gold, 6), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },500); + makeRecipe(new ComparableStack(ModItems.sat_base, 1), new AStack[] {new ComparableStack(ModItems.thruster_large, 1), new OreDictStack(STEEL.plate(), 6), new ComparableStack(ModItems.plate_desh, 4), new ComparableStack(ModItems.hull_big_titanium, 3), new ComparableStack(ModItems.fluid_barrel_full, 1, Fluids.KEROSENE.ordinal()), new ComparableStack(ModItems.photo_panel, 24), new ComparableStack(ModItems.board_copper, 12), new ComparableStack(ModItems.circuit_gold, 6), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },500); makeRecipe(new ComparableStack(ModItems.sat_head_mapper, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 4), new OreDictStack(STEEL.plate(), 6), new ComparableStack(ModItems.hull_small_steel, 3), new ComparableStack(ModItems.plate_desh, 2), new ComparableStack(ModItems.circuit_gold, 2), new ComparableStack(ModItems.plate_polymer, 12), new OreDictStack(REDSTONE.dust(), 6), new ComparableStack(Items.diamond, 1), new ComparableStack(Blocks.glass_pane, 6), },400); makeRecipe(new ComparableStack(ModItems.sat_head_scanner, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 6), new OreDictStack(TI.plate(), 32), new ComparableStack(ModItems.plate_desh, 6), new ComparableStack(ModItems.magnetron, 6), new ComparableStack(ModItems.coil_advanced_torus, 2), new ComparableStack(ModItems.circuit_gold, 6), new ComparableStack(ModItems.plate_polymer, 6), new ComparableStack(Items.diamond, 1), },400); makeRecipe(new ComparableStack(ModItems.sat_head_radar, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 4), new OreDictStack(TI.plate(), 32), new ComparableStack(ModItems.magnetron, 12), new ComparableStack(ModItems.plate_polymer, 16), new ComparableStack(ModItems.wire_red_copper, 16), new ComparableStack(ModItems.coil_gold, 3), new ComparableStack(ModItems.circuit_gold, 5), new ComparableStack(Items.diamond, 1), },400); makeRecipe(new ComparableStack(ModItems.sat_head_laser, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 12), new OreDictStack(W.ingot(), 16), new OreDictStack(POLYMER.ingot(), 6), new ComparableStack(ModItems.plate_polymer, 16), new ComparableStack(ModItems.board_copper, 24), new ComparableStack(ModItems.circuit_targeting_tier5, 2), new OreDictStack(REDSTONE.dust(), 16), new ComparableStack(Items.diamond, 5), new ComparableStack(Blocks.glass_pane, 16), },450); makeRecipe(new ComparableStack(ModItems.sat_head_resonator, 1), new AStack[] {new OreDictStack(STEEL.ingot(), 32), new OreDictStack(POLYMER.ingot(), 48), new ComparableStack(ModItems.plate_polymer, 8), new ComparableStack(ModItems.crystal_xen, 1), new OreDictStack(STAR.ingot(), 7), new ComparableStack(ModItems.circuit_targeting_tier5, 6), new ComparableStack(ModItems.circuit_targeting_tier6, 2), },1000); - makeRecipe(new ComparableStack(ModItems.sat_foeq, 1), new AStack[] {new OreDictStack(STEEL.plate(), 8), new OreDictStack(TI.plate(), 12), new ComparableStack(ModItems.plate_desh, 8), new ComparableStack(ModItems.hull_big_titanium, 3), new ComparableStack(ModItems.fluid_barrel_full, 1, FluidTypeTheOldOne.HYDROGEN.ordinal()), new ComparableStack(ModItems.photo_panel, 16), new ComparableStack(ModItems.thruster_nuclear, 1), new ComparableStack(ModItems.ingot_uranium_fuel, 6), new ComparableStack(ModItems.circuit_targeting_tier5, 6), new ComparableStack(ModItems.magnetron, 3), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },1200); - makeRecipe(new ComparableStack(ModItems.sat_miner, 1), new AStack[] {new OreDictStack(BIGMT.plate(), 24), new ComparableStack(ModItems.plate_desh, 8), new ComparableStack(ModItems.motor, 2), new ComparableStack(ModItems.drill_titanium, 2), new ComparableStack(ModItems.circuit_targeting_tier4, 2), new ComparableStack(ModItems.fluid_barrel_full, 1, FluidTypeTheOldOne.KEROSENE.ordinal()), new ComparableStack(ModItems.thruster_small, 1), new ComparableStack(ModItems.photo_panel, 12), new ComparableStack(ModItems.centrifuge_element, 4), new ComparableStack(ModItems.magnetron, 3), new ComparableStack(ModItems.plate_polymer, 12), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },600); - makeRecipe(new ComparableStack(ModItems.sat_lunar_miner, 1), new AStack[] {new ComparableStack(ModItems.ingot_meteorite, 4), new ComparableStack(ModItems.plate_desh, 4), new ComparableStack(ModItems.motor_desh, 2), new ComparableStack(ModItems.drill_titanium, 2), new ComparableStack(ModItems.circuit_targeting_tier4, 2), new ComparableStack(ModItems.fluid_barrel_full, 1, FluidTypeTheOldOne.KEROSENE.ordinal()), new ComparableStack(ModItems.thruster_small, 1), new ComparableStack(ModItems.photo_panel, 12), new ComparableStack(ModItems.magnetron, 3), new ComparableStack(ModItems.plate_polymer, 12), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },600); + makeRecipe(new ComparableStack(ModItems.sat_foeq, 1), new AStack[] {new OreDictStack(STEEL.plate(), 8), new OreDictStack(TI.plate(), 12), new ComparableStack(ModItems.plate_desh, 8), new ComparableStack(ModItems.hull_big_titanium, 3), new ComparableStack(ModItems.fluid_barrel_full, 1, Fluids.HYDROGEN.ordinal()), new ComparableStack(ModItems.photo_panel, 16), new ComparableStack(ModItems.thruster_nuclear, 1), new ComparableStack(ModItems.ingot_uranium_fuel, 6), new ComparableStack(ModItems.circuit_targeting_tier5, 6), new ComparableStack(ModItems.magnetron, 3), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },1200); + makeRecipe(new ComparableStack(ModItems.sat_miner, 1), new AStack[] {new OreDictStack(BIGMT.plate(), 24), new ComparableStack(ModItems.plate_desh, 8), new ComparableStack(ModItems.motor, 2), new ComparableStack(ModItems.drill_titanium, 2), new ComparableStack(ModItems.circuit_targeting_tier4, 2), new ComparableStack(ModItems.fluid_barrel_full, 1, Fluids.KEROSENE.ordinal()), new ComparableStack(ModItems.thruster_small, 1), new ComparableStack(ModItems.photo_panel, 12), new ComparableStack(ModItems.centrifuge_element, 4), new ComparableStack(ModItems.magnetron, 3), new ComparableStack(ModItems.plate_polymer, 12), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },600); + makeRecipe(new ComparableStack(ModItems.sat_lunar_miner, 1), new AStack[] {new ComparableStack(ModItems.ingot_meteorite, 4), new ComparableStack(ModItems.plate_desh, 4), new ComparableStack(ModItems.motor_desh, 2), new ComparableStack(ModItems.drill_titanium, 2), new ComparableStack(ModItems.circuit_targeting_tier4, 2), new ComparableStack(ModItems.fluid_barrel_full, 1, Fluids.KEROSENE.ordinal()), new ComparableStack(ModItems.thruster_small, 1), new ComparableStack(ModItems.photo_panel, 12), new ComparableStack(ModItems.magnetron, 3), new ComparableStack(ModItems.plate_polymer, 12), new ComparableStack(ModItems.battery_lithium_cell_6, 1), },600); makeRecipe(new ComparableStack(ModItems.chopper_head, 1), new AStack[] {new ComparableStack(ModBlocks.reinforced_glass, 2), new ComparableStack(ModBlocks.fwatz_computer, 1), new OreDictStack(CMB.ingot(), 22), new ComparableStack(ModItems.wire_magnetized_tungsten, 4), },300); makeRecipe(new ComparableStack(ModItems.chopper_gun, 1), new AStack[] {new OreDictStack(CMB.plate(), 4), new OreDictStack(CMB.ingot(), 2), new ComparableStack(ModItems.wire_tungsten, 6), new ComparableStack(ModItems.coil_magnetized_tungsten, 1), new ComparableStack(ModItems.motor, 1), },150); makeRecipe(new ComparableStack(ModItems.chopper_torso, 1), new AStack[] {new OreDictStack(CMB.ingot(), 26), new ComparableStack(ModBlocks.fwatz_computer, 1), new ComparableStack(ModItems.wire_magnetized_tungsten, 4), new ComparableStack(ModItems.motor, 2), new ComparableStack(ModItems.chopper_blades, 2), },350); diff --git a/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java b/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java index 425c76909..0d0f68bc4 100644 --- a/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java @@ -61,6 +61,7 @@ public class CrystallizerRecipes { recipes.put("sand", new ItemStack(ModItems.ingot_fiberglass)); recipes.put(REDSTONE.block(), new ItemStack(ModItems.nugget_mercury)); recipes.put(CINNABAR.crystal(), new ItemStack(ModItems.nugget_mercury, 3)); + recipes.put(BORAX.dust(), new ItemStack(ModItems.powder_boron_tiny, 3)); recipes.put(COAL.block(), new ItemStack(ModBlocks.block_graphite)); recipes.put(new ComparableStack(Blocks.cobblestone), new ItemStack(ModBlocks.reinforced_stone)); diff --git a/src/main/java/com/hbm/inventory/recipes/GasCentrifugeRecipes.java b/src/main/java/com/hbm/inventory/recipes/GasCentrifugeRecipes.java index 39c477129..183aa6715 100644 --- a/src/main/java/com/hbm/inventory/recipes/GasCentrifugeRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/GasCentrifugeRecipes.java @@ -5,7 +5,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; @@ -92,7 +91,7 @@ public class GasCentrifugeRecipes { public static Map getGasCentrifugeRecipes() { Map recipes = new HashMap(); - for(int i = 0; i < FluidType.values().length; i++) { + for(int i = 0; i < Fluids.getAll().length; i++) { if(getGasCentOutputs(Fluids.fromID(i)) != null) { List out = getGasCentOutputs(Fluids.fromID(i)); ItemStack[] outputs = new ItemStack[4]; diff --git a/src/main/java/com/hbm/inventory/recipes/MachineRecipes.java b/src/main/java/com/hbm/inventory/recipes/MachineRecipes.java index 33784fad8..41ba799d6 100644 --- a/src/main/java/com/hbm/inventory/recipes/MachineRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/MachineRecipes.java @@ -1,14 +1,12 @@ package com.hbm.inventory.recipes; import java.util.ArrayList; -import java.util.Arrays; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.Spaghetti; import com.hbm.inventory.FluidContainer; import com.hbm.inventory.FluidContainerRegistry; @@ -1133,7 +1131,7 @@ public class MachineRecipes { FluidStack[] fluidIn = MachineRecipes.getFluidInputFromTempate(inputs[6]); for(int j = 0; j < fluidIn.length; j++) if(fluidIn[j] != null) - inputs[j] = ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, Arrays.asList(FluidTypeTheOldOne.values()).indexOf(fluidIn[j].type)), fluidIn[j].fill); + inputs[j] = ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, fluidIn[j].type.getID()), fluidIn[j].fill); ItemStack[] listOut = MachineRecipes.getChemOutputFromTempate(inputs[6]); for(int j = 0; j < listOut.length; j++) @@ -1143,7 +1141,7 @@ public class MachineRecipes { FluidStack[] fluidOut = MachineRecipes.getFluidOutputFromTempate(inputs[6]); for(int j = 0; j < fluidOut.length; j++) if(fluidOut[j] != null) - outputs[j] = ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, Arrays.asList(FluidTypeTheOldOne.values()).indexOf(fluidOut[j].type)), fluidOut[j].fill); + outputs[j] = ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, fluidOut[j].type.getID()), fluidOut[j].fill); for(int j = 0; j < inputs.length; j++) if(inputs[j] == null) @@ -1163,7 +1161,7 @@ public class MachineRecipes { Map recipes = new HashMap(); - for(int i = 0; i < FluidType.values().length; i++) { + for(int i = 0; i < Fluids.getAll().length; i++) { Object[] outs = getBoilerOutput(FluidType.getEnum(i)); if(outs != null) { @@ -1382,248 +1380,248 @@ public class MachineRecipes { switch(ItemChemistryTemplate.EnumChemistryTemplate.getEnum(stack.getItemDamage())) { case FP_HEAVYOIL: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.HEAVYOIL); + input[0] = new FluidStack(1000, Fluids.HEAVYOIL); break; case FP_SMEAR: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.SMEAR); + input[0] = new FluidStack(1000, Fluids.SMEAR); break; case FP_NAPHTHA: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.NAPHTHA); + input[0] = new FluidStack(1000, Fluids.NAPHTHA); break; case FP_LIGHTOIL: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.LIGHTOIL); + input[0] = new FluidStack(1000, Fluids.LIGHTOIL); break; case FR_REOIL: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.SMEAR); + input[0] = new FluidStack(1000, Fluids.SMEAR); break; case FR_PETROIL: - input[0] = new FluidStack(800, FluidTypeTheOldOne.RECLAIMED); - input[1] = new FluidStack(200, FluidTypeTheOldOne.LUBRICANT); + input[0] = new FluidStack(800, Fluids.RECLAIMED); + input[1] = new FluidStack(200, Fluids.LUBRICANT); break; case FC_BITUMEN: - input[0] = new FluidStack(1200, FluidTypeTheOldOne.BITUMEN); - input[1] = new FluidStack(2400, FluidTypeTheOldOne.STEAM); + input[0] = new FluidStack(1200, Fluids.BITUMEN); + input[1] = new FluidStack(2400, Fluids.STEAM); break; case FC_I_NAPHTHA: - input[0] = new FluidStack(1400, FluidTypeTheOldOne.SMEAR); - input[1] = new FluidStack(800, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(1400, Fluids.SMEAR); + input[1] = new FluidStack(800, Fluids.WATER); break; case FC_GAS_PETROLEUM: - input[0] = new FluidStack(1800, FluidTypeTheOldOne.GAS); - input[1] = new FluidStack(1200, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(1800, Fluids.GAS); + input[1] = new FluidStack(1200, Fluids.WATER); break; case FC_DIESEL_KEROSENE: - input[0] = new FluidStack(1200, FluidTypeTheOldOne.DIESEL); - input[1] = new FluidStack(2000, FluidTypeTheOldOne.STEAM); + input[0] = new FluidStack(1200, Fluids.DIESEL); + input[1] = new FluidStack(2000, Fluids.STEAM); break; case FC_KEROSENE_PETROLEUM: - input[0] = new FluidStack(1400, FluidTypeTheOldOne.KEROSENE); - input[1] = new FluidStack(2000, FluidTypeTheOldOne.STEAM); + input[0] = new FluidStack(1400, Fluids.KEROSENE); + input[1] = new FluidStack(2000, Fluids.STEAM); break; case CC_I: - input[0] = new FluidStack(1800, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(1800, Fluids.WATER); break; case CC_OIL: - input[0] = new FluidStack(1400, FluidTypeTheOldOne.STEAM); + input[0] = new FluidStack(1400, Fluids.STEAM); break; case CC_HEATING: - input[0] = new FluidStack(2000, FluidTypeTheOldOne.STEAM); + input[0] = new FluidStack(2000, Fluids.STEAM); break; case CC_HEAVY: - input[0] = new FluidStack(1400, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(1400, Fluids.WATER); break; case CC_NAPHTHA: - input[0] = new FluidStack(2400, FluidTypeTheOldOne.STEAM); + input[0] = new FluidStack(2400, Fluids.STEAM); break; case ASPHALT: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.BITUMEN); + input[0] = new FluidStack(1000, Fluids.BITUMEN); break; case CONCRETE: - input[0] = new FluidStack(2000, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(2000, Fluids.WATER); break; case CONCRETE_ASBESTOS: - input[0] = new FluidStack(2000, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(2000, Fluids.WATER); break; case COOLANT: - input[0] = new FluidStack(1800, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(1800, Fluids.WATER); break; case CRYOGEL: - input[0] = new FluidStack(1800, FluidTypeTheOldOne.COOLANT); + input[0] = new FluidStack(1800, Fluids.COOLANT); break; case DESH: if(GeneralConfig.enableBabyMode) { - input[0] = new FluidStack(200, FluidTypeTheOldOne.LIGHTOIL); + input[0] = new FluidStack(200, Fluids.LIGHTOIL); } else { - input[0] = new FluidStack(200, FluidTypeTheOldOne.MERCURY); - input[1] = new FluidStack(200, FluidTypeTheOldOne.LIGHTOIL); + input[0] = new FluidStack(200, Fluids.MERCURY); + input[1] = new FluidStack(200, Fluids.LIGHTOIL); } break; case PEROXIDE: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(1000, Fluids.WATER); break; case CIRCUIT_4: - input[0] = new FluidStack(400, FluidTypeTheOldOne.ACID); - input[1] = new FluidStack(200, FluidTypeTheOldOne.PETROLEUM); + input[0] = new FluidStack(400, Fluids.ACID); + input[1] = new FluidStack(200, Fluids.PETROLEUM); break; case CIRCUIT_5: - input[0] = new FluidStack(800, FluidTypeTheOldOne.ACID); - input[1] = new FluidStack(200, FluidTypeTheOldOne.MERCURY); + input[0] = new FluidStack(800, Fluids.ACID); + input[1] = new FluidStack(200, Fluids.MERCURY); break; case SF_OIL: - input[0] = new FluidStack(350, FluidTypeTheOldOne.OIL); + input[0] = new FluidStack(350, Fluids.OIL); break; case SF_HEAVYOIL: - input[0] = new FluidStack(250, FluidTypeTheOldOne.HEAVYOIL); + input[0] = new FluidStack(250, Fluids.HEAVYOIL); break; case SF_SMEAR: - input[0] = new FluidStack(200, FluidTypeTheOldOne.SMEAR); + input[0] = new FluidStack(200, Fluids.SMEAR); break; case SF_HEATINGOIL: - input[0] = new FluidStack(100, FluidTypeTheOldOne.HEATINGOIL); + input[0] = new FluidStack(100, Fluids.HEATINGOIL); break; case SF_RECLAIMED: - input[0] = new FluidStack(200, FluidTypeTheOldOne.RECLAIMED); + input[0] = new FluidStack(200, Fluids.RECLAIMED); break; case SF_PETROIL: - input[0] = new FluidStack(250, FluidTypeTheOldOne.PETROIL); + input[0] = new FluidStack(250, Fluids.PETROIL); break; case SF_LUBRICANT: - input[0] = new FluidStack(250, FluidTypeTheOldOne.LUBRICANT); + input[0] = new FluidStack(250, Fluids.LUBRICANT); break; case SF_NAPHTHA: - input[0] = new FluidStack(300, FluidTypeTheOldOne.NAPHTHA); + input[0] = new FluidStack(300, Fluids.NAPHTHA); break; case SF_DIESEL: - input[0] = new FluidStack(400, FluidTypeTheOldOne.DIESEL); + input[0] = new FluidStack(400, Fluids.DIESEL); break; case SF_LIGHTOIL: - input[0] = new FluidStack(450, FluidTypeTheOldOne.LIGHTOIL); + input[0] = new FluidStack(450, Fluids.LIGHTOIL); break; case SF_KEROSENE: - input[0] = new FluidStack(550, FluidTypeTheOldOne.KEROSENE); + input[0] = new FluidStack(550, Fluids.KEROSENE); break; case SF_GAS: - input[0] = new FluidStack(750, FluidTypeTheOldOne.GAS); + input[0] = new FluidStack(750, Fluids.GAS); break; case SF_PETROLEUM: - input[0] = new FluidStack(600, FluidTypeTheOldOne.PETROLEUM); + input[0] = new FluidStack(600, Fluids.PETROLEUM); break; case SF_BIOGAS: - input[0] = new FluidStack(3500, FluidTypeTheOldOne.BIOGAS); + input[0] = new FluidStack(3500, Fluids.BIOGAS); break; case SF_BIOFUEL: - input[0] = new FluidStack(1500, FluidTypeTheOldOne.BIOFUEL); + input[0] = new FluidStack(1500, Fluids.BIOFUEL); break; case POLYMER: - input[0] = new FluidStack(600, FluidTypeTheOldOne.PETROLEUM); + input[0] = new FluidStack(600, Fluids.PETROLEUM); break; case DEUTERIUM: - input[0] = new FluidStack(4000, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(4000, Fluids.WATER); break; case STEAM: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(1000, Fluids.WATER); break; case LPG: - input[0] = new FluidStack(2000, FluidTypeTheOldOne.PETROLEUM); + input[0] = new FluidStack(2000, Fluids.PETROLEUM); break; case BP_BIOFUEL: - input[0] = new FluidStack(2000, FluidTypeTheOldOne.BIOGAS); + input[0] = new FluidStack(2000, Fluids.BIOGAS); break; case YELLOWCAKE: - input[0] = new FluidStack(500, FluidTypeTheOldOne.ACID); + input[0] = new FluidStack(500, Fluids.ACID); break; case UF6: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(1000, Fluids.WATER); break; case PUF6: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(1000, Fluids.WATER); break; case SAS3: - input[0] = new FluidStack(2000, FluidTypeTheOldOne.ACID); + input[0] = new FluidStack(2000, Fluids.ACID); break; case NITAN: - input[0] = new FluidStack(600, FluidTypeTheOldOne.KEROSENE); - input[1] = new FluidStack(200, FluidTypeTheOldOne.MERCURY); + input[0] = new FluidStack(600, Fluids.KEROSENE); + input[1] = new FluidStack(200, Fluids.MERCURY); break; case OIL_SAND: - input[0] = new FluidStack(400, FluidTypeTheOldOne.BITUMEN); + input[0] = new FluidStack(400, Fluids.BITUMEN); break; case CORDITE: - input[0] = new FluidStack(200, FluidTypeTheOldOne.HEATINGOIL); + input[0] = new FluidStack(200, Fluids.HEATINGOIL); break; case KEVLAR: - input[0] = new FluidStack(100, FluidTypeTheOldOne.PETROLEUM); + input[0] = new FluidStack(100, Fluids.PETROLEUM); break; case SOLID_FUEL: - input[0] = new FluidStack(200, FluidTypeTheOldOne.PETROLEUM); + input[0] = new FluidStack(200, Fluids.PETROLEUM); break; case ELECTROLYSIS: - input[0] = new FluidStack(8000, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(8000, Fluids.WATER); break; case XENON: - input[0] = new FluidStack(0, FluidTypeTheOldOne.NONE); + input[0] = new FluidStack(0, Fluids.NONE); break; case XENON_OXY: - input[0] = new FluidStack(250, FluidTypeTheOldOne.OXYGEN); + input[0] = new FluidStack(250, Fluids.OXYGEN); break; case SATURN: - input[0] = new FluidStack(100, FluidTypeTheOldOne.ACID); - input[1] = new FluidStack(50, FluidTypeTheOldOne.MERCURY); + input[0] = new FluidStack(100, Fluids.ACID); + input[1] = new FluidStack(50, Fluids.MERCURY); break; case BALEFIRE: - input[0] = new FluidStack(6000, FluidTypeTheOldOne.KEROSENE); + input[0] = new FluidStack(6000, Fluids.KEROSENE); break; case SCHRABIDIC: - input[0] = new FluidStack(8000, FluidTypeTheOldOne.SAS3); - input[1] = new FluidStack(6000, FluidTypeTheOldOne.ACID); + input[0] = new FluidStack(8000, Fluids.SAS3); + input[1] = new FluidStack(6000, Fluids.ACID); break; case SCHRABIDATE: - input[0] = new FluidStack(250, FluidTypeTheOldOne.SCHRABIDIC); + input[0] = new FluidStack(250, Fluids.SCHRABIDIC); break; case COLTAN_CLEANING: - input[0] = new FluidStack(250, FluidTypeTheOldOne.ACID); - input[1] = new FluidStack(500, FluidTypeTheOldOne.HYDROGEN); + input[0] = new FluidStack(250, Fluids.ACID); + input[1] = new FluidStack(500, Fluids.HYDROGEN); break; case COLTAN_PAIN: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.GAS); - input[1] = new FluidStack(500, FluidTypeTheOldOne.OXYGEN); + input[0] = new FluidStack(1000, Fluids.GAS); + input[1] = new FluidStack(500, Fluids.OXYGEN); break; case COLTAN_CRYSTAL: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.PAIN); - input[1] = new FluidStack(500, FluidTypeTheOldOne.ACID); + input[0] = new FluidStack(1000, Fluids.PAIN); + input[1] = new FluidStack(500, Fluids.ACID); break; case VIT_LIQUID: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.WASTEFLUID); + input[0] = new FluidStack(1000, Fluids.WASTEFLUID); break; case VIT_GAS: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.WASTEGAS); + input[0] = new FluidStack(1000, Fluids.WASTEGAS); break; case TEL: - input[0] = new FluidStack(100, FluidTypeTheOldOne.PETROLEUM); - input[1] = new FluidStack(1000, FluidTypeTheOldOne.STEAM); + input[0] = new FluidStack(100, Fluids.PETROLEUM); + input[1] = new FluidStack(1000, Fluids.STEAM); break; case GASOLINE: - input[0] = new FluidStack(10000, FluidTypeTheOldOne.PETROIL); + input[0] = new FluidStack(10000, Fluids.PETROIL); break; case FRACKSOL: - input[0] = new FluidStack(100, FluidTypeTheOldOne.PETROLEUM); - input[1] = new FluidStack(1000, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(100, Fluids.PETROLEUM); + input[1] = new FluidStack(1000, Fluids.WATER); break; case OSMIRIDIUM_DEATH: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.ACID); + input[0] = new FluidStack(1000, Fluids.ACID); break; case METH: - input[0] = new FluidStack(400, FluidTypeTheOldOne.LUBRICANT); - input[1] = new FluidStack(400, FluidTypeTheOldOne.ACID); + input[0] = new FluidStack(400, Fluids.LUBRICANT); + input[1] = new FluidStack(400, Fluids.ACID); break; case CO2: - input[0] = new FluidStack(1000, FluidTypeTheOldOne.GAS); + input[0] = new FluidStack(1000, Fluids.GAS); break; case HEAVY_ELECTROLYSIS: - input[0] = new FluidStack(8000, FluidTypeTheOldOne.HEAVYWATER); + input[0] = new FluidStack(8000, Fluids.HEAVYWATER); break; case DUCRETE: - input[0] = new FluidStack(2000, FluidTypeTheOldOne.WATER); + input[0] = new FluidStack(2000, Fluids.WATER); default: break; } @@ -1809,152 +1807,152 @@ public class MachineRecipes { switch(ItemChemistryTemplate.EnumChemistryTemplate.getEnum(stack.getItemDamage())) { case FP_HEAVYOIL: - output[0] = new FluidStack(RefineryRecipes.heavy_frac_bitu * 10, FluidTypeTheOldOne.BITUMEN); - output[1] = new FluidStack(RefineryRecipes.heavy_frac_smear * 10, FluidTypeTheOldOne.SMEAR); + output[0] = new FluidStack(RefineryRecipes.heavy_frac_bitu * 10, Fluids.BITUMEN); + output[1] = new FluidStack(RefineryRecipes.heavy_frac_smear * 10, Fluids.SMEAR); break; case FP_SMEAR: - output[0] = new FluidStack(RefineryRecipes.smear_frac_heat * 10, FluidTypeTheOldOne.HEATINGOIL); - output[1] = new FluidStack(RefineryRecipes.smear_frac_lube * 10, FluidTypeTheOldOne.LUBRICANT); + output[0] = new FluidStack(RefineryRecipes.smear_frac_heat * 10, Fluids.HEATINGOIL); + output[1] = new FluidStack(RefineryRecipes.smear_frac_lube * 10, Fluids.LUBRICANT); break; case FP_NAPHTHA: - output[0] = new FluidStack(RefineryRecipes.napht_frac_heat * 10, FluidTypeTheOldOne.HEATINGOIL); - output[1] = new FluidStack(RefineryRecipes.napht_frac_diesel * 10, FluidTypeTheOldOne.DIESEL); + output[0] = new FluidStack(RefineryRecipes.napht_frac_heat * 10, Fluids.HEATINGOIL); + output[1] = new FluidStack(RefineryRecipes.napht_frac_diesel * 10, Fluids.DIESEL); break; case FP_LIGHTOIL: - output[0] = new FluidStack(RefineryRecipes.light_frac_diesel * 10, FluidTypeTheOldOne.DIESEL); - output[1] = new FluidStack(RefineryRecipes.light_frac_kero * 10, FluidTypeTheOldOne.KEROSENE); + output[0] = new FluidStack(RefineryRecipes.light_frac_diesel * 10, Fluids.DIESEL); + output[1] = new FluidStack(RefineryRecipes.light_frac_kero * 10, Fluids.KEROSENE); break; case FR_REOIL: - output[0] = new FluidStack(800, FluidTypeTheOldOne.RECLAIMED); + output[0] = new FluidStack(800, Fluids.RECLAIMED); break; case FR_PETROIL: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.PETROIL); + output[0] = new FluidStack(1000, Fluids.PETROIL); break; case FC_BITUMEN: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.OIL); - output[1] = new FluidStack(200, FluidTypeTheOldOne.PETROLEUM); + output[0] = new FluidStack(1000, Fluids.OIL); + output[1] = new FluidStack(200, Fluids.PETROLEUM); break; case FC_I_NAPHTHA: - output[0] = new FluidStack(800, FluidTypeTheOldOne.NAPHTHA); + output[0] = new FluidStack(800, Fluids.NAPHTHA); break; case FC_GAS_PETROLEUM: - output[0] = new FluidStack(800, FluidTypeTheOldOne.PETROLEUM); + output[0] = new FluidStack(800, Fluids.PETROLEUM); break; case FC_DIESEL_KEROSENE: - output[0] = new FluidStack(400, FluidTypeTheOldOne.KEROSENE); + output[0] = new FluidStack(400, Fluids.KEROSENE); break; case FC_KEROSENE_PETROLEUM: - output[0] = new FluidStack(800, FluidTypeTheOldOne.PETROLEUM); + output[0] = new FluidStack(800, Fluids.PETROLEUM); break; case CC_OIL: - output[0] = new FluidStack(2000, FluidTypeTheOldOne.OIL); + output[0] = new FluidStack(2000, Fluids.OIL); break; case CC_I: - output[0] = new FluidStack(1600, FluidTypeTheOldOne.SMEAR); + output[0] = new FluidStack(1600, Fluids.SMEAR); break; case CC_HEATING: - output[0] = new FluidStack(1800, FluidTypeTheOldOne.HEATINGOIL); + output[0] = new FluidStack(1800, Fluids.HEATINGOIL); break; case CC_HEAVY: - output[0] = new FluidStack(1800, FluidTypeTheOldOne.HEAVYOIL); + output[0] = new FluidStack(1800, Fluids.HEAVYOIL); break; case CC_NAPHTHA: - output[0] = new FluidStack(2000, FluidTypeTheOldOne.NAPHTHA); + output[0] = new FluidStack(2000, Fluids.NAPHTHA); break; case COOLANT: - output[0] = new FluidStack(2000, FluidTypeTheOldOne.COOLANT); + output[0] = new FluidStack(2000, Fluids.COOLANT); break; case CRYOGEL: - output[0] = new FluidStack(2000, FluidTypeTheOldOne.CRYOGEL); + output[0] = new FluidStack(2000, Fluids.CRYOGEL); break; case PEROXIDE: - output[0] = new FluidStack(800, FluidTypeTheOldOne.ACID); + output[0] = new FluidStack(800, Fluids.ACID); break; case DEUTERIUM: - output[0] = new FluidStack(500, FluidTypeTheOldOne.DEUTERIUM); + output[0] = new FluidStack(500, Fluids.DEUTERIUM); break; case STEAM: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.STEAM); + output[0] = new FluidStack(1000, Fluids.STEAM); break; case BP_BIOGAS: - output[0] = new FluidStack(4000, FluidTypeTheOldOne.BIOGAS); + output[0] = new FluidStack(4000, Fluids.BIOGAS); break; case BP_BIOFUEL: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.BIOFUEL); + output[0] = new FluidStack(1000, Fluids.BIOFUEL); break; case LPG: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.LPG); + output[0] = new FluidStack(1000, Fluids.LPG); break; case UF6: - output[0] = new FluidStack(1200, FluidTypeTheOldOne.UF6); + output[0] = new FluidStack(1200, Fluids.UF6); break; case PUF6: - output[0] = new FluidStack(900, FluidTypeTheOldOne.PUF6); + output[0] = new FluidStack(900, Fluids.PUF6); break; case SAS3: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.SAS3); + output[0] = new FluidStack(1000, Fluids.SAS3); break; case NITAN: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.NITAN); + output[0] = new FluidStack(1000, Fluids.NITAN); break; case OIL_SAND: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.BITUMEN); + output[0] = new FluidStack(1000, Fluids.BITUMEN); break; case DYN_SCHRAB: - output[0] = new FluidStack(50, FluidTypeTheOldOne.WATZ); + output[0] = new FluidStack(50, Fluids.WATZ); break; case DYN_EUPH: - output[0] = new FluidStack(100, FluidTypeTheOldOne.WATZ); + output[0] = new FluidStack(100, Fluids.WATZ); break; case DYN_DNT: - output[0] = new FluidStack(150, FluidTypeTheOldOne.WATZ); + output[0] = new FluidStack(150, Fluids.WATZ); break; case ELECTROLYSIS: - output[0] = new FluidStack(400, FluidTypeTheOldOne.HYDROGEN); - output[1] = new FluidStack(400, FluidTypeTheOldOne.OXYGEN); + output[0] = new FluidStack(400, Fluids.HYDROGEN); + output[1] = new FluidStack(400, Fluids.OXYGEN); break; case XENON: - output[0] = new FluidStack(50, FluidTypeTheOldOne.XENON); + output[0] = new FluidStack(50, Fluids.XENON); break; case XENON_OXY: - output[0] = new FluidStack(50, FluidTypeTheOldOne.XENON); + output[0] = new FluidStack(50, Fluids.XENON); break; case BALEFIRE: - output[0] = new FluidStack(8000, FluidTypeTheOldOne.BALEFIRE); + output[0] = new FluidStack(8000, Fluids.BALEFIRE); break; case SCHRABIDIC: - output[0] = new FluidStack(16000, FluidTypeTheOldOne.SCHRABIDIC); + output[0] = new FluidStack(16000, Fluids.SCHRABIDIC); break; case COLTAN_CLEANING: - output[0] = new FluidStack(500, FluidTypeTheOldOne.WATER); + output[0] = new FluidStack(500, Fluids.WATER); break; case COLTAN_PAIN: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.PAIN); + output[0] = new FluidStack(1000, Fluids.PAIN); break; case COLTAN_CRYSTAL: - output[0] = new FluidStack(250, FluidTypeTheOldOne.WATER); + output[0] = new FluidStack(250, Fluids.WATER); break; case GASOLINE: - output[0] = new FluidStack(12000, FluidTypeTheOldOne.GASOLINE); + output[0] = new FluidStack(12000, Fluids.GASOLINE); break; case FRACKSOL: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.FRACKSOL); + output[0] = new FluidStack(1000, Fluids.FRACKSOL); break; case HELIUM3: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.HELIUM3); + output[0] = new FluidStack(1000, Fluids.HELIUM3); break; case OSMIRIDIUM_DEATH: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.DEATH); + output[0] = new FluidStack(1000, Fluids.DEATH); break; case ETHANOL: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.ETHANOL); + output[0] = new FluidStack(1000, Fluids.ETHANOL); break; case CO2: - output[0] = new FluidStack(1000, FluidTypeTheOldOne.CARBONDIOXIDE); + output[0] = new FluidStack(1000, Fluids.CARBONDIOXIDE); break; case HEAVY_ELECTROLYSIS: - output[0] = new FluidStack(400, FluidTypeTheOldOne.DEUTERIUM); - output[1] = new FluidStack(400, FluidTypeTheOldOne.OXYGEN); + output[0] = new FluidStack(400, Fluids.DEUTERIUM); + output[1] = new FluidStack(400, Fluids.OXYGEN); break; default: break; @@ -1968,7 +1966,7 @@ public class MachineRecipes { for(FluidContainer con : FluidContainerRegistry.allContainers) { if(con != null) { - ItemStack fluid = new ItemStack(ModItems.fluid_icon, 1, Arrays.asList(FluidTypeTheOldOne.values()).indexOf(con.type)); + ItemStack fluid = new ItemStack(ModItems.fluid_icon, 1, con.type.getID()); fluid.stackTagCompound = new NBTTagCompound(); fluid.stackTagCompound.setInteger("fill", con.content); map.put(fluid, con.fullContainer); diff --git a/src/main/java/com/hbm/inventory/recipes/RefineryRecipes.java b/src/main/java/com/hbm/inventory/recipes/RefineryRecipes.java index ba32a3e00..5c242f7a6 100644 --- a/src/main/java/com/hbm/inventory/recipes/RefineryRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/RefineryRecipes.java @@ -3,7 +3,6 @@ package com.hbm.inventory.recipes; import java.util.HashMap; import java.util.Map; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; @@ -59,18 +58,18 @@ public class RefineryRecipes { } public static void registerFractions() { - fractions.put(FluidTypeTheOldOne.HEAVYOIL, new Quartet(FluidTypeTheOldOne.BITUMEN, FluidTypeTheOldOne.SMEAR, heavy_frac_bitu, heavy_frac_smear)); - fractions.put(FluidTypeTheOldOne.SMEAR, new Quartet(FluidTypeTheOldOne.HEATINGOIL, FluidTypeTheOldOne.LUBRICANT, smear_frac_heat, smear_frac_lube)); - fractions.put(FluidTypeTheOldOne.NAPHTHA, new Quartet(FluidTypeTheOldOne.HEATINGOIL, FluidTypeTheOldOne.DIESEL, napht_frac_heat, napht_frac_diesel)); - fractions.put(FluidTypeTheOldOne.LIGHTOIL, new Quartet(FluidTypeTheOldOne.DIESEL, FluidTypeTheOldOne.KEROSENE, light_frac_diesel, light_frac_kero)); + fractions.put(Fluids.HEAVYOIL, new Quartet(Fluids.BITUMEN, Fluids.SMEAR, heavy_frac_bitu, heavy_frac_smear)); + fractions.put(Fluids.SMEAR, new Quartet(Fluids.HEATINGOIL, Fluids.LUBRICANT, smear_frac_heat, smear_frac_lube)); + fractions.put(Fluids.NAPHTHA, new Quartet(Fluids.HEATINGOIL, Fluids.DIESEL, napht_frac_heat, napht_frac_diesel)); + fractions.put(Fluids.LIGHTOIL, new Quartet(Fluids.DIESEL, Fluids.KEROSENE, light_frac_diesel, light_frac_kero)); } public static void registerCracking() { - cracking.put(FluidTypeTheOldOne.BITUMEN, new Quartet(FluidTypeTheOldOne.OIL, FluidTypeTheOldOne.PETROLEUM, bitumen_crack_oil, bitumen_crack_petro)); - cracking.put(FluidTypeTheOldOne.SMEAR, new Quartet(FluidTypeTheOldOne.NAPHTHA, FluidTypeTheOldOne.PETROLEUM, smear_crack_napht, smear_crack_petro)); - cracking.put(FluidTypeTheOldOne.GAS, new Quartet(FluidTypeTheOldOne.PETROLEUM, FluidTypeTheOldOne.NONE, gas_crack_petro, 0)); - cracking.put(FluidTypeTheOldOne.DIESEL, new Quartet(FluidTypeTheOldOne.KEROSENE, FluidTypeTheOldOne.PETROLEUM, diesel_crack_kero, diesel_crack_petro)); - cracking.put(FluidTypeTheOldOne.KEROSENE, new Quartet(FluidTypeTheOldOne.PETROLEUM, FluidTypeTheOldOne.NONE, kero_crack_petro, 0)); + cracking.put(Fluids.BITUMEN, new Quartet(Fluids.OIL, Fluids.PETROLEUM, bitumen_crack_oil, bitumen_crack_petro)); + cracking.put(Fluids.SMEAR, new Quartet(Fluids.NAPHTHA, Fluids.PETROLEUM, smear_crack_napht, smear_crack_petro)); + cracking.put(Fluids.GAS, new Quartet(Fluids.PETROLEUM, Fluids.NONE, gas_crack_petro, 0)); + cracking.put(Fluids.DIESEL, new Quartet(Fluids.KEROSENE, Fluids.PETROLEUM, diesel_crack_kero, diesel_crack_petro)); + cracking.put(Fluids.KEROSENE, new Quartet(Fluids.PETROLEUM, Fluids.NONE, kero_crack_petro, 0)); } public static Quartet getFractions(FluidType oil) { diff --git a/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java b/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java index 4e8aeaab6..30f30e5d1 100644 --- a/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java @@ -6,8 +6,8 @@ import java.util.List; import java.util.Map; import java.util.Map.Entry; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.RecipesCommon.ComparableStack; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.items.special.ItemWasteLong; import com.hbm.items.special.ItemWasteShort; @@ -26,7 +26,7 @@ public class SILEXRecipes { public static void register() { - itemTranslation.put(new ComparableStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.UF6.ordinal()), new ComparableStack(ModItems.ingot_uranium)); + itemTranslation.put(new ComparableStack(ModItems.fluid_icon, 1, Fluids.UF6.getID()), new ComparableStack(ModItems.ingot_uranium)); dictTranslation.put("dustUranium", "ingotUranium"); recipes.put("ingotUranium", new SILEXRecipe(900, 100) .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_u235), 1)) @@ -43,7 +43,7 @@ public class SILEXRecipes { .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_am242), 6)) ); - itemTranslation.put(new ComparableStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.PUF6.ordinal()), new ComparableStack(ModItems.ingot_plutonium)); + itemTranslation.put(new ComparableStack(ModItems.fluid_icon, 1, Fluids.PUF6.getID()), new ComparableStack(ModItems.ingot_plutonium)); dictTranslation.put("dustPlutonium", "ingotPlutonium"); recipes.put("ingotPlutonium", new SILEXRecipe(900, 100) .addOut(new WeightedRandomObject(new ItemStack(ModItems.nugget_pu238), 3)) @@ -76,7 +76,7 @@ public class SILEXRecipes { .addOut(new WeightedRandomObject(new ItemStack(ModItems.powder_cobalt), 3)) ); - recipes.put(new ComparableStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.DEATH.ordinal()), new SILEXRecipe(1000, 1000) + recipes.put(new ComparableStack(ModItems.fluid_icon, 1, Fluids.DEATH.getID()), new SILEXRecipe(1000, 1000) .addOut(new WeightedRandomObject(new ItemStack(ModItems.powder_impure_osmiridium), 1)) ); 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 cc04c4988..c127daa1e 100644 --- a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java @@ -7,7 +7,6 @@ import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; import com.hbm.inventory.OreDictManager; import static com.hbm.inventory.OreDictManager.*; -import com.hbm.inventory.RecipesCommon; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.RecipesCommon.OreDictStack; @@ -50,6 +49,7 @@ public class AnvilRecipes { smithingRecipes.add(new AnvilSmithingRecipe(1, new ItemStack(ModBlocks.anvil_schrabidate, 1), new ComparableStack(anvil), new OreDictStack(SBD.ingot(), 10))); smithingRecipes.add(new AnvilSmithingRecipe(1, new ItemStack(ModBlocks.anvil_starmetal, 1), new ComparableStack(anvil), new OreDictStack(STAR.ingot(), 10))); smithingRecipes.add(new AnvilSmithingRecipe(1, new ItemStack(ModBlocks.anvil_steel, 1), new ComparableStack(anvil), new OreDictStack(STEEL.ingot(), 10))); + smithingRecipes.add(new AnvilSmithingRecipe(1, new ItemStack(ModBlocks.anvil_osmiridium, 1), new ComparableStack(anvil), new OreDictStack(OSMIRIDIUM.ingot(), 10))); } for(int i = 0; i < 9; i++) diff --git a/src/main/java/com/hbm/items/machine/ItemFluidDuct.java b/src/main/java/com/hbm/items/machine/ItemFluidDuct.java index 43c496ba9..2a746bee4 100644 --- a/src/main/java/com/hbm/items/machine/ItemFluidDuct.java +++ b/src/main/java/com/hbm/items/machine/ItemFluidDuct.java @@ -3,7 +3,8 @@ package com.hbm.items.machine; import java.util.List; import com.hbm.blocks.ModBlocks; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.tileentity.conductor.TileEntityFluidDuct; import cpw.mods.fml.relauncher.Side; @@ -19,144 +20,116 @@ import net.minecraft.util.StatCollector; import net.minecraft.world.World; public class ItemFluidDuct extends Item { - + IIcon overlayIcon; - public ItemFluidDuct() - { - this.setHasSubtypes(true); - this.setMaxDamage(0); - } + public ItemFluidDuct() { + this.setHasSubtypes(true); + this.setMaxDamage(0); + } - @Override + @Override @SideOnly(Side.CLIENT) - public void getSubItems(Item item, CreativeTabs tabs, List list) - { - for (int i = 1; i < FluidTypeTheOldOne.values().length; ++i) - { - list.add(new ItemStack(item, 1, i)); - } - } + public void getSubItems(Item item, CreativeTabs tabs, List list) { + FluidType[] order = Fluids.getInNiceOrder(); + for(int i = 1; i < order.length; ++i) { + if(!order[i].hasNoID()) { + list.add(new ItemStack(item, 1, order[i].getID())); + } + } + } - /*public void onCreated(ItemStack stack, World world, EntityPlayer player) { - - if(stack != null) - player.inventory.addItemStackToInventory(new ItemStack(ModItems.fluid_identifier, 1, stack.getItemDamage())); - }*/ + public String getItemStackDisplayName(ItemStack stack) { + String s = ("" + StatCollector.translateToLocal(this.getUnlocalizedName() + ".name")).trim(); + String s1 = ("" + StatCollector.translateToLocal(Fluids.fromID(stack.getItemDamage()).getUnlocalizedName())).trim(); - public String getItemStackDisplayName(ItemStack stack) - { - String s = ("" + StatCollector.translateToLocal(this.getUnlocalizedName() + ".name")).trim(); - String s1 = ("" + StatCollector.translateToLocal(FluidTypeTheOldOne.getEnum(stack.getItemDamage()).getUnlocalizedName())).trim(); + if(s1 != null) { + s = s + " " + s1; + } - if (s1 != null) - { - s = s + " " + s1; - } + return s; + } - return s; - } - - @Override + @Override @SideOnly(Side.CLIENT) - public boolean requiresMultipleRenderPasses() - { - return true; - } + public boolean requiresMultipleRenderPasses() { + return true; + } - @Override + @Override @SideOnly(Side.CLIENT) - public void registerIcons(IIconRegister p_94581_1_) - { - super.registerIcons(p_94581_1_); - this.overlayIcon = p_94581_1_.registerIcon("hbm:duct_overlay"); - } - - @Override + public void registerIcons(IIconRegister p_94581_1_) { + super.registerIcons(p_94581_1_); + this.overlayIcon = p_94581_1_.registerIcon("hbm:duct_overlay"); + } + + @Override @SideOnly(Side.CLIENT) - public IIcon getIconFromDamageForRenderPass(int p_77618_1_, int p_77618_2_) - { - return p_77618_2_ == 1 ? this.overlayIcon : super.getIconFromDamageForRenderPass(p_77618_1_, p_77618_2_); - } + public IIcon getIconFromDamageForRenderPass(int p_77618_1_, int p_77618_2_) { + return p_77618_2_ == 1 ? this.overlayIcon : super.getIconFromDamageForRenderPass(p_77618_1_, p_77618_2_); + } - @Override + @Override @SideOnly(Side.CLIENT) - public int getColorFromItemStack(ItemStack stack, int p_82790_2_) - { - if (p_82790_2_ == 0) - { - return 16777215; - } - else - { - int j = FluidTypeTheOldOne.getEnum(stack.getItemDamage()).getMSAColor(); + public int getColorFromItemStack(ItemStack stack, int p_82790_2_) { + if(p_82790_2_ == 0) { + return 16777215; + } else { + int j = Fluids.fromID(stack.getItemDamage()).getColor(); - if (j < 0) - { - j = 16777215; - } + if(j < 0) { + j = 16777215; + } - return j; - } - } - - public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int i, float f0, float f1, float f2) - { - if (world.getBlock(x, y, z) != Blocks.snow_layer) - { - if (i == 0) - { - --y; - } + return j; + } + } - if (i == 1) - { - ++y; - } + public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int i, float f0, float f1, float f2) { + if(world.getBlock(x, y, z) != Blocks.snow_layer) { + if(i == 0) { + --y; + } - if (i == 2) - { - --z; - } + if(i == 1) { + ++y; + } - if (i == 3) - { - ++z; - } + if(i == 2) { + --z; + } - if (i == 4) - { - --x; - } + if(i == 3) { + ++z; + } - if (i == 5) - { - ++x; - } + if(i == 4) { + --x; + } - if (!world.isAirBlock(x, y, z)) - { - return false; - } - } + if(i == 5) { + ++x; + } - if (!player.canPlayerEdit(x, y, z, i, stack)) - { - return false; - } - else - { - --stack.stackSize; - world.setBlock(x, y, z, ModBlocks.fluid_duct); - - if(world.getTileEntity(x, y, z) instanceof TileEntityFluidDuct) { - ((TileEntityFluidDuct)world.getTileEntity(x, y, z)).type = FluidTypeTheOldOne.getEnum(stack.getItemDamage()); - } - - world.playSoundEffect(x, y, z, "hbm:block.pipePlaced", 1.0F, 0.65F + world.rand.nextFloat() * 0.2F); + if(!world.isAirBlock(x, y, z)) { + return false; + } + } - return true; - } - } + if(!player.canPlayerEdit(x, y, z, i, stack)) { + return false; + } else { + --stack.stackSize; + world.setBlock(x, y, z, ModBlocks.fluid_duct); + + if(world.getTileEntity(x, y, z) instanceof TileEntityFluidDuct) { + ((TileEntityFluidDuct) world.getTileEntity(x, y, z)).type = Fluids.fromID(stack.getItemDamage()); + } + + world.playSoundEffect(x, y, z, "hbm:block.pipePlaced", 1.0F, 0.65F + world.rand.nextFloat() * 0.2F); + + return true; + } + } } diff --git a/src/main/java/com/hbm/items/machine/ItemFluidIcon.java b/src/main/java/com/hbm/items/machine/ItemFluidIcon.java index c56817d07..40c7553b7 100644 --- a/src/main/java/com/hbm/items/machine/ItemFluidIcon.java +++ b/src/main/java/com/hbm/items/machine/ItemFluidIcon.java @@ -1,8 +1,8 @@ package com.hbm.items.machine; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import cpw.mods.fml.relauncher.Side; @@ -16,68 +16,63 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.IIcon; public class ItemFluidIcon extends Item { - + IIcon overlayIcon; - public ItemFluidIcon() - { - this.setHasSubtypes(true); - this.setMaxDamage(0); - } + public ItemFluidIcon() { + this.setHasSubtypes(true); + this.setMaxDamage(0); + } - @Override - @SideOnly(Side.CLIENT) - public void getSubItems(Item item, CreativeTabs tabs, List list) - { - for (int i = 0; i < FluidTypeTheOldOne.values().length; ++i) - { - list.add(new ItemStack(item, 1, i)); - } - } - @Override - public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) - { + @SideOnly(Side.CLIENT) + public void getSubItems(Item item, CreativeTabs tabs, List list) { + FluidType[] order = Fluids.getInNiceOrder(); + for(int i = 1; i < order.length; ++i) { + list.add(new ItemStack(item, 1, order[i].getID())); + } + } + + @Override + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) { if(stack.hasTagCompound()) if(stack.getTagCompound().getInteger("fill") > 0) list.add(stack.getTagCompound().getInteger("fill") + "mB"); } - + public static ItemStack addQuantity(ItemStack stack, int i) { - + if(!stack.hasTagCompound()) stack.stackTagCompound = new NBTTagCompound(); - + stack.getTagCompound().setInteger("fill", i); - + return stack; } - + public static ItemStack make(FluidType fluid, int i) { return addQuantity(new ItemStack(ModItems.fluid_icon, 1, fluid.ordinal()), i); } - + public static int getQuantity(ItemStack stack) { - + if(!stack.hasTagCompound()) return 0; - + return stack.getTagCompound().getInteger("fill"); } - public String getItemStackDisplayName(ItemStack stack) - { - String s = (I18n.format(FluidTypeTheOldOne.getEnum(stack.getItemDamage()).getUnlocalizedName())).trim(); + public String getItemStackDisplayName(ItemStack stack) { + String s = (I18n.format(Fluids.fromID(stack.getItemDamage()).getUnlocalizedName())).trim(); - if (s != null) - { - return s; - } + if(s != null) { + return s; + } - return "Unknown"; - } + return "Unknown"; + } - /* + /* * @Override * * @SideOnly(Side.CLIENT) public boolean requiresMultipleRenderPasses() { @@ -101,9 +96,9 @@ public class ItemFluidIcon extends Item { @Override @SideOnly(Side.CLIENT) public int getColorFromItemStack(ItemStack stack, int p_82790_2_) { - int j = FluidTypeTheOldOne.getEnum(stack.getItemDamage()).getMSAColor(); + int j = Fluids.fromID(stack.getItemDamage()).getColor(); - if (j < 0) { + if(j < 0) { j = 16777215; } diff --git a/src/main/java/com/hbm/items/machine/ItemFluidIdentifier.java b/src/main/java/com/hbm/items/machine/ItemFluidIdentifier.java index e928f451b..dcb299246 100644 --- a/src/main/java/com/hbm/items/machine/ItemFluidIdentifier.java +++ b/src/main/java/com/hbm/items/machine/ItemFluidIdentifier.java @@ -4,7 +4,6 @@ import java.util.Arrays; import java.util.List; import java.util.Objects; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidDuct; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; @@ -35,12 +34,6 @@ public class ItemFluidIdentifier extends Item { this.setMaxDamage(0); } - /* - * @Override public String getUnlocalizedName(ItemStack stack) { int i = - * stack.getItemDamage(); return super.getUnlocalizedName() + "." + - * FluidType.getEnum(i).getName(); } - */ - public ItemStack getContainerItem(ItemStack stack) { return stack.copy(); } @@ -56,10 +49,10 @@ public class ItemFluidIdentifier extends Item { @Override @SideOnly(Side.CLIENT) public void getSubItems(Item item, CreativeTabs tabs, List list) { - - for(int i = 0; i < FluidTypeTheOldOne.values().length; ++i) { - if(!FluidTypeTheOldOne.values()[i].hasNoID()) { - list.add(new ItemStack(item, 1, i)); + FluidType[] order = Fluids.getInNiceOrder(); + for(int i = 1; i < order.length; ++i) { + if(!order[i].hasNoID()) { + list.add(new ItemStack(item, 1, order[i].getID())); } } } diff --git a/src/main/java/com/hbm/items/machine/ItemFluidTank.java b/src/main/java/com/hbm/items/machine/ItemFluidTank.java index e30794774..437554375 100644 --- a/src/main/java/com/hbm/items/machine/ItemFluidTank.java +++ b/src/main/java/com/hbm/items/machine/ItemFluidTank.java @@ -1,8 +1,8 @@ package com.hbm.items.machine; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -26,27 +26,29 @@ public class ItemFluidTank extends Item { @SideOnly(Side.CLIENT) public void getSubItems(Item item, CreativeTabs tabs, List list) { - for(int i = 1; i < FluidTypeTheOldOne.values().length; i++) { - - FluidType type = FluidTypeTheOldOne.values()[i]; + FluidType[] order = Fluids.getInNiceOrder(); + for(int i = 1; i < order.length; ++i) { + FluidType type = order[i]; if(type.hasNoContainer()) continue; + int id = type.getID(); + if(type.needsLeadContainer()) { if(this == ModItems.fluid_tank_lead_full) { - list.add(new ItemStack(item, 1, i)); + list.add(new ItemStack(item, 1, id)); } } else { - list.add(new ItemStack(item, 1, i)); + list.add(new ItemStack(item, 1, id)); } } } public String getItemStackDisplayName(ItemStack stack) { String s = ("" + StatCollector.translateToLocal(this.getUnlocalizedName() + ".name")).trim(); - String s1 = ("" + StatCollector.translateToLocal(FluidTypeTheOldOne.getEnum(stack.getItemDamage()).getUnlocalizedName())).trim(); + String s1 = ("" + StatCollector.translateToLocal(Fluids.fromID(stack.getItemDamage()).getUnlocalizedName())).trim(); if(s1 != null) { s = s + " " + s1; @@ -86,7 +88,7 @@ public class ItemFluidTank extends Item { if(p_82790_2_ == 0) { return 16777215; } else { - int j = FluidTypeTheOldOne.getEnum(stack.getItemDamage()).getMSAColor(); + int j = Fluids.fromID(stack.getItemDamage()).getColor(); if(j < 0) { j = 16777215; diff --git a/src/main/java/com/hbm/items/machine/ItemRTGPellet.java b/src/main/java/com/hbm/items/machine/ItemRTGPellet.java index 03dc0d041..1cbdb729e 100644 --- a/src/main/java/com/hbm/items/machine/ItemRTGPellet.java +++ b/src/main/java/com/hbm/items/machine/ItemRTGPellet.java @@ -1,16 +1,14 @@ package com.hbm.items.machine; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import javax.annotation.CheckForNull; -import javax.annotation.Nonnull; -import com.google.common.collect.ImmutableSet; -import com.hbm.config.MachineConfig; +import com.hbm.config.VersatileConfig; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemRTGPelletDepleted.DepletedRTGMaterial; -import com.hbm.tileentity.IRadioisotopeFuel; import com.hbm.util.BobMathUtil; import com.hbm.util.I18nUtil; @@ -82,7 +80,7 @@ public class ItemRTGPellet extends Item { } public static ItemStack handleDecay(ItemStack stack, ItemRTGPellet instance) { - if (instance.getDoesDecay() && MachineConfig.doRTGsDecay) { + if (instance.getDoesDecay() && VersatileConfig.rtgDecay()) { if (instance.getLifespan(stack) <= 0) return instance.getDecayItem(); else @@ -152,7 +150,7 @@ public class ItemRTGPellet extends Item { super.addInformation(stack, player, list, bool); list.add(I18nUtil.resolveKey(this.getUnlocalizedName().concat(".desc"))); final ItemRTGPellet instance = (ItemRTGPellet) stack.getItem(); - list.add(I18nUtil.resolveKey("desc.item.rtgHeat", instance.getDoesDecay() && MachineConfig.scaleRTGPower ? getScaledPower(instance, stack) : instance.getHeat())); + list.add(I18nUtil.resolveKey("desc.item.rtgHeat", instance.getDoesDecay() && VersatileConfig.scaleRTGPower() ? getScaledPower(instance, stack) : instance.getHeat())); if (instance.getDoesDecay()) { list.add(I18nUtil.resolveKey("desc.item.rtgDecay", I18nUtil.resolveKey(instance.getDecayItem().getUnlocalizedName() + ".name"), instance.getDecayItem().stackSize)); list.add(BobMathUtil.toPercentage(instance.getLifespan(stack), instance.getMaxLifespan())); @@ -170,4 +168,16 @@ public class ItemRTGPellet extends Item { public String getData() { return String.format("%s (%s HE/t) %s", I18nUtil.resolveKey(getUnlocalizedName().concat(".name")), getHeat(), (getDoesDecay() ? " (decays)" : "")); } + + public static HashMap getRecipeMap() { + HashMap map = new HashMap(); + + for(ItemRTGPellet pellet : pelletList) { + if(pellet.decayItem != null) { + map.put(new ItemStack(pellet), pellet.decayItem.copy()); + } + } + + return map; + } } diff --git a/src/main/java/com/hbm/items/special/ItemStarterKit.java b/src/main/java/com/hbm/items/special/ItemStarterKit.java index 95cec1a1d..8e4b15238 100644 --- a/src/main/java/com/hbm/items/special/ItemStarterKit.java +++ b/src/main/java/com/hbm/items/special/ItemStarterKit.java @@ -3,7 +3,7 @@ package com.hbm.items.special; import java.util.List; import com.hbm.blocks.ModBlocks; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemBattery; import com.hbm.items.machine.ItemBreedingRod.BreedingRodType; @@ -24,41 +24,40 @@ import net.minecraft.world.World; public class ItemStarterKit extends Item { - public ItemStarterKit() - { - this.maxStackSize = 1; - } - - private void giveHaz(World world, EntityPlayer p, int tier) { - - for(int i = 0; i < 4; i++) { - - if(p.inventory.armorInventory[i] != null && !world.isRemote) { - world.spawnEntityInWorld(new EntityItem(world, p.posX, p.posY + p.eyeHeight, p.posZ, p.inventory.armorInventory[i])); - } - } + public ItemStarterKit() { + this.maxStackSize = 1; + } - switch(tier) { - case 0: - p.inventory.armorInventory[3] = new ItemStack(ModItems.hazmat_helmet); - p.inventory.armorInventory[2] = new ItemStack(ModItems.hazmat_plate); - p.inventory.armorInventory[1] = new ItemStack(ModItems.hazmat_legs); - p.inventory.armorInventory[0] = new ItemStack(ModItems.hazmat_boots); - break; - case 1: - p.inventory.armorInventory[3] = new ItemStack(ModItems.hazmat_helmet_red); - p.inventory.armorInventory[2] = new ItemStack(ModItems.hazmat_plate_red); - p.inventory.armorInventory[1] = new ItemStack(ModItems.hazmat_legs_red); - p.inventory.armorInventory[0] = new ItemStack(ModItems.hazmat_boots_red); - break; - case 2: - p.inventory.armorInventory[3] = new ItemStack(ModItems.hazmat_helmet_grey); - p.inventory.armorInventory[2] = new ItemStack(ModItems.hazmat_plate_grey); - p.inventory.armorInventory[1] = new ItemStack(ModItems.hazmat_legs_grey); - p.inventory.armorInventory[0] = new ItemStack(ModItems.hazmat_boots_grey); - break; - } - } + private void giveHaz(World world, EntityPlayer p, int tier) { + + for(int i = 0; i < 4; i++) { + + if(p.inventory.armorInventory[i] != null && !world.isRemote) { + world.spawnEntityInWorld(new EntityItem(world, p.posX, p.posY + p.eyeHeight, p.posZ, p.inventory.armorInventory[i])); + } + } + + switch(tier) { + case 0: + p.inventory.armorInventory[3] = new ItemStack(ModItems.hazmat_helmet); + p.inventory.armorInventory[2] = new ItemStack(ModItems.hazmat_plate); + p.inventory.armorInventory[1] = new ItemStack(ModItems.hazmat_legs); + p.inventory.armorInventory[0] = new ItemStack(ModItems.hazmat_boots); + break; + case 1: + p.inventory.armorInventory[3] = new ItemStack(ModItems.hazmat_helmet_red); + p.inventory.armorInventory[2] = new ItemStack(ModItems.hazmat_plate_red); + p.inventory.armorInventory[1] = new ItemStack(ModItems.hazmat_legs_red); + p.inventory.armorInventory[0] = new ItemStack(ModItems.hazmat_boots_red); + break; + case 2: + p.inventory.armorInventory[3] = new ItemStack(ModItems.hazmat_helmet_grey); + p.inventory.armorInventory[2] = new ItemStack(ModItems.hazmat_plate_grey); + p.inventory.armorInventory[1] = new ItemStack(ModItems.hazmat_legs_grey); + p.inventory.armorInventory[0] = new ItemStack(ModItems.hazmat_boots_grey); + break; + } + } @Override public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) { @@ -200,7 +199,7 @@ public class ItemStarterKit extends Item { player.inventory.addItemStackToInventory(new ItemStack(ModItems.pellet_rtg_weak, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.cell_empty, 32)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_empty, 32)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.fluid_barrel_full, 4, FluidTypeTheOldOne.COOLANT.getID())); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.fluid_barrel_full, 4, Fluids.COOLANT.getID())); player.inventory.addItemStackToInventory(new ItemStack(ModItems.radaway_strong, 4)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.radx, 4)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.pill_iodine, 1)); @@ -249,8 +248,8 @@ public class ItemStarterKit extends Item { player.inventory.addItemStackToInventory(new ItemStack(ModItems.reactor_core, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.cell_empty, 32)); player.inventory.addItemStackToInventory(new ItemStack(ModItems.rod_empty, 64)); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.fluid_barrel_full, 16, FluidTypeTheOldOne.WATER.getID())); - player.inventory.addItemStackToInventory(new ItemStack(ModItems.fluid_barrel_full, 8, FluidTypeTheOldOne.COOLANT.getID())); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.fluid_barrel_full, 16, Fluids.WATER.getID())); + player.inventory.addItemStackToInventory(new ItemStack(ModItems.fluid_barrel_full, 8, Fluids.COOLANT.getID())); player.inventory.addItemStackToInventory(new ItemStack(ModBlocks.machine_assembler, 1)); player.inventory.addItemStackToInventory(new ItemStack(ModBlocks.machine_chemplant, 3)); player.inventory.addItemStackToInventory(new ItemStack(ModBlocks.machine_gascent, 2)); diff --git a/src/main/java/com/hbm/items/special/ItemSyringe.java b/src/main/java/com/hbm/items/special/ItemSyringe.java index f38b1b8ba..b14fddcd3 100644 --- a/src/main/java/com/hbm/items/special/ItemSyringe.java +++ b/src/main/java/com/hbm/items/special/ItemSyringe.java @@ -4,11 +4,10 @@ import java.util.List; import java.util.Random; import com.hbm.config.VersatileConfig; -import com.hbm.explosion.ExplosionLarge; import com.hbm.extprop.HbmLivingProps; import com.hbm.handler.ArmorModHandler; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IPartiallyFillable; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.items.weapon.ItemGunBase; import com.hbm.lib.ModDamageSource; @@ -285,7 +284,7 @@ public class ItemSyringe extends Item { IPartiallyFillable fillable = (IPartiallyFillable) jetpack.getItem(); - if(fillable.getType(jetpack) != FluidTypeTheOldOne.KEROSENE) + if(fillable.getType(jetpack) != Fluids.KEROSENE) return stack; int fill = Math.min(fillable.getFill(jetpack) + 1000, fillable.getMaxFill(jetpack)); diff --git a/src/main/java/com/hbm/items/tool/ItemWandD.java b/src/main/java/com/hbm/items/tool/ItemWandD.java index 67e8c6815..4c8c4e8d5 100644 --- a/src/main/java/com/hbm/items/tool/ItemWandD.java +++ b/src/main/java/com/hbm/items/tool/ItemWandD.java @@ -4,6 +4,7 @@ import java.util.List; import com.hbm.blocks.BlockDummyable; import com.hbm.lib.Library; +import com.hbm.tileentity.conductor.TileEntityFluidDuct; import api.hbm.energy.IEnergyConductor; import net.minecraft.block.Block; @@ -41,9 +42,15 @@ public class ItemWandD extends Item { } TileEntity te = world.getTileEntity(x, y, z); - if(te instanceof IEnergyConductor) { + /*if(te instanceof IEnergyConductor) { IEnergyConductor con = (IEnergyConductor) te; player.addChatComponentMessage(new ChatComponentText("" + con.getPowerNet())); + }*/ + + if(te instanceof TileEntityFluidDuct) { + + player.addChatComponentMessage(new ChatComponentText("" + ((TileEntityFluidDuct)te).type.getUnlocalizedName())); + player.addChatComponentMessage(new ChatComponentText("" + ((TileEntityFluidDuct)te).type.getID())); } //CellularDungeonFactory.meteor.generate(world, x, y, z, world.rand); diff --git a/src/main/java/com/hbm/items/weapon/ItemCrucible.java b/src/main/java/com/hbm/items/weapon/ItemCrucible.java index 09a03caa5..495f6e6ae 100644 --- a/src/main/java/com/hbm/items/weapon/ItemCrucible.java +++ b/src/main/java/com/hbm/items/weapon/ItemCrucible.java @@ -93,7 +93,7 @@ public class ItemCrucible extends ItemSwordAbility implements IEquipReceiver { PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, victim.posX, victim.posY + victim.height * 0.5, victim.posZ), new TargetPoint(victim.dimension, victim.posX, victim.posY + victim.height * 0.5, victim.posZ, 50)); } - if(attacker instanceof EntityPlayer && ((EntityPlayer)attacker).getDisplayName().equals("Tankish")) + if(attacker instanceof EntityPlayer && (((EntityPlayer)attacker).getDisplayName().equals("Tankish") || ((EntityPlayer)attacker).getDisplayName().equals("Tankish020"))) return true; return super.hitEntity(stack, victim, attacker); diff --git a/src/main/java/com/hbm/items/weapon/ItemGunShotty.java b/src/main/java/com/hbm/items/weapon/ItemGunShotty.java index df5bad602..e32d5a255 100644 --- a/src/main/java/com/hbm/items/weapon/ItemGunShotty.java +++ b/src/main/java/com/hbm/items/weapon/ItemGunShotty.java @@ -16,7 +16,7 @@ public class ItemGunShotty extends ItemGunBase { protected void updateServer(ItemStack stack, World world, EntityPlayer player, int slot, boolean isCurrentItem) { super.updateServer(stack, world, player, slot, isCurrentItem); - if((player.getUniqueID().toString().equals(Library.Dr_Nostalgia) || player.getUniqueID().toString().equals(Library.Tankish)) && + if((player.getUniqueID().toString().equals(Library.Dr_Nostalgia) || player.getDisplayName().equals("Tankish") || player.getDisplayName().equals("Tankish020")) && this.getDelay(stack) < this.mainConfig.rateOfFire * 0.9) this.setDelay(stack, 0); } diff --git a/src/main/java/com/hbm/lib/Library.java b/src/main/java/com/hbm/lib/Library.java index a1ebb30d6..ce9dc72a8 100644 --- a/src/main/java/com/hbm/lib/Library.java +++ b/src/main/java/com/hbm/lib/Library.java @@ -10,7 +10,6 @@ import com.hbm.blocks.ModBlocks; import com.hbm.calc.UnionOfTileEntitiesAndBooleansForFluids; import com.hbm.entity.mob.EntityHunterChopper; import com.hbm.entity.projectile.EntityChopperMine; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidDuct; import com.hbm.interfaces.IFluidSource; diff --git a/src/main/java/com/hbm/lib/RefStrings.java b/src/main/java/com/hbm/lib/RefStrings.java index 7ed2ab1ef..523ff2a36 100644 --- a/src/main/java/com/hbm/lib/RefStrings.java +++ b/src/main/java/com/hbm/lib/RefStrings.java @@ -3,7 +3,7 @@ package com.hbm.lib; public class RefStrings { public static final String MODID = "hbm"; public static final String NAME = "Hbm's Nuclear Tech Mod"; - public static final String VERSION = "1.0.27 BETA (4109)"; + public static final String VERSION = "1.0.27 BETA (4116)"; //HBM's Beta Naming Convention: //V T (X) //V -> next release version diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index e4f2b129d..5ef608a57 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -346,7 +346,7 @@ public class ClientProxy extends ServerProxy { MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_gold, new ItemRenderWeaponFFColt(ResourceManager.ff_gold, ResourceManager.ff_gold, ResourceManager.ff_gun_dark)); MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_lead, new ItemRenderWeaponFFColt(ResourceManager.ff_lead, ResourceManager.ff_iron, ResourceManager.ff_gun_dark)); MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_schrabidium, new ItemRenderWeaponFFColt(ResourceManager.ff_schrabidium, ResourceManager.ff_schrabidium, ResourceManager.ff_gun_dark)); - MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_cursed, new ItemRenderRevolverCursed()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_cursed, new ItemRenderWeaponFFCursed()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_nightmare, new ItemRenderWeaponFFNightmare()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_revolver_nightmare2, new ItemRenderRevolverNightmare(ModItems.gun_revolver_nightmare2)); MinecraftForgeClient.registerItemRenderer(ModItems.gun_fatman, new ItemRenderFatMan()); diff --git a/src/main/java/com/hbm/main/CraftingManager.java b/src/main/java/com/hbm/main/CraftingManager.java index 3e58b9d5b..939efea68 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -7,8 +7,8 @@ import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; import com.hbm.crafting.*; import com.hbm.crafting.handlers.*; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.OreDictManager; +import com.hbm.inventory.fluid.Fluids; import static com.hbm.inventory.OreDictManager.*; import com.hbm.items.ModItems; @@ -401,7 +401,7 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModBlocks.barbed_wire, 16), new Object[] { "AIA", "I I", "AIA", 'A', ModItems.wire_aluminium, 'I', IRON.ingot() }); addRecipeAuto(new ItemStack(ModBlocks.barbed_wire_fire, 8), new Object[] { "BBB", "BIB", "BBB", 'B', ModBlocks.barbed_wire, 'I', P_RED.dust() }); addRecipeAuto(new ItemStack(ModBlocks.barbed_wire_poison, 8), new Object[] { "BBB", "BIB", "BBB", 'B', ModBlocks.barbed_wire, 'I', ModItems.powder_poison }); - addRecipeAuto(new ItemStack(ModBlocks.barbed_wire_acid, 8), new Object[] { "BBB", "BIB", "BBB", 'B', ModBlocks.barbed_wire, 'I', new ItemStack(ModItems.fluid_tank_full, 1, FluidTypeTheOldOne.ACID.getID()) }); + addRecipeAuto(new ItemStack(ModBlocks.barbed_wire_acid, 8), new Object[] { "BBB", "BIB", "BBB", 'B', ModBlocks.barbed_wire, 'I', new ItemStack(ModItems.fluid_tank_full, 1, Fluids.ACID.getID()) }); addRecipeAuto(new ItemStack(ModBlocks.barbed_wire_wither, 8), new Object[] { "BBB", "BIB", "BBB", 'B', ModBlocks.barbed_wire, 'I', new ItemStack(Items.skull, 1, 1) }); addRecipeAuto(new ItemStack(ModBlocks.barbed_wire_ultradeath, 4), new Object[] { "BCB", "CIC", "BCB", 'B', ModBlocks.barbed_wire, 'C', ModItems.powder_cloud, 'I', ModItems.nuclear_waste }); @@ -455,8 +455,9 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModBlocks.det_miner, 3), new Object[] { "FFF", "ITI", "ITI", 'F', Items.flint, 'I', IRON.plate(), 'T', Blocks.tnt }); addRecipeAuto(new ItemStack(ModBlocks.det_miner, 4), new Object[] { "FFF", "ITI", "ITI", 'F', Items.flint, 'I', IRON.plate(), 'T', ModItems.ball_dynamite }); addRecipeAuto(new ItemStack(ModBlocks.det_miner, 12), new Object[] { "FFF", "ITI", "ITI", 'F', Items.flint, 'I', STEEL.plate(), 'T', ModItems.ingot_semtex }); - addRecipeAuto(new ItemStack(Item.getItemFromBlock(ModBlocks.emp_bomb), 1), new Object[] { "LML", "LCL", "LML", 'L', PB.plate(), 'M', ModItems.magnetron, 'C', ModItems.circuit_gold }); + addRecipeAuto(new ItemStack(ModBlocks.emp_bomb, 1), new Object[] { "LML", "LCL", "LML", 'L', PB.plate(), 'M', ModItems.magnetron, 'C', ModItems.circuit_gold }); addShapelessAuto(new ItemStack(ModBlocks.charge_dynamite, 1), new Object[] { ModItems.stick_dynamite, ModItems.stick_dynamite, ModItems.stick_dynamite, ModItems.ducttape }); + addRecipeAuto(new ItemStack(ModBlocks.charge_miner, 1), new Object[] { " F ", "FCF", " F ", 'F', Items.flint, 'C', ModBlocks.charge_dynamite }); addRecipeAuto(ItemBattery.getEmptyBattery(ModItems.battery_generic), new Object[] { " A ", "PRP", "PRP", 'A', ModItems.wire_aluminium, 'P', AL.plate(), 'R', REDSTONE.dust() }); addRecipeAuto(ItemBattery.getEmptyBattery(ModItems.battery_advanced), new Object[] { " A ", "PSP", "PLP", 'A', ModItems.wire_red_copper, 'P', CU.plate(), 'S', "sulfur", 'L', PB.dust() }); @@ -505,8 +506,8 @@ public class CraftingManager { addRecipeAuto(ItemBattery.getFullBattery(ModItems.battery_su_l), new Object[] { " W ", "RPR", "CPC", 'W', ModItems.wire_copper, 'P', Items.paper, 'R', REDSTONE.dust(), 'C', COAL.dust() }); addShapelessAuto(ItemBattery.getFullBattery(ModItems.battery_potato), new Object[] { Items.potato, ModItems.wire_aluminium, ModItems.wire_copper }); addShapelessAuto(ItemBattery.getFullBattery(ModItems.battery_potatos), new Object[] { ItemBattery.getFullBattery(ModItems.battery_potato), ModItems.turret_chip, REDSTONE.dust() }); - addRecipeAuto(ItemBattery.getEmptyBattery(ModItems.battery_steam), new Object[] { "PMP", "ISI", "PCP", 'P', CU.plate(), 'M', ModItems.motor, 'C', ModItems.coil_tungsten, 'S', new ItemStack(ModItems.fluid_tank_full, 1, FluidTypeTheOldOne.WATER.getID()), 'I', ModItems.plate_polymer }); - addRecipeAuto(ItemBattery.getEmptyBattery(ModItems.battery_steam_large), new Object[] { "MPM", "ISI", "CPC", 'P', ModItems.board_copper, 'M', ModItems.motor, 'C', ModItems.coil_tungsten, 'S', new ItemStack(ModItems.fluid_barrel_full, 1, FluidTypeTheOldOne.WATER.getID()), 'I', POLYMER.ingot() }); + addRecipeAuto(ItemBattery.getEmptyBattery(ModItems.battery_steam), new Object[] { "PMP", "ISI", "PCP", 'P', CU.plate(), 'M', ModItems.motor, 'C', ModItems.coil_tungsten, 'S', new ItemStack(ModItems.fluid_tank_full, 1, Fluids.WATER.getID()), 'I', ModItems.plate_polymer }); + addRecipeAuto(ItemBattery.getEmptyBattery(ModItems.battery_steam_large), new Object[] { "MPM", "ISI", "CPC", 'P', ModItems.board_copper, 'M', ModItems.motor, 'C', ModItems.coil_tungsten, 'S', new ItemStack(ModItems.fluid_barrel_full, 1, Fluids.WATER.getID()), 'I', POLYMER.ingot() }); 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 }); @@ -571,7 +572,7 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModItems.singularity_spark, 1), new Object[] { "XBX", "ACA", "XBX", 'X', ModItems.plate_dineutronium, 'A', ModItems.singularity_counter_resonant, 'B', ModItems.singularity_super_heated, 'C', ModItems.black_hole }); addRecipeAuto(new ItemStack(ModItems.ams_core_sing, 1), new Object[] { "EAE", "ASA", "EAE", 'E', ModItems.plate_euphemium, 'A', ModItems.cell_anti_schrabidium, 'S', ModItems.singularity }); addRecipeAuto(new ItemStack(ModItems.ams_core_wormhole, 1), new Object[] { "DPD", "PSP", "DPD", 'D', ModItems.plate_dineutronium, 'P', ModItems.powder_spark_mix, 'S', ModItems.singularity }); - addRecipeAuto(new ItemStack(ModItems.ams_core_eyeofharmony, 1), new Object[] { "ALA", "LSL", "ALA", 'A', ModItems.plate_dalekanium, 'L', new ItemStack(ModItems.fluid_barrel_full, 1, FluidTypeTheOldOne.LAVA.getID()), 'S', ModItems.black_hole }); + addRecipeAuto(new ItemStack(ModItems.ams_core_eyeofharmony, 1), new Object[] { "ALA", "LSL", "ALA", 'A', ModItems.plate_dalekanium, 'L', new ItemStack(ModItems.fluid_barrel_full, 1, Fluids.LAVA.getID()), 'S', ModItems.black_hole }); addRecipeAuto(new ItemStack(ModItems.ams_core_thingy), new Object[] { "NSN", "NGN", "G G", 'N', GOLD.nugget(), 'G', GOLD.ingot(), 'S', ModItems.battery_spark_cell_10000 }); addRecipeAuto(new ItemStack(ModItems.photo_panel), new Object[] { " G ", "IPI", " C ", 'G', KEY_ANYPANE, 'I', ModItems.plate_polymer, 'P', NETHERQUARTZ.dust(), 'C', ModItems.circuit_aluminium }); addRecipeAuto(new ItemStack(ModBlocks.machine_satlinker), new Object[] { "PSP", "SCS", "PSP", 'P', STEEL.plate(), 'S', STAR.ingot(), 'C', ModItems.sat_chip }); @@ -640,8 +641,7 @@ public class CraftingManager { addShapelessAuto(new ItemStack(Items.paper, 1), new Object[] { new ItemStack(ModItems.assembly_template, 1, OreDictionary.WILDCARD_VALUE) }); addShapelessAuto(new ItemStack(Items.paper, 1), new Object[] { new ItemStack(ModItems.chemistry_template, 1, OreDictionary.WILDCARD_VALUE) }); - for (int i = 1; i < FluidTypeTheOldOne.values().length; ++i) - { + for(int i = 1; i < Fluids.getAll().length; ++i) { addShapelessAuto(new ItemStack(ModItems.fluid_duct, 1, i), new Object[] { new ItemStack(ModBlocks.fluid_duct, 1), new ItemStack(ModItems.fluid_identifier, 1, i) }); addShapelessAuto(new ItemStack(ModItems.fluid_duct, 8, i), new Object[] { new ItemStack(ModBlocks.fluid_duct, 8), new ItemStack(ModBlocks.fluid_duct, 8), @@ -653,8 +653,8 @@ public class CraftingManager { addShapelessAuto(new ItemStack(ModItems.fluid_duct, 8, i), new Object[] { new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_duct, 8, OreDictionary.WILDCARD_VALUE), new ItemStack(ModItems.fluid_identifier, 1, i) }); - } - + } + addShapelessAuto(new ItemStack(ModBlocks.fluid_duct, 1), new Object[] { new ItemStack(ModItems.fluid_duct, 1, OreDictionary.WILDCARD_VALUE) }); addShapelessAuto(new ItemStack(ModItems.redstone_depleted, 1), new Object[] { new ItemStack(ModItems.battery_su, 1, OreDictionary.WILDCARD_VALUE) }); @@ -732,7 +732,7 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModItems.upgrade_smelter, 1), new Object[] { "PHP", "CUC", "DTD", 'P', CU.plate(), 'H', Blocks.hopper, 'C', ModItems.coil_tungsten, 'U', ModItems.upgrade_template, 'D', ModItems.coil_copper, 'T', ModBlocks.machine_transformer }); addRecipeAuto(new ItemStack(ModItems.upgrade_shredder, 1), new Object[] { "PHP", "CUC", "DTD", 'P', ModItems.motor, 'H', Blocks.hopper, 'C', ModItems.blades_advanced_alloy, 'U', ModItems.upgrade_smelter, 'D', TI.plate(), 'T', ModBlocks.machine_transformer }); addRecipeAuto(new ItemStack(ModItems.upgrade_centrifuge, 1), new Object[] { "PHP", "PUP", "DTD", 'P', ModItems.centrifuge_element, 'H', Blocks.hopper, 'U', ModItems.upgrade_shredder, 'D', POLYMER.ingot(), 'T', ModBlocks.machine_transformer }); - addRecipeAuto(new ItemStack(ModItems.upgrade_crystallizer, 1), new Object[] { "PHP", "CUC", "DTD", 'P', new ItemStack(ModItems.fluid_barrel_full, 1, FluidTypeTheOldOne.ACID.ordinal()), 'H', ModItems.circuit_targeting_tier4, 'C', ModBlocks.barrel_steel, 'U', ModItems.upgrade_centrifuge, 'D', ModItems.motor, 'T', ModBlocks.machine_transformer }); + addRecipeAuto(new ItemStack(ModItems.upgrade_crystallizer, 1), new Object[] { "PHP", "CUC", "DTD", 'P', new ItemStack(ModItems.fluid_barrel_full, 1, Fluids.ACID.ordinal()), 'H', ModItems.circuit_targeting_tier4, 'C', ModBlocks.barrel_steel, 'U', ModItems.upgrade_centrifuge, 'D', ModItems.motor, 'T', ModBlocks.machine_transformer }); addRecipeAuto(new ItemStack(ModItems.upgrade_screm, 1), new Object[] { "SUS", "SCS", "SUS", 'S', STEEL.plate(), 'U', ModItems.upgrade_template, 'C', ModItems.crystal_xen }); addRecipeAuto(new ItemStack(ModItems.upgrade_gc_speed, 1), new Object[] {"TCT", "HUH", "TCT", 'T', ModItems.nugget_bismuth, 'C', ModItems.coil_copper, 'H', ModItems.coil_tungsten, 'U', ModItems.upgrade_template}); diff --git a/src/main/java/com/hbm/main/MainRegistry.java b/src/main/java/com/hbm/main/MainRegistry.java index 90c217f1d..c70d34209 100644 --- a/src/main/java/com/hbm/main/MainRegistry.java +++ b/src/main/java/com/hbm/main/MainRegistry.java @@ -62,7 +62,6 @@ import com.hbm.entity.particle.*; import com.hbm.entity.projectile.*; import com.hbm.entity.qic.EntitySPV; import com.hbm.handler.*; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.handler.imc.IMCCentrifuge; import com.hbm.handler.imc.IMCCrystallizer; import com.hbm.handler.imc.IMCHandler; @@ -786,7 +785,7 @@ public class MainRegistry { achSacrifice = new Achievement("achievement.sacrifice", "sacrifice", -3, 1, ModItems.burnt_bark, null).initIndependentStat().setSpecial().registerStat(); achImpossible = new Achievement("achievement.impossible", "impossible", 18, 10, ModItems.nothing, null).initIndependentStat().setSpecial().registerStat(); - achTOB = new Achievement("achievement.tasteofblood", "tasteofblood", 3, 10, new ItemStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.ASCHRAB.getID()), null).initIndependentStat().setSpecial().registerStat(); + achTOB = new Achievement("achievement.tasteofblood", "tasteofblood", 3, 10, new ItemStack(ModItems.fluid_icon, 1, Fluids.ASCHRAB.getID()), null).initIndependentStat().setSpecial().registerStat(); achFreytag = new Achievement("achievement.freytag", "freytag", 0, -4, ModItems.gun_mp40, null).initIndependentStat().setSpecial().registerStat(); achPotato = new Achievement("achievement.potato", "potato", -2, -2, ModItems.battery_potatos, null).initIndependentStat().setSpecial().registerStat(); achC44 = new Achievement("achievement.c44", "c44", 2, -4, ModItems.gun_revolver_pip, null).initIndependentStat().setSpecial().registerStat(); diff --git a/src/main/java/com/hbm/main/ModEventHandler.java b/src/main/java/com/hbm/main/ModEventHandler.java index 43d1865e0..41ba6cb1a 100644 --- a/src/main/java/com/hbm/main/ModEventHandler.java +++ b/src/main/java/com/hbm/main/ModEventHandler.java @@ -529,16 +529,19 @@ public class ModEventHandler { return; if(event.phase == Phase.START && event.side == Side.CLIENT) { - if(BlockAshes.ashes > 256) - BlockAshes.ashes = 256; - if(BlockAshes.ashes > 0) - BlockAshes.ashes -= 2; + if(BlockAshes.ashes > 256) BlockAshes.ashes = 256; + if(BlockAshes.ashes > 0) BlockAshes.ashes -= 2; + if(BlockAshes.ashes < 0) BlockAshes.ashes = 0; if(mc.theWorld.getTotalWorldTime() % 20 == 0) { this.lastBrightness = this.currentBrightness; currentBrightness = mc.theWorld.getLightBrightnessForSkyBlocks(MathHelper.floor_double(mc.thePlayer.posX), MathHelper.floor_double(mc.thePlayer.posY), MathHelper.floor_double(mc.thePlayer.posZ), 0); } + + if(ArmorUtil.isWearingEmptyMask(mc.thePlayer)) { + MainRegistry.proxy.displayTooltip(EnumChatFormatting.RED + "Your mask has no filter!"); + } } } diff --git a/src/main/java/com/hbm/main/NEIConfig.java b/src/main/java/com/hbm/main/NEIConfig.java index fc04281a5..414bad7db 100644 --- a/src/main/java/com/hbm/main/NEIConfig.java +++ b/src/main/java/com/hbm/main/NEIConfig.java @@ -1,6 +1,7 @@ package com.hbm.main; import com.hbm.blocks.ModBlocks; +import com.hbm.config.VersatileConfig; import com.hbm.handler.nei.*; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemBattery; @@ -56,6 +57,14 @@ public class NEIConfig implements IConfigureNEI { API.registerUsageHandler(new AnvilRecipeHandler()); API.registerRecipeHandler(new FuelPoolHandler()); API.registerUsageHandler(new FuelPoolHandler()); + + //universal boyes + API.registerRecipeHandler(new ZirnoxRecipeHandler()); + API.registerUsageHandler(new ZirnoxRecipeHandler()); + if(VersatileConfig.rtgDecay()) { + API.registerRecipeHandler(new RTGRecipeHandler()); + API.registerUsageHandler(new RTGRecipeHandler()); + } //Some things are even beyond my control...or are they? API.hideItem(ItemBattery.getEmptyBattery(ModItems.memory)); diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index 2edd13514..7d8707f8f 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -602,6 +602,7 @@ public class ResourceManager { public static final IModelCustom ar15 = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/ar15.obj")); public static final IModelCustom mg42 = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/mg42.obj")); public static final IModelCustom rem700 = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/rem700.obj")); + public static final IModelCustom cursed_revolver = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/cursed.obj")); public static final IModelCustom lance = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/lance.obj")); @@ -680,6 +681,7 @@ public class ResourceManager { public static final ResourceLocation ff_schrabidium = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/schrabidium.png"); public static final ResourceLocation ff_wood = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/wood.png"); public static final ResourceLocation ff_wood_red = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/wood_red.png"); + public static final ResourceLocation ff_cursed = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ff/cursed.png"); public static final ResourceLocation grenade_mk2 = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/grenade_mk2.png"); public static final ResourceLocation grenade_aschrab_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/grenade_aschrab.png"); diff --git a/src/main/java/com/hbm/packet/AuxButtonPacket.java b/src/main/java/com/hbm/packet/AuxButtonPacket.java index 531453c66..98d56995e 100644 --- a/src/main/java/com/hbm/packet/AuxButtonPacket.java +++ b/src/main/java/com/hbm/packet/AuxButtonPacket.java @@ -2,8 +2,8 @@ package com.hbm.packet; import com.hbm.config.MobConfig; import com.hbm.entity.mob.EntityDuck; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.weapon.ItemMissile.PartSize; import com.hbm.tileentity.TileEntityMachineBase; import com.hbm.tileentity.TileEntityTickingBase; @@ -105,13 +105,13 @@ public class AuxButtonPacket implements IMessage { reactor.rods = m.value; if(m.id == 1) { - FluidType type = FluidTypeTheOldOne.STEAM; + FluidType type = Fluids.STEAM; int fill = reactor.tanks[2].getFill(); switch(m.value) { - case 0: type = FluidTypeTheOldOne.HOTSTEAM; fill = (int)Math.floor(fill / 10D); break; - case 1: type = FluidTypeTheOldOne.SUPERHOTSTEAM; fill = (int)Math.floor(fill / 10D); break; - case 2: type = FluidTypeTheOldOne.STEAM; fill = (int)Math.floor(fill * 100); break; + case 0: type = Fluids.HOTSTEAM; fill = (int)Math.floor(fill / 10D); break; + case 1: type = Fluids.SUPERHOTSTEAM; fill = (int)Math.floor(fill / 10D); break; + case 2: type = Fluids.STEAM; fill = (int)Math.floor(fill * 100); break; } if(fill > reactor.tanks[2].getMaxFill()) diff --git a/src/main/java/com/hbm/packet/TEFluidPacket.java b/src/main/java/com/hbm/packet/TEFluidPacket.java index 8736bdd17..9509c98a0 100644 --- a/src/main/java/com/hbm/packet/TEFluidPacket.java +++ b/src/main/java/com/hbm/packet/TEFluidPacket.java @@ -1,8 +1,8 @@ package com.hbm.packet; -import java.util.Arrays; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; @@ -29,7 +29,7 @@ public class TEFluidPacket implements IMessage { this.z = z; this.fill = fill; this.index = index; - this.type = Arrays.asList(FluidType.values()).indexOf(type); + this.type = type.getID(); } @Override @@ -63,7 +63,7 @@ public class TEFluidPacket implements IMessage { IFluidContainer gen = (IFluidContainer) te; gen.setFillstate(m.fill, m.index); - gen.setType(FluidType.getEnum(m.type), m.index); + gen.setType(Fluids.fromID(m.type), m.index); } } catch(Exception x) { } return null; diff --git a/src/main/java/com/hbm/packet/TEFluidPipePacket.java b/src/main/java/com/hbm/packet/TEFluidPipePacket.java index 2ead7e76c..f9c25579e 100644 --- a/src/main/java/com/hbm/packet/TEFluidPipePacket.java +++ b/src/main/java/com/hbm/packet/TEFluidPipePacket.java @@ -1,6 +1,7 @@ package com.hbm.packet; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.tileentity.conductor.TileEntityFluidDuct; import cpw.mods.fml.common.network.simpleimpl.IMessage; @@ -35,7 +36,7 @@ public class TEFluidPipePacket implements IMessage { x = buf.readInt(); y = buf.readInt(); z = buf.readInt(); - type = FluidType.getEnum(buf.readInt()); + type = Fluids.fromID(buf.readInt()); } @Override @@ -43,13 +44,7 @@ public class TEFluidPipePacket implements IMessage { buf.writeInt(x); buf.writeInt(y); buf.writeInt(z); - for (int i = 0; i < FluidType.values().length; ++i) - { - if(FluidType.values()[i] == type) { - buf.writeInt(i); - break; - } - } + buf.writeInt(type.getID()); } public static class Handler implements IMessageHandler { diff --git a/src/main/java/com/hbm/render/item/weapon/ItemRenderWeaponFFCursed.java b/src/main/java/com/hbm/render/item/weapon/ItemRenderWeaponFFCursed.java new file mode 100644 index 000000000..a7d7e585b --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/ItemRenderWeaponFFCursed.java @@ -0,0 +1,91 @@ +package com.hbm.render.item.weapon; + +import org.lwjgl.opengl.GL11; + +import com.hbm.main.ResourceManager; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; +import net.minecraftforge.client.IItemRenderer; + +public class ItemRenderWeaponFFCursed implements IItemRenderer { + + @Override + public boolean handleRenderType(ItemStack item, ItemRenderType type) { + switch(type) { + case EQUIPPED: + case EQUIPPED_FIRST_PERSON: + case ENTITY: + case INVENTORY: + return true; + default: return false; + } + } + + @Override + public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) { + + return type == ItemRenderType.ENTITY && (helper == ItemRendererHelper.ENTITY_ROTATION || helper == ItemRendererHelper.ENTITY_BOBBING); + } + + @Override + public void renderItem(ItemRenderType type, ItemStack item, Object... data) { + + GL11.glPushMatrix(); + + GL11.glEnable(GL11.GL_CULL_FACE); + + switch(type) { + + case EQUIPPED_FIRST_PERSON: + + double s0 = 0.25D; + GL11.glTranslated(0.75, 0.25, 0); + GL11.glScaled(s0, s0, s0); + GL11.glRotated(170, 0, 1, 0); + GL11.glRotated(25, 0, 0, -1); + + break; + + case EQUIPPED: + + double scale = 0.25D; + GL11.glRotated(105, 0, 1, 0); + GL11.glRotated(-10, 1, 0, 0); + GL11.glRotated(10, 0, 0, 1); + GL11.glTranslated(0.2, 0.05, 0.45); + GL11.glScaled(scale, scale, scale); + + break; + + case ENTITY: + + double s1 = 0.125D; + GL11.glScaled(s1, s1, s1); + GL11.glTranslated(1, 0, 0); + + break; + + case INVENTORY: + + GL11.glEnable(GL11.GL_LIGHTING); + + double s = 2.75D; + GL11.glTranslated(10, 11.5, 0); + GL11.glRotated(-135, 0, 0, 1); + GL11.glRotated(180, 0, 1, 0); + GL11.glScaled(s, s, -s); + + break; + + default: break; + } + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ff_cursed); + ResourceManager.cursed_revolver.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPopMatrix(); + } +} diff --git a/src/main/java/com/hbm/render/tileentity/RenderChemplant.java b/src/main/java/com/hbm/render/tileentity/RenderChemplant.java index 784c916d3..56ce022de 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderChemplant.java +++ b/src/main/java/com/hbm/render/tileentity/RenderChemplant.java @@ -2,7 +2,7 @@ package com.hbm.render.tileentity; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.Fluids; import com.hbm.main.ResourceManager; import com.hbm.render.loader.HmfController; import com.hbm.tileentity.machine.TileEntityMachineChemplant; @@ -11,160 +11,165 @@ import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.tileentity.TileEntity; public class RenderChemplant extends TileEntitySpecialRenderer { - - public RenderChemplant() { } - @Override - public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f) - { - GL11.glPushMatrix(); - GL11.glTranslated(x + 0.5D, y, z + 0.5D); - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glDisable(GL11.GL_CULL_FACE); + public RenderChemplant() { + } + + @Override + public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f) { + GL11.glPushMatrix(); + GL11.glTranslated(x + 0.5D, y, z + 0.5D); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glDisable(GL11.GL_CULL_FACE); GL11.glRotatef(180, 0F, 1F, 0F); - switch(tileEntity.getBlockMetadata()) - { + switch(tileEntity.getBlockMetadata()) { case 2: GL11.glRotatef(180, 0F, 1F, 0F); - GL11.glTranslated(0.5D, 0.0D, -0.5D); break; + GL11.glTranslated(0.5D, 0.0D, -0.5D); + break; case 4: GL11.glRotatef(270, 0F, 1F, 0F); - GL11.glTranslated(0.5D, 0.0D, -0.5D); break; + GL11.glTranslated(0.5D, 0.0D, -0.5D); + break; case 3: GL11.glRotatef(0, 0F, 1F, 0F); - GL11.glTranslated(0.5D, 0.0D, -0.5D); break; + GL11.glTranslated(0.5D, 0.0D, -0.5D); + break; case 5: GL11.glRotatef(90, 0F, 1F, 0F); - GL11.glTranslated(0.5D, 0.0D, -0.5D); break; + GL11.glTranslated(0.5D, 0.0D, -0.5D); + break; } - bindTexture(ResourceManager.chemplant_body_tex); - - ResourceManager.chemplant_body.renderAll(); + bindTexture(ResourceManager.chemplant_body_tex); + + ResourceManager.chemplant_body.renderAll(); + + GL11.glPopMatrix(); + + renderExtras(tileEntity, x, y, z, f); + } - GL11.glPopMatrix(); - - renderExtras(tileEntity, x, y, z, f); - } - public void renderExtras(TileEntity tileEntity, double x, double y, double z, float f) { - GL11.glPushMatrix(); - GL11.glTranslated(x, y, z); - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glDisable(GL11.GL_CULL_FACE); + GL11.glPushMatrix(); + GL11.glTranslated(x, y, z); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glDisable(GL11.GL_CULL_FACE); GL11.glRotatef(180, 0F, 1F, 0F); - TileEntityMachineChemplant chem = (TileEntityMachineChemplant)tileEntity; - switch(chem.getBlockMetadata()) - { + TileEntityMachineChemplant chem = (TileEntityMachineChemplant) tileEntity; + switch(chem.getBlockMetadata()) { case 2: GL11.glTranslated(-1, 0, 0); - GL11.glRotatef(180, 0F, 1F, 0F); break; + GL11.glRotatef(180, 0F, 1F, 0F); + break; case 4: - GL11.glRotatef(270, 0F, 1F, 0F); break; + GL11.glRotatef(270, 0F, 1F, 0F); + break; case 3: GL11.glTranslated(0, 0, -1); - GL11.glRotatef(0, 0F, 1F, 0F); break; + GL11.glRotatef(0, 0F, 1F, 0F); + break; case 5: GL11.glTranslated(-1, 0, -1); - GL11.glRotatef(90, 0F, 1F, 0F); break; + GL11.glRotatef(90, 0F, 1F, 0F); + break; } - - bindTexture(ResourceManager.chemplant_spinner_tex); + bindTexture(ResourceManager.chemplant_spinner_tex); - int rotation = (int) (System.currentTimeMillis() % (360 * 5)) / 5; + int rotation = (int) (System.currentTimeMillis() % (360 * 5)) / 5; - GL11.glPushMatrix(); + GL11.glPushMatrix(); GL11.glTranslated(-0.625, 0, 0.625); - - if(!chem.tanks[0].getTankType().name().equals(FluidTypeTheOldOne.NONE.name()) && chem.isProgressing) + + if(chem.tanks[0].getTankType() != Fluids.NONE && chem.isProgressing) GL11.glRotatef(-rotation, 0F, 1F, 0F); else GL11.glRotatef(-45, 0F, 1F, 0F); - + ResourceManager.chemplant_spinner.renderAll(); - GL11.glPopMatrix(); - - GL11.glPushMatrix(); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); GL11.glTranslated(0.625, 0, 0.625); - - if(!chem.tanks[1].getTankType().name().equals(FluidTypeTheOldOne.NONE.name()) && chem.isProgressing) + + if(chem.tanks[1].getTankType() != Fluids.NONE && chem.isProgressing) GL11.glRotatef(rotation, 0F, 1F, 0F); else GL11.glRotatef(45, 0F, 1F, 0F); - + ResourceManager.chemplant_spinner.renderAll(); - GL11.glPopMatrix(); + GL11.glPopMatrix(); - double push = Math.sin((System.currentTimeMillis() % 2000) / 1000D * Math.PI) * 0.25 - 0.25; + double push = Math.sin((System.currentTimeMillis() % 2000) / 1000D * Math.PI) * 0.25 - 0.25; - bindTexture(ResourceManager.chemplant_piston_tex); - - GL11.glPushMatrix(); - - if(chem.isProgressing) - GL11.glTranslated(0, push, 0); + bindTexture(ResourceManager.chemplant_piston_tex); + + GL11.glPushMatrix(); + + if(chem.isProgressing) + GL11.glTranslated(0, push, 0); else - GL11.glTranslated(0, -0.25, 0); - - ResourceManager.chemplant_piston.renderAll(); - GL11.glPopMatrix(); + GL11.glTranslated(0, -0.25, 0); - bindTexture(ResourceManager.chemplant_fluid_tex); - int color = 0; + ResourceManager.chemplant_piston.renderAll(); + GL11.glPopMatrix(); - GL11.glDisable(GL11.GL_LIGHTING); - if(!chem.tanks[0].getTankType().name().equals(FluidTypeTheOldOne.NONE.name())) { - GL11.glPushMatrix(); - - if(chem.isProgressing) - HmfController.setMod(50000D, -250D); - else - HmfController.setMod(50000D, -50000D); - - color = chem.tanks[0].getTankType().getColor(); - GL11.glColor3ub((byte)((color & 0xFF0000) >> 16), (byte)((color & 0x00FF00) >> 8), (byte)((color & 0x0000FF) >> 0)); + bindTexture(ResourceManager.chemplant_fluid_tex); + int color = 0; + + GL11.glDisable(GL11.GL_LIGHTING); + if(chem.tanks[0].getTankType() != Fluids.NONE) { + GL11.glPushMatrix(); + + if(chem.isProgressing) + HmfController.setMod(50000D, -250D); + else + HmfController.setMod(50000D, -50000D); + + color = chem.tanks[0].getTankType().getColor(); + GL11.glColor3ub((byte) ((color & 0xFF0000) >> 16), (byte) ((color & 0x00FF00) >> 8), (byte) ((color & 0x0000FF) >> 0)); GL11.glTranslated(-0.625, 0, 0.625); - - int count = chem.tanks[0].getFill() * 16 / 24000; - for(int i = 0; i < count; i++) { - - if(i < count - 1) - ResourceManager.chemplant_fluid.renderAll(); - else - ResourceManager.chemplant_fluidcap.renderAll(); - GL11.glTranslated(0, 0.125, 0); - } - GL11.glPopMatrix(); - } - if(!chem.tanks[1].getTankType().name().equals(FluidTypeTheOldOne.NONE.name())) { - GL11.glPushMatrix(); - - if(chem.isProgressing) - HmfController.setMod(50000D, 250D); - else - HmfController.setMod(50000D, 50000D); - - color = chem.tanks[1].getTankType().getColor(); - GL11.glColor3ub((byte)((color & 0xFF0000) >> 16), (byte)((color & 0x00FF00) >> 8), (byte)((color & 0x0000FF) >> 0)); + int count = chem.tanks[0].getFill() * 16 / 24000; + for(int i = 0; i < count; i++) { + + if(i < count - 1) + ResourceManager.chemplant_fluid.renderAll(); + else + ResourceManager.chemplant_fluidcap.renderAll(); + GL11.glTranslated(0, 0.125, 0); + } + GL11.glPopMatrix(); + } + + if(chem.tanks[1].getTankType() != Fluids.NONE) { + GL11.glPushMatrix(); + + if(chem.isProgressing) + HmfController.setMod(50000D, 250D); + else + HmfController.setMod(50000D, 50000D); + + color = chem.tanks[1].getTankType().getColor(); + GL11.glColor3ub((byte) ((color & 0xFF0000) >> 16), (byte) ((color & 0x00FF00) >> 8), (byte) ((color & 0x0000FF) >> 0)); GL11.glTranslated(0.625, 0, 0.625); int count = chem.tanks[1].getFill() * 16 / 24000; - for(int i = 0; i < count; i++) { - - if(i < count - 1) - ResourceManager.chemplant_fluid.renderAll(); - else - ResourceManager.chemplant_fluidcap.renderAll(); - GL11.glTranslated(0, 0.125, 0); - } - GL11.glPopMatrix(); - } - GL11.glEnable(GL11.GL_LIGHTING); - - HmfController.resetMod(); + for(int i = 0; i < count; i++) { - GL11.glPopMatrix(); + if(i < count - 1) + ResourceManager.chemplant_fluid.renderAll(); + else + ResourceManager.chemplant_fluidcap.renderAll(); + GL11.glTranslated(0, 0.125, 0); + } + GL11.glPopMatrix(); + } + GL11.glEnable(GL11.GL_LIGHTING); + + HmfController.resetMod(); + + GL11.glPopMatrix(); } } diff --git a/src/main/java/com/hbm/render/tileentity/RenderTurretBrandon.java b/src/main/java/com/hbm/render/tileentity/RenderTurretBrandon.java index 5f7a4a0c0..8c184665a 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderTurretBrandon.java +++ b/src/main/java/com/hbm/render/tileentity/RenderTurretBrandon.java @@ -2,7 +2,6 @@ package com.hbm.render.tileentity; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.fluid.Fluids; import com.hbm.main.ResourceManager; import com.hbm.tileentity.turret.TileEntityTurretBrandon; diff --git a/src/main/java/com/hbm/render/tileentity/RenderTurretChekhov.java b/src/main/java/com/hbm/render/tileentity/RenderTurretChekhov.java index 6b20575aa..4aa7f6f16 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderTurretChekhov.java +++ b/src/main/java/com/hbm/render/tileentity/RenderTurretChekhov.java @@ -2,7 +2,7 @@ package com.hbm.render.tileentity; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.Fluids; import com.hbm.main.ResourceManager; import com.hbm.tileentity.turret.TileEntityTurretChekhov; @@ -23,7 +23,7 @@ public class RenderTurretChekhov extends RenderTurretBase { GL11.glEnable(GL11.GL_CULL_FACE); GL11.glShadeModel(GL11.GL_SMOOTH); - this.renderConnectors(turret, true, false, FluidTypeTheOldOne.NONE); + this.renderConnectors(turret, true, false, Fluids.NONE); bindTexture(ResourceManager.turret_base_tex); ResourceManager.turret_chekhov.renderPart("Base"); diff --git a/src/main/java/com/hbm/render/tileentity/RenderTurretFriendly.java b/src/main/java/com/hbm/render/tileentity/RenderTurretFriendly.java index 738bcd839..1d8e1a055 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderTurretFriendly.java +++ b/src/main/java/com/hbm/render/tileentity/RenderTurretFriendly.java @@ -2,7 +2,7 @@ package com.hbm.render.tileentity; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.Fluids; import com.hbm.main.ResourceManager; import com.hbm.tileentity.turret.TileEntityTurretChekhov; @@ -23,7 +23,7 @@ public class RenderTurretFriendly extends RenderTurretBase { GL11.glEnable(GL11.GL_CULL_FACE); GL11.glShadeModel(GL11.GL_SMOOTH); - this.renderConnectors(turret, true, false, FluidTypeTheOldOne.NONE); + this.renderConnectors(turret, true, false, Fluids.NONE); bindTexture(ResourceManager.turret_base_friendly_tex); ResourceManager.turret_chekhov.renderPart("Base"); diff --git a/src/main/java/com/hbm/render/tileentity/RenderTurretHoward.java b/src/main/java/com/hbm/render/tileentity/RenderTurretHoward.java index b4cd518f1..2c4139e1c 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderTurretHoward.java +++ b/src/main/java/com/hbm/render/tileentity/RenderTurretHoward.java @@ -2,7 +2,7 @@ package com.hbm.render.tileentity; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.Fluids; import com.hbm.main.ResourceManager; import com.hbm.tileentity.turret.TileEntityTurretHoward; @@ -23,7 +23,7 @@ public class RenderTurretHoward extends RenderTurretBase { GL11.glEnable(GL11.GL_CULL_FACE); GL11.glShadeModel(GL11.GL_SMOOTH); - this.renderConnectors(turret, true, false, FluidTypeTheOldOne.NONE); + this.renderConnectors(turret, true, false, Fluids.NONE); bindTexture(ResourceManager.turret_base_tex); ResourceManager.turret_chekhov.renderPart("Base"); diff --git a/src/main/java/com/hbm/render/tileentity/RenderTurretHowardDamaged.java b/src/main/java/com/hbm/render/tileentity/RenderTurretHowardDamaged.java index c586b4fe3..e59b535c3 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderTurretHowardDamaged.java +++ b/src/main/java/com/hbm/render/tileentity/RenderTurretHowardDamaged.java @@ -2,7 +2,6 @@ package com.hbm.render.tileentity; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.main.ResourceManager; import com.hbm.tileentity.turret.TileEntityTurretHowardDamaged; diff --git a/src/main/java/com/hbm/render/tileentity/RenderTurretJeremy.java b/src/main/java/com/hbm/render/tileentity/RenderTurretJeremy.java index 2c41029a6..543233015 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderTurretJeremy.java +++ b/src/main/java/com/hbm/render/tileentity/RenderTurretJeremy.java @@ -2,7 +2,7 @@ package com.hbm.render.tileentity; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.Fluids; import com.hbm.main.ResourceManager; import com.hbm.tileentity.turret.TileEntityTurretJeremy; @@ -23,7 +23,7 @@ public class RenderTurretJeremy extends RenderTurretBase { GL11.glEnable(GL11.GL_CULL_FACE); GL11.glShadeModel(GL11.GL_SMOOTH); - this.renderConnectors(turret, true, false, FluidTypeTheOldOne.NONE); + this.renderConnectors(turret, true, false, Fluids.NONE); bindTexture(ResourceManager.turret_base_tex); ResourceManager.turret_chekhov.renderPart("Base"); diff --git a/src/main/java/com/hbm/render/tileentity/RenderTurretMaxwell.java b/src/main/java/com/hbm/render/tileentity/RenderTurretMaxwell.java index c0d56326b..e8f9f6dd6 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderTurretMaxwell.java +++ b/src/main/java/com/hbm/render/tileentity/RenderTurretMaxwell.java @@ -2,7 +2,7 @@ package com.hbm.render.tileentity; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.Fluids; import com.hbm.main.ResourceManager; import com.hbm.render.util.BeamPronter; import com.hbm.render.util.BeamPronter.EnumBeamType; @@ -27,7 +27,7 @@ public class RenderTurretMaxwell extends RenderTurretBase { GL11.glEnable(GL11.GL_CULL_FACE); GL11.glShadeModel(GL11.GL_SMOOTH); - this.renderConnectors(turret, true, false, FluidTypeTheOldOne.NONE); + this.renderConnectors(turret, true, false, Fluids.NONE); bindTexture(ResourceManager.turret_base_tex); ResourceManager.turret_chekhov.renderPart("Base"); diff --git a/src/main/java/com/hbm/render/tileentity/RenderTurretRichard.java b/src/main/java/com/hbm/render/tileentity/RenderTurretRichard.java index ae63633d1..1cded6eba 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderTurretRichard.java +++ b/src/main/java/com/hbm/render/tileentity/RenderTurretRichard.java @@ -2,7 +2,7 @@ package com.hbm.render.tileentity; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.Fluids; import com.hbm.main.ResourceManager; import com.hbm.tileentity.turret.TileEntityTurretRichard; @@ -23,7 +23,7 @@ public class RenderTurretRichard extends RenderTurretBase { GL11.glEnable(GL11.GL_CULL_FACE); GL11.glShadeModel(GL11.GL_SMOOTH); - this.renderConnectors(turret, true, false, FluidTypeTheOldOne.NONE); + this.renderConnectors(turret, true, false, Fluids.NONE); bindTexture(ResourceManager.turret_base_tex); ResourceManager.turret_chekhov.renderPart("Base"); diff --git a/src/main/java/com/hbm/render/tileentity/RenderTurretTauon.java b/src/main/java/com/hbm/render/tileentity/RenderTurretTauon.java index 9de2fd697..cb56e4c27 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderTurretTauon.java +++ b/src/main/java/com/hbm/render/tileentity/RenderTurretTauon.java @@ -2,7 +2,7 @@ package com.hbm.render.tileentity; import org.lwjgl.opengl.GL11; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; +import com.hbm.inventory.fluid.Fluids; import com.hbm.main.ResourceManager; import com.hbm.render.util.BeamPronter; import com.hbm.render.util.BeamPronter.EnumBeamType; @@ -27,7 +27,7 @@ public class RenderTurretTauon extends RenderTurretBase { GL11.glEnable(GL11.GL_CULL_FACE); GL11.glShadeModel(GL11.GL_SMOOTH); - this.renderConnectors(turret, true, false, FluidTypeTheOldOne.NONE); + this.renderConnectors(turret, true, false, Fluids.NONE); bindTexture(ResourceManager.turret_base_tex); ResourceManager.turret_chekhov.renderPart("Base"); diff --git a/src/main/java/com/hbm/tileentity/IRTGUser.java b/src/main/java/com/hbm/tileentity/IRTGUser.java index 583f285de..1a41abb7f 100644 --- a/src/main/java/com/hbm/tileentity/IRTGUser.java +++ b/src/main/java/com/hbm/tileentity/IRTGUser.java @@ -5,6 +5,7 @@ import java.util.HashMap; import com.google.common.annotations.Beta; import com.hbm.config.MachineConfig; +import com.hbm.config.VersatileConfig; import com.hbm.interfaces.Untested; import net.minecraft.item.Item; @@ -28,7 +29,7 @@ public interface IRTGUser public static short getPower(IRadioisotopeFuel fuel, ItemStack stack) { - return MachineConfig.scaleRTGPower ? IRadioisotopeFuel.getScaledPower(fuel, stack) : fuel.getHeat(); + return VersatileConfig.scaleRTGPower() ? IRadioisotopeFuel.getScaledPower(fuel, stack) : fuel.getHeat(); } /** diff --git a/src/main/java/com/hbm/tileentity/IRadioisotopeFuel.java b/src/main/java/com/hbm/tileentity/IRadioisotopeFuel.java index 6ee5d2e3d..b8a1e61dd 100644 --- a/src/main/java/com/hbm/tileentity/IRadioisotopeFuel.java +++ b/src/main/java/com/hbm/tileentity/IRadioisotopeFuel.java @@ -6,6 +6,7 @@ import javax.annotation.CheckForNull; import javax.annotation.Nonnull; import com.hbm.config.MachineConfig; +import com.hbm.config.VersatileConfig; import com.hbm.interfaces.ICustomWarhead.SaltedFuel.HalfLifeType; import com.hbm.lib.Library; import com.hbm.util.BobMathUtil; @@ -90,7 +91,7 @@ public interface IRadioisotopeFuel */ public static ItemStack handleDecay(ItemStack stack, IRadioisotopeFuel instance) { - if (instance.getDoesDecay() && MachineConfig.doRTGsDecay) + if (instance.getDoesDecay() && VersatileConfig.rtgDecay()) { if (instance.getLifespan(stack) <= 0) return instance.getDecayItem(); @@ -132,7 +133,7 @@ public interface IRadioisotopeFuel public static void addTooltip(List tooltip, ItemStack stack, boolean showAdv) { final IRadioisotopeFuel instance = (IRadioisotopeFuel) stack.getItem(); - tooltip.add(I18nUtil.resolveKey("desc.item.rtgHeat", instance.getDoesDecay() && MachineConfig.scaleRTGPower ? getScaledPower(instance, stack) : instance.getHeat())); + tooltip.add(I18nUtil.resolveKey("desc.item.rtgHeat", instance.getDoesDecay() && VersatileConfig.scaleRTGPower() ? getScaledPower(instance, stack) : instance.getHeat())); if (instance.getDoesDecay()) { tooltip.add(I18nUtil.resolveKey("desc.item.rtgDecay", I18nUtil.resolveKey(instance.getDecayItem().getUnlocalizedName() + ".name"), instance.getDecayItem().stackSize)); diff --git a/src/main/java/com/hbm/tileentity/conductor/TileEntityFluidDuct.java b/src/main/java/com/hbm/tileentity/conductor/TileEntityFluidDuct.java index 08985c43b..c2ba5f345 100644 --- a/src/main/java/com/hbm/tileentity/conductor/TileEntityFluidDuct.java +++ b/src/main/java/com/hbm/tileentity/conductor/TileEntityFluidDuct.java @@ -58,19 +58,17 @@ public class TileEntityFluidDuct extends TileEntity implements IFluidDuct { else connections[5] = null; } - @Override - public void readFromNBT(NBTTagCompound nbt) - { + @Override + public void readFromNBT(NBTTagCompound nbt) { super.readFromNBT(nbt); - type = FluidType.getEnum(nbt.getInteger("fluid")); - } + type = Fluids.fromID(nbt.getInteger("fluid")); + } - @Override - public void writeToNBT(NBTTagCompound nbt) - { + @Override + public void writeToNBT(NBTTagCompound nbt) { super.writeToNBT(nbt); - nbt.setInteger("fluid", Arrays.asList(FluidType.values()).indexOf(type)); - } + nbt.setInteger("fluid", type.getID()); + } @Override @SideOnly(Side.CLIENT) diff --git a/src/main/java/com/hbm/tileentity/conductor/TileEntityGasDuctSolid.java b/src/main/java/com/hbm/tileentity/conductor/TileEntityGasDuctSolid.java index 244f3a84a..911254bb4 100644 --- a/src/main/java/com/hbm/tileentity/conductor/TileEntityGasDuctSolid.java +++ b/src/main/java/com/hbm/tileentity/conductor/TileEntityGasDuctSolid.java @@ -4,15 +4,15 @@ import java.util.ArrayList; import java.util.List; import com.hbm.calc.UnionOfTileEntitiesAndBooleansForFluids; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidDuct; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import net.minecraft.tileentity.TileEntity; public class TileEntityGasDuctSolid extends TileEntity implements IFluidDuct { - public FluidType type = FluidTypeTheOldOne.GAS; + public FluidType type = Fluids.GAS; public List uoteab = new ArrayList(); @Override diff --git a/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuct.java b/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuct.java index 3b8785b54..d22c6ddbb 100644 --- a/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuct.java +++ b/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuct.java @@ -4,9 +4,9 @@ import java.util.ArrayList; import java.util.List; import com.hbm.calc.UnionOfTileEntitiesAndBooleansForFluids; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidDuct; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.Library; import cpw.mods.fml.relauncher.Side; @@ -18,7 +18,7 @@ import net.minecraftforge.common.util.ForgeDirection; public class TileEntityOilDuct extends TileEntity implements IFluidDuct { public ForgeDirection[] connections = new ForgeDirection[6]; - public FluidType type = FluidTypeTheOldOne.OIL; + public FluidType type = Fluids.OIL; public List uoteab = new ArrayList(); public TileEntityOilDuct() { @@ -58,7 +58,7 @@ public class TileEntityOilDuct extends TileEntity implements IFluidDuct { public void readFromNBT(NBTTagCompound nbt) { super.readFromNBT(nbt); - type = FluidTypeTheOldOne.OIL; + type = Fluids.OIL; } @Override diff --git a/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuctSolid.java b/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuctSolid.java index d87d1d9f0..2e10791ce 100644 --- a/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuctSolid.java +++ b/src/main/java/com/hbm/tileentity/conductor/TileEntityOilDuctSolid.java @@ -4,15 +4,15 @@ import java.util.ArrayList; import java.util.List; import com.hbm.calc.UnionOfTileEntitiesAndBooleansForFluids; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidDuct; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import net.minecraft.tileentity.TileEntity; public class TileEntityOilDuctSolid extends TileEntity implements IFluidDuct { - public FluidType type = FluidTypeTheOldOne.OIL; + public FluidType type = Fluids.OIL; public List uoteab = new ArrayList(); @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityAMSBase.java b/src/main/java/com/hbm/tileentity/machine/TileEntityAMSBase.java index 5fc48e1ac..e7ec37f9b 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityAMSBase.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityAMSBase.java @@ -4,7 +4,6 @@ import java.util.ArrayList; import java.util.List; import java.util.Random; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidTank; @@ -62,10 +61,10 @@ public class TileEntityAMSBase extends TileEntity implements ISidedInventory, IF public TileEntityAMSBase() { slots = new ItemStack[16]; tanks = new FluidTank[4]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.COOLANT, 8000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.CRYOGEL, 8000, 1); - tanks[2] = new FluidTank(FluidTypeTheOldOne.DEUTERIUM, 8000, 2); - tanks[3] = new FluidTank(FluidTypeTheOldOne.TRITIUM, 8000, 3); + tanks[0] = new FluidTank(Fluids.COOLANT, 8000, 0); + tanks[1] = new FluidTank(Fluids.CRYOGEL, 8000, 1); + tanks[2] = new FluidTank(Fluids.DEUTERIUM, 8000, 2); + tanks[3] = new FluidTank(Fluids.TRITIUM, 8000, 3); } @Override @@ -393,10 +392,10 @@ public class TileEntityAMSBase extends TileEntity implements ISidedInventory, IF private int getCoolingStrength(FluidType type) { - if(type == FluidTypeTheOldOne.WATER) return 5; - if(type == FluidTypeTheOldOne.OIL) return 15; - if(type == FluidTypeTheOldOne.COOLANT) return this.heat / 250; - if(type == FluidTypeTheOldOne.CRYOGEL) return this.heat > heat/2 ? 25 : 5; + if(type == Fluids.WATER) return 5; + if(type == Fluids.OIL) return 15; + if(type == Fluids.COOLANT) return this.heat / 250; + if(type == Fluids.CRYOGEL) return this.heat > heat/2 ? 25 : 5; return 0; } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityAMSEmitter.java b/src/main/java/com/hbm/tileentity/machine/TileEntityAMSEmitter.java index 18d2bf7a6..587990625 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityAMSEmitter.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityAMSEmitter.java @@ -5,11 +5,11 @@ import java.util.List; import java.util.Random; import com.hbm.explosion.ExplosionLarge; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; @@ -52,7 +52,7 @@ public class TileEntityAMSEmitter extends TileEntity implements ISidedInventory, public TileEntityAMSEmitter() { slots = new ItemStack[4]; - tank = new FluidTank(FluidTypeTheOldOne.COOLANT, 16000, 0); + tank = new FluidTank(Fluids.COOLANT, 16000, 0); } @Override @@ -230,7 +230,7 @@ public class TileEntityAMSEmitter extends TileEntity implements ISidedInventory, warning = 1; } - if(tank.getTankType().name().equals(FluidTypeTheOldOne.CRYOGEL.name())) { + if(tank.getTankType() == Fluids.CRYOGEL) { if(tank.getFill() >= 15) { if(heat > 0) @@ -250,7 +250,7 @@ public class TileEntityAMSEmitter extends TileEntity implements ISidedInventory, } else { heat += efficiency; } - } else if(tank.getTankType().name().equals(FluidTypeTheOldOne.COOLANT.name())) { + } else if(tank.getTankType() == Fluids.COOLANT) { if(tank.getFill() >= 15) { if(heat > 0) @@ -270,7 +270,7 @@ public class TileEntityAMSEmitter extends TileEntity implements ISidedInventory, } else { heat += efficiency; } - } else if(tank.getTankType().name().equals(FluidTypeTheOldOne.WATER.name())) { + } else if(tank.getTankType() == Fluids.WATER) { if(tank.getFill() >= 45) { if(heat > 0) @@ -331,7 +331,7 @@ public class TileEntityAMSEmitter extends TileEntity implements ISidedInventory, warning = 3; } - tank.setTankType(FluidTypeTheOldOne.CRYOGEL); + tank.setTankType(Fluids.CRYOGEL); tank.setFill(tank.getMaxFill()); PacketDispatcher.wrapper.sendToAllAround(new AuxElectricityPacket(xCoord, yCoord, zCoord, power), new TargetPoint(worldObj.provider.dimensionId, xCoord, yCoord, zCoord, 50)); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityAMSLimiter.java b/src/main/java/com/hbm/tileentity/machine/TileEntityAMSLimiter.java index ccb2500fc..41b39bb8c 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityAMSLimiter.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityAMSLimiter.java @@ -6,11 +6,11 @@ import java.util.Random; import com.hbm.entity.particle.EntityGasFlameFX; import com.hbm.explosion.ExplosionLarge; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; @@ -54,7 +54,7 @@ public class TileEntityAMSLimiter extends TileEntity implements ISidedInventory, public TileEntityAMSLimiter() { slots = new ItemStack[4]; - tank = new FluidTank(FluidTypeTheOldOne.COOLANT, 8000, 0); + tank = new FluidTank(Fluids.COOLANT, 8000, 0); } @Override @@ -232,7 +232,7 @@ public class TileEntityAMSLimiter extends TileEntity implements ISidedInventory, warning = 1; } - if(tank.getTankType().name().equals(FluidTypeTheOldOne.CRYOGEL.name())) { + if(tank.getTankType() == Fluids.CRYOGEL) { if(tank.getFill() >= 5) { if(heat > 0) @@ -252,7 +252,7 @@ public class TileEntityAMSLimiter extends TileEntity implements ISidedInventory, } else { heat += efficiency; } - } else if(tank.getTankType().name().equals(FluidTypeTheOldOne.COOLANT.name())) { + } else if(tank.getTankType() == Fluids.COOLANT) { if(tank.getFill() >= 5) { if(heat > 0) @@ -272,7 +272,7 @@ public class TileEntityAMSLimiter extends TileEntity implements ISidedInventory, } else { heat += efficiency; } - } else if(tank.getTankType().name().equals(FluidTypeTheOldOne.WATER.name())) { + } else if(tank.getTankType() == Fluids.WATER) { if(tank.getFill() >= 15) { if(heat > 0) @@ -345,7 +345,7 @@ public class TileEntityAMSLimiter extends TileEntity implements ISidedInventory, warning = 3; } - tank.setTankType(FluidTypeTheOldOne.CRYOGEL); + tank.setTankType(Fluids.CRYOGEL); tank.setFill(tank.getMaxFill()); PacketDispatcher.wrapper.sendToAllAround(new AuxElectricityPacket(xCoord, yCoord, zCoord, power), new TargetPoint(worldObj.provider.dimensionId, xCoord, yCoord, zCoord, 50)); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityBarrel.java b/src/main/java/com/hbm/tileentity/machine/TileEntityBarrel.java index fedd3debb..3ac9a6832 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityBarrel.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityBarrel.java @@ -4,7 +4,6 @@ import java.util.ArrayList; import java.util.List; import com.hbm.blocks.ModBlocks; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; @@ -30,12 +29,12 @@ public class TileEntityBarrel extends TileEntityMachineBase implements IFluidAcc public TileEntityBarrel() { super(6); - tank = new FluidTank(FluidTypeTheOldOne.NONE, 0, 0); + tank = new FluidTank(Fluids.NONE, 0, 0); } public TileEntityBarrel(int capacity) { super(6); - tank = new FluidTank(FluidTypeTheOldOne.NONE, capacity, 0); + tank = new FluidTank(Fluids.NONE, capacity, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityChungus.java b/src/main/java/com/hbm/tileentity/machine/TileEntityChungus.java index c49a3928d..204568e19 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityChungus.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityChungus.java @@ -51,6 +51,13 @@ public class TileEntityChungus extends TileEntity implements IFluidAcceptor, IFl Object[] outs = MachineRecipes.getTurbineOutput(tanks[0].getTankType()); + //some funky crashfixing for unlikely cases + if(outs == null) { + tanks[0].setTankType(Fluids.STEAM); + tanks[1].setTankType(Fluids.SPENTSTEAM); + outs = MachineRecipes.getTurbineOutput(tanks[0].getTankType()); + } + tanks[1].setTankType((FluidType) outs[0]); int processMax = (int) Math.ceil(tanks[0].getFill() / (Integer)outs[2]); //the maximum amount of cycles total diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityCondenser.java b/src/main/java/com/hbm/tileentity/machine/TileEntityCondenser.java index e976a1319..c9803d48c 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityCondenser.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityCondenser.java @@ -3,16 +3,14 @@ package com.hbm.tileentity.machine; import java.util.ArrayList; import java.util.List; -import com.hbm.blocks.BlockDummyable; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.Library; import com.hbm.main.ModEventHandler; -import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.EnumSkyBlock; @@ -28,8 +26,8 @@ public class TileEntityCondenser extends TileEntity implements IFluidAcceptor, I public TileEntityCondenser() { tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.SPENTSTEAM, 100, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.WATER, 100, 1); + tanks[0] = new FluidTank(Fluids.SPENTSTEAM, 100, 0); + tanks[1] = new FluidTank(Fluids.WATER, 100, 1); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityCore.java b/src/main/java/com/hbm/tileentity/machine/TileEntityCore.java index 57d94f4f5..1a38dbc3b 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityCore.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityCore.java @@ -4,7 +4,6 @@ import java.util.List; import com.hbm.entity.effect.EntityCloudFleijaRainbow; import com.hbm.entity.logic.EntityNukeExplosionMK3; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; @@ -32,8 +31,8 @@ public class TileEntityCore extends TileEntityMachineBase { public TileEntityCore() { super(3); tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.DEUTERIUM, 128000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.TRITIUM, 128000, 1); + tanks[0] = new FluidTank(Fluids.DEUTERIUM, 128000, 0); + tanks[1] = new FluidTank(Fluids.TRITIUM, 128000, 1); } @Override @@ -99,8 +98,8 @@ public class TileEntityCore extends TileEntityMachineBase { public void networkUnpack(NBTTagCompound data) { - tanks[0].setTankType(FluidTypeTheOldOne.getEnum(data.getInteger("tank0"))); - tanks[1].setTankType(FluidTypeTheOldOne.getEnum(data.getInteger("tank1"))); + tanks[0].setTankType(Fluids.fromID(data.getInteger("tank0"))); + tanks[1].setTankType(Fluids.fromID(data.getInteger("tank1"))); tanks[0].setFill(data.getInteger("fill0")); tanks[1].setFill(data.getInteger("fill1")); field = data.getInteger("field"); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityCoreEmitter.java b/src/main/java/com/hbm/tileentity/machine/TileEntityCoreEmitter.java index edac4345b..526f7317f 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityCoreEmitter.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityCoreEmitter.java @@ -3,10 +3,10 @@ package com.hbm.tileentity.machine; import java.util.ArrayList; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.ModDamageSource; import com.hbm.tileentity.TileEntityMachineBase; @@ -39,7 +39,7 @@ public class TileEntityCoreEmitter extends TileEntityMachineBase implements IEne public TileEntityCoreEmitter() { super(0); - tank = new FluidTank(FluidTypeTheOldOne.CRYOGEL, 64000, 0); + tank = new FluidTank(Fluids.CRYOGEL, 64000, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityCoreInjector.java b/src/main/java/com/hbm/tileentity/machine/TileEntityCoreInjector.java index 0f4c48940..cd7a903ff 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityCoreInjector.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityCoreInjector.java @@ -3,10 +3,10 @@ package com.hbm.tileentity.machine; import java.util.ArrayList; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.tileentity.TileEntityMachineBase; import cpw.mods.fml.relauncher.Side; @@ -26,8 +26,8 @@ public class TileEntityCoreInjector extends TileEntityMachineBase implements IFl public TileEntityCoreInjector() { super(4); tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.DEUTERIUM, 128000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.TRITIUM, 128000, 1); + tanks[0] = new FluidTank(Fluids.DEUTERIUM, 128000, 0); + tanks[1] = new FluidTank(Fluids.TRITIUM, 128000, 1); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityCoreReceiver.java b/src/main/java/com/hbm/tileentity/machine/TileEntityCoreReceiver.java index 6ba038f2d..cc69ce342 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityCoreReceiver.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityCoreReceiver.java @@ -3,11 +3,10 @@ package com.hbm.tileentity.machine; import java.util.ArrayList; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; -import com.hbm.lib.Library; +import com.hbm.inventory.fluid.Fluids; import com.hbm.tileentity.TileEntityMachineBase; import api.hbm.block.ILaserable; @@ -29,7 +28,7 @@ public class TileEntityCoreReceiver extends TileEntityMachineBase implements IEn public TileEntityCoreReceiver() { super(0); - tank = new FluidTank(FluidTypeTheOldOne.CRYOGEL, 64000, 0); + tank = new FluidTank(Fluids.CRYOGEL, 64000, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityDeuteriumExtractor.java b/src/main/java/com/hbm/tileentity/machine/TileEntityDeuteriumExtractor.java index 65f5098e4..9be6edf80 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityDeuteriumExtractor.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityDeuteriumExtractor.java @@ -3,11 +3,11 @@ package com.hbm.tileentity.machine; import java.util.ArrayList; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; @@ -29,8 +29,8 @@ public class TileEntityDeuteriumExtractor extends TileEntityMachineBase implemen public TileEntityDeuteriumExtractor() { super(0); tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.WATER, 1000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.HEAVYWATER, 100, 0); + tanks[0] = new FluidTank(Fluids.WATER, 1000, 0); + tanks[1] = new FluidTank(Fluids.HEAVYWATER, 100, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityDeuteriumTower.java b/src/main/java/com/hbm/tileentity/machine/TileEntityDeuteriumTower.java index 1a82ecbe3..98c2dc343 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityDeuteriumTower.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityDeuteriumTower.java @@ -1,8 +1,9 @@ package com.hbm.tileentity.machine; import com.hbm.blocks.BlockDummyable; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.FluidTank; +import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -15,11 +16,11 @@ public class TileEntityDeuteriumTower extends TileEntityDeuteriumExtractor { public TileEntityDeuteriumTower() { tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.WATER, 50000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.HEAVYWATER, 5000, 0); + tanks[0] = new FluidTank(Fluids.WATER, 50000, 0); + tanks[1] = new FluidTank(Fluids.HEAVYWATER, 5000, 0); } - public void fillFluidInit(FluidTypeTheOldOne type) { + public void fillFluidInit(FluidType type) { int offsetX = 0; int offsetZ = 0; diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityFWatzCore.java b/src/main/java/com/hbm/tileentity/machine/TileEntityFWatzCore.java index 7df6da5da..949fc1065 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityFWatzCore.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityFWatzCore.java @@ -4,12 +4,12 @@ import java.util.ArrayList; import java.util.List; import java.util.Random; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IReactor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; @@ -44,9 +44,9 @@ public class TileEntityFWatzCore extends TileEntity implements ISidedInventory, public TileEntityFWatzCore() { slots = new ItemStack[7]; tanks = new FluidTank[3]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.COOLANT, 128000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.AMAT, 64000, 1); - tanks[2] = new FluidTank(FluidTypeTheOldOne.ASCHRAB, 64000, 2); + tanks[0] = new FluidTank(Fluids.COOLANT, 128000, 0); + tanks[1] = new FluidTank(Fluids.AMAT, 64000, 1); + tanks[2] = new FluidTank(Fluids.ASCHRAB, 64000, 2); } @Override public int getSizeInventory() { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityFusionMultiblock.java b/src/main/java/com/hbm/tileentity/machine/TileEntityFusionMultiblock.java index ec9eabdfe..663d3c497 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityFusionMultiblock.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityFusionMultiblock.java @@ -4,12 +4,12 @@ import java.util.ArrayList; import java.util.List; import com.hbm.blocks.ModBlocks; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IReactor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; @@ -38,9 +38,9 @@ public class TileEntityFusionMultiblock extends TileEntity implements ISidedInve public TileEntityFusionMultiblock() { slots = new ItemStack[12]; tanks = new FluidTank[3]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.WATER, 128000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.DEUTERIUM, 64000, 1); - tanks[2] = new FluidTank(FluidTypeTheOldOne.TRITIUM, 64000, 2); + tanks[0] = new FluidTank(Fluids.WATER, 128000, 0); + tanks[1] = new FluidTank(Fluids.DEUTERIUM, 64000, 1); + tanks[2] = new FluidTank(Fluids.TRITIUM, 64000, 2); } @Override public int getSizeInventory() { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityITER.java b/src/main/java/com/hbm/tileentity/machine/TileEntityITER.java index 07a48b9db..cf4dd9187 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityITER.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityITER.java @@ -5,11 +5,11 @@ import java.util.List; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.machine.MachineITER; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.BreederRecipes; import com.hbm.inventory.recipes.FusionRecipes; import com.hbm.inventory.recipes.BreederRecipes.BreederRecipe; @@ -52,9 +52,9 @@ public class TileEntityITER extends TileEntityMachineBase implements IEnergyUser public TileEntityITER() { super(5); tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.WATER, 1280000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.ULTRAHOTSTEAM, 128000, 1); - plasma = new FluidTank(FluidTypeTheOldOne.PLASMA_DT, 16000, 2); + tanks[0] = new FluidTank(Fluids.WATER, 1280000, 0); + tanks[1] = new FluidTank(Fluids.ULTRAHOTSTEAM, 128000, 1); + plasma = new FluidTank(Fluids.PLASMA_DT, 16000, 2); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineBattery.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineBattery.java index 0d2340897..b0258f0b2 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineBattery.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineBattery.java @@ -1,8 +1,5 @@ package com.hbm.tileentity.machine; -import java.util.ArrayList; -import java.util.List; - import com.hbm.blocks.machine.MachineBattery; import com.hbm.lib.Library; import com.hbm.tileentity.TileEntityMachineBase; @@ -73,9 +70,6 @@ public class TileEntityMachineBattery extends TileEntityMachineBase implements I switch(i) { case 0: - if(stack.getItem() instanceof IBatteryItem) - return true; - break; case 1: if(stack.getItem() instanceof IBatteryItem) return true; @@ -162,15 +156,17 @@ public class TileEntityMachineBattery extends TileEntityMachineBase implements I this.maxPower = ((MachineBattery)worldObj.getBlock(xCoord, yCoord, zCoord)).maxPower; + power = Library.chargeTEFromItems(slots, 0, power, maxPower); + power = Library.chargeItemsFromTE(slots, 1, power, maxPower); + + long prevPower = this.power; + ////////////////////////////////////////////////////////////////////// this.transmitPower(); ////////////////////////////////////////////////////////////////////// - power = Library.chargeTEFromItems(slots, 0, power, maxPower); - power = Library.chargeItemsFromTE(slots, 1, power, maxPower); - NBTTagCompound nbt = new NBTTagCompound(); - nbt.setLong("power", power); + nbt.setLong("power", (power + prevPower) / 2); nbt.setLong("maxPower", maxPower); nbt.setShort("redLow", redLow); nbt.setShort("redHigh", redHigh); @@ -218,7 +214,7 @@ public class TileEntityMachineBattery extends TileEntityMachineBase implements I IEnergyConductor con = (IEnergyConductor) te; if(con.getPowerNet() != null) { - if(mode == 1 || mode == 2) { + if(mode == 2 || mode == 3) { if(con.getPowerNet().isSubscribed(this)) { con.getPowerNet().unsubscribe(this); } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineBoiler.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineBoiler.java index 4844691fb..9565a7c39 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineBoiler.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineBoiler.java @@ -5,20 +5,18 @@ import java.util.List; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.machine.MachineBoiler; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.MachineRecipes; import com.hbm.lib.Library; import com.hbm.packet.AuxGaugePacket; import com.hbm.packet.PacketDispatcher; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.ISidedInventory; import net.minecraft.item.ItemStack; @@ -26,7 +24,6 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntityFurnace; -import net.minecraft.util.AxisAlignedBB; public class TileEntityMachineBoiler extends TileEntity implements ISidedInventory, IFluidContainer, IFluidAcceptor, IFluidSource { @@ -48,8 +45,8 @@ public class TileEntityMachineBoiler extends TileEntity implements ISidedInvento public TileEntityMachineBoiler() { slots = new ItemStack[7]; tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.WATER, 8000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.STEAM, 8000, 1); + tanks[0] = new FluidTank(Fluids.WATER, 8000, 0); + tanks[1] = new FluidTank(Fluids.STEAM, 8000, 1); } @Override @@ -236,9 +233,9 @@ public class TileEntityMachineBoiler extends TileEntity implements ISidedInvento Object[] outs = MachineRecipes.getBoilerOutput(tanks[0].getTankType()); if(outs == null) { - tanks[1].setTankType(FluidTypeTheOldOne.NONE); + tanks[1].setTankType(Fluids.NONE); } else { - tanks[1].setTankType((FluidTypeTheOldOne) outs[0]); + tanks[1].setTankType((FluidType) outs[0]); } tanks[1].unloadTank(5, 6, slots); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineBoilerElectric.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineBoilerElectric.java index b2159af26..2465d1cc1 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineBoilerElectric.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineBoilerElectric.java @@ -5,12 +5,12 @@ import java.util.List; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.machine.MachineBoiler; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.MachineRecipes; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; @@ -50,8 +50,8 @@ public class TileEntityMachineBoilerElectric extends TileEntity implements ISide public TileEntityMachineBoilerElectric() { slots = new ItemStack[7]; tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.WATER, 16000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.STEAM, 16000, 1); + tanks[0] = new FluidTank(Fluids.WATER, 16000, 0); + tanks[1] = new FluidTank(Fluids.STEAM, 16000, 1); } @Override @@ -246,9 +246,9 @@ public class TileEntityMachineBoilerElectric extends TileEntity implements ISide Object[] outs = MachineRecipes.getBoilerOutput(tanks[0].getTankType()); if(outs == null) { - tanks[1].setTankType(FluidTypeTheOldOne.NONE); + tanks[1].setTankType(Fluids.NONE); } else { - tanks[1].setTankType((FluidTypeTheOldOne) outs[0]); + tanks[1].setTankType((FluidType) outs[0]); } tanks[1].unloadTank(5, 6, slots); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCMBFactory.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCMBFactory.java index ce596a277..c9488e98b 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCMBFactory.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCMBFactory.java @@ -3,11 +3,11 @@ package com.hbm.tileentity.machine; import java.util.ArrayList; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; @@ -44,7 +44,7 @@ public class TileEntityMachineCMBFactory extends TileEntity implements ISidedInv public TileEntityMachineCMBFactory() { slots = new ItemStack[6]; - tank = new FluidTank(FluidTypeTheOldOne.WATZ, 8000, 0); + tank = new FluidTank(Fluids.WATZ, 8000, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplant.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplant.java index 64b82d077..04b842e29 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplant.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplant.java @@ -4,7 +4,6 @@ import java.util.ArrayList; import java.util.List; import java.util.Random; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; @@ -12,6 +11,7 @@ import com.hbm.inventory.FluidStack; import com.hbm.inventory.FluidTank; import com.hbm.inventory.UpgradeManager; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.MachineRecipes; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemChemistryTemplate; @@ -63,10 +63,10 @@ public class TileEntityMachineChemplant extends TileEntity implements ISidedInve public TileEntityMachineChemplant() { slots = new ItemStack[21]; tanks = new FluidTank[4]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.NONE, 24000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.NONE, 24000, 1); - tanks[2] = new FluidTank(FluidTypeTheOldOne.NONE, 24000, 2); - tanks[3] = new FluidTank(FluidTypeTheOldOne.NONE, 24000, 3); + tanks[0] = new FluidTank(Fluids.NONE, 24000, 0); + tanks[1] = new FluidTank(Fluids.NONE, 24000, 1); + tanks[2] = new FluidTank(Fluids.NONE, 24000, 2); + tanks[3] = new FluidTank(Fluids.NONE, 24000, 3); } @Override @@ -541,10 +541,10 @@ public class TileEntityMachineChemplant extends TileEntity implements ISidedInve FluidStack[] inputs = MachineRecipes.getFluidInputFromTempate(slots[4]); FluidStack[] outputs = MachineRecipes.getFluidOutputFromTempate(slots[4]); - tanks[0].setTankType(inputs[0] == null ? FluidTypeTheOldOne.NONE : inputs[0].type); - tanks[1].setTankType(inputs[1] == null ? FluidTypeTheOldOne.NONE : inputs[1].type); - tanks[2].setTankType(outputs[0] == null ? FluidTypeTheOldOne.NONE : outputs[0].type); - tanks[3].setTankType(outputs[1] == null ? FluidTypeTheOldOne.NONE : outputs[1].type); + tanks[0].setTankType(inputs[0] == null ? Fluids.NONE : inputs[0].type); + tanks[1].setTankType(inputs[1] == null ? Fluids.NONE : inputs[1].type); + tanks[2].setTankType(outputs[0] == null ? Fluids.NONE : outputs[0].type); + tanks[3].setTankType(outputs[1] == null ? Fluids.NONE : outputs[1].type); } } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCoal.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCoal.java index 1af2db7bc..2d377ba14 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCoal.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCoal.java @@ -14,12 +14,12 @@ import java.util.ArrayList; import java.util.List; import com.hbm.blocks.machine.MachineCoal; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidContainerRegistry; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; @@ -47,7 +47,7 @@ public class TileEntityMachineCoal extends TileEntity implements ISidedInventory public TileEntityMachineCoal() { slots = new ItemStack[4]; - tank = new FluidTank(FluidTypeTheOldOne.WATER, 5000, 0); + tank = new FluidTank(Fluids.WATER, 5000, 0); } @Override @@ -119,7 +119,7 @@ public class TileEntityMachineCoal extends TileEntity implements ISidedInventory @Override public boolean isItemValidForSlot(int i, ItemStack stack) { if(i == 0) - if(FluidContainerRegistry.getFluidContent(stack, FluidTypeTheOldOne.WATER) > 0) + if(FluidContainerRegistry.getFluidContent(stack, Fluids.WATER) > 0) return true; if(i == 2) if(stack.getItem() instanceof IBatteryItem) diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCrystallizer.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCrystallizer.java index 1c64db698..d3d78700f 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCrystallizer.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCrystallizer.java @@ -4,10 +4,10 @@ import java.util.ArrayList; import java.util.List; import com.hbm.blocks.BlockDummyable; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.CrystallizerRecipes; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemMachineUpgrade; @@ -31,7 +31,7 @@ public class TileEntityMachineCrystallizer extends TileEntityMachineBase impleme public static final int demand = 1000; public static final int acidRequired = 500; public short progress; - public static final short duration = 600; + public short duration = 600; public float angle; public float prevAngle; @@ -40,7 +40,7 @@ public class TileEntityMachineCrystallizer extends TileEntityMachineBase impleme public TileEntityMachineCrystallizer() { super(7); - tank = new FluidTank(FluidTypeTheOldOne.ACID, 8000, 0); + tank = new FluidTank(Fluids.ACID, 8000, 0); } @Override @@ -82,6 +82,7 @@ public class TileEntityMachineCrystallizer extends TileEntityMachineBase impleme NBTTagCompound data = new NBTTagCompound(); data.setShort("progress", progress); + data.setShort("duration", getDuration()); data.setLong("power", power); this.networkPack(data, 25); } else { @@ -118,6 +119,7 @@ public class TileEntityMachineCrystallizer extends TileEntityMachineBase impleme this.power = data.getLong("power"); this.progress = data.getShort("progress"); + this.duration = data.getShort("duration"); } private void processItem() { @@ -201,7 +203,7 @@ public class TileEntityMachineCrystallizer extends TileEntityMachineBase impleme return Math.min(chance, 0.15F); } - public int getDuration() { + public short getDuration() { float durationMod = 1; @@ -215,7 +217,7 @@ public class TileEntityMachineCrystallizer extends TileEntityMachineBase impleme durationMod -= 0.75F; } - return (int) (duration * Math.max(durationMod, 0.25F)); + return (short) (600 * Math.max(durationMod, 0.25F)); } public int getPowerRequired() { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCyclotron.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCyclotron.java index 62be4306b..98ece5d5e 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCyclotron.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineCyclotron.java @@ -10,11 +10,11 @@ import com.hbm.entity.logic.EntityBalefire; import com.hbm.entity.logic.EntityNukeExplosionMK4; import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionThermo; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.CyclotronRecipes; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemMachineUpgrade; @@ -56,8 +56,8 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements public TileEntityMachineCyclotron() { super(16); - coolant = new FluidTank(FluidTypeTheOldOne.COOLANT, 32000, 0); - amat = new FluidTank(FluidTypeTheOldOne.AMAT, 8000, 1); + coolant = new FluidTank(Fluids.COOLANT, 32000, 0); + amat = new FluidTank(Fluids.AMAT, 8000, 1); } @Override @@ -361,9 +361,9 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements @Override public void setFluidFill(int fill, FluidType type) { - if(type == FluidTypeTheOldOne.COOLANT) + if(type == Fluids.COOLANT) coolant.setFill(fill); - else if(type == FluidTypeTheOldOne.AMAT) + else if(type == Fluids.AMAT) amat.setFill(fill); } @@ -382,9 +382,9 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements @Override public int getFluidFill(FluidType type) { - if(type == FluidTypeTheOldOne.COOLANT) + if(type == Fluids.COOLANT) return coolant.getFill(); - else if(type == FluidTypeTheOldOne.AMAT) + else if(type == Fluids.AMAT) return amat.getFill(); return 0; @@ -427,7 +427,7 @@ public class TileEntityMachineCyclotron extends TileEntityMachineBase implements @Override public int getMaxFluidFill(FluidType type) { - if(type == FluidTypeTheOldOne.COOLANT) + if(type == Fluids.COOLANT) return coolant.getMaxFill(); return 0; diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineDiesel.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineDiesel.java index 381dbb94c..5859e6467 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineDiesel.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineDiesel.java @@ -4,12 +4,12 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidContainerRegistry; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.lib.Library; import com.hbm.tileentity.TileEntityMachineBase; @@ -34,7 +34,7 @@ public class TileEntityMachineDiesel extends TileEntityMachineBase implements IE public TileEntityMachineDiesel() { super(5); - tank = new FluidTank(FluidTypeTheOldOne.DIESEL, 16000, 0); + tank = new FluidTank(Fluids.DIESEL, 16000, 0); } @Override @@ -107,7 +107,7 @@ public class TileEntityMachineDiesel extends TileEntityMachineBase implements IE tank.updateTank(xCoord, yCoord, zCoord, worldObj.provider.dimensionId); FluidType type = tank.getTankType(); - if(type.name().equals(FluidTypeTheOldOne.NITAN.name())) + if(type == Fluids.NITAN) powerCap = maxPower * 10; else powerCap = maxPower; @@ -137,14 +137,14 @@ public class TileEntityMachineDiesel extends TileEntityMachineBase implements IE public static final HashMap fuels = new HashMap(); static { - fuels.put(FluidTypeTheOldOne.HYDROGEN, 10); - fuels.put(FluidTypeTheOldOne.DIESEL, 500); - fuels.put(FluidTypeTheOldOne.PETROIL, 300); - fuels.put(FluidTypeTheOldOne.BIOFUEL, 400); - fuels.put(FluidTypeTheOldOne.GASOLINE, 1500); - fuels.put(FluidTypeTheOldOne.NITAN, 5000); - fuels.put(FluidTypeTheOldOne.LPG, 450); - fuels.put(FluidTypeTheOldOne.ETHANOL, 200); + fuels.put(Fluids.HYDROGEN, 10); + fuels.put(Fluids.DIESEL, 500); + fuels.put(Fluids.PETROIL, 300); + fuels.put(Fluids.BIOFUEL, 400); + fuels.put(Fluids.GASOLINE, 1500); + fuels.put(Fluids.NITAN, 5000); + fuels.put(Fluids.LPG, 450); + fuels.put(Fluids.ETHANOL, 200); } public int getHEFromFuel() { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFENSU.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFENSU.java index c62c4bd95..265f6253d 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFENSU.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFENSU.java @@ -79,7 +79,7 @@ public class TileEntityMachineFENSU extends TileEntityMachineBattery { IEnergyConductor con = (IEnergyConductor) te; if(con.getPowerNet() != null) { - if(mode == 1 || mode == 2) { + if(mode == 2 || mode == 3) { if(con.getPowerNet().isSubscribed(this)) { con.getPowerNet().unsubscribe(this); } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFluidTank.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFluidTank.java index 3318ecfcf..29fc72037 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFluidTank.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFluidTank.java @@ -4,13 +4,13 @@ import java.util.ArrayList; import java.util.List; import com.hbm.blocks.ModBlocks; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.FluidType.FluidTrait; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.Library; import com.hbm.tileentity.TileEntityMachineBase; @@ -31,7 +31,7 @@ public class TileEntityMachineFluidTank extends TileEntityMachineBase implements public TileEntityMachineFluidTank() { super(6); - tank = new FluidTank(FluidTypeTheOldOne.NONE, 256000, 0); + tank = new FluidTank(Fluids.NONE, 256000, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineGenerator.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineGenerator.java index e6d9f682d..88b0cd5d7 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineGenerator.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineGenerator.java @@ -6,11 +6,11 @@ import java.util.Random; import com.hbm.blocks.machine.MachineGenerator; import com.hbm.explosion.ExplosionNukeGeneric; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemFuelRod; import com.hbm.lib.Library; @@ -48,8 +48,8 @@ public class TileEntityMachineGenerator extends TileEntity implements ISidedInve public TileEntityMachineGenerator() { slots = new ItemStack[14]; tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.WATER, 32000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.COOLANT, 16000, 1); + tanks[0] = new FluidTank(Fluids.WATER, 32000, 0); + tanks[1] = new FluidTank(Fluids.COOLANT, 16000, 1); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineIGenerator.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineIGenerator.java index 4bac885db..09b8a3490 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineIGenerator.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineIGenerator.java @@ -5,10 +5,10 @@ import java.util.HashMap; import java.util.List; import com.hbm.blocks.BlockDummyable; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemRTGPellet; import com.hbm.lib.Library; @@ -47,9 +47,9 @@ public class TileEntityMachineIGenerator extends TileEntityMachineBase implement public TileEntityMachineIGenerator() { super(21); tanks = new FluidTank[3]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.WATER, 16000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.HEATINGOIL, 16000, 1); - tanks[2] = new FluidTank(FluidTypeTheOldOne.LUBRICANT, 4000, 2); + tanks[0] = new FluidTank(Fluids.WATER, 16000, 0); + tanks[1] = new FluidTank(Fluids.HEATINGOIL, 16000, 1); + tanks[2] = new FluidTank(Fluids.LUBRICANT, 4000, 2); } @Override @@ -186,18 +186,18 @@ public class TileEntityMachineIGenerator extends TileEntityMachineBase implement public static final HashMap fuels = new HashMap(); static { - fuels.put(FluidTypeTheOldOne.SMEAR, 50); - fuels.put(FluidTypeTheOldOne.HEATINGOIL, 75); - fuels.put(FluidTypeTheOldOne.HYDROGEN, 5); - fuels.put(FluidTypeTheOldOne.DIESEL, 225); - fuels.put(FluidTypeTheOldOne.KEROSENE, 300); - fuels.put(FluidTypeTheOldOne.RECLAIMED, 100); - fuels.put(FluidTypeTheOldOne.PETROIL, 125); - fuels.put(FluidTypeTheOldOne.BIOFUEL, 200); - fuels.put(FluidTypeTheOldOne.GASOLINE, 700); - fuels.put(FluidTypeTheOldOne.NITAN, 2500); - fuels.put(FluidTypeTheOldOne.LPG, 200); - fuels.put(FluidTypeTheOldOne.ETHANOL, 75); + fuels.put(Fluids.SMEAR, 50); + fuels.put(Fluids.HEATINGOIL, 75); + fuels.put(Fluids.HYDROGEN, 5); + fuels.put(Fluids.DIESEL, 225); + fuels.put(Fluids.KEROSENE, 300); + fuels.put(Fluids.RECLAIMED, 100); + fuels.put(Fluids.PETROIL, 125); + fuels.put(Fluids.BIOFUEL, 200); + fuels.put(Fluids.GASOLINE, 700); + fuels.put(Fluids.NITAN, 2500); + fuels.put(Fluids.LPG, 200); + fuels.put(Fluids.ETHANOL, 75); } public int getPowerFromFuel() { @@ -214,9 +214,9 @@ public class TileEntityMachineIGenerator extends TileEntityMachineBase implement @Override public void setFluidFill(int fill, FluidType type) { - if(type == FluidTypeTheOldOne.WATER) + if(type == Fluids.WATER) tanks[0].setFill(fill); - else if(type == FluidTypeTheOldOne.LUBRICANT) + else if(type == Fluids.LUBRICANT) tanks[2].setFill(fill); else if(tanks[1].getTankType() == type) tanks[1].setFill(fill); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineInserter.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineInserter.java index f51d66855..691096c84 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineInserter.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineInserter.java @@ -3,12 +3,12 @@ package com.hbm.tileentity.machine; import java.util.ArrayList; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.lib.Library; @@ -42,9 +42,9 @@ public class TileEntityMachineInserter extends TileEntity implements ISidedInven public TileEntityMachineInserter() { slots = new ItemStack[9]; tanks = new FluidTank[3]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.NONE, 32000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.NONE, 32000, 0); - tanks[2] = new FluidTank(FluidTypeTheOldOne.NONE, 32000, 0); + tanks[0] = new FluidTank(Fluids.NONE, 32000, 0); + tanks[1] = new FluidTank(Fluids.NONE, 32000, 0); + tanks[2] = new FluidTank(Fluids.NONE, 32000, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineLargeTurbine.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineLargeTurbine.java index 6bbe7b20c..acc456cd5 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineLargeTurbine.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineLargeTurbine.java @@ -4,12 +4,12 @@ import java.util.ArrayList; import java.util.List; import com.hbm.blocks.BlockDummyable; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.MachineRecipes; import com.hbm.lib.Library; import com.hbm.tileentity.TileEntityMachineBase; @@ -38,8 +38,8 @@ public class TileEntityMachineLargeTurbine extends TileEntityMachineBase impleme super(7); tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.STEAM, 512000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.SPENTSTEAM, 10240000, 1); + tanks[0] = new FluidTank(Fluids.STEAM, 512000, 0); + tanks[1] = new FluidTank(Fluids.SPENTSTEAM, 10240000, 1); } @Override @@ -72,9 +72,9 @@ public class TileEntityMachineLargeTurbine extends TileEntityMachineBase impleme Object[] outs = MachineRecipes.getTurbineOutput(tanks[0].getTankType()); if(outs == null) { - tanks[1].setTankType(FluidTypeTheOldOne.NONE); + tanks[1].setTankType(Fluids.NONE); } else { - tanks[1].setTankType((FluidTypeTheOldOne) outs[0]); + tanks[1].setTankType((FluidType) outs[0]); int processMax = (int) Math.ceil(Math.ceil(tanks[0].getFill() / 10F) / (Integer)outs[2]); //the maximum amount of cycles based on the 10% cap int processSteam = tanks[0].getFill() / (Integer)outs[2]; //the maximum amount of cycles depending on steam diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineMiningLaser.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineMiningLaser.java index ac56d6409..b75e2869d 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineMiningLaser.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineMiningLaser.java @@ -6,12 +6,12 @@ import java.util.Set; import com.google.common.collect.Sets; import com.hbm.blocks.ModBlocks; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.UpgradeManager; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.CentrifugeRecipes; import com.hbm.inventory.recipes.CrystallizerRecipes; import com.hbm.inventory.recipes.ShredderRecipes; @@ -67,7 +67,7 @@ public class TileEntityMachineMiningLaser extends TileEntityMachineBase implemen //slots 1 - 8: upgrades //slots 9 - 29: output super(30); - tank = new FluidTank(FluidTypeTheOldOne.OIL, 64000, 0); + tank = new FluidTank(Fluids.OIL, 64000, 0); } @Override @@ -348,7 +348,7 @@ public class TileEntityMachineMiningLaser extends TileEntityMachineBase implemen if(item.getEntityItem().getItem() == Item.getItemFromBlock(ModBlocks.ore_oil)) { - tank.setTankType(FluidTypeTheOldOne.OIL); //just to be sure + tank.setTankType(Fluids.OIL); //just to be sure tank.setFill(tank.getFill() + 500); if(tank.getFill() > tank.getMaxFill()) @@ -606,7 +606,7 @@ public class TileEntityMachineMiningLaser extends TileEntityMachineBase implemen @Override public void setFluidFill(int fill, FluidType type) { - if(type == FluidTypeTheOldOne.OIL) + if(type == Fluids.OIL) tank.setFill(fill); } @@ -622,7 +622,7 @@ public class TileEntityMachineMiningLaser extends TileEntityMachineBase implemen @Override public int getFluidFill(FluidType type) { - if(type == FluidTypeTheOldOne.OIL) + if(type == Fluids.OIL) return tank.getFill(); return 0; } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineOrbus.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineOrbus.java index 561c2b10e..28cb51c2e 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineOrbus.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineOrbus.java @@ -1,7 +1,6 @@ package com.hbm.tileentity.machine; import com.hbm.blocks.BlockDummyable; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.fluid.FluidType; import cpw.mods.fml.relauncher.Side; diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePlasmaHeater.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePlasmaHeater.java index c6d4a027e..9c2632486 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePlasmaHeater.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePlasmaHeater.java @@ -6,10 +6,10 @@ import java.util.List; import com.hbm.blocks.BlockDummyable; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.machine.MachineITER; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.Library; import com.hbm.tileentity.TileEntityMachineBase; @@ -32,9 +32,9 @@ public class TileEntityMachinePlasmaHeater extends TileEntityMachineBase impleme public TileEntityMachinePlasmaHeater() { super(5); tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.DEUTERIUM, 16000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.TRITIUM, 16000, 1); - plasma = new FluidTank(FluidTypeTheOldOne.PLASMA_DT, 64000, 2); + tanks[0] = new FluidTank(Fluids.DEUTERIUM, 16000, 0); + tanks[1] = new FluidTank(Fluids.TRITIUM, 16000, 1); + plasma = new FluidTank(Fluids.PLASMA_DT, 64000, 2); } @Override @@ -65,7 +65,7 @@ public class TileEntityMachinePlasmaHeater extends TileEntityMachineBase impleme convert = (int) Math.min(convert, power / powerReq); convert = Math.max(0, convert); - if(convert > 0 && plasma.getTankType() != FluidTypeTheOldOne.NONE) { + if(convert > 0 && plasma.getTankType() != Fluids.NONE) { tanks[0].setFill(tanks[0].getFill() - convert); tanks[1].setFill(tanks[1].getFill() - convert); @@ -91,7 +91,7 @@ public class TileEntityMachinePlasmaHeater extends TileEntityMachineBase impleme if(te instanceof TileEntityITER) { TileEntityITER iter = (TileEntityITER)te; - if(iter.plasma.getFill() == 0 && this.plasma.getTankType() != FluidTypeTheOldOne.NONE) { + if(iter.plasma.getFill() == 0 && this.plasma.getTankType() != Fluids.NONE) { iter.plasma.setTankType(this.plasma.getTankType()); } @@ -150,32 +150,32 @@ public class TileEntityMachinePlasmaHeater extends TileEntityMachineBase impleme List types = new ArrayList() {{ add(tanks[0].getTankType()); add(tanks[1].getTankType()); }}; - if(types.contains(FluidTypeTheOldOne.DEUTERIUM) && types.contains(FluidTypeTheOldOne.TRITIUM)) { - plasma.setTankType(FluidTypeTheOldOne.PLASMA_DT); + if(types.contains(Fluids.DEUTERIUM) && types.contains(Fluids.TRITIUM)) { + plasma.setTankType(Fluids.PLASMA_DT); return; } - if(types.contains(FluidTypeTheOldOne.DEUTERIUM) && types.contains(FluidTypeTheOldOne.HELIUM3)) { - plasma.setTankType(FluidTypeTheOldOne.PLASMA_DH3); + if(types.contains(Fluids.DEUTERIUM) && types.contains(Fluids.HELIUM3)) { + plasma.setTankType(Fluids.PLASMA_DH3); return; } - if(types.contains(FluidTypeTheOldOne.DEUTERIUM) && types.contains(FluidTypeTheOldOne.HYDROGEN)) { - plasma.setTankType(FluidTypeTheOldOne.PLASMA_HD); + if(types.contains(Fluids.DEUTERIUM) && types.contains(Fluids.HYDROGEN)) { + plasma.setTankType(Fluids.PLASMA_HD); return; } - if(types.contains(FluidTypeTheOldOne.HYDROGEN) && types.contains(FluidTypeTheOldOne.TRITIUM)) { - plasma.setTankType(FluidTypeTheOldOne.PLASMA_HT); + if(types.contains(Fluids.HYDROGEN) && types.contains(Fluids.TRITIUM)) { + plasma.setTankType(Fluids.PLASMA_HT); return; } - if(types.contains(FluidTypeTheOldOne.XENON) && types.contains(FluidTypeTheOldOne.MERCURY)) { - plasma.setTankType(FluidTypeTheOldOne.PLASMA_XM); + if(types.contains(Fluids.XENON) && types.contains(Fluids.MERCURY)) { + plasma.setTankType(Fluids.PLASMA_XM); return; } - if(types.contains(FluidTypeTheOldOne.BALEFIRE) && types.contains(FluidTypeTheOldOne.AMAT)) { - plasma.setTankType(FluidTypeTheOldOne.PLASMA_BF); + if(types.contains(Fluids.BALEFIRE) && types.contains(Fluids.AMAT)) { + plasma.setTankType(Fluids.PLASMA_BF); return; } - plasma.setTankType(FluidTypeTheOldOne.NONE); + plasma.setTankType(Fluids.NONE); } public long getPowerScaled(int i) { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePuF6Tank.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePuF6Tank.java index f5077e96f..144dca889 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePuF6Tank.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachinePuF6Tank.java @@ -3,10 +3,10 @@ package com.hbm.tileentity.machine; import java.util.ArrayList; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import cpw.mods.fml.relauncher.Side; @@ -33,7 +33,7 @@ public class TileEntityMachinePuF6Tank extends TileEntity implements ISidedInven public TileEntityMachinePuF6Tank() { slots = new ItemStack[4]; - tank = new FluidTank(FluidTypeTheOldOne.PUF6, 64000, 0); + tank = new FluidTank(Fluids.PUF6, 64000, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineReactorLarge.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineReactorLarge.java index 8223f2101..0ab6c50ce 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineReactorLarge.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineReactorLarge.java @@ -7,7 +7,6 @@ import java.util.List; import com.hbm.blocks.ModBlocks; import com.hbm.config.MobConfig; import com.hbm.explosion.ExplosionNukeGeneric; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.handler.radiation.ChunkRadiationManager; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; @@ -70,9 +69,9 @@ public class TileEntityMachineReactorLarge extends TileEntity public TileEntityMachineReactorLarge() { slots = new ItemStack[8]; tanks = new FluidTank[3]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.WATER, 128000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.COOLANT, 64000, 1); - tanks[2] = new FluidTank(FluidTypeTheOldOne.STEAM, 32000, 2); + tanks[0] = new FluidTank(Fluids.WATER, 128000, 0); + tanks[1] = new FluidTank(Fluids.COOLANT, 64000, 1); + tanks[2] = new FluidTank(Fluids.STEAM, 32000, 2); type = ReactorFuelType.URANIUM; } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSeleniumEngine.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSeleniumEngine.java index bb4ba65e0..91ff31afb 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSeleniumEngine.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSeleniumEngine.java @@ -4,12 +4,12 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidContainerRegistry; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; @@ -46,7 +46,7 @@ public class TileEntityMachineSeleniumEngine extends TileEntity implements ISide public TileEntityMachineSeleniumEngine() { slots = new ItemStack[14]; - tank = new FluidTank(FluidTypeTheOldOne.DIESEL, 16000, 0); + tank = new FluidTank(Fluids.DIESEL, 16000, 0); } @Override @@ -225,7 +225,7 @@ public class TileEntityMachineSeleniumEngine extends TileEntity implements ISide tank.updateTank(xCoord, yCoord, zCoord, worldObj.provider.dimensionId); FluidType type = tank.getTankType(); - if(type.name().equals(FluidTypeTheOldOne.NITAN.name())) + if(type == Fluids.NITAN) powerCap = maxPower * 10; else powerCap = maxPower; @@ -260,18 +260,18 @@ public class TileEntityMachineSeleniumEngine extends TileEntity implements ISide public static final HashMap fuels = new HashMap(); static { - fuels.put(FluidTypeTheOldOne.SMEAR, 50); - fuels.put(FluidTypeTheOldOne.HEATINGOIL, 75); - fuels.put(FluidTypeTheOldOne.HYDROGEN, 5); - fuels.put(FluidTypeTheOldOne.DIESEL, 225); - fuels.put(FluidTypeTheOldOne.KEROSENE, 300); - fuels.put(FluidTypeTheOldOne.RECLAIMED, 100); - fuels.put(FluidTypeTheOldOne.PETROIL, 125); - fuels.put(FluidTypeTheOldOne.BIOFUEL, 200); - fuels.put(FluidTypeTheOldOne.GASOLINE, 700); - fuels.put(FluidTypeTheOldOne.NITAN, 2500); - fuels.put(FluidTypeTheOldOne.LPG, 200); - fuels.put(FluidTypeTheOldOne.ETHANOL, 75); + fuels.put(Fluids.SMEAR, 50); + fuels.put(Fluids.HEATINGOIL, 75); + fuels.put(Fluids.HYDROGEN, 5); + fuels.put(Fluids.DIESEL, 225); + fuels.put(Fluids.KEROSENE, 300); + fuels.put(Fluids.RECLAIMED, 100); + fuels.put(Fluids.PETROIL, 125); + fuels.put(Fluids.BIOFUEL, 200); + fuels.put(Fluids.GASOLINE, 700); + fuels.put(Fluids.NITAN, 2500); + fuels.put(Fluids.LPG, 200); + fuels.put(Fluids.ETHANOL, 75); } public int getHEFromFuel() { diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineTurbine.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineTurbine.java index f9ef4f6c9..d442c8996 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineTurbine.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineTurbine.java @@ -3,12 +3,12 @@ package com.hbm.tileentity.machine; import java.util.ArrayList; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.MachineRecipes; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; @@ -44,8 +44,8 @@ public class TileEntityMachineTurbine extends TileEntity implements ISidedInvent public TileEntityMachineTurbine() { slots = new ItemStack[7]; tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.STEAM, 64000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.SPENTSTEAM, 128000, 1); + tanks[0] = new FluidTank(Fluids.STEAM, 64000, 0); + tanks[1] = new FluidTank(Fluids.SPENTSTEAM, 128000, 1); } @Override @@ -233,9 +233,9 @@ public class TileEntityMachineTurbine extends TileEntity implements ISidedInvent Object[] outs = MachineRecipes.getTurbineOutput(tanks[0].getTankType()); if(outs == null) { - tanks[1].setTankType(FluidTypeTheOldOne.NONE); + tanks[1].setTankType(Fluids.NONE); } else { - tanks[1].setTankType((FluidTypeTheOldOne) outs[0]); + tanks[1].setTankType((FluidType) outs[0]); int processMax = 1200; //the maximum amount of cycles based on the 1.2k cycle cap (subject to change) int processSteam = tanks[0].getFill() / (Integer)outs[2]; //the maximum amount of cycles depending on steam diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineTurbofan.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineTurbofan.java index 6910172d6..3834ca8e5 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineTurbofan.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineTurbofan.java @@ -6,11 +6,11 @@ import java.util.Random; import com.hbm.entity.particle.EntitySSmokeFX; import com.hbm.entity.particle.EntityTSmokeFX; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.lib.Library; import com.hbm.lib.ModDamageSource; @@ -53,7 +53,7 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven public TileEntityMachineTurbofan() { slots = new ItemStack[3]; - tank = new FluidTank(FluidTypeTheOldOne.KEROSENE, 64000, 0); + tank = new FluidTank(Fluids.KEROSENE, 64000, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineUF6Tank.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineUF6Tank.java index 51a87709a..9b5bc0799 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineUF6Tank.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineUF6Tank.java @@ -3,10 +3,10 @@ package com.hbm.tileentity.machine; import java.util.ArrayList; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import cpw.mods.fml.relauncher.Side; @@ -34,7 +34,7 @@ public class TileEntityMachineUF6Tank extends TileEntity implements ISidedInvent public TileEntityMachineUF6Tank() { slots = new ItemStack[4]; - tank = new FluidTank(FluidTypeTheOldOne.UF6, 64000, 0); + tank = new FluidTank(Fluids.UF6, 64000, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityReactorZirnox.java b/src/main/java/com/hbm/tileentity/machine/TileEntityReactorZirnox.java index 3a76bf278..16cc7754f 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityReactorZirnox.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityReactorZirnox.java @@ -10,7 +10,6 @@ import com.hbm.config.MobConfig; import com.hbm.entity.projectile.EntityZirnoxDebris; import com.hbm.entity.projectile.EntityZirnoxDebris.DebrisType; import com.hbm.explosion.ExplosionNukeGeneric; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.handler.MultiblockHandlerXR; import com.hbm.handler.radiation.ChunkRadiationManager; import com.hbm.interfaces.IControlReceiver; @@ -52,7 +51,7 @@ public class TileEntityReactorZirnox extends TileEntityMachineBase implements IF public FluidTank carbonDioxide; public FluidTank water; - private static final HashMap fuelMap = new HashMap(); + public static final HashMap fuelMap = new HashMap(); static { fuelMap.put(new ComparableStack(ModItems.rod_zirnox_natural_uranium_fuel), new ItemStack(ModItems.rod_zirnox_natural_uranium_fuel_depleted)); fuelMap.put(new ComparableStack(ModItems.rod_zirnox_uranium_fuel), new ItemStack(ModItems.rod_zirnox_uranium_fuel_depleted)); @@ -68,9 +67,9 @@ public class TileEntityReactorZirnox extends TileEntityMachineBase implements IF public TileEntityReactorZirnox() { super(28); - steam = new FluidTank(FluidTypeTheOldOne.SUPERHOTSTEAM, 8000, 0); - carbonDioxide = new FluidTank(FluidTypeTheOldOne.CARBONDIOXIDE, 16000, 1); - water = new FluidTank(FluidTypeTheOldOne.WATER, 32000, 2); + steam = new FluidTank(Fluids.SUPERHOTSTEAM, 8000, 0); + carbonDioxide = new FluidTank(Fluids.CARBONDIOXIDE, 16000, 1); + water = new FluidTank(Fluids.WATER, 32000, 2); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntitySILEX.java b/src/main/java/com/hbm/tileentity/machine/TileEntitySILEX.java index 6aafa0e15..c9db1e9ed 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntitySILEX.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntitySILEX.java @@ -4,11 +4,11 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.SILEXRecipes; import com.hbm.inventory.recipes.SILEXRecipes.SILEXRecipe; import com.hbm.items.ModItems; @@ -42,7 +42,7 @@ public class TileEntitySILEX extends TileEntityMachineBase implements IFluidAcce public TileEntitySILEX() { super(11); - tank = new FluidTank(FluidTypeTheOldOne.ACID, 16000, 0); + tank = new FluidTank(Fluids.ACID, 16000, 0); } @Override @@ -118,9 +118,13 @@ public class TileEntitySILEX extends TileEntityMachineBase implements IFluidAcce public static final HashMap fluidConversion = new HashMap(); static { - fluidConversion.put(FluidTypeTheOldOne.UF6, new ComparableStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.UF6.ordinal())); - fluidConversion.put(FluidTypeTheOldOne.PUF6, new ComparableStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.PUF6.ordinal())); - fluidConversion.put(FluidTypeTheOldOne.DEATH, new ComparableStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.DEATH.ordinal())); + putFluid(Fluids.UF6); + putFluid(Fluids.PUF6); + putFluid(Fluids.DEATH); + } + + private static void putFluid(FluidType fluid) { + fluidConversion.put(fluid, new ComparableStack(ModItems.fluid_icon, 1, fluid.getID())); } int loadDelay; @@ -148,7 +152,7 @@ public class TileEntitySILEX extends TileEntityMachineBase implements IFluidAcce if(loadDelay > 20) loadDelay = 0; - if(loadDelay == 0 && slots[0] != null && tank.getTankType() == FluidTypeTheOldOne.ACID && (this.current == null || this.current.equals(new ComparableStack(slots[0]).makeSingular()))) { + if(loadDelay == 0 && slots[0] != null && tank.getTankType() == Fluids.ACID && (this.current == null || this.current.equals(new ComparableStack(slots[0]).makeSingular()))) { SILEXRecipe recipe = SILEXRecipes.getOutput(slots[0]); if(recipe == null) diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntitySolarBoiler.java b/src/main/java/com/hbm/tileentity/machine/TileEntitySolarBoiler.java index 2fc26b6d7..5afea0bbd 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntitySolarBoiler.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntitySolarBoiler.java @@ -5,11 +5,11 @@ import java.util.Arrays; import java.util.HashSet; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.Library; import cpw.mods.fml.relauncher.Side; @@ -29,8 +29,8 @@ public class TileEntitySolarBoiler extends TileEntity implements IFluidAcceptor, public HashSet secondary = new HashSet(); public TileEntitySolarBoiler() { - water = new FluidTank(FluidTypeTheOldOne.WATER, 16000, 0); - steam = new FluidTank(FluidTypeTheOldOne.STEAM, 1600000, 1); + water = new FluidTank(Fluids.WATER, 16000, 0); + steam = new FluidTank(Fluids.STEAM, 1600000, 1); } @Override @@ -39,7 +39,7 @@ public class TileEntitySolarBoiler extends TileEntity implements IFluidAcceptor, if(!worldObj.isRemote) { //if(worldObj.getTotalWorldTime() % 5 == 0) { - fillFluidInit(FluidTypeTheOldOne.STEAM); + fillFluidInit(Fluids.STEAM); //} int process = heat / 10; @@ -75,9 +75,9 @@ public class TileEntitySolarBoiler extends TileEntity implements IFluidAcceptor, @Override public void setFluidFill(int fill, FluidType type) { - if(type == FluidTypeTheOldOne.WATER) + if(type == Fluids.WATER) water.setFill(fill); - if(type == FluidTypeTheOldOne.STEAM) + if(type == Fluids.STEAM) steam.setFill(fill); } @@ -96,9 +96,9 @@ public class TileEntitySolarBoiler extends TileEntity implements IFluidAcceptor, @Override public int getFluidFill(FluidType type) { - if(type == FluidTypeTheOldOne.WATER) + if(type == Fluids.WATER) return water.getFill(); - if(type == FluidTypeTheOldOne.STEAM) + if(type == Fluids.STEAM) return steam.getFill(); return 0; @@ -122,9 +122,9 @@ public class TileEntitySolarBoiler extends TileEntity implements IFluidAcceptor, @Override public int getMaxFluidFill(FluidType type) { - if(type == FluidTypeTheOldOne.WATER) + if(type == Fluids.WATER) return water.getMaxFill(); - if(type == FluidTypeTheOldOne.STEAM) + if(type == Fluids.STEAM) return steam.getMaxFill(); return 0; diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntitySoyuzLauncher.java b/src/main/java/com/hbm/tileentity/machine/TileEntitySoyuzLauncher.java index aa74c0ada..adc9b78f1 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntitySoyuzLauncher.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntitySoyuzLauncher.java @@ -5,11 +5,11 @@ import java.util.List; import com.hbm.handler.MissileStruct; import com.hbm.entity.missile.EntitySoyuz; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.lib.Library; import com.hbm.main.MainRegistry; @@ -48,8 +48,8 @@ public class TileEntitySoyuzLauncher extends TileEntityMachineBase implements IS public TileEntitySoyuzLauncher() { super(27); tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.KEROSENE, 128000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.OXYGEN, 128000, 1); + tanks[0] = new FluidTank(Fluids.KEROSENE, 128000, 0); + tanks[1] = new FluidTank(Fluids.OXYGEN, 128000, 1); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityStorageDrum.java b/src/main/java/com/hbm/tileentity/machine/TileEntityStorageDrum.java index 4407131ae..7d7237a6c 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityStorageDrum.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityStorageDrum.java @@ -4,7 +4,6 @@ import java.util.ArrayList; import java.util.List; import com.hbm.config.VersatileConfig; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.handler.radiation.ChunkRadiationManager; import com.hbm.hazard.HazardRegistry; import com.hbm.hazard.HazardSystem; @@ -12,6 +11,7 @@ import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.items.special.ItemWasteLong; import com.hbm.items.special.ItemWasteShort; @@ -40,8 +40,8 @@ public class TileEntityStorageDrum extends TileEntityMachineBase implements IFlu public TileEntityStorageDrum() { super(24); tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.WASTEFLUID, 16000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.WASTEGAS, 16000, 1); + tanks[0] = new FluidTank(Fluids.WASTEFLUID, 16000, 0); + tanks[1] = new FluidTank(Fluids.WASTEGAS, 16000, 1); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityTowerLarge.java b/src/main/java/com/hbm/tileentity/machine/TileEntityTowerLarge.java index 7af05fefb..eb366d2ef 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityTowerLarge.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityTowerLarge.java @@ -1,8 +1,8 @@ package com.hbm.tileentity.machine; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.main.MainRegistry; import cpw.mods.fml.relauncher.Side; @@ -15,8 +15,8 @@ public class TileEntityTowerLarge extends TileEntityCondenser { public TileEntityTowerLarge() { tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.SPENTSTEAM, 10000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.WATER, 10000, 1); + tanks[0] = new FluidTank(Fluids.SPENTSTEAM, 10000, 0); + tanks[1] = new FluidTank(Fluids.WATER, 10000, 1); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityWatzCore.java b/src/main/java/com/hbm/tileentity/machine/TileEntityWatzCore.java index de1ae98fc..ba09081b0 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityWatzCore.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityWatzCore.java @@ -7,13 +7,13 @@ import java.util.Random; import com.hbm.blocks.ModBlocks; import com.hbm.config.BombConfig; import com.hbm.entity.logic.EntityNukeExplosionMK3; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; import com.hbm.interfaces.IReactor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemCapacitor; import com.hbm.items.special.WatzFuel; @@ -60,7 +60,7 @@ public class TileEntityWatzCore extends TileEntity implements ISidedInventory, I public TileEntityWatzCore() { slots = new ItemStack[40]; - tank = new FluidTank(FluidTypeTheOldOne.WATZ, 64000, 0); + tank = new FluidTank(Fluids.WATZ, 64000, 0); } @Override public int getSizeInventory() { diff --git a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineCatalyticCracker.java b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineCatalyticCracker.java index 9e69fcb01..1e1a6eb20 100644 --- a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineCatalyticCracker.java +++ b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineCatalyticCracker.java @@ -5,11 +5,11 @@ import java.util.List; import com.hbm.blocks.BlockDummyable; import com.hbm.blocks.ModBlocks; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.RefineryRecipes; import com.hbm.lib.Library; import com.hbm.util.Tuple.Quartet; @@ -31,10 +31,10 @@ public class TileEntityMachineCatalyticCracker extends TileEntity implements IFl public TileEntityMachineCatalyticCracker() { tanks = new FluidTank[4]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.BITUMEN, 4000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.STEAM, 8000, 1); - tanks[2] = new FluidTank(FluidTypeTheOldOne.OIL, 4000, 2); - tanks[3] = new FluidTank(FluidTypeTheOldOne.PETROLEUM, 4000, 3); + tanks[0] = new FluidTank(Fluids.BITUMEN, 4000, 0); + tanks[1] = new FluidTank(Fluids.STEAM, 8000, 1); + tanks[2] = new FluidTank(Fluids.OIL, 4000, 2); + tanks[3] = new FluidTank(Fluids.PETROLEUM, 4000, 3); } @Override @@ -81,14 +81,14 @@ public class TileEntityMachineCatalyticCracker extends TileEntity implements IFl Quartet quart = RefineryRecipes.getCracking(tanks[0].getTankType()); if(quart != null) { - tanks[1].setTankType(FluidTypeTheOldOne.STEAM); + tanks[1].setTankType(Fluids.STEAM); tanks[2].setTankType(quart.getW()); tanks[3].setTankType(quart.getX()); } else { - tanks[0].setTankType(FluidTypeTheOldOne.NONE); - tanks[1].setTankType(FluidTypeTheOldOne.NONE); - tanks[2].setTankType(FluidTypeTheOldOne.NONE); - tanks[3].setTankType(FluidTypeTheOldOne.NONE); + tanks[0].setTankType(Fluids.NONE); + tanks[1].setTankType(Fluids.NONE); + tanks[2].setTankType(Fluids.NONE); + tanks[3].setTankType(Fluids.NONE); } } diff --git a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineFrackingTower.java b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineFrackingTower.java index c05b2babe..3e82a0897 100644 --- a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineFrackingTower.java +++ b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineFrackingTower.java @@ -1,24 +1,22 @@ package com.hbm.tileentity.machine.oil; import com.hbm.blocks.ModBlocks; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.world.feature.OilSpot; import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.init.Blocks; public class TileEntityMachineFrackingTower extends TileEntityOilDrillBase implements IFluidAcceptor { public TileEntityMachineFrackingTower() { super(); tanks = new FluidTank[3]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.OIL, 64_000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.GAS, 64_000, 1); - tanks[2] = new FluidTank(FluidTypeTheOldOne.FRACKSOL, 64_000, 2); + tanks[0] = new FluidTank(Fluids.OIL, 64_000, 0); + tanks[1] = new FluidTank(Fluids.GAS, 64_000, 1); + tanks[2] = new FluidTank(Fluids.FRACKSOL, 64_000, 2); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineFractionTower.java b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineFractionTower.java index e04f41a0b..0be91a0c0 100644 --- a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineFractionTower.java +++ b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineFractionTower.java @@ -3,11 +3,11 @@ package com.hbm.tileentity.machine.oil; import java.util.ArrayList; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.RefineryRecipes; import com.hbm.lib.Library; import com.hbm.util.Tuple.Quartet; @@ -28,9 +28,9 @@ public class TileEntityMachineFractionTower extends TileEntity implements IFluid public TileEntityMachineFractionTower() { tanks = new FluidTank[3]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.HEAVYOIL, 4000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.BITUMEN, 4000, 1); - tanks[2] = new FluidTank(FluidTypeTheOldOne.SMEAR, 4000, 2); + tanks[0] = new FluidTank(Fluids.HEAVYOIL, 4000, 0); + tanks[1] = new FluidTank(Fluids.BITUMEN, 4000, 1); + tanks[2] = new FluidTank(Fluids.SMEAR, 4000, 2); } @Override @@ -83,9 +83,9 @@ public class TileEntityMachineFractionTower extends TileEntity implements IFluid tanks[1].setTankType(quart.getW()); tanks[2].setTankType(quart.getX()); } else { - tanks[0].setTankType(FluidTypeTheOldOne.NONE); - tanks[1].setTankType(FluidTypeTheOldOne.NONE); - tanks[2].setTankType(FluidTypeTheOldOne.NONE); + tanks[0].setTankType(Fluids.NONE); + tanks[1].setTankType(Fluids.NONE); + tanks[2].setTankType(Fluids.NONE); } } diff --git a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineGasFlare.java b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineGasFlare.java index 4369bed53..64421d6e5 100644 --- a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineGasFlare.java +++ b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineGasFlare.java @@ -6,11 +6,11 @@ import java.util.Random; import com.hbm.entity.particle.EntityGasFlameFX; import com.hbm.explosion.ExplosionThermo; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; @@ -45,7 +45,7 @@ public class TileEntityMachineGasFlare extends TileEntity implements ISidedInven public TileEntityMachineGasFlare() { slots = new ItemStack[3]; - tank = new FluidTank(FluidTypeTheOldOne.GAS, 64000, 0); + tank = new FluidTank(Fluids.GAS, 64000, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineOilWell.java b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineOilWell.java index 875ed8cb2..4ed252d26 100644 --- a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineOilWell.java +++ b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineOilWell.java @@ -2,7 +2,6 @@ package com.hbm.tileentity.machine.oil; import com.hbm.blocks.ModBlocks; import com.hbm.explosion.ExplosionLarge; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.inventory.fluid.FluidType; import com.hbm.lib.Library; diff --git a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineRefinery.java b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineRefinery.java index cd1193e7b..0c98f309c 100644 --- a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineRefinery.java +++ b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachineRefinery.java @@ -3,13 +3,13 @@ package com.hbm.tileentity.machine.oil; import java.util.ArrayList; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidContainerRegistry; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.recipes.RefineryRecipes; import com.hbm.items.ModItems; import com.hbm.lib.Library; @@ -53,11 +53,11 @@ public class TileEntityMachineRefinery extends TileEntity implements ISidedInven public TileEntityMachineRefinery() { slots = new ItemStack[12]; tanks = new FluidTank[5]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.HOTOIL, 64000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.HEAVYOIL, 16000, 1); - tanks[2] = new FluidTank(FluidTypeTheOldOne.NAPHTHA, 16000, 2); - tanks[3] = new FluidTank(FluidTypeTheOldOne.LIGHTOIL, 16000, 3); - tanks[4] = new FluidTank(FluidTypeTheOldOne.PETROLEUM, 16000, 4); + tanks[0] = new FluidTank(Fluids.HOTOIL, 64000, 0); + tanks[1] = new FluidTank(Fluids.HEAVYOIL, 16000, 1); + tanks[2] = new FluidTank(Fluids.NAPHTHA, 16000, 2); + tanks[3] = new FluidTank(Fluids.LIGHTOIL, 16000, 3); + tanks[4] = new FluidTank(Fluids.PETROLEUM, 16000, 4); } @Override @@ -130,7 +130,7 @@ public class TileEntityMachineRefinery extends TileEntity implements ISidedInven if(i == 0 && stack.getItem() instanceof IBatteryItem) return true; - if(i == 1 && FluidContainerRegistry.getFluidContent(stack, FluidTypeTheOldOne.HOTOIL) > 0) + if(i == 1 && FluidContainerRegistry.getFluidContent(stack, Fluids.HOTOIL) > 0) return true; if(stack.getItem() == ModItems.canister_empty) { if(i == 3) diff --git a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityOilDrillBase.java b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityOilDrillBase.java index c506b4076..50433c716 100644 --- a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityOilDrillBase.java +++ b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityOilDrillBase.java @@ -5,12 +5,12 @@ import java.util.HashSet; import java.util.List; import com.hbm.blocks.ModBlocks; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.UpgradeManager; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.machine.ItemMachineUpgrade; import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType; import com.hbm.lib.Library; @@ -42,8 +42,8 @@ public abstract class TileEntityOilDrillBase extends TileEntityMachineBase imple public TileEntityOilDrillBase() { super(8); tanks = new FluidTank[2]; - tanks[0] = new FluidTank(FluidTypeTheOldOne.OIL, 64_000, 0); - tanks[1] = new FluidTank(FluidTypeTheOldOne.GAS, 64_000, 1); + tanks[0] = new FluidTank(Fluids.OIL, 64_000, 0); + tanks[1] = new FluidTank(Fluids.GAS, 64_000, 1); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKConsole.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKConsole.java index 9e19910e1..fc2c8b022 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKConsole.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKConsole.java @@ -4,8 +4,8 @@ import java.util.ArrayList; import java.util.List; import java.util.Set; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IControlReceiver; +import com.hbm.inventory.fluid.Fluids; import com.hbm.tileentity.TileEntityMachineBase; import com.hbm.tileentity.machine.rbmk.TileEntityRBMKControlManual.RBMKColor; import com.hbm.util.I18nUtil; @@ -240,7 +240,7 @@ public class TileEntityRBMKConsole extends TileEntityMachineBase implements ICon case BOILER: stats.add(EnumChatFormatting.BLUE + I18nUtil.resolveKey("rbmk.boiler.water", this.data.getInteger("water"), this.data.getInteger("maxWater"))); stats.add(EnumChatFormatting.WHITE + I18nUtil.resolveKey("rbmk.boiler.steam", this.data.getInteger("steam"), this.data.getInteger("maxSteam"))); - stats.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("rbmk.boiler.type", I18nUtil.resolveKey(FluidTypeTheOldOne.values()[this.data.getShort("type")].getUnlocalizedName()))); + stats.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("rbmk.boiler.type", I18nUtil.resolveKey(Fluids.fromID(this.data.getShort("type")).getUnlocalizedName()))); break; case CONTROL: diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKCooler.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKCooler.java index 2fe88d234..66b75c751 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKCooler.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKCooler.java @@ -3,10 +3,10 @@ package com.hbm.tileentity.machine.rbmk; import java.util.ArrayList; import java.util.List; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.tileentity.machine.rbmk.TileEntityRBMKConsole.ColumnType; import net.minecraft.entity.Entity; @@ -23,7 +23,7 @@ public class TileEntityRBMKCooler extends TileEntityRBMKBase implements IFluidAc public TileEntityRBMKCooler() { super(); - this.tank = new FluidTank(FluidTypeTheOldOne.CRYOGEL, 8000, 0); + this.tank = new FluidTank(Fluids.CRYOGEL, 8000, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKInlet.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKInlet.java index a4f08bccb..0cbcca9d0 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKInlet.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKInlet.java @@ -3,10 +3,10 @@ package com.hbm.tileentity.machine.rbmk; import java.util.List; import com.hbm.blocks.machine.rbmk.RBMKBase; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import net.minecraft.block.Block; import net.minecraft.nbt.NBTTagCompound; @@ -19,7 +19,7 @@ public class TileEntityRBMKInlet extends TileEntity implements IFluidAcceptor { public FluidTank water; public TileEntityRBMKInlet() { - water = new FluidTank(FluidTypeTheOldOne.WATER, 32000, 0); + water = new FluidTank(Fluids.WATER, 32000, 0); } @Override @@ -69,7 +69,7 @@ public class TileEntityRBMKInlet extends TileEntity implements IFluidAcceptor { @Override public void setFluidFill(int fill, FluidType type) { - if(type == FluidTypeTheOldOne.WATER) water.setFill(fill); + if(type == Fluids.WATER) water.setFill(fill); } @Override @@ -84,13 +84,13 @@ public class TileEntityRBMKInlet extends TileEntity implements IFluidAcceptor { @Override public int getFluidFill(FluidType type) { - if(type == FluidTypeTheOldOne.WATER) return water.getFill(); + if(type == Fluids.WATER) return water.getFill(); return 0; } @Override public int getMaxFluidFill(FluidType type) { - if(type == FluidTypeTheOldOne.WATER) return water.getMaxFill(); + if(type == Fluids.WATER) return water.getMaxFill(); return 0; } diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKOutgasser.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKOutgasser.java index 8f7994e32..abd054a05 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKOutgasser.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKOutgasser.java @@ -6,12 +6,12 @@ import java.util.List; import com.hbm.blocks.ModBlocks; import com.hbm.entity.projectile.EntityRBMKDebris.DebrisType; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemFluidIcon; import com.hbm.lib.Library; @@ -31,7 +31,7 @@ public class TileEntityRBMKOutgasser extends TileEntityRBMKSlottedBase implement public TileEntityRBMKOutgasser() { super(2); - gas = new FluidTank(FluidTypeTheOldOne.TRITIUM, 64000, 0); + gas = new FluidTank(Fluids.TRITIUM, 64000, 0); } @Override @@ -76,10 +76,10 @@ public class TileEntityRBMKOutgasser extends TileEntityRBMKSlottedBase implement private static HashMap recipes = new HashMap(); static { - recipes.put("blockLithium", ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.TRITIUM.ordinal()), 10000)); - recipes.put("ingotLithium", ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.TRITIUM.ordinal()), 1000)); - recipes.put("dustLithium", ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.TRITIUM.ordinal()), 1000)); - recipes.put(new ComparableStack(ModItems.powder_lithium_tiny), ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, FluidTypeTheOldOne.TRITIUM.ordinal()), 100)); + recipes.put("blockLithium", ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, Fluids.TRITIUM.getID()), 10000)); + recipes.put("ingotLithium", ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, Fluids.TRITIUM.getID()), 1000)); + recipes.put("dustLithium", ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, Fluids.TRITIUM.getID()), 1000)); + recipes.put(new ComparableStack(ModItems.powder_lithium_tiny), ItemFluidIcon.addQuantity(new ItemStack(ModItems.fluid_icon, 1, Fluids.TRITIUM.getID()), 100)); recipes.put("ingotGold", new ItemStack(ModItems.ingot_au198)); recipes.put("nuggetGold", new ItemStack(ModItems.nugget_au198)); recipes.put("dustGold", new ItemStack(ModItems.powder_au198)); diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKOutlet.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKOutlet.java index 919dd788f..c48873103 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKOutlet.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityRBMKOutlet.java @@ -4,11 +4,11 @@ import java.util.ArrayList; import java.util.List; import com.hbm.blocks.machine.rbmk.RBMKBase; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.lib.Library; import net.minecraft.block.Block; @@ -23,7 +23,7 @@ public class TileEntityRBMKOutlet extends TileEntity implements IFluidSource { public FluidTank steam; public TileEntityRBMKOutlet() { - steam = new FluidTank(FluidTypeTheOldOne.SUPERHOTSTEAM, 32000, 0); + steam = new FluidTank(Fluids.SUPERHOTSTEAM, 32000, 0); } @Override diff --git a/src/main/java/com/hbm/tileentity/turret/TileEntityTurretFritz.java b/src/main/java/com/hbm/tileentity/turret/TileEntityTurretFritz.java index b0098f5b7..3ac6695ae 100644 --- a/src/main/java/com/hbm/tileentity/turret/TileEntityTurretFritz.java +++ b/src/main/java/com/hbm/tileentity/turret/TileEntityTurretFritz.java @@ -5,10 +5,10 @@ import java.util.List; import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.handler.BulletConfiguration; -import com.hbm.handler.FluidTypeHandler.FluidTypeTheOldOne; import com.hbm.interfaces.IFluidAcceptor; import com.hbm.inventory.FluidTank; import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.Fluids; import com.hbm.items.ModItems; import com.hbm.packet.AuxParticlePacketNT; import com.hbm.packet.PacketDispatcher; @@ -23,7 +23,7 @@ public class TileEntityTurretFritz extends TileEntityTurretBaseNT implements IFl public TileEntityTurretFritz() { super(); - this.tank = new FluidTank(FluidTypeTheOldOne.DIESEL, 16000, 0); + this.tank = new FluidTank(Fluids.DIESEL, 16000, 0); } @Override @@ -69,7 +69,7 @@ public class TileEntityTurretFritz extends TileEntityTurretBaseNT implements IFl @Override public void updateFiringTick() { - if(this.tank.getTankType() == FluidTypeTheOldOne.DIESEL && this.tank.getFill() >= 10) { + if(this.tank.getTankType() == Fluids.DIESEL && this.tank.getFill() >= 10) { BulletConfiguration conf = BulletConfigSyncingUtil.pullConfig(BulletConfigSyncingUtil.FLA_NORMAL); this.spawnBullet(conf); @@ -107,7 +107,7 @@ public class TileEntityTurretFritz extends TileEntityTurretBaseNT implements IFl for(int i = 1; i < 10; i++) { if(slots[i] != null && slots[i].getItem() == ModItems.ammo_fuel) { - if(this.tank.getTankType() == FluidTypeTheOldOne.DIESEL && this.tank.getFill() + 1000 <= this.tank.getMaxFill()) { + if(this.tank.getTankType() == Fluids.DIESEL && this.tank.getFill() + 1000 <= this.tank.getMaxFill()) { this.tank.setFill(this.tank.getFill() + 1000); this.decrStackSize(i, 1); } diff --git a/src/main/java/com/hbm/util/ArmorUtil.java b/src/main/java/com/hbm/util/ArmorUtil.java index 6a9d87ba4..d86857913 100644 --- a/src/main/java/com/hbm/util/ArmorUtil.java +++ b/src/main/java/com/hbm/util/ArmorUtil.java @@ -390,4 +390,24 @@ public class ArmorUtil { ForgeEventFactory.onItemTooltip(filter, player, lore, ext); lore.forEach(x -> list.add(EnumChatFormatting.YELLOW + " " + x)); } + + public static boolean isWearingEmptyMask(EntityPlayer player) { + + ItemStack mask = player.getEquipmentInSlot(4); + + if(mask == null) + return false; + + if(mask.getItem() instanceof IGasMask) { + return getGasMaskFilter(mask) == null; + } + + ItemStack mod = ArmorModHandler.pryMods(mask)[ArmorModHandler.helmet_only]; + + if(mod != null && mod.getItem() instanceof IGasMask) { + return getGasMaskFilter(mod) == null; + } + + return false; + } } diff --git a/src/main/java/com/hbm/util/InventoryUtil.java b/src/main/java/com/hbm/util/InventoryUtil.java index ea1a741de..786e78585 100644 --- a/src/main/java/com/hbm/util/InventoryUtil.java +++ b/src/main/java/com/hbm/util/InventoryUtil.java @@ -1,6 +1,5 @@ package com.hbm.util; -import java.util.ArrayList; import java.util.List; import com.hbm.inventory.RecipesCommon.AStack; @@ -293,7 +292,6 @@ public class InventoryUtil { if(stack != null) { int[] ids = OreDictionary.getOreIDs(stack); - List dicts = new ArrayList(); for(int id : ids) { if(OreDictionary.getOreName(id).equals(dict)) { @@ -316,7 +314,6 @@ public class InventoryUtil { if(stack != null) { int[] ids = OreDictionary.getOreIDs(stack); - List dicts = new ArrayList(); for(int id : ids) { if(OreDictionary.getOreName(id).equals(dict)) { @@ -330,4 +327,53 @@ public class InventoryUtil { } } } + + /** + * Turns objects into 2D ItemStack arrays. Index 1: Ingredient slot, index 2: variation (ore dict) + * Handles:
+ *
    + *
  • ItemStack
  • + *
  • ItemStack[]
  • + *
  • AStack
  • + *
  • AStack[]
  • + *
+ * @param o + * @return + */ + public static ItemStack[][] extractObject(Object o) { + + if(o instanceof ItemStack) { + ItemStack[][] stacks = new ItemStack[1][1]; + stacks[0][0] = ((ItemStack)o).copy(); + return stacks; + } + + if(o instanceof ItemStack[]) { + ItemStack[] ingredients = (ItemStack[]) o; + ItemStack[][] stacks = new ItemStack[1][0]; + stacks[0] = ingredients; + return stacks; + } + + if(o instanceof AStack) { + AStack astack = (AStack) o; + ItemStack[] ext = astack.extractForNEI().toArray(new ItemStack[0]); + ItemStack[][] stacks = new ItemStack[1][0]; + stacks[0] = ext; //untested, do java arrays allow that? the capacity set is 0 after all + return stacks; + } + + if(o instanceof AStack[]) { + AStack[] ingredients = (AStack[]) o; + ItemStack[][] stacks = new ItemStack[ingredients.length][0]; + + for(int i = 0; i < ingredients.length; i++) { + stacks[i] = ingredients[i].extractForNEI().toArray(new ItemStack[0]); + } + + return stacks; + } + + return new ItemStack[0][0]; + } } diff --git a/src/main/java/com/hbm/util/RTGUtil.java b/src/main/java/com/hbm/util/RTGUtil.java index 904ea9f46..dfa9ce0b0 100644 --- a/src/main/java/com/hbm/util/RTGUtil.java +++ b/src/main/java/com/hbm/util/RTGUtil.java @@ -1,6 +1,6 @@ package com.hbm.util; -import com.hbm.config.MachineConfig; +import com.hbm.config.VersatileConfig; import com.hbm.interfaces.ICustomWarhead.SaltedFuel.HalfLifeType; import com.hbm.items.machine.ItemRTGPellet; @@ -8,9 +8,8 @@ import net.minecraft.item.ItemStack; public class RTGUtil { - public static short getPower(ItemRTGPellet fuel, ItemStack stack) - { - return MachineConfig.scaleRTGPower ? ItemRTGPellet.getScaledPower(fuel, stack) : fuel.getHeat(); + public static short getPower(ItemRTGPellet fuel, ItemStack stack) { + return VersatileConfig.scaleRTGPower() ? ItemRTGPellet.getScaledPower(fuel, stack) : fuel.getHeat(); } public static boolean hasHeat(ItemStack[] inventory, int[] rtgSlots) { diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 6e18383e3..7780de7f4 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -2087,6 +2087,7 @@ item.powder_au198.name=Gold-198-Staub item.powder_australium.name=Australiumstaub item.powder_balefire.name=Thermonukleare Asche item.powder_beryllium.name=Berylliumstaub +item.powder_borax.name=Borax item.powder_boron.name=Borstaub item.powder_boron_tiny.name=Kleiner Haufen Borstaub item.powder_bromine.name=Bromstaub @@ -2758,6 +2759,7 @@ tile.anvil_iron.name=Eisenamboss tile.anvil_lead.name=Bleiamboss tile.anvil_meteorite.name=Meteoritenamboss tile.anvil_murky.name=Düsteramboss +tile.anvil_osmiridium.name=Osmiridiumamboss tile.anvil_schrabidate.name=Eisenschrabidatamboss tile.anvil_starmetal.name=Sternenmetallamboss tile.anvil_steel.name=Stahlamboss @@ -2917,6 +2919,7 @@ tile.broadcaster_pc.name=Korrupter Sender tile.burning_earth.name=Brennendes Gras tile.cable_switch.name=Stromschalter tile.charge_dynamite.name=Zeitbombe +tile.charge_miner.name=Bergbauladung mit Zeitzünder tile.cheater_virus.name=Geliertes Euphemium tile.cheater_virus_seed.name=Instabiler Euphemiumschrabid-Block tile.chlorine_gas.name=Chlorgas @@ -3283,6 +3286,7 @@ tile.ore_cobalt.name=Kobalterz tile.ore_coltan.name=Coltanerz tile.ore_copper.name=Kupfererz tile.ore_daffergon.name=Dellit +tile.ore_depth_borax.name=Tiefen-Boraxerz tile.ore_depth_cinnebar.name=Tiefen-Zinnobererz tile.ore_depth_nether_neodymium.name=Nether-Tiefen-Neodymerz tile.ore_depth_zirconium.name=Tiefen-Zirkonerz diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 028e5b89a..b08b4f40a 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -2241,6 +2241,7 @@ item.powder_au198.name=Gold-198 Powder item.powder_australium.name=Australium Powder item.powder_balefire.name=Thermonuclear Ashes item.powder_beryllium.name=Beryllium Powder +item.powder_borax.name=Borax item.powder_boron.name=Boron Powder item.powder_boron_tiny.name=Tiny Pile of Boron Powder item.powder_bromine.name=Bromine Powder @@ -2966,6 +2967,7 @@ tile.anvil_iron.name=Iron Anvil tile.anvil_lead.name=Lead Anvil tile.anvil_meteorite.name=Meteorite Anvil tile.anvil_murky.name=Murky Anvil +tile.anvil_osmiridium.name=Osmiridium Anvil tile.anvil_schrabidate.name=Ferric Schrabidate Anvil tile.anvil_starmetal.name=Starmetal Anvil tile.anvil_steel.name=Steel Anvil @@ -3126,6 +3128,7 @@ tile.broadcaster_pc.name=Corrupted Broadcaster tile.burning_earth.name=Burning Grass tile.cable_switch.name=Power Switch tile.charge_dynamite.name=Time Bomb +tile.charge_miner.name=Timed Mining Charge tile.cheater_virus.name=Gelid Euphemium tile.cheater_virus_seed.name=Unstable Euphemium Schrabide Block tile.chlorine_gas.name=Chlorine Gas @@ -3491,6 +3494,7 @@ tile.ore_cobalt.name=Cobalt Ore tile.ore_coltan.name=Coltan Ore tile.ore_copper.name=Copper Ore tile.ore_daffergon.name=Dellite +tile.ore_depth_borax.name=Depth Borax Ore tile.ore_depth_cinnebar.name=Depth Cinnabar Ore tile.ore_depth_nether_neodymium.name=Nether Depth Neodymium Ore tile.ore_depth_zirconium.name=Depth Zirconium Ore diff --git a/src/main/resources/assets/hbm/models/weapons/cursed.obj b/src/main/resources/assets/hbm/models/weapons/cursed.obj new file mode 100644 index 000000000..6a0f56ad9 --- /dev/null +++ b/src/main/resources/assets/hbm/models/weapons/cursed.obj @@ -0,0 +1,2516 @@ +# Blender v2.79 (sub 0) OBJ File: 'cursed.blend' +# www.blender.org +o Cube.011_Cube.026 +v -3.478718 1.138718 0.014552 +v -3.801282 1.138718 -0.014552 +v -3.478718 1.138718 -0.014552 +v -3.478718 1.461282 0.014552 +v -3.478718 1.423807 0.011171 +v -3.478718 1.423807 -0.011171 +v -3.478718 1.176193 -0.011171 +v -3.478718 1.176193 0.011171 +v -3.801282 1.314552 0.161282 +v -3.478718 1.285448 0.161282 +v -3.478718 1.314552 0.161282 +v -3.801282 1.461282 -0.014552 +v -3.801282 1.423807 -0.011171 +v -3.801282 1.423807 0.011171 +v -3.801282 1.138718 0.014552 +v -3.801282 1.176193 0.011171 +v -3.801282 1.176193 -0.011171 +v -3.801282 1.461282 0.014552 +v -3.478718 1.461282 -0.014552 +v -3.801282 1.314552 -0.161282 +v -3.478718 1.418306 -0.118306 +v -3.478718 1.314552 -0.161282 +v -3.801282 1.418306 -0.118306 +v -3.801282 1.418306 0.118306 +v -3.478718 1.418306 0.118306 +v -3.478718 1.285448 -0.161282 +v -3.801282 1.181694 -0.118306 +v -3.801282 1.285448 -0.161282 +v -3.478718 1.181694 -0.118306 +v -3.801282 1.285448 0.161282 +v -3.478718 1.181694 0.118306 +v -3.801282 1.181694 0.118306 +v -3.478718 1.311171 0.123807 +v -3.801282 1.288829 0.123807 +v -3.801282 1.311171 0.123807 +v -3.801282 1.390817 -0.090817 +v -3.478718 1.311171 -0.123807 +v -3.478718 1.390817 -0.090817 +v -3.478718 1.390817 0.090817 +v -3.801282 1.390817 0.090817 +v -3.478718 1.288829 -0.123807 +v -3.801282 1.209183 -0.090817 +v -3.478718 1.209183 -0.090817 +v -3.801282 1.209183 0.090817 +v -3.478718 1.288829 0.123807 +v -3.478718 1.209183 0.090817 +v -3.801282 1.311171 -0.123807 +v -3.801282 1.288829 -0.123807 +vt 0.588344 0.422031 +vt 0.590616 0.396347 +vt 0.590616 0.422031 +vt 0.816190 0.537904 +vt 0.810508 0.548747 +vt 0.803793 0.545966 +vt 0.767283 0.631233 +vt 0.772965 0.620390 +vt 0.779680 0.623172 +vt 0.404454 0.586481 +vt 0.402136 0.560797 +vt 0.404454 0.560797 +vt 0.556937 0.482545 +vt 0.559591 0.483935 +vt 0.558910 0.485579 +vt 0.579779 0.494514 +vt 0.577125 0.493124 +vt 0.577806 0.491480 +vt 0.587488 0.577888 +vt 0.589806 0.552204 +vt 0.589806 0.577888 +vt 0.589806 0.526521 +vt 0.598067 0.552204 +vt 0.589806 0.552204 +vt 0.598067 0.577888 +vt 0.412715 0.586481 +vt 0.579227 0.552204 +vt 0.579227 0.577888 +vt 0.587488 0.552204 +vt 0.579227 0.526521 +vt 0.587488 0.526521 +vt 0.598051 0.422031 +vt 0.598051 0.396347 +vt 0.402136 0.586481 +vt 0.393875 0.560797 +vt 0.579574 0.396347 +vt 0.579574 0.422031 +vt 0.560711 0.557920 +vt 0.560053 0.548419 +vt 0.560711 0.548419 +vt 0.497042 0.578916 +vt 0.496384 0.569415 +vt 0.497042 0.569415 +vt 0.506272 0.569862 +vt 0.506918 0.579363 +vt 0.506272 0.579363 +vt 0.563051 0.509766 +vt 0.560705 0.500265 +vt 0.563051 0.500265 +vt 0.509408 0.569862 +vt 0.509408 0.579363 +vt 0.499388 0.578916 +vt 0.504161 0.569862 +vt 0.560047 0.500265 +vt 0.557701 0.509766 +vt 0.557701 0.500265 +vt 0.563057 0.557920 +vt 0.494038 0.569415 +vt 0.496384 0.578916 +vt 0.494038 0.578916 +vt 0.557707 0.548419 +vt 0.560053 0.557920 +vt 0.557707 0.557920 +vt 0.560705 0.509766 +vt 0.588344 0.396347 +vt 0.755915 0.565797 +vt 0.745072 0.560115 +vt 0.775747 0.545966 +vt 0.770907 0.534281 +vt 0.807442 0.534281 +vt 0.842024 0.563739 +vt 0.842024 0.600274 +vt 0.830339 0.568579 +vt 0.830339 0.596625 +vt 0.827558 0.603340 +vt 0.838401 0.609022 +vt 0.812566 0.634856 +vt 0.807726 0.623172 +vt 0.776031 0.634856 +vt 0.741449 0.605398 +vt 0.741449 0.568863 +vt 0.753133 0.600559 +vt 0.753133 0.572512 +vt 0.558910 0.492443 +vt 0.563764 0.497297 +vt 0.562373 0.499950 +vt 0.556050 0.493627 +vt 0.556050 0.484686 +vt 0.563260 0.476222 +vt 0.572202 0.476222 +vt 0.564445 0.479082 +vt 0.571309 0.479082 +vt 0.572952 0.479762 +vt 0.574343 0.477109 +vt 0.580666 0.483431 +vt 0.577806 0.484616 +vt 0.580666 0.492373 +vt 0.573456 0.500837 +vt 0.564514 0.500837 +vt 0.572271 0.497977 +vt 0.565407 0.497977 +vt 0.587488 0.552204 +vt 0.598067 0.526521 +vt 0.412715 0.560797 +vt 0.579227 0.552204 +vt 0.393875 0.586481 +vt 0.506918 0.569862 +vt 0.499388 0.569415 +vt 0.504161 0.579363 +vt 0.560047 0.509766 +vt 0.563057 0.548419 +vn 0.0000 -0.9808 0.1951 +vn 0.0000 -0.9808 -0.1951 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.1951 0.9808 +vn 0.0000 -0.1951 0.9808 +vn -1.0000 -0.0000 0.0000 +vn 0.0000 0.9808 0.1951 +vn 0.0000 0.9808 -0.1951 +vn 0.0000 0.1951 -0.9808 +vn 0.0000 0.7071 -0.7071 +vn 0.0000 0.7071 0.7071 +vn 0.0000 -0.1951 -0.9808 +vn 0.0000 -0.7071 -0.7071 +vn 0.0000 -0.7071 0.7071 +s 1 +f 1/1/1 2/2/2 3/3/2 +f 4/4/3 5/5/3 6/6/3 +f 3/7/3 7/8/3 8/9/3 +f 9/10/4 10/11/5 11/12/4 +f 12/13/6 13/14/6 14/15/6 +f 15/16/6 16/17/6 17/18/6 +f 18/19/7 19/20/8 12/21/8 +f 20/22/9 21/23/10 22/24/9 +f 23/25/10 19/20/8 21/23/10 +f 11/12/4 24/26/11 9/10/4 +f 25/27/11 18/19/7 24/28/11 +f 26/29/12 27/30/13 28/31/12 +f 29/32/13 2/2/2 27/33/13 +f 30/34/5 31/35/14 10/11/5 +f 32/36/14 1/1/1 31/37/14 +f 22/24/9 28/31/12 20/22/9 +f 17/38/7 8/39/8 7/40/7 +f 33/41/12 34/42/9 35/43/12 +f 14/44/2 6/45/1 5/46/2 +f 36/47/14 37/48/5 38/49/14 +f 6/45/1 36/50/14 38/51/14 +f 35/43/12 39/52/13 33/41/12 +f 5/46/2 40/53/13 14/44/2 +f 41/54/4 42/55/11 43/56/11 +f 7/40/7 42/57/11 17/38/7 +f 44/58/10 45/59/9 46/60/10 +f 46/61/10 16/62/8 44/63/10 +f 47/64/5 41/54/4 37/48/5 +f 1/1/1 15/65/1 2/2/2 +f 37/66/3 22/67/3 38/68/3 +f 22/67/3 21/69/3 38/68/3 +f 21/69/3 19/70/3 38/68/3 +f 19/70/3 4/4/3 6/6/3 +f 25/71/3 11/72/3 39/73/3 +f 11/72/3 33/74/3 39/73/3 +f 6/6/3 38/68/3 19/70/3 +f 4/4/3 25/71/3 39/73/3 +f 4/4/3 39/73/3 5/5/3 +f 45/75/3 33/74/3 11/72/3 +f 11/72/3 10/76/3 45/75/3 +f 10/76/3 31/77/3 46/78/3 +f 45/75/3 10/76/3 46/78/3 +f 31/77/3 1/79/3 46/78/3 +f 1/79/3 3/7/3 8/9/3 +f 46/78/3 1/79/3 8/9/3 +f 29/80/3 26/81/3 43/82/3 +f 26/81/3 22/67/3 41/83/3 +f 43/82/3 26/81/3 41/83/3 +f 22/67/3 37/66/3 41/83/3 +f 29/80/3 43/82/3 3/7/3 +f 43/82/3 7/8/3 3/7/3 +f 9/10/4 30/34/5 10/11/5 +f 40/84/6 35/85/6 9/86/6 +f 24/87/6 18/88/6 40/84/6 +f 18/88/6 12/13/6 14/15/6 +f 23/89/6 20/90/6 36/91/6 +f 20/90/6 47/92/6 36/91/6 +f 40/84/6 9/86/6 24/87/6 +f 14/15/6 40/84/6 18/88/6 +f 12/13/6 23/89/6 36/91/6 +f 12/13/6 36/91/6 13/14/6 +f 48/93/6 47/92/6 20/90/6 +f 20/90/6 28/94/6 48/93/6 +f 28/94/6 27/95/6 42/96/6 +f 48/93/6 28/94/6 42/96/6 +f 27/95/6 2/97/6 42/96/6 +f 2/97/6 15/16/6 17/18/6 +f 42/96/6 2/97/6 17/18/6 +f 32/98/6 30/99/6 44/100/6 +f 30/99/6 9/86/6 34/101/6 +f 44/100/6 30/99/6 34/101/6 +f 9/86/6 35/85/6 34/101/6 +f 32/98/6 44/100/6 15/16/6 +f 44/100/6 16/17/6 15/16/6 +f 18/19/7 4/102/7 19/20/8 +f 20/22/9 23/103/10 21/23/10 +f 23/25/10 12/21/8 19/20/8 +f 11/12/4 25/104/11 24/26/11 +f 25/27/11 4/102/7 18/19/7 +f 26/29/12 29/105/13 27/30/13 +f 29/32/13 3/3/2 2/2/2 +f 30/34/5 32/106/14 31/35/14 +f 32/36/14 15/65/1 1/1/1 +f 22/24/9 26/29/12 28/31/12 +f 17/38/7 16/62/8 8/39/8 +f 33/41/12 45/59/9 34/42/9 +f 14/44/2 13/107/1 6/45/1 +f 36/47/14 47/64/5 37/48/5 +f 6/45/1 13/107/1 36/50/14 +f 35/43/12 40/108/13 39/52/13 +f 5/46/2 39/109/13 40/53/13 +f 41/54/4 48/110/4 42/55/11 +f 7/40/7 43/111/11 42/57/11 +f 44/58/10 34/42/9 45/59/9 +f 46/61/10 8/39/8 16/62/8 +f 47/64/5 48/110/4 41/54/4 +o Cube.010_Cube.024 +v -1.174927 0.285547 0.087560 +v -1.174927 0.514453 -0.087560 +v -1.174927 0.285547 -0.087560 +v -1.174927 0.514453 0.087560 +v -1.234927 0.743360 -0.087560 +v -1.115006 0.267911 -0.117540 +v -1.115006 0.530655 -0.117540 +v -0.765073 0.056640 -0.117540 +v -1.170759 0.743360 0.117540 +v -0.765073 0.743360 0.117540 +v -0.765073 0.743360 -0.117540 +v -1.115006 0.530655 0.117540 +v -1.115006 0.267911 0.117540 +v -0.765073 0.056640 0.117540 +v -1.234927 0.076640 0.087560 +v -1.234927 0.076640 -0.087560 +v -1.170726 0.073908 -0.117540 +v -1.170759 0.743360 -0.117540 +v -1.170726 0.073908 0.117540 +v -1.234927 0.743360 0.087560 +vt 0.390067 0.372535 +vt 0.406128 0.365349 +vt 0.406128 0.372535 +vt 0.390067 0.365349 +vt 0.406128 0.358191 +vt 0.790352 0.332178 +vt 0.790352 0.323929 +vt 0.806409 0.338811 +vt 0.698608 0.414236 +vt 0.698608 0.432852 +vt 0.677048 0.432852 +vt 0.770203 0.441932 +vt 0.770203 0.433683 +vt 0.786260 0.427050 +vt 0.743140 0.410105 +vt 0.721579 0.388545 +vt 0.743140 0.388545 +vt 0.745889 0.383929 +vt 0.761950 0.383929 +vt 0.764700 0.386876 +vt 0.350295 0.400769 +vt 0.350102 0.394125 +vt 0.352852 0.394678 +vt 0.330144 0.511110 +vt 0.329953 0.503923 +vt 0.332703 0.504432 +vt 0.350294 0.379751 +vt 0.350102 0.386938 +vt 0.347349 0.379751 +vt 0.352852 0.386429 +vt 0.330146 0.490092 +vt 0.329953 0.496736 +vt 0.327200 0.490178 +vt 0.332703 0.496183 +vt 0.390067 0.379122 +vt 0.406128 0.379122 +vt 0.390067 0.358191 +vt 0.787794 0.317251 +vt 0.806409 0.317251 +vt 0.787795 0.338269 +vt 0.677048 0.414236 +vt 0.679797 0.411291 +vt 0.695858 0.411291 +vt 0.786260 0.448610 +vt 0.767644 0.448610 +vt 0.767646 0.427592 +vt 0.721579 0.410105 +vt 0.764700 0.405498 +vt 0.743140 0.405498 +vt 0.743140 0.386876 +vt 0.347349 0.400683 +vt 0.327200 0.511110 +vn -0.9902 0.1394 0.0000 +vn -0.9918 -0.1278 0.0000 +vn -0.9673 -0.2535 0.0000 +vn -0.2023 0.0306 -0.9788 +vn -0.2051 -0.0283 -0.9783 +vn -0.0000 0.0000 -1.0000 +vn 0.0000 1.0000 0.0000 +vn -0.2051 -0.0283 0.9783 +vn -0.2023 0.0306 0.9788 +vn -0.0000 -0.0000 1.0000 +vn 1.0000 0.0000 0.0000 +vn -0.0425 -0.9991 -0.0000 +vn -0.2440 0.0701 -0.9672 +vn -0.4337 0.0552 -0.8994 +vn -0.2494 -0.0654 0.9662 +vn -0.4357 -0.0512 0.8986 +vn -0.2494 -0.0654 -0.9662 +vn -0.4357 -0.0512 -0.8986 +vn -0.4207 -0.1103 -0.9005 +vn -0.2440 0.0701 0.9672 +vn -0.4337 0.0552 0.8994 +vn -0.4159 0.1195 0.9015 +vn -0.9611 0.2760 0.0000 +vn -0.4159 0.1195 -0.9015 +vn -0.4207 -0.1103 0.9005 +s 1 +f 49/112/15 50/113/16 51/114/15 +f 52/115/16 53/116/17 50/113/16 +f 54/117/18 55/118/19 56/119/20 +f 57/120/21 58/121/21 59/122/21 +f 60/123/22 61/124/23 62/125/24 +f 58/126/25 56/127/25 59/128/25 +f 63/129/26 64/130/26 65/131/26 +f 65/132/27 51/133/28 54/134/18 +f 57/135/29 52/136/30 60/137/22 +f 66/138/31 50/139/32 53/140/33 +f 55/141/19 51/133/28 50/139/32 +f 67/142/34 49/143/35 63/144/36 +f 60/137/22 49/143/35 61/145/23 +f 63/146/37 51/114/15 64/147/37 +f 49/112/15 52/115/16 50/113/16 +f 52/115/16 68/148/17 53/116/17 +f 55/118/19 66/149/31 59/150/20 +f 59/150/20 56/119/20 55/118/19 +f 56/119/20 65/151/27 54/117/18 +f 59/122/21 66/152/21 57/120/21 +f 66/152/21 53/153/21 57/120/21 +f 53/153/21 68/154/21 57/120/21 +f 62/125/24 58/155/24 60/123/22 +f 58/155/24 57/156/29 60/123/22 +f 61/124/23 67/157/34 62/125/24 +f 58/126/25 62/158/25 56/127/25 +f 65/131/26 56/159/26 62/160/26 +f 62/160/26 67/161/26 65/131/26 +f 67/161/26 63/129/26 65/131/26 +f 65/132/27 64/162/38 51/133/28 +f 57/135/29 68/163/39 52/136/30 +f 66/138/31 55/141/19 50/139/32 +f 55/141/19 54/134/18 51/133/28 +f 67/142/34 61/145/23 49/143/35 +f 60/137/22 52/136/30 49/143/35 +f 63/146/37 49/112/15 51/114/15 +o Cube.007_Cube.013 +v -2.844798 -0.068282 0.199844 +v -3.796744 -0.068282 -0.199844 +v -2.844798 -0.068282 -0.199844 +v -2.844798 -0.098655 0.199844 +v -3.796744 -0.098655 -0.199844 +v -2.844798 -0.098655 -0.199844 +v -3.796744 -0.068282 0.199844 +v -3.796744 -0.098655 0.199844 +v -3.801281 0.438718 0.161282 +v -3.801281 0.761282 -0.161282 +v -3.801281 0.438718 -0.161282 +v -3.801281 0.761282 0.161282 +v -3.478718 0.761282 -0.161282 +v -3.478718 0.761282 0.161282 +v -3.478718 0.438718 -0.161282 +v -3.478718 0.438718 0.161282 +v -3.802363 0.027636 0.121162 +v -3.802363 0.312364 -0.121162 +v -3.802363 0.027636 -0.121162 +v -3.802363 0.312364 0.121162 +v -3.517636 0.312364 -0.121162 +v -3.517636 0.312364 0.121162 +v -3.517636 0.027636 -0.121162 +v -3.517636 0.027636 0.121162 +v -3.795573 0.499668 0.015063 +v -3.804427 0.499668 -0.015063 +v -3.795573 0.499668 -0.015063 +v -3.795573 0.524643 -0.075357 +v -3.795573 0.584937 -0.100331 +v -3.795573 0.675357 -0.075357 +v -3.804427 0.615063 0.100332 +v -3.795573 0.584937 0.100332 +v -3.795573 0.615063 0.100332 +v -3.804427 0.675357 -0.075357 +v -3.804427 0.615063 -0.100331 +v -3.804427 0.524643 -0.075357 +v -3.804427 0.700332 0.015063 +v -3.795573 0.700332 -0.015063 +v -3.804427 0.700332 -0.015063 +v -3.795573 0.615063 -0.100331 +v -3.804427 0.675357 0.075357 +v -3.795573 0.675357 0.075357 +v -3.804427 0.584937 -0.100331 +v -3.804427 0.584937 0.100332 +v -3.795573 0.524643 0.075357 +v -3.804427 0.524643 0.075357 +v -3.804427 0.499668 0.015063 +v -3.795573 0.700332 0.015063 +v -3.796744 0.814074 0.286160 +v -2.444716 0.814074 -0.286160 +v -3.796744 0.814074 -0.286160 +v -2.214679 0.340615 0.245095 +v -2.214679 0.306616 0.269747 +v -2.214679 -0.098655 0.286160 +v -3.796744 0.408802 -0.269747 +v -3.796744 0.371850 -0.242954 +v -2.610195 -0.041399 0.286160 +v -2.610195 -0.155912 0.286160 +v -3.796744 0.408802 -0.286160 +v -2.444716 0.814074 0.286160 +v -3.796744 0.408802 0.286160 +v -2.247809 0.408802 0.286160 +v -2.229855 0.371850 0.242954 +v -2.216114 0.343568 0.242954 +v -2.216114 0.343568 -0.242954 +v -3.796744 0.408802 0.269747 +v -3.796744 0.371850 0.242954 +v -2.247809 0.408802 0.269747 +v -3.796744 0.343568 0.242954 +v -2.247809 0.408802 -0.269747 +v -2.247809 0.408802 -0.286160 +v -3.796744 0.306616 0.269747 +v -2.214679 0.306616 0.286160 +v -3.796744 0.306616 -0.269747 +v -2.214679 0.306616 -0.269747 +v -2.229855 0.371850 -0.242954 +v -3.796744 0.343568 -0.242954 +v -2.214679 0.306616 -0.286160 +v -2.214679 -0.098655 -0.286160 +v -2.610195 -0.041399 -0.286160 +v -2.214679 -0.198656 0.249967 +v -2.610195 -0.198656 -0.249967 +v -2.214679 -0.198656 -0.249967 +v -3.796744 0.306616 -0.286160 +v -2.610195 -0.098655 -0.250258 +v -2.610195 -0.155912 -0.286160 +v -2.610195 -0.098655 0.250258 +v -3.796744 -0.098655 -0.250258 +v -3.796744 -0.041399 -0.286160 +v -3.796744 -0.041399 0.286160 +v -3.796744 -0.098655 0.250258 +v -2.214679 -0.140935 0.286160 +v -2.610195 -0.198656 0.249967 +v -2.214679 0.340615 -0.245095 +v -3.796744 0.306616 0.286160 +v -2.214679 -0.140935 -0.286160 +vt 0.497093 0.546556 +vt 0.489787 0.555589 +vt 0.489787 0.546505 +vt 0.558621 0.611549 +vt 0.559091 0.621426 +vt 0.558621 0.621426 +vt 0.489470 0.555592 +vt 0.489470 0.546508 +vt 0.469847 0.629818 +vt 0.469377 0.638902 +vt 0.469377 0.629818 +vt 0.840276 0.397745 +vt 0.812280 0.369750 +vt 0.840276 0.369750 +vt 0.672301 0.547852 +vt 0.644305 0.519856 +vt 0.672301 0.519856 +vt 0.758120 0.546311 +vt 0.730125 0.518315 +vt 0.758120 0.518315 +vt 0.728292 0.544994 +vt 0.700297 0.516998 +vt 0.728292 0.516998 +vt 0.786116 0.512334 +vt 0.758120 0.540329 +vt 0.758120 0.512334 +vt 0.814112 0.512322 +vt 0.786116 0.540318 +vt 0.786116 0.512322 +vt 0.903571 0.559623 +vt 0.865925 0.521977 +vt 0.903571 0.521977 +vt 0.903571 0.521927 +vt 0.865925 0.484281 +vt 0.903571 0.484281 +vt 0.941217 0.559573 +vt 0.903571 0.521927 +vt 0.941217 0.521927 +vt 0.901107 0.443199 +vt 0.863461 0.405553 +vt 0.901107 0.405553 +vt 0.901107 0.367907 +vt 0.863461 0.367907 +vt 0.712878 0.532108 +vt 0.675232 0.569754 +vt 0.675232 0.532108 +vt 0.894503 0.935849 +vt 0.896659 0.921485 +vt 0.896659 0.935849 +vt 0.962007 0.841270 +vt 0.962007 0.836599 +vt 0.966136 0.831303 +vt 0.911963 0.936525 +vt 0.909807 0.922161 +vt 0.911963 0.922161 +vt 0.962007 0.827174 +vt 0.962007 0.822503 +vt 0.966136 0.817207 +vt 0.924171 0.933456 +vt 0.926328 0.919092 +vt 0.926328 0.933456 +vt 0.867931 0.923275 +vt 0.872247 0.937640 +vt 0.867931 0.937640 +vt 0.930644 0.933456 +vt 0.930644 0.919092 +vt 0.916280 0.936525 +vt 0.919855 0.919092 +vt 0.919855 0.933456 +vt 0.865775 0.937640 +vt 0.861459 0.923275 +vt 0.865775 0.923275 +vt 0.900975 0.935849 +vt 0.900975 0.921485 +vt 0.909807 0.936525 +vt 0.905491 0.922161 +vt 0.890187 0.921485 +vt 0.890187 0.935849 +vt 0.497093 0.555641 +vt 0.559091 0.611549 +vt 0.469847 0.638902 +vt 0.812280 0.397745 +vt 0.644305 0.547852 +vt 0.730125 0.546311 +vt 0.700297 0.544994 +vt 0.786116 0.540329 +vt 0.814112 0.540318 +vt 0.865925 0.559623 +vt 0.865925 0.521927 +vt 0.903571 0.559573 +vt 0.863461 0.443199 +vt 0.712878 0.569754 +vt 0.894503 0.921485 +vt 0.962833 0.834606 +vt 0.970808 0.831303 +vt 0.965311 0.844574 +vt 0.972800 0.832128 +vt 0.976103 0.835432 +vt 0.971975 0.845399 +vt 0.976103 0.840103 +vt 0.975278 0.842096 +vt 0.967303 0.845399 +vt 0.962833 0.820510 +vt 0.970808 0.817207 +vt 0.965311 0.830478 +vt 0.972800 0.818032 +vt 0.976103 0.821336 +vt 0.971975 0.831303 +vt 0.976103 0.826007 +vt 0.975278 0.828000 +vt 0.967303 0.831303 +vt 0.924171 0.919092 +vt 0.872247 0.923275 +vt 0.916280 0.922161 +vt 0.861459 0.937640 +vt 0.905491 0.936525 +vt 0.572622 0.567859 +vt 0.583320 0.554957 +vt 0.583320 0.567859 +vt 0.488526 0.563967 +vt 0.487917 0.563443 +vt 0.487511 0.557192 +vt 0.479648 0.573331 +vt 0.480220 0.573993 +vt 0.473368 0.572925 +vt 0.498951 0.544326 +vt 0.497757 0.544336 +vt 0.498354 0.540557 +vt 0.480222 0.617553 +vt 0.486502 0.630456 +vt 0.480222 0.630456 +vt 0.530689 0.627844 +vt 0.526463 0.640782 +vt 0.526463 0.626001 +vt 0.488579 0.564463 +vt 0.488579 0.564014 +vt 0.500587 0.564014 +vt 0.526163 0.640780 +vt 0.525288 0.640780 +vt 0.526163 0.625999 +vt 0.591673 0.554640 +vt 0.590868 0.554640 +vt 0.590798 0.554627 +vt 0.524993 0.640782 +vt 0.525288 0.625827 +vt 0.592139 0.596801 +vt 0.591839 0.611580 +vt 0.591839 0.596799 +vt 0.591673 0.539543 +vt 0.591980 0.554640 +vt 0.590256 0.596799 +vt 0.590828 0.611883 +vt 0.590256 0.611897 +vt 0.591267 0.596799 +vt 0.591839 0.611580 +vt 0.591267 0.611752 +vt 0.590828 0.596799 +vt 0.584740 0.640183 +vt 0.578460 0.640183 +vt 0.579347 0.636409 +vt 0.496650 0.540561 +vt 0.487511 0.544271 +vt 0.487511 0.540497 +vt 0.502261 0.608318 +vt 0.502568 0.593221 +vt 0.502568 0.608318 +vt 0.496363 0.628942 +vt 0.495475 0.628055 +vt 0.497250 0.628055 +vt 0.495475 0.642198 +vt 0.496363 0.641311 +vt 0.497250 0.642198 +vt 0.578460 0.625086 +vt 0.579347 0.625086 +vt 0.497698 0.544327 +vt 0.498951 0.555649 +vt 0.497698 0.555650 +vt 0.488549 0.544262 +vt 0.487511 0.556540 +vt 0.488406 0.555650 +vt 0.496650 0.544336 +vt 0.577573 0.636409 +vt 0.576911 0.640183 +vt 0.576911 0.636409 +vt 0.497912 0.628949 +vt 0.497912 0.641304 +vt 0.572622 0.554957 +vt 0.487511 0.563443 +vt 0.501655 0.557192 +vt 0.500640 0.563967 +vt 0.501655 0.563443 +vt 0.501249 0.563443 +vt 0.487511 0.584936 +vt 0.487511 0.586181 +vt 0.487041 0.584936 +vt 0.486624 0.587069 +vt 0.481231 0.587069 +vt 0.481231 0.586663 +vt 0.480659 0.586001 +vt 0.487511 0.573812 +vt 0.487511 0.575058 +vt 0.487041 0.575058 +vt 0.486624 0.572925 +vt 0.481231 0.573331 +vt 0.481231 0.572925 +vt 0.480659 0.573993 +vt 0.480220 0.586001 +vt 0.479648 0.586663 +vt 0.479648 0.587069 +vt 0.473368 0.587069 +vt 0.479648 0.572925 +vt 0.497913 0.540561 +vt 0.502580 0.540521 +vt 0.502580 0.555618 +vt 0.486502 0.615674 +vt 0.530689 0.640746 +vt 0.501655 0.565049 +vt 0.501655 0.571481 +vt 0.501249 0.565049 +vt 0.487511 0.571481 +vt 0.500587 0.564463 +vt 0.487511 0.565049 +vt 0.487917 0.565049 +vt 0.590798 0.539543 +vt 0.524993 0.625699 +vt 0.592139 0.611582 +vt 0.591980 0.539543 +vt 0.590783 0.611897 +vt 0.591839 0.596799 +vt 0.584740 0.625086 +vt 0.577805 0.640183 +vt 0.502261 0.593221 +vt 0.578460 0.636409 +vt 0.488549 0.555585 +vt 0.496776 0.546559 +vt 0.496776 0.555643 +vt 0.500760 0.555650 +vt 0.501655 0.556540 +vn 0.0000 -1.0000 -0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 1.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.3827 -0.9239 +vn 0.0000 0.9239 -0.3827 +vn 0.0000 0.3827 0.9239 +vn 0.0000 0.9239 0.3827 +vn 0.0000 -0.3827 -0.9239 +vn 0.0000 -0.9239 -0.3827 +vn 0.0000 -0.3827 0.9239 +vn 0.0000 -0.9239 0.3827 +vn 0.9903 0.1390 0.0000 +vn 0.8995 0.4370 0.0000 +vn 0.8994 0.4371 0.0000 +vn 0.0000 -0.5870 0.8096 +vn 0.0000 0.5870 0.8096 +vn 0.0001 0.5869 0.8096 +vn 0.0000 0.5870 -0.8096 +vn 0.0000 -0.5870 -0.8096 +vn 0.0000 -0.5312 -0.8472 +vn 0.0000 -0.5312 0.8472 +vn 0.0183 -0.5419 0.8403 +vn 0.0022 -0.6345 0.7729 +vn 0.0000 -0.6462 0.7632 +vn 0.0022 -0.6345 -0.7729 +vn 0.0183 -0.5419 -0.8403 +vn 0.0000 -0.6462 -0.7632 +vn 0.0001 0.5869 -0.8096 +vn 0.0201 -0.5311 0.8471 +vn 0.0201 -0.5311 -0.8471 +s off +f 69/164/40 70/165/40 71/166/40 +f 71/167/41 72/168/41 69/169/41 +f 71/166/42 73/170/42 74/171/42 +f 75/172/43 72/173/43 76/174/43 +f 77/175/41 78/176/41 79/177/41 +f 80/178/44 81/179/44 78/180/44 +f 82/181/45 83/182/45 81/183/45 +f 84/184/40 79/185/40 83/186/40 +f 81/187/43 79/188/43 78/189/43 +f 80/190/42 84/191/42 82/192/42 +f 85/193/41 86/194/41 87/195/41 +f 88/196/44 89/197/44 86/198/44 +f 90/199/45 91/200/45 89/201/45 +f 92/202/40 87/203/40 91/204/40 +f 89/205/43 87/203/43 86/206/43 +f 88/207/42 92/208/42 90/209/42 +f 93/210/40 94/211/40 95/212/40 +f 96/213/45 97/214/45 98/215/45 +f 99/216/42 100/217/42 101/218/42 +f 102/219/41 103/220/41 104/221/41 +f 105/222/44 106/223/44 107/224/44 +f 103/225/46 98/226/46 108/227/46 +f 102/228/47 106/223/47 98/229/47 +f 101/218/48 109/230/48 99/216/48 +f 110/231/49 105/222/49 109/232/49 +f 97/233/50 104/234/50 111/235/50 +f 96/236/51 94/211/51 104/237/51 +f 112/238/52 113/239/52 100/217/52 +f 114/240/53 93/210/53 113/241/53 +f 108/227/43 111/235/43 103/225/43 +f 69/164/40 75/242/40 70/165/40 +f 71/167/41 74/243/41 72/168/41 +f 71/166/42 70/165/42 73/170/42 +f 75/172/43 69/244/43 72/173/43 +f 77/175/41 80/245/41 78/176/41 +f 80/178/44 82/246/44 81/179/44 +f 82/181/45 84/247/45 83/182/45 +f 84/184/40 77/248/40 79/185/40 +f 81/187/43 83/249/43 79/188/43 +f 80/190/42 77/250/42 84/191/42 +f 85/193/41 88/251/41 86/194/41 +f 88/196/44 90/252/44 89/197/44 +f 90/199/45 92/253/45 91/200/45 +f 92/202/40 85/254/40 87/203/40 +f 89/205/43 91/204/43 87/203/43 +f 88/207/42 85/255/42 92/208/42 +f 93/210/40 115/256/40 94/211/40 +f 97/214/45 108/257/45 98/215/45 +f 98/215/45 106/258/45 95/259/45 +f 106/258/45 116/260/45 95/259/45 +f 116/260/45 110/261/45 113/262/45 +f 110/261/45 101/263/45 113/262/45 +f 101/263/45 100/264/45 113/262/45 +f 113/262/45 93/265/45 116/260/45 +f 93/265/45 95/259/45 116/260/45 +f 95/259/45 96/213/45 98/215/45 +f 99/216/42 112/238/42 100/217/42 +f 103/220/41 111/266/41 104/221/41 +f 104/221/41 94/267/41 107/268/41 +f 94/267/41 115/269/41 107/268/41 +f 115/269/41 114/270/41 109/271/41 +f 114/270/41 112/272/41 109/271/41 +f 112/272/41 99/273/41 109/271/41 +f 109/271/41 105/274/41 115/269/41 +f 105/274/41 107/268/41 115/269/41 +f 107/268/41 102/219/41 104/221/41 +f 105/222/44 116/275/44 106/223/44 +f 103/225/46 102/276/46 98/226/46 +f 102/228/47 107/224/47 106/223/47 +f 101/218/48 110/277/48 109/230/48 +f 110/231/49 116/275/49 105/222/49 +f 97/233/50 96/278/50 104/234/50 +f 96/236/51 95/212/51 94/211/51 +f 112/238/52 114/279/52 113/239/52 +f 114/240/53 115/256/53 93/210/53 +f 108/227/43 97/233/43 111/235/43 +s 1 +f 117/280/44 118/281/44 119/282/44 +f 120/283/54 121/284/45 122/285/45 +f 123/286/41 124/287/41 119/288/41 +f 125/289/42 126/290/42 122/291/42 +f 118/292/43 127/293/43 119/294/43 +f 128/295/42 129/296/42 130/297/42 +f 131/298/55 132/299/56 133/300/56 +f 134/301/40 130/297/40 129/296/40 +f 135/302/57 136/303/57 134/301/57 +f 121/304/58 120/305/59 132/306/58 +f 137/307/42 131/308/42 135/302/42 +f 138/309/40 127/310/40 139/311/40 +f 140/312/44 141/313/44 121/304/44 +f 142/314/60 133/315/60 143/316/60 +f 124/317/61 138/318/61 144/319/61 +f 145/320/43 144/319/43 133/315/43 +f 146/321/43 147/322/43 148/323/43 +f 149/324/40 150/325/40 151/326/40 +f 142/327/44 146/328/44 152/329/44 +f 153/330/41 148/331/41 154/332/41 +f 125/333/41 155/334/41 126/335/41 +f 148/323/62 156/336/62 157/337/62 +f 155/338/63 158/339/63 159/340/63 +f 153/341/40 155/338/40 74/171/40 +f 122/285/45 160/342/45 149/343/45 +f 149/324/64 126/290/65 161/344/66 +f 154/345/67 151/346/68 150/347/69 +f 150/348/41 161/349/41 153/330/41 +f 117/280/44 128/350/44 118/281/44 +f 121/284/45 141/351/45 122/285/45 +f 122/285/45 147/352/45 162/353/54 +f 147/352/45 146/354/45 143/355/45 +f 143/355/45 162/353/54 147/352/45 +f 162/353/54 120/283/54 122/285/45 +f 76/356/41 159/357/41 75/358/41 +f 159/357/41 158/359/41 75/358/41 +f 158/359/41 163/360/41 140/361/41 +f 158/359/41 140/361/41 75/358/41 +f 140/361/41 137/362/41 75/358/41 +f 156/363/41 73/364/41 70/365/41 +f 70/365/41 75/358/41 137/362/41 +f 157/366/41 156/363/41 70/365/41 +f 142/367/41 152/368/41 157/366/41 +f 145/369/41 142/367/41 70/365/41 +f 142/367/41 157/366/41 70/365/41 +f 70/365/41 137/362/41 145/369/41 +f 137/362/41 135/370/41 145/369/41 +f 134/371/41 129/372/41 117/373/41 +f 145/369/41 135/370/41 124/287/41 +f 135/370/41 134/371/41 117/373/41 +f 124/287/41 135/370/41 117/373/41 +f 117/373/41 119/288/41 124/287/41 +f 119/288/41 127/374/41 123/286/41 +f 126/290/42 160/375/42 122/291/42 +f 122/291/42 141/376/42 125/289/42 +f 141/376/42 163/377/42 125/289/42 +f 163/377/42 158/339/42 125/289/42 +f 118/292/43 139/378/43 127/293/43 +f 128/295/42 117/379/42 129/296/42 +f 139/380/55 118/381/55 138/382/55 +f 118/381/55 128/383/55 144/384/55 +f 138/382/55 118/381/55 144/384/55 +f 128/383/55 130/385/55 136/386/55 +f 128/383/55 136/386/55 131/298/55 +f 144/384/55 128/383/55 131/298/55 +f 120/283/54 162/353/54 133/300/56 +f 133/300/56 144/384/55 131/298/55 +f 132/299/56 120/283/54 133/300/56 +f 134/301/40 136/303/40 130/297/40 +f 135/302/57 131/308/57 136/303/57 +f 137/387/58 140/312/58 132/306/58 +f 140/312/58 121/304/58 132/306/58 +f 137/307/42 132/388/42 131/308/42 +f 138/309/40 123/389/40 127/310/40 +f 140/312/44 163/390/44 141/313/44 +f 145/320/60 133/315/60 142/314/60 +f 133/315/60 162/391/70 143/316/60 +f 124/317/61 123/392/61 138/318/61 +f 145/320/43 124/317/43 144/319/43 +f 157/337/43 152/393/43 148/323/43 +f 152/393/43 146/321/43 148/323/43 +f 147/322/43 164/394/43 154/345/43 +f 147/322/43 154/345/43 148/323/43 +f 149/324/40 161/344/40 150/325/40 +f 142/327/44 143/395/44 146/328/44 +f 148/323/62 153/396/62 156/336/62 +f 155/338/63 125/289/63 158/339/63 +f 74/171/40 73/170/40 156/397/40 +f 155/338/40 159/340/40 72/398/40 +f 159/340/40 76/399/40 72/398/40 +f 74/171/40 156/397/40 153/341/40 +f 155/338/40 72/398/40 74/171/40 +f 149/343/45 151/400/45 147/352/45 +f 151/400/45 164/401/45 147/352/45 +f 147/352/45 122/285/45 149/343/45 +f 149/324/64 160/375/71 126/290/65 +f 154/345/67 164/394/72 151/346/68 +f 126/335/41 155/334/41 161/349/41 +f 155/334/41 153/330/41 161/349/41 +f 153/330/41 154/332/41 150/348/41 +o Cube.003 +v -3.462471 1.477528 0.177528 +v -3.798125 1.477528 -0.177528 +v -3.462471 1.477528 -0.177528 +v -3.462471 1.122472 -0.177528 +v -3.798125 1.122472 0.177528 +v -3.462471 1.122472 0.177528 +v -3.798125 1.233237 -0.177528 +v -3.798125 1.377309 0.177528 +v -3.798125 1.477528 0.177528 +v -3.798125 1.122472 -0.177528 +v -1.089541 1.688519 -0.192709 +v -1.089541 1.738519 0.192709 +v -1.089541 1.688519 0.192709 +v -2.308404 0.730725 0.338886 +v -2.308404 0.960725 0.338886 +v -2.308404 0.830725 -0.235083 +v -1.089541 0.830725 -0.338886 +v -1.089541 1.566796 -0.338886 +v -1.089541 0.730725 0.338886 +v -2.308404 0.730725 -0.338886 +v -1.089541 0.730725 -0.338886 +v -1.089541 0.830725 0.338886 +v -3.798125 0.830725 0.238886 +v -2.308404 0.730725 0.238886 +v -2.308404 0.830725 0.238886 +v -3.136166 1.377309 0.338886 +v -1.089541 1.566796 0.338886 +v -2.308404 0.830725 -0.238886 +v -3.798125 0.730725 -0.238886 +v -3.798125 0.830725 -0.238886 +v -2.308404 0.960725 -0.338886 +v -3.798125 0.962099 -0.338886 +v -3.136166 1.233237 -0.338886 +v -3.798125 0.730725 0.238886 +v -2.308404 0.730725 -0.238886 +v -3.798125 1.566796 -0.338886 +v -3.798125 1.688519 0.192709 +v -3.798125 1.566796 0.338886 +v -3.798125 1.738519 0.192709 +v -1.089541 1.738519 -0.192709 +v -3.798125 1.738519 -0.192709 +v -3.798125 1.688519 -0.192709 +v -3.798125 1.377309 0.300000 +v -3.136166 1.377309 0.300000 +v -3.136166 1.233238 0.300000 +v -3.798125 1.233238 0.300000 +v -3.136166 1.233238 0.338886 +v -3.136166 1.377309 -0.300000 +v -3.798125 1.377309 -0.338886 +v -3.136166 1.377309 -0.338886 +v -3.136166 1.233237 -0.300000 +v -3.798125 1.233237 -0.338886 +v -3.798125 1.233237 -0.300000 +v -3.798125 1.377309 -0.300000 +v -3.802907 1.737093 0.032363 +v -3.802907 1.942907 -0.032363 +v -3.802907 1.737093 -0.032363 +v -3.802907 1.942907 0.032363 +v -3.597093 1.942907 -0.032363 +v -3.597093 1.942907 0.032363 +v -3.377093 1.737093 -0.032363 +v -3.377093 1.737093 0.032363 +v -3.801233 1.738767 -0.032363 +v -3.522639 1.738767 -0.052363 +v -3.522639 1.738767 -0.032363 +v -3.522639 1.738767 0.032363 +v -3.801233 1.738767 0.052363 +v -3.801233 1.738767 0.032363 +v -3.801233 1.861234 -0.032363 +v -3.801233 1.861234 0.032363 +v -3.653547 1.861234 -0.032363 +v -3.653547 1.861234 0.032363 +v -3.653547 1.861234 0.052363 +v -3.522639 1.738767 0.052363 +v -3.801233 1.861234 0.052363 +v -3.653547 1.861234 -0.052363 +v -3.801233 1.738767 -0.052363 +v -3.801233 1.861234 -0.052363 +v -3.798125 1.233238 0.338886 +v -3.798125 0.962099 0.338886 +v -3.798125 1.377309 0.338886 +vt 0.092911 0.684435 +vt 0.089855 0.671519 +vt 0.092911 0.671519 +vt 0.354586 0.672632 +vt 0.344381 0.685548 +vt 0.344381 0.672632 +vt 0.206551 0.673047 +vt 0.209606 0.685963 +vt 0.206551 0.685963 +vt 0.128661 0.677165 +vt 0.131717 0.677165 +vt 0.131717 0.684187 +vt 0.128661 0.687371 +vt 0.125606 0.687371 +vt 0.125606 0.680046 +vt 0.089855 0.684435 +vt 0.354586 0.685548 +vt 0.209606 0.673047 +vt 0.131717 0.687371 +vt 0.128661 0.687371 +vt 0.125606 0.677165 +vt 0.128661 0.677165 +vt 0.063094 0.517248 +vt 0.077115 0.515811 +vt 0.077115 0.517248 +vt 0.157843 0.697224 +vt 0.151233 0.697224 +vt 0.154969 0.676344 +vt 0.057777 0.541903 +vt 0.057777 0.520746 +vt 0.285202 0.565673 +vt 0.274107 0.541018 +vt 0.285202 0.541018 +vt 0.082432 0.541903 +vt 0.057777 0.544778 +vt 0.136231 0.644951 +vt 0.133357 0.631391 +vt 0.136231 0.631391 +vt 0.151942 0.638926 +vt 0.139968 0.631391 +vt 0.157388 0.620296 +vt 0.109962 0.632696 +vt 0.107088 0.619135 +vt 0.109962 0.619135 +vt 0.113699 0.632696 +vt 0.113738 0.619135 +vt 0.121532 0.625161 +vt 0.076295 0.688899 +vt 0.089855 0.671519 +vt 0.089855 0.688899 +vt 0.103450 0.518685 +vt 0.086070 0.515811 +vt 0.103450 0.515811 +vt 0.231790 0.688984 +vt 0.226472 0.664328 +vt 0.231790 0.664328 +vt 0.176531 0.639683 +vt 0.181848 0.664339 +vt 0.176531 0.664339 +vt 0.133357 0.542324 +vt 0.133260 0.547538 +vt 0.133260 0.542226 +vt 0.101218 0.527071 +vt 0.088302 0.527071 +vt 0.086070 0.518685 +vt 0.088302 0.537276 +vt 0.101218 0.537276 +vt 0.101770 0.543341 +vt 0.271087 0.590329 +vt 0.285107 0.565673 +vt 0.285107 0.590329 +vt 0.087750 0.544778 +vt 0.087750 0.543341 +vt 0.131743 0.542226 +vt 0.133181 0.566881 +vt 0.131743 0.566881 +vt 0.131743 0.566881 +vt 0.133181 0.591537 +vt 0.131743 0.591537 +vt 0.132534 0.634040 +vt 0.131119 0.640066 +vt 0.131119 0.634040 +vt 0.258439 0.613448 +vt 0.257024 0.609307 +vt 0.258439 0.609307 +vt 0.278036 0.607848 +vt 0.279450 0.613874 +vt 0.278036 0.613874 +vt 0.282177 0.607848 +vt 0.278036 0.601822 +vt 0.282177 0.601822 +vt 0.092911 0.677545 +vt 0.094325 0.671519 +vt 0.094325 0.677545 +vt 0.255609 0.613448 +vt 0.257024 0.609307 +vt 0.257024 0.613448 +vt 0.094325 0.683571 +vt 0.092911 0.677545 +vt 0.094325 0.677545 +vt 0.281887 0.485497 +vt 0.277746 0.479471 +vt 0.281887 0.479471 +vt 0.786280 0.515326 +vt 0.770512 0.499558 +vt 0.786280 0.499558 +vt 0.722175 0.451879 +vt 0.737943 0.436111 +vt 0.737943 0.451879 +vt 0.830449 0.815071 +vt 0.846218 0.798216 +vt 0.846218 0.815071 +vt 0.690638 0.451879 +vt 0.706407 0.419256 +vt 0.706407 0.451879 +vt 0.718250 0.533728 +vt 0.723122 0.555072 +vt 0.718250 0.555072 +vt 0.824551 0.567530 +vt 0.819678 0.546186 +vt 0.824551 0.546186 +vt 0.712664 0.451751 +vt 0.722175 0.451879 +vt 0.706407 0.451879 +vt 0.684381 0.451751 +vt 0.674870 0.451879 +vt 0.674998 0.451751 +vt 0.712664 0.440436 +vt 0.706407 0.436111 +vt 0.684381 0.440436 +vt 0.690638 0.451879 +vt 0.722175 0.419256 +vt 0.722047 0.430407 +vt 0.674870 0.419256 +vt 0.690638 0.436111 +vt 0.722047 0.451751 +vt 0.674998 0.430407 +vt 0.764126 0.541124 +vt 0.754743 0.552438 +vt 0.754743 0.531094 +vt 0.825130 0.493798 +vt 0.820258 0.483768 +vt 0.825130 0.483768 +vt 0.825130 0.505113 +vt 0.820258 0.493798 +vt 0.764817 0.561821 +vt 0.759944 0.552438 +vt 0.764817 0.552438 +vt 0.773509 0.542409 +vt 0.764126 0.531094 +vt 0.773509 0.531094 +vt 0.814806 0.546186 +vt 0.819678 0.556215 +vt 0.814806 0.556215 +vt 0.819678 0.567530 +vt 0.814806 0.567530 +vt 0.812468 0.419256 +vt 0.817341 0.428638 +vt 0.812468 0.428638 +vt 0.063094 0.515811 +vt 0.151233 0.672568 +vt 0.157843 0.672568 +vt 0.082432 0.520746 +vt 0.274107 0.565673 +vt 0.082432 0.544778 +vt 0.154969 0.676206 +vt 0.157843 0.676206 +vt 0.133357 0.644951 +vt 0.147801 0.638926 +vt 0.147801 0.644951 +vt 0.140007 0.644951 +vt 0.133357 0.631391 +vt 0.136231 0.620296 +vt 0.133357 0.620296 +vt 0.157388 0.644951 +vt 0.151942 0.644951 +vt 0.107088 0.632696 +vt 0.125673 0.619135 +vt 0.131119 0.619135 +vt 0.125673 0.625161 +vt 0.131119 0.643791 +vt 0.109962 0.643791 +vt 0.107088 0.643791 +vt 0.107088 0.632696 +vt 0.121532 0.619135 +vt 0.076295 0.671519 +vt 0.226472 0.688984 +vt 0.181848 0.639683 +vt 0.083847 0.530254 +vt 0.082432 0.530254 +vt 0.082432 0.522461 +vt 0.107088 0.522461 +vt 0.107088 0.530254 +vt 0.105673 0.530254 +vt 0.105673 0.534395 +vt 0.101218 0.534395 +vt 0.088302 0.530254 +vt 0.107088 0.534395 +vt 0.107088 0.539842 +vt 0.082432 0.539842 +vt 0.082432 0.534395 +vt 0.083847 0.534395 +vt 0.271087 0.565673 +vt 0.101770 0.544778 +vt 0.133181 0.542226 +vt 0.133181 0.566881 +vt 0.132534 0.640066 +vt 0.257024 0.613448 +vt 0.279450 0.607848 +vt 0.278036 0.607848 +vt 0.092911 0.671519 +vt 0.255609 0.609307 +vt 0.092911 0.683571 +vt 0.277746 0.485497 +vt 0.770512 0.515326 +vt 0.722175 0.436111 +vt 0.830449 0.798216 +vt 0.690638 0.419256 +vt 0.723122 0.533728 +vt 0.819678 0.567530 +vt 0.764126 0.552438 +vt 0.820258 0.505113 +vt 0.759944 0.561821 +vt 0.764126 0.552438 +vt 0.819678 0.546186 +vt 0.817341 0.419256 +vn 0.0000 -1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.0000 0.7685 -0.6399 +vn 0.0000 0.7685 0.6399 +vn -0.0000 -0.6093 0.7929 +vn -0.0005 -0.6060 0.7955 +vn 0.0000 -0.6097 0.7926 +vn -0.0000 -0.6094 -0.7928 +vn -0.0005 -0.6060 -0.7955 +vn -0.0006 -0.6057 -0.7957 +vn 0.6832 0.7303 0.0000 +vn -0.0000 -0.6094 0.7928 +vn -0.0006 -0.6057 0.7957 +vn -0.0005 -0.6059 0.7955 +vn 0.0000 -0.6097 -0.7926 +s off +f 165/402/73 166/403/73 167/404/73 +f 168/405/74 165/406/74 167/407/74 +f 168/408/75 169/409/75 170/410/75 +f 167/411/76 166/412/76 171/413/76 +f 170/414/77 169/415/77 172/416/77 +f 165/402/73 173/417/73 166/403/73 +f 168/405/74 170/418/74 165/406/74 +f 168/408/75 174/419/75 169/409/75 +f 171/413/76 174/420/76 168/421/76 +f 168/421/76 167/411/76 171/413/76 +f 172/416/77 173/422/77 165/423/77 +f 165/423/77 170/414/77 172/416/77 +s 1 +f 175/424/78 176/425/78 177/426/78 +f 178/427/74 179/428/74 180/429/74 +f 181/430/78 182/431/78 175/424/78 +f 183/432/73 184/433/73 185/434/73 +f 186/435/78 185/436/78 181/430/78 +f 187/437/76 188/438/76 189/439/76 +f 190/440/76 179/441/76 191/442/76 +f 192/443/77 193/444/77 194/445/77 +f 195/446/77 196/447/77 197/448/77 +f 198/449/73 199/450/73 188/451/73 +f 187/452/74 193/453/74 198/454/74 +f 200/455/79 175/456/79 182/457/79 +f 191/458/80 201/459/80 202/460/80 +f 192/461/78 195/462/78 180/463/78 +f 179/441/81 187/437/82 189/439/83 +f 195/446/84 194/445/85 196/447/86 +f 169/464/74 174/465/74 194/466/74 +f 166/467/74 173/468/74 201/469/74 +f 203/470/75 204/471/75 205/472/75 +f 201/469/74 205/473/74 206/474/74 +f 177/475/76 203/476/76 201/477/76 +f 206/478/77 204/479/77 175/480/77 +f 190/481/73 207/482/73 208/483/73 +f 209/484/74 190/485/74 208/486/74 +f 210/487/75 211/488/75 209/489/75 +f 209/490/76 207/491/76 210/492/76 +f 212/493/73 213/494/73 214/495/73 +f 215/496/74 214/497/74 197/498/74 +f 216/499/75 215/500/75 197/501/75 +f 212/502/77 217/503/77 218/504/77 +f 219/505/74 220/506/74 221/507/74 +f 222/508/75 223/509/75 220/510/75 +f 224/511/87 225/512/87 223/513/87 +f 226/514/73 221/515/73 225/516/73 +f 227/517/73 228/518/73 229/519/73 +f 230/520/73 231/521/73 232/522/73 +f 233/523/77 221/524/77 220/525/77 +f 234/526/76 219/527/76 232/528/76 +f 235/529/77 220/525/77 223/530/77 +f 236/531/76 222/532/76 234/526/76 +f 235/529/77 225/533/77 229/534/77 +f 236/531/76 226/535/76 224/536/76 +f 229/534/77 221/524/77 227/537/77 +f 230/538/76 219/527/76 226/535/76 +f 237/539/76 231/540/76 238/541/76 +f 236/542/87 238/543/87 230/544/87 +f 234/545/75 237/546/75 236/542/75 +f 232/547/74 239/548/74 234/549/74 +f 240/550/77 241/551/77 242/552/77 +f 229/553/87 240/554/87 235/555/87 +f 235/555/75 242/556/75 233/557/75 +f 233/558/74 241/559/74 227/560/74 +f 175/424/78 204/561/78 176/425/78 +f 180/429/74 195/562/74 184/563/74 +f 184/563/74 178/427/74 180/429/74 +f 175/424/78 177/426/78 181/430/78 +f 177/426/78 191/564/78 186/435/78 +f 181/430/78 177/426/78 186/435/78 +f 183/432/73 178/565/73 184/433/73 +f 186/435/78 183/566/78 185/436/78 +f 195/562/74 184/563/74 192/567/74 +f 184/563/74 199/568/74 192/567/74 +f 187/437/76 198/569/76 188/438/76 +f 211/570/76 243/571/76 244/572/76 +f 179/441/76 178/573/76 186/574/76 +f 178/573/76 183/575/76 186/574/76 +f 211/570/76 244/572/76 179/441/76 +f 202/576/76 245/577/76 190/440/76 +f 190/440/76 211/570/76 179/441/76 +f 186/574/76 191/442/76 179/441/76 +f 191/442/76 202/576/76 190/440/76 +f 192/443/77 199/578/77 193/444/77 +f 213/579/77 200/580/77 214/581/77 +f 200/580/77 182/582/77 214/581/77 +f 181/583/77 185/584/77 184/585/77 +f 196/447/77 216/586/77 197/448/77 +f 197/448/77 214/581/77 195/446/77 +f 214/581/77 182/582/77 195/446/77 +f 182/582/77 181/583/77 195/446/77 +f 181/583/77 184/585/77 195/446/77 +f 198/449/73 193/587/73 199/450/73 +f 187/452/74 194/466/74 193/453/74 +f 200/455/79 206/588/79 175/456/79 +f 191/458/80 177/589/80 201/459/80 +f 179/441/88 244/572/89 187/437/90 +f 195/446/84 192/443/91 194/445/85 +f 217/590/74 216/591/74 196/592/74 +f 196/592/74 194/466/74 174/465/74 +f 194/466/74 187/452/74 169/464/74 +f 187/452/74 244/593/74 169/464/74 +f 244/593/74 243/594/74 210/595/74 +f 210/595/74 207/596/74 172/597/74 +f 244/593/74 210/595/74 169/464/74 +f 171/598/74 217/590/74 174/465/74 +f 217/590/74 196/592/74 174/465/74 +f 210/595/74 172/597/74 169/464/74 +f 207/596/74 245/599/74 202/600/74 +f 202/600/74 201/469/74 173/468/74 +f 201/469/74 206/474/74 166/467/74 +f 206/474/74 200/601/74 166/467/74 +f 200/601/74 213/602/74 218/603/74 +f 218/603/74 217/590/74 171/598/74 +f 200/601/74 218/603/74 166/467/74 +f 172/597/74 207/596/74 173/468/74 +f 207/596/74 202/600/74 173/468/74 +f 218/603/74 171/598/74 166/467/74 +f 203/470/75 176/604/75 204/471/75 +f 201/469/74 203/605/74 205/473/74 +f 177/475/76 176/606/76 203/476/76 +f 206/478/77 205/607/77 204/479/77 +f 190/481/73 245/608/73 207/482/73 +f 209/484/74 211/609/74 190/485/74 +f 210/487/75 243/610/75 211/488/75 +f 209/490/76 208/611/76 207/491/76 +f 212/493/73 218/612/73 213/494/73 +f 215/496/74 212/613/74 214/497/74 +f 216/499/75 217/614/75 215/500/75 +f 212/502/77 215/615/77 217/503/77 +f 219/505/74 222/616/74 220/506/74 +f 222/508/75 224/617/75 223/509/75 +f 224/511/87 226/618/87 225/512/87 +f 226/514/73 219/619/73 221/515/73 +f 227/517/73 241/620/73 228/518/73 +f 230/520/73 238/621/73 231/521/73 +f 233/523/77 227/537/77 221/524/77 +f 234/526/76 222/532/76 219/527/76 +f 235/529/77 233/523/77 220/525/77 +f 236/531/76 224/536/76 222/532/76 +f 235/529/77 223/530/77 225/533/77 +f 236/531/76 230/538/76 226/535/76 +f 229/534/77 225/533/77 221/524/77 +f 230/538/76 232/528/76 219/527/76 +f 237/539/76 239/622/76 231/540/76 +f 236/542/87 237/546/87 238/543/87 +f 234/545/75 239/623/75 237/546/75 +f 232/547/74 231/624/74 239/548/74 +f 240/550/77 228/625/77 241/551/77 +f 229/553/87 228/626/87 240/554/87 +f 235/555/75 240/554/75 242/556/75 +f 233/558/74 242/627/74 241/559/74 +o Cube.002_Cube +v -1.095610 1.625188 -0.234177 +v -1.095610 1.625188 0.234177 +v -0.297669 1.625188 0.234177 +v -0.297669 0.827247 -0.290974 +v -0.297669 0.827247 0.290974 +v -1.095610 0.827247 0.290974 +v -1.095610 0.827247 -0.290974 +v -1.095610 1.547310 -0.290974 +v -0.297669 1.547310 -0.290974 +v -1.095610 1.547310 0.290974 +v -0.297669 1.547310 0.290974 +v -0.301915 1.683539 -0.297414 +v 0.325300 1.638647 -0.297414 +v 0.325300 1.638647 0.297414 +v -0.302927 1.619990 0.338900 +v 0.256739 0.882166 0.338900 +v -0.219849 0.826827 0.338900 +v -0.301915 1.683539 0.297414 +v -0.302927 1.619990 -0.338900 +v 0.400435 0.678089 -0.338900 +v 0.400435 0.678089 0.338900 +v 0.436428 0.664438 0.338900 +v 0.692792 1.263916 -0.315319 +v 0.692792 1.263916 0.315319 +v 0.705099 1.292695 0.297414 +v 0.448735 0.693216 -0.315319 +v 0.407419 0.710885 -0.315319 +v 0.651476 1.281585 -0.315319 +v 0.256739 0.882166 -0.338900 +v 0.436428 0.664438 -0.338900 +v 0.682158 1.239051 -0.338900 +v 0.705099 1.292695 -0.297414 +v -0.219849 0.826827 -0.338900 +v -0.315574 0.825936 -0.338900 +v 0.155569 0.765703 -0.338900 +v 0.155569 0.765703 0.338900 +v 0.682158 1.239051 0.338900 +v 0.448735 0.693216 0.315319 +v 0.651476 1.281585 0.315319 +v 0.407419 0.710885 0.315319 +v 0.319523 1.574904 -0.338900 +v 0.319523 1.574904 0.338901 +v 0.402713 0.663629 -0.329854 +v 0.102029 0.584604 -0.329854 +v 0.102029 0.584604 -0.289854 +v -0.302741 -1.027009 0.242548 +v -0.302741 -1.027009 -0.242548 +v -0.794022 0.825278 -0.242548 +v -0.641417 0.826187 0.329854 +v -0.151202 0.829110 -0.329854 +v -0.151202 0.829110 0.329854 +v -0.127086 -0.456995 -0.329854 +v -0.112735 -0.502614 -0.289854 +v -0.127086 -0.456995 -0.289854 +v -0.194491 -0.056135 0.289854 +v 0.402713 0.663629 0.289854 +v -0.186785 -0.152242 0.289854 +v -0.150610 -1.024312 -0.329854 +v -0.241652 -1.468922 -0.242548 +v 0.102041 0.584607 0.329854 +v 0.402713 0.663629 0.329854 +v 0.050261 -1.020750 0.329854 +v -0.127081 -0.456995 0.329854 +v -0.112735 -0.502614 0.289854 +v -0.180638 0.180149 -0.289854 +v -0.158985 0.267266 -0.289854 +v -0.641417 0.826187 -0.329854 +v -0.178092 0.223543 -0.329854 +v -0.073065 0.463883 -0.329854 +v 0.394433 0.695669 -0.329854 +v 0.402713 0.663629 -0.289854 +v 0.160908 0.775540 0.329854 +v 0.160908 0.775540 -0.329854 +v -0.197054 -0.099825 0.329854 +v -0.197054 -0.099825 0.289854 +v -0.178082 0.223545 0.329854 +v -0.178082 0.223545 0.289854 +v -0.180412 0.183825 0.289854 +v -0.163477 0.256966 0.289854 +v -0.073054 0.463886 0.329854 +v -0.073054 0.463886 0.289854 +v -0.188127 -0.145432 -0.289854 +v -0.197061 -0.099827 -0.289854 +v -0.197061 -0.099827 -0.329854 +v -0.178092 0.223543 -0.289854 +v -0.073065 0.463883 -0.289854 +v -0.150610 -1.024312 0.329854 +v 0.050261 -1.020750 -0.289854 +v 0.050261 -1.020750 -0.329854 +v 0.111350 -1.462662 -0.329854 +v -0.113476 -0.500244 0.289854 +v -0.135150 -0.415807 0.289854 +v -0.127081 -0.456995 0.289854 +v -0.136364 -0.409639 -0.289854 +v -0.194215 -0.051306 -0.289854 +v 0.687958 -0.482851 0.289854 +v 0.685628 -0.522570 0.329854 +v -0.010229 -0.513327 0.289854 +v 0.671023 -0.555991 0.289854 +v -0.008370 -0.524153 -0.289854 +v 0.685638 -0.522568 -0.329854 +v 0.666531 -0.566291 -0.289854 +v 0.688183 -0.479174 -0.289854 +v 0.587958 -0.122851 0.289854 +v 0.585628 -0.162570 0.329854 +v -0.110229 -0.153328 0.289854 +v 0.571023 -0.195991 0.289854 +v -0.108370 -0.164153 -0.289854 +v 0.585638 -0.162568 -0.329854 +v 0.566531 -0.206291 -0.289854 +v 0.588183 -0.119175 -0.289854 +v 0.487958 0.177149 0.289854 +v 0.485628 0.137430 0.329854 +v -0.210229 0.146672 0.289854 +v 0.471023 0.104009 0.289854 +v -0.208370 0.135847 -0.289854 +v 0.485638 0.137432 -0.329854 +v 0.466531 0.093709 -0.289854 +v 0.488183 0.180825 -0.289854 +v -2.428700 -0.152910 0.180480 +v -2.428700 -0.152910 -0.180480 +v -2.428700 0.826962 -0.180480 +v -2.428700 0.826962 0.180480 +v -0.532968 0.826962 -0.180480 +v -1.947172 0.209575 0.180480 +v -1.947172 0.464477 0.180480 +v -0.768854 0.209575 -0.180480 +v -0.532968 0.009535 -0.180480 +v -0.768854 0.464477 -0.180480 +v -0.814090 -0.152910 0.180480 +v -0.814090 -0.152910 -0.180480 +v -0.532968 0.826962 0.180480 +v -0.768854 0.464477 0.180480 +v -0.532968 0.009535 0.180480 +v -0.768854 0.209575 0.180480 +v -1.555754 -0.016604 -0.180480 +v -1.160272 -0.016604 -0.180480 +v -1.160272 -0.016604 0.180480 +v -1.947172 0.209575 -0.180480 +v -1.555754 0.690656 -0.180480 +v -1.555754 0.690656 0.180480 +v -1.160272 0.690656 0.180480 +v -1.832528 0.049642 -0.180480 +v -1.555754 -0.016604 0.180480 +v -1.832528 0.049642 0.180480 +v -1.832528 0.624410 -0.180480 +v -1.832528 0.624410 0.180480 +v -1.947172 0.464477 -0.180480 +v -0.883498 0.624410 -0.180480 +v -0.883498 0.624410 0.180480 +v -1.160272 0.690656 -0.180480 +v -0.883497 0.049642 -0.180480 +v -0.883497 0.049642 0.180480 +v -0.731751 -0.038044 -0.180480 +v -0.615307 -0.105331 -0.180480 +v -0.731751 -0.038044 0.180480 +v -0.615307 -0.105331 0.180480 +v 0.147745 1.652255 0.147745 +v 0.059919 1.764108 0.147745 +v 0.059919 1.764108 -0.147745 +v 0.059098 1.947745 -0.147745 +v 0.059098 1.947745 -0.090000 +v -0.037745 1.947745 -0.090000 +v -0.037745 1.947745 0.147745 +v -0.037745 1.947745 0.090000 +v 0.059098 1.947745 0.090000 +v -0.037745 1.652255 -0.147745 +v -0.037745 1.810000 -0.090000 +v -0.037745 1.652255 0.147745 +v 0.059098 1.652255 -0.147745 +v 0.059098 1.652255 0.147745 +v 0.059713 1.810000 0.090000 +v 0.059714 1.810000 -0.090000 +v -0.037745 1.810000 0.090000 +v 0.111350 -1.462662 0.329854 +v 0.111350 -1.462662 0.289854 +v -0.241652 -1.468922 0.242548 +v -0.089520 -1.466224 0.329854 +v 0.050261 -1.020750 0.289854 +v 0.111350 -1.462662 -0.289854 +v 0.855111 -1.267190 -0.289854 +v 0.794022 -0.825277 0.289854 +v 0.855111 -1.267190 0.289854 +v 0.794022 -0.825277 -0.289854 +v -0.089520 -1.466224 -0.329854 +v -0.297669 1.625188 -0.234177 +v -0.315574 0.825936 0.338900 +v -0.794022 0.825278 0.242548 +v 0.102041 0.584607 0.289854 +v 0.394433 0.695669 0.329854 +v 0.147745 1.652255 -0.147745 +v -0.037745 1.947745 -0.147745 +v 0.059098 1.947745 0.147745 +vt 0.711812 0.471594 +vt 0.711812 0.446767 +vt 0.680964 0.446767 +vt 0.805920 0.407025 +vt 0.805920 0.376176 +vt 0.775071 0.376176 +vt 0.865063 0.529825 +vt 0.865063 0.498977 +vt 0.837225 0.498977 +vt 0.837225 0.503312 +vt 0.806377 0.531149 +vt 0.837225 0.531149 +vt 0.805920 0.404014 +vt 0.808930 0.376176 +vt 0.805920 0.379187 +vt 0.711812 0.443756 +vt 0.680964 0.443756 +vt 0.680964 0.474605 +vt 0.711812 0.474605 +vt 0.865063 0.560674 +vt 0.865063 0.529825 +vt 0.837225 0.529825 +vt 0.196676 0.580182 +vt 0.198638 0.568986 +vt 0.198638 0.580182 +vt 0.202301 0.557317 +vt 0.202003 0.568962 +vt 0.200521 0.567525 +vt 0.252709 0.490184 +vt 0.252709 0.501381 +vt 0.251802 0.502161 +vt 0.268384 0.515205 +vt 0.268204 0.502447 +vt 0.268384 0.502447 +vt 0.190074 0.494543 +vt 0.201608 0.494104 +vt 0.201945 0.494543 +vt 0.215016 0.553502 +vt 0.214869 0.562501 +vt 0.214869 0.553699 +vt 0.270019 0.476989 +vt 0.268711 0.482827 +vt 0.269448 0.473995 +vt 0.201608 0.489403 +vt 0.190411 0.494104 +vt 0.190411 0.489403 +vt 0.175037 0.556930 +vt 0.174709 0.544172 +vt 0.175037 0.544172 +vt 0.269561 0.474151 +vt 0.270328 0.475132 +vt 0.271501 0.475552 +vt 0.200830 0.569382 +vt 0.200063 0.570363 +vt 0.175928 0.556930 +vt 0.269539 0.515205 +vt 0.269539 0.502447 +vt 0.199950 0.570518 +vt 0.199213 0.561687 +vt 0.201945 0.503251 +vt 0.202389 0.494922 +vt 0.202389 0.503690 +vt 0.190074 0.503251 +vt 0.189630 0.494922 +vt 0.189630 0.503690 +vt 0.201945 0.494327 +vt 0.190074 0.503035 +vt 0.190074 0.494327 +vt 0.214869 0.562501 +vt 0.214723 0.553502 +vt 0.214869 0.553699 +vt 0.202301 0.555340 +vt 0.202066 0.543470 +vt 0.202301 0.543470 +vt 0.201945 0.503035 +vt 0.271799 0.487196 +vt 0.269843 0.488286 +vt 0.269858 0.487334 +vt 0.200345 0.556228 +vt 0.202301 0.556374 +vt 0.202389 0.490352 +vt 0.189630 0.490352 +vt 0.464855 0.529949 +vt 0.463811 0.525673 +vt 0.464741 0.525648 +vt 0.541595 0.470689 +vt 0.552956 0.455884 +vt 0.552956 0.470689 +vt 0.495764 0.457949 +vt 0.495700 0.464582 +vt 0.480655 0.464582 +vt 0.465113 0.561405 +vt 0.464176 0.561405 +vt 0.464176 0.561048 +vt 0.428367 0.557666 +vt 0.428602 0.558400 +vt 0.417840 0.553461 +vt 0.432501 0.526433 +vt 0.432487 0.524369 +vt 0.432487 0.524369 +vt 0.447648 0.543050 +vt 0.448693 0.547326 +vt 0.447763 0.547351 +vt 0.447639 0.556854 +vt 0.448576 0.560903 +vt 0.447639 0.561259 +vt 0.543340 0.505049 +vt 0.543936 0.504441 +vt 0.548547 0.502582 +vt 0.447133 0.524278 +vt 0.444246 0.531090 +vt 0.442354 0.529086 +vt 0.526173 0.548018 +vt 0.526173 0.534441 +vt 0.526424 0.533504 +vt 0.495759 0.468690 +vt 0.480832 0.471681 +vt 0.480714 0.468690 +vt 0.447639 0.564075 +vt 0.448576 0.563662 +vt 0.448576 0.564075 +vt 0.447639 0.566674 +vt 0.448576 0.566355 +vt 0.448576 0.566674 +vt 0.448676 0.538323 +vt 0.447639 0.540283 +vt 0.447763 0.538036 +vt 0.448570 0.540258 +vt 0.464176 0.563861 +vt 0.465113 0.564221 +vt 0.464176 0.564221 +vt 0.464176 0.566470 +vt 0.465113 0.566819 +vt 0.464176 0.566819 +vt 0.463903 0.521068 +vt 0.464732 0.522882 +vt 0.463801 0.522907 +vt 0.447133 0.522212 +vt 0.432487 0.535944 +vt 0.417840 0.535854 +vt 0.417854 0.533789 +vt 0.464176 0.557000 +vt 0.465113 0.557000 +vt 0.465113 0.557000 +vt 0.427707 0.531136 +vt 0.429600 0.529132 +vt 0.448576 0.560921 +vt 0.448576 0.564426 +vt 0.448693 0.538011 +vt 0.448576 0.561259 +vt 0.448576 0.561584 +vt 0.464176 0.561778 +vt 0.464176 0.564611 +vt 0.463925 0.520660 +vt 0.464855 0.520634 +vt 0.448622 0.547351 +vt 0.448622 0.556854 +vt 0.447639 0.547480 +vt 0.448493 0.547734 +vt 0.561882 0.548292 +vt 0.561882 0.538853 +vt 0.560931 0.539306 +vt 0.560222 0.427399 +vt 0.559252 0.427573 +vt 0.560222 0.436888 +vt 0.497349 0.455842 +vt 0.496785 0.455044 +vt 0.497349 0.454852 +vt 0.496212 0.455047 +vt 0.496785 0.455842 +vt 0.496785 0.454852 +vt 0.465176 0.503339 +vt 0.465176 0.512842 +vt 0.464193 0.503468 +vt 0.465046 0.503723 +vt 0.562125 0.436838 +vt 0.562125 0.427399 +vt 0.561173 0.427852 +vt 0.559434 0.504073 +vt 0.558464 0.504246 +vt 0.559434 0.513561 +vt 0.498483 0.454852 +vt 0.498483 0.455829 +vt 0.497912 0.455661 +vt 0.495638 0.455842 +vt 0.495351 0.454905 +vt 0.495032 0.455842 +vt 0.513969 0.554419 +vt 0.513969 0.563922 +vt 0.512986 0.554548 +vt 0.513840 0.554802 +vt 0.561173 0.436838 +vt 0.561173 0.427399 +vt 0.560222 0.427852 +vt 0.559252 0.427399 +vt 0.558283 0.427573 +vt 0.559252 0.436888 +vt 0.497912 0.455842 +vt 0.497349 0.455044 +vt 0.497912 0.454852 +vt 0.495638 0.455047 +vt 0.496212 0.455842 +vt 0.496212 0.454852 +vt 0.790369 0.584153 +vt 0.807860 0.566663 +vt 0.807860 0.584153 +vt 0.736752 0.536381 +vt 0.754243 0.516827 +vt 0.754243 0.536381 +vt 0.730282 0.521794 +vt 0.725732 0.521794 +vt 0.719261 0.516827 +vt 0.783899 0.518298 +vt 0.779349 0.518298 +vt 0.787470 0.515864 +vt 0.789225 0.476691 +vt 0.806715 0.460090 +vt 0.806715 0.476691 +vt 0.859498 0.531650 +vt 0.844953 0.514160 +vt 0.859498 0.514160 +vt 0.725732 0.533948 +vt 0.730282 0.533948 +vt 0.733853 0.536381 +vt 0.878389 0.583395 +vt 0.874310 0.600886 +vt 0.874310 0.583395 +vt 0.836080 0.601637 +vt 0.831530 0.619127 +vt 0.831530 0.601637 +vt 0.793120 0.601644 +vt 0.797656 0.619135 +vt 0.793120 0.619135 +vt 0.875157 0.496278 +vt 0.879223 0.513768 +vt 0.875157 0.513768 +vt 0.881244 0.583395 +vt 0.878389 0.600886 +vt 0.790369 0.601644 +vt 0.790369 0.619135 +vt 0.872217 0.496278 +vt 0.872217 0.513768 +vt 0.797656 0.601644 +vt 0.800596 0.619135 +vt 0.828675 0.619127 +vt 0.828675 0.601637 +vt 0.879223 0.496278 +vt 0.881974 0.513768 +vt 0.871455 0.600886 +vt 0.871455 0.583395 +vt 0.838935 0.601637 +vt 0.836080 0.619127 +vt 0.789520 0.516714 +vt 0.788319 0.517915 +vt 0.790369 0.518764 +vt 0.736752 0.533481 +vt 0.735903 0.535531 +vt 0.734702 0.534330 +vt 0.844953 0.531650 +vt 0.842842 0.514160 +vt 0.789225 0.478803 +vt 0.806715 0.478803 +vt 0.779349 0.530451 +vt 0.783899 0.530451 +vt 0.790369 0.535418 +vt 0.669019 0.496557 +vt 0.655640 0.491475 +vt 0.669019 0.491475 +vt 0.720612 0.449763 +vt 0.717998 0.454147 +vt 0.717998 0.449763 +vt 0.720770 0.516156 +vt 0.718155 0.520541 +vt 0.718155 0.516156 +vt 0.682398 0.496540 +vt 0.682398 0.483160 +vt 0.689541 0.493925 +vt 0.712614 0.509919 +vt 0.708600 0.496540 +vt 0.712614 0.496540 +vt 0.699791 0.562879 +vt 0.695777 0.562879 +vt 0.699754 0.557815 +vt 0.716999 0.496540 +vt 0.765161 0.950852 +vt 0.765161 0.845911 +vt 0.781459 0.930344 +vt 0.708598 0.557815 +vt 0.708561 0.562879 +vt 0.704176 0.562879 +vt 0.673432 0.562955 +vt 0.669019 0.554805 +vt 0.673432 0.554805 +vt 0.681979 0.561042 +vt 0.677594 0.554805 +vt 0.681979 0.554805 +vt 0.718183 0.516156 +vt 0.722568 0.509919 +vt 0.722568 0.516156 +vt 0.479644 0.451091 +vt 0.494061 0.451091 +vt 0.494991 0.451091 +vt 0.493032 0.455842 +vt 0.481746 0.455842 +vt 0.417873 0.531063 +vt 0.417854 0.533789 +vt 0.417873 0.531063 +vt 0.448576 0.556854 +vt 0.448576 0.556854 +vt 0.541595 0.470689 +vt 0.542206 0.514475 +vt 0.552850 0.514475 +vt 0.542206 0.514475 +vt 0.428484 0.565354 +vt 0.417840 0.565354 +vt 0.417840 0.565354 +vt 0.514493 0.548018 +vt 0.514493 0.534441 +vt 0.514493 0.534441 +vt 0.417840 0.535854 +vt 0.432520 0.529160 +vt 0.432501 0.526433 +vt 0.680964 0.471594 +vt 0.775071 0.407025 +vt 0.837225 0.529825 +vt 0.806377 0.503312 +vt 0.809388 0.500301 +vt 0.834214 0.500301 +vt 0.836768 0.407025 +vt 0.836768 0.376176 +vt 0.808930 0.407025 +vt 0.837225 0.560674 +vt 0.196676 0.568986 +vt 0.200359 0.557180 +vt 0.202301 0.569099 +vt 0.240474 0.502161 +vt 0.240474 0.489403 +vt 0.251802 0.489403 +vt 0.268204 0.515205 +vt 0.215016 0.562304 +vt 0.174709 0.556930 +vt 0.175928 0.544172 +vt 0.214723 0.562304 +vt 0.202066 0.555340 +vt 0.271799 0.488139 +vt 0.271799 0.475415 +vt 0.463925 0.529975 +vt 0.541595 0.455884 +vt 0.480719 0.457949 +vt 0.482731 0.455884 +vt 0.493793 0.455884 +vt 0.422143 0.553461 +vt 0.427334 0.555901 +vt 0.424912 0.554020 +vt 0.426850 0.555388 +vt 0.427163 0.555609 +vt 0.428843 0.561163 +vt 0.428845 0.561144 +vt 0.428838 0.560470 +vt 0.428875 0.560794 +vt 0.428555 0.557988 +vt 0.448579 0.543024 +vt 0.552850 0.502582 +vt 0.552850 0.514475 +vt 0.542094 0.507467 +vt 0.541847 0.510284 +vt 0.541815 0.509915 +vt 0.541858 0.509543 +vt 0.542344 0.506752 +vt 0.545778 0.503140 +vt 0.543527 0.504730 +vt 0.542135 0.507109 +vt 0.436979 0.528127 +vt 0.447133 0.530918 +vt 0.446696 0.535010 +vt 0.445191 0.533751 +vt 0.446054 0.537976 +vt 0.445801 0.538011 +vt 0.439802 0.528046 +vt 0.526424 0.548955 +vt 0.526173 0.548955 +vt 0.526173 0.533504 +vt 0.495877 0.471681 +vt 0.432487 0.538011 +vt 0.464176 0.557000 +vt 0.430545 0.526471 +vt 0.431154 0.522212 +vt 0.431408 0.522246 +vt 0.432049 0.525212 +vt 0.432487 0.529304 +vt 0.425155 0.532176 +vt 0.422332 0.532095 +vt 0.790369 0.566663 +vt 0.736752 0.516827 +vt 0.721695 0.529910 +vt 0.722877 0.532765 +vt 0.719261 0.536381 +vt 0.736752 0.516827 +vt 0.734319 0.525831 +vt 0.733137 0.532765 +vt 0.734319 0.529910 +vt 0.721695 0.525831 +vt 0.733137 0.522976 +vt 0.722877 0.522976 +vt 0.776494 0.519480 +vt 0.772878 0.515864 +vt 0.786754 0.519480 +vt 0.789225 0.460090 +vt 0.881244 0.600886 +vt 0.800596 0.601644 +vt 0.881974 0.496278 +vt 0.838935 0.619127 +vt 0.842842 0.531650 +vt 0.787936 0.522335 +vt 0.787936 0.526414 +vt 0.775312 0.522335 +vt 0.775312 0.526414 +vt 0.772878 0.535418 +vt 0.776494 0.529269 +vt 0.786754 0.529269 +vt 0.655640 0.496557 +vt 0.720612 0.454147 +vt 0.720770 0.520541 +vt 0.695777 0.493925 +vt 0.695777 0.496540 +vt 0.695777 0.483160 +vt 0.689541 0.485775 +vt 0.695777 0.485775 +vt 0.708600 0.509919 +vt 0.699791 0.549500 +vt 0.704176 0.549500 +vt 0.704176 0.562879 +vt 0.716999 0.509919 +vt 0.830378 0.930344 +vt 0.830378 0.950852 +vt 0.830378 0.845911 +vt 0.781459 0.866419 +vt 0.830378 0.866419 +vt 0.704176 0.549500 +vt 0.708561 0.549500 +vt 0.712575 0.562879 +vt 0.669019 0.562955 +vt 0.677566 0.561042 +vt 0.718155 0.509919 +vt 0.480574 0.451091 +vt 0.480580 0.440448 +vt 0.494067 0.440448 +vt 0.479684 0.453794 +vt 0.495032 0.453794 +vt 0.447639 0.556854 +vt 0.552956 0.470689 +vt 0.428484 0.565354 +vt 0.514493 0.548018 +vt 0.432520 0.529160 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 1.0000 0.0000 0.0000 +vn -1.0000 -0.0000 0.0000 +vn 0.0000 0.5892 0.8080 +vn 0.0000 0.5892 -0.8080 +vn 0.0000 -0.0000 1.0000 +vn 0.0714 0.9974 0.0000 +vn -0.9999 0.0159 0.0000 +vn -0.3458 -0.9383 0.0000 +vn -0.3546 -0.9350 0.0000 +vn 0.9195 -0.3932 -0.0001 +vn 0.9195 -0.3932 0.0000 +vn 0.9195 -0.3932 0.0001 +vn 0.6734 0.7393 0.0000 +vn -0.0760 -0.9971 0.0000 +vn 0.0093 -1.0000 0.0000 +vn -0.2498 -0.9683 0.0000 +vn -0.3932 -0.9195 0.0000 +vn -0.3932 -0.9194 0.0000 +vn 0.3932 0.9195 0.0000 +vn 0.0391 0.5455 -0.8372 +vn 0.1976 0.5222 -0.8296 +vn 0.2639 0.5081 -0.8199 +vn 0.0391 0.5456 0.8372 +vn 0.1976 0.5223 0.8296 +vn 0.0391 0.5458 0.8370 +vn 0.4106 0.4439 0.7964 +vn 0.2639 0.5081 0.8199 +vn 0.4094 0.4421 0.7981 +vn 0.4106 0.4439 -0.7964 +vn 0.4094 0.4421 -0.7981 +vn 0.2542 -0.9672 0.0000 +vn 0.4172 -0.9088 0.0000 +vn -0.9804 -0.1970 0.0000 +vn -0.9666 -0.2564 0.0000 +vn -0.0060 1.0000 0.0000 +vn 0.0819 0.9966 0.0000 +vn 0.9691 0.2466 0.0000 +vn 0.9539 0.3001 -0.0000 +vn -0.4941 -0.0963 -0.8640 +vn -0.4957 -0.0685 -0.8658 +vn -0.4938 -0.1025 -0.8635 +vn 0.9757 0.2193 -0.0000 +vn 0.9540 0.2997 0.0004 +vn 0.9691 0.2465 -0.0000 +vn 0.9678 0.2515 0.0000 +vn 0.9682 0.2502 0.0000 +vn 0.2472 0.9690 0.0000 +vn 0.3236 0.9462 0.0000 +vn 0.9977 0.0674 -0.0000 +vn 0.9813 0.1923 0.0000 +vn 0.9724 -0.2331 0.0000 +vn 0.9983 -0.0586 0.0000 +vn 0.9163 -0.4004 0.0000 +vn 0.5676 -0.8233 0.0000 +vn -0.4918 -0.1304 -0.8609 +vn -0.4918 -0.1304 0.8609 +vn -0.4938 -0.1025 0.8635 +vn -0.4941 -0.0963 0.8640 +vn 0.9906 0.1369 0.0000 +vn 0.9543 0.2988 0.0015 +vn -0.0310 0.7102 0.7034 +vn -0.0574 0.0006 0.9984 +vn 0.6188 -0.0838 0.7811 +vn 0.3632 -0.7760 0.5157 +vn -0.0415 -0.6645 -0.7461 +vn -0.0438 0.6785 -0.7333 +vn 0.9609 -0.2225 -0.1650 +vn 0.9516 -0.2365 0.1960 +vn 0.9609 -0.2225 -0.1649 +vn 0.1172 -0.9931 -0.0000 +vn 0.1172 0.9931 0.0000 +vn -0.1172 0.9931 0.0000 +vn -0.1172 -0.9931 0.0000 +vn 0.2328 0.9725 0.0000 +vn 0.8128 0.5826 0.0000 +vn 0.2328 -0.9725 0.0000 +vn 0.8128 -0.5826 0.0000 +vn -0.8128 -0.5826 0.0000 +vn -0.2328 -0.9725 0.0000 +vn -0.2328 0.9725 0.0000 +vn -0.8128 0.5826 0.0000 +vn 0.7865 0.6176 0.0000 +vn 1.0000 0.0045 -0.0000 +vn 0.0177 -0.9998 0.0000 +vn -0.9906 -0.1369 0.0000 +vn 0.9806 0.1959 0.0000 +vn -0.4957 -0.0685 0.8658 +vn 0.0391 0.5458 -0.8370 +vn 0.0000 0.0000 0.0000 +s 1 +f 246/628/92 247/629/92 248/630/92 +f 249/631/93 250/632/93 251/633/93 +f 249/634/94 252/635/94 253/636/94 +f 254/637/95 250/638/95 249/639/95 +f 246/640/96 255/641/96 247/642/96 +f 255/643/97 256/644/97 248/630/97 +f 254/645/98 253/646/98 246/628/98 +f 251/647/99 250/648/99 256/649/99 +f 257/650/100 259/651/100 258/652/100 +f 260/653/99 262/654/99 261/655/99 +f 263/656/101 257/657/101 264/658/101 +f 265/659/102 267/660/103 266/661/102 +f 268/662/104 270/663/105 269/664/106 +f 271/665/99 273/666/99 272/667/99 +f 274/668/94 276/669/94 275/670/94 +f 259/671/107 277/672/107 258/673/107 +f 262/674/108 279/675/109 278/676/108 +f 265/677/94 280/678/94 274/668/94 +f 280/678/94 278/679/94 274/668/94 +f 262/654/99 281/680/99 261/655/99 +f 281/680/99 266/681/99 261/655/99 +f 278/676/108 281/682/110 262/674/108 +f 280/683/110 266/661/102 281/684/110 +f 261/655/99 267/685/99 282/686/99 +f 283/687/105 282/688/105 267/689/105 +f 271/690/105 276/691/105 268/662/104 +f 283/687/105 275/692/105 271/690/105 +f 284/693/105 272/694/105 273/695/105 +f 283/696/94 284/697/94 269/698/94 +f 269/699/111 273/700/112 268/701/112 +f 271/690/113 285/702/113 283/687/113 +f 270/663/105 282/688/105 269/664/106 +f 276/691/105 277/672/105 268/662/104 +f 264/703/114 258/704/115 286/705/116 +f 260/653/117 259/706/118 263/707/119 +f 270/663/120 287/708/121 282/688/122 +f 286/709/116 277/672/123 276/691/124 +f 278/679/94 264/703/94 274/668/94 +f 288/710/125 290/711/126 289/712/126 +f 291/713/127 293/714/128 292/715/127 +f 294/716/129 296/717/130 295/718/130 +f 297/719/131 299/720/131 298/721/132 +f 300/722/99 302/723/99 301/724/99 +f 303/725/133 304/726/134 292/727/135 +f 305/728/126 301/729/125 306/730/125 +f 307/731/136 309/732/137 308/733/138 +f 310/734/94 311/735/94 290/736/94 +f 312/737/94 314/738/94 313/739/94 +f 301/740/139 316/741/139 315/742/140 +f 317/743/141 315/744/142 318/745/141 +f 319/746/143 302/747/144 320/748/143 +f 321/749/145 323/750/146 322/751/145 +f 324/752/147 325/753/147 321/754/145 +f 326/755/148 305/728/126 325/753/148 +f 327/756/144 329/757/143 328/758/143 +f 310/759/146 313/760/145 330/761/145 +f 311/762/147 314/763/147 331/764/147 +f 314/763/148 290/711/126 331/764/148 +f 312/737/149 292/727/135 293/765/149 +f 294/766/150 291/767/151 332/768/152 +f 333/769/136 335/770/153 334/771/136 +f 318/745/141 296/717/130 317/743/141 +f 321/772/99 325/773/99 294/766/99 +f 308/733/138 309/732/137 336/774/154 +f 308/733/138 302/747/144 319/746/143 +f 319/746/143 320/748/143 300/775/146 +f 300/775/146 321/749/145 319/746/143 +f 321/754/145 322/776/145 324/752/147 +f 308/733/138 338/777/138 337/778/144 +f 308/733/138 336/774/154 338/777/138 +f 334/771/136 298/721/132 333/769/136 +f 299/720/131 297/719/131 339/779/144 +f 339/779/144 329/757/143 327/756/144 +f 328/758/143 329/757/143 340/780/146 +f 340/780/146 313/760/145 310/759/146 +f 330/781/145 313/782/145 311/762/147 +f 341/783/155 343/784/156 342/785/157 +f 344/786/158 342/785/157 343/784/156 +f 345/787/159 346/788/159 347/789/159 +f 348/790/160 346/791/160 345/792/160 +f 342/793/157 344/794/158 341/795/161 +f 347/796/162 346/797/162 348/798/162 +f 349/799/155 351/800/156 350/801/157 +f 352/802/158 350/801/157 351/800/156 +f 353/803/159 354/804/159 355/805/159 +f 356/806/160 354/807/160 353/808/160 +f 350/809/157 352/810/158 349/811/163 +f 355/812/162 354/813/162 356/814/162 +f 357/815/155 359/816/156 358/817/157 +f 360/818/158 358/817/157 359/816/156 +f 361/819/159 362/820/159 363/821/159 +f 364/822/160 362/823/160 361/824/160 +f 358/825/157 360/826/158 357/827/161 +f 363/828/162 362/829/162 364/830/162 +f 365/831/96 367/832/96 366/833/96 +f 368/834/92 369/835/92 367/836/92 +f 370/837/99 371/838/99 368/839/99 +f 372/840/94 374/841/94 373/842/94 +f 375/843/164 366/844/93 376/845/164 +f 377/846/95 373/847/95 369/848/95 +f 378/849/99 380/850/99 379/851/99 +f 381/852/165 383/853/166 382/854/166 +f 372/855/96 378/856/96 374/857/96 +f 384/858/95 371/859/95 370/860/95 +f 385/861/164 387/862/167 386/863/164 +f 388/864/168 389/865/165 381/852/165 +f 388/866/169 370/860/169 390/867/169 +f 391/868/170 386/863/164 392/869/170 +f 393/870/171 392/871/171 371/859/171 +f 374/857/172 395/872/172 394/873/172 +f 396/874/167 395/875/173 387/862/167 +f 382/854/166 398/876/174 397/877/174 +f 397/878/175 380/879/175 372/855/175 +f 373/842/94 400/880/94 399/881/94 +f 400/880/94 376/882/94 399/881/94 +f 375/883/99 402/884/99 401/885/99 +f 402/884/99 379/851/99 401/885/99 +f 379/886/171 400/887/171 373/847/171 +f 402/888/170 376/845/164 400/889/170 +f 393/890/94 384/891/94 366/892/94 +f 403/893/176 405/894/176 404/895/176 +f 406/896/92 408/897/92 407/898/92 +f 409/899/92 411/900/92 410/901/92 +f 412/902/96 414/903/96 413/904/96 +f 415/905/93 403/906/93 416/907/93 +f 416/908/99 403/909/99 404/910/99 +f 414/911/93 415/905/93 416/907/93 +f 404/912/177 405/913/177 417/914/177 +f 405/915/94 415/916/94 412/917/94 +f 418/918/92 419/919/92 417/920/92 +f 413/921/99 407/922/99 408/923/99 +f 411/924/94 419/925/94 410/926/94 +f 335/927/92 421/928/92 420/929/92 +f 422/930/178 304/931/178 335/927/178 +f 307/932/99 423/933/99 420/934/99 +f 307/731/136 421/935/153 424/936/136 +f 292/715/127 422/937/179 291/713/127 +f 333/938/94 426/939/94 425/940/94 +f 424/941/99 428/942/99 427/943/99 +f 427/944/180 426/945/153 429/946/180 +f 332/768/152 422/947/181 423/933/181 +f 334/948/94 430/949/94 303/725/94 +f 246/628/92 248/630/92 431/950/92 +f 249/631/93 251/633/93 252/951/93 +f 249/634/94 253/636/94 254/952/94 +f 250/638/95 254/637/95 256/953/95 +f 256/953/95 254/637/95 248/954/95 +f 248/954/95 254/637/95 431/955/95 +f 255/641/96 252/956/96 251/957/96 +f 252/956/96 255/641/96 253/958/96 +f 253/958/96 255/641/96 246/640/96 +f 255/643/97 248/630/97 247/629/97 +f 254/645/98 246/628/98 431/950/98 +f 251/647/99 256/649/99 255/959/99 +f 257/650/100 263/960/100 259/651/100 +f 261/655/99 287/961/99 260/653/99 +f 260/653/99 432/962/99 262/654/99 +f 264/658/101 279/963/101 432/964/101 +f 432/964/101 260/965/101 264/658/101 +f 260/965/101 263/656/101 264/658/101 +f 265/659/102 275/966/103 267/660/103 +f 268/662/104 277/672/105 270/663/105 +f 271/665/99 268/967/99 273/666/99 +f 275/670/94 265/677/94 274/668/94 +f 274/668/94 286/705/94 276/669/94 +f 259/671/107 270/663/107 277/672/107 +f 262/674/108 432/968/109 279/675/109 +f 278/676/108 280/969/110 281/682/110 +f 280/683/110 265/659/102 266/661/102 +f 282/686/99 287/961/99 261/655/99 +f 261/655/99 266/681/99 267/685/99 +f 283/687/105 269/664/106 282/688/105 +f 271/690/105 275/692/105 276/691/105 +f 283/687/105 267/689/105 275/692/105 +f 284/693/105 285/702/105 272/694/105 +f 283/696/94 285/970/94 284/697/94 +f 269/699/111 284/971/111 273/700/112 +f 271/690/113 272/694/113 285/702/113 +f 264/703/114 257/972/182 258/704/115 +f 260/653/117 287/961/121 259/706/118 +f 270/663/120 259/671/118 287/708/121 +f 286/709/116 258/673/115 277/672/123 +f 279/973/94 264/703/94 278/679/94 +f 264/703/94 286/705/94 274/668/94 +f 288/710/125 316/974/125 290/711/126 +f 291/713/127 433/975/128 293/714/128 +f 295/718/130 312/976/129 294/716/129 +f 312/976/129 293/977/129 294/716/129 +f 293/977/129 433/978/129 294/716/129 +f 301/724/99 434/979/99 323/980/99 +f 434/979/99 326/981/99 324/982/99 +f 324/982/99 322/983/99 323/980/99 +f 434/979/99 324/982/99 323/980/99 +f 424/941/99 427/943/99 309/984/99 +f 427/943/99 301/724/99 302/723/99 +f 336/985/99 427/943/99 337/986/99 +f 336/985/99 309/984/99 427/943/99 +f 337/986/99 338/987/99 336/985/99 +f 300/722/99 320/988/99 302/723/99 +f 302/723/99 337/986/99 427/943/99 +f 323/980/99 300/722/99 301/724/99 +f 303/725/133 430/949/134 304/726/134 +f 305/728/126 434/989/126 301/729/125 +f 307/731/136 424/936/136 309/732/137 +f 316/990/94 429/991/94 327/992/94 +f 429/991/94 333/938/94 298/993/94 +f 298/993/94 299/994/94 339/995/94 +f 429/991/94 298/993/94 339/995/94 +f 316/990/94 327/992/94 340/996/94 +f 331/997/94 290/736/94 311/735/94 +f 290/736/94 316/990/94 310/734/94 +f 311/735/94 310/734/94 330/998/94 +f 340/996/94 310/734/94 316/990/94 +f 327/992/94 328/999/94 340/996/94 +f 339/995/94 327/992/94 429/991/94 +f 297/1000/94 334/948/94 303/725/94 +f 312/737/94 295/1001/94 314/738/94 +f 295/1001/94 318/1002/94 289/1003/94 +f 318/1002/94 315/1004/94 289/1003/94 +f 315/1004/94 288/1005/94 289/1003/94 +f 297/1000/94 303/725/94 329/1006/94 +f 303/725/94 312/737/94 329/1006/94 +f 295/1001/94 289/1003/94 314/738/94 +f 313/739/94 329/1006/94 312/737/94 +f 315/742/140 435/1007/140 301/740/139 +f 435/1007/140 306/1008/140 301/740/139 +f 301/740/139 427/944/180 429/946/180 +f 316/741/139 288/1009/140 315/742/140 +f 301/740/139 429/946/180 316/741/139 +f 317/743/141 435/1010/142 315/744/142 +f 324/752/147 326/755/147 325/753/147 +f 326/755/148 434/989/126 305/728/126 +f 311/762/147 313/782/145 314/763/147 +f 314/763/148 289/712/126 290/711/126 +f 312/737/149 303/725/133 292/727/135 +f 294/766/150 433/1011/150 291/767/151 +f 333/769/136 425/1012/153 335/770/153 +f 318/745/141 295/718/130 296/717/130 +f 305/1013/99 306/1014/99 435/1015/99 +f 435/1015/99 317/1016/99 305/1013/99 +f 317/1016/99 296/1017/99 305/1013/99 +f 294/766/99 332/768/99 319/1018/99 +f 332/768/99 307/932/99 308/1019/99 +f 332/768/99 308/1019/99 319/1018/99 +f 296/1017/99 294/766/99 325/773/99 +f 305/1013/99 296/1017/99 325/773/99 +f 294/766/99 319/1018/99 321/772/99 +f 308/733/138 337/778/144 302/747/144 +f 300/775/146 323/750/146 321/749/145 +f 334/771/136 297/719/131 298/721/132 +f 339/779/144 297/719/131 329/757/143 +f 340/780/146 329/757/143 313/760/145 +f 365/831/96 368/1020/96 367/832/96 +f 368/834/92 377/1021/92 369/835/92 +f 387/1022/99 395/1023/99 377/1024/99 +f 365/1025/99 375/883/99 389/1026/99 +f 375/883/99 401/885/99 398/1027/99 +f 389/1026/99 375/883/99 383/1028/99 +f 398/1027/99 383/1028/99 375/883/99 +f 387/1022/99 377/1024/99 386/1029/99 +f 377/1024/99 368/839/99 386/1029/99 +f 365/1025/99 389/1026/99 390/1030/99 +f 392/1031/99 386/1029/99 368/839/99 +f 371/838/99 392/1031/99 368/839/99 +f 368/839/99 365/1025/99 370/837/99 +f 365/1025/99 390/1030/99 370/837/99 +f 374/841/94 394/1032/94 369/1033/94 +f 369/1033/94 373/842/94 374/841/94 +f 373/842/94 399/881/94 372/840/94 +f 399/881/94 397/1034/94 372/840/94 +f 375/843/164 365/1035/93 366/844/93 +f 377/846/95 379/886/95 373/847/95 +f 380/850/99 398/1027/99 401/885/99 +f 401/885/99 379/851/99 380/850/99 +f 379/851/99 377/1024/99 378/849/99 +f 377/1024/99 395/1023/99 378/849/99 +f 381/852/165 389/865/165 383/853/166 +f 372/855/96 380/879/96 378/856/96 +f 384/858/95 393/870/95 371/859/95 +f 385/861/164 396/874/167 387/862/167 +f 388/864/168 390/1036/168 389/865/165 +f 388/866/169 384/858/169 370/860/169 +f 391/868/170 385/861/164 386/863/164 +f 393/870/171 391/1037/171 392/871/171 +f 374/857/172 378/856/172 395/872/172 +f 396/874/167 394/1038/173 395/875/173 +f 382/854/166 383/853/166 398/876/174 +f 397/878/175 398/1039/175 380/879/175 +f 379/886/171 402/1040/171 400/887/171 +f 402/888/170 375/843/164 376/845/164 +f 382/1041/94 397/1034/94 376/882/94 +f 397/1034/94 399/881/94 376/882/94 +f 376/882/94 366/892/94 381/1042/94 +f 382/1041/94 376/882/94 381/1042/94 +f 369/1033/94 394/1032/94 396/1043/94 +f 369/1033/94 396/1043/94 385/1044/94 +f 367/1045/94 369/1033/94 385/1044/94 +f 367/1045/94 385/1044/94 391/1046/94 +f 388/1047/94 381/1042/94 366/892/94 +f 384/891/94 388/1047/94 366/892/94 +f 366/892/94 367/1045/94 393/890/94 +f 367/1045/94 391/1046/94 393/890/94 +f 403/893/176 436/1048/176 405/894/176 +f 406/896/92 437/1049/92 408/897/92 +f 409/899/92 438/1050/92 411/900/92 +f 413/904/96 408/1051/96 437/1052/96 +f 414/903/96 409/1053/96 419/1054/96 +f 409/1053/96 410/1055/96 419/1054/96 +f 413/904/96 437/1052/96 412/902/96 +f 414/903/96 419/1054/96 413/904/96 +f 415/905/93 436/1056/93 403/906/93 +f 404/910/99 438/1057/99 409/1058/99 +f 409/1058/99 414/1059/99 404/910/99 +f 414/1059/99 416/908/99 404/910/99 +f 414/911/93 412/1060/93 415/905/93 +f 411/1061/177 438/1062/177 417/914/177 +f 438/1062/177 404/912/177 417/914/177 +f 405/913/177 406/1063/177 418/1064/177 +f 406/1063/177 407/1065/177 418/1064/177 +f 405/913/177 418/1064/177 417/914/177 +f 412/917/94 437/1066/94 405/915/94 +f 437/1066/94 406/1067/94 405/915/94 +f 405/915/94 436/1068/94 415/916/94 +f 418/918/92 413/1069/92 419/919/92 +f 413/921/99 418/1070/99 407/922/99 +f 411/924/94 417/1071/94 419/925/94 +f 425/1072/125 426/1073/125 428/1074/125 +f 425/1072/125 428/1074/125 421/928/125 +f 335/927/183 425/1072/183 421/928/183 +f 430/1075/178 335/927/178 304/931/178 +f 335/927/178 420/929/178 422/930/178 +f 420/929/178 423/1076/178 422/930/178 +f 307/932/99 332/768/99 423/933/99 +f 307/731/136 420/1077/153 421/935/153 +f 292/715/127 304/1078/179 422/937/179 +f 333/938/94 429/991/94 426/939/94 +f 424/941/99 421/1079/99 428/942/99 +f 427/944/180 428/1080/153 426/945/153 +f 332/768/152 291/767/151 422/947/181 +f 334/948/94 335/1081/94 430/949/94 diff --git a/src/main/resources/assets/hbm/textures/blocks/anvil_osmiridium.png b/src/main/resources/assets/hbm/textures/blocks/anvil_osmiridium.png new file mode 100644 index 0000000000000000000000000000000000000000..cbbf5158fc141ad130dc1fe6285deb7bf3dd4517 GIT binary patch literal 516 zcmV+f0{i`mP)!07QgZE6?-b?wA?222_>jc^G3LB7_k3Qg`R)A+=Uo zYt&k?udgrWoQyH(y`!qsS}CPqW}N4Vh@h(EoXI)Ud*Ab0!TbG2L@=}c)7@#U@jMUD z^B^Ky;ZkAueG_9uMD{zz0HF6y2!Wh4s!B?U>$;e80`PvnF?Zj*?oQ5`5CQ-p1jZO2 zRx`|u5CXk-fRB+PLQ07-2Bj3n7+dajT^nhsSXc|iLI``Sh~Vz@-ia~d?vzrti9b_X zi|ja#ox;KZP*p+*q?Bl_?Io)Rz4s5=d7fLknE?=EWX_4IZd1?mq_svVWykr?8{3f` z$3bgtmt|p{=ZU*>-#0mDT5H4@2_c|sc-1w8fU06-D16%6i5aAJx5g%xrUB z*F`C1cYmd_xK{#8wYAnZyQ&gnB*sY2d6((+dht9DwN|d{;y4aUDIX8!oQTL?u#lGA z`@Z@9{wC+lD&27$|9h}Ls_Jgt&)c@x-F+L^TBG;QoRhyi+<7Ok{$pAI00007K=xrs+nr^)G+ea7?PErp9gFa!CmZhVQHR Ve!k(j@Cj%pgQu&X%Q~loCICEEIHmvq literal 0 HcmV?d00001 diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index b72484de6..381ff64eb 100755 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -3,7 +3,7 @@ "modid": "hbm", "name": "Hbm's Nuclear Tech", "description": "A mod that adds weapons, nuclear themed stuff and machines", - "version":"1.0.27_X4109", + "version":"1.0.27_X4116", "mcversion": "1.7.10", "url": "", "updateUrl": "",