diff --git a/assets/hbm/lang/de_DE.lang b/assets/hbm/lang/de_DE.lang index f30dad249..494cc4106 100644 --- a/assets/hbm/lang/de_DE.lang +++ b/assets/hbm/lang/de_DE.lang @@ -68,6 +68,12 @@ potion.hbm_radaway=Radaway potion.hbm_telekinesis=! ! ! potion.hbm_phosphorus=Phosphorverbrennung +tool.ability.recursion=Erzadern-Miner +tool.ability.hammer=AoE +tool.ability.smelter=Auto-Ofen +tool.ability.shredder=Auto-Brecher +tool.ability.cnetrifuge=Auto-Zentrifuge + hbmfluid.none=Nichts hbmfluid.water=Wasser hbmfluid.steam=Dampf @@ -107,6 +113,7 @@ hbmfluid.hydrogen=Flüssiger Wasserstoff hbmfluid.oxygen=Flüssiger Sauerstoff hbmfluid.xenon=Xenongas hbmfluid.balefire=BF-Raketentreibstoff +hbmfluid.mercury=Quecksilber chem.TEST=Test chem.FP_HEAVYOIL=Schwerölverarbeitung @@ -167,6 +174,7 @@ chem.KEVLAR=Kevlarverbundherstellung chem.SOLID_FUEL=Festbrennstoffherstellung chem.ELECTROLYSIS=Kryo-Elektrolyse chem.XENON=Lindeverfahren (Xenon) +chem.SATURN=Saturnitherstellung item.record.lc.desc=Valve - Diabolic Adrenaline Guitar/Lambda Core item.record.ss.desc=Valve - Sector Sweep @@ -700,7 +708,7 @@ item.powder_spark_mix.name=Sparkmischung item.ingot_dineutronium.name=Dineutroniumbarren item.powder_dineutronium.name=Dineutroniumstaub item.nugget_dineutronium.name=Dineutroniumnugget -item.ingot_starmetal.name=Sternenmetallbarren +item.ingot_starmetal.name=§9Sternenmetallbarren§r item.ingot_saturnite.name=Saturnitbarren item.plate_saturnite.name=Saturnitplatte item.ingot_fiberglass.name=Fiberglasstafel @@ -806,17 +814,21 @@ tile.block_daffergon.name=Daffergonblock tile.block_verticium.name=Verticiumblock tile.block_desh.name=Verstärketer Deshblock tile.block_yellowcake.name=Yellowcakeblock -tile.block_starmetal.name=Sternenmetallblock +tile.block_starmetal.name=§9Sternenmetallblock§r +tile.block_insulator.name=Isolatorrolle tile.block_fiberglass.name=Fiberglasrolle tile.block_asbestos.name=Asbestblock tile.block_cobalt.name=Kobaltblock tile.block_lithium.name=Lithiumblock +tile.block_white_phosphorus.name=Weißer Phosphorblock +tile.block_red_phosphorus.name=Roter Phosphorblock tile.block_u233.name=U233-Block tile.block_u235.name=U235-Block tile.block_u238.name=U238-Block tile.block_neptunium.name=NeptuniumBlock tile.block_uranium_fuel.name=Urankernbrennstoffblock +tile.block_mox_fuel.name=MOX-Kernbrennstoffblock tile.block_plutonium.name=Plutoniumblock tile.block_pu238.name=Pu238-Block tile.block_pu239.name=Pu239-Block @@ -844,7 +856,7 @@ tile.ore_nether_uranium.name=Nether-Uranerz tile.ore_nether_plutonium.name=Nether-Plutoniumerz tile.ore_nether_tungsten.name=Nether-Wolframerz tile.ore_nether_sulfur.name=Nether-Schwefelerz -tile.ore_nether_fire.name=Feuererz +tile.ore_nether_fire.name=Nether-Phosphorerz tile.ore_nether_schrabidium.name=Nether-Schrabidiumerz tile.ore_meteor_aluminium.name=Meteoriten-Aluminiumerz @@ -1250,7 +1262,7 @@ item.flame_opinion.name=Eigene Meinung item.pellet_cluster.name=Explosive Pellets item.pellet_buckshot.name=Schrotkugeln item.pellet_flechette.name=Flechets -item.powder_fire.name=Flammenpulver +item.powder_fire.name=Roter Phosphor item.powder_ice.name=Kryopulver item.powder_poison.name=Giftpulver item.pellet_gas.name=Giftgaskatusche @@ -1469,6 +1481,7 @@ item.gun_b93.name=§cB93 Energiemod§r item.gun_xvl1456.name=XVL1456 Tau-Kanone Prototyp item.gun_osipr.name=Standartausrüstung für Sicherheitskräfte item.gun_immolator.name=Der Immolator +item.gun_flamer.name=Herr Topaz item.gun_cryolator.name=Der Cryolator item.gun_mp.name=Maschinengewehr des Pazifisten item.gun_zomg.name=Singularitätsbetriebener Paarvernichtungsstrahl "ZOMG Kanone" @@ -1588,6 +1601,10 @@ item.ammo_grenade_concussion.name=40mm Granate (Erschütterung) item.ammo_grenade_finned.name=40mm Granate (Geflügelt) item.ammo_grenade_nuclear.name=40mm Granate (Привет) item.ammo_grenade_sleek.name=40mm Granate (IF-F&E) +item.ammo_fuel.name=Dieselkatusche +item.ammo_fuel_napalm.name=Napalmkatusche +item.ammo_fuel_phosphorus.name=WP-Katusche +item.ammo_fuel_gas.name=Gaskatusche item.folly_shell.name=Silberne Kanonenhülse item.folly_bullet.name=12,8cm Sternenmetall-Hochenergiegeschoss @@ -2063,6 +2080,14 @@ item.security_helmet.name=Sicherheitshelm item.security_plate.name=Sicherheitsbrustpanzer item.security_legs.name=Sicherheitsbeinschutz item.security_boots.name=Sicherheitsstiefel +item.cobalt_helmet.name=Kobalthelm +item.cobalt_plate.name=Kobaltbrustpanzer +item.cobalt_legs.name=Kobaltbeinschutz +item.cobalt_boots.name=Kobaltstiefel +item.starmetal_helmet.name=Sternenmetallhelm +item.starmetal_plate.name=Sternenmetallbrustpanzer +item.starmetal_legs.name=Sternenmetallbeinschutz +item.starmetal_boots.name=Sternenmetallstiefel item.steel_sword.name=Stahlschwert item.steel_pickaxe.name=Stahlspitzhacke diff --git a/assets/hbm/lang/en_US.lang b/assets/hbm/lang/en_US.lang index a3f322036..ebd3a6ecc 100644 --- a/assets/hbm/lang/en_US.lang +++ b/assets/hbm/lang/en_US.lang @@ -68,6 +68,12 @@ potion.hbm_radaway=Radaway potion.hbm_telekinesis=! ! ! potion.hbm_phosphorus=Phosphorus Burns +tool.ability.recursion=Vein Miner +tool.ability.hammer=AoE +tool.ability.smelter=Auto-Smelter +tool.ability.shredder=Auto-Shredder +tool.ability.centrifuge=Auto-Centrifuge + hbmfluid.none=None hbmfluid.water=Water hbmfluid.steam=Steam @@ -107,6 +113,7 @@ hbmfluid.hydrogen=Liquid Hydrogen hbmfluid.oxygen=Liquid Oxygen hbmfluid.xenon=Xenon Gas hbmfluid.balefire=BF Rocket Fuel +hbmfluid.mercury=Mercury chem.TEST=Test chem.FP_HEAVYOIL=Heavy Oil Processing @@ -167,6 +174,7 @@ chem.KEVLAR=Kevlar Compound Production chem.SOLID_FUEL=Solid Rocket Fuel Production chem.ELECTROLYSIS=Cryo-Electrolysis chem.XENON=Linde Xenon Cycle +chem.SATURN=Saturnite Production item.record.lc.desc=Valve - Diabolic Adrenaline Guitar/Lambda Core item.record.ss.desc=Valve - Sector Sweep @@ -700,7 +708,7 @@ item.powder_spark_mix.name=Spark Blend item.ingot_dineutronium.name=Dineutronium Ingot item.powder_dineutronium.name=Dineutronium Powder item.nugget_dineutronium.name=Dineutronium Nugget -item.ingot_starmetal.name=Starmetal Ingot +item.ingot_starmetal.name=§9Starmetal Ingot§r item.ingot_saturnite.name=Saturnite Ingot item.plate_saturnite.name=Saturnite Plate item.ingot_fiberglass.name=Fiberglass Bar @@ -806,17 +814,21 @@ tile.block_daffergon.name=Block of Daffergon tile.block_verticium.name=Block of Verticium tile.block_desh.name=Reinforced Block of Desh tile.block_yellowcake.name=Block of Yellowcake -tile.block_starmetal.name=Block of Starmetal +tile.block_starmetal.name=§9Block of Starmetal§r +tile.block_insulator.name=Roll of Insulation tile.block_fiberglass.name=Roll of Fiberglass tile.block_asbestos.name=Block of Asbestos tile.block_cobalt.name=Block of Cobalt tile.block_lithium.name=Block of Lithium +tile.block_white_phosphorus.name=Block of White Phosphorus +tile.block_red_phosphorus.name=Block of Red Phosphorus tile.block_u233.name=Block of U233 tile.block_u235.name=Block of U235 tile.block_u238.name=Block of U238 tile.block_neptunium.name=Block of Neptunium tile.block_uranium_fuel.name=Block of Uranium Fuel +tile.block_mox_fuel.name=Block of MOX Fuel tile.block_plutonium.name=Block of Plutonium tile.block_pu238.name=Block of Pu238 tile.block_pu239.name=Block of Pu239 @@ -844,7 +856,7 @@ tile.ore_nether_uranium.name=Nether Uranium Ore tile.ore_nether_plutonium.name=Nether Plutonium Ore tile.ore_nether_tungsten.name=Nether Tungsten Ore tile.ore_nether_sulfur.name=Nether Sulfur Ore -tile.ore_nether_fire.name=Fire Ore +tile.ore_nether_fire.name=Nether Phosphorus Ore tile.ore_nether_schrabidium.name=Nether Schrabidium Ore tile.ore_meteor_aluminium.name=Meteor Aluminium Ore @@ -1250,7 +1262,7 @@ item.flame_opinion.name=Own Opinion item.pellet_cluster.name=Explosive Pellets item.pellet_buckshot.name=Lead Pellets item.pellet_flechette.name=Flechettes -item.powder_fire.name=Flame Powder +item.powder_fire.name=Red Phosphorus item.powder_ice.name=Cryo Powder item.powder_poison.name=Poison Powder item.pellet_gas.name=Poison Gas Cartridge @@ -1469,6 +1481,7 @@ item.gun_b93.name=§cB93 Energy Mod§r item.gun_xvl1456.name=XVL1456 Tau Cannon Prototype item.gun_osipr.name=Overwatch Standard Issue Pulse Rifle item.gun_immolator.name=The Immolator +item.gun_flamer.name=Mister Topaz item.gun_cryolator.name=The Cryolator item.gun_mp.name=Pacifist's Machine Gun item.gun_zomg.name=Singularity Powered Annihilation Ray "ZOMG Cannon" @@ -1588,6 +1601,10 @@ item.ammo_grenade_concussion.name=40mm Grenade (Concussion) item.ammo_grenade_finned.name=40mm Grenade (Finned) item.ammo_grenade_nuclear.name=40mm Grenade (Привет) item.ammo_grenade_sleek.name=40mm Grenade (IF-R&D) +item.ammo_fuel.name=Diesel Tank +item.ammo_fuel_napalm.name=Napalm Tank +item.ammo_fuel_phosphorus.name=WP Tank +item.ammo_fuel_gas.name=Gas Tank item.folly_shell.name=Silver Bullet Casing item.folly_bullet.name=12.8cm Starmetal High-Energy Shell @@ -2063,6 +2080,14 @@ item.security_helmet.name=Security Helmet item.security_plate.name=Security Chestplate item.security_legs.name=Security Leggings item.security_boots.name=Security Boots +item.cobalt_helmet.name=Cobalt Helmet +item.cobalt_plate.name=Cobalt Chestplate +item.cobalt_legs.name=Cobalt Leggings +item.cobalt_boots.name=Cobalt Boots +item.starmetal_helmet.name=Starmetal Helmet +item.starmetal_plate.name=Starmetal Chestplate +item.starmetal_legs.name=Starmetal Leggings +item.starmetal_boots.name=Starmetal Boots item.steel_sword.name=Steel Sword item.steel_pickaxe.name=Steel Pickaxe diff --git a/assets/hbm/models/weapons/flamer.obj b/assets/hbm/models/weapons/flamer.obj new file mode 100644 index 000000000..2b9e7e367 --- /dev/null +++ b/assets/hbm/models/weapons/flamer.obj @@ -0,0 +1,1755 @@ +# Blender v2.76 (sub 0) OBJ File: 'flamer.blend' +# www.blender.org +o Cylinder +v 0.000000 1.250000 -2.500000 +v 0.000000 1.250000 2.500000 +v 0.176777 1.176776 -2.500000 +v 0.176777 1.176777 2.500000 +v 0.250000 1.000000 -2.500000 +v 0.250000 1.000000 2.500000 +v 0.176777 0.823223 -2.500000 +v 0.176777 0.823224 2.500000 +v -0.000000 0.750000 -2.500000 +v -0.000000 0.750000 2.500000 +v -0.176777 0.823223 -2.500000 +v -0.176777 0.823224 2.500000 +v -0.250000 1.000000 -2.500000 +v -0.250000 1.000000 2.500000 +v -0.176777 1.176776 -2.500000 +v -0.176777 1.176777 2.500000 +v 0.000000 1.500000 2.500000 +v 0.353553 1.353554 2.500000 +v 0.500000 1.000000 2.500000 +v 0.353553 0.646447 2.500000 +v -0.000000 0.500000 2.500000 +v -0.353553 0.646447 2.500000 +v -0.500000 1.000000 2.500000 +v -0.353553 1.353554 2.500000 +v 0.353553 1.353554 4.500000 +v 0.000000 1.500000 4.500000 +v 0.500000 1.000000 4.500000 +v 0.353553 0.646447 4.500000 +v -0.000000 0.500000 4.500000 +v -0.353553 0.646447 4.500000 +v -0.500000 1.000000 4.500000 +v -0.353553 1.353554 4.500000 +v 0.265165 1.265165 4.750000 +v 0.000000 1.375000 4.750000 +v 0.375000 1.000000 4.750000 +v 0.265165 0.734835 4.750000 +v -0.000000 0.625000 4.750000 +v -0.265165 0.734835 4.750000 +v -0.375000 1.000000 4.750000 +v -0.265165 1.265165 4.750000 +v 0.000000 0.775916 0.562275 +v 0.000000 -0.672973 0.950503 +v 0.375000 1.000000 5.000000 +v -0.265165 0.734835 5.000000 +v 0.000000 1.375000 5.000000 +v -0.000000 0.625000 5.000000 +v 0.125000 -0.608268 1.191985 +v 0.125000 0.840621 0.803756 +v 0.088388 -0.585392 1.277361 +v 0.088388 0.863497 0.889133 +v -0.000000 -0.575916 1.312725 +v -0.000000 0.872973 0.924497 +v -0.088388 -0.585392 1.277361 +v -0.088388 0.863497 0.889133 +v -0.125000 -0.608268 1.191985 +v -0.125000 0.840621 0.803756 +v 0.265165 1.265165 5.000000 +v 0.265165 0.734835 5.000000 +v 0.088388 -0.663497 0.985867 +v 0.088388 0.785392 0.597639 +v 0.125000 -0.640621 1.071244 +v 0.125000 0.808268 0.683015 +v -0.125000 -0.640621 1.071244 +v -0.125000 0.808268 0.683015 +v -0.088388 -0.663497 0.985867 +v -0.088388 0.785392 0.597639 +v -0.375000 1.000000 5.000000 +v -0.265165 1.265165 5.000000 +v -0.198874 1.198874 5.000000 +v -0.281250 1.000000 5.000000 +v -0.198874 0.801127 5.000000 +v -0.000000 0.718750 5.000000 +v 0.000000 1.281250 5.000000 +v 0.198874 0.801127 5.000000 +v 0.281250 1.000000 5.000000 +v 0.198874 1.198874 5.000000 +v -0.198874 1.198874 4.750000 +v -0.281250 1.000000 4.750000 +v -0.198874 0.801127 4.750000 +v -0.000000 0.718750 4.750000 +v 0.000000 1.281250 4.750000 +v 0.198874 0.801127 4.750000 +v 0.281250 1.000000 4.750000 +v 0.198874 1.198874 4.750000 +v 0.000000 0.850000 -1.125000 +v 0.000000 -0.650000 -1.125000 +v 0.125000 -0.650000 -0.875000 +v 0.125000 0.850000 -0.875000 +v 0.088388 -0.650000 -0.786612 +v 0.088388 0.850000 -0.786612 +v -0.000000 -0.650000 -0.750000 +v -0.000000 0.850000 -0.750000 +v -0.088388 -0.650000 -0.786612 +v -0.088388 0.850000 -0.786612 +v -0.125000 -0.650000 -0.875000 +v -0.125000 0.850000 -0.875000 +v 0.088388 -0.650000 -1.088388 +v 0.088388 0.850000 -1.088388 +v 0.125000 -0.650000 -1.000000 +v 0.125000 0.850000 -1.000000 +v -0.125000 -0.650000 -1.000000 +v -0.125000 0.850000 -1.000000 +v -0.088388 -0.650000 -1.088388 +v -0.088388 0.850000 -1.088388 +v -0.334835 -0.995481 2.879628 +v -0.600000 -1.073146 2.801963 +v -0.600000 -0.984758 2.536798 +v -0.600000 0.429456 1.122584 +v -0.246447 -0.881204 2.640351 +v -0.246447 0.533009 1.226137 +v -0.100000 -0.631204 2.890351 +v -0.100000 0.783009 1.476137 +v -0.246447 -0.381205 3.140351 +v -0.246447 1.033009 1.726137 +v -0.600000 -0.277651 3.243904 +v -0.600000 1.136562 1.829691 +v -0.953553 -0.381205 3.140351 +v -0.953553 1.033009 1.726137 +v -1.100000 -0.631204 2.890351 +v -1.100000 0.783009 1.476137 +v -0.953553 -0.881204 2.640351 +v -0.953553 0.533009 1.226137 +v -0.225000 -0.807981 3.067128 +v -0.334835 -0.620481 3.254628 +v -0.600000 -0.542816 3.332293 +v -0.865165 -0.620481 3.254628 +v -0.975000 -0.807981 3.067128 +v -0.865165 -0.995481 2.879628 +v -0.600000 -0.896369 3.155516 +v -0.334835 0.772286 1.111861 +v -0.600000 0.694620 1.034196 +v -0.225000 0.959786 1.299361 +v -0.334835 1.147285 1.486861 +v -0.600000 1.224951 1.564526 +v -0.865165 1.147285 1.486861 +v -0.975000 0.959786 1.299361 +v -0.865165 0.772286 1.111861 +v -0.334835 0.949062 0.935084 +v -0.600000 0.871397 0.857419 +v -0.225000 1.136562 1.122584 +v -0.334835 1.324062 1.310084 +v -0.600000 1.401727 1.387749 +v -0.865165 1.324062 1.310084 +v -0.975000 1.136562 1.122584 +v -0.865165 0.949062 0.935084 +v -0.507192 1.070937 1.056959 +v -0.600000 1.043755 1.029776 +v -0.468750 1.136562 1.122584 +v -0.507192 1.202187 1.188209 +v -0.600000 1.229370 1.215392 +v -0.692808 1.202187 1.188209 +v -0.731250 1.136562 1.122584 +v -0.692808 1.070937 1.056959 +v -0.507192 1.582703 0.553196 +v -0.600000 1.547831 0.537018 +v -0.468750 1.666892 0.592254 +v -0.507192 1.751081 0.631312 +v -0.600000 1.785953 0.647490 +v -0.692808 1.751081 0.631312 +v -0.731250 1.666892 0.592254 +v -0.692808 1.582703 0.553196 +v -0.507192 1.900055 -0.126021 +v -0.600000 1.862579 -0.134584 +v -0.468750 1.990531 -0.105349 +v -0.507192 2.081007 -0.084676 +v -0.600000 2.118484 -0.076113 +v -0.692808 2.081007 -0.084676 +v -0.731250 1.990531 -0.105349 +v -0.692808 1.900055 -0.126021 +v -0.507192 2.128390 -1.114374 +v -0.600000 2.089948 -1.114167 +v -0.468750 2.221196 -1.114874 +v -0.507192 2.314003 -1.115373 +v -0.600000 2.352444 -1.115580 +v -0.692808 2.314003 -1.115373 +v -0.731250 2.221196 -1.114874 +v -0.692808 2.128390 -1.114374 +v -0.507192 2.127253 -2.030281 +v -0.600000 2.090441 -2.019205 +v -0.468750 2.216124 -2.057023 +v -0.507192 2.304996 -2.083764 +v -0.600000 2.341808 -2.094840 +v -0.692808 2.304996 -2.083764 +v -0.731250 2.216124 -2.057023 +v -0.692808 2.127253 -2.030281 +v -0.472031 1.940117 -2.669739 +v -0.564838 1.908912 -2.647287 +v -0.433588 2.015452 -2.723941 +v -0.472031 2.090787 -2.778143 +v -0.564838 2.121992 -2.800595 +v -0.657646 2.090787 -2.778143 +v -0.696088 2.015452 -2.723941 +v -0.657646 1.940117 -2.669739 +v -0.442782 1.729579 -2.977650 +v -0.535590 1.710985 -2.944004 +v -0.404340 1.774468 -3.058879 +v -0.442782 1.819358 -3.140109 +v -0.535590 1.837952 -3.173755 +v -0.628398 1.819358 -3.140109 +v -0.666840 1.774468 -3.058879 +v -0.628398 1.729579 -2.977650 +v -0.391283 1.438127 -3.156019 +v -0.484091 1.440989 -3.117683 +v -0.352841 1.431219 -3.248569 +v -0.391283 1.424311 -3.341119 +v -0.484091 1.421449 -3.379455 +v -0.576899 1.424311 -3.341119 +v -0.615341 1.431219 -3.248569 +v -0.576899 1.438127 -3.156019 +v -0.249516 1.207628 -3.148211 +v -0.342324 1.226989 -3.115000 +v -0.211074 1.160890 -3.228390 +v -0.249516 1.114151 -3.308570 +v -0.342324 1.094791 -3.341782 +v -0.435132 1.114151 -3.308570 +v -0.473574 1.160890 -3.228390 +v -0.435132 1.207628 -3.148211 +v -0.121115 1.064876 -3.038342 +v -0.213923 1.101756 -3.027492 +v -0.082673 0.975842 -3.064536 +v -0.121115 0.886808 -3.090731 +v -0.213923 0.849929 -3.101581 +v -0.306731 0.886808 -3.090731 +v -0.345173 0.975842 -3.064536 +v -0.306731 1.064876 -3.038342 +v -0.033410 1.011130 -2.881844 +v -0.126218 1.049316 -2.886280 +v 0.005033 0.918943 -2.871136 +v -0.033410 0.826755 -2.860428 +v -0.126218 0.788570 -2.855992 +v -0.219025 0.826755 -2.860428 +v -0.257468 0.918943 -2.871136 +v -0.219025 1.011130 -2.881844 +v 0.117527 1.061549 -2.447793 +v 0.024719 1.099735 -2.452229 +v 0.155969 0.969362 -2.437085 +v 0.117527 0.877173 -2.426377 +v 0.024719 0.838988 -2.421941 +v -0.068089 0.877173 -2.426377 +v -0.106531 0.969362 -2.437085 +v -0.068089 1.061549 -2.447793 +v -0.000000 1.625000 -0.375000 +v 0.088388 1.588388 -0.375000 +v 0.000000 1.750000 -2.000000 +v 0.000000 1.750000 -0.500000 +v 0.176777 1.676777 -2.000000 +v 0.176777 1.676777 -0.500000 +v 0.250000 1.500000 -2.000000 +v 0.250000 1.500000 -0.500000 +v 0.176777 1.323223 -2.000000 +v 0.176777 1.323223 -0.500000 +v -0.000000 1.250000 -2.000000 +v -0.000000 1.250000 -0.500000 +v -0.176777 1.323223 -2.000000 +v -0.176777 1.323223 -0.500000 +v -0.250000 1.500000 -2.000000 +v -0.250000 1.500000 -0.500000 +v -0.176777 1.676777 -2.000000 +v -0.176777 1.676777 -0.500000 +v 0.125000 1.500000 -0.375000 +v 0.088388 1.411612 -0.375000 +v -0.000000 1.375000 -0.375000 +v -0.088388 1.411612 -0.375000 +v -0.125000 1.500000 -0.375000 +v -0.088388 1.588388 -0.375000 +v -0.000000 1.625000 -2.125000 +v 0.088388 1.588388 -2.125000 +v 0.125000 1.500000 -2.125000 +v 0.088388 1.411612 -2.125000 +v -0.000000 1.375000 -2.125000 +v -0.088388 1.411612 -2.125000 +v -0.125000 1.500000 -2.125000 +v -0.088388 1.588388 -2.125000 +v -0.066291 1.316698 0.680730 +v -0.093750 1.254391 0.658093 +v -0.066291 1.192085 0.635456 +v -0.000000 1.166277 0.626079 +v 0.066291 1.192085 0.635456 +v 0.093750 1.254391 0.658093 +v -0.000000 1.342506 0.690107 +v 0.066291 1.316698 0.680730 +v 0.066291 1.469112 0.404562 +v 0.093750 1.410994 0.372674 +v 0.066291 1.352876 0.340786 +v -0.000000 1.328803 0.327577 +v -0.066291 1.352876 0.340786 +v -0.093750 1.410994 0.372674 +v -0.066291 1.469112 0.404562 +v -0.000000 1.493185 0.417770 +v -0.066291 1.564097 0.052334 +v -0.093750 1.500000 0.035418 +v -0.066291 1.435904 0.018502 +v -0.000000 1.409354 0.011496 +v 0.066291 1.435904 0.018502 +v 0.093750 1.500000 0.035418 +v -0.000000 1.590647 0.059341 +v 0.066291 1.564097 0.052334 +v -0.066291 1.566291 -0.375000 +v -0.093750 1.500000 -0.375000 +v -0.066291 1.433709 -0.375000 +v -0.000000 1.406250 -0.375000 +v 0.066291 1.433709 -0.375000 +v 0.093750 1.500000 -0.375000 +v 0.066291 1.566291 -0.375000 +v -0.000000 1.593750 -0.375000 +v -0.000000 1.239741 0.972957 +v -0.066291 1.213933 0.963580 +v -0.093750 1.151626 0.940943 +v -0.066291 1.089320 0.918306 +v -0.000000 1.063512 0.908929 +v 0.066291 1.089320 0.918306 +v 0.093750 1.151626 0.940943 +v 0.066291 1.213933 0.963580 +v 0.250000 1.250000 2.250000 +v 0.250000 0.750000 2.250000 +v 0.250000 1.250000 0.000000 +v 0.312500 1.250000 0.000000 +v 0.250000 0.750000 -2.000000 +v 0.250000 1.750000 -0.500000 +v 0.250000 1.750000 -2.000000 +v 0.312500 1.250000 2.250000 +v 0.312500 0.750000 2.250000 +v 0.312500 0.750000 -2.000000 +v 0.312500 1.750000 -2.000000 +v 0.312500 1.750000 -0.500000 +v -0.312500 1.250000 0.750000 +v -0.312500 0.750000 0.750000 +v -0.312500 1.250000 0.000000 +v -0.250000 1.250000 0.000000 +v -0.312500 0.750000 -2.000000 +v -0.312500 1.750000 -0.500000 +v -0.312500 1.750000 -2.000000 +v -0.250000 1.250000 0.750000 +v -0.250000 0.750000 0.750000 +v -0.250000 0.750000 -2.000000 +v -0.250000 1.750000 -2.000000 +v -0.250000 1.750000 -0.500000 +v 0.312500 1.875000 -2.000000 +v -0.312500 1.875000 -2.000000 +v 0.312500 1.875000 0.250000 +v -0.312500 1.875000 0.250000 +v 0.312500 1.625000 0.750000 +v -0.312500 1.625000 0.750000 +v 0.312500 1.625000 2.000000 +v -0.312500 1.625000 2.000000 +v 0.312500 1.375000 2.250000 +v -0.312500 1.375000 2.250000 +v 0.312500 1.250000 0.250000 +v 0.312500 1.250000 2.000000 +v -0.000000 1.000000 4.750000 +v 0.353553 1.353554 4.500000 +v 0.000000 1.500000 4.500000 +v 0.500000 1.000000 4.500000 +v 0.353553 0.646447 4.500000 +v -0.000000 0.500000 4.500000 +v -0.353553 0.646447 4.500000 +v -0.500000 1.000000 4.500000 +v -0.353553 1.353554 4.500000 +v 0.265165 1.265165 4.750000 +v 0.000000 1.375000 4.750000 +v 0.375000 1.000000 4.750000 +v 0.265165 0.734835 4.750000 +v -0.000000 0.625000 4.750000 +v -0.265165 0.734835 4.750000 +v -0.375000 1.000000 4.750000 +v -0.265165 1.265165 4.750000 +v -0.334835 0.772286 1.111861 +v -0.600000 0.694620 1.034196 +v -0.225000 0.959786 1.299361 +v -0.334835 1.147285 1.486861 +v -0.600000 1.224951 1.564526 +v -0.865165 1.147285 1.486861 +v -0.975000 0.959786 1.299361 +v -0.865165 0.772286 1.111861 +vt 0.798533 0.049911 +vt 0.749182 0.069988 +vt 0.728740 0.021518 +vt 0.547206 0.354533 +vt 0.448111 0.257208 +vt 0.489158 0.216895 +vt 0.081818 0.339286 +vt 0.072727 0.339286 +vt 0.072727 0.312500 +vt 0.081818 0.250000 +vt 0.072727 0.250000 +vt 0.072727 0.223214 +vt 0.081818 0.401786 +vt 0.081818 0.428571 +vt 0.072727 0.428571 +vt 0.081818 0.383929 +vt 0.072727 0.383929 +vt 0.072727 0.357143 +vt 0.926786 0.215241 +vt 0.943995 0.232143 +vt 0.926786 0.249044 +vt 0.081818 0.517857 +vt 0.072727 0.517857 +vt 0.072727 0.491071 +vt 0.081818 0.562500 +vt 0.072727 0.562500 +vt 0.072727 0.535714 +vt 0.081818 0.473214 +vt 0.072727 0.473214 +vt 0.072727 0.446429 +vt 0.081818 0.294643 +vt 0.072727 0.294643 +vt 0.072727 0.267857 +vt 0.000000 0.508929 +vt 0.036364 0.491071 +vt 0.036364 0.517857 +vt 0.592964 0.246503 +vt 0.697945 0.246503 +vt 0.697945 0.289211 +vt 0.981818 0.607143 +vt 0.763636 0.750000 +vt 0.690909 0.678571 +vt 0.990909 0.750000 +vt 0.981818 0.750000 +vt 0.763636 0.758929 +vt 0.990909 0.607143 +vt 0.990909 0.678571 +vt 0.690909 0.758929 +vt 0.690909 0.750000 +vt 0.981818 0.758929 +vt 0.363636 0.758929 +vt 0.363636 0.750000 +vt 0.581818 0.758929 +vt 0.581818 0.750000 +vt 0.890909 0.000000 +vt 0.890909 0.321429 +vt 0.800000 0.321429 +vt 0.890909 0.392857 +vt 0.800000 0.392857 +vt 0.890909 0.571429 +vt 0.800000 0.571429 +vt 0.890909 0.607143 +vt 0.800000 0.607143 +vt 0.936364 0.392857 +vt 0.000000 0.241071 +vt 0.036364 0.223214 +vt 0.036364 0.250000 +vt 0.036364 0.446429 +vt 0.036364 0.473214 +vt 0.000000 0.464286 +vt 0.036364 0.357143 +vt 0.036364 0.383929 +vt 0.000000 0.375000 +vt 0.036364 0.294643 +vt 0.000000 0.285714 +vt 0.036364 0.267857 +vt 0.036364 0.401786 +vt 0.036364 0.428571 +vt 0.000000 0.419643 +vt 0.036364 0.562500 +vt 0.000000 0.553571 +vt 0.036364 0.535714 +vt 0.036364 0.312500 +vt 0.036364 0.339286 +vt 0.000000 0.330357 +vt 0.749182 0.001441 +vt 0.778091 0.001441 +vt 0.798533 0.021518 +vt 0.778091 0.069988 +vt 0.728740 0.049911 +vt 0.547206 0.216895 +vt 0.588252 0.257208 +vt 0.588252 0.314220 +vt 0.489158 0.354533 +vt 0.448111 0.314220 +vt 0.081818 0.312500 +vt 0.081818 0.223214 +vt 0.072727 0.401786 +vt 0.081818 0.357143 +vt 0.909577 0.249044 +vt 0.909577 0.215241 +vt 0.897409 0.244094 +vt 0.892369 0.232143 +vt 0.897409 0.220192 +vt 0.938955 0.220192 +vt 0.938955 0.244094 +vt 0.081818 0.491071 +vt 0.081818 0.535714 +vt 0.081818 0.446429 +vt 0.081818 0.267857 +vt 0.667197 0.319410 +vt 0.623712 0.319410 +vt 0.592964 0.289211 +vt 0.623712 0.216304 +vt 0.667197 0.216304 +vt 0.363636 0.678571 +vt 0.363636 0.607143 +vt 0.981818 0.678571 +vt 0.581818 0.678571 +vt 0.581818 0.607143 +vt 0.800000 0.000000 +vt 0.981818 0.321429 +vt 0.936364 0.571429 +vt 0.000000 0.107143 +vt 0.000000 0.080357 +vt 0.727273 0.080357 +vt 0.000000 0.053571 +vt 0.727273 0.053571 +vt 0.000000 0.026786 +vt 0.727273 0.026786 +vt 0.000000 -0.000000 +vt 0.727273 -0.000000 +vt 0.000000 0.214286 +vt 0.000000 0.187500 +vt 0.727273 0.187500 +vt -0.000000 0.160714 +vt 0.727273 0.160714 +vt 0.000000 0.133929 +vt 0.727273 0.107143 +vt 0.727273 0.133929 +vt 0.154545 0.392857 +vt 0.118182 0.383929 +vt 0.118182 0.357143 +vt 0.445455 0.482143 +vt 0.154545 0.482143 +vt 0.154545 0.437500 +vt 0.445455 0.571429 +vt 0.154545 0.571429 +vt 0.154545 0.526786 +vt 0.445455 0.303571 +vt 0.154545 0.303571 +vt 0.154545 0.258929 +vt 0.445455 0.392857 +vt 0.154545 0.348214 +vt 0.445455 0.437500 +vt 0.445455 0.526786 +vt 0.445455 0.258929 +vt 0.154545 0.214286 +vt 0.445455 0.348214 +vt 0.118182 0.473214 +vt 0.118182 0.428571 +vt 0.118182 0.401786 +vt 0.118182 0.517857 +vt 0.118182 0.491071 +vt 0.118182 0.250000 +vt 0.118182 0.223214 +vt 0.118182 0.339286 +vt 0.118182 0.446429 +vt 0.118182 0.562500 +vt 0.118182 0.535714 +vt 0.118182 0.294643 +vt 0.963636 0.000000 +vt 0.963636 0.214286 +vt 0.954545 0.214286 +vt 0.909091 0.214286 +vt 0.900000 0.214286 +vt 0.900000 -0.000000 +vt 0.945455 0.214286 +vt 0.945455 0.000000 +vt 0.890909 0.214286 +vt 0.936364 0.214286 +vt 0.936364 0.000000 +vt 0.990909 0.214286 +vt 0.981818 0.214286 +vt 0.981818 0.000000 +vt 0.927273 0.214286 +vt 1.000000 0.214286 +vt 0.990909 0.000000 +vt 0.909091 -0.000000 +vt 0.927273 0.000000 +vt 0.954545 0.000000 +vt 0.081818 0.607143 +vt 0.054545 0.607143 +vt 0.063636 0.571429 +vt 0.000000 0.642857 +vt 0.009091 0.607143 +vt 0.036364 0.607143 +vt 0.090909 0.928571 +vt 0.045455 0.928571 +vt 0.045455 0.642857 +vt 0.281818 0.607143 +vt 0.290909 0.571429 +vt 0.309091 0.607143 +vt 0.000000 0.928571 +vt 0.018182 0.571429 +vt 0.227273 0.642857 +vt 0.236364 0.607143 +vt 0.263636 0.607143 +vt 0.363636 0.928571 +vt 0.318182 0.928571 +vt 0.318182 0.642857 +vt 0.336364 0.571429 +vt 0.354545 0.607143 +vt 0.327273 0.607143 +vt 0.272727 0.642857 +vt 0.272727 0.928571 +vt 0.245455 0.571429 +vt 0.181818 0.642857 +vt 0.136364 0.642857 +vt 0.145455 0.607143 +vt 0.227273 0.928571 +vt 0.090909 0.642857 +vt 0.100000 0.607143 +vt 0.127273 0.607143 +vt 0.109091 0.571429 +vt 0.181818 0.928571 +vt 0.136364 0.928571 +vt 0.172727 0.964286 +vt 0.190909 0.607143 +vt 0.200000 0.571429 +vt 0.218182 0.607143 +vt 0.363636 0.642857 +vt 0.172727 0.607143 +vt 0.172727 1.000000 +vt 0.145455 1.000000 +vt 0.309091 0.964286 +vt 0.127273 0.964286 +vt 0.100000 0.964286 +vt 0.263636 0.964286 +vt 0.236364 0.964286 +vt 0.036364 0.964286 +vt 0.009091 0.964286 +vt 0.218182 0.964286 +vt 0.190909 0.964286 +vt 0.081818 0.964286 +vt 0.354545 0.964286 +vt 0.327273 0.964286 +vt 0.263636 1.000000 +vt 0.236364 1.000000 +vt 0.354545 1.000000 +vt 0.327273 1.000000 +vt 0.081818 1.000000 +vt 0.054545 1.000000 +vt 0.127273 1.000000 +vt 0.100000 1.000000 +vt 0.218182 1.000000 +vt 0.190909 1.000000 +vt 0.309091 1.000000 +vt 0.281818 1.000000 +vt 0.036364 1.000000 +vt 0.448482 0.946245 +vt 0.447816 0.936764 +vt 0.523996 0.936068 +vt 0.369358 0.915395 +vt 0.369651 0.904997 +vt 0.443928 0.907333 +vt 0.369577 0.977632 +vt 0.444759 0.974927 +vt 0.444202 0.985187 +vt 0.368934 0.957145 +vt 0.447883 0.955729 +vt 0.446357 0.965194 +vt 0.368756 0.946516 +vt 0.368859 0.935885 +vt 0.369103 0.925507 +vt 0.444557 0.917588 +vt 0.369251 0.967522 +vt 0.446224 0.927310 +vt 0.522087 0.975636 +vt 0.626450 0.975177 +vt 0.626057 0.985284 +vt 0.521878 0.916354 +vt 0.523095 0.965773 +vt 0.524450 0.945986 +vt 0.524068 0.955907 +vt 0.522955 0.926210 +vt 0.521371 0.906291 +vt 0.521651 0.985702 +vt 0.628882 0.945575 +vt 0.723624 0.945363 +vt 0.722938 0.955028 +vt 0.628486 0.955489 +vt 0.627480 0.965327 +vt 0.628421 0.935698 +vt 0.626249 0.916110 +vt 0.627351 0.925915 +vt 0.625775 0.906009 +vt 0.721652 0.964592 +vt 0.790095 0.963668 +vt 0.789097 0.973339 +vt 0.722167 0.926018 +vt 0.719968 0.906107 +vt 0.720504 0.974265 +vt 0.720292 0.984376 +vt 0.723330 0.935673 +vt 0.720747 0.916255 +vt 0.791502 0.954389 +vt 0.831324 0.953660 +vt 0.829446 0.962292 +vt 0.792458 0.945160 +vt 0.791501 0.926590 +vt 0.788839 0.906848 +vt 0.789375 0.983686 +vt 0.792466 0.935897 +vt 0.789942 0.917055 +vt 0.829472 0.918437 +vt 0.827726 0.908180 +vt 0.862719 0.910216 +vt 0.832923 0.936395 +vt 0.828203 0.971666 +vt 0.832673 0.945158 +vt 0.831759 0.927625 +vt 0.828966 0.982180 +vt 0.863999 0.960877 +vt 0.889845 0.961285 +vt 0.890148 0.970994 +vt 0.862777 0.969191 +vt 0.866818 0.953742 +vt 0.871109 0.938583 +vt 0.869466 0.946526 +vt 0.866875 0.920299 +vt 0.870562 0.929761 +vt 0.899634 0.931326 +vt 0.924923 0.932413 +vt 0.925432 0.940574 +vt 0.895714 0.946765 +vt 0.892429 0.953646 +vt 0.891166 0.913838 +vt 0.865152 0.979003 +vt 0.898514 0.939714 +vt 0.896870 0.922597 +vt 0.914512 0.972870 +vt 0.917998 0.983727 +vt 0.894742 0.980719 +vt 0.919650 0.955423 +vt 0.915792 0.963054 +vt 0.923237 0.948280 +vt 0.920544 0.924055 +vt 0.945061 0.931037 +vt 0.935756 0.975611 +vt 0.937251 0.965252 +vt 0.984846 0.968093 +vt 0.913450 0.915823 +vt 0.933929 0.913381 +vt 0.940874 0.956561 +vt 0.946125 0.940120 +vt 0.944297 0.948500 +vt 0.940514 0.922208 +vt 0.989499 0.946755 +vt 0.986463 0.957358 +vt 0.992017 0.925068 +vt 0.991979 0.935995 +vt 0.984210 0.904997 +vt 0.938053 0.986290 +vt 0.985609 0.978434 +vt 0.989108 0.914525 +vt 0.690909 0.437500 +vt 0.709091 0.446429 +vt 0.709091 0.455357 +vt 0.472727 0.544643 +vt 0.454545 0.535714 +vt 0.454545 0.526786 +vt 0.472727 0.464286 +vt 0.472727 0.437500 +vt 0.690909 0.410714 +vt 0.709091 0.419643 +vt 0.709091 0.428571 +vt 0.454545 0.428571 +vt 0.454545 0.419643 +vt 0.472727 0.410714 +vt 0.690909 0.357143 +vt 0.709091 0.366071 +vt 0.709091 0.375000 +vt 0.472727 0.571429 +vt 0.454545 0.562500 +vt 0.454545 0.553571 +vt 0.472727 0.383929 +vt 0.690909 0.383929 +vt 0.690909 0.517857 +vt 0.690909 0.491071 +vt 0.709091 0.500000 +vt 0.472727 0.491071 +vt 0.454545 0.482143 +vt 0.454545 0.473214 +vt 0.472727 0.357143 +vt 0.743565 0.392074 +vt 0.718979 0.382072 +vt 0.753748 0.367928 +vt 0.454545 0.375000 +vt 0.454545 0.366071 +vt 0.690909 0.544643 +vt 0.454545 0.401786 +vt 0.454545 0.392857 +vt 0.718979 0.367928 +vt 0.743565 0.357926 +vt 0.729163 0.392074 +vt 0.472727 0.517857 +vt 0.454545 0.508929 +vt 0.454545 0.500000 +vt 0.690909 0.464286 +vt 0.709091 0.553571 +vt 0.709091 0.562500 +vt 0.454545 0.455357 +vt 0.454545 0.446429 +vt 0.709091 0.392857 +vt 0.709091 0.401786 +vt 0.709091 0.526786 +vt 0.709091 0.535714 +vt 0.709091 0.473214 +vt 0.709091 0.482143 +vt 0.883488 0.817576 +vt 0.882232 0.827636 +vt 0.835305 0.826374 +vt 0.885741 0.796519 +vt 0.884937 0.807186 +vt 0.834078 0.804683 +vt 0.885054 0.867824 +vt 0.834209 0.870476 +vt 0.834772 0.859787 +vt 0.882271 0.847386 +vt 0.835381 0.848832 +vt 0.835584 0.837608 +vt 0.881777 0.837512 +vt 0.834652 0.815389 +vt 0.885897 0.878489 +vt 0.834109 0.881224 +vt 0.788550 0.816272 +vt 0.788349 0.805553 +vt 0.935471 0.867378 +vt 0.935886 0.878049 +vt 0.934232 0.817658 +vt 0.932675 0.837417 +vt 0.933171 0.847256 +vt 0.934307 0.857171 +vt 0.935356 0.807446 +vt 0.933133 0.827577 +vt 0.883566 0.857440 +vt 0.995395 0.848137 +vt 0.995120 0.858794 +vt 0.995353 0.826466 +vt 0.994699 0.805334 +vt 0.935730 0.796774 +vt 0.994822 0.869271 +vt 0.995520 0.837301 +vt 0.995038 0.815809 +vt 0.994494 0.879958 +vt 0.788149 0.880627 +vt 0.788294 0.869864 +vt 0.788460 0.858982 +vt 0.788621 0.848192 +vt 0.788686 0.826897 +vt 0.788149 0.794715 +vt 0.788710 0.837511 +vt 0.727273 0.214286 +vt 0.445455 0.214286 +vt 0.118182 0.312500 +vt 0.118182 0.267857 +vt 1.000000 0.000000 +vt 0.145455 0.964286 +vt 0.281818 0.964286 +vt 0.054545 0.964286 +vt 0.009091 1.000000 +vt 0.369943 0.988027 +vt 0.988370 0.988839 +vt 0.709091 0.508929 +vt 0.729163 0.357926 +vt 0.753748 0.382072 +vt 0.690909 0.571429 +vt 0.833952 0.793960 +vt 0.994330 0.794648 +vn 0.000000 0.000000 -1.000000 +vn 0.000000 0.000000 1.000000 +vn 0.000000 -0.965900 0.258800 +vn 0.000000 -1.000000 0.000000 +vn 0.000000 0.707100 -0.707100 +vn 1.000000 0.000000 0.000000 +vn -1.000000 -0.000000 0.000000 +vn 0.000000 1.000000 0.000000 +vn 0.000000 0.707100 0.707100 +vn 0.000000 0.894400 0.447200 +vn 0.707100 0.707100 0.000000 +vn 0.549000 0.549000 -0.630200 +vn 0.776400 0.000000 -0.630200 +vn 0.707100 -0.707100 0.000000 +vn 0.549000 -0.549000 -0.630200 +vn 0.000000 -0.776400 -0.630200 +vn -0.707100 -0.707100 0.000000 +vn -0.549000 -0.549000 -0.630200 +vn -0.776400 0.000000 -0.630200 +vn -0.707100 0.707100 0.000000 +vn 0.000000 0.776400 -0.630200 +vn -0.549000 0.549000 -0.630200 +vn 0.632400 0.632400 0.447200 +vn -0.776400 0.000000 0.630200 +vn -0.549000 0.549000 0.630200 +vn -0.632400 0.632400 0.447200 +vn -0.632400 -0.632400 0.447200 +vn -0.894400 0.000000 0.447200 +vn 0.632400 -0.632400 0.447200 +vn 0.000000 -0.894400 0.447200 +vn 0.894400 0.000000 0.447200 +vn 0.000000 0.776400 0.630200 +vn 0.000000 -0.776400 0.630200 +vn -0.549000 -0.549000 0.630200 +vn 0.549000 0.549000 0.630200 +vn 0.776400 0.000000 0.630200 +vn 0.549000 -0.549000 0.630200 +vn 0.731800 -0.605300 0.312900 +vn 0.980800 0.050500 0.188400 +vn 0.707100 0.183000 0.683000 +vn -0.594300 0.000000 0.804200 +vn -0.420300 -0.420300 0.804200 +vn -0.980800 -0.050500 -0.188400 +vn -0.707100 -0.183000 -0.683000 +vn -0.549000 -0.750800 -0.367100 +vn 0.000000 0.258800 0.965900 +vn 0.000000 -0.407800 0.913000 +vn 0.000000 -0.258800 -0.965900 +vn 0.000000 -0.809700 -0.586800 +vn -0.707100 0.183000 0.683000 +vn -0.549000 -0.466700 0.693400 +vn 0.707100 -0.183000 -0.683000 +vn 0.980800 -0.050500 -0.188400 +vn 0.731800 -0.680700 0.031700 +vn -0.980800 0.050500 0.188400 +vn 0.549000 -0.750800 -0.367100 +vn -0.731900 -0.680700 0.031700 +vn -0.731900 -0.605300 0.312900 +vn 0.000000 0.594300 0.804200 +vn -0.420300 0.420300 0.804200 +vn 0.594300 0.000000 0.804200 +vn 0.000000 -0.594300 0.804200 +vn 0.420300 -0.420300 0.804200 +vn 0.420300 0.420300 0.804200 +vn 0.980800 0.000000 0.195100 +vn 0.707100 0.000000 0.707100 +vn 0.549000 -0.630200 0.549000 +vn -0.980800 0.000000 -0.195100 +vn -0.707100 0.000000 -0.707100 +vn -0.549000 -0.630200 -0.549000 +vn 0.000000 -0.630200 0.776400 +vn 0.000000 -0.630200 -0.776400 +vn -0.707100 0.000000 0.707100 +vn -0.549000 -0.630200 0.549000 +vn 0.707100 0.000000 -0.707100 +vn 0.980800 0.000000 -0.195100 +vn 0.731800 -0.665700 -0.145600 +vn -0.980800 0.000000 0.195100 +vn -0.731900 -0.665700 0.145600 +vn 0.549000 -0.630200 -0.549000 +vn 0.000000 -1.000000 0.005700 +vn 0.497100 -0.854400 0.151300 +vn 0.000000 -0.707100 0.707100 +vn 0.975900 -0.154200 0.154200 +vn 0.703000 -0.502900 0.502900 +vn 0.000000 -0.535800 -0.844300 +vn 0.690100 -0.333700 -0.642200 +vn 0.690100 -0.642200 -0.333700 +vn 0.000000 -0.005700 1.000000 +vn 0.497100 -0.151300 0.854400 +vn 0.975900 0.154200 -0.154200 +vn -0.690100 0.333700 0.642200 +vn -0.497100 -0.151300 0.854400 +vn 0.690100 0.642200 0.333700 +vn 0.690100 0.333700 0.642200 +vn 0.000000 0.535800 0.844300 +vn 0.000000 0.844300 0.535800 +vn -0.975900 -0.154200 0.154200 +vn -0.690100 -0.642200 -0.333700 +vn -0.497100 -0.854400 0.151300 +vn -0.690100 0.642200 0.333700 +vn 0.000000 -0.844300 -0.535800 +vn -0.975900 0.154200 -0.154200 +vn -0.690100 -0.333700 -0.642200 +vn -0.894400 0.316200 -0.316200 +vn -0.703000 -0.502900 0.502900 +vn -0.776400 0.445700 -0.445700 +vn -0.549000 0.057500 -0.833800 +vn 0.632400 0.763400 0.131000 +vn -0.632400 -0.131000 -0.763400 +vn 0.000000 -0.316200 -0.948700 +vn 0.000000 0.948700 0.316200 +vn -0.632400 0.763400 0.131000 +vn 0.632400 -0.131000 -0.763400 +vn 0.894400 0.316200 -0.316200 +vn 0.000000 0.994600 0.103300 +vn -0.549000 0.833800 -0.057500 +vn 0.776400 0.445700 -0.445700 +vn 0.549000 0.833800 -0.057500 +vn 0.000000 -0.707100 -0.707100 +vn 0.000000 -0.103300 -0.994600 +vn 0.549000 0.057500 -0.833800 +vn -0.707100 -0.500000 -0.500000 +vn -0.707100 0.500000 0.500000 +vn 0.707100 0.500000 0.500000 +vn 0.707100 -0.500000 -0.500000 +vn 0.000000 0.827100 0.562100 +vn 0.683300 0.600200 0.415700 +vn 0.693300 0.682400 0.231700 +vn 0.705400 -0.496100 -0.506200 +vn 0.000000 -0.699000 -0.715100 +vn 0.000000 -0.811400 -0.584400 +vn -0.705400 -0.496100 -0.506200 +vn -0.725200 -0.561800 -0.398000 +vn -0.705600 0.503700 0.498400 +vn -0.683300 0.600200 0.415700 +vn -0.999000 0.032000 0.030400 +vn 0.000000 0.712400 0.701800 +vn 0.705600 0.503700 0.498400 +vn 1.000000 0.000400 -0.001700 +vn 0.725200 -0.561800 -0.398000 +vn -1.000000 0.000400 -0.001700 +vn 0.999000 0.032000 0.030400 +vn -0.718600 -0.657300 -0.226900 +vn -0.719300 -0.690200 -0.078800 +vn 0.000000 -0.993100 -0.116900 +vn 0.718600 -0.657300 -0.226900 +vn -0.999700 0.023400 0.010300 +vn 0.000000 0.947900 0.318400 +vn -0.693300 0.682400 0.231700 +vn 0.999700 0.023400 0.010300 +vn 0.000000 -0.944200 -0.329200 +vn 0.000000 0.994700 0.102800 +vn -0.006100 0.987200 -0.159300 +vn -0.691700 0.710900 -0.126900 +vn -0.691700 0.718000 0.077200 +vn -0.999600 0.027600 0.005700 +vn 0.691700 0.718000 0.077200 +vn 0.719300 -0.690200 -0.078800 +vn 0.999600 0.027600 0.005700 +vn -0.999300 0.027700 -0.025700 +vn -0.997900 0.001500 -0.064500 +vn -0.717500 -0.649700 0.251000 +vn 0.998800 0.042800 0.023500 +vn -0.006300 -0.990800 0.135100 +vn -0.723100 -0.686200 0.078500 +vn 0.682800 0.724400 -0.094700 +vn 0.719700 -0.684400 0.116600 +vn -0.687200 0.630100 -0.361500 +vn -0.684100 0.423900 -0.593500 +vn -0.995000 -0.050400 -0.085800 +vn -0.003300 0.887300 -0.461200 +vn 0.996600 0.073200 0.037400 +vn -0.002200 -0.909500 0.415700 +vn 0.678000 0.671800 -0.298300 +vn 0.723200 -0.602900 0.336800 +vn 0.726500 -0.411900 0.550000 +vn -0.003300 -0.704400 0.709800 +vn -0.033300 -0.321700 0.946200 +vn 0.661200 0.525400 -0.535500 +vn -0.717000 -0.537600 0.443600 +vn -0.006700 0.629700 -0.776800 +vn 0.991200 0.131100 0.017300 +vn -0.960600 -0.273300 -0.049700 +vn -0.890000 -0.428900 0.154400 +vn -0.634000 -0.151900 0.758300 +vn -0.681200 -0.430500 0.592100 +vn -0.697800 -0.058900 -0.713900 +vn 0.597300 0.310100 -0.739600 +vn -0.041800 0.139900 -0.989300 +vn 0.718700 0.085800 0.690000 +vn 0.929700 0.356300 -0.093200 +vn 0.882400 0.353000 -0.311000 +vn 0.874400 0.089800 -0.476700 +vn 0.610500 -0.532600 -0.586200 +vn 0.000900 -0.430000 -0.902800 +vn -0.651600 -0.535800 -0.536900 +vn 0.010300 0.310300 0.950600 +vn 0.629100 -0.101200 -0.770700 +vn 0.674700 0.632300 0.380800 +vn -0.573400 0.329700 0.749900 +vn 0.047400 0.812400 0.581200 +vn -0.672400 -0.724800 -0.150000 +vn -0.900900 -0.218100 0.375200 +vn -0.009400 -0.872900 -0.487700 +vn 0.705600 0.708100 -0.027000 +vn 0.930000 -0.066400 -0.361400 +vn -0.660900 0.652200 0.371200 +vn -0.936300 -0.021900 0.350400 +vn -0.945200 0.037700 0.324300 +vn 0.036300 0.994200 0.101200 +vn -0.676800 -0.715000 0.174900 +vn 0.639800 -0.721300 -0.265100 +vn -0.008100 -0.998200 -0.058600 +vn 0.717300 0.648600 -0.254300 +vn 0.080500 -0.992900 0.087300 +vn -0.645400 -0.700000 0.305700 +vn 0.945200 -0.037700 -0.324300 +vn 0.719700 -0.672500 -0.172200 +vn 0.080500 0.986500 -0.142600 +vn -0.645400 0.751400 0.137100 +vn 0.719700 0.615200 -0.321700 +vn 0.661500 0.661500 -0.353100 +vn 0.323800 0.323800 -0.888900 +vn 0.000000 0.458000 -0.888900 +vn -0.661500 -0.661500 0.353100 +vn -0.323800 -0.323800 0.888900 +vn -0.458000 0.000000 0.888900 +vn 0.000000 0.935500 0.353100 +vn 0.661500 0.661500 0.353100 +vn 0.935500 0.000000 -0.353100 +vn 0.458000 0.000000 -0.888900 +vn 0.323800 0.323800 0.888900 +vn 0.458000 0.000000 0.888900 +vn 0.935500 0.000000 0.353100 +vn 0.000000 -0.935500 -0.353100 +vn 0.000000 -0.458000 -0.888900 +vn 0.323800 -0.323800 -0.888900 +vn 0.000000 -0.935500 0.353100 +vn 0.000000 -0.458000 0.888900 +vn 0.661500 -0.661500 0.353100 +vn 0.661500 -0.661500 -0.353100 +vn -0.935500 0.000000 -0.353100 +vn -0.661500 0.661500 -0.353100 +vn -0.323800 0.323800 -0.888900 +vn -0.661500 0.661500 0.353100 +vn -0.323800 0.323800 0.888900 +vn 0.000000 0.458000 0.888900 +vn -0.323800 -0.323800 -0.888900 +vn 0.323800 -0.323800 0.888900 +vn -0.661500 -0.661500 -0.353100 +vn -0.935500 0.000000 0.353100 +vn 0.000000 0.935500 -0.353100 +vn -0.458000 0.000000 -0.888900 +vn 0.999500 0.028900 0.008500 +vn 0.691200 0.669900 0.271000 +vn 0.716000 0.635600 0.288600 +vn 0.000000 -0.931700 -0.363100 +vn 0.720600 -0.644800 -0.254800 +vn 0.697400 -0.653200 -0.294700 +vn -0.720600 -0.644800 -0.254800 +vn -0.697400 -0.653200 -0.294700 +vn -0.999800 -0.016500 -0.008800 +vn -0.691200 0.669900 0.270900 +vn -0.716000 0.635600 0.288600 +vn 0.000000 0.909800 0.415000 +vn 0.000000 0.925400 0.378900 +vn 0.999800 -0.016500 -0.008800 +vn 0.000000 -0.912200 -0.409800 +vn 0.707100 -0.664600 -0.241500 +vn -0.720700 -0.688000 -0.084700 +vn 0.000000 -0.993100 -0.117200 +vn 0.999500 0.031400 0.001000 +vn 0.000000 0.990300 0.138600 +vn -0.689800 0.717500 0.096500 +vn -0.999500 0.031400 0.001000 +vn 0.720700 -0.688000 -0.084700 +vn 0.689800 0.717500 0.096500 +vn -0.999500 0.028900 0.008500 +vn -0.706000 0.708200 0.002700 +vn -1.000000 -0.000700 0.001000 +vn 0.706000 0.708200 0.002700 +vn 0.705900 -0.708300 0.005000 +vn -0.705900 -0.708300 0.005000 +vn 0.000000 1.000000 0.005300 +vn 1.000000 -0.000700 0.001000 +vn 0.000000 -0.999900 0.008000 +vn 0.000000 -0.939900 -0.341500 +vn -0.707100 -0.664600 -0.241500 +vn -0.707100 0.664600 0.241500 +vn 0.707100 0.664600 0.241500 +vn 0.000000 0.939900 0.341500 +vn 0.549000 -0.466700 0.693400 +vn 0.731900 -0.665700 0.145600 +vn -0.731900 -0.665700 -0.145600 +s off +f 7/1/1 11/2/1 15/3/1 +f 21/4/1 24/5/1 17/6/1 +f 57/7/2 76/8/2 75/9/2 +f 58/10/2 74/11/2 72/12/2 +f 45/13/2 68/14/2 69/15/2 +f 45/16/2 73/17/2 76/18/2 +f 63/19/3 42/20/3 61/21/3 +f 44/22/2 71/23/2 70/24/2 +f 46/25/2 72/26/2 71/27/2 +f 67/28/2 70/29/2 69/30/2 +f 43/31/2 75/32/2 74/33/2 +f 350/34/2 78/35/2 79/36/2 +f 101/19/4 86/20/4 99/21/4 +f 144/37/5 141/38/5 140/39/5 +f 323/40/6 325/41/6 317/42/6 +f 320/43/1 324/44/1 323/40/1 +f 319/41/7 320/44/7 318/40/7 +f 319/45/8 325/41/8 324/44/8 +f 315/40/2 322/46/2 321/47/2 +f 316/48/9 317/49/9 325/41/9 +f 318/44/4 323/50/4 322/51/4 +f 314/51/8 321/52/8 317/49/8 +f 335/40/6 337/41/6 329/42/6 +f 332/43/1 336/44/1 335/40/1 +f 331/41/7 332/44/7 330/40/7 +f 331/45/8 337/41/8 336/44/8 +f 327/40/2 334/46/2 333/47/2 +f 328/48/9 329/49/9 337/41/9 +f 330/44/4 335/50/4 334/53/4 +f 326/53/8 333/54/8 329/49/8 +f 339/55/8 341/56/8 340/57/8 +f 341/56/10 343/58/10 342/59/10 +f 343/58/8 345/60/8 344/61/8 +f 345/60/9 347/62/9 346/63/9 +f 342/64/6 349/60/6 348/56/6 +f 350/65/2 80/66/2 82/67/2 +f 77/68/2 78/69/2 350/70/2 +f 84/71/2 81/72/2 350/73/2 +f 83/74/2 350/75/2 82/76/2 +f 81/77/2 77/78/2 350/79/2 +f 80/80/2 350/81/2 79/82/2 +f 83/83/2 84/84/2 350/85/2 +f 15/3/1 1/86/1 3/87/1 +f 3/87/1 5/88/1 7/1/1 +f 7/1/1 9/89/1 11/2/1 +f 11/2/1 13/90/1 15/3/1 +f 15/3/1 3/87/1 7/1/1 +f 17/6/1 18/91/1 19/92/1 +f 19/92/1 20/93/1 21/4/1 +f 21/4/1 22/94/1 23/95/1 +f 23/95/1 24/5/1 21/4/1 +f 17/6/1 19/92/1 21/4/1 +f 43/96/2 57/7/2 75/9/2 +f 46/97/2 58/10/2 72/12/2 +f 73/98/2 45/13/2 69/15/2 +f 57/99/2 45/16/2 76/18/2 +f 61/21/3 47/100/3 55/101/3 +f 49/102/3 51/103/3 53/104/3 +f 53/104/3 55/101/3 47/100/3 +f 63/19/3 65/105/3 42/20/3 +f 42/20/3 59/106/3 61/21/3 +f 47/100/3 49/102/3 53/104/3 +f 55/101/3 63/19/3 61/21/3 +f 67/107/2 44/22/2 70/24/2 +f 44/108/2 46/25/2 71/27/2 +f 68/109/2 67/28/2 69/30/2 +f 58/110/2 43/31/2 74/33/2 +f 99/21/4 87/100/4 95/101/4 +f 89/102/4 91/103/4 93/104/4 +f 93/104/4 95/101/4 87/100/4 +f 101/19/4 103/105/4 86/20/4 +f 86/20/4 97/106/4 99/21/4 +f 87/100/4 89/102/4 93/104/4 +f 95/101/4 101/19/4 99/21/4 +f 140/39/5 138/111/5 144/37/5 +f 139/112/5 145/113/5 144/37/5 +f 144/37/5 143/114/5 142/115/5 +f 142/115/5 141/38/5 144/37/5 +f 138/111/5 139/112/5 144/37/5 +f 321/116/6 322/117/6 317/42/6 +f 323/40/6 324/44/6 325/41/6 +f 317/42/6 322/117/6 323/40/6 +f 318/46/1 320/43/1 323/40/1 +f 318/40/7 315/117/7 316/42/7 +f 316/42/7 319/41/7 318/40/7 +f 315/117/7 314/116/7 316/42/7 +f 320/50/8 319/45/8 324/44/8 +f 314/118/2 315/40/2 321/47/2 +f 319/45/9 316/48/9 325/41/9 +f 315/52/4 318/44/4 322/51/4 +f 316/48/8 314/51/8 317/49/8 +f 333/119/6 334/120/6 329/42/6 +f 335/40/6 336/44/6 337/41/6 +f 329/42/6 334/120/6 335/40/6 +f 330/46/1 332/43/1 335/40/1 +f 330/40/7 327/120/7 328/42/7 +f 328/42/7 331/41/7 330/40/7 +f 327/120/7 326/119/7 328/42/7 +f 332/50/8 331/45/8 336/44/8 +f 326/118/2 327/40/2 333/47/2 +f 331/45/9 328/48/9 337/41/9 +f 327/54/4 330/44/4 334/53/4 +f 328/48/8 326/53/8 329/49/8 +f 338/121/8 339/55/8 340/57/8 +f 340/57/10 341/56/10 342/59/10 +f 342/59/8 343/58/8 344/61/8 +f 344/61/9 345/60/9 346/63/9 +f 348/56/6 340/122/6 342/64/6 +f 342/64/6 344/123/6 349/60/6 +s 1 +f 2/124/8 4/125/11 3/126/12 +f 4/125/11 6/127/6 5/128/13 +f 6/127/6 8/129/14 7/130/15 +f 8/129/14 10/131/4 9/132/16 +f 10/133/4 12/134/17 11/135/18 +f 12/134/17 14/136/7 13/137/19 +f 16/138/20 2/124/8 1/139/21 +f 14/136/7 16/138/20 15/140/22 +f 352/141/10 360/142/10 359/143/23 +f 23/144/19 357/145/7 358/146/20 +f 21/147/16 355/148/4 356/149/17 +f 19/150/13 353/151/6 354/152/14 +f 17/153/21 26/141/8 25/154/11 +f 24/155/22 358/146/20 26/141/8 +f 22/156/18 356/149/17 357/145/7 +f 20/157/15 354/152/14 355/158/4 +f 18/159/12 25/154/11 353/151/6 +f 39/160/7 67/28/24 68/109/25 +f 32/146/26 40/161/26 360/162/10 +f 30/149/27 364/163/27 365/164/28 +f 28/152/29 362/165/29 363/166/30 +f 27/151/31 351/154/23 359/167/23 +f 31/145/28 365/160/28 40/168/26 +f 29/148/30 363/169/30 364/170/27 +f 28/152/29 27/151/31 361/171/31 +f 366/161/20 68/14/25 45/13/32 +f 37/169/4 46/25/33 44/108/34 +f 34/142/8 45/16/32 57/99/35 +f 35/171/6 43/31/36 58/110/37 +f 47/172/38 48/173/39 50/174/40 +f 75/9/41 76/8/42 84/84/34 +f 64/175/43 66/176/44 65/177/45 +f 50/174/40 52/178/46 51/179/47 +f 33/167/11 57/7/35 43/96/36 +f 66/176/44 41/180/48 42/55/49 +f 52/178/46 54/181/50 53/182/51 +f 36/165/14 58/10/37 46/97/33 +f 60/183/52 62/184/53 61/185/54 +f 53/182/51 54/181/50 56/186/55 +f 41/187/48 60/183/52 59/188/56 +f 61/185/54 62/184/53 48/173/39 +f 39/164/7 38/163/17 44/22/34 +f 63/189/57 55/190/58 56/186/55 +f 72/12/59 74/11/60 82/67/25 +f 72/26/59 80/80/32 79/82/35 +f 70/29/61 78/69/36 77/68/37 +f 76/18/42 73/17/62 81/72/33 +f 75/32/41 83/74/24 82/76/25 +f 69/15/63 77/78/37 81/77/33 +f 71/23/64 79/36/35 78/35/36 +f 88/173/65 90/174/66 89/191/67 +f 102/175/68 104/176/69 103/177/70 +f 90/174/66 92/178/2 91/179/71 +f 104/176/69 85/180/1 86/55/72 +f 92/178/2 94/181/73 93/182/74 +f 98/183/75 100/184/76 99/185/77 +f 94/181/73 96/186/78 95/190/79 +f 85/187/1 98/183/75 97/188/80 +f 99/185/77 100/184/76 88/173/65 +f 95/190/79 96/186/78 102/175/68 +f 106/192/81 105/193/82 129/194/83 +f 111/195/84 123/196/85 105/197/82 +f 108/198/86 110/199/87 109/200/88 +f 125/201/89 129/202/83 124/203/90 +f 109/200/88 105/193/82 106/192/81 +f 110/199/87 112/204/91 111/195/84 +f 105/197/82 123/196/85 129/205/83 +f 117/206/92 126/207/93 125/208/89 +f 112/209/91 114/210/94 113/211/95 +f 129/212/83 123/213/85 124/214/90 +f 113/211/95 115/215/96 125/201/89 +f 114/210/94 116/216/97 115/215/96 +f 129/217/83 125/208/89 126/207/93 +f 119/218/98 121/219/99 128/220/100 +f 115/215/96 116/216/97 118/221/101 +f 121/219/99 107/222/102 106/223/81 +f 128/224/100 106/223/81 129/225/83 +f 118/221/101 120/226/103 119/218/98 +f 122/227/104 120/226/103 373/228/105 +f 121/219/99 122/227/104 108/198/86 +f 119/218/98 120/226/103 122/227/104 +f 127/229/106 129/230/83 126/231/93 +f 117/206/92 119/218/98 127/229/106 +f 111/232/84 113/211/95 124/214/90 +f 127/233/106 128/220/100 129/148/83 +f 136/228/7 144/234/107 145/235/108 +f 116/216/97 114/210/94 370/236/109 +f 122/227/104 374/237/110 368/238/111 +f 116/216/97 371/239/112 372/240/113 +f 110/199/87 367/241/114 369/242/115 +f 118/221/101 372/243/113 373/244/105 +f 110/199/87 108/198/86 368/245/111 +f 112/209/91 369/246/115 370/247/109 +f 134/239/9 142/248/116 143/249/117 +f 132/246/6 140/250/118 141/251/119 +f 131/245/120 139/252/121 138/253/122 +f 137/237/123 145/254/108 139/255/121 +f 135/243/124 143/256/117 144/257/107 +f 133/236/125 141/258/119 142/259/116 +f 132/242/6 130/241/126 138/260/122 +f 158/261/127 157/262/128 165/263/129 +f 146/264/130 147/265/131 155/266/132 +f 153/267/133 161/268/134 155/269/132 +f 151/270/135 159/271/136 160/272/137 +f 150/273/138 149/274/139 157/262/128 +f 148/275/140 146/264/130 154/276/141 +f 152/277/142 160/272/137 161/268/134 +f 150/273/138 158/261/127 159/271/136 +f 149/274/139 148/275/140 156/278/143 +f 169/279/144 177/280/145 171/281/146 +f 156/278/143 154/276/141 162/282/147 +f 160/272/137 168/283/148 169/279/144 +f 158/261/127 166/284/149 167/285/150 +f 157/262/128 156/278/143 164/286/151 +f 154/276/141 155/266/132 163/287/152 +f 161/268/134 169/279/144 163/288/152 +f 159/271/136 167/285/150 168/283/148 +f 174/289/153 182/290/154 183/291/155 +f 167/285/150 175/292/156 176/293/157 +f 166/284/149 165/263/129 173/294/158 +f 164/286/151 162/282/147 170/295/159 +f 168/283/148 176/293/157 177/280/145 +f 166/284/149 174/289/153 175/292/156 +f 165/263/129 164/286/151 172/296/160 +f 162/282/147 163/287/152 171/297/146 +f 184/298/161 192/299/162 193/300/163 +f 173/294/158 172/296/160 180/301/164 +f 170/295/159 171/297/146 179/302/165 +f 177/280/145 185/303/166 179/304/165 +f 175/292/156 183/291/155 184/298/161 +f 174/289/153 173/294/158 181/305/167 +f 172/296/160 170/295/159 178/306/168 +f 176/293/157 184/298/161 185/303/166 +f 191/307/169 199/308/170 200/309/171 +f 182/290/154 190/310/172 191/307/169 +f 181/305/167 180/301/164 188/311/173 +f 178/306/168 179/302/165 187/312/174 +f 185/303/166 193/300/163 187/313/174 +f 183/291/155 191/307/169 192/299/162 +f 182/290/154 181/305/167 189/314/175 +f 180/301/164 178/306/168 186/315/176 +f 194/316/177 195/317/178 203/318/179 +f 190/310/172 189/314/175 197/319/180 +f 188/311/173 186/315/176 194/316/177 +f 192/299/162 200/309/171 201/320/181 +f 190/310/172 198/321/182 199/308/170 +f 189/314/175 188/311/173 196/322/183 +f 186/315/176 187/312/174 195/317/178 +f 193/300/163 201/320/181 195/323/178 +f 208/324/184 216/325/185 217/326/186 +f 195/323/178 201/320/181 209/327/187 +f 199/308/170 207/328/188 208/324/184 +f 197/319/180 205/329/189 206/330/190 +f 196/322/183 194/316/177 202/331/191 +f 200/309/171 208/324/184 209/327/187 +f 198/321/182 206/330/190 207/328/188 +f 197/319/180 196/322/183 204/332/192 +f 212/333/193 220/334/194 221/335/195 +f 206/330/190 214/336/196 215/337/197 +f 205/329/189 204/332/192 212/333/193 +f 202/331/191 203/318/179 211/338/198 +f 203/339/179 209/327/187 217/326/186 +f 207/328/188 215/337/197 216/325/185 +f 205/329/189 213/340/199 214/336/196 +f 204/332/192 202/331/191 210/341/200 +f 225/342/201 219/343/202 211/344/198 +f 215/337/197 223/345/203 224/346/204 +f 213/340/199 221/335/195 222/347/205 +f 218/348/206 220/334/194 212/333/193 +f 224/346/204 225/342/201 217/326/186 +f 214/336/196 222/347/205 223/345/203 +f 221/335/195 220/334/194 228/349/207 +f 233/350/208 232/351/209 240/352/210 +f 218/348/206 219/353/202 227/354/211 +f 219/343/202 225/342/201 233/350/208 +f 223/345/203 231/355/212 232/351/209 +f 221/335/195 229/356/213 230/357/214 +f 220/334/194 218/348/206 226/358/215 +f 224/346/204 232/351/209 233/350/208 +f 222/347/205 230/357/214 231/355/212 +f 219/353/202 218/348/206 210/341/200 +f 230/357/214 238/359/216 239/360/217 +f 228/349/207 236/361/218 237/362/219 +f 226/358/215 227/354/211 235/363/220 +f 227/364/211 233/350/208 241/365/221 +f 231/355/212 239/360/217 240/352/210 +f 229/356/213 237/362/219 238/359/216 +f 228/349/207 226/358/215 234/366/222 +f 246/367/223 267/368/224 266/369/225 +f 255/370/226 263/371/227 264/372/228 +f 245/373/229 247/374/230 246/367/223 +f 248/375/231 268/376/232 267/377/224 +f 247/374/230 243/378/233 260/379/234 +f 247/374/230 249/380/235 248/375/231 +f 252/381/236 270/382/237 269/383/238 +f 253/384/239 262/385/240 263/386/227 +f 249/380/235 251/387/241 250/388/242 +f 256/389/243 258/390/244 273/391/245 +f 259/392/246 265/393/247 242/394/248 +f 251/387/241 253/395/239 252/381/236 +f 269/396/238 271/397/249 267/398/224 +f 251/387/241 261/399/250 262/400/240 +f 253/384/239 255/370/226 254/401/251 +f 249/380/235 260/402/234 261/403/250 +f 264/404/228 262/405/240 242/406/248 +f 255/370/226 257/407/252 256/389/243 +f 257/407/252 264/408/228 265/409/247 +f 259/392/246 245/373/229 244/410/253 +f 257/407/252 259/392/246 258/390/244 +f 254/401/251 271/411/249 270/412/237 +f 245/373/229 242/413/248 243/414/233 +f 250/388/242 269/415/238 268/416/232 +f 256/389/243 272/417/254 271/418/249 +f 244/410/253 266/419/225 273/420/245 +f 283/421/255 282/422/256 281/423/257 +f 285/424/258 284/425/259 278/426/260 +f 286/427/261 276/428/262 275/429/263 +f 288/430/264 274/431/265 280/432/266 +f 282/422/256 289/433/267 280/432/266 +f 284/425/259 283/421/255 279/434/268 +f 285/435/258 277/436/269 276/428/262 +f 279/434/268 312/437/6 311/438/270 +f 292/439/271 293/440/272 285/435/258 +f 295/441/273 283/421/255 284/425/259 +f 296/442/274 289/433/267 282/422/256 +f 296/442/274 290/443/275 288/430/264 +f 291/444/276 292/439/271 286/427/261 +f 294/445/277 284/425/259 285/424/258 +f 297/446/278 282/422/256 283/421/255 +f 287/447/279 275/429/263 274/431/265 +f 298/448/280 299/449/281 291/444/276 +f 304/450/282 297/446/278 295/441/273 +f 302/451/283 294/445/277 293/452/272 +f 299/449/281 300/453/284 292/439/271 +f 305/454/285 298/448/280 290/443/275 +f 305/454/285 296/442/274 297/446/278 +f 303/455/286 295/441/273 294/445/277 +f 300/453/284 301/456/287 293/440/272 +f 290/443/275 291/444/276 287/447/279 +f 277/436/269 310/457/288 309/458/289 +f 275/429/263 308/459/7 307/460/290 +f 281/423/257 313/461/291 312/437/6 +f 278/426/260 311/438/270 310/462/288 +f 276/428/262 309/458/289 308/459/7 +f 280/432/266 274/431/265 307/460/290 +f 280/432/266 306/463/292 313/461/291 +f 1/139/21 2/124/8 3/126/12 +f 3/126/12 4/125/11 5/128/13 +f 5/128/13 6/127/6 7/130/15 +f 7/130/15 8/129/14 9/132/16 +f 9/464/16 10/133/4 11/135/18 +f 11/135/18 12/134/17 13/137/19 +f 15/140/22 16/138/20 1/139/21 +f 13/137/19 14/136/7 15/140/22 +f 351/154/23 352/141/10 359/143/23 +f 24/155/22 23/144/19 358/146/20 +f 22/156/18 21/147/16 356/149/17 +f 20/157/15 19/150/13 354/152/14 +f 18/159/12 17/153/21 25/154/11 +f 17/153/21 24/155/22 26/141/8 +f 23/144/19 22/156/18 357/145/7 +f 21/465/16 20/157/15 355/158/4 +f 19/150/13 18/159/12 353/151/6 +f 366/168/20 39/160/7 68/109/25 +f 352/141/10 32/146/26 360/162/10 +f 31/145/28 30/149/27 365/164/28 +f 29/158/30 28/152/29 363/166/30 +f 361/466/31 27/151/31 359/167/23 +f 32/146/26 31/145/28 40/168/26 +f 30/149/27 29/148/30 364/170/27 +f 362/467/29 28/152/29 361/171/31 +f 34/162/8 366/161/20 45/13/32 +f 38/170/17 37/169/4 44/108/34 +f 33/143/11 34/142/8 57/99/35 +f 36/467/14 35/171/6 58/110/37 +f 49/191/293 47/172/38 50/174/40 +f 83/83/24 75/9/41 84/84/34 +f 63/189/57 64/175/43 65/177/45 +f 49/191/293 50/174/40 51/179/47 +f 35/466/6 33/167/11 43/96/36 +f 65/177/45 66/176/44 42/55/49 +f 51/179/47 52/178/46 53/182/51 +f 37/166/4 36/165/14 46/97/33 +f 59/188/56 60/183/52 61/185/54 +f 55/190/58 53/182/51 56/186/55 +f 42/468/49 41/187/48 59/188/56 +f 47/172/38 61/185/54 48/173/39 +f 67/107/24 39/164/7 44/22/34 +f 64/175/43 63/189/57 56/186/55 +f 80/66/32 72/12/59 82/67/25 +f 71/27/64 72/26/59 79/82/35 +f 69/30/63 70/29/61 77/68/37 +f 84/71/34 76/18/42 81/72/33 +f 74/33/60 75/32/41 82/76/25 +f 73/98/62 69/15/63 81/77/33 +f 70/24/61 71/23/64 78/35/36 +f 87/172/294 88/173/65 89/191/67 +f 101/189/295 102/175/68 103/177/70 +f 89/191/67 90/174/66 91/179/71 +f 103/177/70 104/176/69 86/55/72 +f 91/179/71 92/178/2 93/182/74 +f 97/188/80 98/183/75 99/185/77 +f 93/182/74 94/181/73 95/190/79 +f 86/468/72 85/187/1 97/188/80 +f 87/172/294 99/185/77 88/173/65 +f 101/189/295 95/190/79 102/175/68 +f 109/200/88 111/195/84 105/197/82 +f 107/222/102 108/198/86 109/200/88 +f 107/222/102 109/200/88 106/192/81 +f 109/200/88 110/199/87 111/195/84 +f 115/215/96 117/206/92 125/208/89 +f 111/232/84 112/209/91 113/211/95 +f 124/203/90 113/211/95 125/201/89 +f 113/211/95 114/210/94 115/215/96 +f 127/233/106 119/218/98 128/220/100 +f 117/206/92 115/215/96 118/221/101 +f 128/224/100 121/219/99 106/223/81 +f 117/206/92 118/221/101 119/218/98 +f 374/469/110 122/227/104 373/228/105 +f 107/222/102 121/219/99 108/198/86 +f 121/219/99 119/218/98 122/227/104 +f 126/231/93 117/206/92 127/229/106 +f 123/213/85 111/232/84 124/214/90 +f 137/469/123 136/228/7 145/235/108 +f 371/470/112 116/216/97 370/236/109 +f 108/198/86 122/227/104 368/238/111 +f 118/221/101 116/216/97 372/240/113 +f 112/204/91 110/199/87 369/242/115 +f 120/226/103 118/221/101 373/244/105 +f 367/471/114 110/199/87 368/245/111 +f 114/210/94 112/209/91 370/247/109 +f 135/240/124 134/239/9 143/249/117 +f 133/247/125 132/246/6 141/251/119 +f 130/471/126 131/245/120 138/253/122 +f 131/238/120 137/237/123 139/255/121 +f 136/244/7 135/243/124 144/257/107 +f 134/470/9 133/236/125 142/259/116 +f 140/472/118 132/242/6 138/260/122 +f 166/284/149 158/261/127 165/263/129 +f 154/276/141 146/264/130 155/266/132 +f 147/473/131 153/267/133 155/269/132 +f 152/277/142 151/270/135 160/272/137 +f 158/261/127 150/273/138 157/262/128 +f 156/278/143 148/275/140 154/276/141 +f 153/267/133 152/277/142 161/268/134 +f 151/270/135 150/273/138 159/271/136 +f 157/262/128 149/274/139 156/278/143 +f 163/288/152 169/279/144 171/281/146 +f 164/286/151 156/278/143 162/282/147 +f 161/268/134 160/272/137 169/279/144 +f 159/271/136 158/261/127 167/285/150 +f 165/263/129 157/262/128 164/286/151 +f 162/282/147 154/276/141 163/287/152 +f 155/269/132 161/268/134 163/288/152 +f 160/272/137 159/271/136 168/283/148 +f 175/292/156 174/289/153 183/291/155 +f 168/283/148 167/285/150 176/293/157 +f 174/289/153 166/284/149 173/294/158 +f 172/296/160 164/286/151 170/295/159 +f 169/279/144 168/283/148 177/280/145 +f 167/285/150 166/284/149 175/292/156 +f 173/294/158 165/263/129 172/296/160 +f 170/295/159 162/282/147 171/297/146 +f 185/303/166 184/298/161 193/300/163 +f 181/305/167 173/294/158 180/301/164 +f 178/306/168 170/295/159 179/302/165 +f 171/281/146 177/280/145 179/304/165 +f 176/293/157 175/292/156 184/298/161 +f 182/290/154 174/289/153 181/305/167 +f 180/301/164 172/296/160 178/306/168 +f 177/280/145 176/293/157 185/303/166 +f 192/299/162 191/307/169 200/309/171 +f 183/291/155 182/290/154 191/307/169 +f 189/314/175 181/305/167 188/311/173 +f 186/315/176 178/306/168 187/312/174 +f 179/304/165 185/303/166 187/313/174 +f 184/298/161 183/291/155 192/299/162 +f 190/310/172 182/290/154 189/314/175 +f 188/311/173 180/301/164 186/315/176 +f 202/331/191 194/316/177 203/318/179 +f 198/321/182 190/310/172 197/319/180 +f 196/322/183 188/311/173 194/316/177 +f 193/300/163 192/299/162 201/320/181 +f 191/307/169 190/310/172 199/308/170 +f 197/319/180 189/314/175 196/322/183 +f 194/316/177 186/315/176 195/317/178 +f 187/313/174 193/300/163 195/323/178 +f 209/327/187 208/324/184 217/326/186 +f 203/339/179 195/323/178 209/327/187 +f 200/309/171 199/308/170 208/324/184 +f 198/321/182 197/319/180 206/330/190 +f 204/332/192 196/322/183 202/331/191 +f 201/320/181 200/309/171 209/327/187 +f 199/308/170 198/321/182 207/328/188 +f 205/329/189 197/319/180 204/332/192 +f 213/340/199 212/333/193 221/335/195 +f 207/328/188 206/330/190 215/337/197 +f 213/340/199 205/329/189 212/333/193 +f 210/341/200 202/331/191 211/338/198 +f 211/344/198 203/339/179 217/326/186 +f 208/324/184 207/328/188 216/325/185 +f 206/330/190 205/329/189 214/336/196 +f 212/333/193 204/332/192 210/341/200 +f 217/326/186 225/342/201 211/344/198 +f 216/325/185 215/337/197 224/346/204 +f 214/336/196 213/340/199 222/347/205 +f 210/341/200 218/348/206 212/333/193 +f 216/325/185 224/346/204 217/326/186 +f 215/337/197 214/336/196 223/345/203 +f 229/356/213 221/335/195 228/349/207 +f 241/365/221 233/350/208 240/352/210 +f 226/358/215 218/348/206 227/354/211 +f 227/364/211 219/343/202 233/350/208 +f 224/346/204 223/345/203 232/351/209 +f 222/347/205 221/335/195 230/357/214 +f 228/349/207 220/334/194 226/358/215 +f 225/342/201 224/346/204 233/350/208 +f 223/345/203 222/347/205 231/355/212 +f 211/338/198 219/353/202 210/341/200 +f 231/355/212 230/357/214 239/360/217 +f 229/356/213 228/349/207 237/362/219 +f 234/366/222 226/358/215 235/363/220 +f 235/474/220 227/364/211 241/365/221 +f 232/351/209 231/355/212 240/352/210 +f 230/357/214 229/356/213 238/359/216 +f 236/361/218 228/349/207 234/366/222 +f 244/410/253 246/367/223 266/369/225 +f 257/407/252 255/370/226 264/372/228 +f 244/410/253 245/373/229 246/367/223 +f 246/367/223 248/375/231 267/377/224 +f 249/380/235 247/374/230 260/379/234 +f 246/367/223 247/374/230 248/375/231 +f 250/388/242 252/381/236 269/383/238 +f 255/370/226 253/384/239 263/386/227 +f 248/375/231 249/380/235 250/388/242 +f 272/475/254 256/389/243 273/391/245 +f 245/373/229 259/392/246 242/394/248 +f 250/388/242 251/387/241 252/381/236 +f 273/476/245 266/405/225 267/398/224 +f 267/398/224 268/477/232 269/396/238 +f 269/396/238 270/406/237 271/397/249 +f 271/397/249 272/404/254 273/476/245 +f 273/476/245 267/398/224 271/397/249 +f 253/395/239 251/387/241 262/400/240 +f 252/478/236 253/384/239 254/401/251 +f 251/387/241 249/380/235 261/403/250 +f 260/477/234 243/396/233 242/406/248 +f 242/406/248 265/397/247 264/404/228 +f 264/404/228 263/476/227 262/405/240 +f 262/405/240 261/398/250 260/477/234 +f 260/477/234 242/406/248 262/405/240 +f 254/401/251 255/370/226 256/389/243 +f 259/392/246 257/407/252 265/409/247 +f 258/390/244 259/392/246 244/410/253 +f 256/389/243 257/407/252 258/390/244 +f 252/478/236 254/401/251 270/412/237 +f 247/374/230 245/373/229 243/414/233 +f 248/375/231 250/388/242 268/416/232 +f 254/401/251 256/389/243 271/418/249 +f 258/390/244 244/410/253 273/420/245 +f 279/434/268 283/421/255 281/423/257 +f 277/479/269 285/424/258 278/426/260 +f 287/447/279 286/427/261 275/429/263 +f 289/433/267 288/430/264 280/432/266 +f 281/423/257 282/422/256 280/432/266 +f 278/426/260 284/425/259 279/434/268 +f 286/427/261 285/435/258 276/428/262 +f 278/426/260 279/434/268 311/438/270 +f 286/427/261 292/439/271 285/435/258 +f 294/445/277 295/441/273 284/425/259 +f 297/446/278 296/442/274 282/422/256 +f 289/433/267 296/442/274 288/430/264 +f 287/447/279 291/444/276 286/427/261 +f 293/452/272 294/445/277 285/424/258 +f 295/441/273 297/446/278 283/421/255 +f 288/430/264 287/447/279 274/431/265 +f 290/443/275 298/448/280 291/444/276 +f 303/455/286 304/450/282 295/441/273 +f 301/480/287 302/451/283 293/452/272 +f 291/444/276 299/449/281 292/439/271 +f 296/442/274 305/454/285 290/443/275 +f 304/450/282 305/454/285 297/446/278 +f 302/451/283 303/455/286 294/445/277 +f 292/439/271 300/453/284 293/440/272 +f 288/430/264 290/443/275 287/447/279 +f 276/428/262 277/436/269 309/458/289 +f 274/431/265 275/429/263 307/460/290 +f 279/434/268 281/423/257 312/437/6 +f 277/479/269 278/426/260 310/462/288 +f 275/429/263 276/428/262 308/459/7 +f 306/463/292 280/432/266 307/460/290 +f 281/423/257 280/432/266 313/461/291 diff --git a/assets/hbm/sounds.json b/assets/hbm/sounds.json index f8b799efa..8a3d931fe 100644 --- a/assets/hbm/sounds.json +++ b/assets/hbm/sounds.json @@ -121,6 +121,7 @@ "weapon.deagleShoot": {"category": "player", "sounds": [{"name": "weapon/deagleShoot", "stream": false}]}, "weapon.tesla": {"category": "block", "sounds": ["weapon/tesla1", "weapon/tesla2", "weapon/tesla3", "weapon/tesla4"]}, "weapon.teslaShoot": {"category": "player", "sounds": [{"name": "weapon/teslaShoot", "stream": false}]}, + "weapon.flamerReload": {"category": "player", "sounds": [{"name": "weapon/flamerReload", "stream": false}]}, "weapon.reloadTurret": {"category": "player", "sounds": [{"name": "weapon/reloadTurret", "stream": false}]}, "weapon.switchmode1": {"category": "player", "sounds": [{"name": "weapon/switchmode1", "stream": false}]}, diff --git a/assets/hbm/sounds/weapon/flamerReload.ogg b/assets/hbm/sounds/weapon/flamerReload.ogg new file mode 100644 index 000000000..c4199a775 Binary files /dev/null and b/assets/hbm/sounds/weapon/flamerReload.ogg differ diff --git a/assets/hbm/textures/blocks/block_mox_fuel.png b/assets/hbm/textures/blocks/block_mox_fuel.png new file mode 100644 index 000000000..c78c0242e Binary files /dev/null and b/assets/hbm/textures/blocks/block_mox_fuel.png differ diff --git a/assets/hbm/textures/blocks/block_red_phosphorus.png b/assets/hbm/textures/blocks/block_red_phosphorus.png new file mode 100644 index 000000000..831040c12 Binary files /dev/null and b/assets/hbm/textures/blocks/block_red_phosphorus.png differ diff --git a/assets/hbm/textures/blocks/block_sulfur.png b/assets/hbm/textures/blocks/block_sulfur.png index a8e669d97..fc498b67a 100644 Binary files a/assets/hbm/textures/blocks/block_sulfur.png and b/assets/hbm/textures/blocks/block_sulfur.png differ diff --git a/assets/hbm/textures/blocks/block_white_phosphorus.png b/assets/hbm/textures/blocks/block_white_phosphorus.png new file mode 100644 index 000000000..35fb54248 Binary files /dev/null and b/assets/hbm/textures/blocks/block_white_phosphorus.png differ diff --git a/assets/hbm/textures/blocks/mercury.png b/assets/hbm/textures/blocks/mercury.png new file mode 100644 index 000000000..972cf9f92 Binary files /dev/null and b/assets/hbm/textures/blocks/mercury.png differ diff --git a/assets/hbm/textures/blocks/particle/particle_base.png b/assets/hbm/textures/blocks/particle/particle_base.png new file mode 100644 index 000000000..e3015051d Binary files /dev/null and b/assets/hbm/textures/blocks/particle/particle_base.png differ diff --git a/assets/hbm/textures/gui/fluids2.png b/assets/hbm/textures/gui/fluids2.png index a63500e11..4eae091a8 100755 Binary files a/assets/hbm/textures/gui/fluids2.png and b/assets/hbm/textures/gui/fluids2.png differ diff --git a/assets/hbm/textures/gui/storage/gui_battery.png b/assets/hbm/textures/gui/storage/gui_battery.png index 570f7ea13..b71d90f54 100644 Binary files a/assets/hbm/textures/gui/storage/gui_battery.png and b/assets/hbm/textures/gui/storage/gui_battery.png differ diff --git a/assets/hbm/textures/gui/bombGeneric.png b/assets/hbm/textures/gui/weapon/bombGeneric.png similarity index 100% rename from assets/hbm/textures/gui/bombGeneric.png rename to assets/hbm/textures/gui/weapon/bombGeneric.png diff --git a/assets/hbm/textures/gui/bombGenericLarge.png b/assets/hbm/textures/gui/weapon/bombGenericLarge.png similarity index 100% rename from assets/hbm/textures/gui/bombGenericLarge.png rename to assets/hbm/textures/gui/weapon/bombGenericLarge.png diff --git a/assets/hbm/textures/gui/celprime_cmd.png b/assets/hbm/textures/gui/weapon/celprime_cmd.png similarity index 100% rename from assets/hbm/textures/gui/celprime_cmd.png rename to assets/hbm/textures/gui/weapon/celprime_cmd.png diff --git a/assets/hbm/textures/gui/celprime_cmd_alt.png b/assets/hbm/textures/gui/weapon/celprime_cmd_alt.png similarity index 100% rename from assets/hbm/textures/gui/celprime_cmd_alt.png rename to assets/hbm/textures/gui/weapon/celprime_cmd_alt.png diff --git a/assets/hbm/textures/gui/celprime_cmd_alt_thirdslot.png b/assets/hbm/textures/gui/weapon/celprime_cmd_alt_thirdslot.png similarity index 100% rename from assets/hbm/textures/gui/celprime_cmd_alt_thirdslot.png rename to assets/hbm/textures/gui/weapon/celprime_cmd_alt_thirdslot.png diff --git a/assets/hbm/textures/gui/celprime_cmd_thirdslot.png b/assets/hbm/textures/gui/weapon/celprime_cmd_thirdslot.png similarity index 100% rename from assets/hbm/textures/gui/celprime_cmd_thirdslot.png rename to assets/hbm/textures/gui/weapon/celprime_cmd_thirdslot.png diff --git a/assets/hbm/textures/gui/fatManSchematic.png b/assets/hbm/textures/gui/weapon/fatManSchematic.png similarity index 100% rename from assets/hbm/textures/gui/fatManSchematic.png rename to assets/hbm/textures/gui/weapon/fatManSchematic.png diff --git a/assets/hbm/textures/gui/fleijaSchematic.png b/assets/hbm/textures/gui/weapon/fleijaSchematic.png similarity index 100% rename from assets/hbm/textures/gui/fleijaSchematic.png rename to assets/hbm/textures/gui/weapon/fleijaSchematic.png diff --git a/assets/hbm/textures/gui/gadgetSchematic.png b/assets/hbm/textures/gui/weapon/gadgetSchematic.png similarity index 100% rename from assets/hbm/textures/gui/gadgetSchematic.png rename to assets/hbm/textures/gui/weapon/gadgetSchematic.png diff --git a/assets/hbm/textures/gui/gui_launch_pad.png b/assets/hbm/textures/gui/weapon/gui_launch_pad.png similarity index 100% rename from assets/hbm/textures/gui/gui_launch_pad.png rename to assets/hbm/textures/gui/weapon/gui_launch_pad.png diff --git a/assets/hbm/textures/gui/gui_launch_table.png b/assets/hbm/textures/gui/weapon/gui_launch_table.png similarity index 100% rename from assets/hbm/textures/gui/gui_launch_table.png rename to assets/hbm/textures/gui/weapon/gui_launch_table.png diff --git a/assets/hbm/textures/gui/gui_launch_table_small.png b/assets/hbm/textures/gui/weapon/gui_launch_table_small.png similarity index 100% rename from assets/hbm/textures/gui/gui_launch_table_small.png rename to assets/hbm/textures/gui/weapon/gui_launch_table_small.png diff --git a/assets/hbm/textures/gui/gui_n45.png b/assets/hbm/textures/gui/weapon/gui_n45.png similarity index 100% rename from assets/hbm/textures/gui/gui_n45.png rename to assets/hbm/textures/gui/weapon/gui_n45.png diff --git a/assets/hbm/textures/gui/gui_prototype.png b/assets/hbm/textures/gui/weapon/gui_prototype.png similarity index 100% rename from assets/hbm/textures/gui/gui_prototype.png rename to assets/hbm/textures/gui/weapon/gui_prototype.png diff --git a/assets/hbm/textures/gui/weapon/gui_turret.png b/assets/hbm/textures/gui/weapon/gui_turret.png new file mode 100644 index 000000000..d51b92ff1 Binary files /dev/null and b/assets/hbm/textures/gui/weapon/gui_turret.png differ diff --git a/assets/hbm/textures/gui/gunBombSchematic.png b/assets/hbm/textures/gui/weapon/gunBombSchematic.png similarity index 100% rename from assets/hbm/textures/gui/gunBombSchematic.png rename to assets/hbm/textures/gui/weapon/gunBombSchematic.png diff --git a/assets/hbm/textures/gui/gunBombSchematicSmall.png b/assets/hbm/textures/gui/weapon/gunBombSchematicSmall.png similarity index 100% rename from assets/hbm/textures/gui/gunBombSchematicSmall.png rename to assets/hbm/textures/gui/weapon/gunBombSchematicSmall.png diff --git a/assets/hbm/textures/gui/ivyMikeSchematic.png b/assets/hbm/textures/gui/weapon/ivyMikeSchematic.png similarity index 100% rename from assets/hbm/textures/gui/ivyMikeSchematic.png rename to assets/hbm/textures/gui/weapon/ivyMikeSchematic.png diff --git a/assets/hbm/textures/gui/lilBoySchematic.png b/assets/hbm/textures/gui/weapon/lilBoySchematic.png similarity index 100% rename from assets/hbm/textures/gui/lilBoySchematic.png rename to assets/hbm/textures/gui/weapon/lilBoySchematic.png diff --git a/assets/hbm/textures/gui/n2Schematic.png b/assets/hbm/textures/gui/weapon/n2Schematic.png similarity index 100% rename from assets/hbm/textures/gui/n2Schematic.png rename to assets/hbm/textures/gui/weapon/n2Schematic.png diff --git a/assets/hbm/textures/gui/soliniumSchematic.png b/assets/hbm/textures/gui/weapon/soliniumSchematic.png similarity index 100% rename from assets/hbm/textures/gui/soliniumSchematic.png rename to assets/hbm/textures/gui/weapon/soliniumSchematic.png diff --git a/assets/hbm/textures/gui/tsarBombaSchematic.png b/assets/hbm/textures/gui/weapon/tsarBombaSchematic.png similarity index 100% rename from assets/hbm/textures/gui/tsarBombaSchematic.png rename to assets/hbm/textures/gui/weapon/tsarBombaSchematic.png diff --git a/assets/hbm/textures/items/ammo_357_ender.png b/assets/hbm/textures/items/ammo_357_ender.png new file mode 100644 index 000000000..4ab1d41bb Binary files /dev/null and b/assets/hbm/textures/items/ammo_357_ender.png differ diff --git a/assets/hbm/textures/items/ammo_fuel.png b/assets/hbm/textures/items/ammo_fuel.png new file mode 100644 index 000000000..d4bf581a4 Binary files /dev/null and b/assets/hbm/textures/items/ammo_fuel.png differ diff --git a/assets/hbm/textures/items/ammo_fuel_gas.png b/assets/hbm/textures/items/ammo_fuel_gas.png new file mode 100644 index 000000000..6c11f2185 Binary files /dev/null and b/assets/hbm/textures/items/ammo_fuel_gas.png differ diff --git a/assets/hbm/textures/items/ammo_fuel_napalm.png b/assets/hbm/textures/items/ammo_fuel_napalm.png new file mode 100644 index 000000000..44b359f1e Binary files /dev/null and b/assets/hbm/textures/items/ammo_fuel_napalm.png differ diff --git a/assets/hbm/textures/items/ammo_fuel_phosphorus.png b/assets/hbm/textures/items/ammo_fuel_phosphorus.png new file mode 100644 index 000000000..bb94f482a Binary files /dev/null and b/assets/hbm/textures/items/ammo_fuel_phosphorus.png differ diff --git a/assets/hbm/textures/items/chem_icon_SATURN.png b/assets/hbm/textures/items/chem_icon_SATURN.png new file mode 100644 index 000000000..37ae4408e Binary files /dev/null and b/assets/hbm/textures/items/chem_icon_SATURN.png differ diff --git a/assets/hbm/textures/items/fluid_icon.png b/assets/hbm/textures/items/fluid_icon.png index 4db83ebf0..7311fd002 100644 Binary files a/assets/hbm/textures/items/fluid_icon.png and b/assets/hbm/textures/items/fluid_icon.png differ diff --git a/assets/hbm/textures/items/ingot_neptunium.png b/assets/hbm/textures/items/ingot_neptunium.png index eb13cea49..367137cad 100644 Binary files a/assets/hbm/textures/items/ingot_neptunium.png and b/assets/hbm/textures/items/ingot_neptunium.png differ diff --git a/assets/hbm/textures/items/jetpack_tank.png b/assets/hbm/textures/items/jetpack_tank.png index 36283b6a1..7743746bd 100644 Binary files a/assets/hbm/textures/items/jetpack_tank.png and b/assets/hbm/textures/items/jetpack_tank.png differ diff --git a/assets/hbm/textures/items/neptunium_ingot.png b/assets/hbm/textures/items/neptunium_ingot.png deleted file mode 100644 index 367137cad..000000000 Binary files a/assets/hbm/textures/items/neptunium_ingot.png and /dev/null differ diff --git a/assets/hbm/textures/items/new_magnetized_tungsten.png b/assets/hbm/textures/items/new_magnetized_tungsten.png deleted file mode 100644 index 235eef712..000000000 Binary files a/assets/hbm/textures/items/new_magnetized_tungsten.png and /dev/null differ diff --git a/assets/hbm/textures/items/new_titanium.png b/assets/hbm/textures/items/new_titanium.png deleted file mode 100644 index 00a1c483e..000000000 Binary files a/assets/hbm/textures/items/new_titanium.png and /dev/null differ diff --git a/assets/hbm/textures/items/new_tungsten.png b/assets/hbm/textures/items/new_tungsten.png deleted file mode 100644 index 4c88ac5bb..000000000 Binary files a/assets/hbm/textures/items/new_tungsten.png and /dev/null differ diff --git a/assets/hbm/textures/items/powder_red_phosphorus.png b/assets/hbm/textures/items/powder_red_phosphorus.png new file mode 100644 index 000000000..f36f7f023 Binary files /dev/null and b/assets/hbm/textures/items/powder_red_phosphorus.png differ diff --git a/assets/hbm/textures/items/sulfur.png b/assets/hbm/textures/items/sulfur.png index 6cc9b6c70..0ce895125 100644 Binary files a/assets/hbm/textures/items/sulfur.png and b/assets/hbm/textures/items/sulfur.png differ diff --git a/assets/hbm/textures/models/weapons/flamer.png b/assets/hbm/textures/models/weapons/flamer.png new file mode 100644 index 000000000..57f0cb286 Binary files /dev/null and b/assets/hbm/textures/models/weapons/flamer.png differ diff --git a/assets/hbm/textures/models/weapons/hk69_base.png b/assets/hbm/textures/models/weapons/hk69_base.png deleted file mode 100644 index 95cc84277..000000000 Binary files a/assets/hbm/textures/models/weapons/hk69_base.png and /dev/null differ diff --git a/com/hbm/blocks/BlockDummyable.java b/com/hbm/blocks/BlockDummyable.java new file mode 100644 index 000000000..1515bdbdf --- /dev/null +++ b/com/hbm/blocks/BlockDummyable.java @@ -0,0 +1,246 @@ +package com.hbm.blocks; + +import java.util.ArrayList; +import java.util.List; +import java.util.Random; + +import com.hbm.handler.MultiblockHandlerXR; +import com.hbm.handler.ThreeInts; + +import net.minecraft.block.Block; +import net.minecraft.block.BlockContainer; +import net.minecraft.block.material.Material; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.MathHelper; +import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; + +public abstract class BlockDummyable extends BlockContainer { + + public BlockDummyable(Material mat) { + super(mat); + this.setTickRandomly(true); + } + + /// BLOCK METADATA /// + + //0-5 dummy rotation (for dummy neighbor checks) + //6-11 extra (6 rotations with flag, for pipe connectors and the like) + //12-15 block rotation (for rendering the TE) + + //meta offset from dummy to TE rotation + public static final int offset = 10; + //meta offset from dummy to extra rotation + public static final int extra = 6; + + public static boolean safeRem = false; + + public void onNeighborBlockChange(World world, int x, int y, int z, Block block) { + + super.onNeighborBlockChange(world, x, y, z, block); + + if(world.isRemote) + return; + + int metadata = world.getBlockMetadata(x, y, z); + + //if it's an extra, remove the extra-ness + if(metadata >= extra) + metadata -= extra; + + ForgeDirection dir = ForgeDirection.getOrientation(metadata).getOpposite(); + Block b = world.getBlock(x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ); + + if(b != this) { + world.setBlockToAir(x, y, z); + } + } + + public void updateTick(World world, int x, int y, int z, Random rand) { + + super.updateTick(world, x, y, z, rand); + + if(world.isRemote) + return; + + int metadata = world.getBlockMetadata(x, y, z); + + //if it's an extra, remove the extra-ness + if(metadata >= extra) + metadata -= extra; + + ForgeDirection dir = ForgeDirection.getOrientation(metadata).getOpposite(); + Block b = world.getBlock(x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ); + + if(b != this) { + world.setBlockToAir(x, y, z); + } + + } + + public int[] findCore(World world, int x, int y, int z) { + positions.clear(); + return findCoreRec(world, x, y, z); + } + + List positions = new ArrayList(); + public int[] findCoreRec(World world, int x, int y, int z) { + + ThreeInts pos = new ThreeInts(x, y, z); + + int metadata = world.getBlockMetadata(x, y, z); + + //if it's an extra, remove the extra-ness + if(metadata >= extra) + metadata -= extra; + + //if the block matches and the orientation is "UNKNOWN", it's the core + if(world.getBlock(x, y, z) == this && ForgeDirection.getOrientation(metadata) == ForgeDirection.UNKNOWN) + return new int[] { x, y, z }; + + if(positions.contains(pos)) + return null; + + ForgeDirection dir = ForgeDirection.getOrientation(metadata).getOpposite(); + + Block b = world.getBlock(x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ); + + if(b != this) { + return null; + } + + positions.add(pos); + + return findCoreRec(world, x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ); + } + + @Override + public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack itemStack) { + + if(!(player instanceof EntityPlayer)) + return; + + EntityPlayer pl = (EntityPlayer) player; + + int i = MathHelper.floor_double(player.rotationYaw * 4.0F / 360.0F + 0.5D) & 3; + int o = -getOffset(); + + ForgeDirection dir = ForgeDirection.NORTH; + + if(i == 0) + { + dir = ForgeDirection.getOrientation(2); + } + if(i == 1) + { + dir = ForgeDirection.getOrientation(5); + } + if(i == 2) + { + dir = ForgeDirection.getOrientation(3); + } + if(i == 3) + { + dir = ForgeDirection.getOrientation(4); + } + + if(!MultiblockHandlerXR.checkSpace(world, x + dir.offsetX * o , y + dir.offsetY * o, z + dir.offsetZ * o, getDimensions(), x, y, z, dir)) { + world.setBlockToAir(x, y, z); + + if(!pl.capabilities.isCreativeMode) { + ItemStack stack = pl.inventory.mainInventory[pl.inventory.currentItem]; + Item item = Item.getItemFromBlock(this); + + if(stack == null) { + pl.inventory.mainInventory[pl.inventory.currentItem] = new ItemStack(this); + } else { + if(stack.getItem() != item || stack.stackSize == stack.getMaxStackSize()) { + pl.inventory.addItemStackToInventory(new ItemStack(this)); + } else { + pl.getHeldItem().stackSize++; + } + } + } + + return; + } + + world.setBlock(x + dir.offsetX * o , y + dir.offsetY * o, z + dir.offsetZ * o, this, dir.ordinal() + offset, 3); + MultiblockHandlerXR.fillSpace(world, x + dir.offsetX * o , y + dir.offsetY * o, z + dir.offsetZ * o, getDimensions(), this, dir); + world.scheduleBlockUpdate(x, y, z, this, 1); + world.scheduleBlockUpdate(x, y, z, this, 2); + + super.onBlockPlacedBy(world, x, y, z, player, itemStack); + } + + //"upgrades" regular dummy blocks to ones with the extra flag + public void makeExtra(World world, int x, int y, int z) { + + if(world.getBlock(x, y, z) != this) + return; + + int meta = world.getBlockMetadata(x, y, z); + + if(meta > 5) + return; + + //world.setBlockMetadataWithNotify(x, y, z, meta + extra, 3); + this.safeRem = true; + world.setBlock(x, y, z, this, meta + extra, 3); + this.safeRem = false; + + } + + //checks if the dummy metadata is within the extra range + public boolean hasExtra(int meta) { + + return meta > 5 && meta < 12; + } + + @Override + public void breakBlock(World world, int x, int y, int z, Block b, int i) + { + if(i >= 12) { + //ForgeDirection d = ForgeDirection.getOrientation(world.getBlockMetadata(x, y, z) - offset); + //MultiblockHandler.emptySpace(world, x, y, z, getDimensions(), this, d); + } else if(!safeRem) { + + if(i >= extra) + i -= extra; + + ForgeDirection dir = ForgeDirection.getOrientation(i).getOpposite(); + int[] pos = findCore(world, x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ); + + if(pos != null) { + + //ForgeDirection d = ForgeDirection.getOrientation(world.getBlockMetadata(pos[0], pos[1], pos[2]) - offset); + world.setBlockToAir(pos[0], pos[1], pos[2]); + } + } + + + super.breakBlock(world, x, y, z, b, i); + } + + @Override + public int getRenderType(){ + return -1; + } + + @Override + public boolean isOpaqueCube() { + return false; + } + + @Override + public boolean renderAsNormalBlock() { + return false; + } + + public abstract int[] getDimensions(); + public abstract int getOffset(); + +} diff --git a/com/hbm/blocks/ModBlocks.java b/com/hbm/blocks/ModBlocks.java index 386a9e1db..f42d091dd 100644 --- a/com/hbm/blocks/ModBlocks.java +++ b/com/hbm/blocks/ModBlocks.java @@ -99,6 +99,7 @@ public class ModBlocks { public static Block block_u238; public static Block block_uranium_fuel; public static Block block_neptunium; + public static Block block_mox_fuel; public static Block block_plutonium; public static Block block_pu238; public static Block block_pu239; @@ -131,10 +132,13 @@ public class ModBlocks { public static Block block_desh; public static Block block_starmetal; public static Block block_yellowcake; + public static Block block_insulator; public static Block block_fiberglass; public static Block block_asbestos; public static Block block_cobalt; public static Block block_lithium; + public static Block block_white_phosphorus; + public static Block block_red_phosphorus; public static Block block_australium; public static Block block_weidanium; @@ -833,6 +837,7 @@ public class ModBlocks { block_thorium = new BlockGeneric(Material.iron).setBlockName("block_thorium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_thorium"); block_thorium_fuel = new BlockGeneric(Material.iron).setBlockName("block_thorium_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_thorium_fuel"); block_neptunium = new BlockOre(Material.iron, 10F, 100F).setBlockName("block_neptunium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_neptunium"); + block_mox_fuel = new BlockOre(Material.iron, 15F, 150F).setBlockName("block_mox_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_mox_fuel"); block_plutonium = new BlockOre(Material.iron, 15F, 150F).setBlockName("block_plutonium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_plutonium"); block_pu238 = new BlockOre(Material.iron, 0.1F, 1.5F).setBlockName("block_pu238").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_pu238"); block_pu239 = new BlockOre(Material.iron, 15F, 150F).setBlockName("block_pu239").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_pu239"); @@ -857,18 +862,21 @@ public class ModBlocks { 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_schrabidium_cluster = new BlockGenericPillar(Material.rock).setBlockName("block_schrabidium_cluster").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F); - block_euphemium_cluster = new BlockGenericPillar(Material.rock).setBlockName("block_euphemium_cluster").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F); + 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"); block_magnetized_tungsten = new BlockGeneric(Material.iron).setBlockName("block_magnetized_tungsten").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(35.0F).setBlockTextureName(RefStrings.MODID + ":block_magnetized_tungsten"); block_combine_steel = new BlockGeneric(Material.iron).setBlockName("block_combine_steel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_combine_steel"); block_desh = new BlockGeneric(Material.iron).setBlockName("block_desh").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_desh"); block_starmetal = new BlockGeneric(Material.iron).setBlockName("block_starmetal").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_starmetal"); block_yellowcake = new BlockFallingRad(Material.sand, 0.5F, 3F).setBlockName("block_yellowcake").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeSand).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_yellowcake"); - block_fiberglass = new BlockReactor(Material.cloth).setBlockName("block_fiberglass").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(10.0F); + block_insulator = new BlockRotatablePillar(Material.cloth, RefStrings.MODID + ":block_insulator_top").setBlockName("block_insulator").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_insulator_side"); + block_fiberglass = new BlockRotatablePillar(Material.cloth, RefStrings.MODID + ":block_fiberglass_top").setBlockName("block_fiberglass").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_fiberglass_side"); block_asbestos = new BlockGeneric(Material.cloth).setBlockName("block_asbestos").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_asbestos"); block_cobalt = new BlockGeneric(Material.iron).setBlockName("block_cobalt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_cobalt"); block_lithium = new BlockLithium(Material.iron).setBlockName("block_lithium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_lithium"); + block_white_phosphorus = new BlockGeneric(Material.rock).setBlockName("block_white_phosphorus").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_white_phosphorus"); + block_red_phosphorus = new BlockFalling(Material.sand).setStepSound(Block.soundTypeSand).setBlockName("block_red_phosphorus").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_red_phosphorus"); block_australium = new BlockGeneric(Material.iron).setBlockName("block_australium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_australium"); block_weidanium = new BlockGeneric(Material.iron).setBlockName("block_weidanium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_weidanium"); @@ -921,9 +929,9 @@ public class ModBlocks { meteor_brick_mossy = new BlockGeneric(Material.rock).setBlockName("meteor_brick_mossy").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":meteor_brick_mossy"); meteor_brick_cracked = new BlockGeneric(Material.rock).setBlockName("meteor_brick_cracked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":meteor_brick_cracked"); meteor_brick_chiseled = new BlockGeneric(Material.rock).setBlockName("meteor_brick_chiseled").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":meteor_brick_chiseled"); - meteor_pillar = new BlockGenericPillar(Material.rock).setBlockName("meteor_pillar").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F); + meteor_pillar = new BlockRotatablePillar(Material.rock, RefStrings.MODID + ":meteor_pillar_top").setBlockName("meteor_pillar").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":meteor_pillar_top"); meteor_spawner = new BlockCybercrab(Material.rock).setBlockName("meteor_spawner").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F); - meteor_battery = new BlockReactor(Material.rock).setBlockName("meteor_battery").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F); + meteor_battery = new BlockPillar(Material.rock, RefStrings.MODID + ":meteor_power").setBlockName("meteor_battery").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":meteor_spawner_side"); tape_recorder = new DecoTapeRecorder(Material.rock).setBlockName("tape_recorder").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_tape_recorder"); steel_poles = new DecoSteelPoles(Material.rock).setBlockName("steel_poles").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":steel_beam"); @@ -1103,39 +1111,39 @@ public class ModBlocks { factory_titanium_hull = new BlockGeneric(Material.iron).setBlockName("factory_titanium_hull").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_titanium_hull"); factory_titanium_furnace = new FactoryHatch(Material.iron).setBlockName("factory_titanium_furnace").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_titanium_furnace"); - factory_titanium_conductor = new BlockReactor(Material.iron).setBlockName("factory_titanium_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_titanium_conductor"); + factory_titanium_conductor = new BlockPillar(Material.iron, RefStrings.MODID + ":factory_titanium_conductor").setBlockName("factory_titanium_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_titanium_hull"); factory_titanium_core = new FactoryCoreTitanium(Material.iron).setBlockName("factory_titanium_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_titanium_core"); factory_advanced_hull = new BlockGeneric(Material.iron).setBlockName("factory_advanced_hull").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_advanced_hull"); factory_advanced_furnace = new FactoryHatch(Material.iron).setBlockName("factory_advanced_furnace").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_advanced_furnace"); - factory_advanced_conductor = new BlockReactor(Material.iron).setBlockName("factory_advanced_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_advanced_conductor"); + factory_advanced_conductor = new BlockPillar(Material.iron, RefStrings.MODID + ":factory_advanced_conductor").setBlockName("factory_advanced_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_advanced_hull"); factory_advanced_core = new FactoryCoreAdvanced(Material.iron).setBlockName("factory_advanced_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_advanced_core"); - reactor_element = new BlockReactor(Material.iron).setBlockName("reactor_element").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":reactor_element_side"); - reactor_control = new BlockReactor(Material.iron).setBlockName("reactor_control").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":reactor_control_side"); + reactor_element = new BlockPillar(Material.iron, RefStrings.MODID + ":reactor_element_top", RefStrings.MODID + ":reactor_element_base").setBlockName("reactor_element").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":reactor_element_side"); + reactor_control = new BlockPillar(Material.iron, RefStrings.MODID + ":reactor_control_top").setBlockName("reactor_control").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":reactor_control_side"); reactor_hatch = new ReactorHatch(Material.iron).setBlockName("reactor_hatch").setHardness(5.0F).setResistance(1000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_concrete"); reactor_ejector = new BlockRotatable(Material.iron).setBlockName("reactor_ejector").setHardness(5.0F).setResistance(1000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_concrete"); reactor_inserter = new BlockRotatable(Material.iron).setBlockName("reactor_inserter").setHardness(5.0F).setResistance(1000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_concrete"); - reactor_conductor = new BlockReactor(Material.iron).setBlockName("reactor_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":reactor_conductor_side"); + reactor_conductor = new BlockPillar(Material.iron, RefStrings.MODID + ":reactor_conductor_top").setBlockName("reactor_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":reactor_conductor_side"); reactor_computer = new ReactorCore(Material.iron).setBlockName("reactor_computer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":reactor_computer"); - fusion_conductor = new BlockReactor(Material.iron).setBlockName("fusion_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_conductor_side"); - fusion_center = new BlockReactor(Material.iron).setBlockName("fusion_center").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_center_side"); - fusion_motor = new BlockReactor(Material.iron).setBlockName("fusion_motor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_motor_side"); - fusion_heater = new BlockReactor(Material.iron).setBlockName("fusion_heater").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_heater_side"); + fusion_conductor = new BlockPillar(Material.iron, RefStrings.MODID + ":block_steel").setBlockName("fusion_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_conductor_side_alt3"); + fusion_center = new BlockPillar(Material.iron, RefStrings.MODID + ":fusion_center_top_alt").setBlockName("fusion_center").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_center_side_alt"); + fusion_motor = new BlockPillar(Material.iron, RefStrings.MODID + ":fusion_motor_top_alt").setBlockName("fusion_motor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_motor_side_alt"); + fusion_heater = new BlockPillar(Material.iron, RefStrings.MODID + ":fusion_heater_top").setBlockName("fusion_heater").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_heater_side"); fusion_hatch = new FusionHatch(Material.iron).setBlockName("fusion_hatch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_hatch"); fusion_core = new FusionCore(Material.iron).setBlockName("fusion_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_core_side"); plasma = new BlockPlasma(Material.iron).setBlockName("plasma").setHardness(5.0F).setResistance(6000.0F).setLightLevel(1.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":plasma"); - watz_element = new BlockReactor(Material.iron).setBlockName("watz_element").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_element"); - watz_control = new BlockReactor(Material.iron).setBlockName("watz_control").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_control"); + watz_element = new BlockPillar(Material.iron, RefStrings.MODID + ":watz_element_top").setBlockName("watz_element").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_element_side"); + watz_control = new BlockPillar(Material.iron, RefStrings.MODID + ":watz_control_top").setBlockName("watz_control").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_control_side"); watz_cooler = new BlockGeneric(Material.iron).setBlockName("watz_cooler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_cooler"); watz_end = new BlockGeneric(Material.iron).setBlockName("watz_end").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_end"); watz_hatch = new WatzHatch(Material.iron).setBlockName("watz_hatch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_hatch"); - watz_conductor = new BlockReactor(Material.iron).setBlockName("watz_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_conductor"); + watz_conductor = new BlockPillar(Material.iron, RefStrings.MODID + ":watz_conductor_top").setBlockName("watz_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_conductor_side"); watz_core = new WatzCore(Material.iron).setBlockName("watz_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_computer"); - fwatz_conductor = new BlockReactor(Material.iron).setBlockName("fwatz_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fwatz_conductor"); - fwatz_cooler = new BlockReactor(Material.iron).setBlockName("fwatz_cooler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fwatz_cooler"); + fwatz_conductor = new BlockPillar(Material.iron, RefStrings.MODID + ":block_combine_steel").setBlockName("fwatz_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fwatz_conductor_side"); + fwatz_cooler = new BlockPillar(Material.iron, RefStrings.MODID + ":fwatz_cooler_top").setBlockName("fwatz_cooler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fwatz_cooler"); fwatz_tank = new ReinforcedBlock(Material.iron).setBlockName("fwatz_tank").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fwatz_tank"); fwatz_scaffold = new BlockGeneric(Material.iron).setBlockName("fwatz_scaffold").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fwatz_scaffold"); fwatz_hatch = new FWatzHatch(Material.iron).setBlockName("fwatz_hatch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fwatz_computer"); @@ -1432,6 +1440,7 @@ public class ModBlocks { GameRegistry.registerBlock(block_u238, block_u238.getUnlocalizedName()); GameRegistry.registerBlock(block_uranium_fuel, block_uranium_fuel.getUnlocalizedName()); GameRegistry.registerBlock(block_neptunium, block_neptunium.getUnlocalizedName()); + GameRegistry.registerBlock(block_mox_fuel, block_mox_fuel.getUnlocalizedName()); GameRegistry.registerBlock(block_plutonium, block_plutonium.getUnlocalizedName()); GameRegistry.registerBlock(block_pu238, block_pu238.getUnlocalizedName()); GameRegistry.registerBlock(block_pu239, block_pu239.getUnlocalizedName()); @@ -1453,9 +1462,12 @@ public class ModBlocks { GameRegistry.registerBlock(block_steel, block_steel.getUnlocalizedName()); GameRegistry.registerBlock(block_lead, block_lead.getUnlocalizedName()); GameRegistry.registerBlock(block_lithium, ItemBlockLore.class, block_lithium.getUnlocalizedName()); + GameRegistry.registerBlock(block_white_phosphorus, block_white_phosphorus.getUnlocalizedName()); + GameRegistry.registerBlock(block_red_phosphorus, block_red_phosphorus.getUnlocalizedName()); GameRegistry.registerBlock(block_yellowcake, block_yellowcake.getUnlocalizedName()); GameRegistry.registerBlock(block_scrap, block_scrap.getUnlocalizedName()); GameRegistry.registerBlock(block_electrical_scrap, block_electrical_scrap.getUnlocalizedName()); + GameRegistry.registerBlock(block_insulator, block_insulator.getUnlocalizedName()); GameRegistry.registerBlock(block_fiberglass, block_fiberglass.getUnlocalizedName()); GameRegistry.registerBlock(block_asbestos, block_asbestos.getUnlocalizedName()); GameRegistry.registerBlock(block_trinitite, block_trinitite.getUnlocalizedName()); diff --git a/com/hbm/blocks/fluid/MudBlock.java b/com/hbm/blocks/fluid/MudBlock.java index 57ed6b74d..782c448d2 100644 --- a/com/hbm/blocks/fluid/MudBlock.java +++ b/com/hbm/blocks/fluid/MudBlock.java @@ -3,7 +3,7 @@ package com.hbm.blocks.fluid; import java.util.Random; import com.hbm.blocks.ModBlocks; -import com.hbm.lib.Library; +import com.hbm.handler.ArmorUtil; import com.hbm.lib.ModDamageSource; import com.hbm.lib.RefStrings; import cpw.mods.fml.relauncher.Side; @@ -73,19 +73,8 @@ public class MudBlock extends BlockFluidClassic { @Override public void onEntityCollidedWithBlock(World world, int x, int y, int z, Entity entity) { entity.setInWeb(); - // if(entity instanceof EntityLivingBase) - // { - // entity.attackEntityFrom(ModDamageSource.mudPoisoning, 8); - // } - if (entity instanceof EntityPlayer && Library.checkForHazmat((EntityPlayer) entity)) { - /* - * Library.damageSuit(((EntityPlayer)entity), 0); - * Library.damageSuit(((EntityPlayer)entity), 1); - * Library.damageSuit(((EntityPlayer)entity), 2); - * Library.damageSuit(((EntityPlayer)entity), 3); - */ - - } else { + + if (entity instanceof EntityPlayer && ArmorUtil.checkForHazmat((EntityPlayer) entity)) { } else { entity.attackEntityFrom(ModDamageSource.mudPoisoning, 8); } } diff --git a/com/hbm/blocks/generic/BarbedWire.java b/com/hbm/blocks/generic/BarbedWire.java index 85ce87ee7..d63095f98 100644 --- a/com/hbm/blocks/generic/BarbedWire.java +++ b/com/hbm/blocks/generic/BarbedWire.java @@ -1,7 +1,7 @@ package com.hbm.blocks.generic; import com.hbm.blocks.ModBlocks; -import com.hbm.lib.Library; +import com.hbm.handler.ArmorUtil; import com.hbm.lib.ModDamageSource; import com.hbm.potion.HbmPotion; @@ -49,10 +49,10 @@ public class BarbedWire extends Block { ent.attackEntityFrom(DamageSource.cactus, 2.0F); if(ent instanceof EntityPlayer) { - Library.damageSuit((EntityPlayer)ent, 0, 1); - Library.damageSuit((EntityPlayer)ent, 1, 1); - Library.damageSuit((EntityPlayer)ent, 2, 1); - Library.damageSuit((EntityPlayer)ent, 3, 1); + ArmorUtil.damageSuit((EntityPlayer)ent, 0, 1); + ArmorUtil.damageSuit((EntityPlayer)ent, 1, 1); + ArmorUtil.damageSuit((EntityPlayer)ent, 2, 1); + ArmorUtil.damageSuit((EntityPlayer)ent, 3, 1); } } diff --git a/com/hbm/blocks/generic/BlockClorine.java b/com/hbm/blocks/generic/BlockClorine.java index eaa11a604..39dcb2511 100644 --- a/com/hbm/blocks/generic/BlockClorine.java +++ b/com/hbm/blocks/generic/BlockClorine.java @@ -2,8 +2,7 @@ package com.hbm.blocks.generic; import java.util.Random; -import com.hbm.lib.Library; - +import com.hbm.handler.ArmorUtil; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; @@ -68,10 +67,10 @@ public class BlockClorine extends Block { @Override public void onEntityCollidedWithBlock(World world, int p_149670_2_, int p_149670_3_, int p_149670_4_, Entity entity) { - if (entity instanceof EntityPlayer && Library.checkForGasMask((EntityPlayer) entity)) { + if (entity instanceof EntityPlayer && ArmorUtil.checkForGasMask((EntityPlayer) entity)) { if(world.rand.nextInt(25) == 0) - Library.damageSuit((EntityPlayer)entity, 3, world.rand.nextInt(2)); + ArmorUtil.damageSuit((EntityPlayer)entity, 3, world.rand.nextInt(2)); } else if (entity instanceof EntityLivingBase) { ((EntityLivingBase) entity) diff --git a/com/hbm/blocks/generic/BlockGenericPillar.java b/com/hbm/blocks/generic/BlockGenericPillar.java deleted file mode 100644 index ec15da2e5..000000000 --- a/com/hbm/blocks/generic/BlockGenericPillar.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.hbm.blocks.generic; - -import com.hbm.blocks.ModBlocks; -import com.hbm.lib.RefStrings; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.block.BlockRotatedPillar; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.util.IIcon; - -public class BlockGenericPillar extends BlockRotatedPillar { - - @SideOnly(Side.CLIENT) - protected IIcon iconSide; - - public BlockGenericPillar(Material p_i45425_1_) { - super(p_i45425_1_); - } - - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister reg) - { - if(this == ModBlocks.meteor_pillar) { - this.field_150164_N = reg.registerIcon(RefStrings.MODID + ":meteor_pillar_top"); - this.iconSide = reg.registerIcon(RefStrings.MODID + ":meteor_pillar"); - } - if(this == ModBlocks.block_schrabidium_cluster) { - this.field_150164_N = reg.registerIcon(RefStrings.MODID + ":block_schrabidium_cluster_top"); - this.iconSide = reg.registerIcon(RefStrings.MODID + ":block_schrabidium_cluster_side"); - } - if(this == ModBlocks.block_euphemium_cluster) { - this.field_150164_N = reg.registerIcon(RefStrings.MODID + ":block_euphemium_cluster_top"); - this.iconSide = reg.registerIcon(RefStrings.MODID + ":block_euphemium_cluster_side"); - } - } - - @Override - protected IIcon getSideIcon(int p_150163_1_) { - return iconSide; - } - -} diff --git a/com/hbm/blocks/generic/BlockOre.java b/com/hbm/blocks/generic/BlockOre.java index ce9eef296..5a4346d31 100644 --- a/com/hbm/blocks/generic/BlockOre.java +++ b/com/hbm/blocks/generic/BlockOre.java @@ -74,7 +74,7 @@ public class BlockOre extends Block { } if(this == ModBlocks.ore_nether_fire) { - return rand.nextInt(3) == 0 ? ModItems.ingot_phosphorus : Items.blaze_powder; + return rand.nextInt(10) == 0 ? ModItems.ingot_phosphorus : ModItems.powder_fire; } if(this == ModBlocks.block_meteor) { diff --git a/com/hbm/blocks/generic/BlockRotatablePillar.java b/com/hbm/blocks/generic/BlockRotatablePillar.java new file mode 100644 index 000000000..8d31b49c8 --- /dev/null +++ b/com/hbm/blocks/generic/BlockRotatablePillar.java @@ -0,0 +1,34 @@ +package com.hbm.blocks.generic; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.block.BlockRotatedPillar; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.util.IIcon; + +public class BlockRotatablePillar extends BlockRotatedPillar { + + @SideOnly(Side.CLIENT) + protected IIcon iconSide; + + private String textureTop; + + public BlockRotatablePillar(Material mat, String top) { + super(mat); + textureTop = top; + } + + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister reg) { + + this.field_150164_N = reg.registerIcon(textureTop); + this.iconSide = reg.registerIcon(this.getTextureName()); + } + + @Override + protected IIcon getSideIcon(int p_150163_1_) { + return iconSide; + } + +} diff --git a/com/hbm/blocks/machine/BlockPillar.java b/com/hbm/blocks/machine/BlockPillar.java new file mode 100644 index 000000000..5f8a62a05 --- /dev/null +++ b/com/hbm/blocks/machine/BlockPillar.java @@ -0,0 +1,88 @@ +package com.hbm.blocks.machine; + +import com.hbm.blocks.ModBlocks; +import com.hbm.lib.RefStrings; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.util.IIcon; +import net.minecraft.world.World; + +public class BlockPillar extends Block { + + @SideOnly(Side.CLIENT) + private IIcon iconTop; + @SideOnly(Side.CLIENT) + private IIcon iconAlt; + + private String textureTop = ""; + private String textureAlt = ""; + + public BlockPillar(Material mat, String top) { + super(mat); + textureTop = top; + } + + public BlockPillar(Material mat, String top, String bottom) { + this(mat, top); + textureAlt = bottom; + } + + public Block setBlockTextureName(String name) { + + if(textureTop.isEmpty()) + textureTop = name; + + if(textureAlt.isEmpty()) + textureAlt = name; + + this.textureName = name; + + return this; + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister iconRegister) { + + this.iconAlt = iconRegister.registerIcon(textureAlt.isEmpty() ? RefStrings.MODID + ":code" : textureAlt); + this.iconTop = iconRegister.registerIcon(textureTop); + this.blockIcon = iconRegister.registerIcon(this.textureName); + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int metadata) { + + if(this == ModBlocks.reactor_element && metadata == 1) + return side == 1 ? this.iconTop : (side == 0 ? this.iconTop : this.iconAlt); + + return side == 1 ? this.iconTop : (side == 0 ? this.iconTop : this.blockIcon); + } + + + @Override + public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) { + + if(this != ModBlocks.reactor_element) + return super.onBlockActivated(world, x, y, z, player, side, hitX, hitY, hitZ); + + if(player.isSneaking()) + { + if(world.getBlockMetadata(x, y, z) == 0) { + world.setBlockMetadataWithNotify(x, y, z, 1, 3); + } else { + world.setBlockMetadataWithNotify(x, y, z, 0, 3); + } + + return true; + } + + return false; + } + +} diff --git a/com/hbm/blocks/machine/BlockReactor.java b/com/hbm/blocks/machine/BlockReactor.java deleted file mode 100644 index ec79b307a..000000000 --- a/com/hbm/blocks/machine/BlockReactor.java +++ /dev/null @@ -1,146 +0,0 @@ -package com.hbm.blocks.machine; - -import com.hbm.blocks.ModBlocks; -import com.hbm.lib.RefStrings; - -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.block.Block; -import net.minecraft.block.material.Material; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.util.IIcon; -import net.minecraft.world.World; - -public class BlockReactor extends Block { - - @SideOnly(Side.CLIENT) - private IIcon iconTop; - @SideOnly(Side.CLIENT) - private IIcon iconAlt; - - public BlockReactor(Material p_i45394_1_) { - super(p_i45394_1_); - } - - @Override - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister iconRegister) { - - this.iconAlt = iconRegister.registerIcon(RefStrings.MODID + ":code"); - - if(this == ModBlocks.reactor_conductor) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":reactor_conductor_top"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":reactor_conductor_side"); - } - if(this == ModBlocks.reactor_control) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":reactor_control_top"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":reactor_control_side"); - } - if(this == ModBlocks.reactor_element) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":reactor_element_top"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":reactor_element_side"); - this.iconAlt = iconRegister.registerIcon(RefStrings.MODID + ":reactor_element_base"); - } - if(this == ModBlocks.fusion_conductor) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + /*":fusion_conductor_top_alt"*/":block_steel"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + /*":fusion_conductor_alt"*/":fusion_conductor_side_alt3"); - } - if(this == ModBlocks.fusion_center) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":fusion_center_top_alt"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":fusion_center_side_alt"); - } - if(this == ModBlocks.fusion_motor) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":fusion_motor_top_alt"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":fusion_motor_side_alt"); - } - if(this == ModBlocks.fusion_heater) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":fusion_heater_top"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":fusion_heater_side"); - } - if(this == ModBlocks.factory_titanium_conductor) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":factory_titanium_conductor"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":factory_titanium_hull"); - } - if(this == ModBlocks.factory_advanced_conductor) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":factory_advanced_conductor"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":factory_advanced_hull"); - } - if(this == ModBlocks.watz_element) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":watz_element_top"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":watz_element_side"); - } - if(this == ModBlocks.watz_control) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":watz_control_top"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":watz_control_side"); - } - if(this == ModBlocks.watz_conductor) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":watz_conductor_top"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":watz_conductor_side"); - } - if(this == ModBlocks.fwatz_conductor) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":block_combine_steel"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":fwatz_conductor_side"); - } - if(this == ModBlocks.fwatz_cooler) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":fwatz_cooler_top"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":fwatz_cooler"); - } - if(this == ModBlocks.block_fiberglass) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":block_fiberglass_top"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":block_fiberglass_side"); - } - if(this == ModBlocks.meteor_battery) - { - this.iconTop = iconRegister.registerIcon(RefStrings.MODID + ":meteor_power"); - this.blockIcon = iconRegister.registerIcon(RefStrings.MODID + ":meteor_spawner_side"); - } - } - - @Override - @SideOnly(Side.CLIENT) - public IIcon getIcon(int side, int metadata) { - - if(this == ModBlocks.reactor_element && metadata == 1) - return side == 1 ? this.iconTop : (side == 0 ? this.iconTop : this.iconAlt); - - return side == 1 ? this.iconTop : (side == 0 ? this.iconTop : this.blockIcon); - } - - - @Override - public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) { - - if(this != ModBlocks.reactor_element) - return super.onBlockActivated(world, x, y, z, player, side, hitX, hitY, hitZ); - - if(player.isSneaking()) - { - if(world.getBlockMetadata(x, y, z) == 0) { - world.setBlockMetadataWithNotify(x, y, z, 1, 3); - } else { - world.setBlockMetadataWithNotify(x, y, z, 0, 3); - } - - return true; - } - - return false; - } - -} diff --git a/com/hbm/calc/UnionOfTileEntitiesAndBooleans.java b/com/hbm/calc/UnionOfTileEntitiesAndBooleans.java index 1264563bb..f9e1afbe0 100644 --- a/com/hbm/calc/UnionOfTileEntitiesAndBooleans.java +++ b/com/hbm/calc/UnionOfTileEntitiesAndBooleans.java @@ -1,7 +1,9 @@ package com.hbm.calc; import com.hbm.interfaces.ISource; +import com.hbm.interfaces.Spaghetti; +@Spaghetti("i deserve to be shot for this one") public class UnionOfTileEntitiesAndBooleans { public UnionOfTileEntitiesAndBooleans(ISource tileentity, boolean bool) diff --git a/com/hbm/entity/missile/EntityCarrier.java b/com/hbm/entity/missile/EntityCarrier.java index b32dfb282..405b6dbc7 100644 --- a/com/hbm/entity/missile/EntityCarrier.java +++ b/com/hbm/entity/missile/EntityCarrier.java @@ -3,7 +3,7 @@ package com.hbm.entity.missile; import com.hbm.entity.particle.EntityGasFlameFX; import com.hbm.explosion.ExplosionLarge; import com.hbm.items.ModItems; -import com.hbm.items.tool.ItemSatChip; +import com.hbm.items.machine.ItemSatChip; import com.hbm.main.MainRegistry; import com.hbm.saveddata.satellites.Satellite; diff --git a/com/hbm/entity/missile/EntitySoyuz.java b/com/hbm/entity/missile/EntitySoyuz.java index b5feb8f6a..70b2fd4f4 100644 --- a/com/hbm/entity/missile/EntitySoyuz.java +++ b/com/hbm/entity/missile/EntitySoyuz.java @@ -4,7 +4,7 @@ import java.util.List; import com.hbm.explosion.ExplosionLarge; import com.hbm.items.ModItems; -import com.hbm.items.tool.ItemSatChip; +import com.hbm.items.machine.ItemSatChip; import com.hbm.lib.ModDamageSource; import com.hbm.main.MainRegistry; import com.hbm.saveddata.satellites.Satellite; diff --git a/com/hbm/entity/projectile/EntityBullet.java b/com/hbm/entity/projectile/EntityBullet.java index ee6458cd7..1ffd09246 100644 --- a/com/hbm/entity/projectile/EntityBullet.java +++ b/com/hbm/entity/projectile/EntityBullet.java @@ -35,8 +35,8 @@ import com.hbm.blocks.generic.RedBarrel; import com.hbm.entity.grenade.EntityGrenadeTau; import com.hbm.entity.mob.EntityNuclearCreeper; import com.hbm.entity.particle.EntityBSmokeFX; +import com.hbm.handler.ArmorUtil; import com.hbm.items.ModItems; -import com.hbm.lib.Library; import com.hbm.lib.ModDamageSource; import cpw.mods.fml.relauncher.ReflectionHelper; @@ -497,7 +497,7 @@ public class EntityBullet extends Entity implements IProjectile { if (rad) { if (entitylivingbase instanceof EntityPlayer - && Library.checkForHazmat((EntityPlayer) entitylivingbase)) { + && ArmorUtil.checkForHazmat((EntityPlayer) entitylivingbase)) { } else if (entitylivingbase instanceof EntityCreeper) { EntityNuclearCreeper creep = new EntityNuclearCreeper(this.worldObj); creep.setLocationAndAngles(entitylivingbase.posX, entitylivingbase.posY, entitylivingbase.posZ, diff --git a/com/hbm/entity/projectile/EntityBulletBase.java b/com/hbm/entity/projectile/EntityBulletBase.java index 52fd752b6..0c8ea5f79 100644 --- a/com/hbm/entity/projectile/EntityBulletBase.java +++ b/com/hbm/entity/projectile/EntityBulletBase.java @@ -16,9 +16,9 @@ import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionNukeGeneric; import com.hbm.explosion.ExplosionParticle; import com.hbm.explosion.ExplosionParticleB; +import com.hbm.handler.ArmorUtil; import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.handler.BulletConfiguration; -import com.hbm.lib.Library; import com.hbm.lib.ModDamageSource; import com.hbm.main.MainRegistry; import com.hbm.potion.HbmPotion; @@ -351,8 +351,18 @@ public class EntityBulletBase extends Entity implements IProjectile { this.setDead(); if(worldObj.isRemote && !config.vPFX.isEmpty()) { - for (i = 0; i < 8; ++i) { - this.worldObj.spawnParticle(config.vPFX, this.posX - this.motionX * i / 1.0D, this.posY - this.motionY * i / 1.0D, this.posZ - this.motionZ * i / 1.0D, 0, 0, 0); + + double motion = Vec3.createVectorHelper(motionX, motionY, motionZ).lengthVector(); + + for (i = 0; i < motion * 2; ++i) { + + NBTTagCompound nbt = new NBTTagCompound(); + nbt.setString("type", "vanillaExt"); + nbt.setString("mode", config.vPFX); + nbt.setDouble("posX", this.posX - this.motionX * i / 1.0D); + nbt.setDouble("posY", this.posY - this.motionY * i / 1.0D); + nbt.setDouble("posZ", this.posZ - this.motionZ * i / 1.0D); + MainRegistry.proxy.effectNT(nbt); } } @@ -504,10 +514,10 @@ public class EntityBulletBase extends Entity implements IProjectile { } if(config.caustic > 0 && e instanceof EntityPlayer){ - Library.damageSuit((EntityPlayer)e, 0, config.caustic); - Library.damageSuit((EntityPlayer)e, 1, config.caustic); - Library.damageSuit((EntityPlayer)e, 2, config.caustic); - Library.damageSuit((EntityPlayer)e, 3, config.caustic); + ArmorUtil.damageSuit((EntityPlayer)e, 0, config.caustic); + ArmorUtil.damageSuit((EntityPlayer)e, 1, config.caustic); + ArmorUtil.damageSuit((EntityPlayer)e, 2, config.caustic); + ArmorUtil.damageSuit((EntityPlayer)e, 3, config.caustic); } } diff --git a/com/hbm/explosion/ExplosionChaos.java b/com/hbm/explosion/ExplosionChaos.java index 5d5919988..9be533a7e 100644 --- a/com/hbm/explosion/ExplosionChaos.java +++ b/com/hbm/explosion/ExplosionChaos.java @@ -20,7 +20,7 @@ import com.hbm.entity.projectile.EntityRainbow; import com.hbm.entity.projectile.EntityRocket; import com.hbm.entity.projectile.EntityRubble; import com.hbm.entity.projectile.EntitySchrab; -import com.hbm.lib.Library; +import com.hbm.handler.ArmorUtil; import com.hbm.lib.ModDamageSource; import com.hbm.potion.HbmPotion; @@ -636,8 +636,8 @@ public class ExplosionChaos { d7 = entity.posZ - z; double d9 = MathHelper.sqrt_double(d5 * d5 + d6 * d6 + d7 * d7); if (d9 < wat) { - if (entity instanceof EntityPlayer && Library.checkForGasMask((EntityPlayer) entity)) { - Library.damageSuit((EntityPlayer)entity, 3, rand.nextInt(2)); + if (entity instanceof EntityPlayer && ArmorUtil.checkForGasMask((EntityPlayer) entity)) { + ArmorUtil.damageSuit((EntityPlayer)entity, 3, rand.nextInt(2)); } else if (entity instanceof EntityLivingBase) { ((EntityLivingBase) entity) @@ -690,10 +690,10 @@ public class ExplosionChaos { if (entity instanceof EntityPlayer) { - Library.damageSuit((EntityPlayer)entity, 0, 25); - Library.damageSuit((EntityPlayer)entity, 1, 25); - Library.damageSuit((EntityPlayer)entity, 2, 25); - Library.damageSuit((EntityPlayer)entity, 3, 25); + ArmorUtil.damageSuit((EntityPlayer)entity, 0, 25); + ArmorUtil.damageSuit((EntityPlayer)entity, 1, 25); + ArmorUtil.damageSuit((EntityPlayer)entity, 2, 25); + ArmorUtil.damageSuit((EntityPlayer)entity, 3, 25); } @@ -737,14 +737,14 @@ public class ExplosionChaos { if (entity instanceof EntityPlayer) { - Library.damageSuit((EntityPlayer)entity, 0, 5); - Library.damageSuit((EntityPlayer)entity, 1, 5); - Library.damageSuit((EntityPlayer)entity, 2, 5); - Library.damageSuit((EntityPlayer)entity, 3, 5); + ArmorUtil.damageSuit((EntityPlayer)entity, 0, 5); + ArmorUtil.damageSuit((EntityPlayer)entity, 1, 5); + ArmorUtil.damageSuit((EntityPlayer)entity, 2, 5); + ArmorUtil.damageSuit((EntityPlayer)entity, 3, 5); } - if (entity instanceof EntityPlayer && Library.checkForHazmat((EntityPlayer) entity)) { } else { + if (entity instanceof EntityPlayer && ArmorUtil.checkForHazmat((EntityPlayer) entity)) { } else { if(entity instanceof EntityLivingBase && ((EntityLivingBase)entity).isPotionActive(HbmPotion.taint.id)) { ((EntityLivingBase)entity).removePotionEffect(HbmPotion.taint.id); diff --git a/com/hbm/explosion/ExplosionNukeGeneric.java b/com/hbm/explosion/ExplosionNukeGeneric.java index afa2081fb..d743673eb 100644 --- a/com/hbm/explosion/ExplosionNukeGeneric.java +++ b/com/hbm/explosion/ExplosionNukeGeneric.java @@ -31,6 +31,7 @@ import com.hbm.entity.projectile.EntityBulletBase; import com.hbm.entity.projectile.EntityExplosiveBeam; import com.hbm.entity.projectile.EntityMiniMIRV; import com.hbm.entity.projectile.EntityMiniNuke; +import com.hbm.handler.ArmorUtil; import com.hbm.interfaces.IConsumer; import com.hbm.interfaces.ISource; import com.hbm.items.ModItems; @@ -146,7 +147,7 @@ public class ExplosionNukeGeneric { && !(entity instanceof EntityMiniMIRV) && !(entity instanceof EntityGrenadeASchrab) && !(entity instanceof EntityGrenadeNuclear) && !(entity instanceof EntityExplosiveBeam) && !(entity instanceof EntityBulletBase) && !(entity instanceof EntityPlayer - && Library.checkArmor((EntityPlayer) entity, ModItems.euphemium_helmet, + && ArmorUtil.checkArmor((EntityPlayer) entity, ModItems.euphemium_helmet, ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots))) { d5 /= d9; d6 /= d9; @@ -208,7 +209,7 @@ public class ExplosionNukeGeneric { d7 = entity.posZ - z; double d9 = MathHelper.sqrt_double(d5 * d5 + d6 * d6 + d7 * d7); if (d9 < wat && !(entity instanceof EntityPlayer - && Library.checkArmor((EntityPlayer) entity, ModItems.euphemium_helmet, + && ArmorUtil.checkArmor((EntityPlayer) entity, ModItems.euphemium_helmet, ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots))) { d5 /= d9; d6 /= d9; @@ -254,7 +255,7 @@ public class ExplosionNukeGeneric { d7 = entity.posZ - z; double d9 = MathHelper.sqrt_double(d5 * d5 + d6 * d6 + d7 * d7); if (d9 < wat && !(entity instanceof EntityPlayer - && Library.checkArmor((EntityPlayer) entity, ModItems.euphemium_helmet, + && ArmorUtil.checkArmor((EntityPlayer) entity, ModItems.euphemium_helmet, ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots))) { d5 /= d9; d6 /= d9; diff --git a/com/hbm/explosion/ExplosionThermo.java b/com/hbm/explosion/ExplosionThermo.java index 42b5f96ef..890a730b6 100644 --- a/com/hbm/explosion/ExplosionThermo.java +++ b/com/hbm/explosion/ExplosionThermo.java @@ -4,8 +4,7 @@ import java.util.HashSet; import java.util.List; import com.hbm.blocks.ModBlocks; -import com.hbm.lib.Library; - +import com.hbm.handler.ArmorUtil; import net.minecraft.block.Block; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; @@ -494,7 +493,7 @@ public class ExplosionThermo { if (d9 < wat && !(entity instanceof EntityOcelot) && entity instanceof EntityLivingBase) { - if(!(entity instanceof EntityPlayer && Library.checkForAsbestos((EntityPlayer) entity))) { + if(!(entity instanceof EntityPlayer && ArmorUtil.checkForAsbestos((EntityPlayer) entity))) { ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.weakness.getId(), 15 * 20, 4)); entity.setFire(10); } diff --git a/com/hbm/handler/ArmorUtil.java b/com/hbm/handler/ArmorUtil.java new file mode 100644 index 000000000..260b99569 --- /dev/null +++ b/com/hbm/handler/ArmorUtil.java @@ -0,0 +1,222 @@ +package com.hbm.handler; + +import com.hbm.items.ModItems; +import com.hbm.lib.Library; +import com.hbm.potion.HbmPotion; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; + +public class ArmorUtil { + + public static boolean checkArmor(EntityPlayer player, Item helmet, Item plate, Item legs, Item boots) { + + if(player.inventory.armorInventory[0] != null && + player.inventory.armorInventory[0].getItem() == boots && + player.inventory.armorInventory[1] != null && + player.inventory.armorInventory[1].getItem() == legs && + player.inventory.armorInventory[2] != null && + player.inventory.armorInventory[2].getItem() == plate && + player.inventory.armorInventory[3] != null && + player.inventory.armorInventory[3].getItem() == helmet) + { + return true; + } + + return false; + } + + public static boolean checkArmorPiece(EntityPlayer player, Item armor, int slot) + { + if(player.inventory.armorInventory[slot] != null && + player.inventory.armorInventory[slot].getItem() == armor) + { + return true; + } + + return false; + } + + public static boolean checkArmorNull(EntityPlayer player, int slot) + { + if(player.inventory.armorInventory[slot] == null) + { + return true; + } + + return false; + } + + public static void damageSuit(EntityPlayer player, int slot, int amount) { + + if(player.inventory.armorInventory[slot] == null) + return; + + int j = player.inventory.armorInventory[slot].getItemDamage(); + player.inventory.armorInventory[slot].setItemDamage(j += amount); + + if(player.inventory.armorInventory[slot].getItemDamage() >= player.inventory.armorInventory[slot].getMaxDamage()) + { + player.inventory.armorInventory[slot] = null; + } + } + + public static boolean checkForHazmat(EntityPlayer player) { + + if(checkArmor(player, ModItems.hazmat_helmet, ModItems.hazmat_plate, ModItems.hazmat_legs, ModItems.hazmat_boots) || + checkArmor(player, ModItems.hazmat_helmet_red, ModItems.hazmat_plate_red, ModItems.hazmat_legs_red, ModItems.hazmat_boots_red) || + checkArmor(player, ModItems.hazmat_helmet_grey, ModItems.hazmat_plate_grey, ModItems.hazmat_legs_grey, ModItems.hazmat_boots_grey) || + checkArmor(player, ModItems.t45_helmet, ModItems.t45_plate, ModItems.t45_legs, ModItems.t45_boots) || + checkArmor(player, ModItems.schrabidium_helmet, ModItems.schrabidium_plate, ModItems.schrabidium_legs, ModItems.schrabidium_boots) || + checkForHaz2(player)) { + + return true; + } + + if(player.isPotionActive(HbmPotion.mutation)) + return true; + + return false; + } + + public static boolean checkForHaz2(EntityPlayer player) { + + if(checkArmor(player, ModItems.hazmat_paa_helmet, ModItems.hazmat_paa_plate, ModItems.hazmat_paa_legs, ModItems.hazmat_paa_boots) || + checkArmor(player, ModItems.euphemium_helmet, ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots)) + { + return true; + } + + return false; + } + + public static boolean checkForAsbestos(EntityPlayer player) { + + if(checkArmor(player, ModItems.asbestos_helmet, ModItems.asbestos_plate, ModItems.asbestos_legs, ModItems.asbestos_boots)) + { + return true; + } + + return false; + } + + public static boolean checkForFaraday(EntityPlayer player) { + + ItemStack[] armor = player.inventory.armorInventory; + + if(armor[0] == null || armor[1] == null || armor[2] == null || armor[3] == null) return false; + + if(isFaradayArmor(armor[0].getItem()) && + isFaradayArmor(armor[1].getItem()) && + isFaradayArmor(armor[2].getItem()) && + isFaradayArmor(armor[3].getItem())) + return true; + + return false; + } + + public static final String[] metals = new String[] { + "chainmail", + "iron", + "silver", + "gold", + "platinum", + "tin", + "lead", + "schrabidium", + "euphemium", + "steel", + "cmb", + "titanium", + "alloy", + "copper", + "bronze", + "electrum", + "t45", + "hazmat", //also count because rubber is insulating + "rubber" + }; + + public static boolean isFaradayArmor(Item item) { + + String name = item.getUnlocalizedName(); + + for(String metal : metals) { + + if(name.toLowerCase().contains(metal)) + return true; + } + + return false; + } + + public static boolean checkForGasMask(EntityPlayer player) { + + if(checkArmorPiece(player, ModItems.hazmat_helmet, 3)) + { + return true; + } + if(checkArmorPiece(player, ModItems.hazmat_helmet_red, 3)) + { + return true; + } + if(checkArmorPiece(player, ModItems.hazmat_helmet_grey, 3)) + { + return true; + } + if(checkArmorPiece(player, ModItems.hazmat_paa_helmet, 3)) + { + return true; + } + if(checkArmorPiece(player, ModItems.gas_mask, 3)) + { + return true; + } + if(checkArmorPiece(player, ModItems.gas_mask_m65, 3)) + { + return true; + } + if(checkArmorPiece(player, ModItems.t45_helmet, 3)) + { + return true; + } + if(checkArmorPiece(player, ModItems.schrabidium_helmet, 3)) + { + return true; + } + if(checkArmorPiece(player, ModItems.euphemium_helmet, 3)) + { + return true; + } + + if(player.isPotionActive(HbmPotion.mutation)) + return true; + + return false; + } + + public static boolean checkForGoggles(EntityPlayer player) { + + if(checkArmorPiece(player, ModItems.goggles, 3)) + { + return true; + } + if(checkArmorPiece(player, ModItems.gas_mask, 3)) + { + return true; + } + + return false; + } + + public static boolean checkForFiend(EntityPlayer player) { + + return checkArmorPiece(player, ModItems.jackt, 2) && Library.checkForHeld(player, ModItems.shimmer_sledge); + } + + public static boolean checkForFiend2(EntityPlayer player) { + + return checkArmorPiece(player, ModItems.jackt2, 2) && Library.checkForHeld(player, ModItems.shimmer_axe); + } +} diff --git a/com/hbm/handler/BobmazonOfferFactory.java b/com/hbm/handler/BobmazonOfferFactory.java index 87b885961..640536574 100644 --- a/com/hbm/handler/BobmazonOfferFactory.java +++ b/com/hbm/handler/BobmazonOfferFactory.java @@ -7,7 +7,7 @@ import com.hbm.blocks.ModBlocks; import com.hbm.inventory.gui.GUIScreenBobmazon.Offer; import com.hbm.inventory.gui.GUIScreenBobmazon.Requirement; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import net.minecraft.item.ItemStack; diff --git a/com/hbm/handler/BulletConfigSyncingUtil.java b/com/hbm/handler/BulletConfigSyncingUtil.java index 14312e7b2..998ce12b1 100644 --- a/com/hbm/handler/BulletConfigSyncingUtil.java +++ b/com/hbm/handler/BulletConfigSyncingUtil.java @@ -112,6 +112,11 @@ public class BulletConfigSyncingUtil { public static int SPECIAL_GAUSS_CHARGED = i++; public static int SPECIAL_EMP = i++; + public static int FLAMER_NORMAL = i++; + public static int FLAMER_NAPALM = i++; + public static int FLAMER_WP = i++; + public static int FLAMER_GAS = i++; + public static int G20_NORMAL_FIRE = i++; public static int G20_SHRAPNEL_FIRE = i++; public static int G20_SLUG_FIRE = i++; @@ -228,6 +233,11 @@ public class BulletConfigSyncingUtil { configSet.put(SPECIAL_GAUSS, GunGaussFactory.getGaussConfig()); configSet.put(SPECIAL_GAUSS_CHARGED, GunGaussFactory.getAltConfig()); configSet.put(SPECIAL_EMP, GunEnergyFactory.getOrbusConfig()); + + configSet.put(FLAMER_NORMAL, GunEnergyFactory.getFlameConfig()); + configSet.put(FLAMER_NAPALM, GunEnergyFactory.getNapalmConfig()); + configSet.put(FLAMER_WP, GunEnergyFactory.getPhosphorusConfig()); + configSet.put(FLAMER_GAS, GunEnergyFactory.getGasConfig()); configSet.put(G20_NORMAL_FIRE, Gun20GaugeFactory.get20GaugeConfig().setToFire(3)); configSet.put(G20_SHRAPNEL_FIRE, Gun20GaugeFactory.get20GaugeShrapnelConfig().setToFire(3)); diff --git a/com/hbm/handler/BulletConfiguration.java b/com/hbm/handler/BulletConfiguration.java index 09f77410a..ecf42b1fd 100644 --- a/com/hbm/handler/BulletConfiguration.java +++ b/com/hbm/handler/BulletConfiguration.java @@ -14,6 +14,8 @@ public class BulletConfiguration { //what item this specific configuration consumes public Item ammo; + //how many ammo units one item restores + public int ammoCount = 1; //how fast the bullet is (in sanics per second, or sps) public float velocity; //spread of bullets in gaussian range @@ -81,6 +83,7 @@ public class BulletConfiguration { //vanilla particle FX public String vPFX = ""; + public static final int STYLE_NONE = -1; public static final int STYLE_NORMAL = 0; public static final int STYLE_FLECHETTE = 1; public static final int STYLE_PELLET = 2; diff --git a/com/hbm/handler/FluidTypeHandler.java b/com/hbm/handler/FluidTypeHandler.java index 5d6ad3017..1ce8f0ec4 100644 --- a/com/hbm/handler/FluidTypeHandler.java +++ b/com/hbm/handler/FluidTypeHandler.java @@ -61,7 +61,9 @@ public class FluidTypeHandler { HYDROGEN (0x4286f4, 3, 1, 2, 3, 4, 0, EnumSymbol.CROYGENIC, "hbmfluid.hydrogen"), OXYGEN (0x98bdf9, 4, 1, 2, 3, 0, 0, EnumSymbol.CROYGENIC, "hbmfluid.oxygen"), XENON (0xba45e8, 5, 1, 2, 0, 0, 0, EnumSymbol.ASPHYXIANT, "hbmfluid.xenon"), - BALEFIRE (0x28e02e, 6, 1, 2, 4, 4, 3, EnumSymbol.RADIATION, "hbmfluid.balefire", true, true, false); + BALEFIRE (0x28e02e, 6, 1, 2, 4, 4, 3, EnumSymbol.RADIATION, "hbmfluid.balefire", true, true, false), + + MERCURY (0x808080, 7, 1, 2, 2, 0, 0, EnumSymbol.NONE, "hbmfluid.mercury"); //Approximate HEX Color of the fluid, used for pipe rendering diff --git a/com/hbm/handler/MultiblockHandlerXR.java b/com/hbm/handler/MultiblockHandlerXR.java new file mode 100644 index 000000000..838575f61 --- /dev/null +++ b/com/hbm/handler/MultiblockHandlerXR.java @@ -0,0 +1,147 @@ +package com.hbm.handler; + +import net.minecraft.block.Block; +import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; + +public class MultiblockHandlerXR { + + //when looking north + // U D N S W E + public static int[] uni = new int[] { 3, 0, 4, 4, 4, 4 }; + + public static boolean checkSpace(World world, int x, int y, int z, int[] dim, int ox, int oy, int oz, ForgeDirection dir) { + + if(dim == null || dim.length != 6) + return false; + + int count = 0; + + int[] rot = rotate(dim, dir); + + for(int a = x - rot[4]; a <= x + rot[5]; a++) { + for(int b = y - rot[1]; b <= y + rot[0]; b++) { + for(int c = z - rot[2]; c <= z + rot[3]; c++) { + + //if the position matches the just placed block, the space counts as unoccupied + if(a == ox && b == oy && c == oz) + continue; + + if(!world.getBlock(a, b, c).canPlaceBlockAt(world, a, b, c)) { + return false; + } + + count++; + + if(count > 2000) { + System.out.println("checkspace: ded " + a + " " + b + " " + c + " " + x + " " + y + " " + z); + return false; + } + } + } + } + + return true; + } + + public static void fillSpace(World world, int x, int y, int z, int[] dim, Block block, ForgeDirection dir) { + + if(dim == null || dim.length != 6) + return; + + int count = 0; + + int[] rot = rotate(dim, dir); + + for(int a = x - rot[4]; a <= x + rot[5]; a++) { + for(int b = y - rot[1]; b <= y + rot[0]; b++) { + for(int c = z - rot[2]; c <= z + rot[3]; c++) { + + int meta = 0; + + if(b < y) { + meta = ForgeDirection.DOWN.ordinal(); + } else if(b > y) { + meta = ForgeDirection.UP.ordinal(); + } else if(a < x) { + meta = ForgeDirection.WEST.ordinal(); + } else if(a > x) { + meta = ForgeDirection.EAST.ordinal(); + } else if(c < z) { + meta = ForgeDirection.NORTH.ordinal(); + } else if(c > z) { + meta = ForgeDirection.SOUTH.ordinal(); + } else { + continue; + } + + world.setBlock(a, b, c, block, meta, 3); + + count++; + + if(count > 2000) { + System.out.println("fillspace: ded " + a + " " + b + " " + c + " " + x + " " + y + " " + z); + return; + } + } + } + } + } + + @Deprecated + public static void emptySpace(World world, int x, int y, int z, int[] dim, Block block, ForgeDirection dir) { + + if(dim == null || dim.length != 6) + return; + + int count = 0; + + System.out.println("emptyspace is deprecated and shouldn't even be executed"); + + int[] rot = rotate(dim, dir); + + for(int a = x - rot[4]; a <= x + rot[5]; a++) { + for(int b = y - rot[1]; b <= y + rot[0]; b++) { + for(int c = z - rot[2]; c <= z + rot[3]; c++) { + + if(world.getBlock(a, b, c) == block) + world.setBlockToAir(a, b, c); + + count++; + + if(count > 2000) { + System.out.println("emptyspace: ded " + a + " " + b + " " + c); + return; + } + } + } + } + } + + public static int[] rotate(int[] dim, ForgeDirection dir) { + + if(dim == null) + return null; + + if(dir == ForgeDirection.SOUTH) + return dim; + + if(dir == ForgeDirection.NORTH) { + // U D N S W E + return new int[] { dim[0], dim[1], dim[3], dim[2], dim[5], dim[4] }; + } + + if(dir == ForgeDirection.EAST) { + // U D N S W E + return new int[] { dim[0], dim[1], dim[5], dim[4], dim[2], dim[3] }; + } + + if(dir == ForgeDirection.WEST) { + // U D N S W E + return new int[] { dim[0], dim[1], dim[4], dim[5], dim[3], dim[2] }; + } + + return dim; + } + +} diff --git a/com/hbm/handler/ThreeInts.java b/com/hbm/handler/ThreeInts.java new file mode 100644 index 000000000..ddd9fa7ac --- /dev/null +++ b/com/hbm/handler/ThreeInts.java @@ -0,0 +1,48 @@ +package com.hbm.handler; + +public class ThreeInts implements Comparable { + + public int x; + public int y; + public int z; + + public ThreeInts(int x, int y, int z) { + this.x = x; + this.y = y; + this.z = z; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + x; + result = prime * result + y; + result = prime * result + z; + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + ThreeInts other = (ThreeInts) obj; + if (x != other.x) + return false; + if (y != other.y) + return false; + if (z != other.z) + return false; + return true; + } + + @Override + public int compareTo(Object o) { + + return equals(o) ? 0 : 1; + } +} diff --git a/com/hbm/handler/ToolAbility.java b/com/hbm/handler/ToolAbility.java new file mode 100644 index 000000000..b5591b212 --- /dev/null +++ b/com/hbm/handler/ToolAbility.java @@ -0,0 +1,228 @@ +package com.hbm.handler; + +import java.util.Collections; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + +import com.hbm.inventory.MachineRecipes; +import com.hbm.items.ModItems; +import com.hbm.items.tool.ItemToolAbility; + +import net.minecraft.block.Block; +import net.minecraft.client.resources.I18n; +import net.minecraft.entity.item.EntityItem; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.item.crafting.FurnaceRecipes; +import net.minecraft.util.Vec3; +import net.minecraft.world.World; +import scala.actors.threadpool.Arrays; + +public abstract class ToolAbility { + + public abstract void onDig(World world, int x, int y, int z, EntityPlayer player, Block block, int meta, ItemToolAbility tool); + public abstract String getName(); + public abstract String getFullName(); + + public static class RecursionAbility extends ToolAbility { + + int radius; + + public RecursionAbility(int radius) { + this.radius = radius; + } + + private Set pos = new HashSet(); + + @Override + public void onDig(World world, int x, int y, int z, EntityPlayer player, Block block, int meta, ItemToolAbility tool) { + + List indices = Arrays.asList(new Integer[] {0, 1, 2, 3, 4, 5}); + Collections.shuffle(indices); + + pos.clear(); + + for(Integer i : indices) { + switch(i) { + case 0: breakExtra(world, x + 1, y, z, x, y, z, player, tool); break; + case 1: breakExtra(world, x - 1, y, z, x, y, z, player, tool); break; + case 2: breakExtra(world, x, y + 1, z, x, y, z, player, tool); break; + case 3: breakExtra(world, x, y - 1, z, x, y, z, player, tool); break; + case 4: breakExtra(world, x, y, z + 1, x, y, z, player, tool); break; + case 5: breakExtra(world, x, y, z - 1, x, y, z, player, tool); break; + } + } + } + + private void breakExtra(World world, int x, int y, int z, int refX, int refY, int refZ, EntityPlayer player, ItemToolAbility tool) { + + if(pos.contains(new ThreeInts(x, y, z))) + return; + + pos.add(new ThreeInts(x, y, z)); + + //don't lose the ref block just yet + if(x == refX && y == refY && z == refZ) + return; + + if(Vec3.createVectorHelper(x - refX, y - refY, z - refZ).lengthVector() > radius) + return; + + Block b = world.getBlock(x, y, z); + Block ref = world.getBlock(refX, refY, refZ); + int meta = world.getBlockMetadata(x, y, z); + int refMeta = world.getBlockMetadata(refX, refY, refZ); + + if(b != ref) + return; + + if(meta != refMeta) + return; + + if(player.getHeldItem() == null) + return; + + tool.breakExtraBlock(world, x, y, z, player, refX, refY, refZ); + + List indices = Arrays.asList(new Integer[] {0, 1, 2, 3, 4, 5}); + Collections.shuffle(indices); + + for(Integer i : indices) { + switch(i) { + case 0: breakExtra(world, x + 1, y, z, refX, refY, refZ, player, tool); break; + case 1: breakExtra(world, x - 1, y, z, refX, refY, refZ, player, tool); break; + case 2: breakExtra(world, x, y + 1, z, refX, refY, refZ, player, tool); break; + case 3: breakExtra(world, x, y - 1, z, refX, refY, refZ, player, tool); break; + case 4: breakExtra(world, x, y, z + 1, refX, refY, refZ, player, tool); break; + case 5: breakExtra(world, x, y, z - 1, refX, refY, refZ, player, tool); break; + } + } + } + + @Override + public String getName() { + return "tool.ability.recursion"; + } + + @Override + public String getFullName() { + return I18n.format(getName()) + " (" + radius + ")"; + } + + } + + public static class HammerAbility extends ToolAbility { + + int range; + + public HammerAbility(int range) { + this.range = range; + } + + @Override + public void onDig(World world, int x, int y, int z, EntityPlayer player, Block block, int meta, ItemToolAbility tool) { + + for(int a = x - range; a <= x + range; a++) { + for(int b = y - range; b <= y + range; b++) { + for(int c = z - range; c <= z + range; c++) { + + if(a == x && b == y && c == z) + continue; + + tool.breakExtraBlock(world, a, b ,c, player, x, y, z); + } + } + } + } + + @Override + public String getName() { + return "tool.ability.hammer"; + } + + @Override + public String getFullName() { + return I18n.format(getName()) + " (" + range + ")"; + } + } + + public static class SmelterAbility extends ToolAbility { + + @Override + public void onDig(World world, int x, int y, int z, EntityPlayer player, Block block, int meta, ItemToolAbility tool) { + + ItemStack stack = new ItemStack(block, 1, meta); + ItemStack result = FurnaceRecipes.smelting().getSmeltingResult(stack); + + if(result != null) { + world.setBlockToAir(x, y, z); + world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, result.copy())); + } + } + + @Override + public String getName() { + return "tool.ability.smelter"; + } + + @Override + public String getFullName() { + return I18n.format(getName()); + } + } + + public static class ShredderAbility extends ToolAbility { + + @Override + public void onDig(World world, int x, int y, int z, EntityPlayer player, Block block, int meta, ItemToolAbility tool) { + + ItemStack stack = new ItemStack(block, 1, meta); + ItemStack result = MachineRecipes.getShredderResult(stack); + + if(result != null && result.getItem() != ModItems.scrap) { + world.setBlockToAir(x, y, z); + world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, result.copy())); + } + } + + @Override + public String getName() { + return "tool.ability.shredder"; + } + + @Override + public String getFullName() { + return I18n.format(getName()); + } + } + + public static class CentrifugeAbility extends ToolAbility { + + @Override + public void onDig(World world, int x, int y, int z, EntityPlayer player, Block block, int meta, ItemToolAbility tool) { + + ItemStack stack = new ItemStack(block, 1, meta); + ItemStack[] result = MachineRecipes.getCentrifugeProcessingResult(stack); + + if(result != null) { + world.setBlockToAir(x, y, z); + + for(ItemStack st : result) { + if(st != null) + world.spawnEntityInWorld(new EntityItem(world, x + 0.5, y + 0.5, z + 0.5, st.copy())); + } + } + } + + @Override + public String getName() { + return "tool.ability.centrifuge"; + } + + @Override + public String getFullName() { + return I18n.format(getName()); + } + } +} \ No newline at end of file diff --git a/com/hbm/handler/guncfg/BulletConfigFactory.java b/com/hbm/handler/guncfg/BulletConfigFactory.java index ac2069808..8d9be9186 100644 --- a/com/hbm/handler/guncfg/BulletConfigFactory.java +++ b/com/hbm/handler/guncfg/BulletConfigFactory.java @@ -3,6 +3,7 @@ package com.hbm.handler.guncfg; import java.util.List; import com.hbm.entity.projectile.EntityBulletBase; +import com.hbm.handler.ArmorUtil; import com.hbm.handler.BulletConfiguration; import com.hbm.interfaces.IBulletImpactBehavior; import com.hbm.items.ModItems; @@ -14,7 +15,9 @@ import com.hbm.potion.HbmPotion; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.potion.Potion; import net.minecraft.potion.PotionEffect; import net.minecraft.util.AxisAlignedBB; @@ -180,7 +183,7 @@ public class BulletConfigFactory { return bullet; } - public static IBulletImpactBehavior getPhosphorousEffect(final int radius, final int duration) { + public static IBulletImpactBehavior getPhosphorousEffect(final int radius, final int duration, final int count, final double motion) { IBulletImpactBehavior impact = new IBulletImpactBehavior() { @@ -206,8 +209,52 @@ public class BulletConfigFactory { NBTTagCompound data = new NBTTagCompound(); data.setString("type", "vanillaburst"); data.setString("mode", "flame"); - data.setInteger("count", 100); - data.setDouble("motion", 0.5D); + data.setInteger("count", count); + data.setDouble("motion", motion); + + PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, bullet.posX, bullet.posY, bullet.posZ), new TargetPoint(bullet.dimension, bullet.posX, bullet.posY, bullet.posZ, 50)); + } + }; + + return impact; + } + + public static IBulletImpactBehavior getGasEffect(final int radius, final int duration) { + + IBulletImpactBehavior impact = new IBulletImpactBehavior() { + + @Override + public void behaveBlockHit(EntityBulletBase bullet, int x, int y, int z) { + + List hit = bullet.worldObj.getEntitiesWithinAABBExcludingEntity(bullet, AxisAlignedBB.getBoundingBox(bullet.posX - radius, bullet.posY - radius, bullet.posZ - radius, bullet.posX + radius, bullet.posY + radius, bullet.posZ + radius)); + + for(Entity e : hit) { + + if(!Library.isObstructed(bullet.worldObj, bullet.posX, bullet.posY, bullet.posZ, e.posX, e.posY + e.getEyeHeight(), e.posZ)) { + + if(e instanceof EntityLivingBase) { + + if(e instanceof EntityPlayer && ArmorUtil.checkForGasMask((EntityPlayer) e)) + continue; + + PotionEffect eff0 = new PotionEffect(Potion.poison.id, duration, 2, true); + PotionEffect eff1 = new PotionEffect(Potion.digSlowdown.id, duration, 2, true); + PotionEffect eff2 = new PotionEffect(Potion.weakness.id, duration, 4, true); + eff0.getCurativeItems().clear(); + eff1.getCurativeItems().clear(); + eff2.getCurativeItems().clear(); + ((EntityLivingBase)e).addPotionEffect(eff0); + ((EntityLivingBase)e).addPotionEffect(eff1); + ((EntityLivingBase)e).addPotionEffect(eff2); + } + } + } + + NBTTagCompound data = new NBTTagCompound(); + data.setString("type", "vanillaburst"); + data.setString("mode", "cloud"); + data.setInteger("count", 15); + data.setDouble("motion", 0.1D); PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, bullet.posX, bullet.posY, bullet.posZ), new TargetPoint(bullet.dimension, bullet.posX, bullet.posY, bullet.posZ, 50)); } diff --git a/com/hbm/handler/guncfg/GunEnergyFactory.java b/com/hbm/handler/guncfg/GunEnergyFactory.java index 17ce170b1..8ca7d934d 100644 --- a/com/hbm/handler/guncfg/GunEnergyFactory.java +++ b/com/hbm/handler/guncfg/GunEnergyFactory.java @@ -2,12 +2,18 @@ package com.hbm.handler.guncfg; import java.util.ArrayList; +import com.hbm.entity.projectile.EntityBulletBase; import com.hbm.handler.BulletConfigSyncingUtil; import com.hbm.handler.BulletConfiguration; import com.hbm.handler.GunConfiguration; +import com.hbm.interfaces.IBulletImpactBehavior; import com.hbm.items.ModItems; +import com.hbm.packet.AuxParticlePacketNT; +import com.hbm.packet.PacketDispatcher; import com.hbm.render.util.RenderScreenOverlay.Crosshair; +import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.potion.Potion; import net.minecraft.potion.PotionEffect; @@ -43,6 +49,46 @@ public class GunEnergyFactory { return config; } + public static GunConfiguration getFlamerConfig() { + + GunConfiguration config = new GunConfiguration(); + + config.rateOfFire = 1; + config.roundsPerCycle = 1; + config.gunMode = GunConfiguration.MODE_NORMAL; + config.firingMode = GunConfiguration.FIRE_AUTO; + config.hasReloadAnim = false; + config.hasFiringAnim = false; + config.hasSpinup = false; + config.hasSpindown = false; + config.reloadDuration = 20; + config.reloadSoundEnd = false; + config.firingDuration = 0; + config.ammoCap = 100; + config.durability = 1000; + config.reloadType = GunConfiguration.RELOAD_FULL; + config.allowsInfinity = true; + config.crosshair = Crosshair.L_CIRCLE; + config.firingSound = "hbm:weapon.immolatorShoot"; + config.reloadSound = "hbm:weapon.flamerReload"; + + config.name = "Heavy Duty Flamer"; + config.manufacturer = "MWT Prototype Labs"; + + config.comment.add("Dragon-slaying: Advanced techniques, part 1:"); + config.comment.add("Try not to get eaten by the dragon."); + config.comment.add(""); + config.comment.add("Hope that helps."); + + config.config = new ArrayList(); + config.config.add(BulletConfigSyncingUtil.FLAMER_NORMAL); + config.config.add(BulletConfigSyncingUtil.FLAMER_NAPALM); + config.config.add(BulletConfigSyncingUtil.FLAMER_WP); + config.config.add(BulletConfigSyncingUtil.FLAMER_GAS); + + return config; + } + public static BulletConfiguration getOrbusConfig() { BulletConfiguration bullet = new BulletConfiguration(); @@ -71,4 +117,98 @@ public class GunEnergyFactory { return bullet; } + + public static BulletConfiguration getFlameConfig() { + + BulletConfiguration bullet = new BulletConfiguration(); + + bullet.ammo = ModItems.ammo_fuel; + bullet.ammoCount = 100; + + bullet.velocity = 0.75F; + bullet.spread = 0.025F; + bullet.wear = 1; + bullet.bulletsMin = 3; + bullet.bulletsMax = 5; + bullet.dmgMin = 2; + bullet.dmgMax = 4; + bullet.gravity = 0.01D; + bullet.maxAge = 60; + bullet.doesRicochet = false; + bullet.doesPenetrate = true; + bullet.doesBreakGlass = false; + bullet.style = BulletConfiguration.STYLE_NONE; + bullet.plink = BulletConfiguration.PLINK_NONE; + bullet.vPFX = "flame"; + bullet.incendiary = 10; + + bullet.bImpact = new IBulletImpactBehavior() { + + @Override + public void behaveBlockHit(EntityBulletBase bullet, int x, int y, int z) { + + NBTTagCompound data = new NBTTagCompound(); + data.setString("type", "vanillaburst"); + data.setString("mode", "flame"); + data.setInteger("count", 15); + data.setDouble("motion", 0.1D); + + PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, bullet.posX, bullet.posY, bullet.posZ), new TargetPoint(bullet.dimension, bullet.posX, bullet.posY, bullet.posZ, 50)); + } + }; + + return bullet; + } + + public static BulletConfiguration getNapalmConfig() { + + BulletConfiguration bullet = getFlameConfig(); + + bullet.ammo = ModItems.ammo_fuel_napalm; + bullet.wear = 2; + bullet.dmgMin = 4; + bullet.dmgMax = 6; + bullet.maxAge = 200; + + return bullet; + } + + public static BulletConfiguration getPhosphorusConfig() { + + BulletConfiguration bullet = getFlameConfig(); + + bullet.ammo = ModItems.ammo_fuel_phosphorus; + bullet.wear = 2; + bullet.spread = 0.0F; + bullet.bulletsMin = 1; + bullet.bulletsMax = 1; + bullet.dmgMin = 4; + bullet.dmgMax = 6; + bullet.maxAge = 200; + bullet.vPFX = "smoke"; + + bullet.bImpact = BulletConfigFactory.getPhosphorousEffect(5, 60 * 20, 25, 0.25); + + return bullet; + } + + public static BulletConfiguration getGasConfig() { + + BulletConfiguration bullet = getFlameConfig(); + + bullet.ammo = ModItems.ammo_fuel_gas; + bullet.wear = 1; + bullet.spread = 0.05F; + bullet.gravity = 0D; + bullet.bulletsMin = 5; + bullet.bulletsMax = 7; + bullet.dmgMin = 0; + bullet.dmgMax = 0; + bullet.vPFX = "cloud"; + bullet.incendiary = 0; + + bullet.bImpact = BulletConfigFactory.getGasEffect(5, 60 * 20); + + return bullet; + } } diff --git a/com/hbm/handler/guncfg/GunGrenadeFactory.java b/com/hbm/handler/guncfg/GunGrenadeFactory.java index 506c91f48..77c7698f3 100644 --- a/com/hbm/handler/guncfg/GunGrenadeFactory.java +++ b/com/hbm/handler/guncfg/GunGrenadeFactory.java @@ -107,7 +107,7 @@ public class GunGrenadeFactory { bullet.trail = 0; bullet.incendiary = 2; - bullet.bImpact = BulletConfigFactory.getPhosphorousEffect(10, 60 * 20); + bullet.bImpact = BulletConfigFactory.getPhosphorousEffect(10, 60 * 20, 100, 0.5D); return bullet; } diff --git a/com/hbm/handler/guncfg/GunRocketFactory.java b/com/hbm/handler/guncfg/GunRocketFactory.java index 8525b9c75..3f166b430 100644 --- a/com/hbm/handler/guncfg/GunRocketFactory.java +++ b/com/hbm/handler/guncfg/GunRocketFactory.java @@ -277,7 +277,7 @@ public class GunRocketFactory { bullet.incendiary = 5; bullet.trail = 9; - bullet.bImpact = BulletConfigFactory.getPhosphorousEffect(10, 60 * 20); + bullet.bImpact = BulletConfigFactory.getPhosphorousEffect(10, 60 * 20, 100, 0.5D); return bullet; } diff --git a/com/hbm/handler/nei/ModInfoHandler.java b/com/hbm/handler/nei/ModInfoHandler.java deleted file mode 100644 index 90d008eeb..000000000 --- a/com/hbm/handler/nei/ModInfoHandler.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.hbm.handler.nei; - -import java.util.Arrays; -import java.util.List; -import java.util.Map; - -import com.hbm.inventory.MachineRecipes; -import com.hbm.lib.RefStrings; - -import codechicken.nei.NEIServerUtils; -import codechicken.nei.PositionedStack; -import codechicken.nei.recipe.TemplateRecipeHandler; -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.FontRenderer; -import net.minecraft.item.ItemStack; - -public class ModInfoHandler extends TemplateRecipeHandler { - - public class SmeltingSet extends TemplateRecipeHandler.CachedRecipe - { - PositionedStack item; - - public SmeltingSet(ItemStack item) { - item.stackSize = 1; - this.item = new PositionedStack(item, 129 - 54, 24 - 17); - } - - @Override - public List getIngredients() { - return getCycledIngredients(cycleticks / 48, Arrays.asList(new PositionedStack[] {item})); - } - - @Override - public PositionedStack getResult() { - return item; - } - } - - @Override - public String getRecipeName() { - return "Mod Info"; - } - - @Override - public String getGuiTexture() { - return RefStrings.MODID + ":textures/gui/gui_info.png"; - } - - @Override - public void loadCraftingRecipes(String outputId, Object... results) { - if ((outputId.equals("hbminfo")) && getClass() == ModInfoHandler.class) { - Map recipes = MachineRecipes.instance().getItemInfo(); - for (Map.Entry recipe : recipes.entrySet()) { - this.arecipes.add(new SmeltingSet((ItemStack)recipe.getKey())); - } - } else { - super.loadCraftingRecipes(outputId, results); - } - } - - @Override - public void loadCraftingRecipes(ItemStack result) { - Map recipes = MachineRecipes.instance().getItemInfo(); - for (Map.Entry recipe : recipes.entrySet()) { - if (NEIServerUtils.areStacksSameType((ItemStack)recipe.getKey(), result)) - this.arecipes.add(new SmeltingSet((ItemStack)recipe.getKey())); - } - } - - @Override - public void loadUsageRecipes(String inputId, Object... ingredients) { - if ((inputId.equals("hbminfo")) && getClass() == ModInfoHandler.class) { - loadCraftingRecipes("hbminfo", new Object[0]); - } else { - super.loadUsageRecipes(inputId, ingredients); - } - } - - @Override - public void loadUsageRecipes(ItemStack ingredient) { - Map recipes = MachineRecipes.instance().getItemInfo(); - for (Map.Entry recipe : recipes.entrySet()) { - if (NEIServerUtils.areStacksSameType(ingredient, (ItemStack)recipe.getKey())) - this.arecipes.add(new SmeltingSet((ItemStack)recipe.getKey())); - } - } - - FontRenderer font = Minecraft.getMinecraft().fontRenderer; - - @Override - public void drawExtras(int recipe) { - ItemStack stack = arecipes.get(recipe).getResult().item; - String[] strings = MachineRecipes.instance().getInfoFromItem(stack); - - font.drawString(stack.getDisplayName() + ":", 5, 24 + 5, 4210752); - - for(int i = 0; i < strings.length; i++) - font.drawString(strings[i], 5 + 3, 34 + 5 + 10 * i, 4210752); - } - - @Override - public TemplateRecipeHandler newInstance() { - return super.newInstance(); - } -} diff --git a/com/hbm/interfaces/Spaghetti.java b/com/hbm/interfaces/Spaghetti.java index 93f356ef2..eb9542b6f 100644 --- a/com/hbm/interfaces/Spaghetti.java +++ b/com/hbm/interfaces/Spaghetti.java @@ -1,7 +1,7 @@ package com.hbm.interfaces; //Universal notation for shitty code -// know TODO is a thing, but it's nice to hover over a class and see wtf is wrong with it +//I know TODO is a thing, but it's nice to hover over a class and see wtf is wrong with it public @interface Spaghetti { public String value(); diff --git a/com/hbm/inventory/FluidContainerRegistry.java b/com/hbm/inventory/FluidContainerRegistry.java index beb11bd58..209bb1e9f 100644 --- a/com/hbm/inventory/FluidContainerRegistry.java +++ b/com/hbm/inventory/FluidContainerRegistry.java @@ -11,27 +11,13 @@ public class FluidContainerRegistry { public static final FluidContainerRegistry instance = new FluidContainerRegistry(); + //TODO: somehow incorporate hashmaps into this List allContainers = new ArrayList(); public void registerContainer(FluidContainer con) { allContainers.add(con); } - /*public static boolean containsFluid(ItemStack stack, FluidType type) { - if(stack == null) - return false; - - ItemStack sta = stack.copy(); - sta.stackSize = 1; - - for(FluidContainer container : instance.allContainers) { - if(container.type == type && getEmptyContainer(sta) != null) - return container.content > 0; - } - - return false; - }*/ - public static int getFluidContent(ItemStack stack, FluidType type) { if(stack == null) diff --git a/com/hbm/inventory/FluidTank.java b/com/hbm/inventory/FluidTank.java index 96f73d439..5694c62d1 100644 --- a/com/hbm/inventory/FluidTank.java +++ b/com/hbm/inventory/FluidTank.java @@ -3,11 +3,11 @@ package com.hbm.inventory; import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.inventory.gui.GuiInfoContainer; import com.hbm.items.ModItems; -import com.hbm.items.gear.JetpackBooster; -import com.hbm.items.gear.JetpackBreak; -import com.hbm.items.gear.JetpackRegular; -import com.hbm.items.gear.JetpackVectorized; -import com.hbm.items.tool.ItemFluidIdentifier; +import com.hbm.items.armor.JetpackBooster; +import com.hbm.items.armor.JetpackBreak; +import com.hbm.items.armor.JetpackRegular; +import com.hbm.items.armor.JetpackVectorized; +import com.hbm.items.machine.ItemFluidIdentifier; import com.hbm.lib.RefStrings; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.TEFluidPacket; diff --git a/com/hbm/inventory/MachineRecipes.java b/com/hbm/inventory/MachineRecipes.java index 0565c2de5..ccdd332b5 100644 --- a/com/hbm/inventory/MachineRecipes.java +++ b/com/hbm/inventory/MachineRecipes.java @@ -9,11 +9,11 @@ import com.hbm.blocks.ModBlocks; import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.interfaces.Spaghetti; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; -import com.hbm.items.tool.ItemAssemblyTemplate; -import com.hbm.items.tool.ItemAssemblyTemplate.EnumAssemblyTemplate; -import com.hbm.items.tool.ItemChemistryTemplate; -import com.hbm.items.tool.ItemFluidIcon; +import com.hbm.items.machine.ItemAssemblyTemplate; +import com.hbm.items.machine.ItemBattery; +import com.hbm.items.machine.ItemChemistryTemplate; +import com.hbm.items.machine.ItemFluidIcon; +import com.hbm.items.machine.ItemAssemblyTemplate.EnumAssemblyTemplate; import com.hbm.main.MainRegistry; import net.minecraft.enchantment.Enchantment; @@ -24,6 +24,8 @@ import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.oredict.OreDictionary; +//TODO: clean this shit up +@Spaghetti("everything") public class MachineRecipes { public MachineRecipes() { @@ -100,21 +102,16 @@ public class MachineRecipes { return new ItemStack(ModItems.ingot_dura_steel, 2); } - if (mODE(item, new String[] {"ingotSteel", "dustSteel"}) && item2.getItem() == ModItems.powder_cobalt - || item.getItem() == ModItems.powder_cobalt && mODE(item2, new String[] {"ingotSteel", "dustSteel"})) { + if (mODE(item, new String[] {"ingotSteel", "dustSteel"}) && mODE(item2, new String[] {"ingotCobalt", "dustCobalt"}) + || mODE(item, new String[] {"ingotCobalt", "dustCobalt"}) && mODE(item2, new String[] {"ingotSteel", "dustSteel"})) { return new ItemStack(ModItems.ingot_dura_steel, 2); } - if (mODE(item, new String[] {"ingotDuraSteel", "dustDuraSteel"}) && item2.getItem() == ModItems.powder_meteorite - || item.getItem() == ModItems.powder_meteorite && mODE(item2, new String[] {"ingotDuraSteel", "dustDuraSteel"})) { + if (mODE(item, new String[] {"ingotSaturnite", "dustSaturnite"}) && item2.getItem() == ModItems.powder_meteorite + || item.getItem() == ModItems.powder_meteorite && mODE(item2, new String[] {"ingotSaturnite", "dustSaturnite"})) { return new ItemStack(ModItems.ingot_starmetal, 2); } - if (mODE(item, new String[] {"dustCobalt"}) && item2.getItem() == ModItems.ingot_starmetal - || item.getItem() == ModItems.ingot_starmetal && mODE(item2, new String[] {"dustCobalt"})) { - return new ItemStack(ModItems.ingot_saturnite, 2); - } - return null; } @@ -246,38 +243,14 @@ public class MachineRecipes { return plutoniumF; } - /*if (item.getItem() == ModItems.rod_dual_plutonium_fuel_depleted) { - return plutonium2; - } - - if (item.getItem() == ModItems.rod_quad_plutonium_fuel_depleted) { - return plutonium3; - }*/ - if (item.getItem() == ModItems.waste_mox) { return moxF; } - /*if (item.getItem() == ModItems.rod_dual_mox_fuel_depleted) { - return mox2; - } - - if (item.getItem() == ModItems.rod_quad_mox_fuel_depleted) { - return mox3; - }*/ - if (item.getItem() == ModItems.waste_schrabidium) { return schrabidiumF; } - /*if (item.getItem() == ModItems.rod_dual_schrabidium_fuel_depleted) { - return schrabidium2; - } - - if (item.getItem() == ModItems.rod_quad_schrabidium_fuel_depleted) { - return schrabidium3; - }*/ - if (item.getItem() == ModItems.powder_cloud) { return cloud; } @@ -376,10 +349,19 @@ public class MachineRecipes { if (item.getItem() == Item.getItemFromBlock(ModBlocks.ore_nether_fire)) { return new ItemStack[] { - new ItemStack(Items.blaze_powder), - new ItemStack(Items.blaze_powder), + new ItemStack(Items.blaze_powder, 2), + new ItemStack(ModItems.powder_fire, 2), new ItemStack(ModItems.ingot_phosphorus), - new ItemStack(Blocks.netherrack), + new ItemStack(Blocks.netherrack) + }; + } + + if (item.getItem() == Items.blaze_rod) { + return new ItemStack[] { + new ItemStack(Items.blaze_powder, 1), + new ItemStack(Items.blaze_powder, 1), + new ItemStack(ModItems.powder_fire, 1), + new ItemStack(ModItems.powder_fire, 1) }; } @@ -676,9 +658,6 @@ public class MachineRecipes { if(input.getItem() == ModItems.assembly_nopip) return new ItemStack(ModItems.ammo_44); - - //if(input.getItem() == ModItems.ammo_rocket) - // return new ItemStack(ModItems.ammo_44_rocket); } if(stamp.getItem() == ModItems.stamp_9) { @@ -691,9 +670,6 @@ public class MachineRecipes { return new ItemStack(ModItems.gun_mp_ammo); if(input.getItem() == ModItems.assembly_lacunae) return new ItemStack(ModItems.ammo_5mm); - - //if(input.getItem() == ModItems.ammo_rocket) - // return new ItemStack(ModItems.ammo_9mm_rocket); } if(stamp.getItem() == ModItems.stamp_50) { @@ -1222,12 +1198,10 @@ public class MachineRecipes { getFurnaceOutput(new ItemStack(ModItems.plate_mixed), new ItemStack(ModItems.plate_gold)).copy()); recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_steel), new ItemStack(ModItems.ingot_tungsten) }, getFurnaceOutput(new ItemStack(ModItems.ingot_steel), new ItemStack(ModItems.ingot_tungsten)).copy()); - recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_steel), new ItemStack(ModItems.powder_cobalt) }, - getFurnaceOutput(new ItemStack(ModItems.ingot_steel), new ItemStack(ModItems.powder_cobalt)).copy()); - recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_dura_steel), new ItemStack(ModItems.powder_meteorite) }, - getFurnaceOutput(new ItemStack(ModItems.ingot_dura_steel), new ItemStack(ModItems.powder_meteorite)).copy()); - recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_starmetal), new ItemStack(ModItems.powder_cobalt) }, - getFurnaceOutput(new ItemStack(ModItems.ingot_starmetal), new ItemStack(ModItems.powder_cobalt)).copy()); + recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_steel), new ItemStack(ModItems.ingot_cobalt) }, + getFurnaceOutput(new ItemStack(ModItems.ingot_steel), new ItemStack(ModItems.ingot_cobalt)).copy()); + recipes.put(new ItemStack[] { new ItemStack(ModItems.ingot_saturnite), new ItemStack(ModItems.powder_meteorite) }, + getFurnaceOutput(new ItemStack(ModItems.ingot_saturnite), new ItemStack(ModItems.powder_meteorite)).copy()); } catch (Exception x) { MainRegistry.logger.error("Unable to register alloy recipes for NEI!"); } @@ -1314,6 +1288,8 @@ public class MachineRecipes { getCentrifugeOutput(new ItemStack(ModBlocks.block_euphemium_cluster))); recipes.put(new ItemStack(ModBlocks.ore_nether_fire), getCentrifugeOutput(new ItemStack(ModBlocks.ore_nether_fire))); + recipes.put(new ItemStack(Items.blaze_rod), + getCentrifugeOutput(new ItemStack(Items.blaze_rod))); return recipes; } @@ -5052,6 +5028,10 @@ public class MachineRecipes { list.add(new ItemStack(ModItems.niter, 1)); list.add(new ItemStack(Items.redstone, 1)); break; + case SATURN: + list.add(new ItemStack(ModItems.powder_dura_steel, 1)); + list.add(new ItemStack(ModItems.powder_fire, 1)); + break; default: break; } @@ -5245,6 +5225,10 @@ public class MachineRecipes { case XENON: input[0] = new FluidStack(0, FluidType.NONE); break; + case SATURN: + input[0] = new FluidStack(100, FluidType.ACID); + input[1] = new FluidStack(200, FluidType.MERCURY); + break; default: break; } @@ -5365,6 +5349,9 @@ public class MachineRecipes { case SOLID_FUEL: output[0] = new ItemStack(ModItems.rocket_fuel, 1); break; + case SATURN: + output[0] = new ItemStack(ModItems.ingot_saturnite, 1); + break; default: break; } @@ -5492,194 +5479,6 @@ public class MachineRecipes { return output; } - public String[] getInfoFromItem(ItemStack stack) { - stack.stackSize = 1; - - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.asphalt)) - return new String[] { "Explosion resisant block", "Made from bitumen" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_uranium)) - return new String[] { "Block of uranium ore", "Found below Y:25" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_titanium)) - return new String[] { "Block of titanium ore", "Found below Y:35" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_sulfur)) - return new String[] { "Block of sulfur ore", "Found below Y:35", "Drops as sulfur dust" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_niter)) - return new String[] { "Block of niter ore", "Found below Y:35", "Drops as niter dust" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_copper)) - return new String[] { "Block of copper ore", "Found below Y:50" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_tungsten)) - return new String[] { "Block of tungsten ore", "Found below Y:35" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_aluminium)) - return new String[] { "Block of aluminium ore", "Found below Y:45" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_fluorite)) - return new String[] { "Block of fluorite ore", "Found below Y:40" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_beryllium)) - return new String[] { "Block of beryllium ore", "Found below Y:35" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_lead)) - return new String[] { "Block of lead ore", "Found below Y:35" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_oil)) - return new String[] { "Block of oil deposit", "Found below Y:25", "Spawns in large bubbles", "Exctractable via oil derrick" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_schrabidium)) - return new String[] { "Block of schrabidium ore", "Does not spawn naturally", "Created by nukes near uranium" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_australium)) - return new String[] { "Block of australium ore", "Found between Y:15 and Y:30", "Deposit location: X:-400, Z:-400" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_weidanium)) - return new String[] { "Block of weidanium ore", "Found below Y:25", "Deposit location: X:0, Z:300" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_reiium)) - return new String[] { "Block of reiium ore", "Found below Y:35", "Deposit location: X:0, Z:0" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_unobtainium)) - return new String[] { "Block of unobtainium ore", "Found below Y:128", "Deposit location: X:200, Z:200" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_daffergon)) - return new String[] { "Block of daffergon ore", "Found below Y:10", "Deposit location: X:400, Z:-200" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_verticium)) - return new String[] { "Block of verticium ore", "Found between Y:25 and Y:50", "Deposit location: X:-300, Z:200" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_nether_uranium)) - return new String[] { "Block of uranium ore", "Only found in the nether" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_nether_plutonium)) - return new String[] { "Block of plutonium ore", "Only found in the nether", "Disabled in config by default" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_nether_tungsten)) - return new String[] { "Block of tungsten ore", "Only found in the nether" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_nether_sulfur)) - return new String[] { "Block of sulfur ore", "Only found in the nether" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_nether_fire)) - return new String[] { "Block of fire ore", "Only found in the nether", "Drops blaze or fire powder" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.ore_nether_schrabidium)) - return new String[] { "Block of schrabidium ore", "Does not spawn naturally" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.reinforced_brick)) - return new String[] { "Reinforced block", "Withstands nuclear explosions" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.reinforced_glass)) - return new String[] { "Reinforced block", "Withstands nuclear explosions" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.reinforced_light)) - return new String[] { "Reinforced block", "Withstands nuclear explosions" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.reinforced_sand)) - return new String[] { "Reinforced block", "Withstands nuclear explosions" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.reinforced_lamp_off)) - return new String[] { "Reinforced block", "Withstands nuclear explosions" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.brick_concrete)) - return new String[] { "Reinforced block", "Mostly withstands nukes" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.brick_obsidian)) - return new String[] { "Reinforced block", "Greatly withstands nukes" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.brick_light)) - return new String[] { "Reinforced block", "Barely withstands nukes" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.cmb_brick)) - return new String[] { "Reinforced block", "Withstands nuclear explosions" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.cmb_brick_reinforced)) - return new String[] { "Reinforced block", "Withstands nuclear explosions" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.cmb_brick_reinforced)) - return new String[] { "Reinforced block", "Withstands nuclear explosions" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.block_meteor)) - return new String[] { "Only found on space ships", "Used for late-game reactors", "Sometimes drops angry metal" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.tape_recorder)) - return new String[] { "Decorative block" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.steel_poles)) - return new String[] { "Decorative block" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.pole_top)) - return new String[] { "Decorative block" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.pole_satellite_receiver)) - return new String[] { "Decorative block" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.steel_wall)) - return new String[] { "Decorative block" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.steel_corner)) - return new String[] { "Decorative block" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.steel_roof)) - return new String[] { "Decorative block" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.steel_beam)) - return new String[] { "Decorative block" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.steel_scaffold)) - return new String[] { "Decorative block" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.mush)) - return new String[] { "Only grows on dead grass", "or on glowing mycelium", "Spreads" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.waste_earth)) - return new String[] { "Radioactive grass", "Created by nuclear explosions" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.waste_mycelium)) - return new String[] { "Radioactive mycelium", "Spreads onto dirt blocks", "Spread disabled by default" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.waste_trinitite)) - return new String[] { "Radioactive sand ore", "Created by nuclear explosions", "Drops trinitite" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.waste_trinitite_red)) - return new String[] { "Radioactive sand ore", "Created by nuclear explosions", "Drops trinitite" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.waste_log)) - return new String[] { "Burnt log block", "Created by nuclear explosions", "Drops charcoal" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.waste_planks)) - return new String[] { "Burnt planks block", "Created by nuclear explosions", "Drops charcoal" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.frozen_grass)) - return new String[] { "Frozen grass block", "Drops snowballs" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.frozen_dirt)) - return new String[] { "Frozen dirt block", "Drops snowballs" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.frozen_log)) - return new String[] { "Frozen log block", "Drops snowballs" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.frozen_planks)) - return new String[] { "Frozen planks block", "Drops snowballs" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.seal_frame)) - return new String[] { "Silo hatch frame piece", "Instructions:", "Build square from frame blocks", "Possible sizes: 3x3 - 11x11", "Add controller to any side" }; - if(stack.getItem() == Item.getItemFromBlock(ModBlocks.seal_controller)) - return new String[] { "Silo hatch controller", "Instructions:", "Build square from frame blocks", "Possible sizes: 3x3 - 11x11", "Add controller to any side" }; - - return new String[] { "xxx", "xxx" }; - } - - public Map getItemInfo() { - Map map = new HashMap(); - map.put(new ItemStack(ModBlocks.asphalt), getInfoFromItem(new ItemStack(ModBlocks.asphalt))); - map.put(new ItemStack(ModBlocks.ore_uranium), getInfoFromItem(new ItemStack(ModBlocks.ore_uranium))); - map.put(new ItemStack(ModBlocks.ore_titanium), getInfoFromItem(new ItemStack(ModBlocks.ore_titanium))); - map.put(new ItemStack(ModBlocks.ore_sulfur), getInfoFromItem(new ItemStack(ModBlocks.ore_sulfur))); - map.put(new ItemStack(ModBlocks.ore_niter), getInfoFromItem(new ItemStack(ModBlocks.ore_niter))); - map.put(new ItemStack(ModBlocks.ore_copper), getInfoFromItem(new ItemStack(ModBlocks.ore_copper))); - map.put(new ItemStack(ModBlocks.ore_tungsten), getInfoFromItem(new ItemStack(ModBlocks.ore_tungsten))); - map.put(new ItemStack(ModBlocks.ore_aluminium), getInfoFromItem(new ItemStack(ModBlocks.ore_aluminium))); - map.put(new ItemStack(ModBlocks.ore_fluorite), getInfoFromItem(new ItemStack(ModBlocks.ore_fluorite))); - map.put(new ItemStack(ModBlocks.ore_beryllium), getInfoFromItem(new ItemStack(ModBlocks.ore_beryllium))); - map.put(new ItemStack(ModBlocks.ore_lead), getInfoFromItem(new ItemStack(ModBlocks.ore_lead))); - map.put(new ItemStack(ModBlocks.ore_oil), getInfoFromItem(new ItemStack(ModBlocks.ore_oil))); - map.put(new ItemStack(ModBlocks.ore_schrabidium), getInfoFromItem(new ItemStack(ModBlocks.ore_schrabidium))); - map.put(new ItemStack(ModBlocks.ore_australium), getInfoFromItem(new ItemStack(ModBlocks.ore_australium))); - map.put(new ItemStack(ModBlocks.ore_weidanium), getInfoFromItem(new ItemStack(ModBlocks.ore_weidanium))); - map.put(new ItemStack(ModBlocks.ore_reiium), getInfoFromItem(new ItemStack(ModBlocks.ore_reiium))); - map.put(new ItemStack(ModBlocks.ore_unobtainium), getInfoFromItem(new ItemStack(ModBlocks.ore_unobtainium))); - map.put(new ItemStack(ModBlocks.ore_daffergon), getInfoFromItem(new ItemStack(ModBlocks.ore_daffergon))); - map.put(new ItemStack(ModBlocks.ore_verticium), getInfoFromItem(new ItemStack(ModBlocks.ore_verticium))); - map.put(new ItemStack(ModBlocks.ore_nether_uranium), getInfoFromItem(new ItemStack(ModBlocks.ore_nether_uranium))); - map.put(new ItemStack(ModBlocks.ore_nether_plutonium), getInfoFromItem(new ItemStack(ModBlocks.ore_nether_plutonium))); - map.put(new ItemStack(ModBlocks.ore_nether_tungsten), getInfoFromItem(new ItemStack(ModBlocks.ore_nether_tungsten))); - map.put(new ItemStack(ModBlocks.ore_nether_sulfur), getInfoFromItem(new ItemStack(ModBlocks.ore_nether_sulfur))); - map.put(new ItemStack(ModBlocks.ore_nether_fire), getInfoFromItem(new ItemStack(ModBlocks.ore_nether_fire))); - map.put(new ItemStack(ModBlocks.ore_nether_schrabidium), getInfoFromItem(new ItemStack(ModBlocks.ore_nether_schrabidium))); - map.put(new ItemStack(ModBlocks.reinforced_brick), getInfoFromItem(new ItemStack(ModBlocks.reinforced_brick))); - map.put(new ItemStack(ModBlocks.reinforced_glass), getInfoFromItem(new ItemStack(ModBlocks.reinforced_glass))); - map.put(new ItemStack(ModBlocks.reinforced_light), getInfoFromItem(new ItemStack(ModBlocks.reinforced_light))); - map.put(new ItemStack(ModBlocks.reinforced_lamp_off), getInfoFromItem(new ItemStack(ModBlocks.reinforced_lamp_off))); - map.put(new ItemStack(ModBlocks.reinforced_sand), getInfoFromItem(new ItemStack(ModBlocks.reinforced_sand))); - map.put(new ItemStack(ModBlocks.brick_concrete), getInfoFromItem(new ItemStack(ModBlocks.brick_concrete))); - map.put(new ItemStack(ModBlocks.brick_obsidian), getInfoFromItem(new ItemStack(ModBlocks.brick_obsidian))); - map.put(new ItemStack(ModBlocks.brick_light), getInfoFromItem(new ItemStack(ModBlocks.brick_light))); - map.put(new ItemStack(ModBlocks.cmb_brick), getInfoFromItem(new ItemStack(ModBlocks.cmb_brick))); - map.put(new ItemStack(ModBlocks.cmb_brick_reinforced), getInfoFromItem(new ItemStack(ModBlocks.cmb_brick_reinforced))); - map.put(new ItemStack(ModBlocks.block_meteor), getInfoFromItem(new ItemStack(ModBlocks.block_meteor))); - map.put(new ItemStack(ModBlocks.tape_recorder), getInfoFromItem(new ItemStack(ModBlocks.tape_recorder))); - map.put(new ItemStack(ModBlocks.steel_poles), getInfoFromItem(new ItemStack(ModBlocks.steel_poles))); - map.put(new ItemStack(ModBlocks.pole_top), getInfoFromItem(new ItemStack(ModBlocks.pole_top))); - map.put(new ItemStack(ModBlocks.pole_satellite_receiver), getInfoFromItem(new ItemStack(ModBlocks.pole_satellite_receiver))); - map.put(new ItemStack(ModBlocks.steel_wall), getInfoFromItem(new ItemStack(ModBlocks.steel_wall))); - map.put(new ItemStack(ModBlocks.steel_corner), getInfoFromItem(new ItemStack(ModBlocks.steel_corner))); - map.put(new ItemStack(ModBlocks.steel_roof), getInfoFromItem(new ItemStack(ModBlocks.steel_roof))); - map.put(new ItemStack(ModBlocks.steel_beam), getInfoFromItem(new ItemStack(ModBlocks.steel_beam))); - map.put(new ItemStack(ModBlocks.mush), getInfoFromItem(new ItemStack(ModBlocks.mush))); - map.put(new ItemStack(ModBlocks.waste_earth), getInfoFromItem(new ItemStack(ModBlocks.waste_earth))); - map.put(new ItemStack(ModBlocks.waste_mycelium), getInfoFromItem(new ItemStack(ModBlocks.waste_mycelium))); - map.put(new ItemStack(ModBlocks.waste_trinitite), getInfoFromItem(new ItemStack(ModBlocks.waste_trinitite))); - map.put(new ItemStack(ModBlocks.waste_trinitite_red), getInfoFromItem(new ItemStack(ModBlocks.waste_trinitite_red))); - map.put(new ItemStack(ModBlocks.waste_log), getInfoFromItem(new ItemStack(ModBlocks.waste_log))); - map.put(new ItemStack(ModBlocks.waste_planks), getInfoFromItem(new ItemStack(ModBlocks.waste_planks))); - map.put(new ItemStack(ModBlocks.frozen_grass), getInfoFromItem(new ItemStack(ModBlocks.frozen_grass))); - map.put(new ItemStack(ModBlocks.frozen_dirt), getInfoFromItem(new ItemStack(ModBlocks.frozen_dirt))); - map.put(new ItemStack(ModBlocks.frozen_log), getInfoFromItem(new ItemStack(ModBlocks.frozen_log))); - map.put(new ItemStack(ModBlocks.frozen_planks), getInfoFromItem(new ItemStack(ModBlocks.frozen_planks))); - map.put(new ItemStack(ModBlocks.seal_frame), getInfoFromItem(new ItemStack(ModBlocks.seal_frame))); - map.put(new ItemStack(ModBlocks.seal_controller), getInfoFromItem(new ItemStack(ModBlocks.seal_controller))); - - return map; - } - public Map getFluidContainers() { Map map = new HashMap(); diff --git a/com/hbm/inventory/container/ContainerMachineBattery.java b/com/hbm/inventory/container/ContainerMachineBattery.java index d3665eeba..8a6821224 100644 --- a/com/hbm/inventory/container/ContainerMachineBattery.java +++ b/com/hbm/inventory/container/ContainerMachineBattery.java @@ -17,8 +17,8 @@ public class ContainerMachineBattery extends Container { diFurnace = tedf; - this.addSlotToContainer(new Slot(tedf, 0, 26, 35)); - this.addSlotToContainer(new Slot(tedf, 1, 134, 35)); + this.addSlotToContainer(new Slot(tedf, 0, 26, 17)); + this.addSlotToContainer(new Slot(tedf, 1, 26, 53)); for(int i = 0; i < 3; i++) { diff --git a/com/hbm/inventory/gui/GUIBombMulti.java b/com/hbm/inventory/gui/GUIBombMulti.java index d14a51d5c..7f5e6f176 100644 --- a/com/hbm/inventory/gui/GUIBombMulti.java +++ b/com/hbm/inventory/gui/GUIBombMulti.java @@ -14,7 +14,7 @@ import net.minecraft.util.ResourceLocation; public class GUIBombMulti extends GuiContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/bombGeneric.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/bombGeneric.png"); private TileEntityBombMulti testNuke; public GUIBombMulti(InventoryPlayer invPlayer, TileEntityBombMulti tedf) { diff --git a/com/hbm/inventory/gui/GUICelPrime.java b/com/hbm/inventory/gui/GUICelPrime.java index 10ea154ee..a5baa9010 100644 --- a/com/hbm/inventory/gui/GUICelPrime.java +++ b/com/hbm/inventory/gui/GUICelPrime.java @@ -13,7 +13,7 @@ import net.minecraft.util.ResourceLocation; public class GUICelPrime extends GuiContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/celprime_cmd_alt_thirdslot.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/celprime_cmd_alt_thirdslot.png"); private TileEntityCelPrime testNuke; public GUICelPrime(InventoryPlayer invPlayer, TileEntityCelPrime tedf) { diff --git a/com/hbm/inventory/gui/GUILaunchPadTier1.java b/com/hbm/inventory/gui/GUILaunchPadTier1.java index edf101b35..e57b35868 100644 --- a/com/hbm/inventory/gui/GUILaunchPadTier1.java +++ b/com/hbm/inventory/gui/GUILaunchPadTier1.java @@ -13,7 +13,7 @@ import com.hbm.tileentity.bomb.TileEntityLaunchPad; public class GUILaunchPadTier1 extends GuiInfoContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_launch_pad.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/gui_launch_pad.png"); private TileEntityLaunchPad diFurnace; public GUILaunchPadTier1(InventoryPlayer invPlayer, TileEntityLaunchPad tedf) { diff --git a/com/hbm/inventory/gui/GUIMachineBattery.java b/com/hbm/inventory/gui/GUIMachineBattery.java index 4068751ae..8415153fa 100644 --- a/com/hbm/inventory/gui/GUIMachineBattery.java +++ b/com/hbm/inventory/gui/GUIMachineBattery.java @@ -1,6 +1,7 @@ package com.hbm.inventory.gui; import net.minecraft.client.Minecraft; +import net.minecraft.client.audio.PositionedSoundRecord; import net.minecraft.client.resources.I18n; import net.minecraft.entity.player.InventoryPlayer; import net.minecraft.util.ResourceLocation; @@ -9,16 +10,18 @@ import org.lwjgl.opengl.GL11; import com.hbm.inventory.container.ContainerMachineBattery; import com.hbm.lib.RefStrings; +import com.hbm.packet.AuxButtonPacket; +import com.hbm.packet.PacketDispatcher; import com.hbm.tileentity.machine.TileEntityMachineBattery; public class GUIMachineBattery extends GuiInfoContainer { private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/storage/gui_battery.png"); - private TileEntityMachineBattery diFurnace; + private TileEntityMachineBattery battery; public GUIMachineBattery(InventoryPlayer invPlayer, TileEntityMachineBattery tedf) { super(new ContainerMachineBattery(invPlayer, tedf)); - diFurnace = tedf; + battery = tedf; this.xSize = 176; this.ySize = 166; @@ -28,18 +31,34 @@ public class GUIMachineBattery extends GuiInfoContainer { public void drawScreen(int mouseX, int mouseY, float f) { super.drawScreen(mouseX, mouseY, f); - this.drawElectricityInfo(this, mouseX, mouseY, guiLeft + 62, guiTop + 69 - 52, 52, 52, diFurnace.power, diFurnace.maxPower); + this.drawElectricityInfo(this, mouseX, mouseY, guiLeft + 62, guiTop + 69 - 52, 52, 52, battery.power, battery.maxPower); - String[] text = new String[] { "Only stores power by default.", - "Apply redstone signal to set it to", - "output mode." }; + String[] text = new String[] { "Click the buttons on the right", + "to change battery behavior for", + "when redstone is or isn't applied." }; this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 36, 16, 16, guiLeft - 8, guiTop + 36 + 16, text); } + + protected void mouseClicked(int x, int y, int i) { + super.mouseClicked(x, y, i); + + if(guiLeft + 133 <= x && guiLeft + 133 + 18 > x && guiTop + 16 < y && guiTop + 16 + 18 >= y) { + + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F)); + PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(battery.xCoord, battery.yCoord, battery.zCoord, 0, 0)); + } + + if(guiLeft + 133 <= x && guiLeft + 133 + 18 > x && guiTop + 52 < y && guiTop + 52 + 18 >= y) { + + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F)); + PacketDispatcher.wrapper.sendToServer(new AuxButtonPacket(battery.xCoord, battery.yCoord, battery.zCoord, 0, 1)); + } + } @Override protected void drawGuiContainerForegroundLayer(int i, int j) { - String name = this.diFurnace.hasCustomInventoryName() ? this.diFurnace.getInventoryName() : I18n.format(this.diFurnace.getInventoryName()); - name += (" (" + this.diFurnace.power + " HE)"); + String name = this.battery.hasCustomInventoryName() ? this.battery.getInventoryName() : I18n.format(this.battery.getInventoryName()); + name += (" (" + this.battery.power + " HE)"); this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752); this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 4210752); @@ -51,10 +70,16 @@ public class GUIMachineBattery extends GuiInfoContainer { Minecraft.getMinecraft().getTextureManager().bindTexture(texture); drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); - if(diFurnace.power > 0) { - int i = (int)diFurnace.getPowerRemainingScaled(52); + if(battery.power > 0) { + int i = (int)battery.getPowerRemainingScaled(52); drawTexturedModalRect(guiLeft + 62, guiTop + 69 - i, 176, 52 - i, 52, i); } + + int i = battery.redLow; + drawTexturedModalRect(guiLeft + 133, guiTop + 16, 176, 52 + i * 18, 18, 18); + + int j = battery.redHigh; + drawTexturedModalRect(guiLeft + 133, guiTop + 52, 176, 52 + j * 18, 18, 18); this.drawInfoPanel(guiLeft - 16, guiTop + 36, 16, 16, 2); } diff --git a/com/hbm/inventory/gui/GUIMachineCompactLauncher.java b/com/hbm/inventory/gui/GUIMachineCompactLauncher.java index f316c2fb2..a41dc8953 100644 --- a/com/hbm/inventory/gui/GUIMachineCompactLauncher.java +++ b/com/hbm/inventory/gui/GUIMachineCompactLauncher.java @@ -17,7 +17,7 @@ import net.minecraft.util.ResourceLocation; public class GUIMachineCompactLauncher extends GuiInfoContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_launch_table_small.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/gui_launch_table_small.png"); private TileEntityCompactLauncher launcher; public GUIMachineCompactLauncher(InventoryPlayer invPlayer, TileEntityCompactLauncher tedf) { diff --git a/com/hbm/inventory/gui/GUIMachineLaunchTable.java b/com/hbm/inventory/gui/GUIMachineLaunchTable.java index 1e517a4ac..f1ba99a27 100644 --- a/com/hbm/inventory/gui/GUIMachineLaunchTable.java +++ b/com/hbm/inventory/gui/GUIMachineLaunchTable.java @@ -22,7 +22,7 @@ import net.minecraft.util.ResourceLocation; public class GUIMachineLaunchTable extends GuiInfoContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_launch_table.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/gui_launch_table.png"); private TileEntityLaunchTable launcher; public GUIMachineLaunchTable(InventoryPlayer invPlayer, TileEntityLaunchTable tedf) { diff --git a/com/hbm/inventory/gui/GUIMachineSiren.java b/com/hbm/inventory/gui/GUIMachineSiren.java index 1dd6bb3c2..560f91f69 100644 --- a/com/hbm/inventory/gui/GUIMachineSiren.java +++ b/com/hbm/inventory/gui/GUIMachineSiren.java @@ -3,7 +3,7 @@ package com.hbm.inventory.gui; import org.lwjgl.opengl.GL11; import com.hbm.inventory.container.ContainerMachineSiren; -import com.hbm.items.tool.ItemCassette.TrackType; +import com.hbm.items.machine.ItemCassette.TrackType; import com.hbm.lib.RefStrings; import com.hbm.tileentity.machine.TileEntityMachineSiren; diff --git a/com/hbm/inventory/gui/GUINukeBoy.java b/com/hbm/inventory/gui/GUINukeBoy.java index 330d892e4..43640fb1d 100644 --- a/com/hbm/inventory/gui/GUINukeBoy.java +++ b/com/hbm/inventory/gui/GUINukeBoy.java @@ -15,7 +15,7 @@ import net.minecraft.util.ResourceLocation; public class GUINukeBoy extends GuiContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/lilBoySchematic.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/lilBoySchematic.png"); private TileEntityNukeBoy testNuke; public GUINukeBoy(InventoryPlayer invPlayer, TileEntityNukeBoy tedf) { diff --git a/com/hbm/inventory/gui/GUINukeCustom.java b/com/hbm/inventory/gui/GUINukeCustom.java index 510ba5a57..668eb3f34 100644 --- a/com/hbm/inventory/gui/GUINukeCustom.java +++ b/com/hbm/inventory/gui/GUINukeCustom.java @@ -14,7 +14,7 @@ import net.minecraft.util.ResourceLocation; public class GUINukeCustom extends GuiContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gunBombSchematic.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/gunBombSchematic.png"); private TileEntityNukeCustom testNuke; public GUINukeCustom(InventoryPlayer invPlayer, TileEntityNukeCustom tedf) { diff --git a/com/hbm/inventory/gui/GUINukeFleija.java b/com/hbm/inventory/gui/GUINukeFleija.java index b5b2c1f7e..3d8eb6eb4 100644 --- a/com/hbm/inventory/gui/GUINukeFleija.java +++ b/com/hbm/inventory/gui/GUINukeFleija.java @@ -15,7 +15,7 @@ import com.hbm.tileentity.bomb.TileEntityNukeFleija; public class GUINukeFleija extends GuiContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/fleijaSchematic.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/fleijaSchematic.png"); private TileEntityNukeFleija testNuke; public GUINukeFleija(InventoryPlayer invPlayer, TileEntityNukeFleija tedf) { diff --git a/com/hbm/inventory/gui/GUINukeGadget.java b/com/hbm/inventory/gui/GUINukeGadget.java index 4146533b8..e8f533d9b 100644 --- a/com/hbm/inventory/gui/GUINukeGadget.java +++ b/com/hbm/inventory/gui/GUINukeGadget.java @@ -14,7 +14,7 @@ import com.hbm.tileentity.bomb.TileEntityNukeGadget; public class GUINukeGadget extends GuiContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gadgetSchematic.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/gadgetSchematic.png"); private TileEntityNukeGadget testNuke; public GUINukeGadget(InventoryPlayer invPlayer, TileEntityNukeGadget tedf) { diff --git a/com/hbm/inventory/gui/GUINukeMike.java b/com/hbm/inventory/gui/GUINukeMike.java index c2b3cbfce..22e85fcb9 100644 --- a/com/hbm/inventory/gui/GUINukeMike.java +++ b/com/hbm/inventory/gui/GUINukeMike.java @@ -14,7 +14,7 @@ import net.minecraft.util.ResourceLocation; public class GUINukeMike extends GuiContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/ivyMikeSchematic.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/ivyMikeSchematic.png"); private TileEntityNukeMike testNuke; public GUINukeMike(InventoryPlayer invPlayer, TileEntityNukeMike tedf) { diff --git a/com/hbm/inventory/gui/GUINukeN2.java b/com/hbm/inventory/gui/GUINukeN2.java index 735587e1b..a9a8d01b8 100644 --- a/com/hbm/inventory/gui/GUINukeN2.java +++ b/com/hbm/inventory/gui/GUINukeN2.java @@ -14,7 +14,7 @@ import net.minecraft.util.ResourceLocation; public class GUINukeN2 extends GuiContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/n2Schematic.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/n2Schematic.png"); private TileEntityNukeN2 testNuke; public GUINukeN2(InventoryPlayer invPlayer, TileEntityNukeN2 tedf) { diff --git a/com/hbm/inventory/gui/GUINukeN45.java b/com/hbm/inventory/gui/GUINukeN45.java index 81f62f0a6..055cc2a30 100644 --- a/com/hbm/inventory/gui/GUINukeN45.java +++ b/com/hbm/inventory/gui/GUINukeN45.java @@ -12,7 +12,7 @@ import net.minecraft.util.ResourceLocation; public class GUINukeN45 extends GuiInfoContainer { - public static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_n45.png"); + public static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/gui_n45.png"); private TileEntityNukeN45 diFurnace; public GUINukeN45(InventoryPlayer invPlayer, TileEntityNukeN45 tedf) { diff --git a/com/hbm/inventory/gui/GUINukePrototype.java b/com/hbm/inventory/gui/GUINukePrototype.java index 9a248c4c4..7d472b124 100644 --- a/com/hbm/inventory/gui/GUINukePrototype.java +++ b/com/hbm/inventory/gui/GUINukePrototype.java @@ -14,7 +14,7 @@ import com.hbm.tileentity.bomb.TileEntityNukePrototype; public class GUINukePrototype extends GuiContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_prototype.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/gui_prototype.png"); private TileEntityNukePrototype testNuke; public GUINukePrototype(InventoryPlayer invPlayer, TileEntityNukePrototype tedf) { diff --git a/com/hbm/inventory/gui/GUINukeSolinium.java b/com/hbm/inventory/gui/GUINukeSolinium.java index 965b78b8a..2228c0d19 100644 --- a/com/hbm/inventory/gui/GUINukeSolinium.java +++ b/com/hbm/inventory/gui/GUINukeSolinium.java @@ -15,7 +15,7 @@ import net.minecraft.util.ResourceLocation; public class GUINukeSolinium extends GuiContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/soliniumSchematic.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/soliniumSchematic.png"); private TileEntityNukeSolinium testNuke; public GUINukeSolinium(InventoryPlayer invPlayer, TileEntityNukeSolinium tedf) { diff --git a/com/hbm/inventory/gui/GUINukeTsar.java b/com/hbm/inventory/gui/GUINukeTsar.java index c272c9282..d610d597f 100644 --- a/com/hbm/inventory/gui/GUINukeTsar.java +++ b/com/hbm/inventory/gui/GUINukeTsar.java @@ -14,7 +14,7 @@ import com.hbm.tileentity.bomb.TileEntityNukeTsar; public class GUINukeTsar extends GuiContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/tsarBombaSchematic.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/tsarBombaSchematic.png"); private TileEntityNukeTsar testNuke; public GUINukeTsar(InventoryPlayer invPlayer, TileEntityNukeTsar tedf) { diff --git a/com/hbm/inventory/gui/GUIScreenTemplateFolder.java b/com/hbm/inventory/gui/GUIScreenTemplateFolder.java index dbdbdf676..2699ad003 100644 --- a/com/hbm/inventory/gui/GUIScreenTemplateFolder.java +++ b/com/hbm/inventory/gui/GUIScreenTemplateFolder.java @@ -9,11 +9,11 @@ import org.lwjgl.opengl.GL11; import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.inventory.MachineRecipes; import com.hbm.items.ModItems; -import com.hbm.items.tool.ItemAssemblyTemplate.EnumAssemblyTemplate; -import com.hbm.items.tool.ItemCassette; -import com.hbm.items.tool.ItemCassette.TrackType; -import com.hbm.items.tool.ItemChemistryTemplate; -import com.hbm.items.tool.ItemFluidIdentifier; +import com.hbm.items.machine.ItemCassette; +import com.hbm.items.machine.ItemChemistryTemplate; +import com.hbm.items.machine.ItemFluidIdentifier; +import com.hbm.items.machine.ItemAssemblyTemplate.EnumAssemblyTemplate; +import com.hbm.items.machine.ItemCassette.TrackType; import com.hbm.lib.RefStrings; import com.hbm.packet.ItemFolderPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/inventory/gui/GUITestNuke.java b/com/hbm/inventory/gui/GUITestNuke.java index eaf4e9c69..f616a4a92 100644 --- a/com/hbm/inventory/gui/GUITestNuke.java +++ b/com/hbm/inventory/gui/GUITestNuke.java @@ -14,7 +14,7 @@ import com.hbm.tileentity.bomb.TileEntityTestNuke; public class GUITestNuke extends GuiContainer { - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gunBombSchematicSmall.png"); + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/weapon/gunBombSchematicSmall.png"); private TileEntityTestNuke testNuke; public GUITestNuke(InventoryPlayer invPlayer, TileEntityTestNuke tedf) { diff --git a/com/hbm/items/ModItems.java b/com/hbm/items/ModItems.java index 4de6cc9f0..4caf0e73e 100644 --- a/com/hbm/items/ModItems.java +++ b/com/hbm/items/ModItems.java @@ -2,6 +2,7 @@ package com.hbm.items; import com.hbm.blocks.ModBlocks; import com.hbm.handler.BucketHandler; +import com.hbm.handler.ToolAbility; import com.hbm.handler.guncfg.Gun12GaugeFactory; import com.hbm.handler.guncfg.Gun20GaugeFactory; import com.hbm.handler.guncfg.Gun22LRFactory; @@ -18,11 +19,31 @@ import com.hbm.handler.guncfg.GunGaussFactory; import com.hbm.handler.guncfg.GunGrenadeFactory; import com.hbm.handler.guncfg.GunOSIPRFactory; import com.hbm.handler.guncfg.GunRocketFactory; +import com.hbm.items.armor.*; import com.hbm.items.bomb.*; import com.hbm.items.food.*; -import com.hbm.items.gear.*; +import com.hbm.items.machine.ItemAssemblyTemplate; +import com.hbm.items.machine.ItemBattery; +import com.hbm.items.machine.ItemBlades; +import com.hbm.items.machine.ItemCapacitor; +import com.hbm.items.machine.ItemCassette; +import com.hbm.items.machine.ItemCatalyst; +import com.hbm.items.machine.ItemChemistryIcon; +import com.hbm.items.machine.ItemChemistryTemplate; +import com.hbm.items.machine.ItemFluidDuct; +import com.hbm.items.machine.ItemFluidIcon; +import com.hbm.items.machine.ItemFluidIdentifier; +import com.hbm.items.machine.ItemFluidTank; +import com.hbm.items.machine.ItemFuelRod; +import com.hbm.items.machine.ItemLens; +import com.hbm.items.machine.ItemReactorSensor; +import com.hbm.items.machine.ItemSatChip; +import com.hbm.items.machine.ItemTemplateFolder; +import com.hbm.items.machine.ItemTurretBiometry; +import com.hbm.items.machine.ItemTurretChip; import com.hbm.items.special.*; import com.hbm.items.tool.*; +import com.hbm.items.tool.ItemToolAbility.EnumToolType; import com.hbm.items.weapon.*; import com.hbm.items.weapon.ItemMissile.FuelType; import com.hbm.items.weapon.ItemMissile.PartSize; @@ -1117,6 +1138,10 @@ public class ModItems { public static Item ammo_grenade_finned; public static Item ammo_grenade_sleek; public static Item ammo_grenade_nuclear; + public static Item ammo_fuel; + public static Item ammo_fuel_napalm; + public static Item ammo_fuel_phosphorus; + public static Item ammo_fuel_gas; public static Item gun_rpg; public static Item gun_rpg_ammo; @@ -1195,6 +1220,7 @@ public class ModItems { public static Item gun_osipr_ammo2; public static Item gun_immolator; public static Item gun_immolator_ammo; + public static Item gun_flamer; public static Item gun_cryolator; public static Item gun_cryolator_ammo; public static Item gun_mp; @@ -2572,7 +2598,7 @@ public class ModItems { rod_quad_waste = new ItemRadioactive(60F).setUnlocalizedName("rod_quad_waste").setMaxStackSize(1).setCreativeTab(null).setContainerItem(ModItems.rod_quad_empty).setTextureName(RefStrings.MODID + ":rod_quad_waste"); pellet_cluster = new ItemCustomLore().setUnlocalizedName("pellet_cluster").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":pellet_cluster"); - powder_fire = new ItemCustomLore().setUnlocalizedName("powder_fire").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_fire"); + powder_fire = new ItemCustomLore().setUnlocalizedName("powder_fire").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_red_phosphorus"); powder_ice = new ItemCustomLore().setUnlocalizedName("powder_ice").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_ice"); powder_poison = new ItemCustomLore().setUnlocalizedName("powder_poison").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_poison"); powder_thermite = new ItemCustomLore().setUnlocalizedName("powder_thermite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_thermite"); @@ -2855,6 +2881,10 @@ public class ModItems { ammo_grenade_finned = new ItemAmmo().setUnlocalizedName("ammo_grenade_finned").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_grenade_finned"); ammo_grenade_sleek = new ItemAmmo().setUnlocalizedName("ammo_grenade_sleek").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_grenade_sleek"); ammo_grenade_nuclear = new ItemAmmo().setUnlocalizedName("ammo_grenade_nuclear").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_grenade_nuclear"); + ammo_fuel = new ItemAmmo().setUnlocalizedName("ammo_fuel").setCreativeTab(MainRegistry.weaponTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":ammo_fuel"); + ammo_fuel_napalm = new ItemAmmo().setUnlocalizedName("ammo_fuel_napalm").setCreativeTab(MainRegistry.weaponTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":ammo_fuel_napalm"); + ammo_fuel_phosphorus = new ItemAmmo().setUnlocalizedName("ammo_fuel_phosphorus").setCreativeTab(MainRegistry.weaponTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":ammo_fuel_phosphorus"); + ammo_fuel_gas = new ItemAmmo().setUnlocalizedName("ammo_fuel_gas").setCreativeTab(MainRegistry.weaponTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":ammo_fuel_gas"); gun_rpg = new ItemGunBase(GunRocketFactory.getGustavConfig()).setUnlocalizedName("gun_rpg").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_rpg"); gun_karl = new ItemGunBase(GunRocketFactory.getKarlConfig()).setUnlocalizedName("gun_karl").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_karl"); @@ -2865,7 +2895,6 @@ public class ModItems { gun_skystinger = new GunStinger().setUnlocalizedName("gun_skystinger").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_skystinger"); gun_stinger_ammo = new Item().setUnlocalizedName("gun_stinger_ammo").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_stinger_ammo"); gun_revolver_ammo = new Item().setUnlocalizedName("gun_revolver_ammo").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_ammo"); - //gun_revolver = new GunRevolver(gun_revolver_ammo, 10, 25, false, false).setMaxDamage(500).setUnlocalizedName("gun_revolver").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver"); gun_revolver = new ItemGunBase(Gun357MagnumFactory.getRevolverConfig()).setUnlocalizedName("gun_revolver").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver"); gun_revolver_saturnite = new ItemGunBase(Gun357MagnumFactory.getRevolverSaturniteConfig()).setUnlocalizedName("gun_revolver_saturnite").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_saturnite"); gun_revolver_iron_ammo = new Item().setUnlocalizedName("gun_revolver_iron_ammo").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver_iron_ammo"); @@ -2934,6 +2963,7 @@ public class ModItems { gun_osipr = new ItemGunOSIPR(GunOSIPRFactory.getOSIPRConfig(), GunOSIPRFactory.getAltConfig()).setUnlocalizedName("gun_osipr").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_osipr"); gun_immolator_ammo = new Item().setUnlocalizedName("gun_immolator_ammo").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_immolator_ammo"); gun_immolator = new GunImmolator().setUnlocalizedName("gun_immolator").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_immolator"); + gun_flamer = new ItemGunBase(GunEnergyFactory.getFlamerConfig()).setUnlocalizedName("gun_flamer").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_flamer"); gun_cryolator_ammo = new Item().setUnlocalizedName("gun_cryolator_ammo").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_cryolator_ammo"); gun_cryolator = new GunCryolator().setUnlocalizedName("gun_cryolator").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_cryolator"); gun_mp_ammo = new ItemCustomLore().setUnlocalizedName("gun_mp_ammo").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_pm_ammo"); @@ -3243,7 +3273,6 @@ public class ModItems { crate_caller = new ItemCrateCaller().setUnlocalizedName("crate_caller").setMaxStackSize(1).setFull3D().setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":crate_caller"); bomb_caller = new ItemBombCaller().setUnlocalizedName("bomb_caller").setMaxStackSize(1).setFull3D().setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":bomb_caller"); meteor_remote = new ItemMeteorRemote().setUnlocalizedName("meteor_remote").setMaxStackSize(1).setFull3D().setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":meteor_remote"); - remote = new ItemRamManipulator().setUnlocalizedName("remote").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":remote"); chopper = new ItemChopper().setUnlocalizedName("chopper").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":chopper"); linker = new ItemTeleLink().setUnlocalizedName("linker").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":linker"); reactor_sensor = new ItemReactorSensor().setUnlocalizedName("reactor_sensor").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":reactor_sensor"); @@ -3361,39 +3390,96 @@ public class ModItems { jackt = new ModArmor(MainRegistry.aMatSteel, 7, 1).setUnlocalizedName("jackt").setTextureName(RefStrings.MODID + ":jackt"); jackt2 = new ModArmor(MainRegistry.aMatSteel, 7, 1).setUnlocalizedName("jackt2").setTextureName(RefStrings.MODID + ":jackt2"); - schrabidium_sword = new SwordSchrabidium(MainRegistry.enumToolMaterialSchrabidium).setUnlocalizedName("schrabidium_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_sword"); - schrabidium_pickaxe = new PickaxeSchrabidium(MainRegistry.enumToolMaterialSchrabidium).setUnlocalizedName("schrabidium_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_pickaxe"); - schrabidium_axe = new AxeSchrabidium(MainRegistry.enumToolMaterialSchrabidium).setUnlocalizedName("schrabidium_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_axe"); - schrabidium_shovel = new SpadeSchrabidium(MainRegistry.enumToolMaterialSchrabidium).setUnlocalizedName("schrabidium_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_shovel"); + schrabidium_sword = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialSchrabidium, EnumToolType.SWORD).setUnlocalizedName("schrabidium_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_sword"); + + schrabidium_pickaxe = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialSchrabidium, EnumToolType.PICKAXE) + .addBreakAbility(new ToolAbility.HammerAbility(2)) + .addBreakAbility(new ToolAbility.RecursionAbility(10)) + .addBreakAbility(new ToolAbility.SmelterAbility()) + .addBreakAbility(new ToolAbility.ShredderAbility()).setUnlocalizedName("schrabidium_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_pickaxe"); + + schrabidium_axe = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialSchrabidium, EnumToolType.AXE) + .addBreakAbility(new ToolAbility.HammerAbility(2)) + .addBreakAbility(new ToolAbility.RecursionAbility(10)) + .addBreakAbility(new ToolAbility.SmelterAbility()) + .addBreakAbility(new ToolAbility.ShredderAbility()).setUnlocalizedName("schrabidium_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_axe"); + + schrabidium_shovel = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialSchrabidium, EnumToolType.SHOVEL) + .addBreakAbility(new ToolAbility.HammerAbility(2)) + .addBreakAbility(new ToolAbility.RecursionAbility(10)) + .addBreakAbility(new ToolAbility.SmelterAbility()) + .addBreakAbility(new ToolAbility.ShredderAbility()).setUnlocalizedName("schrabidium_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_shovel"); + schrabidium_hoe = new HoeSchrabidium(MainRegistry.enumToolMaterialSchrabidium).setUnlocalizedName("schrabidium_hoe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_hoe"); - titanium_sword = new ModSword(MainRegistry.enumToolMaterialTitanium).setUnlocalizedName("titanium_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_sword"); - titanium_pickaxe = new ModPickaxe(MainRegistry.enumToolMaterialTitanium).setUnlocalizedName("titanium_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_pickaxe"); - titanium_axe = new ModAxe(MainRegistry.enumToolMaterialTitanium).setUnlocalizedName("titanium_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_axe"); - titanium_shovel = new ModSpade(MainRegistry.enumToolMaterialTitanium).setUnlocalizedName("titanium_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_shovel"); + + titanium_sword = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialTitanium, EnumToolType.SWORD).setUnlocalizedName("titanium_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_sword"); + titanium_pickaxe = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialTitanium, EnumToolType.PICKAXE).setUnlocalizedName("titanium_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_pickaxe"); + titanium_axe = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialTitanium, EnumToolType.AXE).setUnlocalizedName("titanium_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_axe"); + titanium_shovel = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialTitanium, EnumToolType.SHOVEL).setUnlocalizedName("titanium_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_shovel"); titanium_hoe = new ModHoe(MainRegistry.enumToolMaterialTitanium).setUnlocalizedName("titanium_hoe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":titanium_hoe"); - steel_sword = new ModSword(MainRegistry.enumToolMaterialSteel).setUnlocalizedName("steel_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_sword"); - steel_pickaxe = new ModPickaxe(MainRegistry.enumToolMaterialSteel).setUnlocalizedName("steel_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_pickaxe"); - steel_axe = new ModAxe(MainRegistry.enumToolMaterialSteel).setUnlocalizedName("steel_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_axe"); - steel_shovel = new ModSpade(MainRegistry.enumToolMaterialSteel).setUnlocalizedName("steel_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_shovel"); + steel_sword = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialSteel, EnumToolType.SWORD).setUnlocalizedName("steel_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_sword"); + steel_pickaxe = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialSteel, EnumToolType.PICKAXE).setUnlocalizedName("steel_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_pickaxe"); + steel_axe = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialSteel, EnumToolType.AXE).setUnlocalizedName("steel_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_axe"); + steel_shovel = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialSteel, EnumToolType.SHOVEL).setUnlocalizedName("steel_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_shovel"); steel_hoe = new ModHoe(MainRegistry.enumToolMaterialSteel).setUnlocalizedName("steel_hoe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":steel_hoe"); - alloy_sword = new ModSword(MainRegistry.enumToolMaterialAlloy).setUnlocalizedName("alloy_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_sword"); - alloy_pickaxe = new ModPickaxe(MainRegistry.enumToolMaterialAlloy).setUnlocalizedName("alloy_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_pickaxe"); - alloy_axe = new ModAxe(MainRegistry.enumToolMaterialAlloy).setUnlocalizedName("alloy_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_axe"); - alloy_shovel = new ModSpade(MainRegistry.enumToolMaterialAlloy).setUnlocalizedName("alloy_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_shovel"); + + alloy_sword = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialAlloy, EnumToolType.SWORD).setUnlocalizedName("alloy_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_sword"); + + alloy_pickaxe = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialAlloy, EnumToolType.PICKAXE) + .addBreakAbility(new ToolAbility.RecursionAbility(3)).setUnlocalizedName("alloy_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_pickaxe"); + + alloy_axe = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialAlloy, EnumToolType.AXE) + .addBreakAbility(new ToolAbility.RecursionAbility(3)).setUnlocalizedName("alloy_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_axe"); + + alloy_shovel = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialAlloy, EnumToolType.SHOVEL) + .addBreakAbility(new ToolAbility.RecursionAbility(3)).setUnlocalizedName("alloy_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_shovel"); + alloy_hoe = new ModHoe(MainRegistry.enumToolMaterialAlloy).setUnlocalizedName("alloy_hoe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":alloy_hoe"); - cmb_sword = new ModSword(MainRegistry.enumToolMaterialCmb).setUnlocalizedName("cmb_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cmb_sword"); - cmb_pickaxe = new ModPickaxe(MainRegistry.enumToolMaterialCmb).setUnlocalizedName("cmb_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cmb_pickaxe"); - cmb_axe = new ModAxe(MainRegistry.enumToolMaterialCmb).setUnlocalizedName("cmb_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cmb_axe"); - cmb_shovel = new ModSpade(MainRegistry.enumToolMaterialCmb).setUnlocalizedName("cmb_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cmb_shovel"); + + cmb_sword = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialCmb, EnumToolType.SWORD).setUnlocalizedName("cmb_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cmb_sword"); + + cmb_pickaxe = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialCmb, EnumToolType.PICKAXE) + .addBreakAbility(new ToolAbility.RecursionAbility(5)) + .addBreakAbility(new ToolAbility.SmelterAbility()).setUnlocalizedName("cmb_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cmb_pickaxe"); + + cmb_axe = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialCmb, EnumToolType.AXE) + .addBreakAbility(new ToolAbility.RecursionAbility(5)) + .addBreakAbility(new ToolAbility.SmelterAbility()).setUnlocalizedName("cmb_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cmb_axe"); + + cmb_shovel = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialCmb, EnumToolType.SHOVEL) + .addBreakAbility(new ToolAbility.RecursionAbility(5)) + .addBreakAbility(new ToolAbility.SmelterAbility()).setUnlocalizedName("cmb_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cmb_shovel"); + cmb_hoe = new ModHoe(MainRegistry.enumToolMaterialCmb).setUnlocalizedName("cmb_hoe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cmb_hoe"); - elec_sword = new ModSword(MainRegistry.enumToolMaterialElec).setUnlocalizedName("elec_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":elec_sword_anim"); - elec_pickaxe = new ModPickaxe(MainRegistry.enumToolMaterialElec).setUnlocalizedName("elec_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":elec_drill_anim"); - elec_axe = new ModAxe(MainRegistry.enumToolMaterialElec).setUnlocalizedName("elec_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":elec_chainsaw_anim"); - elec_shovel = new ModSpade(MainRegistry.enumToolMaterialElec).setUnlocalizedName("elec_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":elec_shovel_anim"); - desh_sword = new ModSword(MainRegistry.enumToolMaterialDesh).setUnlocalizedName("desh_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":desh_sword"); - desh_pickaxe = new ModPickaxe(MainRegistry.enumToolMaterialDesh).setUnlocalizedName("desh_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":desh_pickaxe"); - desh_axe = new ModAxe(MainRegistry.enumToolMaterialDesh).setUnlocalizedName("desh_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":desh_axe"); - desh_shovel = new ModSpade(MainRegistry.enumToolMaterialDesh).setUnlocalizedName("desh_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":desh_shovel"); + + elec_sword = new ItemToolAbilityPower(5, 0, MainRegistry.enumToolMaterialElec, EnumToolType.SWORD, 500000, 1000, 100).setUnlocalizedName("elec_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":elec_sword_anim"); + + elec_pickaxe = new ItemToolAbilityPower(5, 0, MainRegistry.enumToolMaterialElec, EnumToolType.PICKAXE, 500000, 1000, 100) + .addBreakAbility(new ToolAbility.HammerAbility(2)) + .addBreakAbility(new ToolAbility.RecursionAbility(5)).setUnlocalizedName("elec_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":elec_drill_anim"); + + elec_axe = new ItemToolAbilityPower(5, 0, MainRegistry.enumToolMaterialElec, EnumToolType.AXE, 500000, 1000, 100) + .addBreakAbility(new ToolAbility.HammerAbility(2)) + .addBreakAbility(new ToolAbility.RecursionAbility(5)).setUnlocalizedName("elec_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":elec_chainsaw_anim"); + + elec_shovel = new ItemToolAbilityPower(5, 0, MainRegistry.enumToolMaterialElec, EnumToolType.SHOVEL, 500000, 1000, 100) + .addBreakAbility(new ToolAbility.HammerAbility(2)) + .addBreakAbility(new ToolAbility.RecursionAbility(5)).setUnlocalizedName("elec_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":elec_shovel_anim"); + + desh_sword = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialDesh, EnumToolType.SWORD).setUnlocalizedName("desh_sword").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":desh_sword"); + + desh_pickaxe = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialDesh, EnumToolType.PICKAXE) + .addBreakAbility(new ToolAbility.HammerAbility(1)) + .addBreakAbility(new ToolAbility.RecursionAbility(3)).setUnlocalizedName("desh_pickaxe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":desh_pickaxe"); + + desh_axe = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialDesh, EnumToolType.AXE) + .addBreakAbility(new ToolAbility.HammerAbility(1)) + .addBreakAbility(new ToolAbility.RecursionAbility(3)).setUnlocalizedName("desh_axe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":desh_axe"); + + desh_shovel = new ItemToolAbility(5, 0, MainRegistry.enumToolMaterialDesh, EnumToolType.SHOVEL) + .addBreakAbility(new ToolAbility.HammerAbility(1)) + .addBreakAbility(new ToolAbility.RecursionAbility(3)).setUnlocalizedName("desh_shovel").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":desh_shovel"); + desh_hoe = new ModHoe(MainRegistry.enumToolMaterialDesh).setUnlocalizedName("desh_hoe").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":desh_hoe"); mask_of_infamy = new MaskOfInfamy(ArmorMaterial.IRON, 8, 0).setUnlocalizedName("mask_of_infamy").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":mask_of_infamy"); @@ -3416,8 +3502,6 @@ public class ModItems { hazmat_paa_boots = new ArmorHazmat(MainRegistry.aMatPaa, 9, 3).setUnlocalizedName("hazmat_paa_boots").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":hazmat_paa_boots"); australium_iii = new ArmorAustralium(MainRegistry.aMatAus3, 9, 1).setUnlocalizedName("australium_iii").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":australium_iii"); - //australium_iv = new ArmorAustralium(MainRegistry.enumArmorMaterialAusIV, 9, 1).setUnlocalizedName("australium_iv").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":australium_iv"); - //australium_v = new ArmorAustralium(MainRegistry.enumArmorMaterialAusV, 9, 1).setUnlocalizedName("australium_v").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":australium_v"); jetpack_boost = new JetpackBooster(MainRegistry.aMatSteel, 9, 1).setUnlocalizedName("jetpack_boost").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":jetpack_boost"); jetpack_break = new JetpackBreak(MainRegistry.aMatSteel, 9, 1).setUnlocalizedName("jetpack_break").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":jetpack_break"); @@ -3428,13 +3512,6 @@ public class ModItems { cape_radiation = new ArmorModel(ArmorMaterial.CHAIN, 9, 1).setUnlocalizedName("cape_radiation").setCreativeTab(MainRegistry.consumableTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_radiation"); cape_gasmask = new ArmorModel(ArmorMaterial.CHAIN, 9, 1).setUnlocalizedName("cape_gasmask").setCreativeTab(MainRegistry.consumableTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_gasmask"); cape_schrabidium = new ArmorModel(MainRegistry.aMatSchrab, 9, 1).setUnlocalizedName("cape_schrabidium").setCreativeTab(MainRegistry.consumableTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_schrabidium"); - //cape_hbm = new ArmorModel(MainRegistry.enumArmorMaterialSchrabidium, 9, 1).setUnlocalizedName("cape_hbm").setCreativeTab(MainRegistry.consumableTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_unknown"); - //cape_dafnik = new ArmorModel(MainRegistry.enumArmorMaterialEmerald, 9, 1).setUnlocalizedName("cape_dafnik").setCreativeTab(MainRegistry.consumableTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_unknown"); - //cape_lpkukin = new ArmorModel(MainRegistry.enumArmorMaterialEmerald, 9, 1).setUnlocalizedName("cape_lpkukin").setCreativeTab(MainRegistry.consumableTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_unknown"); - //cape_vertice = new ArmorModel(MainRegistry.enumArmorMaterialEmerald, 9, 1).setUnlocalizedName("cape_vertice").setCreativeTab(MainRegistry.consumableTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_unknown"); - //cape_codered_ = new ArmorModel(MainRegistry.enumArmorMaterialEmerald, 9, 1).setUnlocalizedName("cape_codered_").setCreativeTab(MainRegistry.consumableTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_unknown"); - //cape_ayy = new ArmorModel(MainRegistry.enumArmorMaterialEmerald, 9, 1).setUnlocalizedName("cape_ayy").setCreativeTab(MainRegistry.consumableTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_unknown"); - //cape_nostalgia = new ArmorModel(MainRegistry.enumArmorMaterialEmerald, 9, 1).setUnlocalizedName("cape_nostalgia").setCreativeTab(MainRegistry.consumableTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_unknown"); schrabidium_hammer = new WeaponSpecial(MainRegistry.enumToolMaterialHammer).setUnlocalizedName("schrabidium_hammer").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":schrabidium_hammer"); shimmer_sledge = new WeaponSpecial(MainRegistry.enumToolMaterialSledge).setUnlocalizedName("shimmer_sledge").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":shimmer_sledge_original"); @@ -4729,6 +4806,7 @@ public class ModItems { GameRegistry.registerItem(gun_xvl1456, gun_xvl1456.getUnlocalizedName()); GameRegistry.registerItem(gun_osipr, gun_osipr.getUnlocalizedName()); GameRegistry.registerItem(gun_immolator, gun_immolator.getUnlocalizedName()); + GameRegistry.registerItem(gun_flamer, gun_flamer.getUnlocalizedName()); GameRegistry.registerItem(gun_cryolator, gun_cryolator.getUnlocalizedName()); GameRegistry.registerItem(gun_mp, gun_mp.getUnlocalizedName()); GameRegistry.registerItem(gun_brimstone, gun_brimstone.getUnlocalizedName()); @@ -4831,6 +4909,10 @@ public class ModItems { GameRegistry.registerItem(ammo_50bmg_explosive, ammo_50bmg_explosive.getUnlocalizedName()); GameRegistry.registerItem(ammo_50bmg_du, ammo_50bmg_du.getUnlocalizedName()); GameRegistry.registerItem(ammo_50bmg_star, ammo_50bmg_star.getUnlocalizedName()); + GameRegistry.registerItem(ammo_fuel, ammo_fuel.getUnlocalizedName()); + GameRegistry.registerItem(ammo_fuel_napalm, ammo_fuel_napalm.getUnlocalizedName()); + GameRegistry.registerItem(ammo_fuel_phosphorus, ammo_fuel_phosphorus.getUnlocalizedName()); + GameRegistry.registerItem(ammo_fuel_gas, ammo_fuel_gas.getUnlocalizedName()); GameRegistry.registerItem(ammo_rocket, ammo_rocket.getUnlocalizedName()); GameRegistry.registerItem(ammo_rocket_he, ammo_rocket_he.getUnlocalizedName()); GameRegistry.registerItem(ammo_rocket_incendiary, ammo_rocket_incendiary.getUnlocalizedName()); diff --git a/com/hbm/items/gear/ArmorAsbestos.java b/com/hbm/items/armor/ArmorAsbestos.java similarity index 96% rename from com/hbm/items/gear/ArmorAsbestos.java rename to com/hbm/items/armor/ArmorAsbestos.java index 67d68c152..b0933fdd2 100644 --- a/com/hbm/items/gear/ArmorAsbestos.java +++ b/com/hbm/items/armor/ArmorAsbestos.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.ScaledResolution; diff --git a/com/hbm/items/gear/ArmorAustralium.java b/com/hbm/items/armor/ArmorAustralium.java similarity index 98% rename from com/hbm/items/gear/ArmorAustralium.java rename to com/hbm/items/armor/ArmorAustralium.java index 6b1385e30..d80382cee 100644 --- a/com/hbm/items/gear/ArmorAustralium.java +++ b/com/hbm/items/armor/ArmorAustralium.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import java.util.List; import java.util.Random; diff --git a/com/hbm/items/gear/ArmorEuphemium.java b/com/hbm/items/armor/ArmorEuphemium.java similarity index 86% rename from com/hbm/items/gear/ArmorEuphemium.java rename to com/hbm/items/armor/ArmorEuphemium.java index 6ca1db9c2..2a9a3e0f9 100644 --- a/com/hbm/items/gear/ArmorEuphemium.java +++ b/com/hbm/items/armor/ArmorEuphemium.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; @@ -9,8 +9,8 @@ import net.minecraft.potion.Potion; import net.minecraft.potion.PotionEffect; import net.minecraft.world.World; +import com.hbm.handler.ArmorUtil; import com.hbm.items.ModItems; -import com.hbm.lib.Library; import com.hbm.lib.RefStrings; public class ArmorEuphemium extends ItemArmor { @@ -36,7 +36,7 @@ public class ArmorEuphemium extends ItemArmor { @Override public void onArmorTick(World world, EntityPlayer player, ItemStack armor) { - if(player instanceof EntityPlayer && Library.checkArmor(player, ModItems.euphemium_helmet, ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots)) + if(player instanceof EntityPlayer && ArmorUtil.checkArmor(player, ModItems.euphemium_helmet, ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots)) { player.addPotionEffect(new PotionEffect(Potion.regeneration.id, 5, 127, true)); player.addPotionEffect(new PotionEffect(Potion.resistance.id, 5, 127, true)); diff --git a/com/hbm/items/gear/ArmorFSB.java b/com/hbm/items/armor/ArmorFSB.java similarity index 99% rename from com/hbm/items/gear/ArmorFSB.java rename to com/hbm/items/armor/ArmorFSB.java index dcfce0e1e..9299171b1 100644 --- a/com/hbm/items/gear/ArmorFSB.java +++ b/com/hbm/items/armor/ArmorFSB.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import java.util.ArrayList; import java.util.HashMap; diff --git a/com/hbm/items/gear/ArmorHazmat.java b/com/hbm/items/armor/ArmorHazmat.java similarity index 97% rename from com/hbm/items/gear/ArmorHazmat.java rename to com/hbm/items/armor/ArmorHazmat.java index bbd256364..b6ce3807e 100644 --- a/com/hbm/items/gear/ArmorHazmat.java +++ b/com/hbm/items/armor/ArmorHazmat.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/items/gear/ArmorModel.java b/com/hbm/items/armor/ArmorModel.java similarity index 97% rename from com/hbm/items/gear/ArmorModel.java rename to com/hbm/items/armor/ArmorModel.java index 005548d16..0bb12ec3e 100644 --- a/com/hbm/items/gear/ArmorModel.java +++ b/com/hbm/items/armor/ArmorModel.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import java.util.List; diff --git a/com/hbm/items/gear/ArmorSchrabidium.java b/com/hbm/items/armor/ArmorSchrabidium.java similarity index 95% rename from com/hbm/items/gear/ArmorSchrabidium.java rename to com/hbm/items/armor/ArmorSchrabidium.java index 4fc618676..370a6dc1e 100644 --- a/com/hbm/items/gear/ArmorSchrabidium.java +++ b/com/hbm/items/armor/ArmorSchrabidium.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; diff --git a/com/hbm/items/gear/ArmorT45.java b/com/hbm/items/armor/ArmorT45.java similarity index 92% rename from com/hbm/items/gear/ArmorT45.java rename to com/hbm/items/armor/ArmorT45.java index 0d9ef924d..f5ecd2730 100644 --- a/com/hbm/items/gear/ArmorT45.java +++ b/com/hbm/items/armor/ArmorT45.java @@ -1,11 +1,11 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import java.util.List; import com.google.common.collect.Multimap; +import com.hbm.handler.ArmorUtil; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; -import com.hbm.lib.Library; +import com.hbm.items.machine.ItemBattery; import com.hbm.render.model.ModelT45Boots; import com.hbm.render.model.ModelT45Chest; import com.hbm.render.model.ModelT45Helmet; @@ -113,7 +113,7 @@ public class ArmorT45 extends ItemArmor implements ISpecialArmor { public ArmorProperties getProperties(EntityLivingBase player, ItemStack armor, DamageSource source, double damage, int slot) { // return null; - if (player instanceof EntityPlayer && Library.checkArmor((EntityPlayer) player, ModItems.t45_helmet, + if (player instanceof EntityPlayer && ArmorUtil.checkArmor((EntityPlayer) player, ModItems.t45_helmet, ModItems.t45_plate, ModItems.t45_legs, ModItems.t45_boots)) { if (source == DamageSource.inFire || source == DamageSource.onFire || source == DamageSource.fall || source == DamageSource.drown || source == DamageSource.cactus || source == DamageSource.magic @@ -184,13 +184,13 @@ public class ArmorT45 extends ItemArmor implements ISpecialArmor { } } - if (armor.stackTagCompound.getInteger("charge") > 0 && Library.checkArmor(player, ModItems.t45_helmet, + if (armor.stackTagCompound.getInteger("charge") > 0 && ArmorUtil.checkArmor(player, ModItems.t45_helmet, ModItems.t45_plate, ModItems.t45_legs, ModItems.t45_boots)) { armor.stackTagCompound.setInteger("charge", armor.stackTagCompound.getInteger("charge") - 1); } } - if (Library.checkArmor(player, ModItems.t45_helmet, ModItems.t45_plate, ModItems.t45_legs, + if (ArmorUtil.checkArmor(player, ModItems.t45_helmet, ModItems.t45_plate, ModItems.t45_legs, ModItems.t45_boots) && !world.isRemote) { if (player.inventory.armorInventory[2] != null && player.inventory.armorInventory[2].getItem() == ModItems.t45_plate diff --git a/com/hbm/items/gear/ArmorTest.java b/com/hbm/items/armor/ArmorTest.java similarity index 94% rename from com/hbm/items/gear/ArmorTest.java rename to com/hbm/items/armor/ArmorTest.java index 0a236df19..6b5697c6f 100644 --- a/com/hbm/items/gear/ArmorTest.java +++ b/com/hbm/items/armor/ArmorTest.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import com.hbm.items.ModItems; import com.hbm.lib.RefStrings; diff --git a/com/hbm/items/gear/JetpackBooster.java b/com/hbm/items/armor/JetpackBooster.java similarity index 99% rename from com/hbm/items/gear/JetpackBooster.java rename to com/hbm/items/armor/JetpackBooster.java index 31fd32323..da9fbdb4d 100644 --- a/com/hbm/items/gear/JetpackBooster.java +++ b/com/hbm/items/armor/JetpackBooster.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import java.util.List; diff --git a/com/hbm/items/gear/JetpackBreak.java b/com/hbm/items/armor/JetpackBreak.java similarity index 98% rename from com/hbm/items/gear/JetpackBreak.java rename to com/hbm/items/armor/JetpackBreak.java index e2fb4afb6..de968bf1d 100644 --- a/com/hbm/items/gear/JetpackBreak.java +++ b/com/hbm/items/armor/JetpackBreak.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import java.util.List; diff --git a/com/hbm/items/gear/JetpackRegular.java b/com/hbm/items/armor/JetpackRegular.java similarity index 98% rename from com/hbm/items/gear/JetpackRegular.java rename to com/hbm/items/armor/JetpackRegular.java index 6025b062a..75a0e3807 100644 --- a/com/hbm/items/gear/JetpackRegular.java +++ b/com/hbm/items/armor/JetpackRegular.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import java.util.List; diff --git a/com/hbm/items/gear/JetpackVectorized.java b/com/hbm/items/armor/JetpackVectorized.java similarity index 98% rename from com/hbm/items/gear/JetpackVectorized.java rename to com/hbm/items/armor/JetpackVectorized.java index 9ebca4f25..73c26e4f0 100644 --- a/com/hbm/items/gear/JetpackVectorized.java +++ b/com/hbm/items/armor/JetpackVectorized.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import java.util.List; diff --git a/com/hbm/items/gear/MaskOfInfamy.java b/com/hbm/items/armor/MaskOfInfamy.java similarity index 90% rename from com/hbm/items/gear/MaskOfInfamy.java rename to com/hbm/items/armor/MaskOfInfamy.java index 2359fcb00..a08884f3c 100644 --- a/com/hbm/items/gear/MaskOfInfamy.java +++ b/com/hbm/items/armor/MaskOfInfamy.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import com.hbm.lib.RefStrings; diff --git a/com/hbm/items/gear/ModArmor.java b/com/hbm/items/armor/ModArmor.java similarity index 96% rename from com/hbm/items/gear/ModArmor.java rename to com/hbm/items/armor/ModArmor.java index de761997c..d62eac910 100644 --- a/com/hbm/items/gear/ModArmor.java +++ b/com/hbm/items/armor/ModArmor.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.armor; import com.hbm.items.ModItems; import com.hbm.lib.RefStrings; diff --git a/com/hbm/items/tool/ItemAssemblyTemplate.java b/com/hbm/items/machine/ItemAssemblyTemplate.java similarity index 99% rename from com/hbm/items/tool/ItemAssemblyTemplate.java rename to com/hbm/items/machine/ItemAssemblyTemplate.java index 9a7830801..bdacd6728 100644 --- a/com/hbm/items/tool/ItemAssemblyTemplate.java +++ b/com/hbm/items/machine/ItemAssemblyTemplate.java @@ -1,4 +1,4 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.Arrays; import java.util.List; diff --git a/com/hbm/items/special/ItemBattery.java b/com/hbm/items/machine/ItemBattery.java similarity index 96% rename from com/hbm/items/special/ItemBattery.java rename to com/hbm/items/machine/ItemBattery.java index 4d2f97cfd..91528937f 100644 --- a/com/hbm/items/special/ItemBattery.java +++ b/com/hbm/items/machine/ItemBattery.java @@ -1,4 +1,4 @@ -package com.hbm.items.special; +package com.hbm.items.machine; import java.util.List; diff --git a/com/hbm/items/special/ItemBlades.java b/com/hbm/items/machine/ItemBlades.java similarity index 94% rename from com/hbm/items/special/ItemBlades.java rename to com/hbm/items/machine/ItemBlades.java index 54af61630..ff02ac7df 100644 --- a/com/hbm/items/special/ItemBlades.java +++ b/com/hbm/items/machine/ItemBlades.java @@ -1,4 +1,4 @@ -package com.hbm.items.special; +package com.hbm.items.machine; import java.util.List; diff --git a/com/hbm/items/special/ItemCapacitor.java b/com/hbm/items/machine/ItemCapacitor.java similarity index 94% rename from com/hbm/items/special/ItemCapacitor.java rename to com/hbm/items/machine/ItemCapacitor.java index 649a843f9..ac3de768e 100644 --- a/com/hbm/items/special/ItemCapacitor.java +++ b/com/hbm/items/machine/ItemCapacitor.java @@ -1,4 +1,4 @@ -package com.hbm.items.special; +package com.hbm.items.machine; import java.util.List; diff --git a/com/hbm/items/tool/ItemCassette.java b/com/hbm/items/machine/ItemCassette.java similarity index 99% rename from com/hbm/items/tool/ItemCassette.java rename to com/hbm/items/machine/ItemCassette.java index 48a47f902..1d129685e 100644 --- a/com/hbm/items/tool/ItemCassette.java +++ b/com/hbm/items/machine/ItemCassette.java @@ -1,4 +1,4 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.List; diff --git a/com/hbm/items/special/ItemCatalyst.java b/com/hbm/items/machine/ItemCatalyst.java similarity index 98% rename from com/hbm/items/special/ItemCatalyst.java rename to com/hbm/items/machine/ItemCatalyst.java index a0dbfe25a..99ffe4a11 100644 --- a/com/hbm/items/special/ItemCatalyst.java +++ b/com/hbm/items/machine/ItemCatalyst.java @@ -1,4 +1,4 @@ -package com.hbm.items.special; +package com.hbm.items.machine; import java.util.List; diff --git a/com/hbm/items/tool/ItemChemistryIcon.java b/com/hbm/items/machine/ItemChemistryIcon.java similarity index 94% rename from com/hbm/items/tool/ItemChemistryIcon.java rename to com/hbm/items/machine/ItemChemistryIcon.java index 83e6d7639..0499585bb 100644 --- a/com/hbm/items/tool/ItemChemistryIcon.java +++ b/com/hbm/items/machine/ItemChemistryIcon.java @@ -1,9 +1,10 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.List; import com.hbm.items.ModItems; -import com.hbm.items.tool.ItemChemistryTemplate.EnumChemistryTemplate; +import com.hbm.items.machine.ItemChemistryTemplate.EnumChemistryTemplate; + import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.client.renderer.texture.IIconRegister; diff --git a/com/hbm/items/tool/ItemChemistryTemplate.java b/com/hbm/items/machine/ItemChemistryTemplate.java similarity index 98% rename from com/hbm/items/tool/ItemChemistryTemplate.java rename to com/hbm/items/machine/ItemChemistryTemplate.java index 9b7acdf17..a4e0b3e99 100644 --- a/com/hbm/items/tool/ItemChemistryTemplate.java +++ b/com/hbm/items/machine/ItemChemistryTemplate.java @@ -1,4 +1,4 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.List; @@ -81,7 +81,8 @@ public class ItemChemistryTemplate extends Item { CONCRETE, SOLID_FUEL, ELECTROLYSIS, - XENON; + XENON, + SATURN; public static EnumChemistryTemplate getEnum(int i) { if(i < EnumChemistryTemplate.values().length) @@ -249,6 +250,8 @@ public class ItemChemistryTemplate extends Item { return 400; case XENON: return 600; + case SATURN: + return 600; default: return 100; } diff --git a/com/hbm/items/tool/ItemFluidDuct.java b/com/hbm/items/machine/ItemFluidDuct.java similarity index 99% rename from com/hbm/items/tool/ItemFluidDuct.java rename to com/hbm/items/machine/ItemFluidDuct.java index 28c4eba08..feda809e5 100644 --- a/com/hbm/items/tool/ItemFluidDuct.java +++ b/com/hbm/items/machine/ItemFluidDuct.java @@ -1,4 +1,4 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.List; diff --git a/com/hbm/items/tool/ItemFluidIcon.java b/com/hbm/items/machine/ItemFluidIcon.java similarity index 98% rename from com/hbm/items/tool/ItemFluidIcon.java rename to com/hbm/items/machine/ItemFluidIcon.java index b7197af2d..1f8ba1719 100644 --- a/com/hbm/items/tool/ItemFluidIcon.java +++ b/com/hbm/items/machine/ItemFluidIcon.java @@ -1,4 +1,4 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.List; import com.hbm.handler.FluidTypeHandler.FluidType; diff --git a/com/hbm/items/tool/ItemFluidIdentifier.java b/com/hbm/items/machine/ItemFluidIdentifier.java similarity index 99% rename from com/hbm/items/tool/ItemFluidIdentifier.java rename to com/hbm/items/machine/ItemFluidIdentifier.java index 9d6be9f18..7671c0aaa 100644 --- a/com/hbm/items/tool/ItemFluidIdentifier.java +++ b/com/hbm/items/machine/ItemFluidIdentifier.java @@ -1,4 +1,4 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.List; import com.hbm.handler.FluidTypeHandler.FluidType; diff --git a/com/hbm/items/tool/ItemFluidTank.java b/com/hbm/items/machine/ItemFluidTank.java similarity index 98% rename from com/hbm/items/tool/ItemFluidTank.java rename to com/hbm/items/machine/ItemFluidTank.java index 740d25ae6..1c953b651 100644 --- a/com/hbm/items/tool/ItemFluidTank.java +++ b/com/hbm/items/machine/ItemFluidTank.java @@ -1,4 +1,4 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.List; import com.hbm.handler.FluidTypeHandler.FluidType; diff --git a/com/hbm/items/special/ItemFuelRod.java b/com/hbm/items/machine/ItemFuelRod.java similarity index 91% rename from com/hbm/items/special/ItemFuelRod.java rename to com/hbm/items/machine/ItemFuelRod.java index da11b8a6d..d19b452e8 100644 --- a/com/hbm/items/special/ItemFuelRod.java +++ b/com/hbm/items/machine/ItemFuelRod.java @@ -1,7 +1,9 @@ -package com.hbm.items.special; +package com.hbm.items.machine; import java.util.List; +import com.hbm.items.special.ItemRadioactive; + import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; diff --git a/com/hbm/items/special/ItemLens.java b/com/hbm/items/machine/ItemLens.java similarity index 97% rename from com/hbm/items/special/ItemLens.java rename to com/hbm/items/machine/ItemLens.java index d2c668f90..4e8a3d983 100644 --- a/com/hbm/items/special/ItemLens.java +++ b/com/hbm/items/machine/ItemLens.java @@ -1,4 +1,4 @@ -package com.hbm.items.special; +package com.hbm.items.machine; import java.util.List; diff --git a/com/hbm/items/tool/ItemReactorSensor.java b/com/hbm/items/machine/ItemReactorSensor.java similarity index 98% rename from com/hbm/items/tool/ItemReactorSensor.java rename to com/hbm/items/machine/ItemReactorSensor.java index c593fec8a..ebc05a372 100644 --- a/com/hbm/items/tool/ItemReactorSensor.java +++ b/com/hbm/items/machine/ItemReactorSensor.java @@ -1,4 +1,4 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.List; diff --git a/com/hbm/items/tool/ItemSatChip.java b/com/hbm/items/machine/ItemSatChip.java similarity index 98% rename from com/hbm/items/tool/ItemSatChip.java rename to com/hbm/items/machine/ItemSatChip.java index 0369077d1..8b9524219 100644 --- a/com/hbm/items/tool/ItemSatChip.java +++ b/com/hbm/items/machine/ItemSatChip.java @@ -1,4 +1,4 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.List; diff --git a/com/hbm/items/tool/ItemTemplateFolder.java b/com/hbm/items/machine/ItemTemplateFolder.java similarity index 96% rename from com/hbm/items/tool/ItemTemplateFolder.java rename to com/hbm/items/machine/ItemTemplateFolder.java index bcd4a8c94..4cf7dab59 100644 --- a/com/hbm/items/tool/ItemTemplateFolder.java +++ b/com/hbm/items/machine/ItemTemplateFolder.java @@ -1,4 +1,4 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.List; diff --git a/com/hbm/items/tool/ItemTurretBiometry.java b/com/hbm/items/machine/ItemTurretBiometry.java similarity index 98% rename from com/hbm/items/tool/ItemTurretBiometry.java rename to com/hbm/items/machine/ItemTurretBiometry.java index 867474d22..eb3f91dd0 100644 --- a/com/hbm/items/tool/ItemTurretBiometry.java +++ b/com/hbm/items/machine/ItemTurretBiometry.java @@ -1,4 +1,4 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.Arrays; import java.util.List; diff --git a/com/hbm/items/tool/ItemTurretChip.java b/com/hbm/items/machine/ItemTurretChip.java similarity index 97% rename from com/hbm/items/tool/ItemTurretChip.java rename to com/hbm/items/machine/ItemTurretChip.java index 24491255f..9fec4ad8d 100644 --- a/com/hbm/items/tool/ItemTurretChip.java +++ b/com/hbm/items/machine/ItemTurretChip.java @@ -1,4 +1,4 @@ -package com.hbm.items.tool; +package com.hbm.items.machine; import java.util.Arrays; import com.hbm.blocks.bomb.TurretBase; diff --git a/com/hbm/items/special/ItemCustomLore.java b/com/hbm/items/special/ItemCustomLore.java index 789dc99ae..ad5fd286a 100644 --- a/com/hbm/items/special/ItemCustomLore.java +++ b/com/hbm/items/special/ItemCustomLore.java @@ -2,8 +2,8 @@ package com.hbm.items.special; import java.util.List; +import com.hbm.handler.ArmorUtil; import com.hbm.items.ModItems; -import com.hbm.lib.Library; import com.hbm.main.MainRegistry; import cpw.mods.fml.relauncher.Side; @@ -666,7 +666,7 @@ public class ItemCustomLore extends Item { { list.add("Can be used with a screwdriver to pick locks."); - if(Library.checkArmorPiece(player, ModItems.jackt, 2) || Library.checkArmorPiece(player, ModItems.jackt2, 2)) + if(ArmorUtil.checkArmorPiece(player, ModItems.jackt, 2) || ArmorUtil.checkArmorPiece(player, ModItems.jackt2, 2)) list.add("Success rate of picking standard lock is 100%!"); else list.add("Success rate of picking standard lock is ~10%"); diff --git a/com/hbm/items/special/ItemPotatos.java b/com/hbm/items/special/ItemPotatos.java index 41b426246..69aefa465 100644 --- a/com/hbm/items/special/ItemPotatos.java +++ b/com/hbm/items/special/ItemPotatos.java @@ -1,5 +1,7 @@ package com.hbm.items.special; +import com.hbm.items.machine.ItemBattery; + import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; diff --git a/com/hbm/items/special/ItemRadioactive.java b/com/hbm/items/special/ItemRadioactive.java index 3e98ca044..064ae226d 100644 --- a/com/hbm/items/special/ItemRadioactive.java +++ b/com/hbm/items/special/ItemRadioactive.java @@ -2,6 +2,7 @@ package com.hbm.items.special; import java.util.List; +import com.hbm.handler.ArmorUtil; import com.hbm.lib.Library; import net.minecraft.entity.Entity; @@ -50,6 +51,7 @@ public class ItemRadioactive extends ItemCustomLore { if(this.fire) entity.setFire(5); + if(!(entity instanceof EntityPlayer && ArmorUtil.checkForGoggles((EntityPlayer)entity))) if(this.blinding) ((EntityLivingBase) entity).addPotionEffect(new PotionEffect(Potion.blindness.id, 100, 0)); } diff --git a/com/hbm/items/special/ItemStarterKit.java b/com/hbm/items/special/ItemStarterKit.java index e157db185..f938f762e 100644 --- a/com/hbm/items/special/ItemStarterKit.java +++ b/com/hbm/items/special/ItemStarterKit.java @@ -5,6 +5,7 @@ import java.util.List; import com.hbm.blocks.ModBlocks; import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.items.ModItems; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import cpw.mods.fml.relauncher.Side; diff --git a/com/hbm/items/special/ItemSyringe.java b/com/hbm/items/special/ItemSyringe.java index 3c32b36ed..31c242fee 100644 --- a/com/hbm/items/special/ItemSyringe.java +++ b/com/hbm/items/special/ItemSyringe.java @@ -4,10 +4,10 @@ import java.util.List; import java.util.Random; import com.hbm.items.ModItems; -import com.hbm.items.gear.JetpackBooster; -import com.hbm.items.gear.JetpackBreak; -import com.hbm.items.gear.JetpackRegular; -import com.hbm.items.gear.JetpackVectorized; +import com.hbm.items.armor.JetpackBooster; +import com.hbm.items.armor.JetpackBreak; +import com.hbm.items.armor.JetpackRegular; +import com.hbm.items.armor.JetpackVectorized; import com.hbm.items.weapon.ItemGunBase; import com.hbm.lib.ModDamageSource; import com.hbm.potion.HbmPotion; diff --git a/com/hbm/items/gear/AxeSchrabidium.java b/com/hbm/items/tool/AxeSchrabidium.java similarity index 87% rename from com/hbm/items/gear/AxeSchrabidium.java rename to com/hbm/items/tool/AxeSchrabidium.java index ebb07a2b9..b8b283ac3 100644 --- a/com/hbm/items/gear/AxeSchrabidium.java +++ b/com/hbm/items/tool/AxeSchrabidium.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import net.minecraft.item.EnumRarity; import net.minecraft.item.ItemAxe; diff --git a/com/hbm/items/gear/BigSword.java b/com/hbm/items/tool/BigSword.java similarity index 95% rename from com/hbm/items/gear/BigSword.java rename to com/hbm/items/tool/BigSword.java index 91ab922d4..d619ca02c 100644 --- a/com/hbm/items/gear/BigSword.java +++ b/com/hbm/items/tool/BigSword.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; diff --git a/com/hbm/items/gear/HoeSchrabidium.java b/com/hbm/items/tool/HoeSchrabidium.java similarity index 87% rename from com/hbm/items/gear/HoeSchrabidium.java rename to com/hbm/items/tool/HoeSchrabidium.java index 75244a89a..8a82753da 100644 --- a/com/hbm/items/gear/HoeSchrabidium.java +++ b/com/hbm/items/tool/HoeSchrabidium.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import net.minecraft.item.EnumRarity; import net.minecraft.item.ItemHoe; diff --git a/com/hbm/items/tool/ItemRamManipulator.java b/com/hbm/items/tool/ItemRamManipulator.java deleted file mode 100644 index 5abdf13a1..000000000 --- a/com/hbm/items/tool/ItemRamManipulator.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.hbm.items.tool; - -import java.util.List; - -import com.hbm.lib.Library; -import com.hbm.main.MainRegistry; - -import net.minecraft.block.Block; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.init.Blocks; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.world.World; - -public class ItemRamManipulator extends Item { - - @Override - public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) { - - if(MainRegistry.polaroidID == 11) - list.add("A cheating device."); - else - list.add("A broken remote."); - if (itemstack.getTagCompound() == null) { - } else { - list.add(""); - list.add(String.valueOf(itemstack.stackTagCompound.getInteger("code"))); - } - } - - @Override - public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int p_77648_7_, - float p_77648_8_, float p_77648_9_, float p_77648_10_) { - if (stack.stackTagCompound == null) { - stack.stackTagCompound = new NBTTagCompound(); - } - - if (!player.isSneaking()) { - - Block block = world.getBlock(x, y, z); - - if(block == Blocks.dirt) - stack.stackTagCompound.setInteger("code", stack.stackTagCompound.getInteger("code") * 10 + 0); - if(block == Blocks.cobblestone) - stack.stackTagCompound.setInteger("code", stack.stackTagCompound.getInteger("code") * 10 + 1); - if(block == Blocks.stone) - stack.stackTagCompound.setInteger("code", stack.stackTagCompound.getInteger("code") * 10 + 2); - if(block == Blocks.log) - stack.stackTagCompound.setInteger("code", stack.stackTagCompound.getInteger("code") * 10 + 3); - if(block == Blocks.planks) - stack.stackTagCompound.setInteger("code", stack.stackTagCompound.getInteger("code") * 10 + 4); - if(block == Blocks.gravel) - stack.stackTagCompound.setInteger("code", stack.stackTagCompound.getInteger("code") * 10 + 5); - if(block == Blocks.sand) - stack.stackTagCompound.setInteger("code", stack.stackTagCompound.getInteger("code") * 10 + 6); - if(block == Blocks.sandstone) - stack.stackTagCompound.setInteger("code", stack.stackTagCompound.getInteger("code") * 10 + 7); - if(block == Blocks.tallgrass) - stack.stackTagCompound.setInteger("code", stack.stackTagCompound.getInteger("code") * 10 + 8); - if(block == Blocks.double_plant) - stack.stackTagCompound.setInteger("code", stack.stackTagCompound.getInteger("code") * 10 + 9); - - return true; - } - - return false; - } - - @Override - public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) { - - if (stack.stackTagCompound == null) { - } else { - if(!player.isSneaking()) - { - if(Library.getItemByCode(stack.stackTagCompound.getInteger("code")) != null) - player.inventory.addItemStackToInventory(new ItemStack((Library.getItemByCode(stack.stackTagCompound.getInteger("code"))))); - } else { - stack.stackTagCompound.setInteger("code", 0); - } - } - - return stack; - - } -} diff --git a/com/hbm/items/tool/ItemSatInterface.java b/com/hbm/items/tool/ItemSatInterface.java index 77a3f1273..29c79b003 100644 --- a/com/hbm/items/tool/ItemSatInterface.java +++ b/com/hbm/items/tool/ItemSatInterface.java @@ -1,6 +1,7 @@ package com.hbm.items.tool; import com.hbm.items.ModItems; +import com.hbm.items.machine.ItemSatChip; import com.hbm.main.MainRegistry; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.SatPanelPacket; diff --git a/com/hbm/items/tool/ItemToolAbility.java b/com/hbm/items/tool/ItemToolAbility.java new file mode 100644 index 000000000..aeae1625c --- /dev/null +++ b/com/hbm/items/tool/ItemToolAbility.java @@ -0,0 +1,283 @@ +package com.hbm.items.tool; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + +import com.google.common.collect.HashMultimap; +import com.google.common.collect.Multimap; +import com.google.common.collect.Sets; +import com.hbm.handler.ToolAbility; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.block.Block; +import net.minecraft.block.material.Material; +import net.minecraft.client.Minecraft; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.ai.attributes.AttributeModifier; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.EntityPlayerMP; +import net.minecraft.init.Blocks; +import net.minecraft.item.ItemStack; +import net.minecraft.item.ItemTool; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.network.play.client.C07PacketPlayerDigging; +import net.minecraft.network.play.server.S23PacketBlockChange; +import net.minecraft.util.ChatComponentText; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.world.World; +import net.minecraftforge.common.ForgeHooks; +import net.minecraftforge.event.world.BlockEvent; + +public class ItemToolAbility extends ItemTool { + + private EnumToolType toolType; + //was there a reason for this to be private? + protected float damage; + protected double movement; + private List breakAbility = new ArrayList() {{ add(null); }}; + + public static enum EnumToolType { + + SWORD( + Sets.newHashSet(new Material[] { Material.plants, Material.vine, Material.coral, Material.leaves, Material.gourd }), + Sets.newHashSet(new Block[] { Blocks.web }) + ), + PICKAXE( + Sets.newHashSet(new Material[] { Material.iron, Material.anvil, Material.rock }), + Sets.newHashSet(new Block[] { Blocks.cobblestone, Blocks.double_stone_slab, Blocks.stone_slab, Blocks.stone, Blocks.sandstone, Blocks.mossy_cobblestone, Blocks.iron_ore, Blocks.iron_block, Blocks.coal_ore, Blocks.gold_block, Blocks.gold_ore, Blocks.diamond_ore, Blocks.diamond_block, Blocks.ice, Blocks.netherrack, Blocks.lapis_ore, Blocks.lapis_block, Blocks.redstone_ore, Blocks.lit_redstone_ore, Blocks.rail, Blocks.detector_rail, Blocks.golden_rail, Blocks.activator_rail }) + ), + AXE( + Sets.newHashSet(new Material[] { Material.wood, Material.plants, Material.vine }), + Sets.newHashSet(new Block[] { Blocks.planks, Blocks.bookshelf, Blocks.log, Blocks.log2, Blocks.chest, Blocks.pumpkin, Blocks.lit_pumpkin }) + ), + SHOVEL( + Sets.newHashSet(new Material[] { Material.clay, Material.sand, Material.ground, Material.snow, Material.craftedSnow }), + Sets.newHashSet(new Block[] { Blocks.grass, Blocks.dirt, Blocks.sand, Blocks.gravel, Blocks.snow_layer, Blocks.snow, Blocks.clay, Blocks.farmland, Blocks.soul_sand, Blocks.mycelium }) + ); + + private EnumToolType(Set materials, Set blocks) { + this.materials = materials; + this.blocks = blocks; + } + + public Set materials = new HashSet(); + public Set blocks = new HashSet(); + } + + public ItemToolAbility(float damage, double movement, ToolMaterial material, EnumToolType type) { + super(0, material, type.blocks); + this.damage = damage; + this.movement = movement; + this.toolType = type; + this.setHarvestLevel(type.toString().toLowerCase(), material.getHarvestLevel()); + } + + public ItemToolAbility addBreakAbility(ToolAbility breakAbility) { + this.breakAbility.add(breakAbility); + return this; + } + + @Override + public boolean onBlockStartBreak(ItemStack stack, int x, int y, int z, EntityPlayer player) { + + World world = player.worldObj; + Block block = world.getBlock(x, y, z); + int meta = world.getBlockMetadata(x, y, z); + + if(!world.isRemote && canHarvestBlock(block, stack) && this.getCurrentAbility(stack) != null && canOperate(stack)) + this.getCurrentAbility(stack).onDig(world, x, y, z, player, block, meta, this); + + return false; + } + + @Override + public float getDigSpeed(ItemStack stack, Block block, int meta) { + + if(!canOperate(stack)) + return 1; + + if(toolType == null) + return super.getDigSpeed(stack, block, meta); + + if(toolType.blocks.contains(block) || toolType.materials.contains(block.getMaterial())) + return this.efficiencyOnProperMaterial; + + return super.getDigSpeed(stack, block, meta); + } + + @Override + public boolean canHarvestBlock(Block block, ItemStack stack) { + + if(!canOperate(stack)) return false; + + return getDigSpeed(stack, block, 0) > 1; + } + + @Override + public Multimap getItemAttributeModifiers() { + + Multimap multimap = HashMultimap.create(); + multimap.put(SharedMonsterAttributes.attackDamage.getAttributeUnlocalizedName(), new AttributeModifier(field_111210_e, "Tool modifier", (double)this.damage, 0)); + multimap.put(SharedMonsterAttributes.movementSpeed.getAttributeUnlocalizedName(), new AttributeModifier(field_111210_e, "Tool modifier", movement, 1)); + return multimap; + } + + //that's slimelad's code + //creative commons 3 and all that jazz + public void breakExtraBlock(World world, int x, int y, int z, EntityPlayer playerEntity, int refX, int refY, int refZ) { + + if (world.isAirBlock(x, y, z)) + return; + + if(!(playerEntity instanceof EntityPlayerMP)) + return; + + EntityPlayerMP player = (EntityPlayerMP) playerEntity; + ItemStack stack = player.getHeldItem(); + + Block block = world.getBlock(x, y, z); + int meta = world.getBlockMetadata(x, y, z); + + if(!canHarvestBlock(block, stack)) + return; + + Block refBlock = world.getBlock(refX, refY, refZ); + float refStrength = ForgeHooks.blockStrength(refBlock, player, world, refX, refY, refZ); + float strength = ForgeHooks.blockStrength(block, player, world, x,y,z); + + if (!ForgeHooks.canHarvestBlock(block, player, meta) || refStrength/strength > 10f) + return; + + BlockEvent.BreakEvent event = ForgeHooks.onBlockBreakEvent(world, player.theItemInWorldManager.getGameType(), player, x,y,z); + if(event.isCanceled()) + return; + + if (player.capabilities.isCreativeMode) { + block.onBlockHarvested(world, x, y, z, meta, player); + if (block.removedByPlayer(world, player, x, y, z, false)) + block.onBlockDestroyedByPlayer(world, x, y, z, meta); + + if (!world.isRemote) { + player.playerNetServerHandler.sendPacket(new S23PacketBlockChange(x, y, z, world)); + } + return; + } + + player.getCurrentEquippedItem().func_150999_a(world, block, x, y, z, player); + + if (!world.isRemote) { + + block.onBlockHarvested(world, x,y,z, meta, player); + + if(block.removedByPlayer(world, player, x,y,z, true)) + { + block.onBlockDestroyedByPlayer( world, x,y,z, meta); + block.harvestBlock(world, player, x,y,z, meta); + block.dropXpOnBlockBreak(world, x,y,z, event.getExpToDrop()); + } + + player.playerNetServerHandler.sendPacket(new S23PacketBlockChange(x, y, z, world)); + + } else { + world.playAuxSFX(2001, x, y, z, Block.getIdFromBlock(block) + (meta << 12)); + if(block.removedByPlayer(world, player, x,y,z, true)) + { + block.onBlockDestroyedByPlayer(world, x,y,z, meta); + } + ItemStack itemstack = player.getCurrentEquippedItem(); + if (itemstack != null) + { + itemstack.func_150999_a(world, block, x, y, z, player); + + if (itemstack.stackSize == 0) + { + player.destroyCurrentEquippedItem(); + } + } + + Minecraft.getMinecraft().getNetHandler().addToSendQueue(new C07PacketPlayerDigging(2, x, y, z, Minecraft.getMinecraft().objectMouseOver.sideHit)); + } + } + + @SideOnly(Side.CLIENT) + public boolean hasEffect(ItemStack stack) { + + return getCurrentAbility(stack) != null ? true : super.hasEffect(stack); + } + + @SideOnly(Side.CLIENT) + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) { + + if(this.breakAbility.size() > 1) { + list.add("Abilities: "); + + for(ToolAbility ability : this.breakAbility) { + + if(ability != null) { + + if(getCurrentAbility(stack) == ability) + list.add(" >" + EnumChatFormatting.GOLD + ability.getFullName()); + else + list.add(" " + EnumChatFormatting.GOLD + ability.getFullName()); + } + } + + list.add("Right click to cycle through abilities!"); + list.add("Sneak-click to turn abilitty off!"); + } + } + + public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) { + + if(world.isRemote || this.breakAbility.isEmpty() || !canOperate(stack)) + return stack; + + int i = getAbility(stack); + i++; + + if(player.isSneaking()) + i = 0; + + setAbility(stack, i % this.breakAbility.size()); + + if(getCurrentAbility(stack) != null) { + player.addChatComponentMessage(new ChatComponentText("[Enabled " + getCurrentAbility(stack).getFullName() + "]")); + } else { + player.addChatComponentMessage(new ChatComponentText("[Tool ability deactivated]")); + } + + world.playSoundAtEntity(player, "random.orb", 0.25F, getCurrentAbility(stack) == null ? 0.75F : 1.25F); + + return stack; + } + + private ToolAbility getCurrentAbility(ItemStack stack) { + + int ability = getAbility(stack) % this.breakAbility.size(); + + return this.breakAbility.get(ability); + } + + private int getAbility(ItemStack stack) { + + if(stack.hasTagCompound()) + return stack.stackTagCompound.getInteger("ability"); + + return 0; + } + + private void setAbility(ItemStack stack, int ability) { + + if(!stack.hasTagCompound()) + stack.stackTagCompound = new NBTTagCompound(); + + stack.stackTagCompound.setInteger("ability", ability); + } + + protected boolean canOperate(ItemStack stack) { + return true; + } +} diff --git a/com/hbm/items/tool/ItemToolAbilityPower.java b/com/hbm/items/tool/ItemToolAbilityPower.java new file mode 100644 index 000000000..e952a7a13 --- /dev/null +++ b/com/hbm/items/tool/ItemToolAbilityPower.java @@ -0,0 +1,120 @@ +package com.hbm.items.tool; + +import java.util.List; + +import com.hbm.lib.Library; + +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.nbt.NBTTagCompound; + +public class ItemToolAbilityPower extends ItemToolAbility { + + public long maxPower = 1; + public long chargeRate; + public long consumption; + + public ItemToolAbilityPower(float damage, double movement, ToolMaterial material, EnumToolType type, long maxPower, long chargeRate, long consumption) { + super(damage, movement, material, type); + this.maxPower = maxPower; + this.chargeRate = chargeRate; + this.consumption = consumption; + this.setMaxDamage(1); + } + + public void chargeBattery(ItemStack stack, long i) { + if(stack.getItem() instanceof ItemToolAbilityPower) { + if(stack.hasTagCompound()) { + stack.stackTagCompound.setLong("charge", stack.stackTagCompound.getLong("charge") + i); + } else { + stack.stackTagCompound = new NBTTagCompound(); + stack.stackTagCompound.setLong("charge", i); + } + } + } + + public void setCharge(ItemStack stack, long i) { + if(stack.getItem() instanceof ItemToolAbilityPower) { + if(stack.hasTagCompound()) { + stack.stackTagCompound.setLong("charge", i); + } else { + stack.stackTagCompound = new NBTTagCompound(); + stack.stackTagCompound.setLong("charge", i); + } + } + } + + public void dischargeBattery(ItemStack stack, long i) { + if(stack.getItem() instanceof ItemToolAbilityPower) { + if(stack.hasTagCompound()) { + stack.stackTagCompound.setLong("charge", stack.stackTagCompound.getLong("charge") - i); + } else { + stack.stackTagCompound = new NBTTagCompound(); + stack.stackTagCompound.setLong("charge", this.maxPower - i); + } + + if(stack.stackTagCompound.getLong("charge") < 0) + stack.stackTagCompound.setLong("charge", 0); + } + } + + public static long getCharge(ItemStack stack) { + if(stack.getItem() instanceof ItemToolAbilityPower) { + if(stack.hasTagCompound()) { + return stack.stackTagCompound.getLong("charge"); + } else { + stack.stackTagCompound = new NBTTagCompound(); + stack.stackTagCompound.setLong("charge", ((ItemToolAbilityPower)stack.getItem()).maxPower); + return stack.stackTagCompound.getLong("charge"); + } + } + + return 0; + } + + @SideOnly(Side.CLIENT) + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) { + + list.add("Charge: " + Library.getShortNumber(getCharge(stack)) + " / " + Library.getShortNumber(maxPower)); + + super.addInformation(stack, player, list, ext); + } + + public boolean showDurabilityBar(ItemStack stack) { + + return getCharge(stack) < maxPower; + } + + public double getDurabilityForDisplay(ItemStack stack) { + + return 1 - (double)getCharge(stack) / (double)maxPower; + } + + protected boolean canOperate(ItemStack stack) { + + return getCharge(stack) >= this.consumption; + } + + public long getMaxCharge() { + return maxPower; + } + + public long getChargeRate() { + return chargeRate; + } + + public static long getMaxChargeStatic(ItemStack stack) { + return ((ItemToolAbilityPower)stack.getItem()).maxPower; + } + + public void setDamage(ItemStack stack, int damage) + { + this.dischargeBattery(stack, damage * consumption); + } + + public boolean isDamageable() { + return true; + } +} diff --git a/com/hbm/items/gear/ModAxe.java b/com/hbm/items/tool/ModAxe.java similarity index 79% rename from com/hbm/items/gear/ModAxe.java rename to com/hbm/items/tool/ModAxe.java index 941496630..931b85a0b 100644 --- a/com/hbm/items/gear/ModAxe.java +++ b/com/hbm/items/tool/ModAxe.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import net.minecraft.item.ItemAxe; diff --git a/com/hbm/items/gear/ModHoe.java b/com/hbm/items/tool/ModHoe.java similarity index 79% rename from com/hbm/items/gear/ModHoe.java rename to com/hbm/items/tool/ModHoe.java index 994c50fb2..048428e13 100644 --- a/com/hbm/items/gear/ModHoe.java +++ b/com/hbm/items/tool/ModHoe.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import net.minecraft.item.ItemHoe; diff --git a/com/hbm/items/gear/ModPickaxe.java b/com/hbm/items/tool/ModPickaxe.java similarity index 80% rename from com/hbm/items/gear/ModPickaxe.java rename to com/hbm/items/tool/ModPickaxe.java index 3567a2932..9255aff50 100644 --- a/com/hbm/items/gear/ModPickaxe.java +++ b/com/hbm/items/tool/ModPickaxe.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import net.minecraft.item.ItemPickaxe; diff --git a/com/hbm/items/gear/ModSpade.java b/com/hbm/items/tool/ModSpade.java similarity index 79% rename from com/hbm/items/gear/ModSpade.java rename to com/hbm/items/tool/ModSpade.java index 17649e799..5815e77e1 100644 --- a/com/hbm/items/gear/ModSpade.java +++ b/com/hbm/items/tool/ModSpade.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import net.minecraft.item.ItemSpade; diff --git a/com/hbm/items/gear/ModSword.java b/com/hbm/items/tool/ModSword.java similarity index 94% rename from com/hbm/items/gear/ModSword.java rename to com/hbm/items/tool/ModSword.java index 4f0ac0bcc..93f78eee0 100644 --- a/com/hbm/items/gear/ModSword.java +++ b/com/hbm/items/tool/ModSword.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import java.util.List; diff --git a/com/hbm/items/gear/PickaxeSchrabidium.java b/com/hbm/items/tool/PickaxeSchrabidium.java similarity index 88% rename from com/hbm/items/gear/PickaxeSchrabidium.java rename to com/hbm/items/tool/PickaxeSchrabidium.java index 1bb9b2271..cd0cf2434 100644 --- a/com/hbm/items/gear/PickaxeSchrabidium.java +++ b/com/hbm/items/tool/PickaxeSchrabidium.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import net.minecraft.item.EnumRarity; import net.minecraft.item.ItemPickaxe; diff --git a/com/hbm/items/gear/RedstoneSword.java b/com/hbm/items/tool/RedstoneSword.java similarity index 93% rename from com/hbm/items/gear/RedstoneSword.java rename to com/hbm/items/tool/RedstoneSword.java index 9d0384def..152abb61d 100644 --- a/com/hbm/items/gear/RedstoneSword.java +++ b/com/hbm/items/tool/RedstoneSword.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; diff --git a/com/hbm/items/gear/SpadeSchrabidium.java b/com/hbm/items/tool/SpadeSchrabidium.java similarity index 88% rename from com/hbm/items/gear/SpadeSchrabidium.java rename to com/hbm/items/tool/SpadeSchrabidium.java index 718910ca1..f13f7b4fb 100644 --- a/com/hbm/items/gear/SpadeSchrabidium.java +++ b/com/hbm/items/tool/SpadeSchrabidium.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import net.minecraft.item.EnumRarity; import net.minecraft.item.ItemSpade; diff --git a/com/hbm/items/gear/SwordSchrabidium.java b/com/hbm/items/tool/SwordSchrabidium.java similarity index 88% rename from com/hbm/items/gear/SwordSchrabidium.java rename to com/hbm/items/tool/SwordSchrabidium.java index e0dd6f42f..005b00c1c 100644 --- a/com/hbm/items/gear/SwordSchrabidium.java +++ b/com/hbm/items/tool/SwordSchrabidium.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import net.minecraft.item.EnumRarity; import net.minecraft.item.ItemStack; diff --git a/com/hbm/items/gear/WeaponSpecial.java b/com/hbm/items/tool/WeaponSpecial.java similarity index 94% rename from com/hbm/items/gear/WeaponSpecial.java rename to com/hbm/items/tool/WeaponSpecial.java index 7f81ee3f1..0519897d4 100644 --- a/com/hbm/items/gear/WeaponSpecial.java +++ b/com/hbm/items/tool/WeaponSpecial.java @@ -1,4 +1,4 @@ -package com.hbm.items.gear; +package com.hbm.items.tool; import java.util.List; import java.util.Random; @@ -7,8 +7,8 @@ import com.google.common.collect.Multimap; import com.hbm.entity.effect.EntityNukeCloudSmall; import com.hbm.entity.logic.EntityNukeExplosionMK4; import com.hbm.entity.projectile.EntityRubble; +import com.hbm.handler.ArmorUtil; import com.hbm.items.ModItems; -import com.hbm.lib.Library; import com.hbm.main.MainRegistry; import net.minecraft.entity.Entity; @@ -221,9 +221,9 @@ public class WeaponSpecial extends ItemSword { public void onUpdate(ItemStack stack, World world, Entity entity, int i, boolean b) { if(entity instanceof EntityPlayer) { - if(Library.checkForFiend((EntityPlayer) entity)) { + if(ArmorUtil.checkForFiend((EntityPlayer) entity)) { ((EntityPlayer) entity).triggerAchievement(MainRegistry.achFiend); - } else if(Library.checkForFiend2((EntityPlayer) entity)) { + } else if(ArmorUtil.checkForFiend2((EntityPlayer) entity)) { ((EntityPlayer) entity).triggerAchievement(MainRegistry.achFiend2); } } diff --git a/com/hbm/items/weapon/ItemAmmo.java b/com/hbm/items/weapon/ItemAmmo.java index 60f706ceb..0a7fe695c 100644 --- a/com/hbm/items/weapon/ItemAmmo.java +++ b/com/hbm/items/weapon/ItemAmmo.java @@ -310,6 +310,28 @@ public class ItemAmmo extends Item { list.add(EnumChatFormatting.RED + "- Highly increased wear"); } + //FUEL + if(this == ModItems.ammo_fuel_napalm) { + list.add(EnumChatFormatting.BLUE + "+ Increased damage"); + list.add(EnumChatFormatting.BLUE + "+ Increased range"); + list.add(EnumChatFormatting.RED + "- Highly increased wear"); + } + if(this == ModItems.ammo_fuel_phosphorus) { + list.add(EnumChatFormatting.BLUE + "+ Phosphorus splash"); + list.add(EnumChatFormatting.BLUE + "+ Increased damage"); + list.add(EnumChatFormatting.BLUE + "+ Increased range"); + list.add(EnumChatFormatting.BLUE + "+ Increased accuracy"); + list.add(EnumChatFormatting.YELLOW + "* Technically a warcrime"); + list.add(EnumChatFormatting.RED + "- Single projectile"); + list.add(EnumChatFormatting.RED + "- Highly increased wear"); + } + if(this == ModItems.ammo_fuel_gas) { + list.add(EnumChatFormatting.BLUE + "+ No gravity"); + list.add(EnumChatFormatting.BLUE + "+ Poison splash"); + list.add(EnumChatFormatting.RED + "- No damage"); + list.add(EnumChatFormatting.RED + "- Not incendiary"); + } + //FOLLY if(this == ModItems.ammo_folly) { list.add(EnumChatFormatting.BLUE + "+ Focused starmetal reaction blast"); diff --git a/com/hbm/items/weapon/ItemGunBase.java b/com/hbm/items/weapon/ItemGunBase.java index 9f7465abd..8734fac34 100644 --- a/com/hbm/items/weapon/ItemGunBase.java +++ b/com/hbm/items/weapon/ItemGunBase.java @@ -248,7 +248,8 @@ public class ItemGunBase extends Item implements IHoldableWeapon { //if the mag has bullet in them -> load only the same type if(getMag(stack) > 0) { - Item ammo = BulletConfigSyncingUtil.pullConfig(mainConfig.config.get(getMagType(stack))).ammo; + BulletConfiguration bulletCfg = BulletConfigSyncingUtil.pullConfig(mainConfig.config.get(getMagType(stack))); + Item ammo = bulletCfg.ammo; //how many bullets to load int count = 1; @@ -267,7 +268,7 @@ public class ItemGunBase extends Item implements IHoldableWeapon { if(player.inventory.hasItem(ammo)) { player.inventory.consumeInventoryItem(ammo); - setMag(stack, getMag(stack) + 1); + setMag(stack, Math.min(getMag(stack) + bulletCfg.ammoCount, mainConfig.ammoCap)); } else { setIsReloading(stack, false); world.playSoundAtEntity(player, mainConfig.reloadSound, 1.0F, 1.0F); @@ -287,7 +288,7 @@ public class ItemGunBase extends Item implements IHoldableWeapon { //if the mag has no bullets in them -> load new type } else { - Item ammo = null; + BulletConfiguration bulletCfg = null; //determine new type for(Integer config : mainConfig.config) { @@ -295,14 +296,14 @@ public class ItemGunBase extends Item implements IHoldableWeapon { BulletConfiguration cfg = BulletConfigSyncingUtil.pullConfig(config); if(player.inventory.hasItem(cfg.ammo)) { - ammo = cfg.ammo; + bulletCfg = cfg; setMagType(stack, mainConfig.config.indexOf(config)); break; } } //load new type if bullets are present - if(ammo != null) { + if(bulletCfg != null) { int count = 1; @@ -315,9 +316,9 @@ public class ItemGunBase extends Item implements IHoldableWeapon { if(getMag(stack) < mainConfig.ammoCap) { - if(player.inventory.hasItem(ammo)) { - player.inventory.consumeInventoryItem(ammo); - setMag(stack, getMag(stack) + 1); + if(player.inventory.hasItem(bulletCfg.ammo)) { + player.inventory.consumeInventoryItem(bulletCfg.ammo); + setMag(stack, Math.min(getMag(stack) + bulletCfg.ammoCount, mainConfig.ammoCap)); } else { setIsReloading(stack, false); world.playSoundAtEntity(player, mainConfig.reloadSound, 1.0F, 1.0F); @@ -369,13 +370,14 @@ public class ItemGunBase extends Item implements IHoldableWeapon { } boolean hasLoaded = false; - Item ammo = BulletConfigSyncingUtil.pullConfig(mainConfig.config.get(getMagType(stack))).ammo; + BulletConfiguration cfg = BulletConfigSyncingUtil.pullConfig(mainConfig.config.get(getMagType(stack))); + Item ammo = cfg.ammo; for(int i = 0; i < count; i++) { - if(player.inventory.hasItem(ammo)) { + if(player.inventory.hasItem(ammo) && getMag(stack) < mainConfig.ammoCap) { player.inventory.consumeInventoryItem(ammo); - setMag(stack, getMag(stack) + 1); + setMag(stack, Math.min(getMag(stack) + cfg.ammoCount, mainConfig.ammoCap)); hasLoaded = true; } else { setIsReloading(stack, false); diff --git a/com/hbm/lib/HbmChestContents.java b/com/hbm/lib/HbmChestContents.java index 4debad688..ad90d8105 100644 --- a/com/hbm/lib/HbmChestContents.java +++ b/com/hbm/lib/HbmChestContents.java @@ -4,7 +4,7 @@ import java.util.Random; import com.hbm.blocks.ModBlocks; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import net.minecraft.init.Items; import net.minecraft.item.Item; diff --git a/com/hbm/lib/Library.java b/com/hbm/lib/Library.java index 50540f8b5..5480eed98 100644 --- a/com/hbm/lib/Library.java +++ b/com/hbm/lib/Library.java @@ -17,8 +17,10 @@ import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidDuct; import com.hbm.interfaces.IFluidSource; import com.hbm.interfaces.ISource; +import com.hbm.interfaces.Spaghetti; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; +import com.hbm.items.tool.ItemToolAbilityPower; import com.hbm.potion.HbmPotion; import com.hbm.tileentity.conductor.TileEntityCable; import com.hbm.tileentity.conductor.TileEntityCableSwitch; @@ -45,6 +47,7 @@ import net.minecraft.util.MovingObjectPosition; import net.minecraft.util.Vec3; import net.minecraft.world.World; +@Spaghetti("this whole class") public class Library { static Random rand = new Random(); @@ -77,91 +80,6 @@ public class Library { } - public static boolean checkArmor(EntityPlayer player, Item helmet, Item plate, Item legs, Item boots) { - - if(player.inventory.armorInventory[0] != null && - player.inventory.armorInventory[0].getItem() == boots && - player.inventory.armorInventory[1] != null && - player.inventory.armorInventory[1].getItem() == legs && - player.inventory.armorInventory[2] != null && - player.inventory.armorInventory[2].getItem() == plate && - player.inventory.armorInventory[3] != null && - player.inventory.armorInventory[3].getItem() == helmet) - { - return true; - } - - return false; - } - - public static boolean checkArmorPiece(EntityPlayer player, Item armor, int slot) - { - if(player.inventory.armorInventory[slot] != null && - player.inventory.armorInventory[slot].getItem() == armor) - { - return true; - } - - return false; - } - - public static boolean checkArmorNull(EntityPlayer player, int slot) - { - if(player.inventory.armorInventory[slot] == null) - { - return true; - } - - return false; - } - - public static void damageSuit(EntityPlayer player, int slot, int amount) { - - if(player.inventory.armorInventory[slot] == null) - return; - - int j = player.inventory.armorInventory[slot].getItemDamage(); - player.inventory.armorInventory[slot].setItemDamage(j += amount); - - if(player.inventory.armorInventory[slot].getItemDamage() >= player.inventory.armorInventory[slot].getMaxDamage()) - { - player.inventory.armorInventory[slot] = null; - } - } - - //radDura: Radiation duration in seconds - //radLevel: Radiation level (0 = I) - //maskDura: Radiation duration when wearing gasmask - //maskLevel: Radiation level when wearing gasmask - /*public static void applyRadiation(Entity e, int radDura, int radLevel, int maskDura, int maskLevel) { - - if(!(e instanceof EntityLivingBase)) - return; - - if(radDura == 0) - return; - - EntityLivingBase entity = (EntityLivingBase)e; - - if(entity instanceof EntityPlayer) { - EntityPlayer player = (EntityPlayer)entity; - - if(checkForHazmat(player)) - return; - - if(checkForGasMask(player)) { - - if(maskDura == 0) - return; - - entity.addPotionEffect(new PotionEffect(HbmPotion.radiation.id, maskDura * 20, maskLevel)); - return; - } - } - - entity.addPotionEffect(new PotionEffect(HbmPotion.radiation.id, radDura * 20, radLevel)); - }*/ - public static void applyRadData(Entity e, float f) { if(!(e instanceof EntityLivingBase)) @@ -195,140 +113,6 @@ public class Library { e.getEntityData().setFloat("hfr_radiation", rad + f); } - public static boolean checkForHazmat(EntityPlayer player) { - - if(checkArmor(player, ModItems.hazmat_helmet, ModItems.hazmat_plate, ModItems.hazmat_legs, ModItems.hazmat_boots) || - checkArmor(player, ModItems.hazmat_helmet_red, ModItems.hazmat_plate_red, ModItems.hazmat_legs_red, ModItems.hazmat_boots_red) || - checkArmor(player, ModItems.hazmat_helmet_grey, ModItems.hazmat_plate_grey, ModItems.hazmat_legs_grey, ModItems.hazmat_boots_grey) || - checkArmor(player, ModItems.t45_helmet, ModItems.t45_plate, ModItems.t45_legs, ModItems.t45_boots) || - checkArmor(player, ModItems.schrabidium_helmet, ModItems.schrabidium_plate, ModItems.schrabidium_legs, ModItems.schrabidium_boots) || - checkForHaz2(player)) { - - return true; - } - - if(player.isPotionActive(HbmPotion.mutation)) - return true; - - return false; - } - - public static boolean checkForHaz2(EntityPlayer player) { - - if(checkArmor(player, ModItems.hazmat_paa_helmet, ModItems.hazmat_paa_plate, ModItems.hazmat_paa_legs, ModItems.hazmat_paa_boots) || - checkArmor(player, ModItems.euphemium_helmet, ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots)) - { - return true; - } - - return false; - } - - public static boolean checkForAsbestos(EntityPlayer player) { - - if(checkArmor(player, ModItems.asbestos_helmet, ModItems.asbestos_plate, ModItems.asbestos_legs, ModItems.asbestos_boots)) - { - return true; - } - - return false; - } - - public static boolean checkForFaraday(EntityPlayer player) { - - ItemStack[] armor = player.inventory.armorInventory; - - if(armor[0] == null || armor[1] == null || armor[2] == null || armor[3] == null) return false; - - if(isFaradayArmor(armor[0].getItem()) && - isFaradayArmor(armor[1].getItem()) && - isFaradayArmor(armor[2].getItem()) && - isFaradayArmor(armor[3].getItem())) - return true; - - return false; - } - - public static final String[] metals = new String[] { - "chainmail", - "iron", - "silver", - "gold", - "platinum", - "tin", - "lead", - "schrabidium", - "euphemium", - "steel", - "cmb", - "titanium", - "alloy", - "copper", - "bronze", - "electrum", - "t45", - "hazmat", //also count because rubber is insulating - "rubber" - }; - - public static boolean isFaradayArmor(Item item) { - - String name = item.getUnlocalizedName(); - - for(String metal : metals) { - - if(name.toLowerCase().contains(metal)) - return true; - } - - return false; - } - - public static boolean checkForGasMask(EntityPlayer player) { - - if(checkArmorPiece(player, ModItems.hazmat_helmet, 3)) - { - return true; - } - if(checkArmorPiece(player, ModItems.hazmat_helmet_red, 3)) - { - return true; - } - if(checkArmorPiece(player, ModItems.hazmat_helmet_grey, 3)) - { - return true; - } - if(checkArmorPiece(player, ModItems.hazmat_paa_helmet, 3)) - { - return true; - } - if(checkArmorPiece(player, ModItems.gas_mask, 3)) - { - return true; - } - if(checkArmorPiece(player, ModItems.gas_mask_m65, 3)) - { - return true; - } - if(checkArmorPiece(player, ModItems.t45_helmet, 3)) - { - return true; - } - if(checkArmorPiece(player, ModItems.schrabidium_helmet, 3)) - { - return true; - } - if(checkArmorPiece(player, ModItems.euphemium_helmet, 3)) - { - return true; - } - - if(player.isPotionActive(HbmPotion.mutation)) - return true; - - return false; - } - public static boolean checkForHeld(EntityPlayer player, Item item) { if(player.getHeldItem() == null) @@ -337,16 +121,6 @@ public class Library { return player.getHeldItem().getItem() == item; } - public static boolean checkForFiend(EntityPlayer player) { - - return checkArmorPiece(player, ModItems.jackt, 2) && checkForHeld(player, ModItems.shimmer_sledge); - } - - public static boolean checkForFiend2(EntityPlayer player) { - - return checkArmorPiece(player, ModItems.jackt2, 2) && checkForHeld(player, ModItems.shimmer_axe); - } - public static boolean checkCableConnectables(World world, int x, int y, int z) { TileEntity tileentity = world.getTileEntity(x, y, z); @@ -436,12 +210,6 @@ public class Library { return false; } - - ////// ////// ////// ////// ////// //// ////// ////// ////// - // // // // // // // // // // // - //// ////// ///// // //// //// //// // // // // - // // // // // // // // // // // // // - ////// // // ///// // ////// // // ////// ////// ////// public static EntityLivingBase getClosestEntityForChopper(World world, double x, double y, double z, double radius) { double d4 = -1.0D; @@ -470,20 +238,6 @@ public class Library { return entityplayer; } - public static Item getItemByCode(int i) { - - if(i == 1337) - return ModItems.schrabidium_hammer; - if(i == 234) - return ModItems.euphemium_kit; - if(i == 69) - return ModItems.nuke_advanced_kit; - if(i == 34) - return ModItems.t45_kit; - - return null; - } - public static EntityPlayer getClosestPlayerForSound(World world, double x, double y, double z, double radius) { double d4 = -1.0D; EntityPlayer entity = null; @@ -615,52 +369,21 @@ public class Library { return Long.toString(l); } + //not great either but certainly better public static long chargeItemsFromTE(ItemStack[] slots, int index, long power, long maxPower) { if(slots[index] != null && slots[index].getItem() instanceof ItemBattery) { - - long dR = ((ItemBattery)slots[index].getItem()).getChargeRate(); - while(dR >= 1000000000000L) { - if(power - 100000000000000L >= 0 && ItemBattery.getCharge(slots[index]) < ((ItemBattery)slots[index].getItem()).getMaxCharge()) - { - power -= 100000000000000L; - dR -= 1000000000000L; - ((ItemBattery)slots[index].getItem()).chargeBattery(slots[index], 1000000000000L); - } else break; - } - while(dR >= 1000000000) { - if(power - 100000000000L >= 0 && ItemBattery.getCharge(slots[index]) < ((ItemBattery)slots[index].getItem()).getMaxCharge()) - { - power -= 100000000000L; - dR -= 1000000000; - ((ItemBattery)slots[index].getItem()).chargeBattery(slots[index], 1000000000); - } else break; - } - while(dR >= 1000000) { - if(power - 100000000 >= 0 && ItemBattery.getCharge(slots[index]) < ((ItemBattery)slots[index].getItem()).getMaxCharge()) - { - power -= 100000000; - dR -= 1000000; - ((ItemBattery)slots[index].getItem()).chargeBattery(slots[index], 1000000); - } else break; - } - while(dR >= 1000) { - if(power - 100000 >= 0 && ItemBattery.getCharge(slots[index]) < ((ItemBattery)slots[index].getItem()).getMaxCharge()) - { - power -= 100000; - dR -= 1000; - ((ItemBattery)slots[index].getItem()).chargeBattery(slots[index], 1000); - } else break; - } - while(dR >= 1) { - if(power - 100 >= 0 && ItemBattery.getCharge(slots[index]) < ((ItemBattery)slots[index].getItem()).getMaxCharge()) - { - power -= 100; - dR -= 1; - ((ItemBattery)slots[index].getItem()).chargeBattery(slots[index], 1); - } else break; - } + long batMax = ItemBattery.getMaxChargeStatic(slots[index]); + long batCharge = ItemBattery.getCharge(slots[index]); + long batRate = ((ItemBattery)slots[index].getItem()).getChargeRate(); + + //in hHE + long toCharge = Math.min(Math.min(power / 100, batRate), batMax - batCharge); + + power -= toCharge * 100; + + ((ItemBattery)slots[index].getItem()).chargeBattery(slots[index], toCharge); if(slots[index] != null && slots[index].getItem() == ModItems.dynosphere_desh && ItemBattery.getCharge(slots[index]) >= ItemBattery.getMaxChargeStatic(slots[index])) slots[index] = new ItemStack(ModItems.dynosphere_desh_charged); @@ -671,34 +394,21 @@ public class Library { if(slots[index] != null && slots[index].getItem() == ModItems.dynosphere_dineutronium && ItemBattery.getCharge(slots[index]) >= ItemBattery.getMaxChargeStatic(slots[index])) slots[index] = new ItemStack(ModItems.dynosphere_dineutronium_charged); } - - for(int i = 0; i < 50; i++) - if(power - 10 >= 0 && slots[index] != null && slots[index].getItem() == ModItems.elec_sword && slots[index].getItemDamage() > 0) - { - power -= 10; - slots[index].setItemDamage(slots[index].getItemDamage() - 1); - } else break; - - for(int i = 0; i < 50; i++) - if(power - 10 >= 0 && slots[index] != null && slots[index].getItem() == ModItems.elec_pickaxe && slots[index].getItemDamage() > 0) - { - power -= 10; - slots[index].setItemDamage(slots[index].getItemDamage() - 1); - } else break; - - for(int i = 0; i < 50; i++) - if(power - 10 >= 0 && slots[index] != null && slots[index].getItem() == ModItems.elec_axe && slots[index].getItemDamage() > 0) - { - power -= 10; - slots[index].setItemDamage(slots[index].getItemDamage() - 1); - } else break; - - for(int i = 0; i < 50; i++) - if(power - 10 >= 0 && slots[index] != null && slots[index].getItem() == ModItems.elec_shovel && slots[index].getItemDamage() > 0) - { - power -= 10; - slots[index].setItemDamage(slots[index].getItemDamage() - 1); - } else break; + + if(slots[index] != null && slots[index].getItem() instanceof ItemToolAbilityPower) { + + long batMax = ItemToolAbilityPower.getMaxChargeStatic(slots[index]); + long batCharge = ItemToolAbilityPower.getCharge(slots[index]); + long batRate = ((ItemToolAbilityPower)slots[index].getItem()).getChargeRate(); + + //in hHE + long toCharge = Math.min(Math.min(power / 100, batRate), batMax - batCharge); + + power -= toCharge * 100; + + ((ItemToolAbilityPower)slots[index].getItem()).chargeBattery(slots[index], toCharge); + + } if(slots[index] != null && slots[index].getItem() instanceof ItemBattery) { ItemBattery.updateDamage(slots[index]); @@ -706,7 +416,8 @@ public class Library { return power; } - + + //TODO: rewrite this shit public static long chargeTEFromItems(ItemStack[] slots, int index, long power, long maxPower) { if(slots[index] != null && slots[index].getItem() == ModItems.battery_creative) @@ -720,58 +431,23 @@ public class Library { } if(slots[index] != null && slots[index].getItem() instanceof ItemBattery) { - ItemBattery.updateDamage(slots[index]); - } - - if(slots[index] != null && slots[index].getItem() instanceof ItemBattery) { - - long dR = ((ItemBattery)slots[index].getItem()).getDischargeRate(); - while(dR >= 1000000000000L) { - if(power + 100000000000000L <= maxPower && ItemBattery.getCharge(slots[index]) > 0) - { - power += 100000000000000L; - dR -= 1000000000000L; - ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1000000000000L); - } else break; - } - while(dR >= 1000000000) { - if(power + 100000000000L <= maxPower && ItemBattery.getCharge(slots[index]) > 0) - { - power += 100000000000L; - dR -= 1000000000L; - ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1000000000); - } else break; - } - while(dR >= 1000000) { - if(power + 100000000L <= maxPower && ItemBattery.getCharge(slots[index]) > 0) - { - power += 100000000L; - dR -= 1000000; - ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1000000); - } else break; - } - while(dR >= 1000) { - if(power + 100000L <= maxPower && ItemBattery.getCharge(slots[index]) > 0) - { - power += 100000L; - dR -= 1000; - ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1000); - } else break; - } - while(dR >= 1) { - if(power + 100L <= maxPower && ItemBattery.getCharge(slots[index]) > 0) - { - power += 100L; - dR -= 1; - ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], 1); - } else break; - } + long batCharge = ItemBattery.getCharge(slots[index]); + long batRate = ((ItemBattery)slots[index].getItem()).getDischargeRate(); + + //in hHe + long toDischarge = Math.min(Math.min((maxPower - power) / 100, batRate), batCharge); + + ((ItemBattery)slots[index].getItem()).dischargeBattery(slots[index], toDischarge); + power += toDischarge * 100; + + ItemBattery.updateDamage(slots[index]); } return power; } + //TODO: jesus christ kill it //Flut-Füll gesteuerter Energieübertragungsalgorithmus //Flood fill controlled energy transmission algorithm public static void ffgeua(int x, int y, int z, boolean newTact, ISource that, World worldObj) { diff --git a/com/hbm/main/ClientProxy.java b/com/hbm/main/ClientProxy.java index 608d093c0..0c3619f6a 100644 --- a/com/hbm/main/ClientProxy.java +++ b/com/hbm/main/ClientProxy.java @@ -2,6 +2,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.particle.EntityCloudFX; +import net.minecraft.client.particle.EntityFX; import net.minecraft.client.particle.EntityFlameFX; import net.minecraft.client.renderer.entity.RenderSnowball; import net.minecraft.client.renderer.texture.TextureManager; @@ -225,7 +226,7 @@ public class ClientProxy extends ServerProxy MinecraftForgeClient.registerItemRenderer(ModItems.gun_deagle, new ItemRenderWeaponObj()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_supershotgun, new ItemRenderWeaponObj()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_ks23, new ItemRenderWeaponObj()); - //MinecraftForgeClient.registerItemRenderer(ModItems.gun_rpg_ammo, new ItemRenderRocket()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_flamer, new ItemRenderWeaponObj()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityBombMulti.class, new RenderBombMulti()); @@ -764,13 +765,45 @@ public class ClientProxy extends ServerProxy double mY = rand.nextGaussian() * motion; double mZ = rand.nextGaussian() * motion; + EntityFX fx = null; + if("flame".equals(data.getString("mode"))) { - EntityFlameFX fx = new EntityFlameFX(world, x, y, z, mX, mY, mZ); - Minecraft.getMinecraft().effectRenderer.addEffect(fx); + fx = new EntityFlameFX(world, x, y, z, mX, mY, mZ); } + + if("cloud".equals(data.getString("mode"))) { + fx = new net.minecraft.client.particle.EntityCloudFX(world, x, y, z, mX, mY, mZ); + } + + if(fx != null) + Minecraft.getMinecraft().effectRenderer.addEffect(fx); } } + if("vanillaExt".equals(type)) { + + double mX = data.getDouble("mX"); + double mY = data.getDouble("mY"); + double mZ = data.getDouble("mZ"); + + EntityFX fx = null; + + if("flame".equals(data.getString("mode"))) { + fx = new EntityFlameFX(world, x, y, z, mX, mY, mZ); + } + + if("smoke".equals(data.getString("mode"))) { + fx = new net.minecraft.client.particle.EntitySmokeFX(world, x, y, z, mX, mY, mZ); + } + + if("cloud".equals(data.getString("mode"))) { + fx = new net.minecraft.client.particle.EntityCloudFX(world, x, y, z, mX, mY, mZ); + } + + if(fx != null) + Minecraft.getMinecraft().effectRenderer.addEffect(fx); + } + if("vanilla".equals(type)) { double mX = data.getDouble("mX"); diff --git a/com/hbm/main/CraftingManager.java b/com/hbm/main/CraftingManager.java index 8745b35a4..321322dcb 100644 --- a/com/hbm/main/CraftingManager.java +++ b/com/hbm/main/CraftingManager.java @@ -3,7 +3,7 @@ package com.hbm.main; import com.hbm.blocks.ModBlocks; import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.items.weapon.GunB92Cell; import net.minecraft.init.Blocks; @@ -28,36 +28,12 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.redstone_sword, 1), new Object[] { "R", "R", "S", 'R', Blocks.redstone_block, 'S', Items.stick }); GameRegistry.addRecipe(new ItemStack(ModItems.big_sword, 1), new Object[] { "QIQ", "QIQ", "GSG", 'G', Items.gold_ingot, 'S', Items.stick, 'I', Items.iron_ingot, 'Q', Items.quartz}); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_titanium, 16), true, new Object[] { "TT", "TT", 'T', "ingotTitanium" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_aluminium, 16), new Object[] { "TT", "TT", 'T', "ingotAluminum" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_steel, 16), new Object[] { "TT", "TT", 'T', "ingotSteel" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_iron, 16), new Object[] { "TT", "TT", 'T', "ingotIron" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_lead, 16), new Object[] { "TT", "TT", 'T', "ingotLead" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_copper, 16), new Object[] { "TT", "TT", 'T', "ingotCopper" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.board_copper, 1), new Object[] { "TTT", "TTT", 'T', "plateCopper" })); - //GameRegistry.addRecipe(new ItemStack(ModItems.plate_schrabidium, 16), new Object[] { "TT", "TT", 'T', ModItems.ingot_schrabidium}); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_gold, 16), new Object[] { "TT", "TT", 'T', "ingotGold" })); - //GameRegistry.addRecipe(new ItemStack(ModItems.plate_advanced_alloy, 16), new Object[] { "TT", "TT", 'T', ModItems.ingot_advanced_alloy}); - //GameRegistry.addRecipe(new ItemStack(ModItems.plate_combine_steel, 16), new Object[] { "TT", "TT", 'T', ModItems.ingot_combine_steel}); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.wire_red_copper, 6), new Object[] { "CCC", 'S', Items.string, 'C', "ingotRedstoneAlloy" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.wire_tungsten, 6), new Object[] { "CCC", 'S', Items.string, 'C', "ingotTungsten" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.wire_aluminium, 6), new Object[] { "CCC", 'S', Items.string, 'C', "ingotAluminum" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.wire_copper, 6), new Object[] { "CCC", 'S', Items.string, 'C', "ingotCopper" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.wire_gold, 6), new Object[] { "CCC", 'S', Items.string, 'C', "ingotGold" })); - //GameRegistry.addRecipe(new ItemStack(ModItems.wire_schrabidium, 6), new Object[] { "CCC", 'S', Items.string, 'C', ModItems.ingot_schrabidium }); - //GameRegistry.addRecipe(new ItemStack(ModItems.wire_advanced_alloy, 6), new Object[] { "CCC", 'S', Items.string, 'C', ModItems.ingot_advanced_alloy }); - //GameRegistry.addRecipe(new ItemStack(ModItems.wire_magnetized_tungsten, 6), new Object[] { "CCC", 'S', Items.string, 'C', ModItems.ingot_magnetized_tungsten }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hazmat_cloth, 4), new Object[] { "LN", "LN", 'L', Items.leather, 'N', "nuggetLead" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hazmat_cloth, 4), new Object[] { "SCS", "CPC", "SCS", 'S', Items.string, 'P', Items.leather, 'C', "dustLead" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hazmat_cloth_red, 1), new Object[] { "C", "R", "C", 'C', ModItems.hazmat_cloth, 'R', "dustRedstone" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hazmat_cloth_grey, 1), new Object[] { " P ", "ICI", " L ", 'C', ModItems.hazmat_cloth_red, 'P', "plateIron", 'L', "plateLead", 'I', ModItems.plate_polymer })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.asbestos_cloth, 4), new Object[] { "SCS", "CPC", "SCS", 'S', Items.string, 'P', Blocks.wool, 'C', "dustNetherQuartz" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.asbestos_cloth, 16), new Object[] { "SCS", "CPC", "SCS", 'S', Items.string, 'P', ModItems.powder_bromine, 'C', Blocks.wool })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.filter_coal, 1), new Object[] { "SCS", "CPC", "SCS", 'S', Items.string, 'P', Items.paper, 'C', "dustCoal" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_mixed, 3), new Object[] { "ANA", "NCN", "ANA", 'A', ModItems.plate_advanced_alloy, 'N', "plateDenseLead", 'C', ModItems.plate_combine_steel })); GameRegistry.addRecipe(new ItemStack(ModItems.bolt_dura_steel, 4), new Object[] { "D", "D", 'D', ModItems.ingot_dura_steel}); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.pipes_steel, 1), new Object[] { "B", "B", "B", 'B', "blockSteel" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.drill_titanium, 1), new Object[] { " B ", "IBI", "PPP", 'B', ModItems.bolt_dura_steel, 'I', ModItems.ingot_dura_steel, 'P', "plateTitanium" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.bolt_tungsten, 4), new Object[] { "D", "D", 'D', "ingotTungsten" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.bolt_compound, 1), new Object[] { "PDP", "PTP", "PDP", 'D', ModItems.bolt_dura_steel, 'T', ModItems.bolt_tungsten, 'P', "plateTitanium" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.pellet_coal, 1), new Object[] { "PFP", "FOF", "PFP", 'P', "dustCoal", 'F', Items.flint, 'O', ModBlocks.gravel_obsidian })); @@ -65,18 +41,9 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.plate_polymer, 4), new Object[] { "SWS", 'S', Items.string, 'W', Blocks.wool }); GameRegistry.addRecipe(new ItemStack(ModItems.plate_polymer, 4), new Object[] { "BB", 'B', Items.brick }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.magnet_dee, 1), new Object[] { "SMM", "M M", "MMT", 'S', "ingotSteel", 'M', ModBlocks.fusion_conductor, 'T', ModItems.coil_advanced_torus })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.magnet_circular, 2), new Object[] { "PSP", "MMM", "PSP", 'S', "ingotSteel", 'M', ModBlocks.fusion_conductor, 'P', "plateAdvanced" })); - //GameRegistry.addRecipe(new ItemStack(ModItems.cyclotron_tower, 1), new Object[] { "CDC", "CDC", "CDC", 'C', ModItems.magnet_circular, 'D', ModItems.magnet_dee }); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.marker_structure, 1), new Object[] { "L", "G", "R", 'L', "dustLapis", 'G', Items.glowstone_dust, 'R', Blocks.redstone_torch })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.circuit_raw, 1), new Object[] { "A", "R", "S", 'S', "plateSteel", 'R', "dustRedstone", 'A', ModItems.wire_aluminium })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.circuit_aluminium, 1), new Object[] { "RAR", "ASA", "RAR", 'S', "plateSteel", 'R', "dustRedstone", 'A', ModItems.wire_aluminium })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.circuit_copper, 1), new Object[] { "RAR", "ASA", "RAR", 'S', ModItems.circuit_aluminium, 'R', "dustNetherQuartz", 'A', ModItems.wire_copper })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.circuit_red_copper, 1), new Object[] { "RAR", "ASA", "RAR", 'S', ModItems.circuit_copper, 'R', "dustGold", 'A', ModItems.wire_red_copper })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.circuit_gold, 1), new Object[] { "RAR", "ASA", "RAR", 'S', ModItems.circuit_red_copper, 'R', "dustLapis", 'A', ModItems.wire_gold })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.circuit_schrabidium, 1), new Object[] { "RAR", "ASA", "RAR", 'S', ModItems.circuit_gold, 'R', "dustDiamond", 'A', ModItems.wire_schrabidium })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.circuit_targeting_tier1, 1), new Object[] { "CPC", 'C', ModItems.circuit_aluminium, 'P', "dustRedstone" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.circuit_targeting_tier2, 1), new Object[] { "CPC", 'C', ModItems.circuit_copper, 'P', "dustNetherQuartz" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.circuit_targeting_tier3, 1), new Object[] { "CPC", 'C', ModItems.circuit_red_copper, 'P', "dustGold" })); @@ -90,14 +57,9 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(Items.gunpowder, 3), new Object[] { "dustSulfur", "dustSalpeter", new ItemStack(Items.coal, 1, 1) })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.cell_empty, 6), new Object[] { "SSS", "G G", "SSS", 'S', "plateSteel", 'G', "paneGlass" })); - //GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.cell_uf6, 1), new Object[] { ModItems.cell_empty, "dustUranium", "dustFluorite", "dustFluorite", "dustFluorite", Items.water_bucket })); - //GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.cell_puf6, 1), new Object[] { ModItems.cell_empty, "dustPlutonium", "dustFluorite", "dustFluorite", "dustFluorite", Items.water_bucket })); GameRegistry.addRecipe(new ItemStack(ModItems.cell_deuterium, 8), new Object[] { "DDD", "DTD", "DDD", 'D', ModItems.cell_empty, 'T', ModItems.mike_deut }); - //GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.cell_sas3, 1), new Object[] { ModItems.cell_empty, ModItems.powder_schrabidium, "dustSulfur", "dustSulfur" })); - //GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.cell_sas3, 1), new Object[] { ModItems.cell_empty, ModItems.powder_schrabidium, "sulfur", "sulfur" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.canister_empty, 2), new Object[] { "S ", "AA", "AA", 'S', "plateSteel", 'A', "plateAluminum" })); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.red_barrel), 1), new Object[] { "DDD", "DTD", "DDD", 'D', ModItems.canister_fuel, 'T', ModItems.tank_steel }); GameRegistry.addRecipe(new ItemStack(ModBlocks.yellow_barrel, 1), new Object[] { "DDD", "DTD", "DDD", 'D', ModItems.nuclear_waste, 'T', ModItems.tank_steel }); GameRegistry.addRecipe(new ItemStack(ModItems.nuclear_waste, 8), new Object[] { "B", 'B', ModBlocks.yellow_barrel }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gas_empty, 2), new Object[] { "S ", "AA", "AA", 'A', "plateSteel", 'S', "plateCopper" })); @@ -145,17 +107,23 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModBlocks.block_pu238, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_pu238 }); GameRegistry.addRecipe(new ItemStack(ModBlocks.block_pu239, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_pu239 }); GameRegistry.addRecipe(new ItemStack(ModBlocks.block_pu240, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_pu240 }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.block_mox_fuel, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_mox_fuel }); GameRegistry.addRecipe(new ItemStack(ModBlocks.block_plutonium_fuel, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_plutonium_fuel }); GameRegistry.addRecipe(new ItemStack(ModBlocks.block_thorium_fuel, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_thorium_fuel }); GameRegistry.addRecipe(new ItemStack(ModBlocks.block_solinium, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_solinium }); GameRegistry.addRecipe(new ItemStack(ModBlocks.block_schrabidium_fuel, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_schrabidium_fuel }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.block_lithium, 1), new Object[] { "###", "###", "###", '#', ModItems.lithium }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.block_white_phosphorus, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_phosphorus }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.block_red_phosphorus, 1), new Object[] { "###", "###", "###", '#', ModItems.powder_fire }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.block_insulator, 1), new Object[] { "###", "###", "###", '#', ModItems.plate_polymer }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.block_asbestos, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_asbestos }); + GameRegistry.addRecipe(new ItemStack(ModBlocks.block_fiberglass, 1), new Object[] { "###", "###", "###", '#', ModItems.ingot_fiberglass }); GameRegistry.addRecipe(new ItemStack(ModBlocks.hazmat, 8), new Object[] { "###", "# #", "###", '#', ModItems.hazmat_cloth }); GameRegistry.addRecipe(new ItemStack(ModItems.hazmat_cloth, 1), new Object[] { "#", '#', ModBlocks.hazmat }); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.ingot_uranium_fuel, 1), new Object[] { "nuggetUranium235", "nuggetUranium235", "nuggetUranium235", "nuggetUranium238", "nuggetUranium238", "nuggetUranium238", "nuggetUranium238", "nuggetUranium238", "nuggetUranium238" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.ingot_uranium_fuel, 1), new Object[] { "nuggetUranium233", "nuggetUranium233", "nuggetUranium233", "nuggetUranium238", "nuggetUranium238", "nuggetUranium238", "nuggetUranium238", "nuggetUranium238", "nuggetUranium238" })); - //GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.ingot_thorium_fuel, 1), new Object[] { "nuggetUranium235", "nuggetUranium235", "nuggetUranium235", "nuggetThorium232", "nuggetThorium232", "nuggetThorium232", "nuggetThorium232", "nuggetThorium232", "nuggetThorium232" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.ingot_thorium_fuel, 1), new Object[] { "nuggetUranium233", "nuggetUranium233", "nuggetUranium233", "nuggetThorium232", "nuggetThorium232", "nuggetThorium232", "nuggetThorium232", "nuggetThorium232", "nuggetThorium232" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.ingot_plutonium_fuel, 1), new Object[] { "nuggetPlutonium238", "nuggetPlutonium239", "nuggetPlutonium239", "nuggetPlutonium239", "nuggetPlutonium239", "nuggetPlutonium239", "nuggetPlutonium240", "nuggetPlutonium240", "nuggetPlutonium240" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.ingot_mox_fuel, 1), new Object[] { "nuggetUranium235", "nuggetUranium235", "nuggetUranium235", "nuggetUranium238", "nuggetUranium238", "nuggetPlutonium238", "nuggetPlutonium239", "nuggetPlutonium239", "nuggetPlutonium239" })); @@ -204,10 +172,17 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.ingot_pu238, 9), new Object[] { "#", '#', ModBlocks.block_pu238 }); GameRegistry.addRecipe(new ItemStack(ModItems.ingot_pu239, 9), new Object[] { "#", '#', ModBlocks.block_pu239 }); GameRegistry.addRecipe(new ItemStack(ModItems.ingot_pu240, 9), new Object[] { "#", '#', ModBlocks.block_pu240 }); + GameRegistry.addRecipe(new ItemStack(ModItems.ingot_mox_fuel, 9), new Object[] { "#", '#', ModBlocks.block_mox_fuel }); GameRegistry.addRecipe(new ItemStack(ModItems.ingot_plutonium_fuel, 9), new Object[] { "#", '#', ModBlocks.block_plutonium_fuel }); GameRegistry.addRecipe(new ItemStack(ModItems.ingot_thorium_fuel, 9), new Object[] { "#", '#', ModBlocks.block_thorium_fuel }); GameRegistry.addRecipe(new ItemStack(ModItems.ingot_solinium, 9), new Object[] { "#", '#', ModBlocks.block_solinium }); GameRegistry.addRecipe(new ItemStack(ModItems.ingot_schrabidium_fuel, 9), new Object[] { "#", '#', ModBlocks.block_schrabidium_fuel }); + GameRegistry.addRecipe(new ItemStack(ModItems.lithium, 9), new Object[] { "#", '#', ModBlocks.block_lithium }); + GameRegistry.addRecipe(new ItemStack(ModItems.ingot_phosphorus, 9), new Object[] { "#", '#', ModBlocks.block_white_phosphorus }); + GameRegistry.addRecipe(new ItemStack(ModItems.powder_fire, 9), new Object[] { "#", '#', ModBlocks.block_red_phosphorus }); + GameRegistry.addRecipe(new ItemStack(ModItems.plate_polymer, 9), new Object[] { "#", '#', ModBlocks.block_insulator }); + GameRegistry.addRecipe(new ItemStack(ModItems.ingot_asbestos, 9), new Object[] { "#", '#', ModBlocks.block_asbestos }); + GameRegistry.addRecipe(new ItemStack(ModItems.ingot_fiberglass, 9), new Object[] { "#", '#', ModBlocks.block_fiberglass }); GameRegistry.addRecipe(new ItemStack(ModItems.ingot_plutonium, 1), new Object[] { "###", "###", "###", '#', ModItems.nugget_plutonium }); GameRegistry.addRecipe(new ItemStack(ModItems.nugget_plutonium, 9), new Object[] { "#", '#', ModItems.ingot_plutonium }); @@ -379,6 +354,7 @@ public class CraftingManager { GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_schrabidium, 6), new Object[] { ModItems.rod_schrabidium }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_solinium, 6), new Object[] { ModItems.rod_solinium }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_uranium_fuel, 6), new Object[] { ModItems.rod_uranium_fuel }); + GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_thorium_fuel, 6), new Object[] { ModItems.rod_thorium_fuel }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_plutonium_fuel, 6), new Object[] { ModItems.rod_plutonium_fuel }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_mox_fuel, 6), new Object[] { ModItems.rod_mox_fuel }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_schrabidium_fuel, 6), new Object[] { ModItems.rod_schrabidium_fuel }); @@ -403,6 +379,7 @@ public class CraftingManager { GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_lead, 12), new Object[] { ModItems.rod_dual_lead }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_schrabidium, 12), new Object[] { ModItems.rod_dual_schrabidium }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_solinium, 12), new Object[] { ModItems.rod_dual_solinium }); + GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_thorium_fuel, 12), new Object[] { ModItems.rod_dual_thorium_fuel }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_uranium_fuel, 12), new Object[] { ModItems.rod_dual_uranium_fuel }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_plutonium_fuel, 12), new Object[] { ModItems.rod_dual_plutonium_fuel }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_mox_fuel, 12), new Object[] { ModItems.rod_dual_mox_fuel }); @@ -421,6 +398,7 @@ public class CraftingManager { GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_lead, 24), new Object[] { ModItems.rod_quad_lead }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_schrabidium, 24), new Object[] { ModItems.rod_quad_schrabidium }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_solinium, 24), new Object[] { ModItems.rod_quad_solinium }); + GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_thorium_fuel, 24), new Object[] { ModItems.rod_quad_thorium_fuel }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_uranium_fuel, 24), new Object[] { ModItems.rod_quad_uranium_fuel }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_plutonium_fuel, 24), new Object[] { ModItems.rod_quad_plutonium_fuel }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.nugget_mox_fuel, 24), new Object[] { ModItems.rod_quad_mox_fuel }); @@ -528,45 +506,11 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.fins_quad_titanium, 1), new Object[] { " PP", "III", " PP", 'P', "plateTitanium", 'I', "ingotTitanium" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.sphere_steel, 1), new Object[] { "PIP", "I I", "PIP", 'P', "plateSteel", 'I', "ingotSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.pedestal_steel, 1), new Object[] { "P P", "P P", "III", 'P', "plateSteel", 'I', "ingotSteel" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.dysfunctional_reactor, 1), new Object[] { "PPP", "CDC", "PPP", 'P', "plateSteel", 'C', ModItems.rod_quad_empty, 'D', new ItemStack(Items.dye, 1, 3) })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.warhead_generic_small, 1), new Object[] { " P ", "PTP", "PTP", 'P', "plateTitanium", 'T', Item.getItemFromBlock(Blocks.tnt) })); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_incendiary_small, 1), new Object[] { " P ", "PWP", " P ", 'P', ModItems.powder_fire, 'W', ModItems.warhead_generic_small }); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_cluster_small, 1), new Object[] { " P ", "PWP", " P ", 'P', ModItems.pellet_cluster, 'W', ModItems.warhead_generic_small }); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_buster_small, 1), new Object[] { " P ", "PWP", " P ", 'P', Item.getItemFromBlock(ModBlocks.det_cord), 'W', ModItems.warhead_generic_small }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.warhead_generic_medium, 1), new Object[] { " P ", "PTP", "TTT", 'P', "plateTitanium", 'T', Item.getItemFromBlock(Blocks.tnt) })); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_incendiary_medium, 1), new Object[] { "PPP", "PWP", "PPP", 'P', ModItems.powder_fire, 'W', ModItems.warhead_generic_medium }); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_cluster_medium, 1), new Object[] { "PPP", "PWP", "PPP", 'P', ModItems.pellet_cluster, 'W', ModItems.warhead_generic_medium }); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_buster_medium, 1), new Object[] { "PPP", "PWP", "PPP", 'P', Item.getItemFromBlock(ModBlocks.det_cord), 'W', ModItems.warhead_generic_medium }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.warhead_generic_large, 1), new Object[] { "PTP", "PTP", "TTT", 'P', "plateTitanium", 'T', Item.getItemFromBlock(Blocks.tnt) })); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_incendiary_large, 1), new Object[] { "PXP", "XWX", "PXP", 'P', ModItems.powder_fire, 'W', ModItems.warhead_generic_large, 'X', Items.lava_bucket }); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_cluster_large, 1), new Object[] { "PXP", "XWX", "PXP", 'P', ModItems.pellet_cluster, 'W', ModItems.warhead_generic_large, 'X', Item.getItemFromBlock(ModBlocks.det_cord) }); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_buster_large, 1), new Object[] { "PXP", "XWX", "PXP", 'P', Item.getItemFromBlock(ModBlocks.det_cord), 'W', ModItems.warhead_generic_large, 'X', ModBlocks.det_charge }); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_nuclear, 1), new Object[] { " N ", "TZT", "TBT", 'N', ModItems.boy_shielding, 'Z', ModItems.boy_target, 'B', ModItems.boy_bullet, 'T', ModItems.plate_titanium }); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_mirvlet, 1), new Object[] { " S ", "SPS", "STS", 'S', ModItems.plate_steel, 'P', ModItems.ingot_pu239, 'T', Item.getItemFromBlock(Blocks.tnt) }); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_mirv, 1), new Object[] { "MMM", "MWM", "MMM", 'M', ModItems.warhead_mirvlet, 'W', ModItems.warhead_generic_large }); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_thermo_endo, 1), new Object[] { " T ", "TBT", "TBT", 'T', ModItems.plate_titanium, 'B', Item.getItemFromBlock(ModBlocks.therm_endo) }); - //GameRegistry.addRecipe(new ItemStack(ModItems.warhead_thermo_exo, 1), new Object[] { " T ", "TBT", "TBT", 'T', ModItems.plate_titanium, 'B', Item.getItemFromBlock(ModBlocks.therm_exo) }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.fuel_tank_small, 1), new Object[] { "PTP", "PTP", "PTP", 'P', "plateTitanium", 'T', ModItems.canister_kerosene })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.fuel_tank_medium, 1), new Object[] { "PTP", "PTP", "PTP", 'P', "plateTitanium", 'T', ModItems.fuel_tank_small })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.fuel_tank_large, 1), new Object[] { "PTP", "PTP", "PTP", 'P', "plateTitanium", 'T', ModItems.fuel_tank_medium })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.thruster_small, 1), new Object[] { "AS ", "AH ", " L ", 'A', ModItems.wire_aluminium, 'S', "plateSteel", 'H', ModItems.hull_small_steel, 'L', ModItems.hull_small_steel })); - //GameRegistry.addRecipe(new ItemStack(ModItems.thruster_medium, 1), new Object[] { "AS ", "AH ", " L ", 'A', ModItems.wire_copper, 'S', ModItems.thruster_small, 'H', ModItems.hull_small_steel, 'L', ModItems.hull_big_steel }); - //GameRegistry.addRecipe(new ItemStack(ModItems.thruster_large, 1), new Object[] { "AS ", "AH ", " L ", 'A', ModItems.wire_red_copper, 'S', ModItems.thruster_medium, 'H', ModItems.hull_big_steel, 'L', ModItems.hull_big_steel }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.lemon, 1), new Object[] { " D ", "DSD", " D ", 'D', new ItemStack(Items.dye, 1, 11), 'S', "stone" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.chopper_blades, 1), new Object[] { "CCC", "SIS", " I ", 'C', ModItems.plate_combine_steel, 'S', "plateSteel", 'I', ModItems.ingot_combine_steel })); - //GameRegistry.addRecipe(new ItemStack(ModItems.chopper_gun, 1), new Object[] { " PI", "WWC", " PM", 'P', ModItems.plate_combine_steel, 'W', ModItems.wire_magnetized_tungsten, 'I', ModItems.ingot_combine_steel, 'C', ModItems.coil_magnetized_tungsten, 'M', ModItems.motor }); - //GameRegistry.addRecipe(new ItemStack(ModItems.chopper_head, 1), new Object[] { " GI", "WIB", "WCB", 'G', ModBlocks.reinforced_glass, 'W', ModItems.wire_magnetized_tungsten, 'I', ModItems.ingot_combine_steel, 'C', ModBlocks.fwatz_computer, 'B', ModBlocks.block_combine_steel }); - //GameRegistry.addRecipe(new ItemStack(ModItems.chopper_tail, 1), new Object[] { "PPP", "IIM", " PR", 'P', ModItems.plate_combine_steel, 'I', ModItems.ingot_combine_steel, 'M', ModItems.motor, 'R', ModItems.chopper_blades }); - //GameRegistry.addRecipe(new ItemStack(ModItems.chopper_torso, 1), new Object[] { "IMI", "MBB", "RCI", 'P', ModItems.plate_combine_steel, 'I', ModItems.ingot_combine_steel, 'M', ModItems.motor, 'B', ModBlocks.block_combine_steel, 'R', ModItems.chopper_blades, 'C', ModBlocks.fwatz_computer }); - //GameRegistry.addRecipe(new ItemStack(ModItems.chopper_wing, 1), new Object[] { "III", " PP", " PP", 'P', ModItems.plate_combine_steel, 'I', ModItems.ingot_combine_steel }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.telepad, 1), new Object[] { "CPC", "SUS", "WWW", 'C', ModItems.plate_combine_steel, 'P', ModItems.plate_schrabidium, 'S', "plateSteel", 'U', ModItems.circuit_schrabidium, 'W', ModItems.wire_gold })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.entanglement_kit, 1), new Object[] { "CEC", "PDP", "CSC", 'C', ModItems.coil_magnetized_tungsten, 'P', "plateDenseLead", 'S', ModItems.singularity_super_heated, 'E', ModItems.singularity_counter_resonant, 'D', ModItems.powder_power })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.entanglement_kit, 1), new Object[] { "CSC", "PDP", "CEC", 'C', ModItems.coil_magnetized_tungsten, 'P', "plateDenseLead", 'S', ModItems.singularity_super_heated, 'E', ModItems.singularity_counter_resonant, 'D', ModItems.powder_power })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.blade_titanium, 2), new Object[] { "TP", "TP", "TT", 'P', "plateTitanium", 'T', "ingotTitanium" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.turbine_titanium, 1), new Object[] { "BBB", "BSB", "BBB", 'B', ModItems.blade_titanium, 'S', "ingotSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.rotor_steel, 3), new Object[] { "CCC", "SSS", "CCC", 'C', ModItems.coil_gold, 'S', "ingotSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.generator_steel, 1), new Object[] { "RRR", "CCC", "SSS", 'C', ModItems.coil_gold_torus, 'S', "ingotSteel", 'R', ModItems.rotor_steel })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.generator_front, 1), new Object[] { "PSP", "TBT", "TWT", 'P', "plateSteel", 'S', "ingotSteel", 'T', ModItems.tank_steel, 'B', ModItems.turbine_titanium, 'W', ModBlocks.red_wire_coated })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.shimmer_head, 1), new Object[] { "SSS", "DTD", "SSS", 'S', "ingotSteel", 'D', "blockDesh", 'T', "blockTungsten" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.shimmer_axe_head, 1), new Object[] { "PII", "PBB", "PII", 'P', "plateSteel", 'B', "blockDesh", 'I', "ingotTungsten" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.shimmer_handle, 1), new Object[] { "GP", "GP", "GP", 'G', "plateGold", 'P', "ingotPolymer" })); @@ -583,22 +527,6 @@ public class CraftingManager { GameRegistry.addShapelessRecipe(new ItemStack(ModItems.toothpicks, 3), new Object[] { Items.stick, Items.stick, Items.stick }); GameRegistry.addShapedRecipe(new ItemStack(ModItems.ducttape, 6), new Object[] { "FSF", "SPS", "FSF", 'F', Items.string, 'S', Items.slime_ball, 'P', Items.paper }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_generic, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_generic_small, 'T', ModItems.fuel_tank_small, 'M', ModItems.thruster_small }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_incendiary, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_incendiary_small, 'T', ModItems.fuel_tank_small, 'M', ModItems.thruster_small }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_cluster, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_cluster_small, 'T', ModItems.fuel_tank_small, 'M', ModItems.thruster_small }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_buster, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_buster_small, 'T', ModItems.fuel_tank_small, 'M', ModItems.thruster_small }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_strong, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_generic_medium, 'T', ModItems.fuel_tank_medium, 'M', ModItems.thruster_medium }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_incendiary_strong, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_incendiary_medium, 'T', ModItems.fuel_tank_medium, 'M', ModItems.thruster_medium }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_cluster_strong, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_cluster_medium, 'T', ModItems.fuel_tank_medium, 'M', ModItems.thruster_medium }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_buster_strong, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_buster_medium, 'T', ModItems.fuel_tank_medium, 'M', ModItems.thruster_medium }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_burst, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_generic_large, 'T', ModItems.fuel_tank_large, 'M', ModItems.thruster_large }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_inferno, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_incendiary_large, 'T', ModItems.fuel_tank_large, 'M', ModItems.thruster_large }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_rain, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_cluster_large, 'T', ModItems.fuel_tank_large, 'M', ModItems.thruster_large }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_drill, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_buster_large, 'T', ModItems.fuel_tank_large, 'M', ModItems.thruster_large }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_nuclear, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_nuclear, 'T', ModItems.fuel_tank_large, 'M', ModItems.thruster_large }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_nuclear_cluster, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_mirv, 'T', ModItems.fuel_tank_large, 'M', ModItems.thruster_large }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_endo, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_thermo_endo, 'T', ModItems.fuel_tank_large, 'M', ModItems.thruster_large }); - //GameRegistry.addRecipe(new ItemStack(ModItems.missile_exo, 1), new Object[] { "W", "T", "M", 'W', ModItems.warhead_thermo_exo, 'T', ModItems.fuel_tank_large, 'M', ModItems.thruster_large }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.missile_taint, 1), new Object[] { ModItems.missile_assembly, ModItems.bucket_mud, ModItems.powder_spark_mix, ModItems.powder_magic }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.missile_micro, 1), new Object[] { ModItems.missile_assembly, ModItems.ducttape, ModItems.gun_fatman_ammo }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.missile_bhole, 1), new Object[] { ModItems.missile_assembly, ModItems.ducttape, ModItems.grenade_black_hole }); @@ -607,16 +535,11 @@ public class CraftingManager { GameRegistry.addShapelessRecipe(new ItemStack(ModItems.missile_emp, 1), new Object[] { ModItems.missile_assembly, ModItems.ducttape, ModBlocks.emp_bomb, ModItems.circuit_targeting_tier3 }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_difurnace_off), 1), new Object[] { "T T", "PHP", "TFT", 'T', "ingotTungsten", 'P', ModItems.board_copper, 'H', Blocks.hopper, 'F', Blocks.furnace })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_centrifuge), 1), new Object[] { " T ", "RDR", "RSR", 'S', "plateSteel", 'T', ModItems.centrifuge_tower, 'W', ModItems.coil_tungsten, 'R', ModItems.coil_copper, 'D', Item.getItemFromBlock(ModBlocks.machine_difurnace_off) })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_uf6_tank), 1), new Object[] { "WTW", "WTW", "SRS", 'S', "plateIron", 'W', ModItems.coil_tungsten, 'T', ModItems.tank_steel, 'W', ModItems.coil_tungsten,'R', "ingotRedstoneAlloy" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_puf6_tank), 1), new Object[] { "WTW", "WTW", "SRS", 'S', "plateSteel", 'W', ModItems.coil_tungsten, 'T', ModItems.tank_steel, 'W', ModItems.coil_tungsten,'R', "ingotRedstoneAlloy" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_reactor), 1), new Object[] { "LSL", "SCS", "LSL", 'S', "ingotSteel", 'L', "ingotLead", 'C', ModItems.reactor_core })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_nuke_furnace_off), 1), new Object[] { "SSS", "LFL", "CCC", 'S', "plateSteel", 'C', ModItems.board_copper, 'L', "plateLead", 'F', Item.getItemFromBlock(Blocks.furnace) })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_rtg_furnace_off), 1), new Object[] { "NNN", "NFN", "UUU", 'N', "plateDenseLead", 'U', ModItems.rtg_unit, 'F', Item.getItemFromBlock(Blocks.furnace) })); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_electric_furnace_off), 1), new Object[] { "BBB", "WFW", "RRR", 'B', ModItems.ingot_beryllium, 'R', ModItems.coil_tungsten, 'W', ModItems.board_copper, 'F', Item.getItemFromBlock(Blocks.furnace) }); 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.machine_generator), 1), new Object[] { "SLS", "LCL", "SLS", 'C', ModItems.circuit_red_copper, 'L', ModItems.rod_quad_lead, 'S', "ingotSteel" })); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_industrial_generator), 1), new Object[] { "PPP", "FGG", "WSS", 'P', ModItems.board_copper, 'F', ModItems.generator_front, 'G', ModItems.generator_steel, 'W', ModBlocks.red_wire_coated, 'S', ModItems.pedestal_steel }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.red_wire_coated), 16), new Object[] { "WRW", "RIR", "WRW", 'W', ModItems.plate_polymer, 'I', "ingotRedstoneAlloy", '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(Item.getItemFromBlock(ModBlocks.red_cable), 16), new Object[] { " W ", "RRR", " W ", 'W', ModItems.plate_polymer, 'R', ModItems.wire_red_copper }); @@ -625,26 +548,13 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.oil_duct), 16), new Object[] { "SIS", " ", "SIS", 'S', "plateSteel", 'I', "plateIron" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.gas_duct_solid), 16), new Object[] { "SPS", "P P", "SPS", 'S', "ingotSteel", 'P', "plateCopper" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.gas_duct), 16), new Object[] { "SIS", " ", "SIS", 'S', "plateSteel", 'I', "plateCopper" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_deuterium), 1), new Object[] { "TIT", "RFR", "CCC", 'T', ModItems.tank_steel, 'I', "ingotTitanium", 'R', ModItems.wire_red_copper, 'F', Item.getItemFromBlock(ModBlocks.machine_difurnace_off), 'C', ModItems.coil_tungsten })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_battery), 1), new Object[] { "TST", "RIR", "TLT", 'T', "ingotTungsten", 'I', "ingotRedstoneAlloy", 'R', ModItems.wire_red_copper, 'S', "blockSulfur", 'L', "blockLead" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_battery_potato, 1), new Object[] { "PCP", "WRW", "PCP", 'P', ItemBattery.getEmptyBattery(ModItems.battery_potato), 'C', "ingotCopper", 'R', Blocks.redstone_block, 'W', "plankWood" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_battery), 1), new Object[] { "TLT", "RIR", "TST", 'T', "ingotTungsten", 'I', "ingotRedstoneAlloy", 'R', ModItems.wire_red_copper, 'S', "blockSulfur", 'L', "blockLead" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_coal_off, 1), new Object[] { "STS", "SCS", "SFS", 'S', "ingotSteel", 'T', ModItems.tank_steel, 'C', "ingotRedstoneAlloy", 'F', Blocks.furnace })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_boiler_off, 1), new Object[] { "SPS", "TFT", "SPS", 'S', "ingotSteel", 'P', ModItems.board_copper, 'T', ModItems.tank_steel, 'F', Blocks.furnace })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_boiler_electric_off, 1), new Object[] { "SPS", "TFT", "SPS", 'S', "ingotDesh", 'P', ModItems.board_copper, 'T', ModItems.tank_steel, 'F', ModBlocks.machine_electric_furnace_off })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_turbine, 1), new Object[] { "PTP", "BMB", "PTP", 'P', "plateTitanium", 'T', ModItems.turbine_titanium, 'B', ModItems.tank_steel, 'M', ModItems.motor })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_converter_he_rf, 1), new Object[] { "SSS", "CRB", "SSS", 'S', "ingotSteel", 'C', ModItems.coil_copper, 'R', ModItems.coil_copper_torus, 'B', "blockRedstone" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_converter_rf_he, 1), new Object[] { "SSS", "BRC", "SSS", 'S', ModItems.ingot_beryllium, 'C', ModItems.coil_copper, 'R', ModItems.coil_copper_torus, 'B', "blockRedstone" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_schrabidium_transmutator), 1), new Object[] { "TST", "ARA", "BBB", 'S', ModItems.nugget_schrabidium , 'T', "ingotTitanium", 'A', Item.getItemFromBlock(ModBlocks.factory_advanced_hull), 'R', Item.getItemFromBlock(ModBlocks.machine_reactor), 'B', Item.getItemFromBlock(ModBlocks.machine_battery) })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_diesel), 1), new Object[] { "HTH", "PRP", "SFS", 'S', "ingotSteel", 'T', ModItems.tank_steel, 'H', ModItems.hull_small_steel, 'P', Item.getItemFromBlock(Blocks.piston), 'R', "ingotRedstoneAlloy", 'F', Item.getItemFromBlock(ModBlocks.machine_electric_furnace_off) })); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_shredder), 1), new Object[] { "SHS", "MBM", "CFC", 'H', ModItems.hull_big_steel, 'S', ModBlocks.steel_beam, 'M', ModItems.motor, 'B', Blocks.iron_bars, 'C', ModBlocks.red_wire_coated, 'F', Item.getItemFromBlock(ModBlocks.machine_electric_furnace_off) }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_combine_factory), 1), new Object[] { "HCH", "STS", "RFR", 'H', ModItems.tank_steel, 'C', ModItems.coil_advanced_torus, 'S', "plateSteel", 'T', ModBlocks.block_magnetized_tungsten, 'R', ModItems.wire_red_copper, 'F', Item.getItemFromBlock(ModBlocks.machine_difurnace_off) })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_teleporter), 1), new Object[] { "PTP", "FKF", "BBB", 'P', "plateTitanium", 'T', ModItems.telepad, 'F', Item.getItemFromBlock(ModBlocks.factory_advanced_hull), 'K', ModItems.entanglement_kit, 'B', Item.getItemFromBlock(ModBlocks.machine_battery) })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_rtg_grey), 1), new Object[] { "UPU", "UWU", "UPU", 'P', "plateSteel", 'U', ModItems.rtg_unit, 'W', ModBlocks.red_wire_coated })); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_cyclotron), 1), new Object[] { "PTP", "PCP", "WBW", 'P', ModItems.board_copper, 'T', ModItems.cyclotron_tower, 'C', ModBlocks.fusion_core, 'W', ModBlocks.red_wire_coated, 'B', ModBlocks.machine_battery }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_well), 1), new Object[] { "TPM", "GPG", "GDG", 'T', ModItems.tank_steel, 'P', ModItems.pipes_steel, 'M', ModItems.motor, 'G', ModBlocks.steel_scaffold, 'D', ModItems.drill_titanium }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_flare), 1), new Object[] { "UHU", "GPG", "GTG", 'U', ModItems.thermo_element, 'H', ModItems.hull_small_steel, 'G', ModBlocks.steel_scaffold, 'P', ModItems.pipes_steel, 'T', ModItems.tank_steel }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_refinery), 1), new Object[] { "PTP", "CTC", "WFW", 'P', "plateTitanium", 'T', ModItems.tank_steel, 'C', ModItems.coil_tungsten, 'W', ModBlocks.red_wire_coated, 'F', ModBlocks.machine_electric_furnace_off })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.crate_iron, 1), new Object[] { "PPP", "I I", "III", 'P', "plateIron", 'I', "ingotIron" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.crate_steel, 1), new Object[] { "PPP", "I I", "III", 'P', "plateSteel", 'I', "ingotSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.safe, 1), new Object[] { "LAL", "ACA", "LAL", 'L', "plateLead", 'A', "plateAdvanced", 'C', ModBlocks.crate_steel })); @@ -657,18 +567,11 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.factory_titanium_conductor), 1), new Object[] { "SWS", "FFF", "SWS", 'S', "ingotTitanium", 'W', Item.getItemFromBlock(ModBlocks.red_wire_coated), 'F', ModItems.fuse })); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.factory_titanium_core), 1), new Object[] { "HPH", "PCP", "HPH", 'H', Item.getItemFromBlock(ModBlocks.factory_titanium_hull), 'C', ModItems.circuit_aluminium, 'P', Item.getItemFromBlock(Blocks.piston) }); GameRegistry.addRecipe(ItemBattery.getEmptyBattery(ModItems.factory_core_titanium), new Object[] { "BRB", "RHR", "BRB", 'B', ItemBattery.getEmptyBattery(ModItems.battery_generic), 'R', Item.getItemFromBlock(Blocks.redstone_block), 'H', Item.getItemFromBlock(ModBlocks.factory_titanium_hull) }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.factory_advanced_hull), 1), new Object[] { "PIP", "I I", "PIP", 'P', ModItems.plate_advanced_alloy, 'I', ModItems.ingot_advanced_alloy }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.factory_advanced_furnace), 1), new Object[] { "HMH", "MFM", "HMH", 'H', Item.getItemFromBlock(ModBlocks.factory_advanced_hull), 'M', ModItems.motor, 'F', Item.getItemFromBlock(Blocks.furnace) }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.factory_advanced_conductor), 1), new Object[] { "SWS", "FFF", "SWS", 'S', ModItems.ingot_advanced_alloy, 'W', Item.getItemFromBlock(ModBlocks.red_wire_coated), 'F', ModItems.fuse }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.factory_advanced_core), 1), new Object[] { "HPH", "PCP", "HPH", 'H', Item.getItemFromBlock(ModBlocks.factory_advanced_hull), 'C', ModItems.circuit_red_copper, 'P', Item.getItemFromBlock(Blocks.piston) }); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.factory_core_advanced), new Object[] { "BLB", "SHS", "BLB", 'B', ItemBattery.getEmptyBattery(ModItems.battery_advanced), 'S', "blockSulfur", 'L', "blockLead", 'H', Item.getItemFromBlock(ModBlocks.factory_advanced_hull) })); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.factory_core_advanced), new Object[] { "BSB", "LHL", "BSB", 'B', ItemBattery.getEmptyBattery(ModItems.battery_advanced), 'S', "blockSulfur", 'L', "blockLead", 'H', Item.getItemFromBlock(ModBlocks.factory_advanced_hull) })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.fuse, 1), new Object[] { " S ", "GAG", " S ", 'S', "plateSteel", 'G', Item.getItemFromBlock(Blocks.glass_pane), 'A', ModItems.wire_aluminium })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.arc_electrode, 1), new Object[] { "C", "T", "C", 'C', "dustCoal", 'T', ModItems.bolt_tungsten })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.arc_electrode_desh, 1), new Object[] { "C", "T", "C", 'C', "dustDesh", 'T', ModItems.arc_electrode })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.redcoil_capacitor, 1), new Object[] { "PFP", "CBC", "CBC", 'P', "plateGold", 'B', Item.getItemFromBlock(Blocks.redstone_block), 'C', ModItems.coil_advanced_alloy, 'F', ModItems.fuse })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.titanium_filter, 1), new Object[] { "PFP", "CBC", "CBC", 'P', "plateLead", 'B', "U238", 'C', "plateTitanium", 'F', ModItems.fuse })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.detonator, 1), new Object[] { " W", "SC", "CE", 'S', "plateSteel", 'W', ModItems.wire_red_copper, 'C', ModItems.circuit_red_copper, 'E', "ingotSteel" })); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.detonator_multi, 1), new Object[] { ModItems.detonator, ModItems.circuit_targeting_tier3 }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.detonator_laser, 1), new Object[] { "RRD", "PIC", " P", 'P', "plateSteel", 'R', Items.redstone, 'C', ModItems.circuit_targeting_tier3, 'D', "gemDiamond", 'I', "ingotSteel" })); @@ -694,9 +597,6 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.crystal_energy, 1), new Object[] { "EEE", "EGE", "EEE", 'E', ModItems.powder_power, 'G', Items.glowstone_dust }); GameRegistry.addRecipe(new ItemStack(ModItems.pellet_coolant, 1), new Object[] { "CRC", "RBR", "CRC", 'C', ModItems.powder_ice, 'R', ModItems.rod_quad_coolant, 'B', ModBlocks.block_niter }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.thermo_element, 1), new Object[] { "GRG", "APA", "GRG", 'P', "plateSteel", 'G', Items.gold_nugget, 'R', ModItems.wire_red_copper, 'A', ModItems.wire_aluminium })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.limiter, 1), new Object[] { "SC", "SC", "LS", 'S', "plateSteel", 'C', ModItems.circuit_copper, 'L', "plateLead" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.blades_aluminium, 1), new Object[] { " P ", "PIP", " P ", 'P', "plateAluminum", 'I', "ingotAluminum" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.blades_gold, 1), new Object[] { " P ", "PIP", " P ", 'P', "plateGold", 'I', "ingotGold" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.blades_iron, 1), new Object[] { " P ", "PIP", " P ", 'P', "plateIron", 'I', "ingotIron" })); @@ -719,44 +619,17 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mechanism_rifle_2, 1), new Object[] { "ICI", "CMA", "IAM", 'I', "plateAdvanced", 'C', "ingotDuraSteel", 'A', "ingotTungsten", 'M', ModItems.mechanism_revolver_2 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mechanism_launcher_1, 1), new Object[] { "TTT", "SSS", "BBI", 'T', "plateTitanium", 'S', "ingotSteel", 'B', ModItems.bolt_tungsten, 'I', "ingotRedstoneAlloy" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mechanism_launcher_2, 1), new Object[] { "TTT", "SSS", "BBI", 'T', "plateAdvanced", 'S', "ingotPolymer", 'B', ModItems.bolt_dura_steel, 'I', "ingotDesh" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mechanism_special, 1), new Object[] { "PCI", "ISS", "PCI", 'P', "plateDesh", 'C', ModItems.coil_advanced_alloy, 'I', ModItems.ingot_starmetal, 'S', ModItems.circuit_targeting_tier3 })); + GameRegistry.addRecipe(new ItemStack(ModItems.mechanism_special, 1), new Object[] { "PCI", "ISS", "PCI", 'P', ModItems.plate_desh, 'C', ModItems.coil_advanced_alloy, 'I', ModItems.ingot_starmetal, 'S', ModItems.circuit_targeting_tier3 }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.reactor_element), 1), new Object[] { "SCS", "CSC", "SCS", 'S', "ingotSteel", 'C', ModItems.rod_quad_empty })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.reactor_control), 1), new Object[] { "SLS", "SLS", "SLS", 'S', "ingotSteel", 'L', "ingotLead" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.reactor_conductor), 1), new Object[] { "SWS", "FFF", "SWS", 'S', "ingotSteel", 'W', Item.getItemFromBlock(ModBlocks.red_wire_coated), 'F', ModItems.fuse })); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.reactor_computer), 1), new Object[] { "CWC", "CRC", "CWC", 'C', ModItems.circuit_red_copper, 'W', Item.getItemFromBlock(ModBlocks.red_wire_coated), 'R', Item.getItemFromBlock(ModBlocks.reactor_conductor) }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.reactor_hatch), 1), new Object[] { "BBB", "BFB", "BBB", 'B', Item.getItemFromBlock(ModBlocks.brick_concrete), 'F', Item.getItemFromBlock(Blocks.furnace) }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.reactor_ejector, 1), new Object[] { "CLC", "MHM", "CLC", 'C', ModBlocks.brick_concrete, 'L', "plateLead", 'M', ModItems.motor, 'H', ModBlocks.reactor_hatch })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.reactor_inserter, 1), new Object[] { "CLC", "MHM", "CLC", 'C', ModBlocks.brick_concrete, 'L', "plateCopper", 'M', ModItems.motor, 'H', ModBlocks.reactor_hatch })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fusion_conductor), 1), new Object[] { "SSS", "CCC", "SSS", 'S', "plateSteel", 'C', ModItems.coil_advanced_alloy })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fusion_center), 1), new Object[] { "TMT", "TWT", "TMT", 'T', "ingotTungsten", 'M', Item.getItemFromBlock(ModBlocks.fusion_conductor), 'W', Item.getItemFromBlock(ModBlocks.red_wire_coated) })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fusion_motor), 1), new Object[] { "MTM", "TTT", "MTM", 'T', "ingotTitanium", 'M', ModItems.motor })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fusion_heater), 1), new Object[] { "TTT", "CCC", "TTT", 'T', "ingotTungsten", 'C', ModItems.magnetron })); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fusion_hatch), 1), new Object[] { "TTT", "TFT", "TTT", 'T', Item.getItemFromBlock(ModBlocks.fusion_heater), 'F', Item.getItemFromBlock(Blocks.furnace) }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fusion_core), 1), new Object[] { "CWC", "CRC", "CWC", 'C', ModItems.circuit_gold, 'W', Item.getItemFromBlock(ModBlocks.red_wire_coated), 'R', Item.getItemFromBlock(ModBlocks.fusion_center) }); - - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.watz_element), 2), new Object[] { "TET", "ERE", "TET", 'T', "ingotTungsten", 'R', Item.getItemFromBlock(ModBlocks.fusion_conductor), 'E', Item.getItemFromBlock(ModBlocks.reactor_element) })); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.watz_control), 2), new Object[] { "TMT", "MWM", "TMT", 'T', ModItems.ingot_advanced_alloy, 'M', Item.getItemFromBlock(ModBlocks.reactor_control), 'W', ModItems.coil_copper_torus }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.watz_cooler), 1), new Object[] { "SCS", "CNC", "SCS", 'N', "blockSteel", 'C', ModItems.rod_quad_coolant, 'S', "dustNetherQuartz" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.watz_end), 1), new Object[] { "TST", "SBS", "TST", 'T', "ingotTungsten", 'S', "ingotSteel", 'B', "blockLead" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.watz_conductor), 1), new Object[] { "TWT", "FNF", "TWT", 'T', "ingotTungsten", 'W', Item.getItemFromBlock(ModBlocks.red_wire_coated), 'F', ModItems.fuse, 'N', "nuggetSchrabidium" })); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.watz_hatch), 1), new Object[] { "RRR", "RFR", "RRR", 'R', Item.getItemFromBlock(ModBlocks.reinforced_brick), 'F', Item.getItemFromBlock(Blocks.furnace) }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.watz_core), 1), new Object[] { "CWC", "CRC", "CWC", 'C', ModItems.circuit_schrabidium, 'W', Item.getItemFromBlock(ModBlocks.watz_conductor), 'R', Item.getItemFromBlock(ModBlocks.block_meteor) }); - - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fwatz_conductor), 1), new Object[] { "SSS", "CCC", "SSS", 'S', ModItems.plate_combine_steel, 'C', ModItems.coil_magnetized_tungsten }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fwatz_cooler), 1), new Object[] { "IPI", "IPI", "IPI", 'I', "ingotTitanium", 'P', "plateTitanium" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fwatz_tank), 1), new Object[] { "CGC", "GGG", "CGC", 'C', ModItems.plate_combine_steel, 'G', "paneGlass" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fwatz_scaffold), 1), new Object[] { "IPI", "P P", "IPI", 'I', "ingotTungsten", 'P', "plateDenseLead" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fwatz_hatch), 1), new Object[] { "SSS", "SFS", "SSS", 'S', ModBlocks.fwatz_scaffold, 'F', Blocks.furnace })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fwatz_computer), 1), new Object[] { "DTD", "TMT", "DTD", 'D', "dustDiamond", 'T', "dustMagnetizedTungsten", 'M', ModBlocks.block_meteor })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.fwatz_core), 1), new Object[] { "CMC", "MAM", "CMC", 'C', ModItems.circuit_schrabidium, 'M', ModBlocks.fwatz_computer, 'A', ModBlocks.fwatz_conductor })); GameRegistry.addRecipe(new ItemStack(ModBlocks.reinforced_stone, 4), new Object[] { "FBF", "BFB", "FBF", 'F', Blocks.cobblestone, 'B', Blocks.stone }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.asphalt), 8), new Object[] { "BGB", "GSG", "BGB", 'B', ModItems.canister_bitumen, 'G', Blocks.gravel, 'S', Blocks.sand }); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.brick_light), 4), new Object[] { "FBF", "BFB", "FBF", 'F', Blocks.fence, 'B', Blocks.brick_block }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.concrete_smooth), 8), new Object[] { "SGS", "GWG", "SGS", 'S', Blocks.sand, 'G', Blocks.gravel, 'W', Items.water_bucket }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.concrete_smooth), 8), new Object[] { "GSG", "SWS", "GSG", 'S', Blocks.sand, 'G', Blocks.gravel, 'W', Items.water_bucket }); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.concrete), 4), new Object[] { "CC", "CC", 'C', ModBlocks.concrete_smooth }); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.brick_concrete), 4), new Object[] { " C ", "CBC", " C ", 'C', ModBlocks.concrete_smooth, 'B', Items.clay_ball }); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.brick_concrete), 4), new Object[] { " C ", "CBC", " C ", 'C', ModBlocks.concrete, 'B', Items.clay_ball }); @@ -770,8 +643,6 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModBlocks.meteor_brick_mossy, 8), new Object[] { "CCC", "CVC", "CCC", 'C', ModBlocks.meteor_brick, 'V', Blocks.vine }); GameRegistry.addRecipe(new ItemStack(ModBlocks.meteor_brick_cracked, 6), new Object[] { " C " , "C C", " C ", 'C', ModBlocks.meteor_brick }); GameRegistry.addRecipe(new ItemStack(ModBlocks.meteor_battery, 1), new Object[] { "MSM", "MWM", "MSM", 'M', ModBlocks.meteor_polished, 'S', ModBlocks.block_starmetal, 'W', ModItems.wire_schrabidium }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.cmb_brick), 4), new Object[] { "PPP", "PIP", "PPP", 'P', ModItems.plate_combine_steel, 'I', ModItems.ingot_combine_steel }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.cmb_brick_reinforced), 8), new Object[] { "TBT", "BCB", "TBT", 'T', ModBlocks.block_magnetized_tungsten, 'B', ModBlocks.brick_concrete, 'C', ModBlocks.cmb_brick }); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.reinforced_brick), 8), new Object[] { "FBF", "BFB", "FBF", 'F', Blocks.iron_bars, 'B', ModBlocks.brick_concrete }); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.brick_compound), 8), new Object[] { "FBF", "BFB", "FBF", 'F', ModItems.bolt_tungsten, 'B', ModBlocks.reinforced_brick }); @@ -796,9 +667,6 @@ public class CraftingManager { GameRegistry.addShapelessRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.steel_corner)), new Object[] { Item.getItemFromBlock(ModBlocks.steel_wall), Item.getItemFromBlock(ModBlocks.steel_wall) }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.steel_roof), 2), new Object[] { "SSS", 'S', "ingotSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.steel_scaffold), 8), new Object[] { "SSS", " S ", "SSS", 'S', "ingotSteel" })); - - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.seal_frame, 2), new Object[] { "SSS", "WRW", "III", 'S', ModBlocks.steel_roof, 'W', ModItems.wire_aluminium, 'R', "dustRedstone", 'I', "ingotSteel" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.seal_controller, 1), new Object[] { "SSS", "RCR", "III", 'S', ModBlocks.steel_roof, 'C', ModItems.ingot_red_copper, 'R', "dustRedstone", 'I', "ingotSteel" })); reg2(); } @@ -809,41 +677,26 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_panzerschreck, 1), new Object[] { "SSS", " MW", 'S', ModItems.hull_small_steel, 'W', "plateCopper", 'M', ModItems.mechanism_launcher_1 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_karl, 1), new Object[] { "SSW", " MW", 'S', ModItems.hull_small_steel, 'W', "plateAdvanced", 'M', ModItems.mechanism_launcher_2 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_hk69, 1), new Object[] { "SSI", " MB", 'S', ModItems.hull_small_steel, 'I', "ingotIron", 'M', ModItems.mechanism_launcher_1, 'B', ModItems.bolt_tungsten })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_rpg_ammo, 8), new Object[] { "SI ", "ITI", " I ", 'S', "plateSteel", 'T', Item.getItemFromBlock(Blocks.tnt), 'I', "plateIron", 'M', ModItems.mechanism_launcher_2 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_stinger, 1), new Object[] { "SSW", "CMW", 'S', "plateSteel", 'W', "plateTitanium", 'C', ModItems.circuit_red_copper, 'M', ModItems.mechanism_launcher_2 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_stinger_ammo, 4), new Object[] { "SS ", "STI", " IR", 'S', "plateSteel", 'T', Item.getItemFromBlock(Blocks.tnt), 'I', "plateAluminum", 'R', "dustRedstone" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver, 1), new Object[] { "SSM", " RW", 'S', "plateSteel", 'W', "plankWood", 'R', ModItems.wire_aluminium, 'M', ModItems.mechanism_revolver_1 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_saturnite, 1), new Object[] { "SSM", " RW", 'S', "plateSaturnite", 'W', "plankWood", 'R', ModItems.wire_tungsten, 'M', ModItems.mechanism_revolver_2 })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_ammo, 16), new Object[] { "L", "S", "G", 'L', "plateLead", 'S', "plateSteel", 'G', Items.gunpowder })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_iron, 1), new Object[] { "SSM", " RW", 'S', "plateIron", 'W', "plankWood", 'R', ModItems.wire_aluminium, 'M', ModItems.mechanism_revolver_1 })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_iron_ammo, 16), new Object[] { "L", "S", "G", 'L', "plateIron", 'S', "plateCopper", 'G', Items.gunpowder })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_gold, 1), new Object[] { "SSM", " RW", 'S', "plateGold", 'W', "ingotGold", 'R', ModItems.wire_gold, 'M', ModItems.mechanism_revolver_1 })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_gold_ammo, 16), new Object[] { "L", "L", "S", 'L', ModItems.plate_gold, 'S', Items.gunpowder })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_lead, 1), new Object[] { "SSM", " RW", 'S', "plateLead", 'W', "ingotTungsten", 'R', ModItems.wire_tungsten, 'M', ModItems.mechanism_revolver_2 })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_lead_ammo, 16), new Object[] { "L", "S", "G", 'L', "paneGlass", 'S', ModItems.ingot_u235, 'G', Items.gunpowder })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_lead_ammo, 16), new Object[] { "L", "S", "G", 'L', "paneGlass", 'S', ModItems.ingot_pu239, 'G', Items.gunpowder })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_lead_ammo, 16), new Object[] { "L", "S", "G", 'L', "paneGlass", 'S', ModItems.nuclear_waste, 'G', Items.gunpowder })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_lead_ammo, 16), new Object[] { "L", "S", "G", 'L', "paneGlass", 'S', ModItems.trinitite, 'G', Items.gunpowder })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_schrabidium, 1), new Object[] { "SSM", " RW", 'S', ModBlocks.block_schrabidium, 'W', "ingotTungsten", 'R', ModItems.wire_schrabidium, 'M', ModItems.mechanism_special })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_deagle, 1), new Object[] { "PPM", " BI", 'P', "plateSteel", 'B', ModItems.bolt_tungsten, 'I', "ingotPolymer", 'M', ModItems.mechanism_rifle_1 })); - //GameRegistry.addRecipe(new ItemStack(ModItems.gun_revolver_schrabidium_ammo, 16), new Object[] { "L", "N", "S", 'L', ModItems.plate_schrabidium, 'S', Items.gunpowder, 'N', Items.nether_star }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_cursed, 1), new Object[] { "TTM", "SRI", 'S', "plateSteel", 'I', "ingotSteel", 'R', ModItems.wire_red_copper, 'T', "plateTitanium", 'M', ModItems.mechanism_revolver_2 })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_cursed_ammo, 32), new Object[] { "L", "L", 'L', "plateSteel", 'S', Items.gunpowder })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_nightmare, 1), new Object[] { "SEM", " RW", 'S', "plateSteel", 'W', "plankWood", 'R', ModItems.wire_aluminium, 'E', ModItems.powder_power, 'M', ModItems.mechanism_revolver_2 })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_nightmare_ammo, 16), new Object[] { "L", "S", "G", 'L', "plateDenseLead", 'S', "plateSteel", 'G', Items.gunpowder })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_nightmare2, 1), new Object[] { "SSM", "RRW", 'S', "plateDenseLead", 'W', "ingotTungsten", 'R', ModItems.wire_gold, 'M', ModItems.mechanism_special })); - //GameRegistry.addRecipe(new ItemStack(ModItems.gun_revolver_nightmare2_ammo, 6), new Object[] { "L", "S", "G", 'L', ModItems.powder_power, 'S', ModItems.plate_polymer, 'G', Items.gunpowder }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_fatman, 1), new Object[] { "SSI", "IIM", "WPH", 'S', "plateSteel", 'I', "ingotSteel", 'W', ModItems.wire_aluminium, 'H', ModItems.hull_small_steel, 'P', Item.getItemFromBlock(Blocks.piston), 'M', ModItems.mechanism_launcher_2 })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_fatman_ammo, 2), new Object[] { " S ", "SPS", "ITI", 'S', "plateSteel", 'P', ModItems.ingot_pu239, 'T', Item.getItemFromBlock(Blocks.tnt), 'I', "plateIron" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_mirv, 1), new Object[] { "LLL", "WFW", "SSS", 'S', "plateSteel", 'L', "plateLead", 'W', ModItems.wire_gold, 'F', ModItems.gun_fatman })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_proto, 1), new Object[] { "LLL", "WFW", "SSS", 'S', ModItems.plate_polymer, 'L', "plateDesh", 'W', ModItems.wire_tungsten, 'F', ModItems.gun_fatman })); - //GameRegistry.addRecipe(new ItemStack(ModItems.gun_mirv_ammo, 1), new Object[] { "NNN", "NSN", "NNN", 'S', ModItems.hull_small_steel, 'N', ModItems.gun_fatman_ammo }); + GameRegistry.addRecipe(new ItemStack(ModItems.gun_proto, 1), new Object[] { "LLL", "WFW", "SSS", 'S', ModItems.plate_polymer, 'L', ModItems.plate_desh, 'W', ModItems.wire_tungsten, 'F', ModItems.gun_fatman }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_bf, 1), new Object[] { "LLL", "WFW", "SSS", 'S', ModItems.plate_paa, 'L', "plateDenseLead", 'W', ModItems.wire_advanced_alloy, 'F', ModItems.gun_mirv })); GameRegistry.addRecipe(new ItemStack(ModItems.gun_bf_ammo, 1), new Object[] { "AEA", "SHS", "AEA", 'H', ModItems.hull_small_steel, 'A', ModItems.cell_antimatter, 'S', ModItems.cell_anti_schrabidium, 'E', ModItems.powder_power }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_mp40, 1), new Object[] { "IIM", " SW", " S ", 'S', "plateSteel", 'I', "ingotSteel", 'W', "plankWood", 'M', ModItems.mechanism_rifle_2 })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_mp40_ammo, 16), new Object[] { "L", "P", "G", 'P', "plateCopper", 'L', "plateLead", 'G', Items.gunpowder })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_uboinik, 1), new Object[] { "IIM", "SPW", 'P', "plateSteel", 'I', "ingotSteel", 'W', "plankWood", 'S', Items.stick, 'M', ModItems.mechanism_revolver_2 })); - //GameRegistry.addRecipe(new ItemStack(ModItems.gun_uboinik_ammo, 6), new Object[] { "P", "S", "G", 'P', ModItems.pellet_buckshot, 'S', ModItems.plate_polymer, 'G', Items.gunpowder }); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_ks23, 1), new Object[] { "PPM", "SWL", 'P', "plateSteel", 'M', ModItems.mechanism_rifle_1, 'S', Items.stick, 'W', ModItems.wire_tungsten, 'L', "logWood" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_xvl1456, 1), new Object[] { "PBB", "ACC", "PRY", 'P', "plateSteel", 'R', ModItems.redcoil_capacitor, 'A', ModItems.coil_advanced_alloy, 'B', ModItems.battery_generic, 'C', ModItems.coil_advanced_torus, 'Y', ModItems.mechanism_special })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_xvl1456_ammo, 64), new Object[] { "SSS", "SRS", "SSS", 'S', "plateSteel", 'R', ModItems.rod_quad_uranium_fuel_depleted })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_xvl1456_ammo, 32), new Object[] { " S ", "SRS", " S ", 'S', "plateSteel", 'R', ModItems.rod_dual_uranium_fuel_depleted })); @@ -852,23 +705,19 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_xvl1456_ammo, 16), new Object[] { " S ", " R ", " S ", 'S', "plateSteel", 'R', "U238" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_xvl1456_ammo, 16), new Object[] { "SRS", 'S', "plateSteel", 'R', "U238" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_osipr, 1), new Object[] { "CCT", "WWI", "MCC", 'C', ModItems.plate_combine_steel, 'T', "ingotTungsten", 'W', ModItems.wire_magnetized_tungsten, 'I', ModItems.mechanism_rifle_2, 'M', ModItems.coil_magnetized_tungsten })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_osipr_ammo, 16), new Object[] { "G", "R", "S", 'G', "dustGlowstone", 'R', "dustRedstone", 'S', "plateSteel" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_osipr_ammo, 16), new Object[] { "R", "G", "S", 'G', "dustGlowstone", 'R', "dustRedstone", 'S', "plateSteel" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_osipr_ammo2, 1), new Object[] { " C ", "PPP", " C ", 'C', ModItems.plate_combine_steel, 'P', ModItems.powder_power })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_immolator, 1), new Object[] { "WCC", "PMT", "WAA", 'W', ModItems.wire_gold, 'C', "plateCopper", 'P', "plateAdvanced", 'M', ModItems.mechanism_launcher_1, 'T', ModItems.tank_steel, 'A', "plateSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_immolator_ammo, 16), new Object[] { "SPS", "PCP", "SPS", 'S', "plateSteel", 'C', "dustCoal", 'P', ModItems.powder_fire })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_immolator_ammo, 16), new Object[] { " F ", "SFS", " F ", 'S', "plateSteel", 'F', ModItems.canister_fuel })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_immolator_ammo, 24), new Object[] { " F ", "SFS", " F ", 'S', "plateSteel", 'F', ModItems.canister_napalm })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_flamer, 1), new Object[] { "WPP", "SCT", "WMI", 'W', ModItems.wire_gold, 'P', ModItems.pipes_steel, 'S', ModItems.hull_small_steel, 'C', ModItems.coil_tungsten, 'T', ModItems.tank_steel, 'M', ModItems.mechanism_launcher_1, 'I', "ingotSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_cryolator, 1), new Object[] { "SSS", "IWL", "LMI", 'S', "plateSteel", 'I', "plateIron", 'L', Items.leather, 'M', ModItems.mechanism_launcher_1, 'W', ModItems.wire_aluminium })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_cryolator_ammo, 16), new Object[] { "SPS", "PCP", "SPS", 'S', "plateSteel", 'C', "dustSalpeter", 'P', Items.snowball })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_cryolator_ammo, 16), new Object[] { " F ", "SFS", " F ", 'S', "plateSteel", 'F', ModItems.powder_ice })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_zomg, 1), new Object[] { "PRR", "CCS", "PXX", 'P', ModItems.plate_paa, 'R', "plateDenseLead", 'S', ModItems.singularity_counter_resonant, 'X', ModItems.crystal_xen, 'C', ModItems.coil_magnetized_tungsten})); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_mp, 1), new Object[] { "EEE", "SSM", "III", 'E', ModItems.ingot_euphemium, 'S', "plateSteel", 'I', "ingotSteel", 'M', ModItems.mechanism_rifle_2 })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_mp_ammo, 32), new Object[] { "G", "C", 'G', "plateGold", 'C', "plateCopper", 'S', Items.gunpowder })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_emp, 1), new Object[] { "CPG", "CMF", "CPI", 'C', ModItems.coil_copper, 'P', "plateLead", 'G', ModItems.circuit_gold, 'M', ModItems.magnetron, 'I', "ingotTungsten", 'F', ModItems.mechanism_special })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_emp_ammo, 8), new Object[] { "IGI", "IPI", "IPI", 'G', "plateGold", 'I', "plateIron", 'P', ModItems.powder_power })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_jack, 1), new Object[] { "WW ", "TSD", " TT", 'W', "ingotWeidanium", 'T', ModItems.toothpicks, 'S', ModItems.gun_uboinik, 'D', ModItems.ducttape })); - //GameRegistry.addShapedRecipe(new ItemStack(ModItems.gun_jack_ammo, 3), new Object[] { "PP", "II", "GG", 'G', Items.gunpowder, 'P', ModItems.pellet_buckshot, 'I', ModItems.plate_polymer }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.gun_jack_ammo, 1), new Object[] { ModItems.ammo_12gauge, ModItems.ammo_12gauge, ModItems.ammo_12gauge, ModItems.ammo_12gauge }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_euthanasia, 1), new Object[] { "TDT", "AAS", " T ", 'A', "ingotAustralium", 'T', ModItems.toothpicks, 'S', ModItems.gun_mp40, 'D', ModItems.ducttape })); GameRegistry.addShapedRecipe(new ItemStack(ModItems.gun_euthanasia_ammo, 12), new Object[] { "P", "S", "N", 'P', ModItems.powder_poison, 'N', ModItems.niter, 'S', ModItems.syringe_metal_empty }); @@ -877,15 +726,12 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_skystinger, 1), new Object[] { "TTT", "AAS", " D ", 'A', "ingotUnobtainium", 'T', ModItems.toothpicks, 'S', ModItems.gun_stinger, 'D', ModItems.ducttape })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_hp, 1), new Object[] { "TDT", "ASA", " T ", 'A', "ingotReiium", 'T', ModItems.toothpicks, 'S', ModItems.gun_xvl1456, 'D', ModItems.ducttape })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_hp_ammo, 8), new Object[] { " R ", "BSK", " Y ", 'S', "plateSteel", 'K', new ItemStack(Items.dye, 1, 0), 'R', new ItemStack(Items.dye, 1, 1), 'B', new ItemStack(Items.dye, 1, 4), 'Y', new ItemStack(Items.dye, 1, 11) })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_defabricator, 1), new Object[] { " SS", "DDD", "TCB", 'S', "plateSteel", 'D', ModItems.plate_dalekanium, 'T', "plateTitanium", 'C', ModItems.circuit_gold, 'B', ModItems.battery_lithium })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_defabricator_ammo, 16), new Object[] { "PCP", "DDD", "PCP", 'P', "plateSteel", 'C', ModItems.coil_copper, 'D', "dustLithium" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_lever_action, 1), new Object[] { "PPI", "SWD", 'P', "plateIron", 'I', ModItems.mechanism_rifle_1, 'S', Items.stick, 'D', "plankWood", 'W', ModItems.wire_aluminium })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_lever_action_dark, 1), new Object[] { "PPI", "SWD", 'P', "plateSteel", 'I', ModItems.mechanism_rifle_1, 'S', Items.stick, 'D', "plankWood", 'W', ModItems.wire_aluminium })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_lever_action_ammo, 6), new Object[] { "P", "S", "G", 'P', ModItems.pellet_buckshot, 'S', "plateCopper", 'G', Items.gunpowder })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_bolt_action, 1), new Object[] { "PPI", "SWD", 'P', "plateSteel", 'I', ModItems.mechanism_rifle_1, 'S', Items.stick, 'D', "plankWood", 'W', ModItems.wire_copper })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_bolt_action_green, 1), new Object[] { "PPI", "SWD", 'P', "plateIron", 'I', ModItems.mechanism_rifle_1, 'S', Items.stick, 'D', "plankWood", 'W', ModItems.wire_copper })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_bolt_action_saturnite, 1), new Object[] { "PPI", "SWD", 'P', "plateSaturnite", 'I', ModItems.mechanism_rifle_1, 'S', Items.stick, 'D', "plankWood", 'W', ModItems.wire_tungsten })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_bolt_action_ammo, 2), new Object[] { "P", "S", "G", 'P', "nuggetLead", 'S', ModItems.plate_polymer, 'G', Items.gunpowder })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_b92, 1), new Object[] { "SSS", " EP", 'P', "ingotPolymer", 'S', ModItems.ingot_starmetal, 'E', ModItems.powder_spark_mix })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_b92_ammo, 1), new Object[] { "PSP", "ESE", "PSP", 'P', "plateSteel", 'S', ModItems.ingot_starmetal, 'E', ModItems.powder_spark_mix })); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.weaponized_starblaster_cell, 1), new Object[] { new ItemStack(ModItems.fluid_tank_full, 1, FluidType.ACID.getID()), GunB92Cell.getFullCell(), ModItems.wire_copper }); @@ -893,7 +739,6 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_uzi_silencer, 1), new Object[] { "P ", " P ", " U", 'P', "ingotPolymer", 'U', ModItems.gun_uzi })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_uzi_saturnite, 1), new Object[] { "SMS", " PB", " P ", 'S', "ingotSaturnite", 'M', ModItems.mechanism_rifle_2, 'P', "plateSaturnite", 'B', ModItems.bolt_tungsten })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_uzi_saturnite_silencer, 1), new Object[] { "P ", " P ", " U", 'P', "ingotPolymer", 'U', ModItems.gun_uzi_saturnite })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_uzi_ammo, 16), new Object[] { "L", "P", "G", 'P', "plateIron", 'L', "plateSteel", 'G', Items.gunpowder })); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ammo_44, 1), new Object[] { ModItems.gun_revolver_nopip_ammo }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ammo_44_pip, 1), new Object[] { ModItems.gun_revolver_pip_ammo }); @@ -926,7 +771,6 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.assembly_lacunae, 24), new Object[] { " I", "GC", " P", 'I', "ingotCopper", 'G', ModItems.cordite, 'C', ModItems.casing_9, 'P', ModItems.primer_9 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.assembly_nopip, 16), new Object[] { " I", "GC", " P", 'I', "ingotLead", 'G', ModItems.cordite, 'C', ModItems.casing_44, 'P', ModItems.primer_44 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.assembly_nopip, 16), new Object[] { " I", "GC", " P", 'I', "ingotLead", 'G', ModItems.ballistite, 'C', ModItems.casing_44, 'P', ModItems.primer_44 })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.assembly_pip, 16), new Object[] { " I ", "GCM", " P ", 'I', "ingotLead", 'G', ModItems.cordite, 'C', ModItems.casing_44, 'P', ModItems.primer_44, 'M', ModItems.powder_magic })); GameRegistry.addRecipe(new ItemStack(ModItems.ammo_12gauge, 8), new Object[] { " I ", "GCL", " P ", 'I', ModItems.pellet_buckshot, 'G', ModItems.cordite, 'C', ModItems.casing_buckshot, 'P', ModItems.primer_buckshot, 'L', ModItems.plate_polymer }); GameRegistry.addRecipe(new ItemStack(ModItems.ammo_12gauge, 8), new Object[] { " I ", "GCL", " P ", 'I', ModItems.pellet_buckshot, 'G', ModItems.ballistite, 'C', ModItems.casing_buckshot, 'P', ModItems.primer_buckshot, 'L', ModItems.plate_polymer }); GameRegistry.addRecipe(new ItemStack(ModItems.ammo_4gauge, 8), new Object[] { " I ", "GCL", " P ", 'I', ModItems.pellet_buckshot, 'G', ModItems.cordite, 'C', ModItems.casing_50, 'P', ModItems.primer_50, 'L', ModItems.plate_polymer }); @@ -1009,6 +853,11 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.ammo_grenade_nuclear, 2), new Object[] { " P ", "GIG", " P ", 'G', ModItems.ammo_grenade, 'I', ModItems.neutron_reflector, 'P', ModItems.nugget_pu239 }); GameRegistry.addRecipe(new ItemStack(ModItems.ammo_grenade_finned, 1), new Object[] { "G", "R", 'G', Items.feather, 'R', ModItems.ammo_grenade }); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.ammo_fuel, 1), new Object[] { " P ", "BDB", " P ", 'P', "plateSteel", 'B', ModItems.bolt_tungsten, 'D', ModItems.canister_fuel })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.ammo_fuel_napalm, 1), new Object[] { " P ", "BDB", " P ", 'P', "plateSteel", 'B', ModItems.bolt_tungsten, 'D', ModItems.canister_napalm })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.ammo_fuel_phosphorus, 1), new Object[] { "CPC", "CDC", "CPC", 'C', "dustCoal", 'P', ModItems.ingot_phosphorus, 'D', ModItems.ammo_fuel })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.ammo_fuel_gas, 1), new Object[] { "PDP", "BDB", "PDP", 'P', "plateSteel", 'B', ModItems.bolt_tungsten, 'D', ModItems.pellet_gas })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.stamp_357, 1), new Object[] { "RSR", "III", " C ", 'R', "dustRedstone", 'S', ModItems.stamp_iron_flat, 'I', ModItems.plate_polymer, 'C', ModItems.casing_357 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.stamp_44, 1), new Object[] { "RSR", "III", " C ", 'R', "dustRedstone", 'S', ModItems.stamp_iron_flat, 'I', ModItems.plate_polymer, 'C', ModItems.casing_44 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.stamp_9, 1), new Object[] { "RSR", "III", " C ", 'R', "dustRedstone", 'S', ModItems.stamp_iron_flat, 'I', ModItems.plate_polymer, 'C', ModItems.casing_9 })); @@ -1043,27 +892,15 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.grenade_generic, 4), new Object[] { "RS ", "ITI", " I ", 'I', "plateIron", 'R', ModItems.wire_red_copper, 'S', "plateSteel", 'T', Item.getItemFromBlock(Blocks.tnt) })); GameRegistry.addRecipe(new ItemStack(ModItems.grenade_strong, 2), new Object[] { " G ", "SGS", " S ", 'G', ModItems.grenade_generic, 'S', Items.gunpowder }); GameRegistry.addRecipe(new ItemStack(ModItems.grenade_frag, 2), new Object[] { " G ", "WGW", " K ", 'G', ModItems.grenade_generic, 'W', Item.getItemFromBlock(Blocks.planks), 'K', Item.getItemFromBlock(Blocks.gravel) }); - //GameRegistry.addRecipe(new ItemStack(ModItems.grenade_fire, 2), new Object[] { " G ", "PFP", " P ", 'G', ModItems.grenade_generic, 'F', ModItems.grenade_frag, 'P', ModItems.powder_fire }); - //GameRegistry.addRecipe(new ItemStack(ModItems.grenade_shrapnel, 2), new Object[] { " G ", "PFP", " P ", 'G', ModItems.grenade_generic, 'P', ModItems.pellet_buckshot, 'F', ModItems.grenade_strong }); - //GameRegistry.addRecipe(new ItemStack(ModItems.grenade_cluster, 2), new Object[] { " G ", "PFP", " P ", 'G', ModItems.grenade_generic, 'P', ModItems.pellet_cluster, 'F', ModItems.grenade_frag }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.grenade_flare, 2), new Object[] { " G ", "DGD", " D ", 'G', ModItems.grenade_generic, 'D', "dustGlowstone" })); - //GameRegistry.addRecipe(new ItemStack(ModItems.grenade_electric, 2), new Object[] { " G ", "CSC", " C ", 'G', ModItems.grenade_generic, 'C', ModItems.circuit_red_copper, 'S', ModItems.grenade_strong }); GameRegistry.addRecipe(new ItemStack(ModItems.grenade_poison, 2), new Object[] { " G ", "PGP", " P ", 'G', ModItems.grenade_generic, 'P', ModItems.powder_poison }); GameRegistry.addRecipe(new ItemStack(ModItems.grenade_gas, 2), new Object[] { " G ", "CGC", " C ", 'G', ModItems.grenade_generic, 'C', ModItems.pellet_gas }); - //GameRegistry.addRecipe(new ItemStack(ModItems.grenade_schrabidium, 2), new Object[] { " G ", "CFC", " C ", 'G', ModItems.grenade_generic, 'C', ModItems.ingot_schrabidium, 'F', ModItems.grenade_flare }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.grenade_nuclear, 1), new Object[] {"RS ", "ITI", " I ", 'I', "plateIron", 'R', ModItems.wire_red_copper, 'S', "plateSteel", 'T', ModItems.gun_fatman_ammo })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.grenade_plasma, 1), new Object[] {"RS ", "ICI", "TID", 'I', "plateIron", 'R', ModItems.wire_red_copper, 'S', "plateSteel", 'C', ModItems.coil_advanced_torus, 'D', ModItems.cell_deuterium, 'T', ModItems.cell_tritium })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.grenade_tau, 1), new Object[] {"RS ", "ITI", "UIU", 'I', "plateLead", 'R', ModItems.wire_red_copper, 'S', "plateAdvanced", 'T', ModItems.coil_advanced_torus, 'U', ModItems.gun_xvl1456_ammo })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.grenade_zomg, 1), new Object[] {"RC ", "PXP", "NPN", 'P', ModItems.plate_paa, 'R', ModItems.wire_red_copper, 'C', "plateCMBSteel", 'X', ModItems.crystal_xen, 'N', ModItems.powder_power })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.grenade_aschrab, 1), new Object[] {"RS ", "ITI", " S ", 'I', "paneGlassColorless", 'R', ModItems.wire_red_copper, 'S', "plateSteel", 'T', ModItems.cell_anti_schrabidium })); GameRegistry.addRecipe(new ItemStack(ModItems.grenade_mk2, 2), new Object[] { " G ", "SGS", " S ", 'G', ModItems.grenade_strong, 'S', Items.gunpowder }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.grenade_gascan, 1), new Object[] { ModItems.canister_fuel, Items.flint }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.grenade_gascan, 1), new Object[] { ModItems.canister_biofuel, Items.flint }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.grenade_gascan, 1), new Object[] { ModItems.canister_petroil, Items.flint }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.grenade_gascan, 1), new Object[] { ModItems.canister_kerosene, Items.flint }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.grenade_pulse, 4), new Object[] { "WPW", "WSW", "SMS", 'W', ModItems.wire_red_copper, 'P', "plateIron", 'S', "plateSteel", 'M', ModItems.magnetron })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.grenade_lemon, 1), new Object[] { ModItems.lemon, ModItems.grenade_strong })); - //GameRegistry.addRecipe(new ItemStack(ModItems.grenade_black_hole, 1), new Object[] { " C ", "PBP", "PCP", 'C', ModItems.coil_advanced_alloy, 'P', ModItems.ingot_polymer, 'B', ModItems.black_hole }); GameRegistry.addShapelessRecipe(new ItemStack(ModItems.gun_moist_nugget, 12), new Object[] { Items.bread, Items.wheat, Items.cooked_chicken, Items.egg }); GameRegistry.addRecipe(new ItemStack(ModItems.grenade_smart, 4), new Object[] { " A ", "ACA", " A ", 'A', ModItems.grenade_strong, 'C', ModItems.circuit_aluminium }); GameRegistry.addRecipe(new ItemStack(ModItems.grenade_mirv, 1), new Object[] { "GGG", "GCG", "GGG", 'G', ModItems.grenade_smart, 'C', ModItems.grenade_generic }); @@ -1155,17 +992,7 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.radaway_flush, 1), new Object[] { "S", "M", "W", 'S', ModItems.powder_iodine, 'M', ModBlocks.mush, 'W', ModItems.radaway_strong }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.stealth_boy, 1), new Object[] { " B", "LI", "LC", 'B', Item.getItemFromBlock(Blocks.stone_button), 'L', Items.leather, 'I', "ingotSteel", 'C', ModItems.circuit_red_copper })); - - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_gadget), 1), new Object[] { "DGD", "FCF", "DPD", 'G', ModItems.wire_gold, 'F', ModItems.fins_flat, 'C', ModItems.sphere_steel, 'P', ModItems.pedestal_steel, 'D', new ItemStack(Items.dye, 1, 8) }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_boy), 1), new Object[] { "ADD", "HHF", "CDD", 'A', ModItems.wire_aluminium, 'H', ModItems.hull_small_steel, 'C', ModItems.circuit_aluminium, 'F', ModItems.fins_small_steel, 'D', new ItemStack(Items.dye, 1, 4) }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_man), 1), new Object[] { "ADD", "SHF", "CDD", 'A', ModItems.wire_aluminium, 'S', ModItems.sphere_steel, 'H', ModItems.hull_big_steel, 'F', ModItems.fins_big_steel, 'C', ModItems.circuit_aluminium, 'D', new ItemStack(Items.dye, 1, 11) }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_mike), 1), new Object[] { "DCD", "HSH", "ATA", 'C', ModItems.cap_aluminium, 'H', ModItems.hull_big_aluminium, 'S', ModItems.sphere_steel, 'A', ModItems.circuit_red_copper, 'T', ModItems.tank_steel, 'D', new ItemStack(Items.dye, 1, 7) }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_tsar), 1), new Object[] { "CHD", "STF", "CHD", 'C', ModItems.circuit_red_copper, 'H', ModItems.hull_big_titanium, 'S', ModItems.sphere_steel, 'T', ModItems.tank_steel, 'F', ModItems.fins_tri_steel, 'D', new ItemStack(Items.dye, 1, 0) }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_fleija), 1), new Object[] { "DGD", "CHF", "DGD", 'G', ModItems.wire_gold, 'C', ModItems.circuit_gold, 'H', ModItems.hull_small_aluminium, 'F', ModItems.fins_quad_titanium, 'D', new ItemStack(Items.dye, 1, 15) }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_prototype), 1), new Object[] { "GCG", "HRH", "GCG", 'G', ModItems.wire_gold, 'C', new ItemStack(ModItems.ingot_euphemium, 1, 34), 'H', ModItems.hull_small_steel, 'R', ModItems.dysfunctional_reactor }); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.nuke_custom), 1), new Object[] { "ADD", "HHF", "CDD", 'A', ModItems.wire_gold, 'H', ModItems.hull_small_steel, 'C', ModItems.circuit_gold, 'F', ModItems.fins_small_steel, 'D', new ItemStack(Items.dye, 1, 8) }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.launch_pad), 1), new Object[] { "PPP", "ICI", "CBC", 'P', "plateSteel", 'I', "ingotSteel", 'C', ModItems.circuit_gold, 'B', Item.getItemFromBlock(ModBlocks.machine_battery) })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.sat_dock, 1), new Object[] { "SSS", "PCP", 'S', "ingotSteel", 'P', "ingotPolymer", 'C', ModBlocks.crate_iron })); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.book_guide), 1), new Object[] { "IBI", "LBL", "IBI", 'B', Items.book, 'I', new ItemStack(Items.dye, 1, 0), 'L', new ItemStack(Items.dye, 1, 4) }); @@ -1173,13 +1000,9 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.rail_booster), 6), new Object[] { "S S", "CIC", "SRS", 'S', "ingotSteel", 'I', "plateIron", 'R', "ingotRedstoneAlloy", 'C', ModItems.coil_copper })); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.bomb_multi), 1), new Object[] { "AAD", "CHF", "AAD", 'A', ModItems.wire_aluminium, 'C', ModItems.circuit_aluminium, 'H', ModItems.hull_small_aluminium, 'F', ModItems.fins_quad_titanium, 'D', new ItemStack(Items.dye, 1, 15) }); - //GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.pellet_cluster, 8), new Object[] { "plateIron", Item.getItemFromBlock(Blocks.tnt), "plateSteel" })); - GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_fire, 4), new Object[] { Items.blaze_powder, "dustSulfur", "dustRedstone" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_ice, 4), new Object[] { Items.snowball, "dustNiter", "dustRedstone" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_poison, 4), new Object[] { Items.spider_eye, "dustRedstone", "gemQuartz" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.pellet_gas, 2), new Object[] { Items.water_bucket, "dustGlowstone", "plateSteel" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.magnetron, 2), new Object[] { "PWP", "ITI", "PWP", 'P', "plateAdvanced", 'I', "ingotAdvanced", 'W', ModItems.wire_tungsten, 'T', ModItems.coil_tungsten })); - //GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.pellet_buckshot, 2), new Object[] { "nuggetLead", "nuggetLead", "nuggetLead" })); GameRegistry.addRecipe(new ItemStack(ModItems.flame_pony, 1), new Object[] { " O ", "DPD", " O ", 'D', new ItemStack(Items.dye, 1, 11), 'O', new ItemStack(Items.dye, 1, 9), 'P', Items.paper }); GameRegistry.addRecipe(new ItemStack(ModItems.flame_conspiracy, 1), new Object[] { " S ", "STS", " S ", 'S', ModItems.canister_fuel, 'T', ModItems.ingot_steel }); @@ -1187,39 +1010,13 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.flame_opinion, 1), new Object[] { " R ", "RPR", " R ", 'P', Items.paper, 'R', new ItemStack(Items.dye, 1, 1) }); GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.flame_war), 1), new Object[] { "WHW", "CTP", "WOW", 'W', Item.getItemFromBlock(Blocks.planks), 'T', Item.getItemFromBlock(Blocks.tnt), 'H', ModItems.flame_pony, 'C', ModItems.flame_conspiracy, 'P', ModItems.flame_politics, 'O', ModItems.flame_opinion }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.float_bomb), 1), new Object[] { "TGT", "TUT", "TGT", 'T', "plateTitanium", 'U', ModItems.levitation_unit, 'G', ModItems.circuit_gold })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.therm_endo), 1), new Object[] { "TGT", "TUT", "TGT", 'T', "plateTitanium", 'U', ModItems.thermo_unit_endo, 'G', ModItems.circuit_gold })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.therm_exo), 1), new Object[] { "TGT", "TUT", "TGT", 'T', "plateTitanium", 'U', ModItems.thermo_unit_exo, 'G', ModItems.circuit_gold })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.det_cord), 8), new Object[] { "TNT", "NGN", "TNT", 'T', "plateIron", 'N', "dustNiter", 'G', Items.gunpowder })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.det_charge), 1), new Object[] { "PDP", "DTD", "PDP", 'P', "plateSteel", 'D', ModBlocks.det_cord, 'T', Blocks.tnt })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.det_nuke), 1), new Object[] { "PDP", "DCD", "PDP", 'P', "plateDesh", 'D', ModBlocks.det_charge, 'C', ModItems.man_core })); - ////GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.rejuvinator), 1), new Object[] { "TDT", "PCP", "TST", 'P', ModItems.pipes_steel, 'T', ModBlocks.factory_titanium_hull, 'D', "ingotDesh", 'S', "ingotSchrabidium", 'C', Items.clock })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.det_cord, 8), new Object[] { "TNT", "NGN", "TNT", 'T', "plateIron", 'N', "dustNiter", 'G', Items.gunpowder })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.det_charge, 1), new Object[] { "PDP", "DTD", "PDP", 'P', "plateSteel", 'D', ModBlocks.det_cord, 'T', Blocks.tnt })); + GameRegistry.addRecipe(new ItemStack(ModBlocks.det_nuke, 1), new Object[] { "PDP", "DCD", "PDP", 'P', ModItems.plate_desh, 'D', ModBlocks.det_charge, 'C', ModItems.man_core }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.emp_bomb), 1), new Object[] { "LML", "LCL", "LML", 'L', "plateLead", 'M', ModItems.magnetron, 'C', ModItems.circuit_gold })); - //GameRegistry.addRecipe(new ItemStack(ModItems.gadget_core, 1), new Object[] { "PPP", "PUP", "PPP", 'P', ModItems.nugget_pu239, 'U', ModItems.nugget_u238 }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gadget_explosive, 16), new Object[] { "ATP", "ATW", "ATP", 'P', "plateTitanium", 'A', "plateAluminum", 'T', Item.getItemFromBlock(Blocks.tnt), 'W', ModItems.wire_gold })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gadget_explosive8, 1), new Object[] { "EEE", "EPE", "EEE", 'E', ModItems.gadget_explosive, 'P', "plateAluminum" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gadget_wireing, 1), new Object[] { "WWW", "WSW", "WWW", 'W', ModItems.wire_gold, 'S', "plateTitanium" })); - - //GameRegistry.addRecipe(new ItemStack(ModItems.boy_bullet, 1), new Object[] { "##", '#', ModItems.nugget_u235 }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.boy_igniter, 1), new Object[] { " AA", "WWS", " AA", 'A', "plateAluminum", 'W', ModItems.wire_red_copper, 'S', ModItems.circuit_aluminium })); - //GameRegistry.addRecipe(new ItemStack(ModItems.boy_propellant, 1), new Object[] { "TTT", "PPW", "TTT", 'T', ModItems.plate_titanium, 'W', ModItems.wire_red_copper, 'P', Item.getItemFromBlock(Blocks.tnt) }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.boy_shielding, 1), new Object[] { "## ", "# #", "## ", '#', "plateDenseLead" })); - //GameRegistry.addRecipe(new ItemStack(ModItems.boy_target, 1), new Object[] { "###", "# ", "###", '#', ModItems.nugget_u235 }); - - //GameRegistry.addRecipe(new ItemStack(ModItems.man_core, 1), new Object[] { "PPP", "PBP", "PPP", 'P', ModItems.nugget_pu239, 'B', ModItems.nugget_beryllium }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.man_explosive, 16), new Object[] { "UTP", "UTW", "UTP", 'P', "plateTitanium", 'U', ModItems.nugget_u238, 'T', Item.getItemFromBlock(Blocks.tnt), 'W', ModItems.wire_red_copper })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.man_explosive8, 1), new Object[] { "EEE", "ESE", "EEE", 'E', ModItems.man_explosive, 'S', "plateSteel" })); - //GameRegistry.addRecipe(new ItemStack(ModItems.man_igniter, 1), new Object[] { " S ", "WWW", 'W', ModItems.wire_red_copper, 'S', ModItems.circuit_aluminium }); - - //GameRegistry.addRecipe(new ItemStack(ModItems.mike_core, 1), new Object[] { "UPU", "UPU", "UPU", 'U', ModItems.nugget_u238, 'P', ModItems.nugget_pu239 }); - //GameRegistry.addRecipe(new ItemStack(ModItems.mike_deut, 1), new Object[] { "DDD", "DTD", "DDD", 'D', ModItems.cell_deuterium, 'T', ModItems.tank_steel }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mike_cooling_unit, 1), new Object[] { "WSC", "WMC", "WAC", 'W', ModItems.coil_tungsten, 'C', ModItems.coil_copper, 'S', "plateSteel", 'M', ModItems.motor, 'A', ModItems.circuit_copper })); - - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.fleija_igniter, 1), new Object[] { " TT", "TSW", " TT", 'T', "plateTitanium", 'S', ModItems.circuit_schrabidium, 'W', ModItems.wire_schrabidium })); - //GameRegistry.addRecipe(new ItemStack(ModItems.fleija_propellant, 1), new Object[] { "PPP", "TST", "PPP", 'P', ModItems.plate_schrabidium, 'S', ModItems.ingot_schrabidium, 'T', Item.getItemFromBlock(Blocks.tnt) }); - //GameRegistry.addRecipe(new ItemStack(ModItems.fleija_core, 1), new Object[] { "NUU", "BHW", "NUU", 'N', ModItems.nugget_neptunium, 'B', ModItems.nugget_beryllium, 'U', ModItems.nugget_u235, 'H', ModItems.coil_copper, 'W', ModItems.wire_red_copper }); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.n2_charge, 1), new Object[] { " D ", "ERE", " D ", 'D', ModItems.ducttape, 'E', ModBlocks.det_charge, 'R', "blockRedstone" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.custom_tnt, 1), new Object[] { " C ", "TIT", "TIT", 'C', "plateCopper", 'I', "plateIron", 'T', Blocks.tnt })); @@ -1238,7 +1035,7 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_lithium), new Object[] { "A A", "PLP", "PSP", 'A', ModItems.wire_gold, 'P', "plateTitanium", 'S', "dustLithium", 'L', ModItems.powder_cobalt })); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_schrabidium), new Object[] { " A ", "PNP", "PSP", 'A', ModItems.wire_schrabidium, 'P', "plateSchrabidium", 'S', "dustSchrabidium", 'N', ModItems.powder_neptunium })); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_schrabidium), new Object[] { " A ", "PSP", "PNP", 'A', ModItems.wire_schrabidium, 'P', "plateSchrabidium", 'S', "dustSchrabidium", 'N', ModItems.powder_neptunium })); - GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_spark), new Object[] { " A ", "PSP", "PSP", 'A', ModItems.wire_magnetized_tungsten, 'P', "plateDineutronium", 'S', ModItems.powder_spark_mix })); + GameRegistry.addRecipe(ItemBattery.getEmptyBattery(ModItems.battery_spark), new Object[] { " A ", "PSP", "PSP", 'A', ModItems.wire_magnetized_tungsten, 'P', ModItems.plate_dineutronium, 'S', ModItems.powder_spark_mix }); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getFullBattery(ModItems.energy_core), new Object[] { "PCW", "TRD", "PCW", 'P', ModItems.plate_advanced_alloy, 'C', ModItems.coil_advanced_alloy, 'W', ModItems.wire_advanced_alloy, 'R', ModItems.cell_tritium, 'D', ModItems.cell_deuterium, 'T', "ingotTungsten" })); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getFullBattery(ModItems.energy_core), new Object[] { "PCW", "TDR", "PCW", 'P', ModItems.plate_advanced_alloy, 'C', ModItems.coil_advanced_alloy, 'W', ModItems.wire_advanced_alloy, 'R', ModItems.cell_tritium, 'D', ModItems.cell_deuterium, 'T', "ingotTungsten" })); @@ -1254,9 +1051,9 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_advanced_cell_12), new Object[] { "WPW", "BBB", "WPW", 'W', ModItems.wire_red_copper, 'P', "plateCopper", 'B', ItemBattery.getEmptyBattery(ModItems.battery_advanced_cell_4) })); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_lithium_cell_6), new Object[] { "WPW", "BWB", "WPW", 'W', ModItems.wire_gold, 'P', "plateTitanium", 'B', ItemBattery.getEmptyBattery(ModItems.battery_lithium_cell_3) })); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_schrabidium_cell_4), new Object[] { "WPW", "BWB", "WPW", 'W', ModItems.wire_schrabidium, 'P', "plateSchrabidium", 'B', ItemBattery.getEmptyBattery(ModItems.battery_schrabidium_cell_2) })); - GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_6), new Object[] { "BBW", "BBP", "BBW", 'W', ModItems.wire_magnetized_tungsten, 'P', "plateDineutronium", 'B', ItemBattery.getEmptyBattery(ModItems.battery_spark) })); - GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_25), new Object[] { " WW", "PCC", "BCC", 'W', ModItems.wire_magnetized_tungsten, 'P', "plateDineutronium", 'B', ItemBattery.getEmptyBattery(ModItems.battery_spark), 'C', ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_6) })); - GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_100), new Object[] { "W W", "BPB", "BPB", 'W', ModItems.wire_magnetized_tungsten, 'P', "plateDineutronium", 'B', ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_25) })); + GameRegistry.addRecipe(ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_6), new Object[] { "BBW", "BBP", "BBW", 'W', ModItems.wire_magnetized_tungsten, 'P', ModItems.plate_dineutronium, 'B', ItemBattery.getEmptyBattery(ModItems.battery_spark) }); + GameRegistry.addRecipe(ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_25), new Object[] { " WW", "PCC", "BCC", 'W', ModItems.wire_magnetized_tungsten, 'P', ModItems.plate_dineutronium, 'B', ItemBattery.getEmptyBattery(ModItems.battery_spark), 'C', ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_6) }); + GameRegistry.addRecipe(ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_100), new Object[] { "W W", "BPB", "BPB", 'W', ModItems.wire_magnetized_tungsten, 'P', ModItems.plate_dineutronium, 'B', ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_25) }); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_1000), new Object[] { "CCC", "CSC", "CCC", 'S', ModItems.singularity_spark, 'C', ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_100) })); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_2500), new Object[] { "CVC", "PSP", "CVC", 'S', ModItems.singularity_spark, 'C', ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_100), 'V', ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_1000), 'P', ModItems.plate_dineutronium })); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_10000), new Object[] { "PVP", "VSV", "PVP", 'S', ModItems.singularity_spark, 'V', ItemBattery.getEmptyBattery(ModItems.battery_spark_cell_2500), 'P', ModItems.plate_dineutronium })); @@ -1331,6 +1128,10 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.security_plate, 1), new Object[] { "KWK", "IKI", "WKW", 'K', ModItems.plate_kevlar, 'I', ModItems.ingot_polymer, 'W', new ItemStack(Blocks.wool, 1, OreDictionary.WILDCARD_VALUE) }); GameRegistry.addRecipe(new ItemStack(ModItems.security_legs, 1), new Object[] { "IWI", "K K", "W W", 'K', ModItems.plate_kevlar, 'I', ModItems.ingot_polymer, 'W', new ItemStack(Blocks.wool, 1, OreDictionary.WILDCARD_VALUE) }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.security_boots, 1), new Object[] { "P P", "I I", 'P', "plateSteel", 'I', ModItems.plate_polymer })); + GameRegistry.addRecipe(new ItemStack(ModItems.cobalt_helmet, 1), new Object[] { "EEE", "E E", 'E', ModItems.ingot_cobalt }); + GameRegistry.addRecipe(new ItemStack(ModItems.cobalt_plate, 1), new Object[] { "E E", "EEE", "EEE", 'E', ModItems.ingot_cobalt }); + GameRegistry.addRecipe(new ItemStack(ModItems.cobalt_legs, 1), new Object[] { "EEE", "E E", "E E", 'E', ModItems.ingot_cobalt }); + GameRegistry.addRecipe(new ItemStack(ModItems.cobalt_boots, 1), new Object[] { "E E", "E E", 'E', ModItems.ingot_cobalt }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.jetpack_boost, 1), new Object[] { "PTP", "SLS", "W W", 'P', "plateSteel", 'T', ModItems.tank_steel, 'S', ModItems.pipes_steel, 'L', Items.leather, 'W', ModItems.thruster_small })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.jetpack_fly, 1), new Object[] { "PTP", "SLS", "W W", 'P', "plateSteel", 'T', ModItems.cap_aluminium, 'S', ModItems.pipes_steel, 'L', ModItems.jetpack_boost, 'W', ModItems.thruster_small })); @@ -1343,11 +1144,6 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.wiring_red_copper, 1), new Object[] { "PPP", "PIP", "PPP", 'P', "plateSteel", 'I', "ingotSteel" })); - //ItemStack multitool = new ItemStack(ModItems.multitool_dig, 1); - //multitool.addEnchantment(Enchantment.looting, 3); - //multitool.addEnchantment(Enchantment.fortune, 3); - //GameRegistry.addShapedRecipe((multitool), new Object[] { "R#V", "W+U", "A@D", 'R', ModItems.rod_reiium, 'W', ModItems.rod_weidanium, 'A', ModItems.rod_australium, 'V', ModItems.rod_verticium, 'U', ModItems.rod_unobtainium, 'D', ModItems.rod_daffergon, '#', ModBlocks.steel_scaffold, '+', ModItems.circuit_gold, '@', ModItems.ducttape }); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.tank_waste, 1), new Object[] { "PTP", "PTP", "PTP", 'T', ModItems.tank_steel, 'P', "plateSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hazmat_helmet, 1), new Object[] { "EEE", "EIE", "FPF", 'E', ModItems.hazmat_cloth, 'I', "paneGlass", 'P', "plateSteel", 'F', ModItems.filter_coal })); @@ -1374,10 +1170,6 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.paa_legs, 1), new Object[] { "EEE", "N N", "E E", 'E', ModItems.plate_paa, 'N', "plateDenseLead" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.paa_boots, 1), new Object[] { "E E", "N N", 'E', ModItems.plate_paa, 'N', "plateDenseLead" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.australium_iii, 1), new Object[] { "WIW", "PAP", " W ", 'W', ModItems.wire_copper, 'I', "ingotSteel", 'A', ModItems.ingot_australium, 'P', "plateSteel" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.australium_iv, 1), new Object[] { "WCW", "PAP", "SWS", 'W', ModItems.wire_red_copper, 'C', ModItems.circuit_red_copper, 'P', "plateTitanium", 'A', ModItems.rod_australium, 'S', ModItems.syringe_metal_empty })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.australium_v, 1), new Object[] { "SCS", "PAP", "ESE", 'S', ModItems.syringe_metal_empty, 'C', ModItems.circuit_gold, 'P', "plateAdvanced", 'A', ModItems.nugget_australium, 'E', ModItems.powder_power })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.goggles, 1), new Object[] { "P P", "GPG", 'G', "paneGlass", 'P', "plateSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gas_mask, 1), new Object[] { "PPP", "GPG", " F ", 'G', "paneGlass", 'P', "plateSteel", 'F', ModItems.gas_mask_filter })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gas_mask_m65, 1), new Object[] { "PPP", "GPG", " F ", 'G', "paneGlass", 'P', ModItems.plate_polymer, 'F', ModItems.gas_mask_filter })); @@ -1389,13 +1181,6 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.cape_radiation, 1), new Object[] { "W W", "WIW", "WDW", 'W', new ItemStack(Item.getItemFromBlock(Blocks.wool), 1, 11), 'D', new ItemStack(Items.dye, 1, 11), 'I', ModItems.nuclear_waste }); GameRegistry.addRecipe(new ItemStack(ModItems.cape_gasmask, 1), new Object[] { "W W", "WIW", "WDW", 'W', new ItemStack(Item.getItemFromBlock(Blocks.wool), 1, 4), 'D', new ItemStack(Items.dye, 1, 0), 'I', ModItems.gas_mask }); GameRegistry.addRecipe(new ItemStack(ModItems.cape_schrabidium, 1), new Object[] { "W W", "WIW", "WDW", 'W', ModItems.ingot_schrabidium, 'D', new ItemStack(Items.dye, 1, 0), 'I', ModItems.circuit_red_copper }); - //GameRegistry.addRecipe(new ItemStack(ModItems.cape_hbm, 1), new Object[] { "W W", "WIW", "WDW", 'W', new ItemStack(Item.getItemFromBlock(Blocks.wool), 1, 15), 'D', ModItems.ingot_neptunium, 'I', ModItems.ingot_euphemium }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.cape_dafnik, 1), new Object[] { "W W", "WIW", "WDW", 'W', new ItemStack(Item.getItemFromBlock(Blocks.wool), 1, 1), 'D', new ItemStack(Items.dye, 1, 0), 'I', "ingotSteel" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.cape_lpkukin, 1), new Object[] { "W W", "WIW", "WDW", 'W', new ItemStack(Item.getItemFromBlock(Blocks.wool), 1, 13), 'D', new ItemStack(Items.dye, 1, 8), 'I', "plateSteel" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.cape_codered_, 1), new Object[] { "W W", "WIW", "WDW", 'W', new ItemStack(Item.getItemFromBlock(Blocks.wool), 1, 6), 'D', new ItemStack(Items.dye, 1, 5), 'I', "ingotAustralium" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.cape_vertice, 1), new Object[] { "W W", "WIW", "WDW", 'W', new ItemStack(Item.getItemFromBlock(Blocks.wool), 1, 13), 'D', new ItemStack(Items.dye, 1, 8), 'I', "ingotVerticium" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.cape_ayy, 1), new Object[] { "W W", "WIW", "WDW", 'W', new ItemStack(Item.getItemFromBlock(Blocks.wool), 1, 15), 'D', new ItemStack(Items.dye, 1, 8), 'I', "ingotReiium" })); - //GameRegistry.addRecipe(new ItemStack(ModItems.cape_nostalgia, 1), new Object[] { "W W", "WIW", "WDW", 'W', new ItemStack(Item.getItemFromBlock(Blocks.wool), 1, 15), 'D', new ItemStack(Items.dye, 1, 6), 'I', ModItems.flame_pony }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.igniter, 1), new Object[] { " W", "SC", "CE", 'S', "plateSteel", 'W', ModItems.wire_schrabidium, 'C', ModItems.circuit_schrabidium, 'E', ModItems.ingot_euphemium })); GameRegistry.addRecipe(new ItemStack(ModItems.euphemium_helmet, 1), new Object[] { "EEE", "E E", 'E', ModItems.plate_euphemium }); @@ -1423,28 +1208,17 @@ public class CraftingManager { GameRegistry.addRecipe(new ItemStack(ModItems.pin, 1), new Object[] { "W ", " W", " W", 'W', ModItems.wire_copper }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.padlock_rusty, 1), new Object[] { "I", "B", "I", 'I', "ingotIron", 'B', ModItems.bolt_tungsten })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.padlock, 1), new Object[] { " P ", "PBP", "PPP", 'P', "plateSteel", 'B', ModItems.bolt_tungsten })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.padlock_reinforced, 1), new Object[] { " P ", "PBP", "PDP", 'P', "plateAdvanced", 'D', "plateDesh", 'B', ModItems.bolt_dura_steel })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.padlock_reinforced, 1), new Object[] { " P ", "PBP", "PDP", 'P', "plateAdvanced", 'D', ModItems.plate_desh, 'B', ModItems.bolt_dura_steel })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.padlock_unbreakable, 1), new Object[] { " P ", "PBP", "PDP", 'P', "plateSaturnite", 'D', "gemDiamond", 'B', ModItems.bolt_dura_steel })); - //GameRegistry.addRecipe(new ItemStack(ModItems.schrabidium_hammer, 1), new Object[] { "BBB", "BBB", " S ", 'B', Item.getItemFromBlock(ModBlocks.block_schrabidium), 'S', Items.stick }); GameRegistry.addRecipe(new ItemStack(ModItems.euphemium_stopper, 1), new Object[] { "I", "S", "S", 'I', ModItems.ingot_euphemium, 'S', Items.stick }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.matchstick, 16), new Object[] { "I", "S", 'I', "sulfur", 'S', Items.stick })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.matchstick, 16), new Object[] { "I", "S", 'I', "dustSulfur", 'S', Items.stick })); + GameRegistry.addRecipe(new ItemStack(ModItems.matchstick, 24), new Object[] { "I", "S", 'I', ModItems.powder_fire, 'S', Items.stick }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.crowbar, 1), new Object[] { "II", " I", " I", 'I', "ingotSteel" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_power, 5), new Object[] { "dustRedstone", "dustGlowstone", "dustDiamond", "dustNeptunium", "dustMagnetizedTungsten" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.ballistite, 3), new Object[] { Items.gunpowder, "dustSalpeter", Items.sugar })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Items.coal, 1), new Object[] { "#", '#', "dustCoal" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Items.quartz, 1), new Object[] { "#", '#', "dustQuartz" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Items.quartz, 1), new Object[] { "#", '#', "dustNetherQuartz" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Items.dye, 1, 4), new Object[] { "#", '#', "dustLapis" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Items.diamond, 1), new Object[] { "#", '#', "dustDiamond" })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Items.emerald, 1), new Object[] { "#", '#', "dustEmerald" })); - - //if(MainRegistry.enableNITAN) { - //GameRegistry.addShapelessRecipe(new ItemStack(ModItems.canister_NITAN, 1), new Object[] { ModItems.canister_empty, ModItems.canister_napalm, ModItems.powder_neptunium, ModItems.powder_iodine, ModItems.powder_thorium, ModItems.powder_astatine, ModItems.powder_neodymium, ModItems.powder_caesium }); - //GameRegistry.addShapelessRecipe(new ItemStack(ModItems.canister_NITAN, 1), new Object[] { ModItems.canister_empty, ModItems.canister_napalm, ModItems.powder_strontium, ModItems.powder_cobalt, ModItems.powder_bromine, ModItems.powder_tennessine, ModItems.powder_niobium, ModItems.powder_cerium }); - //} GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_nitan_mix, 6), new Object[] { "dustNeptunium", "dustIodine", "dustThorium", "dustAstatine", "dustNeodymium", "dustCaesium" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_nitan_mix, 6), new Object[] { "dustStrontium", "dustCobalt", "dustBromine", "dustTennessine", "dustNiobium", "dustCerium" })); @@ -1469,7 +1243,6 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_dura_steel, 2), new Object[] { "dustSteel", ModItems.powder_cobalt })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_dura_steel, 4), new Object[] { "dustIron", "dustCoal", "dustTungsten", "dustTungsten" })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_dura_steel, 4), new Object[] { "dustIron", "dustCoal", ModItems.powder_cobalt, ModItems.powder_cobalt })); - //GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.powder_polymer, 2), new Object[] { "dustCoal", "dustSalpeter" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.saw, 1), new Object[] { "IIL", "PP ", 'P', "plateSteel", 'I', "ingotSteel", 'L', Items.leather })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.bat, 1), new Object[] { "P", "P", "S", 'S', "plateSteel", 'P', "plankWood" })); @@ -1480,8 +1253,6 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.bottle_opener, 1), new Object[] { "S", "P", 'S', "plateSteel", 'P', "plankWood" })); - //GameRegistry.addRecipe(new ItemStack(ModItems.chopper, 1), new Object[] { "BBB", "HTF", "GWW", 'B', ModItems.chopper_blades, 'H', ModItems.chopper_head, 'T', ModItems.chopper_torso, 'F', ModItems.chopper_tail, 'G', ModItems.chopper_gun, 'W', ModItems.chopper_wing }); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.polaroid, 1), new Object[] { " C ", "RPY", " B ", 'B', "dustLapis", 'C', "dustCoal", 'R', "dustAdvanced", 'Y', "dustGold", 'P', Items.paper })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.ullapool_caber, 1), new Object[] { "ITI", " S ", " S ", 'I', "plateIron", 'T', Blocks.tnt, 'S', Items.stick })); @@ -1494,16 +1265,7 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.fluid_duct, 8), new Object[] { "SAS", " ", "SAS", 'S', "plateSteel", 'A', "plateAluminum" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_assembler, 1), new Object[] { "WWW", "MCM", "ISI", 'W', "paneGlass", 'M', ModItems.motor, 'C', ModItems.circuit_aluminium, 'I', "blockCopper", 'S', "blockSteel" })); - //GameRegistry.addRecipe(new ItemStack(ModBlocks.machine_chemplant, 1), new Object[] { "HTT", "HPP", "DCD", 'H', ModItems.hull_big_steel, 'T', ModItems.tank_steel, 'P', Blocks.piston, 'D', ModBlocks.fluid_duct, 'C', ModItems.circuit_red_copper }); - //GameRegistry.addRecipe(new ItemStack(ModBlocks.machine_fluidtank, 1), new Object[] { "HHH", "HHH", "D D", 'H', ModItems.hull_big_steel, 'D', ModBlocks.fluid_duct }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_pumpjack, 1), new Object[] { "BBB", "PSM", "PST", 'B', "blockSteel", 'P', ModItems.pipes_steel, 'S', ModBlocks.steel_scaffold, 'M', ModItems.motor, 'T', ModItems.tank_steel })); - //GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_drill), 1), new Object[] { "MPM", "GPG", "GDG", 'P', ModItems.ingot_dura_steel, 'M', ModItems.motor, 'G', ModBlocks.steel_scaffold, 'D', ModItems.drill_titanium }); GameRegistry.addRecipe(new ItemStack(ModItems.template_folder, 1), new Object[] { "LPL", "BPB", "LPL", 'P', Items.paper, 'L', new ItemStack(Items.dye, 1, 4), 'B', new ItemStack(Items.dye, 1, 15) }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.turret_light, 1), new Object[] { "PPR", " I ", "BCB", 'P', "plateSteel", 'R', Items.redstone, 'I', "ingotSteel", 'B', "blockSteel", 'C', ModItems.circuit_aluminium })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.turret_heavy, 1), new Object[] { "IIR", " I ", "BCB", 'P', "plateSteel", 'R', Items.redstone, 'I', "ingotSteel", 'B', "blockSteel", 'C', ModItems.circuit_aluminium })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.turret_rocket, 1), new Object[] { "BBR", " I ", "BCB", 'P', "plateSteel", 'R', Items.redstone, 'I', "ingotSteel", 'B', "blockSteel", 'C', ModItems.circuit_aluminium })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.turret_flamer, 1), new Object[] { "NIR", " I ", "BCB", 'P', "plateSteel", 'R', Items.redstone, 'I', "ingotSteel", 'B', "blockSteel", 'C', ModItems.circuit_aluminium, 'N', ModItems.pipes_steel })); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.turret_tau, 1), new Object[] { "ADR", " I ", "BCB", 'P', "plateSteel", 'R', Items.redstone, 'I', "ingotSteel", 'B', "blockSteel", 'C', ModItems.circuit_aluminium, 'A', ModItems.coil_advanced_alloy, 'D', ModItems.coil_advanced_torus })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.turret_control, 1), new Object[] { "R12", "PPI", " I", 'R', Items.redstone, '1', ModItems.circuit_aluminium, '2', ModItems.circuit_red_copper, 'P', "plateSteel", 'I', "ingotSteel" })); GameRegistry.addRecipe(new ItemStack(ModItems.pellet_antimatter, 1), new Object[] { "###", "###", "###", '#', ModItems.cell_antimatter }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.fluid_tank_empty, 8), new Object[] { "121", "1 1", "121", '1', "plateAluminum", '2', "plateIron" })); @@ -1519,18 +1281,15 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.dynosphere_euphemium), new Object[] { "RPR", "PBP", "RPR", 'R', ModItems.powder_nitan_mix, 'P', "ingotEuphemium", 'B', ModItems.dynosphere_schrabidium_charged })); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.dynosphere_dineutronium), new Object[] { "RPR", "PBP", "RPR", 'R', ModItems.powder_spark_mix, 'P', "ingotDineutronium", 'B', ModItems.dynosphere_euphemium_charged })); - //Temporary Crappy Recipes + //not so Temporary Crappy Recipes GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_pip, 1), new Object[] { " G ", "SSP", " TI", 'G', "paneGlass", 'S', "plateSteel", 'P', ModItems.mechanism_revolver_2, 'T', ModItems.wire_tungsten, 'I', "ingotPolymer" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_nopip, 1), new Object[] { "SSP", " TI", 'S', "plateSteel", 'P', ModItems.mechanism_revolver_2, 'T', ModItems.wire_tungsten, 'I', "ingotPolymer" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_blackjack, 1), new Object[] { "SSP", " TI", 'S', "plateSteel", 'P', ModItems.mechanism_revolver_2, 'T', ModItems.wire_tungsten, 'I', "plankWood" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_silver, 1), new Object[] { "SSP", " TI", 'S', "plateAluminum", 'P', ModItems.mechanism_revolver_2, 'T', ModItems.wire_tungsten, 'I', "plankWood" })); GameRegistry.addRecipe(new ItemStack(ModItems.gun_revolver_red, 1), new Object[] { "R ", " B", 'R', ModItems.key_red, 'B', ModItems.gun_revolver_blackjack }); - //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_revolver_pip_ammo, 1), new Object[] { "S", "G", "C", 'S', "plateSteel", 'G', Items.gunpowder, 'C', "plateCopper" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_dineutronium, 4), new Object[] { "PIP", "IDI", "PIP", 'P', ModItems.powder_spark_mix, 'I', "ingotDineutronium", 'D', "ingotDesh" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.plate_desh, 4), new Object[] { "PIP", "IDI", "PIP", 'P', ModItems.powder_polymer, 'I', "ingotDesh", 'D', "ingotDuraSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.piston_selenium, 1), new Object[] { "SSS", "STS", " D ", 'S', "plateSteel", 'T', "ingotTungsten", 'D', ModItems.bolt_dura_steel })); - //GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.meteor_remote), new Object[] { "nuggetSchrabidium", ModItems.fragment_meteorite, ModItems.crate_caller })); - //GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.crate_caller), new Object[] { "nuggetSchrabidium", ModItems.crowbar, ModItems.detonator })); GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.catalyst_clay), new Object[] { "dustIron", Items.clay_ball })); GameRegistry.addRecipe(new ItemStack(ModItems.singularity_spark, 1), new Object[] { "XAX", "BCB", "XAX", 'X', ModItems.plate_dineutronium, 'A', ModItems.singularity_counter_resonant, 'B', ModItems.singularity_super_heated, 'C', ModItems.black_hole }); GameRegistry.addRecipe(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 }); @@ -1564,11 +1323,11 @@ public class CraftingManager { GameRegistry.addShapelessRecipe(new ItemStack(ModBlocks.geiger), new Object[] { ModItems.geiger_counter }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.sat_interface), new Object[] { "ISI", "PCP", "PAP", 'I', "ingotSteel", 'S', ModItems.ingot_starmetal, 'P', ModItems.plate_polymer, 'C', ModItems.sat_chip, 'A', ModItems.circuit_gold })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.sat_coord), new Object[] { "SII", "SCA", "SPP", 'I', "ingotSteel", 'S', ModItems.ingot_starmetal, 'P', ModItems.plate_polymer, 'C', ModItems.sat_chip, 'A', ModItems.circuit_red_copper })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_spp_bottom), new Object[] { "MDM", "LCL", "LWL", 'M', "ingotMagnetizedTungsten", 'D', "plateDesh", 'L', "plateLead", 'C', ModItems.circuit_gold, 'W', ModItems.coil_magnetized_tungsten })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_spp_top), new Object[] { "LWL", "LCL", "MDM", 'M', "ingotMagnetizedTungsten", 'D', "plateDesh", 'L', "plateLead", 'C', ModItems.circuit_gold, 'W', ModItems.coil_magnetized_tungsten })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_spp_bottom), new Object[] { "MDM", "LCL", "LWL", 'M', "ingotMagnetizedTungsten", 'D', ModItems.plate_desh, 'L', "plateLead", 'C', ModItems.circuit_gold, 'W', ModItems.coil_magnetized_tungsten })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_spp_top), new Object[] { "LWL", "LCL", "MDM", 'M', "ingotMagnetizedTungsten", 'D', ModItems.plate_desh, 'L', "plateLead", 'C', ModItems.circuit_gold, 'W', ModItems.coil_magnetized_tungsten })); GameRegistry.addShapelessRecipe(new ItemStack(ModBlocks.machine_spp_bottom), new Object[] { ModBlocks.machine_spp_top }); GameRegistry.addShapelessRecipe(new ItemStack(ModBlocks.machine_spp_top), new Object[] { ModBlocks.machine_spp_bottom }); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_b93), new Object[] { "PCE", "SEB", "PCE", 'P', "plateDineutronium", 'C', ModItems.weaponized_starblaster_cell, 'E', ModItems.component_emitter, 'B', ModItems.gun_b92, 'S', ModItems.singularity_spark })); + GameRegistry.addRecipe(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 }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_transformer), new Object[] { "SDS", "MCM", "MCM", 'S', "ingotIron", 'D', "ingotRedstoneAlloy", 'M',ModItems.coil_advanced_alloy, 'C', ModItems.circuit_copper })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_transformer_20), new Object[] { "SDS", "MCM", "MCM", 'S', "ingotIron", 'D', "ingotRedstoneAlloy", 'M', ModItems.coil_copper, 'C', ModItems.circuit_copper })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_transformer_dnt), new Object[] { "SDS", "MCM", "MCM", 'S', ModItems.ingot_starmetal, 'D', "ingotDesh", 'M', ModBlocks.fwatz_conductor, 'C', ModItems.circuit_targeting_tier6 })); @@ -1600,7 +1359,7 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.analyzer, 1), new Object[] { " S ", "SGS", " S ", 'S', "plateSteel", 'G', "paneGlassColorless" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.custom_fall, 1), new Object[] { "IIP", "CHW", "IIP", 'I', ModItems.plate_polymer, 'P', "plateSaturnite", 'C', ModItems.circuit_red_copper, 'H', ModItems.hull_small_steel, 'W', ModItems.coil_copper })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.reactor_sensor, 1), new Object[] { "WPW", "CMC", "PPP", 'W', ModItems.wire_tungsten, 'P', "plateLead", 'C', ModItems.circuit_targeting_tier3, 'M', ModItems.magnetron })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_controller, 1), new Object[] { "PGP", "ICI", "PRP", 'P', "plateDesh", 'G', "paneGlass", 'I', "ingotPolymer", 'R', "blockRedstone", 'C', ModItems.circuit_targeting_tier4 })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.machine_controller, 1), new Object[] { "PGP", "ICI", "PRP", 'P', ModItems.plate_desh, 'G', "paneGlass", 'I', "ingotPolymer", 'R', "blockRedstone", 'C', ModItems.circuit_targeting_tier4 })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_minigun, 1), new Object[] { "PIB", "PCM", "PIB", 'P', ModItems.pipes_steel, 'B', "blockSteel", 'I', "ingotPolymer", 'C', ModItems.mechanism_rifle_2, 'M', ModItems.motor })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.gun_avenger, 1), new Object[] { "PIB", "PCM", "PIB", 'P', ModItems.pipes_steel, 'B', "blockBeryllium", 'I', "ingotDesh", 'C', ModItems.mechanism_rifle_2, 'M', ModItems.motor })); GameRegistry.addRecipe(new ItemStack(ModItems.gun_lacunae, 1), new Object[] { "TIT", "ILI", "PRP", 'T', ModItems.syringe_taint, 'I', ModItems.ingot_starmetal, 'L', ModItems.gun_minigun, 'P', ModItems.pellet_rtg, 'R', ModBlocks.machine_rtg_grey }); @@ -1660,20 +1419,6 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.struct_launcher, 1), new Object[] { "PPP", "SDS", "CCC", 'P', "plateSteel", 'S', ModBlocks.steel_scaffold, 'D', ModItems.pipes_steel, 'C', ModBlocks.concrete_smooth })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.struct_launcher, 1), new Object[] { "PPP", "SDS", "CCC", 'P', "plateSteel", 'S', ModBlocks.steel_scaffold, 'D', ModItems.pipes_steel, 'C', ModBlocks.concrete })); GameRegistry.addRecipe(new ItemStack(ModBlocks.struct_scaffold, 1), new Object[] { "SSS", "DCD", "SSS", 'S', ModBlocks.steel_scaffold, 'D', ModBlocks.fluid_duct, 'C', ModBlocks.red_cable }); - - /*GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_10_kerosene, 1), new Object[] { "PSM", "TPT", "T T", 'P', ModItems.pipes_steel, 'S', ModBlocks.steel_scaffold, 'M', ModItems.motor, 'T', "ingotTungsten" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_10_solid, 1), new Object[] { "PSM", "DPD", "T T", 'P', ModItems.pipes_steel, 'S', ModBlocks.steel_scaffold, 'M', ModItems.motor, 'T', "ingotSteel", 'D', "plateTitanium" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_10_xenon, 1), new Object[] { "PSM", "DPD", "T T", 'P', ModItems.pipes_steel, 'S', ModBlocks.steel_scaffold, 'M', ModItems.motor, 'T', "ingotSteel", 'D', ModItems.arc_electrode })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_15_kerosene_dual, 1), new Object[] { "SPS", "IPI", "T T", 'S', ModBlocks.steel_scaffold, 'P', ModItems.pipes_steel, 'I', "ingotSteel", 'T', ModItems.mp_thruster_10_kerosene })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_15_kerosene_triple, 1), new Object[] { "SPS", "IPI", "TTT", 'S', ModBlocks.steel_scaffold, 'P', ModItems.pipes_steel, 'I', "ingotSteel", 'T', ModItems.mp_thruster_10_kerosene })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_15_kerosene, 1), new Object[] { "SMS", "IPI", "B B", 'S', ModBlocks.steel_scaffold, 'M', ModItems.motor, 'I', "ingotTungsten", 'P', ModItems.pipes_steel, 'B', "blockTungsten" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_15_solid, 1), new Object[] { "SMS", "IPI", "B B", 'S', ModBlocks.steel_scaffold, 'M', ModItems.motor, 'I', "plateTitanium", 'P', ModItems.pipes_steel, 'B', "blockSteel" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_15_solid_hexdecuple, 1), new Object[] { "SMS", "PBP", "BPB", 'S', ModBlocks.steel_scaffold, 'M', ModItems.motor, 'P', ModItems.pipes_steel, 'B', "blockSteel" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_15_hydrogen, 1), new Object[] { "SMS", "IPI", "B B", 'S', ModBlocks.steel_scaffold, 'M', ModItems.motor, 'I', "ingotTungsten", 'P', ModItems.tank_steel, 'B', "blockTungsten" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_15_hydrogen_dual, 1), new Object[] { "SPS", "IDI", "T T", 'S', ModBlocks.steel_scaffold, 'P', ModItems.pipes_steel, 'D', ModItems.tank_steel, 'I', "ingotSteel", 'T', ModItems.mp_thruster_10_kerosene })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_15_balefire_short, 1), new Object[] { "SMS", "PTP", "I I", 'S', ModBlocks.steel_scaffold, 'M', ModItems.motor, 'P', ModItems.board_copper, 'T', ModItems.tank_steel, 'I', "ingotTungsten" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_15_balefire, 1), new Object[] { "SMS", "PTP", "I I", 'S', ModBlocks.steel_scaffold, 'M', ModItems.motor, 'P', ModItems.board_copper, 'T', ModBlocks.reactor_element, 'I', "ingotTungsten" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_thruster_15_balefire_large, 1), new Object[] { "SMS", "PTP", "I I", 'S', ModBlocks.steel_scaffold, 'M', ModItems.motor, 'P', "blockDesh", 'T', ModBlocks.reactor_element, 'I', ModBlocks.brick_compound }));*/ GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_stability_10_flat, 1), new Object[] { "PSP", "P P", 'P', "plateSteel", 'S', ModBlocks.steel_scaffold })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_stability_10_cruise, 1), new Object[] { "ASA", " S ", "PSP", 'A', "plateTitanium", 'P', "plateSteel", 'S', ModBlocks.steel_scaffold })); @@ -1681,31 +1426,6 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_stability_15_flat, 1), new Object[] { "ASA", "PSP", 'A', "plateAluminum", 'P', "plateSteel", 'S', ModBlocks.steel_scaffold })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_stability_15_thin, 1), new Object[] { "A A", "PSP", "PSP", 'A', "plateAluminum", 'P', "plateSteel", 'S', ModBlocks.steel_scaffold })); - /*GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_fuselage_10_kerosene, 1), new Object[] { "STS", "ATA", "STS", 'S', "plateSteel", 'T', ModItems.tank_steel, 'A', "plateTitanium" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_fuselage_10_solid, 1), new Object[] { "STS", "ATA", "STS", 'S', "plateAluminum", 'T', ModItems.tank_steel, 'A', "plateCopper" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_fuselage_10_xenon, 1), new Object[] { "STS", "ATA", "STS", 'S', "plateSteel", 'T', ModItems.tank_steel, 'A', "plateAdvanced" })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_fuselage_10_long_kerosene, 1), new Object[] { "F ", " F", 'F', ModItems.mp_fuselage_10_kerosene })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_fuselage_10_long_solid, 1), new Object[] { "F ", " F", 'F', ModItems.mp_fuselage_10_solid })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_fuselage_10_15_kerosene, 1), new Object[] { "P ", " LF", " FS", 'P', "plateSteel", 'L', ModItems.mp_fuselage_10_long_kerosene, 'F', ModItems.mp_fuselage_10_kerosene, 'S', ModBlocks.steel_scaffold })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_fuselage_10_15_solid, 1), new Object[] { "P ", " LF", " FS", 'P', "plateAluminum", 'L', ModItems.mp_fuselage_10_long_solid, 'F', ModItems.mp_fuselage_10_solid, 'S', ModBlocks.steel_scaffold })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_fuselage_10_15_hydrogen, 1), new Object[] { "PP ", "PLF", " FS", 'P', "plateTitanium", 'L', ModItems.mp_fuselage_10_long_kerosene, 'F', ModItems.mp_fuselage_10_kerosene, 'S', ModBlocks.steel_scaffold })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_fuselage_10_15_balefire, 1), new Object[] { "PP ", "PLF", " FS", 'P', ModItems.plate_saturnite, 'L', ModItems.mp_fuselage_10_long_solid, 'F', ModItems.mp_fuselage_10_solid, 'S', ModBlocks.steel_scaffold })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_fuselage_15_kerosene, 1), new Object[] { "SP ", "PFP", " PL", 'S', ModBlocks.steel_scaffold, 'P', "plateSteel", 'F', ModItems.mp_fuselage_10_long_kerosene, 'L', ModItems.mp_fuselage_10_15_kerosene })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_fuselage_15_solid, 1), new Object[] { "SP ", "PFP", " PL", 'S', ModBlocks.steel_scaffold, 'P', "plateAluminum", 'F', ModItems.mp_fuselage_10_long_solid, 'L', ModItems.mp_fuselage_10_15_solid })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_fuselage_15_hydrogen, 1), new Object[] { "SP ", "PFP", " PL", 'S', ModBlocks.steel_scaffold, 'P', "plateTitanium", 'F', ModItems.mp_fuselage_10_long_kerosene, 'L', ModItems.mp_fuselage_10_15_hydrogen })); - GameRegistry.addRecipe(new ItemStack(ModItems.mp_fuselage_15_balefire, 1), new Object[] { "SP ", "PFP", " PL", 'S', ModBlocks.steel_scaffold, 'P', ModItems.plate_saturnite, 'F', ModItems.mp_fuselage_10_long_solid, 'L', ModItems.mp_fuselage_10_15_balefire });*/ - - /*GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_warhead_10_he, 1), new Object[] { " P ", "PTP", "TST", 'P', "plateSteel", 'T', Blocks.tnt, 'S', ModBlocks.steel_scaffold })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_warhead_10_incendiary, 1), new Object[] { "PIP", "ITI", "TST", 'P', "plateTitanium", 'T', Blocks.tnt, 'S', ModBlocks.steel_scaffold, 'I', ModItems.powder_fire })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_warhead_10_buster, 1), new Object[] { "PPP", "DCD", "DSD", 'P', "plateTitanium", 'D', ModBlocks.det_cord, 'C', ModBlocks.det_charge, 'S', ModBlocks.steel_scaffold })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_warhead_10_nuclear, 1), new Object[] { " U ", "PTP", "PSP", 'U', "Pu239", 'P', "plateLead", 'T', Blocks.tnt, 'S', ModBlocks.steel_scaffold })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_warhead_10_nuclear_large, 1), new Object[] { "PUP", "TUT", "PSP", 'U', "Pu239", 'P', "plateLead", 'T', ModBlocks.det_charge, 'S', ModBlocks.steel_scaffold })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_warhead_10_taint, 1), new Object[] { "AEA", "PBP", "ASA", 'A', "plateAluminum", 'E', ModItems.powder_magic, 'P', "plateSteel", 'B', ModItems.bucket_mud, 'S', ModBlocks.steel_scaffold })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_warhead_15_he, 1), new Object[] { "PTP", "CWC", "STS", 'P', "plateSteel", 'T', Blocks.tnt, 'C', ModBlocks.det_charge, 'W', ModItems.mp_warhead_10_he, 'S', ModBlocks.steel_scaffold })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_warhead_15_incendiary, 1), new Object[] { "PTP", "CWC", "STS", 'P', "plateTitanium", 'T', ModItems.powder_fire, 'C', ModBlocks.det_charge, 'W', ModItems.mp_warhead_10_incendiary, 'S', ModBlocks.steel_scaffold })); - GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.mp_warhead_15_nuclear, 1), new Object[] { "PUP", "CUC", "SUS", 'P', ModItems.plate_saturnite, 'U', "Pu239", 'C', ModBlocks.det_charge, 'S', ModBlocks.steel_scaffold })); - GameRegistry.addRecipe(new ItemStack(ModItems.mp_warhead_15_n2, 1), new Object[] { "PCP", "CUC", "SCS", 'P', ModItems.plate_saturnite, 'U', ModItems.mp_warhead_15_he, 'C', ModItems.n2_charge, 'S', ModBlocks.steel_scaffold });*/ - GameRegistry.addRecipe(new ItemStack(ModItems.mp_thruster_15_balefire_large_rad, 1), new Object[] { "CCC", "CTC", "CCC", 'C', ModItems.board_copper, 'T', ModItems.mp_thruster_15_balefire_large }); GameRegistry.addRecipe(new ItemStack(ModItems.mp_fuselage_10_kerosene_insulation, 1), new Object[] { "CCC", "CTC", "CCC", 'C', ModItems.plate_polymer, 'T', ModItems.mp_fuselage_10_kerosene }); GameRegistry.addRecipe(new ItemStack(ModItems.mp_fuselage_10_long_kerosene_insulation, 1), new Object[] { "CCC", "CTC", "CCC", 'C', ModItems.plate_polymer, 'T', ModItems.mp_fuselage_10_long_kerosene }); @@ -1768,6 +1488,10 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.barrel_steel, 1), new Object[] { "IPI", "I I", "IPI", 'I', "plateSteel", 'P', "ingotSteel" })); GameRegistry.addRecipe(new ItemStack(ModBlocks.barrel_antimatter, 1), new Object[] { "IPI", "IPI", "IPI", 'I', ModItems.plate_saturnite, 'P', ModItems.coil_advanced_torus }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.tesla, 1), new Object[] { "CCC", " I ", "PTP", 'C', ModItems.coil_copper, 'I', "ingotIron", 'P', "ingotPolymer", 'T', ModBlocks.machine_transformer })); + GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.cladding_paint, 1), new Object[] { "dustLead", Items.clay_ball, Items.glass_bottle })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.cladding_rubber, 1), new Object[] { "RCR", "CDC", "RCR", 'R', ModItems.plate_polymer, 'C', "dustCoal", 'D', ModItems.ducttape })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.cladding_lead, 1), new Object[] { "DPD", "PRP", "DPD", 'R', ModItems.cladding_rubber, 'P', "plateLead", 'D', ModItems.ducttape })); + GameRegistry.addRecipe(new ItemStack(ModItems.cladding_desh, 1), new Object[] { "DPD", "PRP", "DPD", 'R', ModItems.cladding_lead, 'P', ModItems.plate_desh, 'D', ModItems.ducttape }); } @@ -1841,7 +1565,6 @@ public class CraftingManager { GameRegistry.addSmelting(ModItems.combine_scrap, new ItemStack(ModItems.ingot_combine_steel), 1.0F); GameRegistry.addSmelting(ModItems.tank_waste, new ItemStack(ModItems.tank_waste), 0.0F); - //GameRegistry.addSmelting(ModItems.canister_smear, new ItemStack(ModItems.canister_reoil), 1.0F); GameRegistry.addSmelting(Items.bone, new ItemStack(Items.slime_ball, 3), 0.0F); GameRegistry.addSmelting(new ItemStack(Items.dye, 1, 15), new ItemStack(Items.slime_ball, 1), 0.0F); diff --git a/com/hbm/main/MainRegistry.java b/com/hbm/main/MainRegistry.java index 9a4b8c7ae..b8de4872e 100644 --- a/com/hbm/main/MainRegistry.java +++ b/com/hbm/main/MainRegistry.java @@ -94,7 +94,7 @@ public class MainRegistry public static ToolMaterial enumToolMaterialTitanium = EnumHelper.addToolMaterial("TITANIUM", 3, 750, 9.0F, 2.5F, 15); public static ToolMaterial enumToolMaterialAlloy= EnumHelper.addToolMaterial("ALLOY", 3, 2000, 15.0F, 5.0F, 5); public static ToolMaterial enumToolMaterialCmb = EnumHelper.addToolMaterial("CMB", 3, 8500, 40.0F, 55F, 100); - public static ToolMaterial enumToolMaterialElec = EnumHelper.addToolMaterial("ELEC", 3, 4700, 30.0F, 12.0F, 2); + public static ToolMaterial enumToolMaterialElec = EnumHelper.addToolMaterial("ELEC", 3, 0, 30.0F, 12.0F, 2); public static ToolMaterial enumToolMaterialDesh = EnumHelper.addToolMaterial("DESH", 2, 0, 7.5F, 2.0F, 10); public static ToolMaterial enumToolMaterialSaw = EnumHelper.addToolMaterial("SAW", 2, 750, 2.0F, 3.5F, 25); @@ -1177,10 +1177,7 @@ public class MainRegistry OreDictionary.registerOre("plateAdvanced", ModItems.plate_advanced_alloy); OreDictionary.registerOre("plateSchrabidium", ModItems.plate_schrabidium); OreDictionary.registerOre("plateCMBSteel", ModItems.plate_combine_steel); - OreDictionary.registerOre("plateDesh", ModItems.plate_desh); OreDictionary.registerOre("plateSaturnite", ModItems.plate_saturnite); - OreDictionary.registerOre("plateEuphemium", ModItems.plate_euphemium); - OreDictionary.registerOre("plateDineutronium", ModItems.plate_dineutronium); OreDictionary.registerOre("dustIron", ModItems.powder_iron); OreDictionary.registerOre("dustGold", ModItems.powder_gold); OreDictionary.registerOre("dustUranium", ModItems.powder_uranium); @@ -1411,8 +1408,7 @@ public class MainRegistry FluidContainerRegistry.instance.registerContainer(new FluidContainer(new ItemStack(ModItems.cell_antimatter), new ItemStack(ModItems.cell_empty), FluidType.AMAT, 1000)); FluidContainerRegistry.instance.registerContainer(new FluidContainer(new ItemStack(ModItems.cell_anti_schrabidium), new ItemStack(ModItems.cell_empty), FluidType.ASCHRAB, 1000)); FluidContainerRegistry.instance.registerContainer(new FluidContainer(new ItemStack(ModItems.cell_sas3), new ItemStack(ModItems.cell_empty), FluidType.SAS3, 1000)); - - //FluidContainerRegistry.instance.registerContainer(new FluidContainer(new ItemStack(ModBlocks.ore_oil), new ItemStack(ModBlocks.ore_oil_empty), FluidType.OIL, 250)); + FluidContainerRegistry.instance.registerContainer(new FluidContainer(new ItemStack(ModItems.bottle_mercury), new ItemStack(Items.glass_bottle), FluidType.MERCURY, 1000)); FluidContainerRegistry.instance.registerContainer(new FluidContainer(new ItemStack(ModItems.tank_waste, 1, 1), new ItemStack(ModItems.tank_waste, 1, 0), FluidType.WATZ, 8000)); FluidContainerRegistry.instance.registerContainer(new FluidContainer(new ItemStack(ModItems.tank_waste, 1, 2), new ItemStack(ModItems.tank_waste, 1, 1), FluidType.WATZ, 8000)); @@ -1477,6 +1473,11 @@ public class MainRegistry HazmatRegistry.instance.registerHazmat(ModItems.titanium_plate, 0.12F); HazmatRegistry.instance.registerHazmat(ModItems.titanium_legs, 0.1F); HazmatRegistry.instance.registerHazmat(ModItems.titanium_boots, 0.03F); + + HazmatRegistry.instance.registerHazmat(ModItems.cobalt_helmet, 0.1F); + HazmatRegistry.instance.registerHazmat(ModItems.cobalt_plate, 0.2F); + HazmatRegistry.instance.registerHazmat(ModItems.cobalt_legs, 0.15F); + HazmatRegistry.instance.registerHazmat(ModItems.cobalt_boots, 0.05F); HazmatRegistry.instance.registerHazmat(Items.iron_helmet, 0.04F); HazmatRegistry.instance.registerHazmat(Items.iron_chestplate, 0.08F); diff --git a/com/hbm/main/ModEventHandler.java b/com/hbm/main/ModEventHandler.java index 7c8938d35..69f2ba076 100644 --- a/com/hbm/main/ModEventHandler.java +++ b/com/hbm/main/ModEventHandler.java @@ -11,14 +11,14 @@ import com.hbm.entity.missile.EntityMissileBaseAdvanced; import com.hbm.entity.mob.EntityNuclearCreeper; import com.hbm.entity.projectile.EntityBurningFOEQ; import com.hbm.entity.projectile.EntityMeteor; +import com.hbm.handler.ArmorUtil; import com.hbm.items.ModItems; -import com.hbm.items.gear.ArmorFSB; +import com.hbm.items.armor.ArmorFSB; import com.hbm.lib.Library; import com.hbm.lib.ModDamageSource; import com.hbm.lib.RefStrings; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.RadSurveyPacket; -import com.hbm.potion.HbmPotion; import com.hbm.saveddata.AuxSavedData; import com.hbm.saveddata.RadiationSavedData; @@ -201,8 +201,10 @@ public class ModEventHandler for(Object o : event.world.playerEntities) { - EntityPlayer player = (EntityPlayer)o; - PacketDispatcher.wrapper.sendTo(new RadSurveyPacket(player.getEntityData().getFloat("hfr_radiation")), (EntityPlayerMP) player); + if(o instanceof EntityPlayerMP) { + EntityPlayerMP player = (EntityPlayerMP)o; + PacketDispatcher.wrapper.sendTo(new RadSurveyPacket(player.getEntityData().getFloat("hfr_radiation")), player); + } } if(event.world.getTotalWorldTime() % 20 == 0) { @@ -227,18 +229,13 @@ public class ModEventHandler rad = MainRegistry.hellRad; if(rad > 0) { - //eData.increaseRad(entity, rad / 2); - - if(!entity.isPotionActive(HbmPotion.mutation)) - Library.applyRadData(entity, rad / 2); + Library.applyRadData(entity, rad / 2); } if(entity.worldObj.isRaining() && MainRegistry.cont > 0 && AuxSavedData.getThunder(entity.worldObj) > 0 && entity.worldObj.canBlockSeeTheSky(MathHelper.floor_double(entity.posX), MathHelper.floor_double(entity.posY), MathHelper.floor_double(entity.posZ))) { - if(!entity.isPotionActive(HbmPotion.mutation)) { - Library.applyRadData(entity, MainRegistry.cont * 0.005F); - } + Library.applyRadData(entity, MainRegistry.cont * 0.005F); } } @@ -293,6 +290,11 @@ public class ModEventHandler if(entity instanceof EntityPlayer) ((EntityPlayer)entity).triggerAchievement(MainRegistry.achRadDeath); } + + //.attackEntityFrom ensures the recentlyHit var is set to enable drops. + //if the attack is canceled, then nothing will drop. + //that's what you get for trying to cheat death + entity.setHealth(0); } else if(eRad >= 800) { if(event.world.rand.nextInt(300) == 0) @@ -360,7 +362,7 @@ public class ModEventHandler EntityLivingBase e = event.entityLiving; - if(e instanceof EntityPlayer && Library.checkArmor((EntityPlayer)e, ModItems.euphemium_helmet, ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots)) { + if(e instanceof EntityPlayer && ArmorUtil.checkArmor((EntityPlayer)e, ModItems.euphemium_helmet, ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots)) { e.worldObj.playSoundAtEntity(e, "random.break", 5F, 1.0F + e.getRNG().nextFloat() * 0.5F); event.setCanceled(true); } @@ -617,7 +619,7 @@ public class ModEventHandler EntityPlayerMP player = event.player; String message = event.message; - if(!player.getUniqueID().toString().equals(Library.Dr_Nostalgia) && message.startsWith("!")) { + if(player.getUniqueID().toString().equals(Library.Dr_Nostalgia) && message.startsWith("!")) { String m = message.substring(1, message.length()).toLowerCase(); @@ -642,6 +644,10 @@ public class ModEventHandler player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_kit_2, 16)); } + if("pew".equals(m)) { + player.inventory.addItemStackToInventory(new ItemStack(ModItems.gun_b92).setStackDisplayName("Meme Machine")); + } + if("tom".equals(m)) { player.inventory.addItemStackToInventory(new ItemStack(ModBlocks.soyuz_launcher)); player.inventory.addItemStackToInventory(new ItemStack(ModBlocks.machine_satlinker)); diff --git a/com/hbm/main/ModEventHandlerClient.java b/com/hbm/main/ModEventHandlerClient.java index c0dab6ad1..4dc5ed752 100644 --- a/com/hbm/main/ModEventHandlerClient.java +++ b/com/hbm/main/ModEventHandlerClient.java @@ -13,6 +13,7 @@ import com.hbm.interfaces.Spaghetti; import com.hbm.items.ModItems; import com.hbm.items.weapon.ItemGunBase; import com.hbm.lib.Library; +import com.hbm.lib.RefStrings; import com.hbm.packet.GunButtonPacket; import com.hbm.packet.PacketDispatcher; import com.hbm.render.util.RenderAccessoryUtility; @@ -34,11 +35,13 @@ import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.IIcon; import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.event.MouseEvent; import net.minecraftforge.client.event.RenderGameOverlayEvent; import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType; import net.minecraftforge.client.event.RenderPlayerEvent; +import net.minecraftforge.client.event.TextureStitchEvent; import net.minecraftforge.client.event.sound.PlaySoundEvent17; import net.minecraftforge.event.entity.player.ItemTooltipEvent; @@ -213,4 +216,13 @@ public class ModEventHandlerClient { if(rad > 0) list.add(EnumChatFormatting.YELLOW + "Radiation resistance: " + rad); } + + public static IIcon particleBase; + + @SubscribeEvent + public void onTextureStitch(TextureStitchEvent.Pre event) { + + if(event.map.getTextureType() == 0) + particleBase = event.map.registerIcon(RefStrings.MODID + ":particle/particle_base"); + } } diff --git a/com/hbm/main/ResourceManager.java b/com/hbm/main/ResourceManager.java index 75b530945..2267dbbaf 100644 --- a/com/hbm/main/ResourceManager.java +++ b/com/hbm/main/ResourceManager.java @@ -298,6 +298,7 @@ public class ResourceManager { public static final IModelCustom deagle = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/deagle.obj")); public static final IModelCustom shotty = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/supershotty.obj")); public static final IModelCustom ks23 = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/ks23.obj")); + public static final IModelCustom flamer = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/flamer.obj")); ////Texture Items @@ -311,6 +312,7 @@ public class ResourceManager { public static final ResourceLocation hk69_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/hk69.png"); public static final ResourceLocation deagle_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/deagle.png"); public static final ResourceLocation ks23_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/ks23.png"); + public static final ResourceLocation flamer_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/flamer.png"); diff --git a/com/hbm/packet/AuxButtonPacket.java b/com/hbm/packet/AuxButtonPacket.java index a324a5e78..9cd50de24 100644 --- a/com/hbm/packet/AuxButtonPacket.java +++ b/com/hbm/packet/AuxButtonPacket.java @@ -7,6 +7,7 @@ import com.hbm.tileentity.machine.TileEntityBarrel; import com.hbm.tileentity.machine.TileEntityCoreEmitter; import com.hbm.tileentity.machine.TileEntityCoreStabilizer; import com.hbm.tileentity.machine.TileEntityForceField; +import com.hbm.tileentity.machine.TileEntityMachineBattery; import com.hbm.tileentity.machine.TileEntityMachineMissileAssembly; import com.hbm.tileentity.machine.TileEntityMachineReactorLarge; import com.hbm.tileentity.machine.TileEntityMachineReactorSmall; @@ -235,6 +236,20 @@ public class AuxButtonPacket implements IMessage { barrel.markDirty(); } + if (te instanceof TileEntityMachineBattery) { + TileEntityMachineBattery bat = (TileEntityMachineBattery)te; + + if(m.id == 0) { + bat.redLow = (short) ((bat.redLow + 1) % 4); + bat.markDirty(); + } + + if(m.id == 1) { + bat.redHigh = (short) ((bat.redHigh + 1) % 4); + bat.markDirty(); + } + } + if (te instanceof TileEntitySoyuzLauncher) { TileEntitySoyuzLauncher launcher = (TileEntitySoyuzLauncher)te; diff --git a/com/hbm/packet/ItemFolderPacket.java b/com/hbm/packet/ItemFolderPacket.java index 0de223706..d8154e900 100644 --- a/com/hbm/packet/ItemFolderPacket.java +++ b/com/hbm/packet/ItemFolderPacket.java @@ -2,12 +2,12 @@ package com.hbm.packet; import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.items.ModItems; -import com.hbm.items.tool.ItemAssemblyTemplate; -import com.hbm.items.tool.ItemAssemblyTemplate.EnumAssemblyTemplate; -import com.hbm.items.tool.ItemCassette; -import com.hbm.items.tool.ItemChemistryTemplate; -import com.hbm.items.tool.ItemChemistryTemplate.EnumChemistryTemplate; -import com.hbm.items.tool.ItemFluidIdentifier; +import com.hbm.items.machine.ItemAssemblyTemplate; +import com.hbm.items.machine.ItemCassette; +import com.hbm.items.machine.ItemChemistryTemplate; +import com.hbm.items.machine.ItemFluidIdentifier; +import com.hbm.items.machine.ItemAssemblyTemplate.EnumAssemblyTemplate; +import com.hbm.items.machine.ItemChemistryTemplate.EnumChemistryTemplate; import com.hbm.main.MainRegistry; import cpw.mods.fml.common.network.simpleimpl.IMessage; diff --git a/com/hbm/packet/TESirenPacket.java b/com/hbm/packet/TESirenPacket.java index 65fd0a658..bdd3d0ea0 100644 --- a/com/hbm/packet/TESirenPacket.java +++ b/com/hbm/packet/TESirenPacket.java @@ -1,7 +1,7 @@ package com.hbm.packet; -import com.hbm.items.tool.ItemCassette.SoundType; -import com.hbm.items.tool.ItemCassette.TrackType; +import com.hbm.items.machine.ItemCassette.SoundType; +import com.hbm.items.machine.ItemCassette.TrackType; import com.hbm.sound.SoundLoopSiren; import com.hbm.tileentity.machine.TileEntityMachineSiren; import cpw.mods.fml.common.network.simpleimpl.IMessage; diff --git a/com/hbm/particle/ParticleRocketFlame.java b/com/hbm/particle/ParticleRocketFlame.java index d613dac2e..9ef58f9db 100644 --- a/com/hbm/particle/ParticleRocketFlame.java +++ b/com/hbm/particle/ParticleRocketFlame.java @@ -2,30 +2,25 @@ package com.hbm.particle; import java.util.Random; -import org.lwjgl.opengl.GL11; - -import com.hbm.lib.RefStrings; +import com.hbm.main.ModEventHandlerClient; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.client.particle.EntityFX; -import net.minecraft.client.renderer.OpenGlHelper; -import net.minecraft.client.renderer.RenderHelper; import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.texture.TextureManager; -import net.minecraft.util.ResourceLocation; import net.minecraft.world.World; @SideOnly(Side.CLIENT) public class ParticleRocketFlame extends EntityFX { - private static final ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/particle/particle_base.png"); private TextureManager theRenderEngine; private int age; private int maxAge; public ParticleRocketFlame(TextureManager p_i1213_1_, World p_i1218_1_, double p_i1218_2_, double p_i1218_4_, double p_i1218_6_) { super(p_i1218_1_, p_i1218_2_, p_i1218_4_, p_i1218_6_); + particleIcon = ModEventHandlerClient.particleBase; theRenderEngine = p_i1213_1_; maxAge = 300 + rand.nextInt(50); } @@ -49,54 +44,39 @@ public class ParticleRocketFlame extends EntityFX { } public int getFXLayer() { - return 3; - } - + return 1; + } + public void renderParticle(Tessellator p_70539_1_, float p_70539_2_, float p_70539_3_, float p_70539_4_, float p_70539_5_, float p_70539_6_, float p_70539_7_) { - - this.theRenderEngine.bindTexture(texture); - - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - GL11.glDisable(GL11.GL_LIGHTING); - GL11.glEnable(GL11.GL_BLEND); - GL11.glDepthMask(false); - OpenGlHelper.glBlendFunc(770, 771, 1, 0); - RenderHelper.disableStandardItemLighting(); - - Random urandom = new Random(this.getEntityId()); - - for(int i = 0; i < 10; i++) { - - p_70539_1_.startDrawingQuads(); - - float add = urandom.nextFloat() * 0.3F; - float dark = 1 - Math.min(((float)(age) / (float)(maxAge * 0.25F)), 1); - - this.particleRed = 1 * dark + add; - this.particleGreen = 0.6F * dark + add; - this.particleBlue = 0 + add; - - this.particleAlpha = (float) Math.pow(1 - Math.min(((float)(age) / (float)(maxAge)), 1), 0.5); - - p_70539_1_.setColorRGBA_F(this.particleRed, this.particleGreen, this.particleBlue, this.particleAlpha * 0.75F); - p_70539_1_.setNormal(0.0F, 1.0F, 0.0F); - p_70539_1_.setBrightness(240); - - float spread = (float) Math.pow(((float)(age) / (float)maxAge) * 4F, 1.5) + 1F; - - float scale = urandom.nextFloat() * 0.5F + 0.1F + ((float)(age) / (float)maxAge) * 2F; - float pX = (float) ((this.prevPosX + (this.posX - this.prevPosX) * (double)p_70539_2_ - interpPosX) + (urandom.nextGaussian() - 1D) * 0.2F * spread); - float pY = (float) ((this.prevPosY + (this.posY - this.prevPosY) * (double)p_70539_2_ - interpPosY) + (urandom.nextGaussian() - 1D) * 0.5F * spread); - float pZ = (float) ((this.prevPosZ + (this.posZ - this.prevPosZ) * (double)p_70539_2_ - interpPosZ) + (urandom.nextGaussian() - 1D) * 0.2F * spread); - - p_70539_1_.addVertexWithUV((double)(pX - p_70539_3_ * scale - p_70539_6_ * scale), (double)(pY - p_70539_4_ * scale), (double)(pZ - p_70539_5_ * scale - p_70539_7_ * scale), 1, 1); - p_70539_1_.addVertexWithUV((double)(pX - p_70539_3_ * scale + p_70539_6_ * scale), (double)(pY + p_70539_4_ * scale), (double)(pZ - p_70539_5_ * scale + p_70539_7_ * scale), 1, 0); - p_70539_1_.addVertexWithUV((double)(pX + p_70539_3_ * scale + p_70539_6_ * scale), (double)(pY + p_70539_4_ * scale), (double)(pZ + p_70539_5_ * scale + p_70539_7_ * scale), 0, 0); - p_70539_1_.addVertexWithUV((double)(pX + p_70539_3_ * scale - p_70539_6_ * scale), (double)(pY - p_70539_4_ * scale), (double)(pZ + p_70539_5_ * scale - p_70539_7_ * scale), 0, 1); - p_70539_1_.draw(); - } - - GL11.glPolygonOffset(0.0F, 0.0F); - GL11.glEnable(GL11.GL_LIGHTING); - } + + Random urandom = new Random(this.getEntityId()); + + for(int i = 0; i < 10; i++) { + + float add = urandom.nextFloat() * 0.3F; + float dark = 1 - Math.min(((float)(age) / (float)(maxAge * 0.25F)), 1); + + this.particleRed = 1 * dark + add; + this.particleGreen = 0.6F * dark + add; + this.particleBlue = 0 + add; + + this.particleAlpha = (float) Math.pow(1 - Math.min(((float)(age) / (float)(maxAge)), 1), 0.5); + + p_70539_1_.setColorRGBA_F(this.particleRed, this.particleGreen, this.particleBlue, this.particleAlpha * 0.75F); + p_70539_1_.setNormal(0.0F, 1.0F, 0.0F); + p_70539_1_.setBrightness(240); + + float spread = (float) Math.pow(((float)(age) / (float)maxAge) * 4F, 1.5) + 1F; + + float scale = urandom.nextFloat() * 0.5F + 0.1F + ((float)(age) / (float)maxAge) * 2F; + float pX = (float) ((this.prevPosX + (this.posX - this.prevPosX) * (double)p_70539_2_ - interpPosX) + (urandom.nextGaussian() - 1D) * 0.2F * spread); + float pY = (float) ((this.prevPosY + (this.posY - this.prevPosY) * (double)p_70539_2_ - interpPosY) + (urandom.nextGaussian() - 1D) * 0.5F * spread); + float pZ = (float) ((this.prevPosZ + (this.posZ - this.prevPosZ) * (double)p_70539_2_ - interpPosZ) + (urandom.nextGaussian() - 1D) * 0.2F * spread); + + p_70539_1_.addVertexWithUV((double)(pX - p_70539_3_ * scale - p_70539_6_ * scale), (double)(pY - p_70539_4_ * scale), (double)(pZ - p_70539_5_ * scale - p_70539_7_ * scale), particleIcon.getMaxU(), particleIcon.getMaxV()); + p_70539_1_.addVertexWithUV((double)(pX - p_70539_3_ * scale + p_70539_6_ * scale), (double)(pY + p_70539_4_ * scale), (double)(pZ - p_70539_5_ * scale + p_70539_7_ * scale), particleIcon.getMaxU(), particleIcon.getMinV()); + p_70539_1_.addVertexWithUV((double)(pX + p_70539_3_ * scale + p_70539_6_ * scale), (double)(pY + p_70539_4_ * scale), (double)(pZ + p_70539_5_ * scale + p_70539_7_ * scale), particleIcon.getMinU(), particleIcon.getMinV()); + p_70539_1_.addVertexWithUV((double)(pX + p_70539_3_ * scale - p_70539_6_ * scale), (double)(pY - p_70539_4_ * scale), (double)(pZ + p_70539_5_ * scale - p_70539_7_ * scale), particleIcon.getMinU(), particleIcon.getMaxV()); + } + } } diff --git a/com/hbm/render/entity/projectile/RenderBullet.java b/com/hbm/render/entity/projectile/RenderBullet.java index fe61503b8..cb892f751 100644 --- a/com/hbm/render/entity/projectile/RenderBullet.java +++ b/com/hbm/render/entity/projectile/RenderBullet.java @@ -58,6 +58,7 @@ public class RenderBullet extends Render { int trail = bullet.getDataWatcher().getWatchableObjectByte(17); switch(style) { + case BulletConfiguration.STYLE_NONE: break; case BulletConfiguration.STYLE_NORMAL: renderBullet(trail); break; case BulletConfiguration.STYLE_BOLT: renderDart(trail); break; case BulletConfiguration.STYLE_FLECHETTE: renderFlechette(); break; diff --git a/com/hbm/render/item/ItemRenderEMPRay.java b/com/hbm/render/item/ItemRenderEMPRay.java index eedb01b9d..1622bffc9 100644 --- a/com/hbm/render/item/ItemRenderEMPRay.java +++ b/com/hbm/render/item/ItemRenderEMPRay.java @@ -7,8 +7,6 @@ import com.hbm.render.model.ModelEMPRay; import net.minecraft.client.Minecraft; import net.minecraft.entity.Entity; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.EnumAction; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.IItemRenderer; @@ -39,11 +37,9 @@ public class ItemRenderEMPRay implements IItemRenderer { @Override public void renderItem(ItemRenderType type, ItemStack item, Object... data) { + float f = 0; - - if((Entity)data[1] instanceof EntityPlayer) - //f = ((EntityPlayer)data[1]).getItemInUseCount() > 0 && ((Entity)data[1]).isSneaking() ? 0.05F : 0; - f = (((EntityPlayer)data[1]).getItemInUse() != null &&((EntityPlayer)data[1]).getItemInUse().getItemUseAction() == EnumAction.bow) ? 0.15F : 0; + switch(type) { case EQUIPPED_FIRST_PERSON: GL11.glPushMatrix(); @@ -51,11 +47,10 @@ public class ItemRenderEMPRay implements IItemRenderer { Minecraft.getMinecraft().renderEngine.bindTexture(new ResourceLocation(RefStrings.MODID +":textures/models/ModelEMPRay.png")); GL11.glRotatef(-135.0F, 0.0F, 0.0F, 1.0F); GL11.glTranslatef(-0.5F, 0.0F, -0.2F); - //GL11.glScalef(2.0F, 2.0F, 2.0F); GL11.glScalef(0.5F, 0.5F, 0.5F); GL11.glScalef(0.5F, 0.5F, 0.5F); - //GL11.glTranslatef(-0.4F, -0.1F, 0.1F); GL11.glTranslatef(-0.8F, -0.2F, 0.0F); + GL11.glRotatef(-15.0F, 0.0F, 0.0F, 1.0F); swordModel.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, f); GL11.glPopMatrix(); break; diff --git a/com/hbm/render/item/ItemRenderWeaponObj.java b/com/hbm/render/item/ItemRenderWeaponObj.java index 627456e88..5296d07fa 100644 --- a/com/hbm/render/item/ItemRenderWeaponObj.java +++ b/com/hbm/render/item/ItemRenderWeaponObj.java @@ -21,7 +21,7 @@ public class ItemRenderWeaponObj implements IItemRenderer { case ENTITY: return true; case INVENTORY: - return item.getItem() == ModItems.gun_ks23 || item.getItem() == ModItems.gun_hk69; + return item.getItem() == ModItems.gun_ks23 || item.getItem() == ModItems.gun_hk69 || item.getItem() == ModItems.gun_flamer; default: return false; } } @@ -51,6 +51,9 @@ public class ItemRenderWeaponObj implements IItemRenderer { if(item.getItem() == ModItems.gun_ks23) Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.ks23_tex); + + if(item.getItem() == ModItems.gun_flamer) + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.flamer_tex); switch(type) { @@ -106,6 +109,18 @@ public class ItemRenderWeaponObj implements IItemRenderer { GL11.glTranslatef(0.51F, 0.2F, 0.3F); } } + + if(item.getItem() == ModItems.gun_flamer) { + GL11.glTranslatef(1.0F, 0.0F, -0.15F); + GL11.glRotatef(90F, 0.0F, 1.0F, 0.0F); + GL11.glRotatef(-25F, 1.0F, 0.0F, 0.0F); + GL11.glRotatef(-10F, 0.0F, 1.0F, 0.0F); + GL11.glScaled(0.5, 0.5, 0.5); + + if(player.isSneaking()) { + GL11.glTranslatef(0.75F, 0.2F, 0.3F); + } + } break; @@ -138,6 +153,13 @@ public class ItemRenderWeaponObj implements IItemRenderer { GL11.glTranslatef(0.4F, 0.2F, 1.2F); GL11.glScaled(1.25, 1.25, 1.25); } + + if(item.getItem() == ModItems.gun_flamer) { + GL11.glRotatef(20F, 1.0F, 0.0F, 1.0F); + GL11.glRotatef(10F, 0.0F, 1.0F, 0.0F); + GL11.glTranslatef(0.4F, -0.25F, 0.2F); + GL11.glScaled(0.35, 0.35, 0.35); + } break; @@ -164,6 +186,12 @@ public class ItemRenderWeaponObj implements IItemRenderer { GL11.glScaled(0.75, 0.75, 0.75); } + if(item.getItem() == ModItems.gun_flamer) { + GL11.glTranslatef(-0.25F, 0.2F, 0.0F); + GL11.glRotatef(90F, 0.0F, 1.0F, 0.0F); + GL11.glScaled(0.25, 0.25, 0.25); + } + break; case INVENTORY: @@ -186,6 +214,14 @@ public class ItemRenderWeaponObj implements IItemRenderer { GL11.glRotatef(-45F, 1.0F, 0.0F, 0.0F); } + if(item.getItem() == ModItems.gun_flamer) { + GL11.glScaled(2.0, 2.0, -2.0); + GL11.glTranslatef(4.0F, 5.0F, 0.0F); + GL11.glRotatef(180F, 1.0F, 0.0F, 0.0F); + GL11.glRotatef(-90F, 0.0F, 1.0F, 0.0F); + GL11.glRotatef(-45F, 1.0F, 0.0F, 0.0F); + } + break; default: break; @@ -214,6 +250,12 @@ public class ItemRenderWeaponObj implements IItemRenderer { ResourceManager.ks23.renderAll(); GL11.glShadeModel(GL11.GL_FLAT); } + + if(item.getItem() == ModItems.gun_flamer) { + GL11.glShadeModel(GL11.GL_SMOOTH); + ResourceManager.flamer.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + } GL11.glEnable(GL11.GL_CULL_FACE); GL11.glPopMatrix(); diff --git a/com/hbm/sound/SoundLoopSiren.java b/com/hbm/sound/SoundLoopSiren.java index fc612299d..b86076678 100644 --- a/com/hbm/sound/SoundLoopSiren.java +++ b/com/hbm/sound/SoundLoopSiren.java @@ -3,7 +3,7 @@ package com.hbm.sound; import java.util.ArrayList; import java.util.List; -import com.hbm.items.tool.ItemCassette.SoundType; +import com.hbm.items.machine.ItemCassette.SoundType; import com.hbm.tileentity.machine.TileEntityMachineSiren; import net.minecraft.client.Minecraft; diff --git a/com/hbm/tileentity/machine/TileEntityAMSBase.java b/com/hbm/tileentity/machine/TileEntityAMSBase.java index c75fb8aae..fc684bb23 100644 --- a/com/hbm/tileentity/machine/TileEntityAMSBase.java +++ b/com/hbm/tileentity/machine/TileEntityAMSBase.java @@ -5,6 +5,7 @@ import java.util.List; import com.hbm.entity.effect.EntityCloudFleijaRainbow; import com.hbm.entity.logic.EntityNukeExplosionMK4; +import com.hbm.handler.ArmorUtil; import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.interfaces.IConsumer; import com.hbm.interfaces.IFluidAcceptor; @@ -12,9 +13,9 @@ import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.ISource; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; +import com.hbm.items.machine.ItemCatalyst; +import com.hbm.items.machine.ItemSatChip; import com.hbm.items.special.ItemAMSCore; -import com.hbm.items.special.ItemCatalyst; -import com.hbm.items.tool.ItemSatChip; import com.hbm.lib.Library; import com.hbm.lib.ModDamageSource; import com.hbm.packet.AuxElectricityPacket; @@ -424,7 +425,7 @@ public class TileEntityAMSBase extends TileEntity implements ISidedInventory, IS List list = worldObj.getEntitiesWithinAABBExcludingEntity(null, AxisAlignedBB.getBoundingBox(xCoord - 10 + 0.5, yCoord - 10 + 0.5 + 6, zCoord - 10 + 0.5, xCoord + 10 + 0.5, yCoord + 10 + 0.5 + 6, zCoord + 10 + 0.5)); for(Entity e : list) { - if(!(e instanceof EntityPlayer && Library.checkForHazmat((EntityPlayer)e))) + if(!(e instanceof EntityPlayer && ArmorUtil.checkForHazmat((EntityPlayer)e))) if(!Library.isObstructed(worldObj, xCoord + 0.5, yCoord + 0.5 + 6, zCoord + 0.5, e.posX, e.posY + e.getEyeHeight(), e.posZ)) { e.attackEntityFrom(ModDamageSource.ams, 1000); e.setFire(3); @@ -434,7 +435,7 @@ public class TileEntityAMSBase extends TileEntity implements ISidedInventory, IS List list2 = worldObj.getEntitiesWithinAABBExcludingEntity(null, AxisAlignedBB.getBoundingBox(xCoord - scale + 0.5, yCoord - scale + 0.5 + 6, zCoord - scale + 0.5, xCoord + scale + 0.5, yCoord + scale + 0.5 + 6, zCoord + scale + 0.5)); for(Entity e : list2) { - if(!(e instanceof EntityPlayer && Library.checkForHaz2((EntityPlayer)e))) + if(!(e instanceof EntityPlayer && ArmorUtil.checkForHaz2((EntityPlayer)e))) e.attackEntityFrom(ModDamageSource.amsCore, 10000); } } diff --git a/com/hbm/tileentity/machine/TileEntityConverterHeRf.java b/com/hbm/tileentity/machine/TileEntityConverterHeRf.java index 1972cdc25..622e70965 100644 --- a/com/hbm/tileentity/machine/TileEntityConverterHeRf.java +++ b/com/hbm/tileentity/machine/TileEntityConverterHeRf.java @@ -6,6 +6,7 @@ import com.hbm.interfaces.IConsumer; import cofh.api.energy.EnergyStorage; import cofh.api.energy.IEnergyProvider; import cofh.api.energy.IEnergyReceiver; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.util.ForgeDirection; @@ -20,43 +21,14 @@ public class TileEntityConverterHeRf extends TileEntity implements IConsumer, IE @Override public void updateEntity() { if (!worldObj.isRemote) { + + long convert = Math.min(storage.getMaxEnergyStored() - storage.getEnergyStored(), power * 4); - for(int i = 0; i < 9; i++) - if(power >= 100000 && storage.getEnergyStored() + 400000 <= storage.getMaxEnergyStored()) - { - power -= 100000; - storage.setEnergyStored(storage.getEnergyStored() + 400000); - } - for(int i = 0; i < 9; i++) - if(power >= 10000 && storage.getEnergyStored() + 40000 <= storage.getMaxEnergyStored()) - { - power -= 10000; - storage.setEnergyStored(storage.getEnergyStored() + 40000); - } - for(int i = 0; i < 9; i++) - if(power >= 1000 && storage.getEnergyStored() + 4000 <= storage.getMaxEnergyStored()) - { - power -= 1000; - storage.setEnergyStored(storage.getEnergyStored() + 4000); - } - for(int i = 0; i < 9; i++) - if(power >= 100 && storage.getEnergyStored() + 400 <= storage.getMaxEnergyStored()) - { - power -= 100; - storage.setEnergyStored(storage.getEnergyStored() + 400); - } - for(int i = 0; i < 9; i++) - if(power >= 10 && storage.getEnergyStored() + 40 <= storage.getMaxEnergyStored()) - { - power -= 10; - storage.setEnergyStored(storage.getEnergyStored() + 4); - } - for(int i = 0; i < 10; i++) - if(power >= 1 && storage.getEnergyStored() + 4 <= storage.getMaxEnergyStored()) - { - power -= 1; - storage.setEnergyStored(storage.getEnergyStored() + 40); - } + power -= convert / 4; + storage.setEnergyStored((int) (storage.getEnergyStored() + convert)); + + if(convert > 0) + this.markDirty(); for (ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) { @@ -119,5 +91,21 @@ public class TileEntityConverterHeRf extends TileEntity implements IConsumer, IE public long getFluxScaled(long i) { return (storage.getEnergyStored() * i) / storage.getMaxEnergyStored(); } + + @Override + public void readFromNBT(NBTTagCompound nbt) { + super.readFromNBT(nbt); + + this.power = nbt.getLong("power"); + storage.readFromNBT(nbt); + } + + @Override + public void writeToNBT(NBTTagCompound nbt) { + super.writeToNBT(nbt); + + nbt.setLong("power", power); + storage.writeToNBT(nbt); + } } diff --git a/com/hbm/tileentity/machine/TileEntityConverterRfHe.java b/com/hbm/tileentity/machine/TileEntityConverterRfHe.java index ff203393a..1ccd984ab 100644 --- a/com/hbm/tileentity/machine/TileEntityConverterRfHe.java +++ b/com/hbm/tileentity/machine/TileEntityConverterRfHe.java @@ -9,6 +9,7 @@ import com.hbm.lib.Library; import cofh.api.energy.EnergyStorage; import cofh.api.energy.IEnergyReceiver; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.util.ForgeDirection; @@ -22,44 +23,16 @@ public class TileEntityConverterRfHe extends TileEntity implements ISource, IEne @Override public void updateEntity() { + if (!worldObj.isRemote) { + + long convert = Math.min(storage.getEnergyStored(), (maxPower - power) * 4); - for(int i = 0; i < 9; i++) - if(storage.getEnergyStored() >= 400000 && power + 100000 <= maxPower) - { - storage.setEnergyStored(storage.getEnergyStored() - 400000); - power += 100000; - } - for(int i = 0; i < 9; i++) - if(storage.getEnergyStored() >= 40000 && power + 10000 <= maxPower) - { - storage.setEnergyStored(storage.getEnergyStored() - 40000); - power += 10000; - } - for(int i = 0; i < 9; i++) - if(storage.getEnergyStored() >= 4000 && power + 1000 <= maxPower) - { - storage.setEnergyStored(storage.getEnergyStored() - 4000); - power += 1000; - } - for(int i = 0; i < 9; i++) - if(storage.getEnergyStored() >= 400 && power + 100 <= maxPower) - { - storage.setEnergyStored(storage.getEnergyStored() - 400); - power += 100; - } - for(int i = 0; i < 9; i++) - if(storage.getEnergyStored() >= 40 && power + 10 <= maxPower) - { - storage.setEnergyStored(storage.getEnergyStored() - 40); - power += 10; - } - for(int i = 0; i < 10; i++) - if(storage.getEnergyStored() >= 4 && power + 1 <= maxPower) - { - storage.setEnergyStored(storage.getEnergyStored() - 4); - power += 1; - } + storage.setEnergyStored((int) (storage.getEnergyStored() - convert)); + power += convert / 4; + + if(convert > 0) + this.markDirty(); } age++; @@ -145,5 +118,21 @@ public class TileEntityConverterRfHe extends TileEntity implements ISource, IEne public void clearList() { this.list.clear(); } + + @Override + public void readFromNBT(NBTTagCompound nbt) { + super.readFromNBT(nbt); + + this.power = nbt.getLong("power"); + storage.readFromNBT(nbt); + } + + @Override + public void writeToNBT(NBTTagCompound nbt) { + super.writeToNBT(nbt); + + nbt.setLong("power", power); + storage.writeToNBT(nbt); + } } diff --git a/com/hbm/tileentity/machine/TileEntityCore.java b/com/hbm/tileentity/machine/TileEntityCore.java index 0cf784330..f129e2f01 100644 --- a/com/hbm/tileentity/machine/TileEntityCore.java +++ b/com/hbm/tileentity/machine/TileEntityCore.java @@ -4,10 +4,11 @@ import java.util.List; import com.hbm.entity.effect.EntityCloudFleijaRainbow; import com.hbm.entity.logic.EntityNukeExplosionMK3; +import com.hbm.handler.ArmorUtil; import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemCatalyst; +import com.hbm.items.machine.ItemCatalyst; import com.hbm.lib.Library; import com.hbm.lib.ModDamageSource; import com.hbm.tileentity.TileEntityMachineBase; @@ -120,7 +121,7 @@ public class TileEntityCore extends TileEntityMachineBase { List list = worldObj.getEntitiesWithinAABBExcludingEntity(null, AxisAlignedBB.getBoundingBox(xCoord - 10 + 0.5, yCoord - 10 + 0.5 + 6, zCoord - 10 + 0.5, xCoord + 10 + 0.5, yCoord + 10 + 0.5 + 6, zCoord + 10 + 0.5)); for(Entity e : list) { - if(!(e instanceof EntityPlayer && Library.checkForHazmat((EntityPlayer)e))) + if(!(e instanceof EntityPlayer && ArmorUtil.checkForHazmat((EntityPlayer)e))) if(!Library.isObstructed(worldObj, xCoord + 0.5, yCoord + 0.5 + 6, zCoord + 0.5, e.posX, e.posY + e.getEyeHeight(), e.posZ)) { e.attackEntityFrom(ModDamageSource.ams, 1000); e.setFire(3); @@ -130,7 +131,7 @@ public class TileEntityCore extends TileEntityMachineBase { List list2 = worldObj.getEntitiesWithinAABBExcludingEntity(null, AxisAlignedBB.getBoundingBox(xCoord - scale + 0.5, yCoord - scale + 0.5 + 6, zCoord - scale + 0.5, xCoord + scale + 0.5, yCoord + scale + 0.5 + 6, zCoord + scale + 0.5)); for(Entity e : list2) { - if(!(e instanceof EntityPlayer && Library.checkForHaz2((EntityPlayer)e))) + if(!(e instanceof EntityPlayer && ArmorUtil.checkForHaz2((EntityPlayer)e))) e.attackEntityFrom(ModDamageSource.amsCore, 10000); } } diff --git a/com/hbm/tileentity/machine/TileEntityCoreAdvanced.java b/com/hbm/tileentity/machine/TileEntityCoreAdvanced.java index 9aae734a3..0f409456e 100644 --- a/com/hbm/tileentity/machine/TileEntityCoreAdvanced.java +++ b/com/hbm/tileentity/machine/TileEntityCoreAdvanced.java @@ -4,7 +4,7 @@ import com.hbm.blocks.ModBlocks; import com.hbm.interfaces.IConsumer; import com.hbm.interfaces.IFactory; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.ISidedInventory; diff --git a/com/hbm/tileentity/machine/TileEntityCoreStabilizer.java b/com/hbm/tileentity/machine/TileEntityCoreStabilizer.java index 03b88b93e..280210a35 100644 --- a/com/hbm/tileentity/machine/TileEntityCoreStabilizer.java +++ b/com/hbm/tileentity/machine/TileEntityCoreStabilizer.java @@ -2,7 +2,7 @@ package com.hbm.tileentity.machine; import com.hbm.interfaces.IConsumer; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemLens; +import com.hbm.items.machine.ItemLens; import com.hbm.tileentity.TileEntityMachineBase; import cpw.mods.fml.relauncher.Side; diff --git a/com/hbm/tileentity/machine/TileEntityCoreTitanium.java b/com/hbm/tileentity/machine/TileEntityCoreTitanium.java index fa39bc14d..74dbeb0a5 100644 --- a/com/hbm/tileentity/machine/TileEntityCoreTitanium.java +++ b/com/hbm/tileentity/machine/TileEntityCoreTitanium.java @@ -4,7 +4,7 @@ import com.hbm.blocks.ModBlocks; import com.hbm.interfaces.IConsumer; import com.hbm.interfaces.IFactory; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.ISidedInventory; diff --git a/com/hbm/tileentity/machine/TileEntityForceField.java b/com/hbm/tileentity/machine/TileEntityForceField.java index d2d236011..b4bcb08f5 100644 --- a/com/hbm/tileentity/machine/TileEntityForceField.java +++ b/com/hbm/tileentity/machine/TileEntityForceField.java @@ -5,7 +5,7 @@ import java.util.List; import com.hbm.interfaces.IConsumer; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.TEFFPacket; diff --git a/com/hbm/tileentity/machine/TileEntityLockableBase.java b/com/hbm/tileentity/machine/TileEntityLockableBase.java index 4ce4113dc..f5ec26020 100644 --- a/com/hbm/tileentity/machine/TileEntityLockableBase.java +++ b/com/hbm/tileentity/machine/TileEntityLockableBase.java @@ -1,8 +1,8 @@ package com.hbm.tileentity.machine; +import com.hbm.handler.ArmorUtil; import com.hbm.items.ModItems; import com.hbm.items.tool.ItemKey; -import com.hbm.lib.Library; import com.hbm.main.MainRegistry; import net.minecraft.entity.player.EntityPlayer; @@ -106,7 +106,7 @@ public abstract class TileEntityLockableBase extends TileEntity { if(canPick) { - if(Library.checkArmorPiece(player, ModItems.jackt, 2) || Library.checkArmorPiece(player, ModItems.jackt2, 2)) + if(ArmorUtil.checkArmorPiece(player, ModItems.jackt, 2) || ArmorUtil.checkArmorPiece(player, ModItems.jackt2, 2)) chanceOfSuccess *= 100D; double rand = player.worldObj.rand.nextDouble() * 100; diff --git a/com/hbm/tileentity/machine/TileEntityMachineArcFurnace.java b/com/hbm/tileentity/machine/TileEntityMachineArcFurnace.java index b2aa74649..9e3e4cf0c 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineArcFurnace.java +++ b/com/hbm/tileentity/machine/TileEntityMachineArcFurnace.java @@ -4,7 +4,7 @@ import com.hbm.blocks.ModBlocks; import com.hbm.blocks.machine.MachineArcFurnace; import com.hbm.interfaces.IConsumer; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.AuxGaugePacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachineAssembler.java b/com/hbm/tileentity/machine/TileEntityMachineAssembler.java index 5297c4dd5..14186e6af 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineAssembler.java +++ b/com/hbm/tileentity/machine/TileEntityMachineAssembler.java @@ -7,8 +7,8 @@ import java.util.Random; import com.hbm.interfaces.IConsumer; import com.hbm.inventory.MachineRecipes; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; -import com.hbm.items.tool.ItemAssemblyTemplate; +import com.hbm.items.machine.ItemAssemblyTemplate; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.LoopedSoundPacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachineBattery.java b/com/hbm/tileentity/machine/TileEntityMachineBattery.java index a7378dd3a..be49daacd 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineBattery.java +++ b/com/hbm/tileentity/machine/TileEntityMachineBattery.java @@ -6,26 +6,26 @@ import java.util.List; import com.hbm.blocks.machine.MachineBattery; import com.hbm.interfaces.IConsumer; import com.hbm.interfaces.ISource; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; -import com.hbm.packet.AuxElectricityPacket; -import com.hbm.packet.PacketDispatcher; +import com.hbm.tileentity.TileEntityMachineBase; -import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.ISidedInventory; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; -import net.minecraft.tileentity.TileEntity; -public class TileEntityMachineBattery extends TileEntity implements ISidedInventory, IConsumer, ISource { - - private ItemStack slots[]; +public class TileEntityMachineBattery extends TileEntityMachineBase implements IConsumer, ISource { public long power = 0; public long maxPower = 1000000; + //0: input only + //1: buffer + //2: output only + //3: nothing + public short redLow = 0; + public short redHigh = 2; + public boolean conducts = false; private static final int[] slots_top = new int[] {0}; @@ -37,48 +37,24 @@ public class TileEntityMachineBattery extends TileEntity implements ISidedInvent private String customName; public TileEntityMachineBattery() { + super(2); slots = new ItemStack[2]; } public TileEntityMachineBattery(long maxPower) { + super(2); slots = new ItemStack[2]; this.maxPower = maxPower; } @Override - public int getSizeInventory() { - return slots.length; - } - - @Override - public ItemStack getStackInSlot(int i) { - return slots[i]; - } - - @Override - public ItemStack getStackInSlotOnClosing(int i) { - if(slots[i] != null) - { - ItemStack itemStack = slots[i]; - slots[i] = null; - return itemStack; - } else { - return null; - } - } - - @Override - public void setInventorySlotContents(int i, ItemStack itemStack) { - slots[i] = itemStack; - if(itemStack != null && itemStack.stackSize > getInventoryStackLimit()) - { - itemStack.stackSize = getInventoryStackLimit(); - } + public String getName() { + return "container.battery"; } @Override public String getInventoryName() { - return this.hasCustomInventoryName() ? this.customName : "container.battery"; + return this.hasCustomInventoryName() ? this.customName : getName(); } @Override @@ -90,26 +66,6 @@ public class TileEntityMachineBattery extends TileEntity implements ISidedInvent this.customName = name; } - @Override - public int getInventoryStackLimit() { - return 64; - } - - @Override - public boolean isUseableByPlayer(EntityPlayer player) { - if(worldObj.getTileEntity(xCoord, yCoord, zCoord) != this) - { - return false; - }else{ - return player.getDistanceSq(xCoord + 0.5D, yCoord + 0.5D, zCoord + 0.5D) <=64; - } - } - - @Override - public void openInventory() {} - @Override - public void closeInventory() {} - @Override public boolean isItemValidForSlot(int i, ItemStack stack) { switch(i) @@ -127,35 +83,15 @@ public class TileEntityMachineBattery extends TileEntity implements ISidedInvent return true; } - @Override - public ItemStack decrStackSize(int i, int j) { - if(slots[i] != null) - { - if(slots[i].stackSize <= j) - { - ItemStack itemStack = slots[i]; - slots[i] = null; - return itemStack; - } - ItemStack itemStack1 = slots[i].splitStack(j); - if (slots[i].stackSize == 0) - { - slots[i] = null; - } - - return itemStack1; - } else { - return null; - } - } - @Override public void readFromNBT(NBTTagCompound nbt) { super.readFromNBT(nbt); NBTTagList list = nbt.getTagList("items", 10); this.power = nbt.getLong("power"); - this.conducts = nbt.getBoolean("conducts"); + this.redLow = nbt.getShort("redLow"); + this.redHigh = nbt.getShort("redHigh"); + slots = new ItemStack[getSizeInventory()]; for(int i = 0; i < list.tagCount(); i++) @@ -172,8 +108,11 @@ public class TileEntityMachineBattery extends TileEntity implements ISidedInvent @Override public void writeToNBT(NBTTagCompound nbt) { super.writeToNBT(nbt); + nbt.setLong("power", power); - nbt.setBoolean("conducts", conducts); + nbt.setShort("redLow", redLow); + nbt.setShort("redHigh", redHigh); + NBTTagList list = new NBTTagList(); for(int i = 0; i < slots.length; i++) @@ -223,11 +162,12 @@ public class TileEntityMachineBattery extends TileEntity implements ISidedInvent public void updateEntity() { if(worldObj.getBlock(xCoord, yCoord, zCoord) instanceof MachineBattery && !worldObj.isRemote) { - this.maxPower = ((MachineBattery)worldObj.getBlock(xCoord, yCoord, zCoord)).maxPower; - conducts = worldObj.isBlockIndirectlyGettingPowered(xCoord, yCoord, zCoord); + this.maxPower = ((MachineBattery)worldObj.getBlock(xCoord, yCoord, zCoord)).maxPower; - if(this.conducts) + short mode = (short) this.getRelevantMode(); + + if(mode == 1 || mode == 2) { age++; if(age >= 20) @@ -242,127 +182,38 @@ public class TileEntityMachineBattery extends TileEntity implements ISidedInvent power = Library.chargeTEFromItems(slots, 0, power, maxPower); power = Library.chargeItemsFromTE(slots, 1, power, maxPower); - PacketDispatcher.wrapper.sendToAllAround(new AuxElectricityPacket(xCoord, yCoord, zCoord, power), new TargetPoint(worldObj.provider.dimensionId, xCoord, yCoord, zCoord, 50)); + NBTTagCompound nbt = new NBTTagCompound(); + nbt.setLong("power", power); + nbt.setLong("maxPower", maxPower); + nbt.setShort("redLow", redLow); + nbt.setShort("redHigh", redHigh); + this.networkPack(nbt, 20); } } + @Override + public void networkUnpack(NBTTagCompound nbt) { + + this.power = nbt.getLong("power"); + this.maxPower = nbt.getLong("maxPower"); + this.redLow = nbt.getShort("redLow"); + this.redHigh = nbt.getShort("redHigh"); + } + @Override public void setPower(long i) { power = i; - } @Override public long getPower() { return power; - } @Override public void ffgeua(int x, int y, int z, boolean newTact) { Library.ffgeua(x, y, z, newTact, this, worldObj); - - /*Block block = this.worldObj.getBlock(x, y, z); - TileEntity tileentity = this.worldObj.getTileEntity(x, y, z); - - if(block == ModBlocks.factory_titanium_conductor && this.worldObj.getBlock(x, y + 1, z) == ModBlocks.factory_titanium_core) - { - tileentity = this.worldObj.getTileEntity(x, y + 1, z); - } - if(block == ModBlocks.factory_titanium_conductor && this.worldObj.getBlock(x, y - 1, z) == ModBlocks.factory_titanium_core) - { - tileentity = this.worldObj.getTileEntity(x, y - 1, z); - } - if(block == ModBlocks.factory_advanced_conductor && this.worldObj.getBlock(x, y + 1, z) == ModBlocks.factory_advanced_core) - { - tileentity = this.worldObj.getTileEntity(x, y + 1, z); - } - if(block == ModBlocks.factory_advanced_conductor && this.worldObj.getBlock(x, y - 1, z) == ModBlocks.factory_advanced_core) - { - tileentity = this.worldObj.getTileEntity(x, y - 1, z); - } - - if(tileentity instanceof IConductor) - { - if(tileentity instanceof TileEntityCable) - { - if(Library.checkUnionList(((TileEntityCable)tileentity).uoteab, this)) - { - for(int i = 0; i < ((TileEntityCable)tileentity).uoteab.size(); i++) - { - if(((TileEntityCable)tileentity).uoteab.get(i).source == this) - { - if(((TileEntityCable)tileentity).uoteab.get(i).ticked != newTact) - { - ((TileEntityCable)tileentity).uoteab.get(i).ticked = newTact; - ffgeua(x, y + 1, z, getTact()); - ffgeua(x, y - 1, z, getTact()); - ffgeua(x - 1, y, z, getTact()); - ffgeua(x + 1, y, z, getTact()); - ffgeua(x, y, z - 1, getTact()); - ffgeua(x, y, z + 1, getTact()); - } - } - } - } else { - ((TileEntityCable)tileentity).uoteab.add(new UnionOfTileEntitiesAndBooleans(this, newTact)); - } - } - if(tileentity instanceof TileEntityWireCoated) - { - if(Library.checkUnionList(((TileEntityWireCoated)tileentity).uoteab, this)) - { - for(int i = 0; i < ((TileEntityWireCoated)tileentity).uoteab.size(); i++) - { - if(((TileEntityWireCoated)tileentity).uoteab.get(i).source == this) - { - if(((TileEntityWireCoated)tileentity).uoteab.get(i).ticked != newTact) - { - ((TileEntityWireCoated)tileentity).uoteab.get(i).ticked = newTact; - ffgeua(x, y + 1, z, getTact()); - ffgeua(x, y - 1, z, getTact()); - ffgeua(x - 1, y, z, getTact()); - ffgeua(x + 1, y, z, getTact()); - ffgeua(x, y, z - 1, getTact()); - ffgeua(x, y, z + 1, getTact()); - } - } - } - } else { - ((TileEntityWireCoated)tileentity).uoteab.add(new UnionOfTileEntitiesAndBooleans(this, newTact)); - } - } - } - - if(tileentity instanceof IConsumer && newTact && !(tileentity instanceof TileEntityMachineBattery && ((TileEntityMachineBattery)tileentity).conducts)) - { - list.add((IConsumer)tileentity); - } - - if(!newTact) - { - int size = list.size(); - if(size > 0) - { - int part = this.power / size; - for(IConsumer consume : list) - { - if(consume.getPower() < consume.getMaxPower()) - { - if(consume.getMaxPower() - consume.getPower() >= part) - { - this.power -= part; - consume.setPower(consume.getPower() + part); - } else { - this.power -= consume.getMaxPower() - consume.getPower(); - consume.setPower(consume.getMaxPower()); - } - } - } - } - list.clear(); - }*/ } @Override @@ -384,9 +235,22 @@ public class TileEntityMachineBattery extends TileEntity implements ISidedInvent return false; } + + public short getRelevantMode() { + + if(worldObj.isBlockIndirectlyGettingPowered(xCoord, yCoord, zCoord)) { + return this.redHigh; + } else { + return this.redLow; + } + } @Override public long getMaxPower() { + + if(!worldObj.isRemote && getRelevantMode() >= 2) + return 0; + return maxPower; } diff --git a/com/hbm/tileentity/machine/TileEntityMachineBoilerElectric.java b/com/hbm/tileentity/machine/TileEntityMachineBoilerElectric.java index 2cd0febdc..c3498a2e0 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineBoilerElectric.java +++ b/com/hbm/tileentity/machine/TileEntityMachineBoilerElectric.java @@ -12,7 +12,7 @@ import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.MachineRecipes; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.AuxGaugePacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachineCMBFactory.java b/com/hbm/tileentity/machine/TileEntityMachineCMBFactory.java index cbd17a878..c86b3a805 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineCMBFactory.java +++ b/com/hbm/tileentity/machine/TileEntityMachineCMBFactory.java @@ -9,7 +9,7 @@ import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityMachineCentrifuge.java b/com/hbm/tileentity/machine/TileEntityMachineCentrifuge.java index 53adfc1e7..dab8dc44f 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineCentrifuge.java +++ b/com/hbm/tileentity/machine/TileEntityMachineCentrifuge.java @@ -2,7 +2,7 @@ package com.hbm.tileentity.machine; import com.hbm.interfaces.IConsumer; import com.hbm.inventory.MachineRecipes; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.AuxGaugePacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachineChemplant.java b/com/hbm/tileentity/machine/TileEntityMachineChemplant.java index c4ab5199b..6c68f9d29 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineChemplant.java +++ b/com/hbm/tileentity/machine/TileEntityMachineChemplant.java @@ -13,8 +13,8 @@ import com.hbm.inventory.FluidStack; import com.hbm.inventory.FluidTank; import com.hbm.inventory.MachineRecipes; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; -import com.hbm.items.tool.ItemChemistryTemplate; +import com.hbm.items.machine.ItemBattery; +import com.hbm.items.machine.ItemChemistryTemplate; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.AuxParticlePacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachineCoal.java b/com/hbm/tileentity/machine/TileEntityMachineCoal.java index 133c8ae2b..f184ddfcc 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineCoal.java +++ b/com/hbm/tileentity/machine/TileEntityMachineCoal.java @@ -21,7 +21,7 @@ import com.hbm.interfaces.ISource; import com.hbm.inventory.FluidContainerRegistry; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.AuxGaugePacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachineDeuterium.java b/com/hbm/tileentity/machine/TileEntityMachineDeuterium.java index df099b20c..a899b330e 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineDeuterium.java +++ b/com/hbm/tileentity/machine/TileEntityMachineDeuterium.java @@ -2,7 +2,7 @@ package com.hbm.tileentity.machine; import com.hbm.interfaces.IConsumer; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import net.minecraft.entity.player.EntityPlayer; diff --git a/com/hbm/tileentity/machine/TileEntityMachineDiesel.java b/com/hbm/tileentity/machine/TileEntityMachineDiesel.java index f558dc832..8892f9aa3 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineDiesel.java +++ b/com/hbm/tileentity/machine/TileEntityMachineDiesel.java @@ -11,7 +11,7 @@ import com.hbm.interfaces.ISource; import com.hbm.inventory.FluidContainerRegistry; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.AuxGaugePacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachineEPress.java b/com/hbm/tileentity/machine/TileEntityMachineEPress.java index 4b460506f..c86e84455 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineEPress.java +++ b/com/hbm/tileentity/machine/TileEntityMachineEPress.java @@ -2,7 +2,7 @@ package com.hbm.tileentity.machine; import com.hbm.interfaces.IConsumer; import com.hbm.inventory.MachineRecipes; -import com.hbm.items.special.ItemBlades; +import com.hbm.items.machine.ItemBlades; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityMachineElectricFurnace.java b/com/hbm/tileentity/machine/TileEntityMachineElectricFurnace.java index ece0adec6..cfffff1fc 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineElectricFurnace.java +++ b/com/hbm/tileentity/machine/TileEntityMachineElectricFurnace.java @@ -2,7 +2,7 @@ package com.hbm.tileentity.machine; import com.hbm.blocks.machine.MachineElectricFurnace; import com.hbm.interfaces.IConsumer; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.AuxGaugePacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachineGasFlare.java b/com/hbm/tileentity/machine/TileEntityMachineGasFlare.java index df294188d..4bcd1130e 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineGasFlare.java +++ b/com/hbm/tileentity/machine/TileEntityMachineGasFlare.java @@ -12,7 +12,7 @@ import com.hbm.interfaces.IFluidAcceptor; import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.ISource; import com.hbm.inventory.FluidTank; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityMachineGenerator.java b/com/hbm/tileentity/machine/TileEntityMachineGenerator.java index 547811323..af6472a76 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineGenerator.java +++ b/com/hbm/tileentity/machine/TileEntityMachineGenerator.java @@ -13,8 +13,8 @@ import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.ISource; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; -import com.hbm.items.special.ItemFuelRod; +import com.hbm.items.machine.ItemBattery; +import com.hbm.items.machine.ItemFuelRod; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityMachineMiningDrill.java b/com/hbm/tileentity/machine/TileEntityMachineMiningDrill.java index 5219aba3f..b6b82bb7d 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineMiningDrill.java +++ b/com/hbm/tileentity/machine/TileEntityMachineMiningDrill.java @@ -5,7 +5,7 @@ import java.util.Random; import com.hbm.blocks.ModBlocks; import com.hbm.interfaces.IConsumer; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.LoopedSoundPacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachineOilWell.java b/com/hbm/tileentity/machine/TileEntityMachineOilWell.java index 4a44cf609..ba59c8255 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineOilWell.java +++ b/com/hbm/tileentity/machine/TileEntityMachineOilWell.java @@ -14,7 +14,7 @@ import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityMachinePress.java b/com/hbm/tileentity/machine/TileEntityMachinePress.java index 8085f4cad..2c11718a9 100644 --- a/com/hbm/tileentity/machine/TileEntityMachinePress.java +++ b/com/hbm/tileentity/machine/TileEntityMachinePress.java @@ -1,7 +1,7 @@ package com.hbm.tileentity.machine; import com.hbm.inventory.MachineRecipes; -import com.hbm.items.special.ItemBlades; +import com.hbm.items.machine.ItemBlades; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.TEPressPacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachinePumpjack.java b/com/hbm/tileentity/machine/TileEntityMachinePumpjack.java index 9401bdbea..8a770b87f 100644 --- a/com/hbm/tileentity/machine/TileEntityMachinePumpjack.java +++ b/com/hbm/tileentity/machine/TileEntityMachinePumpjack.java @@ -13,7 +13,7 @@ import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityMachineReactorSmall.java b/com/hbm/tileentity/machine/TileEntityMachineReactorSmall.java index 825badae5..31b8ff0fa 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineReactorSmall.java +++ b/com/hbm/tileentity/machine/TileEntityMachineReactorSmall.java @@ -11,7 +11,7 @@ import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemFuelRod; +import com.hbm.items.machine.ItemFuelRod; import com.hbm.lib.Library; import com.hbm.packet.AuxGaugePacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityMachineReactorSmallOld.java b/com/hbm/tileentity/machine/TileEntityMachineReactorSmallOld.java index 7b8bbf6d3..5343b4b96 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineReactorSmallOld.java +++ b/com/hbm/tileentity/machine/TileEntityMachineReactorSmallOld.java @@ -11,8 +11,8 @@ import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.ISource; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; -import com.hbm.items.special.ItemFuelRod; +import com.hbm.items.machine.ItemBattery; +import com.hbm.items.machine.ItemFuelRod; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.AuxGaugePacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachineRefinery.java b/com/hbm/tileentity/machine/TileEntityMachineRefinery.java index 7a132c3f7..fa145d2f3 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineRefinery.java +++ b/com/hbm/tileentity/machine/TileEntityMachineRefinery.java @@ -11,7 +11,7 @@ import com.hbm.interfaces.IFluidSource; import com.hbm.inventory.FluidContainerRegistry; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityMachineSatDock.java b/com/hbm/tileentity/machine/TileEntityMachineSatDock.java index 21c155828..1a4d5c046 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineSatDock.java +++ b/com/hbm/tileentity/machine/TileEntityMachineSatDock.java @@ -5,7 +5,7 @@ import java.util.Random; import com.hbm.entity.missile.EntityMinerRocket; import com.hbm.items.ModItems; -import com.hbm.items.tool.ItemSatChip; +import com.hbm.items.machine.ItemSatChip; import com.hbm.saveddata.SatelliteSavedData; import com.hbm.saveddata.satellites.Satellite; import com.hbm.saveddata.satellites.SatelliteMiner; diff --git a/com/hbm/tileentity/machine/TileEntityMachineSatLinker.java b/com/hbm/tileentity/machine/TileEntityMachineSatLinker.java index 6fb5a999b..0aa7e64e1 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineSatLinker.java +++ b/com/hbm/tileentity/machine/TileEntityMachineSatLinker.java @@ -1,6 +1,6 @@ package com.hbm.tileentity.machine; -import com.hbm.items.tool.ItemSatChip; +import com.hbm.items.machine.ItemSatChip; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.ISidedInventory; diff --git a/com/hbm/tileentity/machine/TileEntityMachineSchrabidiumTransmutator.java b/com/hbm/tileentity/machine/TileEntityMachineSchrabidiumTransmutator.java index 79d1ebc89..e0e04433f 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineSchrabidiumTransmutator.java +++ b/com/hbm/tileentity/machine/TileEntityMachineSchrabidiumTransmutator.java @@ -5,7 +5,7 @@ import java.util.Random; import com.hbm.interfaces.IConsumer; import com.hbm.inventory.MachineRecipes; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityMachineSeleniumEngine.java b/com/hbm/tileentity/machine/TileEntityMachineSeleniumEngine.java index 08b587232..c16c479d8 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineSeleniumEngine.java +++ b/com/hbm/tileentity/machine/TileEntityMachineSeleniumEngine.java @@ -11,7 +11,7 @@ import com.hbm.interfaces.ISource; import com.hbm.inventory.FluidContainerRegistry; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.AuxGaugePacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachineShredder.java b/com/hbm/tileentity/machine/TileEntityMachineShredder.java index a10e1b33b..4d7d5e110 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineShredder.java +++ b/com/hbm/tileentity/machine/TileEntityMachineShredder.java @@ -2,8 +2,8 @@ package com.hbm.tileentity.machine; import com.hbm.interfaces.IConsumer; import com.hbm.inventory.MachineRecipes; -import com.hbm.items.special.ItemBattery; -import com.hbm.items.special.ItemBlades; +import com.hbm.items.machine.ItemBattery; +import com.hbm.items.machine.ItemBlades; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityMachineShredderLarge.java b/com/hbm/tileentity/machine/TileEntityMachineShredderLarge.java index c097f01d2..25c1949c0 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineShredderLarge.java +++ b/com/hbm/tileentity/machine/TileEntityMachineShredderLarge.java @@ -3,7 +3,7 @@ package com.hbm.tileentity.machine; import java.util.Random; import com.hbm.interfaces.IConsumer; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityMachineSiren.java b/com/hbm/tileentity/machine/TileEntityMachineSiren.java index b72aa71ec..7ad87852f 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineSiren.java +++ b/com/hbm/tileentity/machine/TileEntityMachineSiren.java @@ -1,9 +1,10 @@ package com.hbm.tileentity.machine; import java.util.Arrays; -import com.hbm.items.tool.ItemCassette; -import com.hbm.items.tool.ItemCassette.SoundType; -import com.hbm.items.tool.ItemCassette.TrackType; + +import com.hbm.items.machine.ItemCassette; +import com.hbm.items.machine.ItemCassette.SoundType; +import com.hbm.items.machine.ItemCassette.TrackType; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.TESirenPacket; diff --git a/com/hbm/tileentity/machine/TileEntityMachineTeleLinker.java b/com/hbm/tileentity/machine/TileEntityMachineTeleLinker.java index 4c52f350b..68f953d0f 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineTeleLinker.java +++ b/com/hbm/tileentity/machine/TileEntityMachineTeleLinker.java @@ -1,6 +1,6 @@ package com.hbm.tileentity.machine; -import com.hbm.items.tool.ItemTurretBiometry; +import com.hbm.items.machine.ItemTurretBiometry; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.ISidedInventory; diff --git a/com/hbm/tileentity/machine/TileEntityMachineTurbine.java b/com/hbm/tileentity/machine/TileEntityMachineTurbine.java index 9dab1b870..1f6b413e9 100644 --- a/com/hbm/tileentity/machine/TileEntityMachineTurbine.java +++ b/com/hbm/tileentity/machine/TileEntityMachineTurbine.java @@ -11,7 +11,7 @@ import com.hbm.interfaces.IFluidSource; import com.hbm.interfaces.ISource; import com.hbm.inventory.FluidTank; import com.hbm.inventory.MachineRecipes; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityReactorMultiblock.java b/com/hbm/tileentity/machine/TileEntityReactorMultiblock.java index 8529267ae..86733111e 100644 --- a/com/hbm/tileentity/machine/TileEntityReactorMultiblock.java +++ b/com/hbm/tileentity/machine/TileEntityReactorMultiblock.java @@ -14,7 +14,7 @@ import com.hbm.interfaces.IFluidContainer; import com.hbm.interfaces.ISource; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemFuelRod; +import com.hbm.items.machine.ItemFuelRod; import com.hbm.lib.Library; import com.hbm.packet.AuxElectricityPacket; import com.hbm.packet.PacketDispatcher; diff --git a/com/hbm/tileentity/machine/TileEntityReiXMainframe.java b/com/hbm/tileentity/machine/TileEntityReiXMainframe.java index 02612f05e..679881719 100644 --- a/com/hbm/tileentity/machine/TileEntityReiXMainframe.java +++ b/com/hbm/tileentity/machine/TileEntityReiXMainframe.java @@ -2,7 +2,7 @@ package com.hbm.tileentity.machine; import com.hbm.interfaces.IConsumer; import com.hbm.items.ModItems; -import com.hbm.items.special.ItemBattery; +import com.hbm.items.machine.ItemBattery; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Items; diff --git a/com/hbm/tileentity/machine/TileEntityTesla.java b/com/hbm/tileentity/machine/TileEntityTesla.java index c641feb11..8280fca0f 100644 --- a/com/hbm/tileentity/machine/TileEntityTesla.java +++ b/com/hbm/tileentity/machine/TileEntityTesla.java @@ -8,6 +8,7 @@ import com.hbm.entity.mob.EntityCyberCrab; import com.hbm.entity.mob.EntityNuclearCreeper; import com.hbm.entity.mob.EntityTaintCrab; import com.hbm.entity.mob.EntityTeslaCrab; +import com.hbm.handler.ArmorUtil; import com.hbm.interfaces.IConsumer; import com.hbm.lib.Library; import com.hbm.lib.ModDamageSource; @@ -116,7 +117,7 @@ public class TileEntityTesla extends TileEntityMachineBase implements IConsumer continue; } - if(!(e instanceof EntityPlayer && Library.checkForFaraday((EntityPlayer)e))) + if(!(e instanceof EntityPlayer && ArmorUtil.checkForFaraday((EntityPlayer)e))) if(e.attackEntityFrom(ModDamageSource.electricity, MathHelper.clamp_float(e.getMaxHealth() * 0.5F, 3, 20) / (float)targets.size())) worldObj.playSoundAtEntity(e, "hbm:weapon.tesla", 1.0F, 1.0F);