diff --git a/src/main/java/assets/hbm/lang/de_DE.lang b/src/main/java/assets/hbm/lang/de_DE.lang index d7b0d1273..8bc46d6ae 100644 --- a/src/main/java/assets/hbm/lang/de_DE.lang +++ b/src/main/java/assets/hbm/lang/de_DE.lang @@ -107,6 +107,8 @@ chem.POLYMER=Polymersynthese chem.PUF6=Plutoniumhexafluoridproduktion chem.SAS3=Schrabidiumtrisulfatherstellung chem.SATURN=Saturnitherstellung +chem.SCHRABIDATE=Eisenschrabidatherstellung +chem.SCHRABIDIC=Schrabidische Säure mischen chem.SF_BIOFUEL=Biodieselverfestigung chem.SF_BIOGAS=Biogasverfestigung chem.SF_DIESEL=Dieselverfestigung @@ -287,6 +289,7 @@ entity.hbm.entity_schrabnel.name=Schrabnel fluid.acid_fluid=Säure fluid.mud_fluid=Giftiger Schlamm +fluid.schrabidic_fluid=Schrabidische Säure fluid.toxic_fluid=Stereotypischer grüner Schleim geiger.chunkRad=Chunk-Strahlung: @@ -344,6 +347,7 @@ hbmfluid.plasma_xm=Xenon-Quecksilber-Plasma hbmfluid.puf6=Plutoniumhexafluorid hbmfluid.reclaimed=Wiederaufbetreitetes Industrieöl hbmfluid.sas3=Schrabidiumtrisulfat +hbmfluid.schrabidic=Schrabidische Säure hbmfluid.smear=Industrieöl hbmfluid.steam=Dampf hbmfluid.superhotsteam=Superverdichteter Dampf @@ -363,10 +367,10 @@ info.template_out_p=Output: info.template_seconds=Sekunden info.template_time=Produktionszeit: -item.ajr_boots.name=T45-AJR-Powerrüstungsstiefel -item.ajr_helmet.name=T45-AJR-Powerrüstungshelm -item.ajr_legs.name=T45-AJR-Powerrüstungsbeinschutz -item.ajr_plate.name=T45-AJR-Powerrüstungsbrustpanzer +item.ajr_boots.name=AJR-Powerrüstungsstiefel +item.ajr_helmet.name=AJR-Powerrüstungshelm +item.ajr_legs.name=AJR-Powerrüstungsbeinschutz +item.ajr_plate.name=AJR-Powerrüstungsbrustpanzer item.alloy_axe.name=Legierungsaxt item.alloy_boots.name=Legierungsstiefel item.alloy_helmet.name=Legierungshelm @@ -591,6 +595,7 @@ item.bj_helmet.name=Augenklappe mit Infrarot-Sensor item.bj_legs.name=Lunare Kybernetischer Beinersatz item.bj_plate.name=Lunare Kybernetische Panzerung item.black_hole.name=Miniatur Schwarzes Loch +item.blade_meteorite.name=Meteoritenklinge item.blade_titanium.name=Titanturbinenschaufel item.blade_tungsten.name=Wolframverstärktes Turbinenblatt item.blades_advanced_alloy.name=Fortgeschrittenes Sägeblatt @@ -638,6 +643,7 @@ item.boy_target.name=Unterkritischer U235 Hohlkörper item.briquette_lignite.name=Braunkohlebrikett item.bucket_acid.name=Säureeimer item.bucket_mud.name=Eimer mit giftigem Schlamm +item.bucket_schrabidic_acid.name=Eimer mit Schrabidischer Säure item.bucket_toxic.name=Eimer mit stereotypischem grünen Schleim item.burnt_bark.name=Verbrannte Rinde item.can_bepis.name=Bepis @@ -818,7 +824,9 @@ item.coil_gold.name=Goldspule item.coil_gold_torus.name=Goldene Ringspule item.coil_magnetized_tungsten.name=4000K Hochtemperaturensupraleitermagnetspule item.coil_tungsten.name=Heizspirale +item.coin_creeper.name=Nukleare Creeper-Münze item.coin_maskman.name=Maskenmann-Münze +item.coin_radiation.name=Strahlungs-Münze item.coke.name=Koks item.combine_scrap.name=CMB Schrott item.component_emitter.name=Emitterkomponente @@ -1187,6 +1195,8 @@ item.ingot_lanthanium.name=Semistabiler Lanthanbarren item.ingot_lead.name=Bleibarren item.ingot_les.name=Schwach angereicherter Schrabidiumkernbrennstoffbarren item.ingot_magnetized_tungsten.name=Magnetisierter Wolframbarren +item.ingot_meteorite.name=Meteoritenbarren +item.ingot_meteorite_forged.name=Geschmiedeter Meteoritenbarren item.ingot_mox_fuel.name=MOX-Kernbrennstoffbarren item.ingot_neptunium.name=Neptuniumbarren item.ingot_phosphorus.name=Weiße Phosphortafel @@ -1200,6 +1210,7 @@ item.ingot_pu240.name=Pu240-Barren item.ingot_red_copper.name=Minecraft-Kupfer item.ingot_reiium.name=Reiiumbarren item.ingot_saturnite.name=Saturnitbarren +item.ingot_schrabidate.name=Eisenschrabidatbarren item.ingot_schrabidium.name=Schrabidiumbarren item.ingot_schrabidium_fuel.name=Schrabidiumkernbrennstoffbarren item.ingot_schraranium.name=Schraraniumbarren @@ -1271,6 +1282,14 @@ item.memory.name=item.null.name item.mese_gavel.name=Mese-Richterhammer item.mese_pickaxe.name=Mesespitzhacke item.meteor_remote.name=Meteoritenkontroller +item.meteorite_sword.name=Meteoritenschwert +item.meteorite_sword_seared.name=Meteoritenschwert (Versengt) +item.meteorite_sword_reforged.name=Meteorite Sword (Nachgeschmiedet) +item.meteorite_sword_hardened.name=Meteorite Sword (Gehärtet) +item.meteorite_sword_alloyed.name=Meteorite Sword (Legiert) +item.meteorite_sword_machined.name=Meteorite Sword (Maschninenverarbeitet) +item.meteorite_sword_treated.name=Meteorite Sword (Behandelt) +item.meteorite_sword_etched.name=Meteorite Sword (Geätzt) item.mike_cooling_unit.name=Deuteriumkühleinheit item.mike_core.name=Mit Uran ummantelter Deuteriumtank item.mike_deut.name=Deuteriumtank @@ -1642,6 +1661,7 @@ item.powder_power.name=Energiepulver item.powder_quartz.name=Quarzstaub item.powder_red_copper.name=Roter Kupfer Staub item.powder_reiium.name=Reiiumstaub +item.powder_schrabidate.name=Eisenschrabidatstaub item.powder_schrabidium.name=Schrabidiumstaub item.powder_semtex_mix.name=Semtexmischung item.powder_spark_mix.name=Sparkmischung @@ -2111,6 +2131,7 @@ tile.block_combine_steel.name=CMB-Stahlblock tile.block_copper.name=Kupferblock tile.block_daffergon.name=Daffergonblock tile.block_desh.name=Verstärketer Deshblock +tile.block_dineutronium.name=Dineutroniumblock tile.block_dura_steel.name=Verstärketer Schnellarbeitsstahlblock tile.block_electrical_scrap.name=Elektroschrottblock tile.block_euphemium.name=Euphemiumblock @@ -2138,9 +2159,11 @@ tile.block_pu240.name=Pu240-Block tile.block_red_copper.name=Roter Kupferblock tile.block_red_phosphorus.name=Roter Phosphorblock tile.block_reiium.name=Reiiumblock +tile.block_schrabidate.name=Eisenschrabidatblock tile.block_schrabidium.name=Schrabidiumblock tile.block_schrabidium_cluster.name=Schrabidium-Cluster tile.block_schrabidium_fuel.name=Schrabidiumkernbrennstoffblock +tile.block_schraranium.name=Schraraniumblock tile.block_scrap.name=Schrottblock tile.block_solinium.name=Soliniumblock tile.block_starmetal.name=§9Sternenmetallblock§r @@ -2315,6 +2338,7 @@ tile.machine_converter_he_rf.name=HE zu RF Konverter tile.machine_converter_rf_he.name=RF zu HE Konverter tile.machine_crystallizer.name=Erzauflöser tile.machine_cyclotron.name=Zyklotron +tile.machine_detector.name=Energiedetektor tile.machine_deuterium.name=Deuteriumextraktor tile.machine_diesel.name=Dieselgenerator tile.machine_difurnace_off.name=Hochofen diff --git a/src/main/java/assets/hbm/lang/en_US.lang b/src/main/java/assets/hbm/lang/en_US.lang index 59826c956..05d8efdb2 100644 --- a/src/main/java/assets/hbm/lang/en_US.lang +++ b/src/main/java/assets/hbm/lang/en_US.lang @@ -107,6 +107,8 @@ chem.POLYMER=Polymer Synthesis chem.PUF6=Plutonium Hexafluoride Production chem.SAS3=Schrabidium Trisulfide Production chem.SATURN=Saturnite Production +chem.SCHRABIDATE=Ferric Schrabidate Production +chem.SCHRABIDIC=Schrabidic Acid Mixing chem.SF_BIOFUEL=Biofuel Solidification chem.SF_BIOGAS=Biogas Solidification chem.SF_DIESEL=Diesel Solidification @@ -287,6 +289,7 @@ entity.hbm.entity_schrabnel.name=Schrabnel fluid.acid_fluid=Acid fluid.mud_fluid=Poisonous Mud +fluid.schrabidic_fluid=Schrabidic Acid fluid.toxic_fluid=Stereotypical Green Ooze geiger.chunkRad=Current chunk radiation: @@ -344,6 +347,7 @@ hbmfluid.plasma_xm=Xenon-Mercury Plasma hbmfluid.puf6=Plutonium Hexafluoride hbmfluid.reclaimed=Reclaimed Industrial Oil hbmfluid.sas3=Schrabidium Trisulfide +hbmfluid.schrabidic=Schrabidic Acid hbmfluid.smear=Industrial Oil hbmfluid.steam=Steam hbmfluid.superhotsteam=Super Dense Steam @@ -363,10 +367,10 @@ info.template_out_p=Outputs: info.template_seconds=seconds info.template_time=Production Time: -item.ajr_boots.name=T45-AJR Power Armor Boots -item.ajr_helmet.name=T45-AJR Power Armor Helmet -item.ajr_legs.name=T45-AJR Power Armor Leggings -item.ajr_plate.name=T45-AJR Power Armor Chestplate +item.ajr_boots.name=AJR Power Armor Boots +item.ajr_helmet.name=AJR Power Armor Helmet +item.ajr_legs.name=AJR Power Armor Leggings +item.ajr_plate.name=AJR Power Armor Chestplate item.alloy_axe.name=Advanced Alloy Axe item.alloy_boots.name=Advanced Alloy Boots item.alloy_helmet.name=Advanced Alloy Helmet @@ -591,6 +595,7 @@ item.bj_helmet.name=Eyepatch with Thermal Sensor item.bj_legs.name=Lunar Cybernetic Leg Replacements item.bj_plate.name=Lunar Cybernetic Plating item.black_hole.name=Miniature Black Hole +item.blade_meteorite.name=Meteorite Blade item.blade_titanium.name=Titanium Blade item.blade_tungsten.name=Tungsten Reinforced Blade item.blades_advanced_alloy.name=Advanced Shredder Blades @@ -638,6 +643,7 @@ item.boy_target.name=Subcritical U235 Target item.briquette_lignite.name=Lignite Briquette item.bucket_acid.name=Bucket of Acid item.bucket_mud.name=Bucket of Poisonous Mud +item.bucket_schrabidic_acid.name=Bucket of Schrabidic Acid item.bucket_toxic.name=Bucket of Stereotypical Green Ooze item.burnt_bark.name=Burnt Bark item.can_bepis.name=Bepis @@ -818,7 +824,9 @@ item.coil_gold.name=Gold Coil item.coil_gold_torus.name=Golden Ring Coil item.coil_magnetized_tungsten.name=4000K High Temperature Super Conducting Coil item.coil_tungsten.name=Heating Coil +item.coin_creeper.name=Nuclear Creeper Coin item.coin_maskman.name=Maskman Coin +item.coin_radiation.name=Radiation Coin item.coke.name=Coke item.combine_scrap.name=CMB Scrap Metal item.component_emitter.name=Emitter Component @@ -1187,6 +1195,8 @@ item.ingot_lanthanium.name=Semi-Stable Lanthanium Ingot item.ingot_lead.name=Lead Ingot item.ingot_les.name=Low Enriched Schrabidium Fuel Ingot item.ingot_magnetized_tungsten.name=Magnetized Tungsten Ingot +item.ingot_meteorite.name=Meteorite Ingot +item.ingot_meteorite_forged.name=Forged Meteorite Ingot item.ingot_mox_fuel.name=Ingot of MOX Fuel item.ingot_neptunium.name=Neptunium Ingot item.ingot_phosphorus.name=Bar of White Phosphorus @@ -1200,6 +1210,7 @@ item.ingot_pu240.name=Pu240 Ingot item.ingot_red_copper.name=Minecraft Grade Copper item.ingot_reiium.name=Reiium Ingot item.ingot_saturnite.name=Saturnite Ingot +item.ingot_schrabidate.name=Ferric Schrabidate Ingot item.ingot_schrabidium.name=Schrabidium Ingot item.ingot_schrabidium_fuel.name=Ingot of Schrabidium Fuel item.ingot_schraranium.name=Schraranium Ingot @@ -1271,6 +1282,16 @@ item.memory.name=item.null.name item.mese_gavel.name=Mese Gavel item.mese_pickaxe.name=Mese Pickaxe item.meteor_remote.name=Meteorite Remote +item.meteorite_sword.name=Meteorite Sword +item.meteorite_sword_seared.name=Meteorite Sword (Seared) +item.meteorite_sword_reforged.name=Meteorite Sword (Reforged) +item.meteorite_sword_hardened.name=Meteorite Sword (Hardened) +item.meteorite_sword_alloyed.name=Meteorite Sword (Alloyed) +item.meteorite_sword_machined.name=Meteorite Sword (Machined) +item.meteorite_sword_treated.name=Meteorite Sword (Treated) +item.meteorite_sword_etched.name=Meteorite Sword (Etched) +item.meteorite_sword.name=Meteorite Sword +item.meteorite_sword.name=Meteorite Sword item.mike_cooling_unit.name=Deuterium Cooling Unit item.mike_core.name=Uranium Coated Deuterium Tank item.mike_deut.name=Deuterium Tank @@ -1642,6 +1663,7 @@ item.powder_power.name=Energy Powder item.powder_quartz.name=Quartz Powder item.powder_red_copper.name=Red Copper Powder item.powder_reiium.name=Reiium Powder +item.powder_schrabidate.name=Ferric Schrabidate Powder item.powder_schrabidium.name=Schrabidium Powder item.powder_semtex_mix.name=Semtex Blend item.powder_spark_mix.name=Spark Blend @@ -2111,6 +2133,7 @@ tile.block_combine_steel.name=Block of CMB Steel tile.block_copper.name=Block of Copper tile.block_daffergon.name=Block of Daffergon tile.block_desh.name=Reinforced Block of Desh +tile.block_dineutronium.name=Block of Dineutronium tile.block_dura_steel.name=Reinforced Block of High-Speed Steel tile.block_electrical_scrap.name=Block of Electrical Scrap tile.block_euphemium.name=Block of Euphemium @@ -2138,9 +2161,11 @@ tile.block_pu240.name=Block of Pu240 tile.block_red_copper.name=Block of Red Copper tile.block_red_phosphorus.name=Block of Red Phosphorus tile.block_reiium.name=Block of Reiium +tile.block_schrabidate.name=Block of Ferric Schrabidate tile.block_schrabidium.name=Block of Schrabidium tile.block_schrabidium_cluster.name=Schrabidium Cluster tile.block_schrabidium_fuel.name=Block of Schrabidium Fuel +tile.block_schraranium.name=Block of Schraranium tile.block_scrap.name=Block of Scrap tile.block_solinium.name=Block of Solinium tile.block_starmetal.name=§9Block of Starmetal§r @@ -2315,6 +2340,7 @@ tile.machine_converter_he_rf.name=HE to RF Converter tile.machine_converter_rf_he.name=RF to HE Converter tile.machine_crystallizer.name=Ore Acidizer tile.machine_cyclotron.name=Cyclotron +tile.machine_detector.name=Power Detector tile.machine_deuterium.name=Deuterium Extractor tile.machine_diesel.name=Diesel Generator tile.machine_difurnace_off.name=Blast Furnace diff --git a/src/main/java/assets/hbm/textures/blocks/block_dineutronium.png b/src/main/java/assets/hbm/textures/blocks/block_dineutronium.png new file mode 100644 index 000000000..2c8c30f30 Binary files /dev/null and b/src/main/java/assets/hbm/textures/blocks/block_dineutronium.png differ diff --git a/src/main/java/assets/hbm/textures/blocks/block_schrabidate.png b/src/main/java/assets/hbm/textures/blocks/block_schrabidate.png new file mode 100644 index 000000000..86be60412 Binary files /dev/null and b/src/main/java/assets/hbm/textures/blocks/block_schrabidate.png differ diff --git a/src/main/java/assets/hbm/textures/blocks/block_schraranium.png b/src/main/java/assets/hbm/textures/blocks/block_schraranium.png new file mode 100644 index 000000000..ccd1b3cf5 Binary files /dev/null and b/src/main/java/assets/hbm/textures/blocks/block_schraranium.png differ diff --git a/src/main/java/assets/hbm/textures/blocks/machine_detector.png b/src/main/java/assets/hbm/textures/blocks/machine_detector.png new file mode 100644 index 000000000..abab1f6c6 Binary files /dev/null and b/src/main/java/assets/hbm/textures/blocks/machine_detector.png differ diff --git a/src/main/java/assets/hbm/textures/blocks/machine_detector_off.png b/src/main/java/assets/hbm/textures/blocks/machine_detector_off.png new file mode 100644 index 000000000..c40bdf4dc Binary files /dev/null and b/src/main/java/assets/hbm/textures/blocks/machine_detector_off.png differ diff --git a/src/main/java/assets/hbm/textures/gui/fluids2.png b/src/main/java/assets/hbm/textures/gui/fluids2.png index 003cb4d83..09d07681d 100755 Binary files a/src/main/java/assets/hbm/textures/gui/fluids2.png and b/src/main/java/assets/hbm/textures/gui/fluids2.png differ diff --git a/src/main/java/assets/hbm/textures/items/chem_icon_DESH.png b/src/main/java/assets/hbm/textures/items/chem_icon_DESH.png index e5065899b..7349478c1 100644 Binary files a/src/main/java/assets/hbm/textures/items/chem_icon_DESH.png and b/src/main/java/assets/hbm/textures/items/chem_icon_DESH.png differ diff --git a/src/main/java/assets/hbm/textures/models/plate_armor_overlay.png b/src/main/java/assets/hbm/textures/items/plate_armor_overlay.png similarity index 100% rename from src/main/java/assets/hbm/textures/models/plate_armor_overlay.png rename to src/main/java/assets/hbm/textures/items/plate_armor_overlay.png diff --git a/src/main/java/assets/hbm/textures/models/tank_SCHRABIDIC.png b/src/main/java/assets/hbm/textures/models/tank_SCHRABIDIC.png new file mode 100644 index 000000000..3525bcdc2 Binary files /dev/null and b/src/main/java/assets/hbm/textures/models/tank_SCHRABIDIC.png differ diff --git a/src/main/java/assets/hbm/textures/models/tank_SUPERHOTSTEAM.png b/src/main/java/assets/hbm/textures/models/tank_SUPERHOTSTEAM.png index ac8fc1953..c95495fd8 100644 Binary files a/src/main/java/assets/hbm/textures/models/tank_SUPERHOTSTEAM.png and b/src/main/java/assets/hbm/textures/models/tank_SUPERHOTSTEAM.png differ diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 7c5aefbc7..40206745b 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -136,12 +136,15 @@ public class ModBlocks { public static Block block_scrap; public static Block block_electrical_scrap; public static Block block_beryllium; + public static Block block_schraranium; public static Block block_schrabidium; + public static Block block_schrabidate; public static Block block_solinium; public static Block block_schrabidium_fuel; public static Block block_euphemium; public static Block block_schrabidium_cluster; public static Block block_euphemium_cluster; + public static Block block_dineutronium; public static Block block_advanced_alloy; public static Block block_magnetized_tungsten; public static Block block_combine_steel; @@ -498,6 +501,7 @@ public class ModBlocks { public static Block red_cable; public static Block red_pylon; public static Block cable_switch; + public static Block machine_detector; public static Block rf_cable; public static Block oil_duct_solid; public static Block oil_duct; @@ -981,10 +985,13 @@ public class ModBlocks { block_scrap = new BlockFalling(Material.sand).setBlockName("block_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(2.5F).setResistance(5.0F).setStepSound(Block.soundTypeGravel).setBlockTextureName(RefStrings.MODID + ":block_scrap"); block_electrical_scrap = new BlockFalling(Material.iron).setBlockName("block_electrical_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(2.5F).setResistance(5.0F).setStepSound(Block.soundTypeMetal).setBlockTextureName(RefStrings.MODID + ":electrical_scrap_alt2"); block_beryllium = new BlockGeneric(Material.iron).setBlockName("block_beryllium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_beryllium"); + block_schraranium = new BlockOre(Material.iron, 5F, 50F).setBlockName("block_schraranium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_schraranium"); block_schrabidium = new BlockOre(Material.iron, 20F, 250F).setBlockName("block_schrabidium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_schrabidium"); + block_schrabidate = new BlockOre(Material.iron, 5F, 50F).setBlockName("block_schrabidate").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_schrabidate"); block_solinium = new BlockGeneric(Material.iron).setBlockName("block_solinium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_solinium"); block_schrabidium_fuel = new BlockOre(Material.iron, 20F, 250F).setBlockName("block_schrabidium_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_schrabidium_fuel"); block_euphemium = new BlockGeneric(Material.iron).setBlockName("block_euphemium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":block_euphemium"); + block_dineutronium = new BlockGeneric(Material.iron).setBlockName("block_dineutronium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":block_dineutronium"); block_schrabidium_cluster = new BlockRotatablePillar(Material.rock, RefStrings.MODID + ":block_schrabidium_cluster_top").setBlockName("block_schrabidium_cluster").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":block_schrabidium_cluster_side"); block_euphemium_cluster = new BlockRotatablePillar(Material.rock, RefStrings.MODID + ":block_euphemium_cluster_top").setBlockName("block_euphemium_cluster").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":block_euphemium_cluster_side"); block_advanced_alloy = new BlockGeneric(Material.iron).setBlockName("block_advanced_alloy").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_advanced_alloy"); @@ -1268,6 +1275,7 @@ public class ModBlocks { rf_cable = new BlockRFCable(Material.iron).setBlockName("rf_cable").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":rf_cable_icon"); red_pylon = new PylonRedWire(Material.iron).setBlockName("red_pylon").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon"); cable_switch = new CableSwitch(Material.iron).setBlockName("cable_switch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":cable_switch_off"); + machine_detector = new PowerDetector(Material.iron).setBlockName("machine_detector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_detector_off"); oil_duct_solid = new OilDuctSolid(Material.iron).setBlockName("oil_duct_solid").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":oil_duct_solid_alt"); oil_duct = new BlockOilDuct(Material.iron).setBlockName("oil_duct").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":oil_duct_icon_alt"); gas_duct_solid = new GasDuctSolid(Material.iron).setBlockName("gas_duct_solid").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_duct_solid"); @@ -1702,12 +1710,15 @@ public class ModBlocks { GameRegistry.registerBlock(block_trinitite, block_trinitite.getUnlocalizedName()); GameRegistry.registerBlock(block_waste, block_waste.getUnlocalizedName()); GameRegistry.registerBlock(block_waste_painted, block_waste_painted.getUnlocalizedName()); + GameRegistry.registerBlock(block_schraranium, ItemBlockLore.class, block_schraranium.getUnlocalizedName()); GameRegistry.registerBlock(block_schrabidium, ItemBlockLore.class, block_schrabidium.getUnlocalizedName()); + GameRegistry.registerBlock(block_schrabidate, ItemBlockLore.class, block_schrabidate.getUnlocalizedName()); GameRegistry.registerBlock(block_solinium, ItemBlockLore.class, block_solinium.getUnlocalizedName()); GameRegistry.registerBlock(block_schrabidium_fuel, ItemBlockLore.class, block_schrabidium_fuel.getUnlocalizedName()); GameRegistry.registerBlock(block_euphemium, ItemBlockLore.class, block_euphemium.getUnlocalizedName()); GameRegistry.registerBlock(block_schrabidium_cluster, ItemBlockLore.class, block_schrabidium_cluster.getUnlocalizedName()); GameRegistry.registerBlock(block_euphemium_cluster, ItemBlockLore.class, block_euphemium_cluster.getUnlocalizedName()); + GameRegistry.registerBlock(block_dineutronium, block_dineutronium.getUnlocalizedName()); GameRegistry.registerBlock(block_magnetized_tungsten, block_magnetized_tungsten.getUnlocalizedName()); GameRegistry.registerBlock(block_combine_steel, block_combine_steel.getUnlocalizedName()); GameRegistry.registerBlock(block_desh, block_desh.getUnlocalizedName()); @@ -2026,6 +2037,7 @@ public class ModBlocks { GameRegistry.registerBlock(red_wire_coated, red_wire_coated.getUnlocalizedName()); GameRegistry.registerBlock(red_pylon, red_pylon.getUnlocalizedName()); GameRegistry.registerBlock(cable_switch, cable_switch.getUnlocalizedName()); + GameRegistry.registerBlock(machine_detector, machine_detector.getUnlocalizedName()); GameRegistry.registerBlock(rf_cable, rf_cable.getUnlocalizedName()); GameRegistry.registerBlock(oil_duct, oil_duct.getUnlocalizedName()); GameRegistry.registerBlock(oil_duct_solid, oil_duct_solid.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/blocks/generic/BlockCrate.java b/src/main/java/com/hbm/blocks/generic/BlockCrate.java index 7ef7331bf..331a722e8 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockCrate.java +++ b/src/main/java/com/hbm/blocks/generic/BlockCrate.java @@ -166,18 +166,11 @@ public class BlockCrate extends BlockFalling { BlockCrate.addToListWithWeight(redList, ModItems.ammo_44_pip, 1); BlockCrate.addToListWithWeight(redList, ModItems.ammo_44_bj, 1); BlockCrate.addToListWithWeight(redList, ModItems.ammo_44_silver, 1); - BlockCrate.addToListWithWeight(redList, ModItems.gun_calamity_dual, 1); - BlockCrate.addToListWithWeight(redList, ModItems.gun_b92, 1); - BlockCrate.addToListWithWeight(redList, ModItems.weaponized_starblaster_cell, 1); BlockCrate.addToListWithWeight(redList, ModItems.battery_spark, 1); BlockCrate.addToListWithWeight(redList, ModItems.bottle_sparkle, 1); BlockCrate.addToListWithWeight(redList, ModItems.bottle_rad, 1); - BlockCrate.addToListWithWeight(redList, ModItems.missile_taint, 1); BlockCrate.addToListWithWeight(redList, ModItems.ring_starmetal, 1); BlockCrate.addToListWithWeight(redList, ModItems.flame_pony, 1); - BlockCrate.addToListWithWeight(redList, ModItems.burnt_bark, 1); - BlockCrate.addToListWithWeight(redList, ModItems.crystal_horn, 1); - BlockCrate.addToListWithWeight(redList, ModItems.crystal_charred, 1); BlockCrate.addToListWithWeight(redList, Item.getItemFromBlock(ModBlocks.ntm_dirt), 1); BlockCrate.addToListWithWeight(redList, Item.getItemFromBlock(ModBlocks.broadcaster_pc), 1); } diff --git a/src/main/java/com/hbm/blocks/machine/PowerDetector.java b/src/main/java/com/hbm/blocks/machine/PowerDetector.java new file mode 100644 index 000000000..a9c2fac6d --- /dev/null +++ b/src/main/java/com/hbm/blocks/machine/PowerDetector.java @@ -0,0 +1,51 @@ +package com.hbm.blocks.machine; + +import com.hbm.lib.RefStrings; +import com.hbm.tileentity.machine.TileEntityMachineDetector; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.block.BlockContainer; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.IIcon; +import net.minecraft.world.IBlockAccess; +import net.minecraft.world.World; + +public class PowerDetector extends BlockContainer { + + @SideOnly(Side.CLIENT) + private IIcon iconOn; + + public PowerDetector(Material mat) { + super(mat); + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister iconRegister) { + super.registerBlockIcons(iconRegister); + this.iconOn = iconRegister.registerIcon(RefStrings.MODID + ":machine_detector"); + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int metadata) { + return metadata == 1 ? iconOn : blockIcon; + } + + @Override + public TileEntity createNewTileEntity(World world, int meta) { + return new TileEntityMachineDetector(); + } + + public boolean canProvidePower() { + return true; + } + + public int isProvidingWeakPower(IBlockAccess world, int x, int y, int z, int side) { + return world.getBlockMetadata(x, y, z) == 1 ? 15 : 0; + } + +} diff --git a/src/main/java/com/hbm/config/MobConfig.java b/src/main/java/com/hbm/config/MobConfig.java index b08254559..828f3c9bf 100644 --- a/src/main/java/com/hbm/config/MobConfig.java +++ b/src/main/java/com/hbm/config/MobConfig.java @@ -23,6 +23,8 @@ public class MobConfig { public static int elementalChance = 2; public static int elementalAmount = 10; public static int elementalDistance = 32; + + public static boolean enableDucks = true; public static void loadFromConfig(Configuration config) { @@ -47,6 +49,8 @@ public class MobConfig { elementalChance = CommonConfig.createConfigInt(config, CATEGORY, "12.E02_elementalChance", "1:x chance to spawn elementals, must be at least 1", 2); elementalAmount = CommonConfig.createConfigInt(config, CATEGORY, "12.E03_elementalAmount", "How many elementals are spawned each raid", 10); elementalDistance = CommonConfig.createConfigInt(config, CATEGORY, "12.E04_elementalAttackDistance", "How far away elementals will spawn from the targeted player", 32); + + enableDucks = CommonConfig.createConfigBool(config, CATEGORY, "12.D00_enableDucks", "Whether pressing O should allow the player to duck", true); } } diff --git a/src/main/java/com/hbm/crafting/ArmorRecipes.java b/src/main/java/com/hbm/crafting/ArmorRecipes.java index 19c6a96a3..633b83c4d 100644 --- a/src/main/java/com/hbm/crafting/ArmorRecipes.java +++ b/src/main/java/com/hbm/crafting/ArmorRecipes.java @@ -48,8 +48,8 @@ public class ArmorRecipes { //Power armor GameRegistry.addRecipe(new ItemStack(ModItems.t45_helmet, 1), new Object[] { "PPC", "PBP", "IXI", 'P', ModItems.plate_armor_titanium, 'C', ModItems.circuit_targeting_tier3, 'I', ModItems.plate_polymer, 'X', ModItems.gas_mask_m65, 'B', ModItems.titanium_helmet }); - GameRegistry.addRecipe(new ItemStack(ModItems.t45_plate, 1), new Object[] { "MPM", "TBT", "PPP", 'M', ModItems.motor_desh, 'P', ModItems.plate_armor_titanium, 'T', ModItems.gas_empty, 'B', ModItems.titanium_plate }); - GameRegistry.addRecipe(new ItemStack(ModItems.t45_legs, 1), new Object[] { "MPM", "PBP", "P P", 'M', ModItems.motor_desh, 'P', ModItems.plate_armor_titanium, 'B', ModItems.titanium_legs }); + GameRegistry.addRecipe(new ItemStack(ModItems.t45_plate, 1), new Object[] { "MPM", "TBT", "PPP", 'M', ModItems.motor, 'P', ModItems.plate_armor_titanium, 'T', ModItems.gas_empty, 'B', ModItems.titanium_plate }); + GameRegistry.addRecipe(new ItemStack(ModItems.t45_legs, 1), new Object[] { "MPM", "PBP", "P P", 'M', ModItems.motor, 'P', ModItems.plate_armor_titanium, 'B', ModItems.titanium_legs }); GameRegistry.addRecipe(new ItemStack(ModItems.t45_boots, 1), new Object[] { "P P", "PBP", 'P', ModItems.plate_armor_titanium, 'B', ModItems.titanium_boots }); GameRegistry.addRecipe(new ItemStack(ModItems.ajr_helmet, 1), new Object[] { "PPC", "PBP", "IXI", 'P', ModItems.plate_armor_ajr, 'C', ModItems.circuit_targeting_tier4, 'I', ModItems.ingot_polymer, 'X', ModItems.gas_mask_m65, 'B', ModItems.alloy_helmet }); GameRegistry.addRecipe(new ItemStack(ModItems.ajr_plate, 1), new Object[] { "MPM", "TBT", "PPP", 'M', ModItems.motor_desh, 'P', ModItems.plate_armor_ajr, 'T', ModItems.gas_empty, 'B', ModItems.alloy_plate }); diff --git a/src/main/java/com/hbm/crafting/MineralRecipes.java b/src/main/java/com/hbm/crafting/MineralRecipes.java index 2abfd1442..631e320a1 100644 --- a/src/main/java/com/hbm/crafting/MineralRecipes.java +++ b/src/main/java/com/hbm/crafting/MineralRecipes.java @@ -18,6 +18,16 @@ public class MineralRecipes { public static void register() { RecipesCommon.add9To1(ModItems.ingot_aluminium, ModBlocks.block_aluminium); + RecipesCommon.add1To9(ModBlocks.block_aluminium, ModItems.ingot_aluminium); + + RecipesCommon.add9To1(ModItems.ingot_schraranium, ModBlocks.block_schraranium); + RecipesCommon.add1To9(ModBlocks.block_schraranium, ModItems.ingot_schraranium); + + RecipesCommon.add9To1(ModItems.ingot_schrabidate, ModBlocks.block_schrabidate); + RecipesCommon.add1To9(ModBlocks.block_schrabidate, ModItems.ingot_schrabidate); + + RecipesCommon.add9To1(ModItems.ingot_dineutronium, ModBlocks.block_dineutronium); + RecipesCommon.add1To9(ModBlocks.block_dineutronium, ModItems.ingot_dineutronium); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.block_copper), 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_copper }); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.block_fluorite), 1), new Object[] { "###", "###", "###", '#', ModItems.fluorite }); @@ -76,7 +86,6 @@ public class MineralRecipes { GameRegistry.addRecipe(new ItemStack(ModBlocks.block_fiberglass, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_fiberglass }); GameRegistry.addRecipe(new ItemStack(ModBlocks.block_cobalt, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_cobalt }); - GameRegistry.addRecipe(new ItemStack(ModItems.ingot_aluminium, 9), new Object[] { "#", '#', Item.getItemFromBlock(ModBlocks.block_aluminium) }); GameRegistry.addRecipe(new ItemStack(ModItems.ingot_copper, 9), new Object[] { "#", '#', Item.getItemFromBlock(ModBlocks.block_copper) }); GameRegistry.addRecipe(new ItemStack(ModItems.fluorite, 9), new Object[] { "#", '#', Item.getItemFromBlock(ModBlocks.block_fluorite) }); GameRegistry.addRecipe(new ItemStack(ModItems.niter, 9), new Object[] { "#", '#', Item.getItemFromBlock(ModBlocks.block_niter) }); diff --git a/src/main/java/com/hbm/crafting/PowderRecipes.java b/src/main/java/com/hbm/crafting/PowderRecipes.java index fdd75f025..5bd682f4c 100644 --- a/src/main/java/com/hbm/crafting/PowderRecipes.java +++ b/src/main/java/com/hbm/crafting/PowderRecipes.java @@ -29,6 +29,7 @@ public class PowderRecipes { GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_meteorite, 5), new Object[] { "dustIron", "dustCopper", "dustLithium", "dustTungsten", "dustUranium" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_thermite, 4), new Object[] { "dustIron", "dustIron", "dustIron", "dustAluminum" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_semtex_mix, 3), new Object[] { ModItems.solid_fuel, ModItems.cordite, "dustSaltpeter" })); + GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_semtex_mix, 1), new Object[] { ModItems.solid_fuel, ModItems.ballistite, "dustSaltpeter" })); //Desh GameRegistry.addShapelessRecipe(new ItemStack(ModItems.powder_desh_mix, 1), new Object[] { ModItems.powder_actinium_tiny, ModItems.powder_actinium_tiny, ModItems.powder_lanthanium_tiny, ModItems.powder_lanthanium_tiny, ModItems.powder_cerium_tiny, ModItems.powder_cobalt_tiny, ModItems.powder_lithium_tiny, ModItems.powder_neodymium_tiny, ModItems.powder_niobium_tiny }); diff --git a/src/main/java/com/hbm/crafting/RecipesCommon.java b/src/main/java/com/hbm/crafting/RecipesCommon.java index 53c1c52b0..3dc714f52 100644 --- a/src/main/java/com/hbm/crafting/RecipesCommon.java +++ b/src/main/java/com/hbm/crafting/RecipesCommon.java @@ -29,11 +29,11 @@ public class RecipesCommon { //Compress nine items into one public static void add9To1(Item nine, Block one) { - add9To1(new ItemStack(nine), new ItemStack(nine)); + add9To1(new ItemStack(nine), new ItemStack(one)); } public static void add9To1(Item nine, Item one) { - add9To1(new ItemStack(nine), new ItemStack(nine)); + add9To1(new ItemStack(nine), new ItemStack(one)); } public static void add9To1(ItemStack nine, ItemStack one) { diff --git a/src/main/java/com/hbm/crafting/ToolRecipes.java b/src/main/java/com/hbm/crafting/ToolRecipes.java index d602c9d41..360f8230b 100644 --- a/src/main/java/com/hbm/crafting/ToolRecipes.java +++ b/src/main/java/com/hbm/crafting/ToolRecipes.java @@ -57,6 +57,7 @@ public class ToolRecipes { GameRegistry.addRecipe(new ItemStack(ModItems.desh_axe, 1), new Object[] { "II", "IS", " S", 'I', ModItems.ingot_desh, 'S', Items.stick }); GameRegistry.addRecipe(new ItemStack(ModItems.desh_shovel, 1), new Object[] { "I", "S", "S", 'I', ModItems.ingot_desh, 'S', Items.stick }); GameRegistry.addRecipe(new ItemStack(ModItems.desh_hoe, 1), new Object[] { "II", " S", " S", 'I', ModItems.ingot_desh, 'S', Items.stick }); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.meteorite_sword, 1), new Object[] { " B", "GB ", "SG ", 'B', ModItems.blade_meteorite, 'G', "plateGold", 'S', Items.stick })); //Drax GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.drax, 1), new Object[] { "BCF", "DDM", "BCC", 'B', ModItems.blades_advanced_alloy, 'C', "ingotCobalt", 'F', ModItems.fusion_core, 'D', "ingotDesh", 'M', ModItems.motor })); diff --git a/src/main/java/com/hbm/handler/BossSpawnHandler.java b/src/main/java/com/hbm/handler/BossSpawnHandler.java index c977ec447..095ed9c54 100644 --- a/src/main/java/com/hbm/handler/BossSpawnHandler.java +++ b/src/main/java/com/hbm/handler/BossSpawnHandler.java @@ -69,7 +69,7 @@ public class BossSpawnHandler { if(MobConfig.enableElementals) { - if(true || world.getTotalWorldTime() % MobConfig.elementalDelay == 0) { + if(world.getTotalWorldTime() % MobConfig.elementalDelay == 0) { if(world.rand.nextInt(MobConfig.elementalChance) == 0 && !world.playerEntities.isEmpty() && world.provider.isSurfaceWorld()) { diff --git a/src/main/java/com/hbm/handler/FluidTypeHandler.java b/src/main/java/com/hbm/handler/FluidTypeHandler.java index 6ee24e4ce..d467b3c88 100644 --- a/src/main/java/com/hbm/handler/FluidTypeHandler.java +++ b/src/main/java/com/hbm/handler/FluidTypeHandler.java @@ -51,13 +51,14 @@ public class FluidTypeHandler { UF6 (0xD1CEBE, 14, 1, 1, 4, 0, 2, EnumSymbol.RADIATION, "hbmfluid.uf6", false, true, false), PUF6 (0x4C4C4C, 15, 1, 1, 4, 0, 4, EnumSymbol.RADIATION, "hbmfluid.puf6", false, true, false), SAS3 (0x4ffffc, 14, 2, 1, 5, 0, 4, EnumSymbol.RADIATION, "hbmfluid.sas3", false, true, false), + SCHRABIDIC (0x006B6B, 14, 1, 2, 5, 0, 5, EnumSymbol.ACID, "hbmfluid.schrabidic", false, true, false), AMAT (0x010101, 0, 2, 1, 5, 0, 5, EnumSymbol.ANTIMATTER, "hbmfluid.amat", false, false, true), ASCHRAB (0xb50000, 1, 2, 1, 5, 0, 5, EnumSymbol.ANTIMATTER, "hbmfluid.aschrab", false, false, true), ACID (0xfff7aa, 10, 2, 1, 3, 0, 3, EnumSymbol.OXIDIZER, "hbmfluid.acid", false, true, false), WATZ (0x86653E, 11, 2, 1, 4, 0, 3, EnumSymbol.ACID, "hbmfluid.watz", false, true, false), - CRYOGEL (0x32ffff, 0, 1, 2, 2, 0, 0, EnumSymbol.CROYGENIC, "hbmfluid.cryogel"), + CRYOGEL (0x32ffff, 0, 1, 2, 2, 0, 0, EnumSymbol.CROYGENIC, "hbmfluid.cryogel", false, false, false, -170), HYDROGEN (0x4286f4, 3, 1, 2, 3, 4, 0, EnumSymbol.CROYGENIC, "hbmfluid.hydrogen"), OXYGEN (0x98bdf9, 4, 1, 2, 3, 0, 0, EnumSymbol.CROYGENIC, "hbmfluid.oxygen"), diff --git a/src/main/java/com/hbm/inventory/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/AssemblerRecipes.java index 10d2ddae8..852c1b985 100644 --- a/src/main/java/com/hbm/inventory/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/AssemblerRecipes.java @@ -27,10 +27,13 @@ import com.hbm.items.ModItems; import com.hbm.items.machine.ItemAssemblyTemplate; import com.hbm.main.MainRegistry; +import cpw.mods.fml.common.Loader; +import net.minecraft.block.Block; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraft.item.crafting.IRecipe; import net.minecraftforge.oredict.OreDictionary; @Untested @@ -120,7 +123,7 @@ public class AssemblerRecipes { } /** - * Registers regular recipes if there's no custom confiuration + * Registers regular recipes if there's no custom configuration */ private static void registerDefaults() { @@ -571,6 +574,29 @@ public class AssemblerRecipes { makeRecipe(new ComparableStack(ModBlocks.block_cap_fritz, 1), new AStack[] { new ComparableStack(ModItems.cap_fritz, 128) }, 10); makeRecipe(new ComparableStack(ModBlocks.block_cap_sunset, 1), new AStack[] { new ComparableStack(ModItems.cap_sunset, 128) }, 10); makeRecipe(new ComparableStack(ModBlocks.block_cap_star, 1), new AStack[] { new ComparableStack(ModItems.cap_star, 128) }, 10); + + if(Loader.isModLoaded("Mekanism")) { + + Block mb = (Block) Block.blockRegistry.getObject("Mekanism:MachineBlock"); + + if(mb != null) { + + makeRecipe(new ComparableStack(mb, 1, 4), new AStack[] { + new ComparableStack(ModItems.ingot_dura_steel, 16), + new OreDictStack("ingotDesh", 8), + new OreDictStack("plateSteel", 48), + new OreDictStack("plateCopper", 24), + new ComparableStack(ModItems.pipes_steel, 8), + new ComparableStack(ModItems.circuit_gold, 8), + new ComparableStack(ModItems.wire_advanced_alloy, 24), + new ComparableStack(ModBlocks.fusion_conductor, 12), + new ComparableStack(ModBlocks.machine_lithium_battery, 3), + new ComparableStack(ModItems.crystal_redstone, 12), + new ComparableStack(ModItems.crystal_diamond, 8), + new ComparableStack(ModItems.motor_desh, 16) + }, 15 * 60 * 20); + } + } } private static void makeRecipe(ComparableStack out, AStack[] in, int duration) { diff --git a/src/main/java/com/hbm/inventory/CrystallizerRecipes.java b/src/main/java/com/hbm/inventory/CrystallizerRecipes.java index f8e5b575d..913cc7ebd 100644 --- a/src/main/java/com/hbm/inventory/CrystallizerRecipes.java +++ b/src/main/java/com/hbm/inventory/CrystallizerRecipes.java @@ -62,6 +62,8 @@ public class CrystallizerRecipes { recipes.put(new ComparableStack(ModItems.powder_semtex_mix), new ItemStack(ModItems.ingot_semtex)); recipes.put(new ComparableStack(ModItems.powder_desh_ready), new ItemStack(ModItems.ingot_desh)); recipes.put(new ComparableStack(ModItems.powder_meteorite), new ItemStack(ModItems.fragment_meteorite, 1)); + + recipes.put(new ComparableStack(ModItems.meteorite_sword_treated), new ItemStack(ModItems.meteorite_sword_etched, 1)); } public static ItemStack getOutput(ItemStack stack) { diff --git a/src/main/java/com/hbm/inventory/MachineRecipes.java b/src/main/java/com/hbm/inventory/MachineRecipes.java index 9cec6ebd4..63bb98872 100644 --- a/src/main/java/com/hbm/inventory/MachineRecipes.java +++ b/src/main/java/com/hbm/inventory/MachineRecipes.java @@ -121,6 +121,11 @@ public class MachineRecipes { return new ItemStack(ModItems.ingot_meteorite); } + if (item.getItem() == ModItems.meteorite_sword_hardened && mODE(item2, new String[] {"ingotCobalt", "dustCobalt"}) + || mODE(item, new String[] {"ingotCobalt", "dustCobalt"}) && item2.getItem() == ModItems.meteorite_sword_hardened) { + return new ItemStack(ModItems.meteorite_sword_alloyed, 1); + } + return null; } @@ -315,6 +320,9 @@ public class MachineRecipes { return new ItemStack(ModItems.biomass_compressed); if(input.getItem() == ModItems.powder_lignite) return new ItemStack(ModItems.briquette_lignite); + + if(input.getItem() == ModItems.meteorite_sword_reforged) + return new ItemStack(ModItems.meteorite_sword_hardened); } if(stamps_plate.contains(stamp.getItem())) { @@ -1709,6 +1717,12 @@ public class MachineRecipes { case BALEFIRE: list.add(new ItemStack(ModItems.egg_balefire_shard, 1)); break; + case SCHRABIDIC: + list.add(new ItemStack(ModItems.pellet_charged, 1)); + break; + case SCHRABIDATE: + list.add(new ItemStack(ModItems.powder_iron, 1)); + break; default: break; } @@ -1915,6 +1929,13 @@ public class MachineRecipes { case BALEFIRE: input[0] = new FluidStack(6000, FluidType.KEROSENE); break; + case SCHRABIDIC: + input[0] = new FluidStack(8000, FluidType.SAS3); + input[1] = new FluidStack(6000, FluidType.ACID); + break; + case SCHRABIDATE: + input[0] = new FluidStack(250, FluidType.SCHRABIDIC); + break; default: break; } @@ -2047,6 +2068,9 @@ public class MachineRecipes { case BALEFIRE: output[0] = new ItemStack(ModItems.powder_balefire, 1); break; + case SCHRABIDATE: + output[0] = new ItemStack(ModItems.powder_schrabidate, 1); + break; default: break; } @@ -2170,6 +2194,9 @@ public class MachineRecipes { case BALEFIRE: output[0] = new FluidStack(8000, FluidType.BALEFIRE); break; + case SCHRABIDIC: + output[0] = new FluidStack(16000, FluidType.SCHRABIDIC); + break; default: break; } diff --git a/src/main/java/com/hbm/inventory/ShredderRecipes.java b/src/main/java/com/hbm/inventory/ShredderRecipes.java index d7c7a0095..6e759e9e1 100644 --- a/src/main/java/com/hbm/inventory/ShredderRecipes.java +++ b/src/main/java/com/hbm/inventory/ShredderRecipes.java @@ -146,6 +146,8 @@ public class ShredderRecipes { ShredderRecipes.setRecipe(ModBlocks.ore_rare, new ItemStack(ModItems.powder_desh_mix, 1)); ShredderRecipes.setRecipe(Blocks.diamond_ore, new ItemStack(ModBlocks.gravel_diamond, 2)); ShredderRecipes.setRecipe(ModBlocks.boxcar, new ItemStack(ModItems.powder_steel, 32)); + ShredderRecipes.setRecipe(ModItems.ingot_schrabidate, new ItemStack(ModItems.powder_schrabidate, 1)); + ShredderRecipes.setRecipe(ModBlocks.block_schrabidate, new ItemStack(ModItems.powder_schrabidate, 9)); ShredderRecipes.setRecipe(ModItems.ingot_schraranium, new ItemStack(ModItems.nugget_schrabidium, 2)); ShredderRecipes.setRecipe(ModItems.crystal_iron, new ItemStack(ModItems.powder_iron, 3)); diff --git a/src/main/java/com/hbm/inventory/container/ContainerMachineFluidTank.java b/src/main/java/com/hbm/inventory/container/ContainerMachineFluidTank.java index 5cbf7bc84..aec60d831 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerMachineFluidTank.java +++ b/src/main/java/com/hbm/inventory/container/ContainerMachineFluidTank.java @@ -12,11 +12,8 @@ import net.minecraft.item.ItemStack; public class ContainerMachineFluidTank extends Container { private TileEntityMachineFluidTank diFurnace; - private int power; public ContainerMachineFluidTank(InventoryPlayer invPlayer, TileEntityMachineFluidTank tedf) { - power = 0; - diFurnace = tedf; this.addSlotToContainer(new Slot(tedf, 0, 8, 17)); @@ -25,7 +22,6 @@ public class ContainerMachineFluidTank extends Container { this.addSlotToContainer(new Slot(tedf, 3, 53 - 18, 53)); this.addSlotToContainer(new Slot(tedf, 4, 125, 17)); this.addSlotToContainer(new Slot(tedf, 5, 125, 53)); - this.addSlotToContainer(new Slot(tedf, 6, 152, 17)); for(int i = 0; i < 3; i++) { @@ -57,13 +53,13 @@ public class ContainerMachineFluidTank extends Container { ItemStack var5 = var4.getStack(); var3 = var5.copy(); - if (par2 <= 6) { - if (!this.mergeItemStack(var5, 7, this.inventorySlots.size(), true)) + if (par2 <= 5) { + if (!this.mergeItemStack(var5, 6, this.inventorySlots.size(), true)) { return null; } } - else if (!this.mergeItemStack(var5, 0, 6, false)) + else if (!this.mergeItemStack(var5, 0, 5, false)) { return null; } diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index fedbb2e5c..a7a014622 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -81,6 +81,7 @@ public class ModItems { public static Item ingot_beryllium; public static Item ingot_schraranium; public static Item ingot_schrabidium; + public static Item ingot_schrabidate; public static Item ingot_plutonium_fuel; public static Item ingot_uranium_fuel; public static Item ingot_mox_fuel; @@ -234,6 +235,7 @@ public class ModItems { public static Item powder_neptunium; public static Item powder_polonium; public static Item powder_schrabidium; + public static Item powder_schrabidate; public static Item powder_aluminium; public static Item powder_beryllium; @@ -1695,6 +1697,15 @@ public class ModItems { public static Item chlorophyte_pickaxe; public static Item mese_pickaxe; + public static Item meteorite_sword; + public static Item meteorite_sword_seared; + public static Item meteorite_sword_reforged; + public static Item meteorite_sword_hardened; + public static Item meteorite_sword_alloyed; + public static Item meteorite_sword_machined; + public static Item meteorite_sword_treated; + public static Item meteorite_sword_etched; + public static Item matchstick; public static Item balefire_and_steel; @@ -2083,6 +2094,7 @@ public class ModItems { plate_lead = new Item().setUnlocalizedName("plate_lead").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_lead"); ingot_schraranium = new ItemSchraranium(2.5F, false, true).setUnlocalizedName("ingot_schraranium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_schraranium"); ingot_schrabidium = new ItemRadioactive(7.5F, false, true).setUnlocalizedName("ingot_schrabidium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_schrabidium"); + ingot_schrabidate = new ItemRadioactive(2.5F, false, true).setUnlocalizedName("ingot_schrabidate").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_schrabidate"); plate_schrabidium = new ItemRadioactive(7.5F, false, true).setUnlocalizedName("plate_schrabidium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_schrabidium"); plate_copper = new Item().setUnlocalizedName("plate_copper").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_copper"); plate_gold = new Item().setUnlocalizedName("plate_gold").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_gold"); @@ -2135,9 +2147,9 @@ public class ModItems { ingot_lanthanium = new ItemCustomLore().setUnlocalizedName("ingot_lanthanium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_lanthanium"); ingot_actinium = new ItemCustomLore().setUnlocalizedName("ingot_actinium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_actinium"); - ingot_meteorite = new ItemHot(10).setUnlocalizedName("ingot_meteorite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_meteorite"); - ingot_meteorite_forged = new ItemHot(10).setUnlocalizedName("ingot_meteorite_forged").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_meteorite_forged"); - blade_meteorite = new ItemHot(10).setUnlocalizedName("blade_meteorite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":blade_meteorite"); + ingot_meteorite = new ItemHot(200).setUnlocalizedName("ingot_meteorite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_meteorite"); + ingot_meteorite_forged = new ItemHot(200).setUnlocalizedName("ingot_meteorite_forged").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_meteorite_forged"); + blade_meteorite = new ItemHot(200).setUnlocalizedName("blade_meteorite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":blade_meteorite"); plate_armor_titanium = new Item().setUnlocalizedName("plate_armor_titanium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_armor_titanium"); plate_armor_ajr = new Item().setUnlocalizedName("plate_armor_ajr").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_armor_ajr"); @@ -2222,6 +2234,7 @@ public class ModItems { powder_neptunium = new ItemRadioactive(2.5F, true).setUnlocalizedName("powder_neptunium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_neptunium"); powder_polonium = new ItemRadioactive(10F, true).setUnlocalizedName("powder_polonium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_polonium"); powder_schrabidium = new ItemRadioactive(7.5F, true, true).setUnlocalizedName("powder_schrabidium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_schrabidium"); + powder_schrabidate = new ItemRadioactive(2.5F, true, true).setUnlocalizedName("powder_schrabidate").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_schrabidate"); powder_aluminium = new Item().setUnlocalizedName("powder_aluminium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_aluminium"); powder_beryllium = new Item().setUnlocalizedName("powder_beryllium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_beryllium"); powder_copper = new Item().setUnlocalizedName("powder_copper").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_copper"); @@ -3984,6 +3997,16 @@ public class ModItems { .addHitAbility(new WeaponAbility.StunAbility(10)) .addHitAbility(new WeaponAbility.PhosphorusAbility(60)) .addHitAbility(new WeaponAbility.BeheaderAbility()).setUnlocalizedName("mese_pickaxe").setTextureName(RefStrings.MODID + ":mese_pickaxe"); + + ToolMaterial matMeteorite = EnumHelper.addToolMaterial("HBM_METEORITE", 4, 0, 50F, 0.0F, 200).setRepairItem(new ItemStack(ModItems.plate_paa)); + meteorite_sword = new ItemSwordMeteorite(10F, 0, matMeteorite).setUnlocalizedName("meteorite_sword").setTextureName(RefStrings.MODID + ":meteorite_sword"); + meteorite_sword_seared = new ItemSwordMeteorite(15F, 0, matMeteorite).setUnlocalizedName("meteorite_sword_seared").setTextureName(RefStrings.MODID + ":meteorite_sword"); + meteorite_sword_reforged = new ItemSwordMeteorite(25F, 0, matMeteorite).setUnlocalizedName("meteorite_sword_reforged").setTextureName(RefStrings.MODID + ":meteorite_sword"); + meteorite_sword_hardened = new ItemSwordMeteorite(35F, 0, matMeteorite).setUnlocalizedName("meteorite_sword_hardened").setTextureName(RefStrings.MODID + ":meteorite_sword"); + meteorite_sword_alloyed = new ItemSwordMeteorite(50F, 0, matMeteorite).setUnlocalizedName("meteorite_sword_alloyed").setTextureName(RefStrings.MODID + ":meteorite_sword"); + meteorite_sword_machined = new ItemSwordMeteorite(65F, 0, matMeteorite).setUnlocalizedName("meteorite_sword_machined").setTextureName(RefStrings.MODID + ":meteorite_sword"); + meteorite_sword_treated = new ItemSwordMeteorite(80F, 0, matMeteorite).setUnlocalizedName("meteorite_sword_treated").setTextureName(RefStrings.MODID + ":meteorite_sword"); + meteorite_sword_etched = new ItemSwordMeteorite(100F, 0, matMeteorite).setUnlocalizedName("meteorite_sword_etched").setTextureName(RefStrings.MODID + ":meteorite_sword"); mask_of_infamy = new MaskOfInfamy(ArmorMaterial.IRON, 8, 0).setUnlocalizedName("mask_of_infamy").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":mask_of_infamy"); @@ -4260,6 +4283,7 @@ public class ModItems { GameRegistry.registerItem(ingot_polymer, ingot_polymer.getUnlocalizedName()); GameRegistry.registerItem(ingot_schraranium, ingot_schraranium.getUnlocalizedName()); GameRegistry.registerItem(ingot_schrabidium, ingot_schrabidium.getUnlocalizedName()); + GameRegistry.registerItem(ingot_schrabidate, ingot_schrabidate.getUnlocalizedName()); GameRegistry.registerItem(ingot_magnetized_tungsten, ingot_magnetized_tungsten.getUnlocalizedName()); GameRegistry.registerItem(ingot_combine_steel, ingot_combine_steel.getUnlocalizedName()); GameRegistry.registerItem(ingot_solinium, ingot_solinium.getUnlocalizedName()); @@ -4330,6 +4354,7 @@ public class ModItems { GameRegistry.registerItem(powder_dura_steel, powder_dura_steel.getUnlocalizedName()); GameRegistry.registerItem(powder_polymer, powder_polymer.getUnlocalizedName()); GameRegistry.registerItem(powder_schrabidium, powder_schrabidium.getUnlocalizedName()); + GameRegistry.registerItem(powder_schrabidate, powder_schrabidate.getUnlocalizedName()); GameRegistry.registerItem(powder_magnetized_tungsten, powder_magnetized_tungsten.getUnlocalizedName()); GameRegistry.registerItem(powder_chlorophyte, powder_chlorophyte.getUnlocalizedName()); GameRegistry.registerItem(powder_combine_steel, powder_combine_steel.getUnlocalizedName()); @@ -5774,6 +5799,15 @@ public class ModItems { GameRegistry.registerItem(stopsign, stopsign.getUnlocalizedName()); GameRegistry.registerItem(sopsign, sopsign.getUnlocalizedName()); GameRegistry.registerItem(chernobylsign, chernobylsign.getUnlocalizedName()); + + GameRegistry.registerItem(meteorite_sword, meteorite_sword.getUnlocalizedName()); + GameRegistry.registerItem(meteorite_sword_seared, meteorite_sword_seared.getUnlocalizedName()); + GameRegistry.registerItem(meteorite_sword_reforged, meteorite_sword_reforged.getUnlocalizedName()); + GameRegistry.registerItem(meteorite_sword_hardened, meteorite_sword_hardened.getUnlocalizedName()); + GameRegistry.registerItem(meteorite_sword_alloyed, meteorite_sword_alloyed.getUnlocalizedName()); + GameRegistry.registerItem(meteorite_sword_machined, meteorite_sword_machined.getUnlocalizedName()); + GameRegistry.registerItem(meteorite_sword_treated, meteorite_sword_treated.getUnlocalizedName()); + GameRegistry.registerItem(meteorite_sword_etched, meteorite_sword_etched.getUnlocalizedName()); //Multitool GameRegistry.registerItem(multitool_hit, multitool_hit.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/armor/ArmorFSB.java b/src/main/java/com/hbm/items/armor/ArmorFSB.java index 9105f3c1e..9f41edb07 100644 --- a/src/main/java/com/hbm/items/armor/ArmorFSB.java +++ b/src/main/java/com/hbm/items/armor/ArmorFSB.java @@ -199,7 +199,7 @@ public class ArmorFSB extends ItemArmor { if(struct.getValue() != 0) list.add(EnumChatFormatting.YELLOW + " " + I18nUtil.resolveKey("armor.damageModifier", struct.getValue(), I18n.format(struct.getKey()))); else - list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.nullDamage", struct.getValue(), I18n.format(struct.getKey()))); + list.add(EnumChatFormatting.RED + " " + I18nUtil.resolveKey("armor.nullDamage", I18n.format(struct.getKey()))); } } diff --git a/src/main/java/com/hbm/items/block/ItemBlockLore.java b/src/main/java/com/hbm/items/block/ItemBlockLore.java index 7374fe839..1e107129b 100644 --- a/src/main/java/com/hbm/items/block/ItemBlockLore.java +++ b/src/main/java/com/hbm/items/block/ItemBlockLore.java @@ -113,7 +113,8 @@ public class ItemBlockLore extends ItemBlock { if(this.field_150939_a == ModBlocks.ore_schrabidium || this.field_150939_a == ModBlocks.ore_nether_schrabidium || this.field_150939_a == ModBlocks.block_schrabidium || this.field_150939_a == ModBlocks.block_schrabidium_cluster || this.field_150939_a == ModBlocks.block_schrabidium_fuel || this.field_150939_a == ModBlocks.block_solinium || - this.field_150939_a == ModBlocks.gravel_diamond || this.field_150939_a == ModBlocks.ore_gneiss_schrabidium) + this.field_150939_a == ModBlocks.gravel_diamond || this.field_150939_a == ModBlocks.ore_gneiss_schrabidium || + this.field_150939_a == ModBlocks.block_schraranium || this.field_150939_a == ModBlocks.block_schrabidate) return EnumRarity.rare; if(this.field_150939_a == ModBlocks.block_euphemium || this.field_150939_a == ModBlocks.block_euphemium_cluster || diff --git a/src/main/java/com/hbm/items/machine/ItemChemistryTemplate.java b/src/main/java/com/hbm/items/machine/ItemChemistryTemplate.java index c163ce176..5aa249c42 100644 --- a/src/main/java/com/hbm/items/machine/ItemChemistryTemplate.java +++ b/src/main/java/com/hbm/items/machine/ItemChemistryTemplate.java @@ -86,7 +86,9 @@ public class ItemChemistryTemplate extends Item { ELECTROLYSIS, XENON, SATURN, - BALEFIRE; + BALEFIRE, + SCHRABIDIC, + SCHRABIDATE; public static EnumChemistryTemplate getEnum(int i) { if(i < EnumChemistryTemplate.values().length) @@ -255,9 +257,13 @@ public class ItemChemistryTemplate extends Item { case XENON: return 600; case SATURN: - return 600; + return 60; case BALEFIRE: return 100; + case SCHRABIDIC: + return 100; + case SCHRABIDATE: + return 600; default: return 100; } diff --git a/src/main/java/com/hbm/items/special/ItemHot.java b/src/main/java/com/hbm/items/special/ItemHot.java index 818719041..91feedd25 100644 --- a/src/main/java/com/hbm/items/special/ItemHot.java +++ b/src/main/java/com/hbm/items/special/ItemHot.java @@ -2,18 +2,49 @@ package com.hbm.items.special; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.entity.Entity; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.IIcon; +import net.minecraft.world.World; public class ItemHot extends Item { + @SideOnly(Side.CLIENT) + public IIcon hotIcon; public static int heat; public ItemHot(int heat) { this.heat = heat; } + + @SideOnly(Side.CLIENT) + public void registerIcons(IIconRegister reg) { + super.registerIcons(reg); + this.hotIcon = reg.registerIcon(this.getIconString() + "_hot"); + } + + @SideOnly(Side.CLIENT) + public IIcon getIconFromDamage(int meta) { + return meta == 1 ? this.hotIcon : this.itemIcon; + } + + public void onUpdate(ItemStack stack, World world, Entity entity, int i, boolean bool) { + + if(!world.isRemote && stack.hasTagCompound()) { + + int h = stack.stackTagCompound.getInteger("heat"); + + if(h > 0) { + stack.stackTagCompound.setInteger("heat", h - 1); + } else { + stack.stackTagCompound = null; + } + } + } public static ItemStack heatUp(ItemStack stack) { @@ -27,6 +58,18 @@ public class ItemHot extends Item { return stack; } + public static ItemStack heatUp(ItemStack stack, double d) { + + if(!(stack.getItem() instanceof ItemHot)) + return stack; + + if(!stack.hasTagCompound()) + stack.stackTagCompound = new NBTTagCompound(); + + stack.stackTagCompound.setInteger("heat", (int)(d * heat)); + return stack; + } + public static double getHeat(ItemStack stack) { if(!(stack.getItem() instanceof ItemHot)) @@ -39,24 +82,4 @@ public class ItemHot extends Item { return (double)h / (double)heat; } - - @SideOnly(Side.CLIENT) - public int getColorFromItemStack(ItemStack stack, int pass) { - - if(pass == 0) - return 0xffffff; - - double heat = getHeat(stack); - - int r = 0xff; - int g = (int)(0xff - heat * 0x40); - int b = (int)(0xff - heat * 0xff); - - return (r << 16) | (g << 8) | b; - } - - @SideOnly(Side.CLIENT) - public boolean requiresMultipleRenderPasses() { - return false; - } } diff --git a/src/main/java/com/hbm/items/tool/ItemSwordMeteorite.java b/src/main/java/com/hbm/items/tool/ItemSwordMeteorite.java new file mode 100644 index 000000000..8a2e9164e --- /dev/null +++ b/src/main/java/com/hbm/items/tool/ItemSwordMeteorite.java @@ -0,0 +1,65 @@ +package com.hbm.items.tool; + +import java.util.List; + +import com.hbm.items.ModItems; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; + +public class ItemSwordMeteorite extends ItemSwordAbility { + + public ItemSwordMeteorite(float damage, double movement, ToolMaterial material) { + super(damage, movement, material); + this.setMaxDamage(0); + } + + @SideOnly(Side.CLIENT) + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) { + super.addInformation(stack, player, list, ext); + + if(this == ModItems.meteorite_sword) { + list.add(EnumChatFormatting.ITALIC + "Forged from a fallen star"); + list.add(EnumChatFormatting.ITALIC + "Sharper than most terrestrial blades"); + } + + if(this == ModItems.meteorite_sword_seared) { + list.add(EnumChatFormatting.ITALIC + "Fire strengthens the blade"); + list.add(EnumChatFormatting.ITALIC + "Making it even more powerful"); + } + + if(this == ModItems.meteorite_sword_reforged) { + list.add(EnumChatFormatting.ITALIC + "The sword has been reforged"); + list.add(EnumChatFormatting.ITALIC + "To rectify past imperfections"); + } + + if(this == ModItems.meteorite_sword_hardened) { + list.add(EnumChatFormatting.ITALIC + "Extremely high pressure has been used"); + list.add(EnumChatFormatting.ITALIC + "To harden the blade further"); + } + + if(this == ModItems.meteorite_sword_alloyed) { + list.add(EnumChatFormatting.ITALIC + "Cobalt fills the fissures"); + list.add(EnumChatFormatting.ITALIC + "Strengthening the sword"); + } + + if(this == ModItems.meteorite_sword_machined) { + list.add(EnumChatFormatting.ITALIC + "Advanced machinery was used"); + list.add(EnumChatFormatting.ITALIC + "To refine the blade even more"); + } + + if(this == ModItems.meteorite_sword_treated) { + list.add(EnumChatFormatting.ITALIC + "Chemicals have been applied"); + list.add(EnumChatFormatting.ITALIC + "Making the sword more powerful"); + } + + if(this == ModItems.meteorite_sword_etched) { + list.add(EnumChatFormatting.ITALIC + "Acids clean the material"); + list.add(EnumChatFormatting.ITALIC + "To make this the perfect sword"); + } + } + +} diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index eb13a344b..08c48b8ef 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -206,9 +206,17 @@ public class ClientProxy extends ServerProxy { MinecraftForgeClient.registerItemRenderer(ModItems.assembly_template, new ItemRenderTemplate()); MinecraftForgeClient.registerItemRenderer(ModItems.chemistry_template, new ItemRenderTemplate()); //hot stuff - /*MinecraftForgeClient.registerItemRenderer(ModItems.ingot_meteorite, new ItemRendererHot()); + MinecraftForgeClient.registerItemRenderer(ModItems.ingot_meteorite, new ItemRendererHot()); MinecraftForgeClient.registerItemRenderer(ModItems.ingot_meteorite_forged, new ItemRendererHot()); - MinecraftForgeClient.registerItemRenderer(ModItems.blade_meteorite, new ItemRendererHot());*/ + MinecraftForgeClient.registerItemRenderer(ModItems.blade_meteorite, new ItemRendererHot()); + //meteorite swords + MinecraftForgeClient.registerItemRenderer(ModItems.meteorite_sword_seared, new ItemRendererMeteorSword(1.0F, 0.5F, 0.0F)); + MinecraftForgeClient.registerItemRenderer(ModItems.meteorite_sword_reforged, new ItemRendererMeteorSword(0.5F, 1.0F, 1.0F)); + MinecraftForgeClient.registerItemRenderer(ModItems.meteorite_sword_hardened, new ItemRendererMeteorSword(0.25F, 0.25F, 0.25F)); + MinecraftForgeClient.registerItemRenderer(ModItems.meteorite_sword_alloyed, new ItemRendererMeteorSword(0.0F, 0.5F, 1.0F)); + MinecraftForgeClient.registerItemRenderer(ModItems.meteorite_sword_machined, new ItemRendererMeteorSword(1.0F, 1.0F, 0.0F)); + MinecraftForgeClient.registerItemRenderer(ModItems.meteorite_sword_treated, new ItemRendererMeteorSword(0.5F, 1.0F, 0.5F)); + MinecraftForgeClient.registerItemRenderer(ModItems.meteorite_sword_etched, new ItemRendererMeteorSword(1.0F, 1.0F, 0.5F)); //swords and hammers MinecraftForgeClient.registerItemRenderer(ModItems.redstone_sword, new ItemRenderRedstoneSword()); MinecraftForgeClient.registerItemRenderer(ModItems.big_sword, new ItemRenderBigSword()); diff --git a/src/main/java/com/hbm/main/CraftingManager.java b/src/main/java/com/hbm/main/CraftingManager.java index b55b092e0..b44b05ef2 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -230,6 +230,7 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_arc_furnace_off, 1), new Object[] { "ITI", "PFP", "ITI", 'I', "ingotTungsten", 'T', ModBlocks.machine_transformer, 'P', ModItems.board_copper, 'F', Blocks.furnace })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.red_wire_coated), 16), new Object[] { "WRW", "RIR", "WRW", 'W', ModItems.plate_polymer, 'I', "ingotRedCopperAlloy", 'R', ModItems.wire_red_copper })); GameRegistry.addRecipe(new ItemStack(ModBlocks.cable_switch, 1), new Object[] { "S", "W", 'S', Blocks.lever, 'W', ModBlocks.red_wire_coated }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.machine_detector, 1), new Object[] { "IRI", "CTC", "IRI", 'I', ModItems.plate_polymer, 'R', Items.redstone, 'C', ModItems.wire_red_copper, 'T', ModItems.coil_tungsten }); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.red_cable), 16), new Object[] { " W ", "RRR", " W ", 'W', ModItems.plate_polymer, 'R', ModItems.wire_red_copper }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.red_pylon), 4), new Object[] { "CWC", "PWP", " T ", 'C', ModItems.coil_copper_torus, 'W', "plankWood", 'P', ModItems.plate_polymer, 'T', ModBlocks.red_wire_coated })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.oil_duct_solid), 16), new Object[] { "SPS", "P P", "SPS", 'S', "ingotSteel", 'P', "plateIron" })); @@ -482,7 +483,7 @@ public class CraftingManager { GameRegistry.addShapelessRecipe(new ItemStack(ModItems.crystal_horn, 1), new Object[] { ModItems.powder_neptunium, ModItems.powder_iodine, ModItems.powder_thorium, ModItems.powder_astatine, ModItems.powder_neodymium, ModItems.powder_caesium, ModBlocks.block_meteor, ModBlocks.gravel_obsidian, Items.water_bucket }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.crystal_charred, 1), new Object[] { ModItems.powder_strontium, ModItems.powder_cobalt, ModItems.powder_bromine, ModItems.powder_niobium, ModItems.powder_tennessine, ModItems.powder_cerium, ModBlocks.block_meteor, ModBlocks.block_aluminium, Items.water_bucket }); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.crystal_virus, 1), new Object[] { "STS", "THT", "STS", 'S', ModItems.cell_sas3, 'T', "dustTungsten", 'H', ModItems.crystal_horn })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.crystal_virus, 1), new Object[] { "STS", "THT", "STS", 'S', ModItems.particle_strange, 'T', "dustTungsten", 'H', ModItems.crystal_horn })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.crystal_pulsar, 32), new Object[] { "STS", "THT", "STS", 'S', ModItems.cell_uf6, 'T', "dustAluminum", 'H', ModItems.crystal_charred })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.fluid_duct, 8), new Object[] { "SAS", " ", "SAS", 'S', "plateSteel", 'A', "plateAluminum" })); @@ -694,6 +695,10 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModBlocks.hadron_analysis_glass, 1), new Object[] { ModBlocks.hadron_analysis, "blockGlass" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.hadron_access, 1), new Object[] { "IGI", "CRC", "IPI", 'I', ModItems.plate_polymer, 'G', "paneGlass", 'C', ModItems.circuit_aluminium, 'R', "blockRedstone", 'P', ModBlocks.hadron_plating_blue })); GameRegistry.addRecipe(new ItemStack(ModBlocks.hadron_core, 1), new Object[] { "CCC", "DSD", "CCC", 'C', ModBlocks.hadron_coil_alloy, 'D', ModBlocks.hadron_diode, 'S', ModItems.circuit_schrabidium }); + + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.ingot_schrabidium, 8), new Object[] { "UUU", "UPU", "UUU", 'U', "ingotUranium", 'P', new ItemStack(ModItems.particle_higgs).setStackDisplayName("Higgs Boson (Temporary Recipe)") })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.ingot_euphemium, 8), new Object[] { "UUU", "UPU", "UUU", 'U', "ingotPlutonium", 'P', new ItemStack(ModItems.particle_dark).setStackDisplayName("Dark Matter (Temporary Recipe)") })); + GameRegistry.addRecipe(new ItemStack(ModItems.ingot_dineutronium, 8), new Object[] { "UUU", "UPU", "UUU", 'U', ModItems.ingot_schrabidate, 'P', new ItemStack(ModItems.particle_sparkticle).setStackDisplayName("Sparkticle (Temporary Recipe)") }); if(GeneralConfig.enableBabyMode) { GameRegistry.addShapelessRecipe(new ItemStack(ModItems.cordite, 3), new Object[] { ModItems.ballistite, Items.gunpowder, new ItemStack(Blocks.wool, 1, OreDictionary.WILDCARD_VALUE) }); @@ -755,7 +760,6 @@ public class CraftingManager { if(toDestroy.size() > 0) { net.minecraft.item.crafting.CraftingManager.getInstance().getRecipeList().removeAll(toDestroy); - GameRegistry.addRecipe(digiminer, new Object[] { "###", "###", '#', ModItems.ingot_schrabidium }); } } } @@ -812,6 +816,7 @@ public class CraftingManager { GameRegistry.addSmelting(ModItems.powder_neptunium, new ItemStack(ModItems.ingot_neptunium), 1.0F); GameRegistry.addSmelting(ModItems.powder_polonium, new ItemStack(ModItems.ingot_polonium), 1.0F); GameRegistry.addSmelting(ModItems.powder_schrabidium, new ItemStack(ModItems.ingot_schrabidium), 5.0F); + GameRegistry.addSmelting(ModItems.powder_schrabidate, new ItemStack(ModItems.ingot_schrabidate), 5.0F); GameRegistry.addSmelting(ModItems.powder_euphemium, new ItemStack(ModItems.ingot_euphemium), 10.0F); GameRegistry.addSmelting(ModItems.powder_aluminium, new ItemStack(ModItems.ingot_aluminium), 1.0F); GameRegistry.addSmelting(ModItems.powder_beryllium, new ItemStack(ModItems.ingot_beryllium), 1.0F); @@ -888,5 +893,6 @@ public class CraftingManager { GameRegistry.addSmelting(ModItems.ingot_meteorite, ItemHot.heatUp(new ItemStack(ModItems.ingot_meteorite)), 1.0F); GameRegistry.addSmelting(ModItems.ingot_meteorite_forged, ItemHot.heatUp(new ItemStack(ModItems.ingot_meteorite_forged)), 1.0F); GameRegistry.addSmelting(ModItems.blade_meteorite, ItemHot.heatUp(new ItemStack(ModItems.blade_meteorite)), 1.0F); + GameRegistry.addSmelting(ModItems.meteorite_sword, ItemHot.heatUp(new ItemStack(ModItems.meteorite_sword_seared)), 1.0F); } } diff --git a/src/main/java/com/hbm/main/MainRegistry.java b/src/main/java/com/hbm/main/MainRegistry.java index 2fa797be0..8a725a919 100644 --- a/src/main/java/com/hbm/main/MainRegistry.java +++ b/src/main/java/com/hbm/main/MainRegistry.java @@ -426,6 +426,7 @@ public class MainRegistry { GameRegistry.registerTileEntity(TileEntityHadron.class, "tileentity_hadron"); GameRegistry.registerTileEntity(TileEntitySolarBoiler.class, "tileentity_solarboiler"); GameRegistry.registerTileEntity(TileEntitySolarMirror.class, "tileentity_solarmirror"); + GameRegistry.registerTileEntity(TileEntityMachineDetector.class, "tileentity_he_detector"); EntityRegistry.registerModEntity(EntityRocket.class, "entity_rocket", 0, this, 250, 1, true); EntityRegistry.registerModEntity(EntityNukeExplosion.class, "entity_nuke_explosion", 1, this, 250, 1, true); diff --git a/src/main/java/com/hbm/main/ModEventHandler.java b/src/main/java/com/hbm/main/ModEventHandler.java index 1c2c760fb..7e00b9cf9 100644 --- a/src/main/java/com/hbm/main/ModEventHandler.java +++ b/src/main/java/com/hbm/main/ModEventHandler.java @@ -13,6 +13,7 @@ import org.apache.commons.lang3.math.NumberUtils; import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; +import com.hbm.config.MobConfig; import com.hbm.config.RadiationConfig; import com.hbm.config.WorldConfig; import com.hbm.entity.missile.EntityMissileBaseAdvanced; @@ -28,6 +29,7 @@ import com.hbm.handler.RadiationWorldHandler; import com.hbm.handler.HTTPHandler; import com.hbm.items.ModItems; import com.hbm.items.armor.ArmorFSB; +import com.hbm.items.special.ItemHot; import com.hbm.items.weapon.ItemGunBase; import com.hbm.lib.Library; import com.hbm.lib.ModDamageSource; @@ -42,6 +44,7 @@ import com.hbm.util.ContaminationUtil; import com.hbm.util.EnchantmentUtil; import com.hbm.world.generator.TimedGenerator; +import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import cpw.mods.fml.common.gameevent.PlayerEvent; import cpw.mods.fml.common.gameevent.TickEvent; @@ -105,7 +108,7 @@ public class ModEventHandler event.player.addChatMessage(new ChatComponentText(EnumChatFormatting.YELLOW + "New version " + HTTPHandler.versionNumber + " is available!")); } - if(event.player instanceof EntityPlayerMP && !event.player.getEntityData().getCompoundTag(EntityPlayer.PERSISTED_NBT_TAG).getBoolean("hasDucked")) + if(MobConfig.enableDucks && event.player instanceof EntityPlayerMP && !event.player.getEntityData().getCompoundTag(EntityPlayer.PERSISTED_NBT_TAG).getBoolean("hasDucked")) PacketDispatcher.wrapper.sendTo(new PlayerInformPacket("Press O to Duck!"), (EntityPlayerMP)event.player); } } @@ -473,6 +476,9 @@ public class ModEventHandler ArmorFSB.handleTick(event); + if(player.ticksExisted == 100 || player.ticksExisted == 200) + CraftingManager.crumple(); + if(!player.worldObj.isRemote && event.phase == TickEvent.Phase.START) { /// GHOST FIX START /// @@ -770,5 +776,48 @@ public class ModEventHandler event.cost = 10; } + + if(event.left.getItem() == ModItems.ingot_meteorite && event.right.getItem() == ModItems.ingot_meteorite && + event.left.stackSize == 1 && event.right.stackSize == 1) { + + double h1 = ItemHot.getHeat(event.left); + double h2 = ItemHot.getHeat(event.right); + + if(h1 >= 0.5 && h2 >= 0.5) { + + ItemStack out = new ItemStack(ModItems.ingot_meteorite_forged); + ItemHot.heatUp(out, (h1 + h2) / 2D); + event.output = out; + event.cost = 10; + } + } + + if(event.left.getItem() == ModItems.ingot_meteorite_forged && event.right.getItem() == ModItems.ingot_meteorite_forged && + event.left.stackSize == 1 && event.right.stackSize == 1) { + + double h1 = ItemHot.getHeat(event.left); + double h2 = ItemHot.getHeat(event.right); + + if(h1 >= 0.5 && h2 >= 0.5) { + + ItemStack out = new ItemStack(ModItems.blade_meteorite); + ItemHot.heatUp(out, (h1 + h2) / 2D); + event.output = out; + event.cost = 30; + } + } + + if(event.left.getItem() == ModItems.meteorite_sword_seared && event.right.getItem() == ModItems.ingot_meteorite_forged && + event.left.stackSize == 1 && event.right.stackSize == 1) { + + double h2 = ItemHot.getHeat(event.right); + + if(h2 >= 0.5) { + + ItemStack out = new ItemStack(ModItems.meteorite_sword_reforged); + event.output = out; + event.cost = 50; + } + } } } diff --git a/src/main/java/com/hbm/packet/AuxButtonPacket.java b/src/main/java/com/hbm/packet/AuxButtonPacket.java index dab810a22..4fa2dc643 100644 --- a/src/main/java/com/hbm/packet/AuxButtonPacket.java +++ b/src/main/java/com/hbm/packet/AuxButtonPacket.java @@ -1,5 +1,6 @@ package com.hbm.packet; +import com.hbm.config.MobConfig; import com.hbm.entity.mob.EntityDuck; import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.items.weapon.ItemMissile.PartSize; @@ -281,7 +282,7 @@ public class AuxButtonPacket implements IMessage { NBTTagCompound perDat = p.getEntityData().getCompoundTag(EntityPlayer.PERSISTED_NBT_TAG); - if(!perDat.getBoolean("hasDucked")) { + if(MobConfig.enableDucks && !perDat.getBoolean("hasDucked")) { EntityDuck ducc = new EntityDuck(p.worldObj); ducc.setPosition(p.posX, p.posY + p.eyeHeight, p.posZ); diff --git a/src/main/java/com/hbm/render/item/ItemRendererHot.java b/src/main/java/com/hbm/render/item/ItemRendererHot.java index 2e1f8fdeb..b1ec326f4 100644 --- a/src/main/java/com/hbm/render/item/ItemRendererHot.java +++ b/src/main/java/com/hbm/render/item/ItemRendererHot.java @@ -3,8 +3,12 @@ package com.hbm.render.item; import org.lwjgl.opengl.GL11; import com.hbm.items.special.ItemHot; +import com.hbm.render.util.RenderItemStack; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.OpenGlHelper; import net.minecraft.client.renderer.RenderHelper; +import net.minecraft.client.renderer.entity.RenderItem; import net.minecraft.item.ItemStack; import net.minecraftforge.client.IItemRenderer; @@ -12,8 +16,7 @@ public class ItemRendererHot implements IItemRenderer { @Override public boolean handleRenderType(ItemStack stack, ItemRenderType type) { - - return true; + return type == ItemRenderType.INVENTORY; } @Override @@ -26,16 +29,21 @@ public class ItemRendererHot implements IItemRenderer { GL11.glPushMatrix(); RenderHelper.enableGUIStandardItemLighting(); - float d = (float)ItemHot.getHeat(item); + Minecraft mc = Minecraft.getMinecraft(); + RenderItemStack.renderItem.renderItemIntoGUI(mc.fontRenderer, mc.renderEngine, item, 0, 0); - //GL11.glColor3f(1F, 1F - d * 0.25F, d); - - /*if(currentItem != null) - RenderItemStack.renderItemStack(0, 0, 1.0F, currentItem); - else - RenderItemStack.renderItemStack(0, 0, 1.0F, item);*/ + double h = ItemHot.getHeat(item); + if(h > 0) { + + GL11.glEnable(GL11.GL_BLEND); + GL11.glDisable(GL11.GL_LIGHTING); + OpenGlHelper.glBlendFunc(770, 771, 1, 0); + GL11.glColor4f(1F, 1F, 1F, (float) h); + RenderItem.getInstance().renderIcon(0, 0, ((ItemHot)item.getItem()).hotIcon, 16, 16); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glDisable(GL11.GL_BLEND); + } GL11.glPopMatrix(); } - } diff --git a/src/main/java/com/hbm/render/item/ItemRendererMeteorSword.java b/src/main/java/com/hbm/render/item/ItemRendererMeteorSword.java new file mode 100644 index 000000000..f6a4488e6 --- /dev/null +++ b/src/main/java/com/hbm/render/item/ItemRendererMeteorSword.java @@ -0,0 +1,96 @@ +package com.hbm.render.item; + +import org.lwjgl.opengl.GL11; + +import com.hbm.lib.RefStrings; +import com.hbm.render.util.RenderItemStack; +import com.hbm.render.util.RenderMiscEffects; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.OpenGlHelper; +import net.minecraft.client.renderer.RenderHelper; +import net.minecraft.client.renderer.Tessellator; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.client.IItemRenderer; + +public class ItemRendererMeteorSword implements IItemRenderer { + + float r; + float g; + float b; + + public ItemRendererMeteorSword(float r, float g, float b) { + this.r = r; + this.g = g; + this.b = b; + } + + @Override + public boolean handleRenderType(ItemStack stack, ItemRenderType type) { + return type == ItemRenderType.INVENTORY; + } + + @Override + public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) { + return false; + } + + @Override + public void renderItem(ItemRenderType type, ItemStack item, Object... data) { + GL11.glPushMatrix(); + RenderHelper.enableGUIStandardItemLighting(); + + Minecraft mc = Minecraft.getMinecraft(); + RenderItemStack.renderItem.renderItemIntoGUI(mc.fontRenderer, mc.renderEngine, item, 0, 0); + + mc.renderEngine.bindTexture(RenderMiscEffects.glint); + + GL11.glDepthFunc(GL11.GL_EQUAL); + GL11.glDisable(GL11.GL_LIGHTING); + GL11.glDepthMask(false); + GL11.glEnable(GL11.GL_ALPHA_TEST); + GL11.glEnable(GL11.GL_BLEND); + + for (int j1 = 0; j1 < 2; ++j1) { + OpenGlHelper.glBlendFunc(772, 1, 0, 0); + float f = 0.00390625F; + float f1 = 0.00390625F; + float f2 = (float)(Minecraft.getSystemTime() % (long)(3000 + j1 * 1873)) / (3000.0F + (float)(j1 * 1873)) * 256.0F; + float f3 = 0.0F; + Tessellator tessellator = Tessellator.instance; + float f4 = 4.0F; + + if (j1 == 1) + { + f4 = -1.0F; + } + + float in = 0.36F; + + GL11.glColor4f(r * in, g * in, b * in, 1.0F); + + int p_77018_2_ = 0; + int p_77018_4_ = 16; + int p_77018_3_ = 0; + int p_77018_5_ = 16; + int zLevel = 0; + + tessellator.startDrawingQuads(); + tessellator.addVertexWithUV((double)(p_77018_2_ + 0), (double)(p_77018_3_ + p_77018_5_), (double)zLevel, (double)((f2 + (float)p_77018_5_ * f4) * f), (double)((f3 + (float)p_77018_5_) * f1)); + tessellator.addVertexWithUV((double)(p_77018_2_ + p_77018_4_), (double)(p_77018_3_ + p_77018_5_), (double)zLevel, (double)((f2 + (float)p_77018_4_ + (float)p_77018_5_ * f4) * f), (double)((f3 + (float)p_77018_5_) * f1)); + tessellator.addVertexWithUV((double)(p_77018_2_ + p_77018_4_), (double)(p_77018_3_ + 0), (double)zLevel, (double)((f2 + (float)p_77018_4_) * f), (double)((f3 + 0.0F) * f1)); + tessellator.addVertexWithUV((double)(p_77018_2_ + 0), (double)(p_77018_3_ + 0), (double)zLevel, (double)((f2 + 0.0F) * f), (double)((f3 + 0.0F) * f1)); + tessellator.draw(); + } + + GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); + GL11.glDepthMask(true); + GL11.glDisable(GL11.GL_BLEND); + GL11.glDisable(GL11.GL_ALPHA_TEST); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glDepthFunc(GL11.GL_LEQUAL); + + GL11.glPopMatrix(); + } +} diff --git a/src/main/java/com/hbm/render/tileentity/RenderCore.java b/src/main/java/com/hbm/render/tileentity/RenderCore.java index 2c55d77cf..93fba227e 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderCore.java +++ b/src/main/java/com/hbm/render/tileentity/RenderCore.java @@ -41,7 +41,7 @@ public class RenderCore extends TileEntitySpecialRenderer { GL11.glRotatef(RenderManager.instance.playerViewX - 90, 1.0F, 0.0F, 0.0F); GL11.glTranslated(-0.5, -0.5, -0.5); - renderVoid(core, 0, 0, 0); + renderOrb(core, 0, 0, 0); GL11.glPopMatrix(); } } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssembler.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssembler.java index 32780c5ac..9c8b7db56 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssembler.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineAssembler.java @@ -278,6 +278,9 @@ public class TileEntityMachineAssembler extends TileEntity implements ISidedInve } removeItems(AssemblerRecipes.getRecipeFromTempate(slots[4]), slots); + + if(slots[0] != null && slots[0].getItem() == ModItems.meteorite_sword_alloyed) + slots[0] = new ItemStack(ModItems.meteorite_sword_machined); } power -= consumption; diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplant.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplant.java index 8b425bf98..9405fc144 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplant.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineChemplant.java @@ -60,10 +60,10 @@ public class TileEntityMachineChemplant extends TileEntity implements ISidedInve public TileEntityMachineChemplant() { slots = new ItemStack[21]; tanks = new FluidTank[4]; - tanks[0] = new FluidTank(FluidType.NONE, 16000, 0); - tanks[1] = new FluidTank(FluidType.NONE, 16000, 1); - tanks[2] = new FluidTank(FluidType.NONE, 16000, 2); - tanks[3] = new FluidTank(FluidType.NONE, 16000, 3); + tanks[0] = new FluidTank(FluidType.NONE, 24000, 0); + tanks[1] = new FluidTank(FluidType.NONE, 24000, 1); + tanks[2] = new FluidTank(FluidType.NONE, 24000, 2); + tanks[3] = new FluidTank(FluidType.NONE, 24000, 3); } @Override @@ -301,6 +301,12 @@ public class TileEntityMachineChemplant extends TileEntity implements ISidedInve tanks[0].loadTank(17, 19, slots); tanks[1].loadTank(18, 20, slots); + + if(slots[17] != null && !(slots[17].getItem() == ModItems.fluid_barrel_infinite || slots[17].getItem() == ModItems.inf_water)) + tanks[0].unloadTank(17, 19, slots); + if(slots[18] != null && !(slots[18].getItem() == ModItems.fluid_barrel_infinite || slots[18].getItem() == ModItems.inf_water)) + tanks[1].unloadTank(18, 20, slots); + tanks[2].unloadTank(9, 11, slots); tanks[3].unloadTank(10, 12, slots); @@ -329,6 +335,9 @@ public class TileEntityMachineChemplant extends TileEntity implements ISidedInve removeItems(MachineRecipes.getChemInputFromTempate(slots[4]), slots); removeFluids(inputs); + + if(slots[0] != null && slots[0].getItem() == ModItems.meteorite_sword_machined) + slots[0] = new ItemStack(ModItems.meteorite_sword_treated); } power -= consumption; diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineDetector.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineDetector.java new file mode 100644 index 000000000..d1fc17588 --- /dev/null +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineDetector.java @@ -0,0 +1,46 @@ +package com.hbm.tileentity.machine; + +import com.hbm.interfaces.IConsumer; + +import net.minecraft.tileentity.TileEntity; + +public class TileEntityMachineDetector extends TileEntity implements IConsumer { + + long power; + + @Override + public void updateEntity() { + + if(!worldObj.isRemote) { + + int meta = this.getBlockMetadata(); + int state = 0; + + if(power > 0) { + state = 1; + power--; + } + + if(meta != state) { + worldObj.setBlockMetadataWithNotify(xCoord, yCoord, zCoord, state, 3); + this.markDirty(); + } + } + } + + @Override + public void setPower(long i) { + power = i; + } + + @Override + public long getPower() { + return power; + } + + @Override + public long getMaxPower() { + return 20; + } + +} diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFluidTank.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFluidTank.java index fb8d2f887..65aa9e30c 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFluidTank.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineFluidTank.java @@ -28,7 +28,7 @@ public class TileEntityMachineFluidTank extends TileEntityMachineBase implements public List list = new ArrayList(); public TileEntityMachineFluidTank() { - super(7); + super(6); tank = new FluidTank(FluidType.NONE, 256000, 0); } diff --git a/src/main/java/com/hbm/util/ArmorUtil.java b/src/main/java/com/hbm/util/ArmorUtil.java index df2e06767..1aa90fb58 100644 --- a/src/main/java/com/hbm/util/ArmorUtil.java +++ b/src/main/java/com/hbm/util/ArmorUtil.java @@ -213,6 +213,22 @@ public class ArmorUtil { { return true; } + if(checkArmorPiece(player, ModItems.t45_helmet, 3)) + { + return true; + } + if(checkArmorPiece(player, ModItems.ajr_helmet, 3)) + { + return true; + } + if(checkArmorPiece(player, ModItems.bj_helmet, 3)) + { + return true; + } + if(checkArmorPiece(player, ModItems.hev_helmet, 3)) + { + return true; + } return false; } diff --git a/src/main/resources/mcmod.info b/src/main/resources/mcmod.info index c291c46f5..a168324ab 100755 --- a/src/main/resources/mcmod.info +++ b/src/main/resources/mcmod.info @@ -8,7 +8,7 @@ "url": "", "updateUrl": "", "authorList": ["HbMinecraft"], - "credits": "rodolphito, Tamaized, grangerave, Hoboy, HBM", + "credits": "rodolphito, grangerave, Hoboy, Drillgon200, HBM", "logoFile": "", "screenshots": [], "dependencies": []