alas, even more trash

This commit is contained in:
Bob 2021-01-31 02:03:14 +01:00
parent 565133eefb
commit 24a787c4bb
43 changed files with 1312 additions and 116 deletions

View File

@ -588,6 +588,7 @@ item.attachment_mask.name=Anfügbare Gasmaske
item.australium_iii.name=Mark III Lebensverlängerer item.australium_iii.name=Mark III Lebensverlängerer
item.australium_iv.name=Mark IV Lebensverlängerer item.australium_iv.name=Mark IV Lebensverlängerer
item.australium_v.name=Mark V Lebensverlängerer item.australium_v.name=Mark V Lebensverlängerer
item.back_tesla.name=Teslarucksack
item.balefire_and_ham.name=Ham and Balefire-Eggs item.balefire_and_ham.name=Ham and Balefire-Eggs
item.balefire_and_steel.name=Balefire-Zeug item.balefire_and_steel.name=Balefire-Zeug
item.balefire_scrambled.name=Rühr-Balefire-Ei item.balefire_scrambled.name=Rühr-Balefire-Ei
@ -1286,11 +1287,15 @@ item.ingot_uranium.name=Uranbarren
item.ingot_uranium_fuel.name=Urankernbrennstoffbarren item.ingot_uranium_fuel.name=Urankernbrennstoffbarren
item.ingot_verticium.name=Verticiumbarren item.ingot_verticium.name=Verticiumbarren
item.ingot_weidanium.name=Weidaniumbarren item.ingot_weidanium.name=Weidaniumbarren
item.insert_du.name=DU-Einlage
item.insert_era.name=Explosive Reaktivpaanzerungseinlage
item.insert_esapi.name=ESAPI-Einlage item.insert_esapi.name=ESAPI-Einlage
item.insert_kevlar.name=Kevlar-Einlage item.insert_kevlar.name=Kevlareinlage
item.insert_sapi.name=SAPI-Einlage item.insert_sapi.name=SAPI-Einlage
item.insert_polonium.name=Poloniumeinlage
item.insert_steel.name=Schwere Stahleinlage item.insert_steel.name=Schwere Stahleinlage
item.insert_xsapi.name=XSAPI-Einlage item.insert_xsapi.name=XSAPI-Einlage
item.insert_yharonite.name=Yharoniteinlage
item.jackt.name=Verdammt stylische Kugeljacke item.jackt.name=Verdammt stylische Kugeljacke
item.jackt2.name=Verdammt stylische Kugeljacke 2: Tokyo Drift item.jackt2.name=Verdammt stylische Kugeljacke 2: Tokyo Drift
item.jetpack_boost.name=Boosterrucksack item.jetpack_boost.name=Boosterrucksack
@ -2134,6 +2139,7 @@ item.weapon_pipe_lead.name=Die Handüberbrückung
item.weapon_pipe_rusty.name=Der Einstellungskorrigierer item.weapon_pipe_rusty.name=Der Einstellungskorrigierer
item.weapon_saw.name=Ärztlich autorisierter Mord item.weapon_saw.name=Ärztlich autorisierter Mord
item.weaponized_starblaster_cell.name=§cManipulierte Sternenblaster-Energiezelle§r item.weaponized_starblaster_cell.name=§cManipulierte Sternenblaster-Energiezelle§r
item.wd40.name=VT-40
item.wire_advanced_alloy.name=Supraleiter item.wire_advanced_alloy.name=Supraleiter
item.wire_aluminium.name=Aluminiumdraht item.wire_aluminium.name=Aluminiumdraht
item.wire_copper.name=Kupferdraht item.wire_copper.name=Kupferdraht
@ -2281,6 +2287,7 @@ tile.brick_dungeon_tile.name=Berzelianitfliese
tile.brick_jungle.name=Enargitziegel tile.brick_jungle.name=Enargitziegel
tile.brick_jungle_circle.name=Mechanistenzirkel tile.brick_jungle_circle.name=Mechanistenzirkel
tile.brick_jungle_cracked.name=Rissige Enargitziegel tile.brick_jungle_cracked.name=Rissige Enargitziegel
tile.brick_jungle_fragile.name=Brüchige Enargitziegel
tile.brick_jungle_glyph.name=Enargit-Glyphenziegel tile.brick_jungle_glyph.name=Enargit-Glyphenziegel
tile.brick_jungle_lava.name=Magmatische Enargitziegel tile.brick_jungle_lava.name=Magmatische Enargitziegel
tile.brick_jungle_mystic.name=Arkane Enargitziegel tile.brick_jungle_mystic.name=Arkane Enargitziegel

View File

@ -588,6 +588,7 @@ item.attachment_mask.name=Gas Mask Attachable
item.australium_iii.name=Mark III Life Extender item.australium_iii.name=Mark III Life Extender
item.australium_iv.name=Mark IV Life Extender item.australium_iv.name=Mark IV Life Extender
item.australium_v.name=Mark V Life Extender item.australium_v.name=Mark V Life Extender
item.back_tesla.name=Back-Mounted Tesla Coil
item.balefire_and_ham.name=Ham and Balefire Eggs item.balefire_and_ham.name=Ham and Balefire Eggs
item.balefire_and_steel.name=Balefire and Steel item.balefire_and_steel.name=Balefire and Steel
item.balefire_scrambled.name=Scrambled Balefire Egg item.balefire_scrambled.name=Scrambled Balefire Egg
@ -1286,11 +1287,15 @@ item.ingot_uranium.name=Uranium Ingot
item.ingot_uranium_fuel.name=Ingot of Uranium Fuel item.ingot_uranium_fuel.name=Ingot of Uranium Fuel
item.ingot_verticium.name=Verticium Ingot item.ingot_verticium.name=Verticium Ingot
item.ingot_weidanium.name=Weidanium Ingot item.ingot_weidanium.name=Weidanium Ingot
item.insert_du.name=DU Insert
item.insert_era.name=Explosive Reactive Armor Insert
item.insert_esapi.name=ESAPI Insert item.insert_esapi.name=ESAPI Insert
item.insert_kevlar.name=Kevlar Insert item.insert_kevlar.name=Kevlar Insert
item.insert_sapi.name=SAPI Insert item.insert_sapi.name=SAPI Insert
item.insert_polonium.name=Polonium Insert
item.insert_steel.name=Heavy Steel Insert item.insert_steel.name=Heavy Steel Insert
item.insert_xsapi.name=XSAPI Insert item.insert_xsapi.name=XSAPI Insert
item.insert_yharonite.name=Yharonite Insert
item.jackt.name=Damn Stylish Ballistic Jacket item.jackt.name=Damn Stylish Ballistic Jacket
item.jackt2.name=Damn Stylish Ballistic Jacket 2: Tokyo Drift item.jackt2.name=Damn Stylish Ballistic Jacket 2: Tokyo Drift
item.jetpack_boost.name=Boostpack item.jetpack_boost.name=Boostpack
@ -2134,6 +2139,7 @@ item.weapon_pipe_lead.name=The Manual Override
item.weapon_pipe_rusty.name=The Attitude Adjuster item.weapon_pipe_rusty.name=The Attitude Adjuster
item.weapon_saw.name=Doctor Assisted Homicide item.weapon_saw.name=Doctor Assisted Homicide
item.weaponized_starblaster_cell.name=§cRigged Star Blaster Energy Cell§r item.weaponized_starblaster_cell.name=§cRigged Star Blaster Energy Cell§r
item.wd40.name=VT-40
item.wire_advanced_alloy.name=Super Conductor item.wire_advanced_alloy.name=Super Conductor
item.wire_aluminium.name=Aluminium Wire item.wire_aluminium.name=Aluminium Wire
item.wire_copper.name=Copper Wire item.wire_copper.name=Copper Wire
@ -2281,6 +2287,7 @@ tile.brick_dungeon_tile.name=Berzelianite Tile
tile.brick_jungle.name=Enargite Bricks tile.brick_jungle.name=Enargite Bricks
tile.brick_jungle_circle.name=Mechanist's Circle tile.brick_jungle_circle.name=Mechanist's Circle
tile.brick_jungle_cracked.name=Cracked Enargite Bricks tile.brick_jungle_cracked.name=Cracked Enargite Bricks
tile.brick_jungle_fragile.name=Brittle Enargite Bricks
tile.brick_jungle_glyph.name=Enargite Glyph Bricks tile.brick_jungle_glyph.name=Enargite Glyph Bricks
tile.brick_jungle_lava.name=Magmatic Enargite Bricks tile.brick_jungle_lava.name=Magmatic Enargite Bricks
tile.brick_jungle_mystic.name=Arcane Enargite Bricks tile.brick_jungle_mystic.name=Arcane Enargite Bricks

View File

@ -0,0 +1,704 @@
# Blender v2.79 (sub 0) OBJ File: 'tesla.blend'
# www.blender.org
o Cube
v 1.999993 2.000000 2.500000
v -2.000007 2.000000 2.500000
v 1.999995 9.999999 2.500000
v -2.000005 10.000001 2.500000
v -2.000007 3.000000 4.500000
v 1.999993 3.000000 4.500000
v -2.000005 9.000001 4.500000
v 1.999995 8.999999 4.500000
v 1.999993 3.000000 2.500000
v -2.000007 3.000000 2.500000
v 1.999995 8.999999 2.500000
v -2.000005 9.000001 2.500000
v -3.000007 3.000002 2.500000
v -3.000005 9.000001 2.500000
v 2.999993 2.999998 2.500000
v 2.999995 8.999999 2.500000
v 1.999993 3.000000 3.500000
v 1.999995 8.999999 3.500000
v -2.000005 9.000001 3.500000
v -2.000007 3.000000 3.500000
v -3.000005 9.000001 3.500000
v -3.000007 3.000002 3.500000
v 2.999993 2.999998 3.500000
v 2.999995 8.999999 3.500000
v 1.999993 4.000000 4.500000
v 1.999995 8.000000 4.500000
v -2.000006 4.000000 4.500000
v -2.000005 8.000001 4.500000
v -3.000006 4.000002 3.500000
v -3.000005 8.000001 3.500000
v 2.999994 3.999998 3.500000
v 2.999995 7.999998 3.500000
v 1.999993 4.000000 3.500000
v 1.999995 8.000000 3.500000
v -2.000006 4.000000 3.500000
v -2.000005 8.000001 3.500000
v -0.000006 4.500000 11.000000
v -1.060668 4.939341 5.000000
v -1.060668 4.939341 11.000000
v -1.500006 6.000000 5.000000
v -1.500006 6.000000 11.000000
v -1.060667 7.060661 5.000000
v -1.060667 7.060661 11.000000
v -0.000005 7.500000 5.000000
v -0.000005 7.500000 11.000000
v 1.060656 7.060659 5.000000
v 1.060656 7.060659 11.000000
v 1.499994 6.000000 5.000000
v 1.499994 6.000000 11.000000
v 1.060655 4.939341 5.000000
v 1.060655 4.939341 11.000000
v -0.000006 4.500000 9.500000
v -0.000007 3.500000 10.500000
v -0.000007 1.500000 10.500000
v -0.000008 0.500000 9.500000
v -0.000008 0.500000 8.500000
v -0.000007 1.500000 7.500000
v -0.000007 3.500000 7.500000
v -0.000006 4.500000 8.500000
v 1.060655 4.939339 9.500000
v 1.767761 4.232231 10.500000
v 3.181973 2.818018 10.500000
v 3.889081 2.110910 9.500000
v 3.889081 2.110910 8.500000
v 3.181973 2.818018 7.500000
v 1.767761 4.232231 7.500000
v 1.060655 4.939339 8.500000
v 1.499994 6.000000 9.500000
v 2.499996 5.999998 10.500000
v 4.499994 5.999998 10.500000
v 5.499994 5.999996 9.500000
v 5.499994 5.999996 8.500000
v 4.499994 5.999998 7.500000
v 2.499996 5.999998 7.500000
v 1.499994 6.000000 8.500000
v 1.060656 7.060661 9.500000
v 1.767764 7.767765 10.500000
v 3.181975 9.181980 10.500000
v 3.889087 9.889085 9.500000
v 3.889087 9.889085 8.500000
v 3.181975 9.181980 7.500000
v 1.767764 7.767765 7.500000
v 1.060656 7.060661 8.500000
v -0.000005 7.500000 9.500000
v -0.000001 8.500000 10.500000
v -0.000004 10.500000 10.500000
v -0.000000 11.500001 9.500000
v -0.000000 11.500001 8.500000
v -0.000004 10.500000 7.500000
v -0.000001 8.500000 7.500000
v -0.000005 7.500000 8.500000
v -1.060663 7.060661 9.500000
v -1.767770 7.767769 10.500000
v -3.181985 9.181982 10.500000
v -3.889088 9.889092 9.500000
v -3.889088 9.889092 8.500000
v -3.181985 9.181982 7.500000
v -1.767770 7.767769 7.500000
v -1.060663 7.060661 8.500000
v -1.500006 6.000000 9.500000
v -2.500006 6.000004 10.500000
v -4.500006 6.000002 10.500000
v -5.500006 6.000008 9.500000
v -5.500006 6.000008 8.500000
v -4.500006 6.000002 7.500000
v -2.500006 6.000004 7.500000
v -1.500006 6.000000 8.500000
v -1.060666 4.939341 9.500000
v -1.767775 4.232235 10.500000
v -3.181987 2.818022 10.500000
v -3.889099 2.110918 9.500000
v -3.889099 2.110918 8.500000
v -3.181987 2.818022 7.500000
v -1.767775 4.232235 7.500000
v -1.060666 4.939341 8.500000
v -0.000007 3.500000 10.500000
v 1.767761 4.232231 10.500000
v 2.499996 5.999998 10.500000
v 1.767764 7.767765 10.500000
v -0.000001 8.500000 10.500000
v -1.767770 7.767769 10.500000
v -2.500006 6.000004 10.500000
v -1.767775 4.232235 10.500000
v -0.000007 3.500000 11.000000
v 1.767761 4.232231 11.000000
v 2.499996 5.999998 11.000000
v 1.767764 7.767765 11.000000
v -0.000001 8.500000 11.000000
v -1.767770 7.767769 11.000000
v -2.500006 6.000004 11.000000
v -1.767775 4.232235 11.000000
v -0.000007 4.000000 4.500000
v 1.414207 4.585787 4.500000
v 1.999994 6.000000 4.500000
v 1.414208 7.414213 4.500000
v -0.000005 8.000000 4.500000
v -1.414219 7.414213 4.500000
v -2.000006 6.000000 4.500000
v -1.414219 4.585787 4.500000
v 1.414207 4.585787 5.000000
v -0.000007 4.000000 5.000000
v 1.999994 6.000000 5.000000
v 1.414208 7.414213 5.000000
v -0.000005 8.000000 5.000000
v -1.414219 7.414213 5.000000
v -2.000006 6.000000 5.000000
v -1.414219 4.585787 5.000000
v -0.000006 6.000000 5.000000
v -0.000006 6.000000 11.000000
v -0.000006 4.500000 5.000000
vt 0.300000 0.476190
vt 0.700000 0.380952
vt 0.700000 0.476190
vt 0.700000 0.000000
vt 0.300000 0.095238
vt 0.300000 -0.000000
vt 0.000000 0.380952
vt 0.100000 0.428571
vt 0.000000 0.428571
vt 1.000000 0.428571
vt 0.900000 0.380952
vt 1.000000 0.380952
vt 0.000000 0.047619
vt 0.100000 0.095238
vt 0.000000 0.095238
vt 1.000000 0.095238
vt 0.900000 0.047619
vt 1.000000 0.047619
vt 0.100000 0.142857
vt 0.100000 0.333333
vt 0.100000 0.380952
vt 0.200000 0.333333
vt 0.200000 0.380952
vt 0.300000 0.333333
vt 0.200000 0.285714
vt 0.200000 0.095238
vt 0.100000 0.047619
vt 0.300000 0.142857
vt 0.200000 0.142857
vt 0.200000 0.190476
vt 0.100000 0.428571
vt 0.300000 0.380952
vt 0.800000 0.380952
vt 0.900000 0.428571
vt 0.900000 0.142857
vt 0.900000 0.095238
vt 0.800000 0.142857
vt 0.800000 0.095238
vt 0.700000 0.142857
vt 0.900000 0.047619
vt 0.700000 0.095238
vt 0.800000 0.190476
vt 0.800000 0.333333
vt 0.800000 0.285714
vt 0.900000 0.333333
vt 0.700000 0.333333
vt 0.800000 0.142857
vt 0.800000 0.333333
vt 0.200000 0.333333
vt 0.200000 0.142857
vt 1.000000 0.714286
vt 0.900000 0.428571
vt 1.000000 0.428571
vt 1.000000 0.714286
vt 0.900000 0.428571
vt 1.000000 0.428571
vt 1.000000 0.714286
vt 0.900000 0.428571
vt 1.000000 0.428571
vt 1.000000 0.714286
vt 0.900000 0.428571
vt 1.000000 0.428571
vt 1.000000 0.714286
vt 0.900000 0.428571
vt 1.000000 0.428571
vt 1.000000 0.714286
vt 0.900000 0.428571
vt 1.000000 0.428571
vt 0.950000 0.785714
vt 0.900000 0.714286
vt 0.900000 0.714286
vt 1.000000 0.428571
vt 1.000000 0.714286
vt 0.900000 0.714286
vt 1.000000 0.428571
vt 1.000000 0.714286
vt 0.300000 0.833333
vt 0.600000 0.928571
vt 0.400000 0.928571
vt 0.400000 0.547619
vt 0.550000 0.476190
vt 0.600000 0.547619
vt 0.300000 0.714286
vt 0.650000 0.642857
vt 0.700000 0.714286
vt 0.700000 0.761905
vt 0.650000 0.833333
vt 0.550000 1.000000
vt 0.450000 1.000000
vt 0.300000 0.642857
vt 0.300000 0.761905
vt 0.300000 0.642857
vt 0.600000 0.547619
vt 0.650000 0.642857
vt 0.300000 0.714286
vt 0.700000 0.761905
vt 0.300000 0.761905
vt 0.300000 0.833333
vt 0.600000 0.928571
vt 0.400000 0.928571
vt 0.450000 0.476190
vt 0.400000 0.547619
vt 0.700000 0.714286
vt 0.650000 0.833333
vt 0.450000 1.000000
vt 0.550000 1.000000
vt 0.300000 0.833333
vt 0.600000 0.928571
vt 0.400000 0.928571
vt 0.450000 0.476190
vt 0.600000 0.547619
vt 0.400000 0.547619
vt 0.300000 0.642857
vt 0.700000 0.714286
vt 0.300000 0.714286
vt 0.700000 0.761905
vt 0.650000 0.833333
vt 0.450000 1.000000
vt 0.550000 1.000000
vt 0.650000 0.642857
vt 0.300000 0.761905
vt 0.450000 0.476190
vt 0.600000 0.547619
vt 0.400000 0.547619
vt 0.300000 0.642857
vt 0.700000 0.714286
vt 0.300000 0.714286
vt 0.300000 0.833333
vt 0.700000 0.761905
vt 0.650000 0.833333
vt 0.450000 1.000000
vt 0.600000 0.928571
vt 0.550000 1.000000
vt 0.650000 0.642857
vt 0.300000 0.761905
vt 0.400000 0.928571
vt 0.300000 0.642857
vt 0.700000 0.714286
vt 0.300000 0.714286
vt 0.300000 0.833333
vt 0.700000 0.761905
vt 0.650000 0.833333
vt 0.450000 1.000000
vt 0.600000 0.928571
vt 0.550000 1.000000
vt 0.600000 0.547619
vt 0.650000 0.642857
vt 0.300000 0.761905
vt 0.400000 0.928571
vt 0.450000 0.476190
vt 0.400000 0.547619
vt 0.450000 1.000000
vt 0.600000 0.928571
vt 0.550000 1.000000
vt 0.300000 0.642857
vt 0.600000 0.547619
vt 0.650000 0.642857
vt 0.300000 0.714286
vt 0.700000 0.761905
vt 0.300000 0.761905
vt 0.300000 0.833333
vt 0.400000 0.928571
vt 0.450000 0.476190
vt 0.400000 0.547619
vt 0.700000 0.714286
vt 0.650000 0.833333
vt 0.300000 0.642857
vt 0.600000 0.547619
vt 0.650000 0.642857
vt 0.300000 0.714286
vt 0.700000 0.761905
vt 0.300000 0.761905
vt 0.300000 0.833333
vt 0.600000 0.928571
vt 0.400000 0.928571
vt 0.450000 0.476190
vt 0.400000 0.547619
vt 0.700000 0.714286
vt 0.650000 0.833333
vt 0.450000 1.000000
vt 0.550000 1.000000
vt 0.600000 0.928571
vt 0.450000 1.000000
vt 0.400000 0.928571
vt 0.600000 0.547619
vt 0.450000 0.476190
vt 0.550000 0.476190
vt 0.300000 0.642857
vt 0.400000 0.547619
vt 0.700000 0.714286
vt 0.650000 0.642857
vt 0.700000 0.761905
vt 0.300000 0.714286
vt 0.300000 0.833333
vt 0.300000 0.761905
vt 0.650000 0.833333
vt 0.200000 0.547619
vt 0.000000 0.571429
vt 0.000000 0.547619
vt 0.200000 0.547619
vt 0.000000 0.571429
vt 0.000000 0.547619
vt 0.200000 0.547619
vt 0.000000 0.571429
vt 0.000000 0.547619
vt 0.200000 0.571429
vt -0.000000 0.547619
vt 0.200000 0.547619
vt 0.200000 0.571429
vt 0.000000 0.547619
vt 0.200000 0.547619
vt 0.200000 0.547619
vt 0.000000 0.571429
vt 0.000000 0.547619
vt 0.200000 0.547619
vt -0.000000 0.571429
vt -0.000000 0.547619
vt 0.200000 0.571429
vt -0.000000 0.547619
vt 0.200000 0.547619
vt 0.000000 0.452381
vt 0.200000 0.452381
vt 0.100000 0.547619
vt 0.200000 0.428571
vt 0.000000 0.452381
vt 0.000000 0.428571
vt 0.200000 0.428571
vt 0.000000 0.452381
vt 0.000000 0.428571
vt 0.200000 0.428571
vt 0.000000 0.452381
vt 0.000000 0.428571
vt 0.200000 0.428571
vt -0.000000 0.452381
vt -0.000000 0.428571
vt 0.200000 0.428571
vt 0.000000 0.428571
vt 0.200000 0.428571
vt -0.000000 0.452381
vt -0.000000 0.428571
vt 0.200000 0.428571
vt 0.000000 0.452381
vt 0.000000 0.428571
vt 0.200000 0.428571
vt 0.000000 0.452381
vt 0.000000 0.428571
vt 0.900000 0.714286
vt 0.200000 0.452381
vt 0.200000 0.452381
vt 0.200000 0.452381
vt 0.200000 0.452381
vt 0.900000 0.714286
vt 0.200000 0.452381
vt 0.200000 0.452381
vt 0.200000 0.452381
vt 0.900000 0.714286
vt 0.900000 0.714286
vt 0.900000 0.714286
vt 0.900000 0.428571
vt 0.100000 0.047619
vt 0.100000 0.095238
vt 0.100000 0.380952
vt 0.900000 0.380952
vt 0.900000 0.095238
vt 0.900000 0.428571
vt 0.900000 0.428571
vt 0.450000 0.476190
vt 0.550000 0.476190
vt 0.550000 0.476190
vt 0.550000 0.476190
vt 0.550000 0.476190
vt 0.550000 0.476190
vt 0.550000 0.476190
vt 0.550000 1.000000
vt 0.200000 0.571429
vt 0.200000 0.571429
vt 0.200000 0.571429
vt -0.000000 0.571429
vt 0.000000 0.571429
vt 0.200000 0.571429
vt 0.200000 0.571429
vt -0.000000 0.571429
vn 0.0000 -0.8944 0.4472
vn 0.0000 0.8944 0.4472
vn -0.0000 -1.0000 0.0000
vn 0.0000 1.0000 0.0000
vn 1.0000 -0.0000 -0.0000
vn 0.0000 0.0000 1.0000
vn -1.0000 0.0000 0.0000
vn -0.7071 0.0000 0.7071
vn 0.7071 -0.0000 0.7071
vn 0.3827 -0.9239 0.0000
vn -0.9239 -0.3827 0.0000
vn -0.9239 0.3827 0.0000
vn -0.3827 0.9239 0.0000
vn 0.3827 0.9239 0.0000
vn 0.9239 0.3827 0.0000
vn -0.3827 -0.9239 0.0000
vn 0.9239 -0.3827 0.0000
vn -0.2811 0.6786 -0.6786
vn 0.2811 -0.6786 -0.6786
vn 0.2811 -0.6786 0.6786
vn -0.2811 0.6786 0.6786
vn 0.0000 0.0000 -1.0000
vn -0.6786 0.2811 -0.6786
vn 0.6786 -0.2811 -0.6786
vn 0.6786 -0.2811 0.6786
vn -0.6786 0.2811 0.6786
vn -0.6786 -0.2811 -0.6786
vn 0.6786 0.2811 -0.6786
vn 0.6786 0.2811 0.6786
vn -0.6786 -0.2811 0.6786
vn -0.2811 -0.6786 -0.6786
vn 0.2811 0.6786 -0.6786
vn 0.2811 0.6786 0.6786
vn -0.2811 -0.6786 0.6786
s off
f 1/1/1 5/2/1 2/3/1
f 4/4/2 8/5/2 3/6/2
f 15/7/3 17/8/3 9/9/3
f 10/10/3 22/11/3 13/12/3
f 11/13/4 24/14/4 16/15/4
f 14/16/4 19/17/4 12/18/4
f 32/19/5 31/20/5 15/7/5
f 23/21/6 33/22/6 17/23/6
f 25/24/5 17/23/5 33/22/5
f 33/22/3 31/20/3 25/25/3
f 18/26/5 3/27/5 8/5/5
f 18/26/5 26/28/5 34/29/5
f 34/29/6 24/14/6 18/26/6
f 32/19/4 34/29/4 26/30/4
f 1/31/5 17/23/5 6/32/5
f 20/33/7 2/34/7 5/2/7
f 30/35/7 14/16/7 13/12/7
f 21/36/6 36/37/6 19/38/6
f 28/39/7 19/38/7 36/37/7
f 4/40/7 19/38/7 7/41/7
f 36/37/4 30/35/4 28/42/4
f 35/43/6 22/11/6 20/33/6
f 35/43/3 27/44/3 29/45/3
f 20/33/7 27/46/7 35/43/7
f 27/46/8 30/47/8 29/48/8
f 26/28/9 31/49/9 32/50/9
f 28/39/6 27/46/6 26/28/6
f 51/51/10 150/52/10 50/53/10
f 39/54/11 40/55/11 38/56/11
f 41/57/12 42/58/12 40/59/12
f 43/60/13 44/61/13 42/62/13
f 45/63/14 46/64/14 44/65/14
f 47/66/15 48/67/15 46/68/15
f 39/54/6 149/69/6 41/70/6
f 39/71/16 150/72/16 37/73/16
f 51/74/17 48/75/17 49/76/17
f 54/77/6 61/78/6 53/79/6
f 58/80/18 67/81/18 66/82/18
f 56/83/19 65/84/19 64/85/19
f 54/77/20 63/86/20 62/87/20
f 53/79/21 60/88/21 52/89/21
f 57/90/22 66/82/22 65/84/22
f 56/83/10 63/86/10 55/91/10
f 65/92/22 74/93/22 73/94/22
f 64/95/17 71/96/17 63/97/17
f 62/98/6 69/99/6 61/100/6
f 67/101/23 74/93/23 66/102/23
f 65/92/24 72/103/24 64/95/24
f 62/98/25 71/96/25 70/104/25
f 60/105/26 69/99/26 68/106/26
f 70/107/6 77/108/6 69/109/6
f 75/110/27 82/111/27 74/112/27
f 73/113/28 80/114/28 72/115/28
f 70/107/29 79/116/29 78/117/29
f 68/118/30 77/108/30 76/119/30
f 73/113/22 82/111/22 81/120/22
f 72/115/15 79/116/15 71/121/15
f 83/122/31 90/123/31 82/124/31
f 81/125/32 88/126/32 80/127/32
f 78/128/33 87/129/33 86/130/33
f 76/131/34 85/132/34 84/133/34
f 81/125/22 90/123/22 89/134/22
f 80/127/14 87/129/14 79/135/14
f 78/128/6 85/132/6 77/136/6
f 89/137/18 96/138/18 88/139/18
f 86/140/21 95/141/21 94/142/21
f 84/143/20 93/144/20 92/145/20
f 89/137/22 98/146/22 97/147/22
f 88/139/13 95/141/13 87/148/13
f 86/140/6 93/144/6 85/149/6
f 91/150/19 98/146/19 90/151/19
f 92/152/25 101/153/25 100/154/25
f 97/155/22 106/156/22 105/157/22
f 96/158/12 103/159/12 95/160/12
f 94/161/6 101/153/6 93/162/6
f 99/163/24 106/156/24 98/164/24
f 97/155/23 104/165/23 96/158/23
f 94/161/26 103/159/26 102/166/26
f 105/167/22 114/168/22 113/169/22
f 104/170/11 111/171/11 103/172/11
f 102/173/6 109/174/6 101/175/6
f 107/176/28 114/168/28 106/177/28
f 105/167/27 112/178/27 104/170/27
f 102/173/30 111/171/30 110/179/30
f 100/180/29 109/174/29 108/181/29
f 53/182/33 108/183/33 109/184/33
f 58/185/32 115/186/32 59/187/32
f 58/185/22 113/188/22 114/189/22
f 56/190/31 113/188/31 57/191/31
f 55/192/16 112/193/16 56/190/16
f 55/192/34 110/194/34 111/195/34
f 53/182/6 110/194/6 54/196/6
f 119/197/15 126/198/15 118/199/15
f 117/200/10 124/201/10 116/202/10
f 116/203/16 131/204/16 123/205/16
f 130/206/12 121/207/12 122/208/12
f 128/209/14 119/210/14 120/211/14
f 118/212/17 125/213/17 117/214/17
f 123/215/11 130/216/11 122/217/11
f 129/218/13 120/219/13 121/220/13
f 140/221/6 142/222/6 148/223/6
f 133/224/10 141/225/10 132/226/10
f 132/227/16 147/228/16 139/229/16
f 138/230/12 145/231/12 137/232/12
f 136/233/14 143/234/14 135/235/14
f 134/236/17 140/221/17 133/237/17
f 139/238/11 146/239/11 138/240/11
f 137/241/13 144/242/13 136/243/13
f 135/244/15 142/245/15 134/246/15
f 41/57/6 149/69/6 43/247/6
f 141/248/6 148/223/6 147/228/6
f 146/249/6 148/223/6 145/231/6
f 148/223/6 142/245/6 143/250/6
f 145/251/6 148/223/6 144/242/6
f 45/63/6 149/69/6 47/252/6
f 148/223/6 141/225/6 140/253/6
f 143/234/6 144/254/6 148/223/6
f 147/255/6 148/223/6 146/239/6
f 49/76/6 149/69/6 51/74/6
f 51/51/6 149/69/6 37/256/6
f 43/60/6 149/69/6 45/257/6
f 149/69/6 39/71/6 37/73/6
f 47/66/6 149/69/6 49/258/6
f 1/1/1 6/32/1 5/2/1
f 4/4/2 7/41/2 8/5/2
f 15/7/3 23/21/3 17/8/3
f 10/10/3 20/259/3 22/11/3
f 11/13/4 18/260/4 24/14/4
f 14/16/4 21/36/4 19/17/4
f 31/20/5 23/21/5 15/7/5
f 15/7/5 16/15/5 32/19/5
f 16/15/5 24/14/5 32/19/5
f 23/21/6 31/20/6 33/22/6
f 25/24/5 6/32/5 17/23/5
f 18/26/5 11/261/5 3/27/5
f 18/26/5 8/5/5 26/28/5
f 34/29/6 32/19/6 24/14/6
f 1/31/5 9/262/5 17/23/5
f 20/33/7 10/263/7 2/34/7
f 13/12/7 22/11/7 29/45/7
f 30/35/7 21/36/7 14/16/7
f 13/12/7 29/45/7 30/35/7
f 21/36/6 30/35/6 36/37/6
f 28/39/7 7/41/7 19/38/7
f 4/40/7 12/264/7 19/38/7
f 35/43/6 29/45/6 22/11/6
f 20/33/7 5/2/7 27/46/7
f 27/46/8 28/39/8 30/47/8
f 26/28/9 25/24/9 31/49/9
f 5/2/6 6/32/6 25/24/6
f 26/28/6 8/5/6 7/41/6
f 5/2/6 25/24/6 27/46/6
f 25/24/6 26/28/6 27/46/6
f 7/41/6 28/39/6 26/28/6
f 51/51/10 37/256/10 150/52/10
f 39/54/11 41/70/11 40/55/11
f 41/57/12 43/247/12 42/58/12
f 43/60/13 45/257/13 44/61/13
f 45/63/14 47/252/14 46/64/14
f 47/66/15 49/258/15 48/67/15
f 39/71/16 38/265/16 150/72/16
f 51/74/17 50/266/17 48/75/17
f 54/77/6 62/87/6 61/78/6
f 58/80/18 59/267/18 67/81/18
f 56/83/19 57/90/19 65/84/19
f 54/77/20 55/91/20 63/86/20
f 53/79/21 61/78/21 60/88/21
f 57/90/22 58/80/22 66/82/22
f 56/83/10 64/85/10 63/86/10
f 65/92/22 66/102/22 74/93/22
f 64/95/17 72/103/17 71/96/17
f 62/98/6 70/104/6 69/99/6
f 67/101/23 75/268/23 74/93/23
f 65/92/24 73/94/24 72/103/24
f 62/98/25 63/97/25 71/96/25
f 60/105/26 61/100/26 69/99/26
f 70/107/6 78/117/6 77/108/6
f 75/110/27 83/269/27 82/111/27
f 73/113/28 81/120/28 80/114/28
f 70/107/29 71/121/29 79/116/29
f 68/118/30 69/109/30 77/108/30
f 73/113/22 74/112/22 82/111/22
f 72/115/15 80/114/15 79/116/15
f 83/122/31 91/270/31 90/123/31
f 81/125/32 89/134/32 88/126/32
f 78/128/33 79/135/33 87/129/33
f 76/131/34 77/136/34 85/132/34
f 81/125/22 82/124/22 90/123/22
f 80/127/14 88/126/14 87/129/14
f 78/128/6 86/130/6 85/132/6
f 89/137/18 97/147/18 96/138/18
f 86/140/21 87/148/21 95/141/21
f 84/143/20 85/149/20 93/144/20
f 89/137/22 90/151/22 98/146/22
f 88/139/13 96/138/13 95/141/13
f 86/140/6 94/142/6 93/144/6
f 91/150/19 99/271/19 98/146/19
f 92/152/25 93/162/25 101/153/25
f 97/155/22 98/164/22 106/156/22
f 96/158/12 104/165/12 103/159/12
f 94/161/6 102/166/6 101/153/6
f 99/163/24 107/272/24 106/156/24
f 97/155/23 105/157/23 104/165/23
f 94/161/26 95/160/26 103/159/26
f 105/167/22 106/177/22 114/168/22
f 104/170/11 112/178/11 111/171/11
f 102/173/6 110/179/6 109/174/6
f 107/176/28 115/273/28 114/168/28
f 105/167/27 113/169/27 112/178/27
f 102/173/30 103/172/30 111/171/30
f 100/180/29 101/175/29 109/174/29
f 53/182/33 52/274/33 108/183/33
f 58/185/32 114/189/32 115/186/32
f 58/185/22 57/191/22 113/188/22
f 56/190/31 112/193/31 113/188/31
f 55/192/16 111/195/16 112/193/16
f 55/192/34 54/196/34 110/194/34
f 53/182/6 109/184/6 110/194/6
f 119/197/15 127/275/15 126/198/15
f 117/200/10 125/276/10 124/201/10
f 116/203/16 124/277/16 131/204/16
f 130/206/12 129/278/12 121/207/12
f 128/209/14 127/279/14 119/210/14
f 118/212/17 126/280/17 125/213/17
f 123/215/11 131/281/11 130/216/11
f 129/218/13 128/282/13 120/219/13
f 133/224/10 140/253/10 141/225/10
f 132/227/16 141/248/16 147/228/16
f 138/230/12 146/249/12 145/231/12
f 136/233/14 144/254/14 143/234/14
f 134/236/17 142/222/17 140/221/17
f 139/238/11 147/255/11 146/239/11
f 137/241/13 145/251/13 144/242/13
f 135/244/15 143/250/15 142/245/15

Binary file not shown.

After

Width:  |  Height:  |  Size: 636 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 739 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 372 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 461 B

After

Width:  |  Height:  |  Size: 444 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 259 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 291 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 361 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 300 B

View File

@ -234,6 +234,7 @@ public class ModBlocks {
public static Block brick_jungle; public static Block brick_jungle;
public static Block brick_jungle_cracked; public static Block brick_jungle_cracked;
public static Block brick_jungle_fragile;
public static Block brick_jungle_lava; public static Block brick_jungle_lava;
public static Block brick_jungle_ooze; public static Block brick_jungle_ooze;
public static Block brick_jungle_mystic; public static Block brick_jungle_mystic;
@ -1089,6 +1090,7 @@ public class ModBlocks {
brick_jungle = new BlockGeneric(Material.rock).setBlockName("brick_jungle").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle"); brick_jungle = new BlockGeneric(Material.rock).setBlockName("brick_jungle").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle");
brick_jungle_cracked = new BlockGeneric(Material.rock).setBlockName("brick_jungle_cracked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_cracked"); brick_jungle_cracked = new BlockGeneric(Material.rock).setBlockName("brick_jungle_cracked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_cracked");
brick_jungle_fragile = new FragileBrick(Material.rock).setBlockName("brick_jungle_fragile").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_fragile");
brick_jungle_lava = new BlockGeneric(Material.rock).setBlockName("brick_jungle_lava").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_lava"); brick_jungle_lava = new BlockGeneric(Material.rock).setBlockName("brick_jungle_lava").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_lava");
brick_jungle_ooze = new BlockOre(Material.rock).setBlockName("brick_jungle_ooze").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_ooze"); brick_jungle_ooze = new BlockOre(Material.rock).setBlockName("brick_jungle_ooze").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_ooze");
brick_jungle_mystic = new BlockOre(Material.rock).setBlockName("brick_jungle_mystic").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_mystic"); brick_jungle_mystic = new BlockOre(Material.rock).setBlockName("brick_jungle_mystic").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(900.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_mystic");
@ -1825,6 +1827,7 @@ public class ModBlocks {
GameRegistry.registerBlock(meteor_battery, ItemBlockLore.class, meteor_battery.getUnlocalizedName()); GameRegistry.registerBlock(meteor_battery, ItemBlockLore.class, meteor_battery.getUnlocalizedName());
GameRegistry.registerBlock(brick_jungle, brick_jungle.getUnlocalizedName()); GameRegistry.registerBlock(brick_jungle, brick_jungle.getUnlocalizedName());
GameRegistry.registerBlock(brick_jungle_cracked, brick_jungle_cracked.getUnlocalizedName()); GameRegistry.registerBlock(brick_jungle_cracked, brick_jungle_cracked.getUnlocalizedName());
GameRegistry.registerBlock(brick_jungle_fragile, brick_jungle_fragile.getUnlocalizedName());
GameRegistry.registerBlock(brick_jungle_lava, brick_jungle_lava.getUnlocalizedName()); GameRegistry.registerBlock(brick_jungle_lava, brick_jungle_lava.getUnlocalizedName());
GameRegistry.registerBlock(brick_jungle_ooze, brick_jungle_ooze.getUnlocalizedName()); GameRegistry.registerBlock(brick_jungle_ooze, brick_jungle_ooze.getUnlocalizedName());
GameRegistry.registerBlock(brick_jungle_mystic, brick_jungle_mystic.getUnlocalizedName()); GameRegistry.registerBlock(brick_jungle_mystic, brick_jungle_mystic.getUnlocalizedName());

View File

@ -7,9 +7,9 @@ import com.hbm.config.BombConfig;
import com.hbm.entity.effect.EntityNukeCloudSmall; import com.hbm.entity.effect.EntityNukeCloudSmall;
import com.hbm.entity.logic.EntityNukeExplosionMK4; import com.hbm.entity.logic.EntityNukeExplosionMK4;
import com.hbm.explosion.ExplosionLarge; import com.hbm.explosion.ExplosionLarge;
import com.hbm.explosion.ExplosionNT;
import com.hbm.interfaces.IBomb; import com.hbm.interfaces.IBomb;
import com.hbm.lib.RefStrings; import com.hbm.lib.RefStrings;
import com.hbm.main.MainRegistry;
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
@ -80,7 +80,8 @@ public class DetCord extends Block implements IBomb {
world.createExplosion(null, x + 0.5, y + 0.5, z + 0.5, 1.5F, true); world.createExplosion(null, x + 0.5, y + 0.5, z + 0.5, 1.5F, true);
} }
if(this == ModBlocks.det_charge) { if(this == ModBlocks.det_charge) {
ExplosionLarge.explode(world, x, y, z, 15, true, false, false); new ExplosionNT(world, null, x + 0.5, y + 0.5, z + 0.5, 15).overrideResolution(64).explode();
ExplosionLarge.spawnParticles(world, x, y, z, ExplosionLarge.cloudFunction(15));
} }
if(this == ModBlocks.det_nuke) { if(this == ModBlocks.det_nuke) {
world.spawnEntityInWorld(EntityNukeExplosionMK4.statFac(world, BombConfig.missileRadius, x + 0.5, y + 0.5, z + 0.5)); world.spawnEntityInWorld(EntityNukeExplosionMK4.statFac(world, BombConfig.missileRadius, x + 0.5, y + 0.5, z + 0.5));

View File

@ -22,59 +22,53 @@ public class BlockCoalOil extends Block {
public BlockCoalOil(Material mat) { public BlockCoalOil(Material mat) {
super(mat); super(mat);
} }
@Override @Override
public void onNeighborBlockChange(World world, int x, int y, int z, Block b) { public void onNeighborBlockChange(World world, int x, int y, int z, Block b) {
for(ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) { for(ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) {
Block n = world.getBlock(x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ); Block n = world.getBlock(x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ);
if(n == ModBlocks.ore_coal_oil_burning || n == ModBlocks.balefire || n == Blocks.fire || n.getMaterial() == Material.lava) { if(n == ModBlocks.ore_coal_oil_burning || n == ModBlocks.balefire || n == Blocks.fire || n.getMaterial() == Material.lava) {
world.scheduleBlockUpdate(x, y, z, this, world.rand.nextInt(20) + 2); world.scheduleBlockUpdate(x, y, z, this, world.rand.nextInt(20) + 2);
} }
} }
} }
@Override @Override
public void updateTick(World world, int x, int y, int z, Random rand) { public void updateTick(World world, int x, int y, int z, Random rand) {
world.setBlock(x, y, z, ModBlocks.ore_coal_oil_burning); world.setBlock(x, y, z, ModBlocks.ore_coal_oil_burning);
} }
@Override @Override
public Item getItemDropped(int i, Random rand, int j) { public Item getItemDropped(int i, Random rand, int j) {
return Items.coal; return Items.coal;
} }
@Override @Override
public int quantityDropped(Random rand) { public int quantityDropped(Random rand) {
return 2 + rand.nextInt(2); return 2 + rand.nextInt(2);
} }
/*public void onBlockDestroyedByPlayer(World world, int x, int y, int z, int meta) {
if(world.rand.nextInt(10) == 0)
world.setBlock(x, y, z, Blocks.fire);
}*/
public void onBlockHarvested(World world, int x, int y, int z, int meta, EntityPlayer player) { public void onBlockHarvested(World world, int x, int y, int z, int meta, EntityPlayer player) {
if(player.getHeldItem() == null)
return;
if(!(player.getHeldItem().getItem() instanceof ItemTool || player.getHeldItem().getItem() instanceof ItemToolAbility))
return;
ItemTool tool = (ItemTool)player.getHeldItem().getItem();
if(tool.func_150913_i() != ToolMaterial.WOOD) {
if(world.rand.nextInt(10) == 0) if(player.getHeldItem() == null)
world.setBlock(x, y, z, Blocks.fire); return;
}
} if(!(player.getHeldItem().getItem() instanceof ItemTool || player.getHeldItem().getItem() instanceof ItemToolAbility))
return;
public void onBlockDestroyedByExplosion(World world, int x, int y, int z, Explosion explosion) {
ItemTool tool = (ItemTool) player.getHeldItem().getItem();
if(tool.func_150913_i() != ToolMaterial.WOOD) {
if(world.rand.nextInt(10) == 0)
world.setBlock(x, y, z, Blocks.fire);
}
}
public void onBlockDestroyedByExplosion(World world, int x, int y, int z, Explosion explosion) {
world.setBlock(x, y, z, Blocks.fire); world.setBlock(x, y, z, Blocks.fire);
} }
} }

View File

@ -0,0 +1,58 @@
package com.hbm.blocks.generic;
import java.util.Random;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.entity.Entity;
import net.minecraft.item.Item;
import net.minecraft.world.World;
import net.minecraftforge.common.util.ForgeDirection;
public class FragileBrick extends Block {
public FragileBrick(Material mat) {
super(mat);
}
@Override
public Item getItemDropped(int i, Random rand, int j) {
return null;
}
@Override
public void updateTick(World world, int x, int y, int z, Random rand) {
if(world.isRemote)
return;
world.func_147480_a(x, y, z, false);
notifyNeighbors(world, x, y, z);
}
@Override
public void onEntityWalking(World world, int x, int y, int z, Entity entity) {
if(world.isRemote)
return;
world.func_147480_a(x, y, z, false);
notifyNeighbors(world, x, y, z);
}
private void notifyNeighbors(World world, int x, int y, int z) {
for(ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) {
Block n = world.getBlock(x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ);
if(n == this) {
world.scheduleBlockUpdate(x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ, this, world.rand.nextInt(4) + 8);
}
}
}
public void breakBlock(World world, int x, int y, int z, Block b, int m) {
notifyNeighbors(world, x, y, z);
}
}

View File

@ -131,6 +131,9 @@ public class ConsumableRecipes {
//Inserts //Inserts
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.insert_steel, 1), new Object[] { "DPD", "PSP", "DPD", 'D', ModItems.ducttape, 'P', "plateIron", 'S', "blockSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.insert_steel, 1), new Object[] { "DPD", "PSP", "DPD", 'D', ModItems.ducttape, 'P', "plateIron", 'S', "blockSteel" }));
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.insert_du, 1), new Object[] { "DPD", "PSP", "DPD", 'D', ModItems.ducttape, 'P', "plateIron", 'S', "blockUranium238" }));
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.insert_polonium, 1), new Object[] { "DPD", "PSP", "DPD", 'D', ModItems.ducttape, 'P', "plateIron", 'S', "blockPolonium" }));
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.insert_era, 1), new Object[] { "DPD", "PSP", "DPD", 'D', ModItems.ducttape, 'P', "plateIron", 'S', ModItems.ingot_semtex }));
GameRegistry.addRecipe(new ItemStack(ModItems.insert_kevlar, 1), new Object[] { "KIK", "IDI", "KIK", 'K', ModItems.plate_kevlar, 'I', ModItems.plate_polymer, 'D', ModItems.ducttape }); GameRegistry.addRecipe(new ItemStack(ModItems.insert_kevlar, 1), new Object[] { "KIK", "IDI", "KIK", 'K', ModItems.plate_kevlar, 'I', ModItems.plate_polymer, 'D', ModItems.ducttape });
GameRegistry.addRecipe(new ItemStack(ModItems.insert_sapi, 1), new Object[] { "PKP", "DPD", "PKP", 'P', ModItems.ingot_polymer, 'K', ModItems.insert_kevlar, 'D', ModItems.ducttape }); GameRegistry.addRecipe(new ItemStack(ModItems.insert_sapi, 1), new Object[] { "PKP", "DPD", "PKP", 'P', ModItems.ingot_polymer, 'K', ModItems.insert_kevlar, 'D', ModItems.ducttape });
GameRegistry.addRecipe(new ItemStack(ModItems.insert_esapi, 1), new Object[] { "PKP", "DSD", "PKP", 'P', ModItems.ingot_polymer, 'K', ModItems.insert_sapi, 'D', ModItems.ducttape, 'S', ModItems.plate_saturnite }); GameRegistry.addRecipe(new ItemStack(ModItems.insert_esapi, 1), new Object[] { "PKP", "DSD", "PKP", 'P', ModItems.ingot_polymer, 'K', ModItems.insert_sapi, 'D', ModItems.ducttape, 'S', ModItems.plate_saturnite });

View File

@ -53,6 +53,11 @@ public class ExplosionNT extends Explosion {
return this; return this;
} }
public ExplosionNT overrideResolution(int res) {
field_77289_h = res;
return this;
}
public void explode() { public void explode() {
doExplosionA(); doExplosionA();
doExplosionB(false); doExplosionB(false);

View File

@ -43,17 +43,17 @@ public class ExplosionNukeSmall {
} else if(size > safe && size < high) { } else if(size > safe && size < high) {
switch(size) { switch(size) {
case 1: new ExplosionNT(world, null, posX, posY, posZ, 10F).addAllAttrib(ExplosionNT.nukeAttribs).explode(); case 1: new ExplosionNT(world, null, posX, posY, posZ, 10F).addAllAttrib(ExplosionNT.nukeAttribs).overrideResolution(32).explode();
ExplosionNukeGeneric.dealDamage(world, posX, posY, posZ, 30); break; ExplosionNukeGeneric.dealDamage(world, posX, posY, posZ, 30); break;
case 2: new ExplosionNT(world, null, posX, posY, posZ, 15F).addAllAttrib(ExplosionNT.nukeAttribs).explode(); case 2: new ExplosionNT(world, null, posX, posY, posZ, 15F).addAllAttrib(ExplosionNT.nukeAttribs).overrideResolution(64).explode();
ExplosionNukeGeneric.dealDamage(world, posX, posY, posZ, 45); break; ExplosionNukeGeneric.dealDamage(world, posX, posY, posZ, 45); break;
case 3: new ExplosionNT(world, null, posX, posY, posZ, 15F).addAllAttrib(ExplosionNT.nukeAttribs).explode(); case 3: new ExplosionNT(world, null, posX, posY, posZ, 20F).addAllAttrib(ExplosionNT.nukeAttribs).overrideResolution(64).explode();
new ExplosionNT(world, null, posX + 7, posY, posZ, 10F).addAllAttrib(ExplosionNT.nukeAttribs).explode(); /*new ExplosionNT(world, null, posX + 7, posY, posZ, 10F).addAllAttrib(ExplosionNT.nukeAttribs).explode();
new ExplosionNT(world, null, posX - 7, posY, posZ, 10F).addAllAttrib(ExplosionNT.nukeAttribs).explode(); new ExplosionNT(world, null, posX - 7, posY, posZ, 10F).addAllAttrib(ExplosionNT.nukeAttribs).explode();
new ExplosionNT(world, null, posX, posY, posZ + 7, 10F).addAllAttrib(ExplosionNT.nukeAttribs).explode(); new ExplosionNT(world, null, posX, posY, posZ + 7, 10F).addAllAttrib(ExplosionNT.nukeAttribs).explode();
new ExplosionNT(world, null, posX, posY, posZ - 7, 10F).addAllAttrib(ExplosionNT.nukeAttribs).explode(); new ExplosionNT(world, null, posX, posY, posZ - 7, 10F).addAllAttrib(ExplosionNT.nukeAttribs).explode();*/
ExplosionNukeGeneric.dealDamage(world, posX, posY, posZ, 55); break; ExplosionNukeGeneric.dealDamage(world, posX, posY, posZ, 55); break;
} }

View File

@ -4,7 +4,6 @@ import java.util.UUID;
import com.hbm.items.armor.ItemArmorMod; import com.hbm.items.armor.ItemArmorMod;
import net.minecraft.item.Item;
import net.minecraft.item.ItemArmor; import net.minecraft.item.ItemArmor;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
@ -79,7 +78,10 @@ public class ArmorModHandler {
ItemArmorMod aMod = (ItemArmorMod)mod.getItem(); ItemArmorMod aMod = (ItemArmorMod)mod.getItem();
int slot = aMod.type; int slot = aMod.type;
mods.setString(MOD_SLOT_KEY + slot, Item.itemRegistry.getNameForObject(mod.getItem())); NBTTagCompound cmp = new NBTTagCompound();
mod.writeToNBT(cmp);
mods.setTag(MOD_SLOT_KEY + slot, cmp);
} }
/** /**
@ -147,11 +149,12 @@ public class ArmorModHandler {
for(int i = 0; i < 8; i++) { for(int i = 0; i < 8; i++) {
String mod = mods.getString(MOD_SLOT_KEY + i); NBTTagCompound cmp = mods.getCompoundTag(MOD_SLOT_KEY + i);
Item item = (Item)Item.itemRegistry.getObject(mod);
if(item != null) ItemStack stack = ItemStack.loadItemStackFromNBT(cmp);
slots[i] = new ItemStack(item);
if(stack != null)
slots[i] = stack;
} }
return slots; return slots;

View File

@ -1794,6 +1794,7 @@ public class ModItems {
public static Item crystal_charred; public static Item crystal_charred;
public static Item attachment_mask; public static Item attachment_mask;
public static Item back_tesla;
public static Item servo_set; public static Item servo_set;
public static Item servo_set_desh; public static Item servo_set_desh;
public static Item pads_rubber; public static Item pads_rubber;
@ -1809,6 +1810,10 @@ public class ModItems {
public static Item insert_esapi; public static Item insert_esapi;
public static Item insert_xsapi; public static Item insert_xsapi;
public static Item insert_steel; public static Item insert_steel;
public static Item insert_du;
public static Item insert_polonium;
public static Item insert_era;
public static Item insert_yharonite;
public static Item armor_polish; public static Item armor_polish;
public static Item bandaid; public static Item bandaid;
public static Item serum; public static Item serum;
@ -1823,6 +1828,7 @@ public class ModItems {
public static Item heart_piece; public static Item heart_piece;
public static Item heart_container; public static Item heart_container;
public static Item heart_booster; public static Item heart_booster;
public static Item wd40;
public static Item hazmat_helmet; public static Item hazmat_helmet;
public static Item hazmat_plate; public static Item hazmat_plate;
@ -2709,6 +2715,7 @@ public class ModItems {
cbt_device = new ItemSyringe().setUnlocalizedName("cbt_device").setMaxStackSize(1).setCreativeTab(null).setTextureName(RefStrings.MODID + ":cbt_device"); cbt_device = new ItemSyringe().setUnlocalizedName("cbt_device").setMaxStackSize(1).setCreativeTab(null).setTextureName(RefStrings.MODID + ":cbt_device");
attachment_mask = new ItemModGasmask().setUnlocalizedName("attachment_mask").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":attachment_mask"); attachment_mask = new ItemModGasmask().setUnlocalizedName("attachment_mask").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":attachment_mask");
back_tesla = new ItemModTesla().setUnlocalizedName("back_tesla").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":back_tesla");
servo_set = new ItemModServos().setUnlocalizedName("servo_set").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":servo_set"); servo_set = new ItemModServos().setUnlocalizedName("servo_set").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":servo_set");
servo_set_desh = new ItemModServos().setUnlocalizedName("servo_set_desh").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":servo_set_desh"); servo_set_desh = new ItemModServos().setUnlocalizedName("servo_set_desh").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":servo_set_desh");
pads_rubber = new ItemModPads(0.5F).setUnlocalizedName("pads_rubber").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":pads_rubber"); pads_rubber = new ItemModPads(0.5F).setUnlocalizedName("pads_rubber").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":pads_rubber");
@ -2719,11 +2726,15 @@ public class ModItems {
cladding_lead = new ItemModCladding(0.2F).setUnlocalizedName("cladding_lead").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":cladding_lead"); cladding_lead = new ItemModCladding(0.2F).setUnlocalizedName("cladding_lead").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":cladding_lead");
cladding_desh = new ItemModCladding(0.4F).setUnlocalizedName("cladding_desh").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":cladding_desh"); cladding_desh = new ItemModCladding(0.4F).setUnlocalizedName("cladding_desh").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":cladding_desh");
cladding_obsidian = new ItemModObsidian().setUnlocalizedName("cladding_obsidian").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":cladding_obsidian"); cladding_obsidian = new ItemModObsidian().setUnlocalizedName("cladding_obsidian").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":cladding_obsidian");
insert_kevlar = new ItemModInsert(1F, 0.9F, 1F, 1F).setUnlocalizedName("insert_kevlar").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_kevlar"); insert_kevlar = new ItemModInsert(1500, 1F, 0.9F, 1F, 1F).setUnlocalizedName("insert_kevlar").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_kevlar");
insert_sapi = new ItemModInsert(1F, 0.85F, 1F, 1F).setUnlocalizedName("insert_sapi").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_sapi"); insert_sapi = new ItemModInsert(1750, 1F, 0.85F, 1F, 1F).setUnlocalizedName("insert_sapi").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_sapi");
insert_esapi = new ItemModInsert(0.95F, 0.8F, 1F, 1F).setUnlocalizedName("insert_esapi").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_esapi"); insert_esapi = new ItemModInsert(2000, 0.95F, 0.8F, 1F, 1F).setUnlocalizedName("insert_esapi").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_esapi");
insert_xsapi = new ItemModInsert(0.9F, 0.75F, 1F, 1F).setUnlocalizedName("insert_xsapi").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_xsapi"); insert_xsapi = new ItemModInsert(2500, 0.9F, 0.75F, 1F, 1F).setUnlocalizedName("insert_xsapi").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_xsapi");
insert_steel = new ItemModInsert(1F, 0.95F, 0.75F, 0.95F).setUnlocalizedName("insert_steel").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_steel"); insert_steel = new ItemModInsert(1000, 1F, 0.95F, 0.75F, 0.95F).setUnlocalizedName("insert_steel").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_steel");
insert_du = new ItemModInsert(1500, 0.9F, 0.85F, 0.5F, 0.9F).setUnlocalizedName("insert_du").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_du");
insert_polonium = new ItemModInsert(500, 0.9F, 1F, 0.95F, 0.9F).setUnlocalizedName("insert_polonium").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_polonium");
insert_era = new ItemModInsert(25, 0.5F, 1F, 0.25F, 1F).setUnlocalizedName("insert_era").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_era");
insert_yharonite = new ItemModInsert(9999, 0.01F, 1F, 1F, 1F).setUnlocalizedName("insert_yharonite").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":insert_yharonite");
armor_polish = new ItemModPolish().setUnlocalizedName("armor_polish").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":armor_polish"); armor_polish = new ItemModPolish().setUnlocalizedName("armor_polish").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":armor_polish");
bandaid = new ItemModBandaid().setUnlocalizedName("bandaid").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":bandaid"); bandaid = new ItemModBandaid().setUnlocalizedName("bandaid").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":bandaid");
serum = new ItemModSerum().setUnlocalizedName("serum").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":serum"); serum = new ItemModSerum().setUnlocalizedName("serum").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":serum");
@ -2738,6 +2749,7 @@ public class ModItems {
heart_piece = new ItemModHealth(5F).setUnlocalizedName("heart_piece").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":heart_piece"); heart_piece = new ItemModHealth(5F).setUnlocalizedName("heart_piece").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":heart_piece");
heart_container = new ItemModHealth(20F).setUnlocalizedName("heart_container").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":heart_container"); heart_container = new ItemModHealth(20F).setUnlocalizedName("heart_container").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":heart_container");
heart_booster = new ItemModHealth(40F).setUnlocalizedName("heart_booster").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":heart_booster"); heart_booster = new ItemModHealth(40F).setUnlocalizedName("heart_booster").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":heart_booster");
wd40 = new ItemModWD40().setUnlocalizedName("wd40").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":wd40");
can_empty = new Item().setUnlocalizedName("can_empty").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":can_empty"); can_empty = new Item().setUnlocalizedName("can_empty").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":can_empty");
can_smart = new ItemEnergy().setUnlocalizedName("can_smart").setContainerItem(ModItems.can_empty).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":can_smart"); can_smart = new ItemEnergy().setUnlocalizedName("can_smart").setContainerItem(ModItems.can_empty).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":can_smart");
@ -4196,10 +4208,10 @@ public class ModItems {
australium_iii = new ArmorAustralium(MainRegistry.aMatAus3, 9, 1).setUnlocalizedName("australium_iii").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":australium_iii"); australium_iii = new ArmorAustralium(MainRegistry.aMatAus3, 9, 1).setUnlocalizedName("australium_iii").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":australium_iii");
jetpack_boost = new JetpackBooster(MainRegistry.aMatSteel, 9, 1, FluidType.BALEFIRE, 32000).setUnlocalizedName("jetpack_boost").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":jetpack_boost"); jetpack_boost = new JetpackBooster(FluidType.BALEFIRE, 32000).setUnlocalizedName("jetpack_boost").setCreativeTab(CreativeTabs.tabCombat).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":jetpack_boost");
jetpack_break = new JetpackBreak(MainRegistry.aMatSteel, 9, 1, FluidType.KEROSENE, 12000).setUnlocalizedName("jetpack_break").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":jetpack_break"); jetpack_break = new JetpackBreak(FluidType.KEROSENE, 12000).setUnlocalizedName("jetpack_break").setCreativeTab(CreativeTabs.tabCombat).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":jetpack_break");
jetpack_fly = new JetpackRegular(MainRegistry.aMatSteel, 9, 1, FluidType.KEROSENE, 12000).setUnlocalizedName("jetpack_fly").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":jetpack_fly"); jetpack_fly = new JetpackRegular(FluidType.KEROSENE, 12000).setUnlocalizedName("jetpack_fly").setCreativeTab(CreativeTabs.tabCombat).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":jetpack_fly");
jetpack_vector = new JetpackVectorized(MainRegistry.aMatSteel, 9, 1, FluidType.KEROSENE, 16000).setUnlocalizedName("jetpack_vector").setMaxStackSize(1).setTextureName(RefStrings.MODID + ":jetpack_vector"); jetpack_vector = new JetpackVectorized(FluidType.KEROSENE, 16000).setUnlocalizedName("jetpack_vector").setCreativeTab(CreativeTabs.tabCombat).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":jetpack_vector");
cape_test = new ArmorModel(MainRegistry.enumArmorMaterialEmerald, 9, 1).setUnlocalizedName("cape_test").setCreativeTab(null).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_test"); cape_test = new ArmorModel(MainRegistry.enumArmorMaterialEmerald, 9, 1).setUnlocalizedName("cape_test").setCreativeTab(null).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_test");
cape_radiation = new ArmorModel(ArmorMaterial.CHAIN, 9, 1).setUnlocalizedName("cape_radiation").setCreativeTab(MainRegistry.consumableTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_radiation"); cape_radiation = new ArmorModel(ArmorMaterial.CHAIN, 9, 1).setUnlocalizedName("cape_radiation").setCreativeTab(MainRegistry.consumableTab).setMaxStackSize(1).setTextureName(RefStrings.MODID + ":cape_radiation");
@ -6146,6 +6158,7 @@ public class ModItems {
//Armor mods //Armor mods
GameRegistry.registerItem(attachment_mask, attachment_mask.getUnlocalizedName()); GameRegistry.registerItem(attachment_mask, attachment_mask.getUnlocalizedName());
GameRegistry.registerItem(back_tesla, back_tesla.getUnlocalizedName());
GameRegistry.registerItem(servo_set, servo_set.getUnlocalizedName()); GameRegistry.registerItem(servo_set, servo_set.getUnlocalizedName());
GameRegistry.registerItem(servo_set_desh, servo_set_desh.getUnlocalizedName()); GameRegistry.registerItem(servo_set_desh, servo_set_desh.getUnlocalizedName());
GameRegistry.registerItem(pads_rubber, pads_rubber.getUnlocalizedName()); GameRegistry.registerItem(pads_rubber, pads_rubber.getUnlocalizedName());
@ -6161,6 +6174,10 @@ public class ModItems {
GameRegistry.registerItem(insert_esapi, insert_esapi.getUnlocalizedName()); GameRegistry.registerItem(insert_esapi, insert_esapi.getUnlocalizedName());
GameRegistry.registerItem(insert_xsapi, insert_xsapi.getUnlocalizedName()); GameRegistry.registerItem(insert_xsapi, insert_xsapi.getUnlocalizedName());
GameRegistry.registerItem(insert_steel, insert_steel.getUnlocalizedName()); GameRegistry.registerItem(insert_steel, insert_steel.getUnlocalizedName());
GameRegistry.registerItem(insert_du, insert_du.getUnlocalizedName());
GameRegistry.registerItem(insert_polonium, insert_polonium.getUnlocalizedName());
GameRegistry.registerItem(insert_era, insert_era.getUnlocalizedName());
GameRegistry.registerItem(insert_yharonite, insert_yharonite.getUnlocalizedName());
GameRegistry.registerItem(armor_polish, armor_polish.getUnlocalizedName()); GameRegistry.registerItem(armor_polish, armor_polish.getUnlocalizedName());
GameRegistry.registerItem(bandaid, bandaid.getUnlocalizedName()); GameRegistry.registerItem(bandaid, bandaid.getUnlocalizedName());
GameRegistry.registerItem(serum, serum.getUnlocalizedName()); GameRegistry.registerItem(serum, serum.getUnlocalizedName());
@ -6175,6 +6192,7 @@ public class ModItems {
GameRegistry.registerItem(heart_piece, heart_piece.getUnlocalizedName()); GameRegistry.registerItem(heart_piece, heart_piece.getUnlocalizedName());
GameRegistry.registerItem(heart_container, heart_container.getUnlocalizedName()); GameRegistry.registerItem(heart_container, heart_container.getUnlocalizedName());
GameRegistry.registerItem(heart_booster, heart_booster.getUnlocalizedName()); GameRegistry.registerItem(heart_booster, heart_booster.getUnlocalizedName());
GameRegistry.registerItem(wd40, wd40.getUnlocalizedName());
//The Gadget //The Gadget
GameRegistry.registerItem(gadget_explosive, gadget_explosive.getUnlocalizedName()); GameRegistry.registerItem(gadget_explosive, gadget_explosive.getUnlocalizedName());

View File

@ -4,8 +4,12 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import com.google.common.collect.Multimap; import com.google.common.collect.Multimap;
import com.hbm.extprop.HbmLivingProps;
import com.hbm.handler.ArmorModHandler; import com.hbm.handler.ArmorModHandler;
import com.hbm.items.ModItems;
import com.hbm.util.ContaminationUtil;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.SharedMonsterAttributes; import net.minecraft.entity.SharedMonsterAttributes;
import net.minecraft.entity.ai.attributes.AttributeModifier; import net.minecraft.entity.ai.attributes.AttributeModifier;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
@ -21,16 +25,17 @@ public class ItemModInsert extends ItemArmorMod {
float explosionMod; float explosionMod;
float speed; float speed;
public ItemModInsert(float damageMod, float projectileMod, float explosionMod, float speed) { public ItemModInsert(int durability, float damageMod, float projectileMod, float explosionMod, float speed) {
super(ArmorModHandler.kevlar, false, true, false, false); super(ArmorModHandler.kevlar, false, true, false, false);
this.damageMod = damageMod; this.damageMod = damageMod;
this.projectileMod = projectileMod; this.projectileMod = projectileMod;
this.explosionMod = explosionMod; this.explosionMod = explosionMod;
this.speed = speed; this.speed = speed;
this.setMaxDamage(durability);
} }
@Override @Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) { public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) {
if(damageMod != 1F) if(damageMod != 1F)
list.add(EnumChatFormatting.RED + "-" + Math.round((1F - damageMod) * 100) + "% damage"); list.add(EnumChatFormatting.RED + "-" + Math.round((1F - damageMod) * 100) + "% damage");
@ -41,8 +46,13 @@ public class ItemModInsert extends ItemArmorMod {
if(speed != 1F) if(speed != 1F)
list.add(EnumChatFormatting.BLUE + "-" + Math.round((1F - speed) * 100) + "% speed"); list.add(EnumChatFormatting.BLUE + "-" + Math.round((1F - speed) * 100) + "% speed");
if(this == ModItems.insert_polonium)
list.add(EnumChatFormatting.DARK_RED + "+100 RAD/s");
list.add((stack.getMaxDamage() - stack.getItemDamage()) + "/" + stack.getMaxDamage() + "HP");
list.add(""); list.add("");
super.addInformation(itemstack, player, list, bool); super.addInformation(stack, player, list, bool);
} }
@Override @Override
@ -58,10 +68,13 @@ public class ItemModInsert extends ItemArmorMod {
desc.add("-" + Math.round((1F - explosionMod) * 100) + "% exp"); desc.add("-" + Math.round((1F - explosionMod) * 100) + "% exp");
if(explosionMod != 1F) if(explosionMod != 1F)
desc.add("-" + Math.round((1F - speed) * 100) + "% speed"); desc.add("-" + Math.round((1F - speed) * 100) + "% speed");
if(this == ModItems.insert_polonium)
desc.add("+100 RAD/s");
String join = String.join(" / ", desc); String join = String.join(" / ", desc);
list.add(EnumChatFormatting.DARK_PURPLE + " " + stack.getDisplayName() + " (" + join + ")"); list.add(EnumChatFormatting.DARK_PURPLE + " " + stack.getDisplayName() + " (" + join + " / " + (stack.getMaxDamage() - stack.getItemDamage()) + "HP)");
} }
@Override @Override
@ -74,6 +87,32 @@ public class ItemModInsert extends ItemArmorMod {
if(event.source.isExplosion()) if(event.source.isExplosion())
event.ammount *= explosionMod; event.ammount *= explosionMod;
ItemStack insert = ArmorModHandler.pryMods(armor)[ArmorModHandler.kevlar];
if(insert == null)
return;
insert.setItemDamage(insert.getItemDamage() + 1);
if(!event.entity.worldObj.isRemote && this == ModItems.insert_era) {
event.entity.worldObj.newExplosion(event.entity, event.entity.posX, event.entity.posY - event.entity.yOffset + event.entity.height * 0.5, event.entity.posZ, 0.05F, false, false);
}
if(insert.getItemDamage() > insert.getMaxDamage()) {
ArmorModHandler.removeMod(armor, ArmorModHandler.kevlar);
} else {
ArmorModHandler.applyMod(armor, insert);
}
}
@Override
public void modUpdate(EntityLivingBase entity, ItemStack armor) {
if(!entity.worldObj.isRemote && this == ModItems.insert_polonium) {
//HbmLivingProps.incrementRadiation(entity, 5);
ContaminationUtil.applyRadDirect(entity, 20);
}
} }
@Override @Override

View File

@ -2,10 +2,13 @@ package com.hbm.items.armor;
import java.util.List; import java.util.List;
import com.google.common.collect.Multimap;
import com.hbm.handler.ArmorModHandler; import com.hbm.handler.ArmorModHandler;
import com.hbm.items.ModItems; import com.hbm.items.ModItems;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.SharedMonsterAttributes;
import net.minecraft.entity.ai.attributes.AttributeModifier;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemArmor; import net.minecraft.item.ItemArmor;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
@ -23,12 +26,12 @@ public class ItemModServos extends ItemArmorMod {
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) { public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) {
if(this == ModItems.servo_set) { if(this == ModItems.servo_set) {
list.add(EnumChatFormatting.DARK_PURPLE + "Chestplate: Haste I / Damage II"); list.add(EnumChatFormatting.DARK_PURPLE + "Chestplate: Haste I / Damage +50%");
list.add(EnumChatFormatting.DARK_PURPLE + "Leggings: Speed I / Jump II"); list.add(EnumChatFormatting.DARK_PURPLE + "Leggings: Speed +25% / Jump II");
} }
if(this == ModItems.servo_set_desh) { if(this == ModItems.servo_set_desh) {
list.add(EnumChatFormatting.DARK_PURPLE + "Chestplate: Haste III / Damage III"); list.add(EnumChatFormatting.DARK_PURPLE + "Chestplate: Haste III / Damage +150%");
list.add(EnumChatFormatting.DARK_PURPLE + "Leggings: Speed II / Jump III"); list.add(EnumChatFormatting.DARK_PURPLE + "Leggings: Speed +50% / Jump III");
} }
list.add(""); list.add("");
@ -43,20 +46,20 @@ public class ItemModServos extends ItemArmorMod {
if(item.armorType == 1) { if(item.armorType == 1) {
if(this == ModItems.servo_set) { if(this == ModItems.servo_set) {
list.add(EnumChatFormatting.DARK_PURPLE + " " + stack.getDisplayName() + " (Haste I / Damage II)"); list.add(EnumChatFormatting.DARK_PURPLE + " " + stack.getDisplayName() + " (Haste I / Damage +50%)");
} }
if(this == ModItems.servo_set_desh) { if(this == ModItems.servo_set_desh) {
list.add(EnumChatFormatting.DARK_PURPLE + " " + stack.getDisplayName() + " (Haste III / Damage III)"); list.add(EnumChatFormatting.DARK_PURPLE + " " + stack.getDisplayName() + " (Haste III / Damage +150%)");
} }
} }
if(item.armorType == 2) { if(item.armorType == 2) {
if(this == ModItems.servo_set) { if(this == ModItems.servo_set) {
list.add(EnumChatFormatting.DARK_PURPLE + " " + stack.getDisplayName() + " (Speed I / Jump II)"); list.add(EnumChatFormatting.DARK_PURPLE + " " + stack.getDisplayName() + " (Speed +25% / Jump II)");
} }
if(this == ModItems.servo_set_desh) { if(this == ModItems.servo_set_desh) {
list.add(EnumChatFormatting.DARK_PURPLE + " " + stack.getDisplayName() + " (Speed II / Jump III)"); list.add(EnumChatFormatting.DARK_PURPLE + " " + stack.getDisplayName() + " (Speed +50% / Jump III)");
} }
} }
} }
@ -69,25 +72,49 @@ public class ItemModServos extends ItemArmorMod {
if(this == ModItems.servo_set) { if(this == ModItems.servo_set) {
entity.addPotionEffect(new PotionEffect(Potion.digSpeed.id, 60, 0)); entity.addPotionEffect(new PotionEffect(Potion.digSpeed.id, 60, 0));
entity.addPotionEffect(new PotionEffect(Potion.damageBoost.id, 60, 1));
} }
if(this == ModItems.servo_set_desh) { if(this == ModItems.servo_set_desh) {
entity.addPotionEffect(new PotionEffect(Potion.digSpeed.id, 60, 2)); entity.addPotionEffect(new PotionEffect(Potion.digSpeed.id, 60, 2));
entity.addPotionEffect(new PotionEffect(Potion.damageBoost.id, 60, 2));
} }
} }
if(item.armorType == 2) { if(item.armorType == 2) {
if(this == ModItems.servo_set) { if(this == ModItems.servo_set) {
entity.addPotionEffect(new PotionEffect(Potion.moveSpeed.id, 60, 0));
entity.addPotionEffect(new PotionEffect(Potion.jump.id, 60, 1)); entity.addPotionEffect(new PotionEffect(Potion.jump.id, 60, 1));
} }
if(this == ModItems.servo_set_desh) { if(this == ModItems.servo_set_desh) {
entity.addPotionEffect(new PotionEffect(Potion.moveSpeed.id, 60, 1));
entity.addPotionEffect(new PotionEffect(Potion.jump.id, 60, 2)); entity.addPotionEffect(new PotionEffect(Potion.jump.id, 60, 2));
} }
} }
} }
@Override
public Multimap getModifiers(ItemStack armor) {
Multimap multimap = super.getItemAttributeModifiers();
ItemArmor item = (ItemArmor)armor.getItem();
if(item.armorType == 1) {
if(this == ModItems.servo_set)
multimap.put(SharedMonsterAttributes.attackDamage.getAttributeUnlocalizedName(),
new AttributeModifier(ArmorModHandler.UUIDs[((ItemArmor)armor.getItem()).armorType], "NTM Armor Mod Servos", 0.5, 2));
if(this == ModItems.servo_set_desh)
multimap.put(SharedMonsterAttributes.attackDamage.getAttributeUnlocalizedName(),
new AttributeModifier(ArmorModHandler.UUIDs[((ItemArmor)armor.getItem()).armorType], "NTM Armor Mod Servos", 1.5, 2));
}
if(item.armorType == 2) {
if(this == ModItems.servo_set)
multimap.put(SharedMonsterAttributes.movementSpeed.getAttributeUnlocalizedName(),
new AttributeModifier(ArmorModHandler.UUIDs[((ItemArmor)armor.getItem()).armorType], "NTM Armor Mod Servos", 0.25, 2));
if(this == ModItems.servo_set_desh)
multimap.put(SharedMonsterAttributes.movementSpeed.getAttributeUnlocalizedName(),
new AttributeModifier(ArmorModHandler.UUIDs[((ItemArmor)armor.getItem()).armorType], "NTM Armor Mod Servos", 0.5, 2));
}
return multimap;
}
} }

View File

@ -0,0 +1,97 @@
package com.hbm.items.armor;
import java.util.ArrayList;
import java.util.List;
import org.lwjgl.opengl.GL11;
import com.hbm.handler.ArmorModHandler;
import com.hbm.render.model.ModelBackTesla;
import com.hbm.render.util.BeamPronter;
import com.hbm.render.util.BeamPronter.EnumBeamType;
import com.hbm.render.util.BeamPronter.EnumWaveType;
import com.hbm.tileentity.machine.TileEntityTesla;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.ModelBiped;
import net.minecraft.client.renderer.entity.RenderPlayer;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.MathHelper;
import net.minecraft.util.Vec3;
import net.minecraftforge.client.event.RenderPlayerEvent;
public class ItemModTesla extends ItemArmorMod {
private ModelBackTesla modelTesla;
public List<double[]> targets = new ArrayList();
public ItemModTesla() {
super(ArmorModHandler.plate_only, false, true, false, false);
}
@Override
public void modUpdate(EntityLivingBase entity, ItemStack armor) {
if(!entity.worldObj.isRemote && entity instanceof EntityPlayer && armor.getItem() instanceof ArmorFSBPowered && ArmorFSBPowered.hasFSBArmor((EntityPlayer)entity)) {
targets = TileEntityTesla.zap(entity.worldObj, entity.posX, entity.posY + 1.25, entity.posZ, 5, entity);
if(targets != null && !targets.isEmpty() && entity.getRNG().nextInt(5) == 0) {
armor.damageItem(1, entity);
}
}
}
@Override
@SideOnly(Side.CLIENT)
public void modRender(RenderPlayerEvent.SetArmorModel event, ItemStack armor) {
if(this.modelTesla == null) {
this.modelTesla = new ModelBackTesla();
}
RenderPlayer renderer = event.renderer;
ModelBiped model = renderer.modelArmor;
EntityPlayer player = event.entityPlayer;
//EntityPlayer me = Minecraft.getMinecraft().thePlayer;
modelTesla.isSneak = model.isSneak;
float interp = event.partialRenderTick;
float yawHead = player.prevRotationYawHead + (player.rotationYawHead - player.prevRotationYawHead) * interp;
float yawOffset = player.prevRenderYawOffset + (player.renderYawOffset - player.prevRenderYawOffset) * interp;
float yaw = yawHead - yawOffset;
float yawWrapped = MathHelper.wrapAngleTo180_float(yawHead - yawOffset);
float pitch = player.rotationPitch;
modelTesla.render(event.entityPlayer, 0.0F, 0.0F, yawWrapped, yaw, pitch, 0.0625F);
/*GL11.glPushMatrix();
GL11.glRotated(yawOffset, 0, -1, 0);
Vec3 offset = Vec3.createVectorHelper(0, 0, -0.5);
offset.rotateAroundY((float)Math.toRadians(yawOffset));
double sx = player.posX + offset.xCoord;
double sy = player.posY - 0.25;
double sz = player.posZ + offset.zCoord;
double x = me.posX - sx;
double y = me.posY - sy;
double z = me.posZ - sz;
GL11.glTranslated(x, y, z);
for(double[] target : targets) {
double length = Math.sqrt(Math.pow(target[0] - sx, 2) + Math.pow(target[1] - sy, 2) + Math.pow(target[2] - sz, 2));
BeamPronter.prontBeam(Vec3.createVectorHelper((target[0] - sx + offset.xCoord * 1.5), target[1] - sy, -(target[2] - sz + offset.zCoord * 1.5)), EnumWaveType.RANDOM, EnumBeamType.SOLID, 0x404040, 0x404040, (int) (player.worldObj.getTotalWorldTime() % 1000 + 1), (int) (length * 5), 0.125F, 2, 0.03125F);
}
GL11.glPopMatrix();*/
}
}

View File

@ -0,0 +1,77 @@
package com.hbm.items.armor;
import java.util.List;
import com.google.common.collect.Multimap;
import com.hbm.handler.ArmorModHandler;
import com.hbm.main.MainRegistry;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.SharedMonsterAttributes;
import net.minecraft.entity.ai.attributes.AttributeModifier;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemArmor;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumChatFormatting;
import net.minecraftforge.event.entity.living.LivingHurtEvent;
public class ItemModWD40 extends ItemArmorMod {
public ItemModWD40() {
super(ArmorModHandler.extra, true, true, true, true);
}
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) {
String color = "" + (System.currentTimeMillis() % 1000 < 500 ? EnumChatFormatting.BLUE : EnumChatFormatting.YELLOW);
list.add(color + "Highly reduces damage taken by armor, +2 HP");
list.add("");
super.addInformation(itemstack, player, list, bool);
}
@Override
public void addDesc(List list, ItemStack stack, ItemStack armor) {
String color = "" + (System.currentTimeMillis() % 1000 < 500 ? EnumChatFormatting.BLUE : EnumChatFormatting.YELLOW);
list.add(color + " " + stack.getDisplayName() + " (-80% armor wear / +2 HP)");
}
@Override
public void modDamage(LivingHurtEvent event, ItemStack armor) {
if(!event.entityLiving.worldObj.isRemote && armor.getItemDamage() > 0 && event.entityLiving.getRNG().nextInt(5) != 0) {
armor.setItemDamage(armor.getItemDamage() - 1);
}
}
@Override
public Multimap getModifiers(ItemStack armor) {
Multimap multimap = super.getItemAttributeModifiers();
multimap.put(SharedMonsterAttributes.maxHealth.getAttributeUnlocalizedName(),
new AttributeModifier(ArmorModHandler.UUIDs[((ItemArmor)armor.getItem()).armorType], "NTM Armor Mod Health", 4, 0));
return multimap;
}
@Override
public void modUpdate(EntityLivingBase entity, ItemStack armor) {
if(entity.worldObj.isRemote && entity.hurtTime > 0) {
NBTTagCompound data = new NBTTagCompound();
data.setString("type", "vanillaExt");
data.setString("mode", "reddust");
data.setDouble("posX", entity.posX + (entity.getRNG().nextDouble() - 0.5) * entity.width * 2);
data.setDouble("posY", entity.posY - entity.yOffset + entity.getRNG().nextDouble() * entity.height);
data.setDouble("posZ", entity.posZ + (entity.getRNG().nextDouble() - 0.5) * entity.width * 2);
data.setDouble("mX", 0.01);
data.setDouble("mY", 0.5);
data.setDouble("mZ", 0.8);
MainRegistry.proxy.effectNT(data);
}
}
}

View File

@ -2,6 +2,7 @@ package com.hbm.items.armor;
import java.util.List; import java.util.List;
import com.hbm.handler.ArmorModHandler;
import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.handler.FluidTypeHandler.FluidType;
import com.hbm.interfaces.IPartiallyFillable; import com.hbm.interfaces.IPartiallyFillable;
import com.hbm.render.model.ModelJetPack; import com.hbm.render.model.ModelJetPack;
@ -9,29 +10,87 @@ import com.hbm.util.I18nUtil;
import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly; import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.Minecraft;
import net.minecraft.client.model.ModelBiped; import net.minecraft.client.model.ModelBiped;
import net.minecraft.client.renderer.entity.RenderPlayer;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemArmor;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.MathHelper;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.event.RenderPlayerEvent;
public abstract class JetpackBase extends ItemArmor implements IPartiallyFillable { public abstract class JetpackBase extends ItemArmorMod implements IPartiallyFillable {
private ModelJetPack model; private ModelJetPack model;
public FluidType fuel; public FluidType fuel;
public int maxFuel; public int maxFuel;
public JetpackBase(ArmorMaterial mat, int i, int j, FluidType fuel, int maxFuel) { public JetpackBase(FluidType fuel, int maxFuel) {
super(mat, i, j); super(ArmorModHandler.plate_only, false, true, false, false);
this.fuel = fuel; this.fuel = fuel;
this.maxFuel = maxFuel; this.maxFuel = maxFuel;
} }
@Override @Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) { public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) {
list.add(I18nUtil.resolveKey(fuel.getUnlocalizedName()) + ": " + this.getFuel(itemstack) + "mB / " + this.maxFuel + "mB"); list.add(EnumChatFormatting.LIGHT_PURPLE + I18nUtil.resolveKey(fuel.getUnlocalizedName()) + ": " + this.getFuel(itemstack) + "mB / " + this.maxFuel + "mB");
list.add("");
super.addInformation(itemstack, player, list, bool);
list.add(EnumChatFormatting.GOLD + "Can be worn on its own!");
}
@Override
public void addDesc(List list, ItemStack stack, ItemStack armor) {
ItemStack jetpack = ArmorModHandler.pryMods(armor)[ArmorModHandler.plate_only];
if(jetpack == null)
return;
list.add(EnumChatFormatting.RED + " " + stack.getDisplayName() + " (" + I18nUtil.resolveKey(fuel.getUnlocalizedName()) + ": " + this.getFuel(jetpack) + "mB / " + this.maxFuel + "mB");
}
@Override
public void modUpdate(EntityLivingBase entity, ItemStack armor) {
if(!(entity instanceof EntityPlayer))
return;
ItemStack jetpack = ArmorModHandler.pryMods(armor)[ArmorModHandler.plate_only];
if(jetpack == null)
return;
onArmorTick(entity.worldObj, (EntityPlayer)entity, jetpack);
ArmorModHandler.applyMod(armor, jetpack);
}
@Override
@SideOnly(Side.CLIENT)
public void modRender(RenderPlayerEvent.SetArmorModel event, ItemStack armor) {
ModelBiped modelJetpack = getArmorModel(event.entityLiving, null, 1);
RenderPlayer renderer = event.renderer;
ModelBiped model = renderer.modelArmor;
EntityPlayer player = event.entityPlayer;
modelJetpack.isSneak = model.isSneak;
float interp = event.partialRenderTick;
float yawHead = player.prevRotationYawHead + (player.rotationYawHead - player.prevRotationYawHead) * interp;
float yawOffset = player.prevRenderYawOffset + (player.renderYawOffset - player.prevRenderYawOffset) * interp;
float yaw = yawHead - yawOffset;
float yawWrapped = MathHelper.wrapAngleTo180_float(yawHead - yawOffset);
float pitch = player.rotationPitch;
Minecraft.getMinecraft().renderEngine.bindTexture(new ResourceLocation(this.getArmorTexture(armor, event.entity, 1, null)));
modelJetpack.render(event.entityPlayer, 0.0F, 0.0F, yawWrapped, yaw, pitch, 0.0625F);
} }
@Override @Override

View File

@ -22,8 +22,8 @@ import net.minecraft.world.World;
public class JetpackBooster extends JetpackBase { public class JetpackBooster extends JetpackBase {
public JetpackBooster(ArmorMaterial mat, int i, int j, FluidType fuel, int maxFuel) { public JetpackBooster(FluidType fuel, int maxFuel) {
super(mat, i, j, fuel, maxFuel); super(fuel, maxFuel);
} }
@Override @Override
@ -86,7 +86,6 @@ public class JetpackBooster extends JetpackBase {
list.add("High-powered vectorized jetpack."); list.add("High-powered vectorized jetpack.");
list.add("Highly increased fuel consumption."); list.add("Highly increased fuel consumption.");
list.add("");
super.addInformation(stack, player, list, ext); super.addInformation(stack, player, list, ext);
} }

View File

@ -23,8 +23,8 @@ public class JetpackBreak extends JetpackBase {
public static int maxFuel = 1200; public static int maxFuel = 1200;
public JetpackBreak(ArmorMaterial mat, int i, int j, FluidType fuel, int maxFuel) { public JetpackBreak(FluidType fuel, int maxFuel) {
super(mat, i, j, fuel, maxFuel); super(fuel, maxFuel);
} }
@Override @Override
@ -96,7 +96,6 @@ public class JetpackBreak extends JetpackBase {
list.add("Regular jetpack that will automatically hover mid-air."); list.add("Regular jetpack that will automatically hover mid-air.");
list.add("Sneaking will stop hover mode."); list.add("Sneaking will stop hover mode.");
list.add("Hover mode will consume less fuel and increase air-mobility."); list.add("Hover mode will consume less fuel and increase air-mobility.");
list.add("");
super.addInformation(stack, player, list, ext); super.addInformation(stack, player, list, ext);
} }

View File

@ -21,8 +21,8 @@ import net.minecraft.world.World;
public class JetpackRegular extends JetpackBase { public class JetpackRegular extends JetpackBase {
public JetpackRegular(ArmorMaterial mat, int i, int j, FluidType fuel, int maxFuel) { public JetpackRegular(FluidType fuel, int maxFuel) {
super(mat, i, j, fuel, maxFuel); super(fuel, maxFuel);
} }
@Override @Override
@ -73,7 +73,6 @@ public class JetpackRegular extends JetpackBase {
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) { public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean ext) {
list.add("Regular jetpack for simple upwards momentum."); list.add("Regular jetpack for simple upwards momentum.");
list.add("");
super.addInformation(stack, player, list, ext); super.addInformation(stack, player, list, ext);
} }

View File

@ -24,8 +24,8 @@ import net.minecraft.world.World;
public class JetpackVectorized extends JetpackBase { public class JetpackVectorized extends JetpackBase {
public JetpackVectorized(ArmorMaterial mat, int i, int j, FluidType fuel, int maxFuel) { public JetpackVectorized(FluidType fuel, int maxFuel) {
super(mat, i, j, fuel, maxFuel); super(fuel, maxFuel);
} }
@Override @Override
@ -88,7 +88,6 @@ public class JetpackVectorized extends JetpackBase {
list.add("High-mobility jetpack."); list.add("High-mobility jetpack.");
list.add("Higher fuel consumption."); list.add("Higher fuel consumption.");
list.add("");
super.addInformation(stack, player, list, ext); super.addInformation(stack, player, list, ext);
} }

View File

@ -38,13 +38,13 @@ public class ItemWandD extends Item {
MainRegistry.proxy.effectNT(data);*/ MainRegistry.proxy.effectNT(data);*/
new Spaceship().generate_r0(world, world.rand, x - 4, y, z - 8); //new Spaceship().generate_r0(world, world.rand, x - 4, y, z - 8);
//new Ruin001().generate_r0(world, world.rand, x, y - 8, z); //new Ruin001().generate_r0(world, world.rand, x, y - 8, z);
/*CellularDungeonFactory.jungle.generate(world, x, y, z, world.rand); CellularDungeonFactory.jungle.generate(world, x, y, z, world.rand);
CellularDungeonFactory.jungle.generate(world, x, y + 4, z, world.rand); //CellularDungeonFactory.jungle.generate(world, x, y + 4, z, world.rand);
CellularDungeonFactory.jungle.generate(world, x, y + 8, z, world.rand);*/ //CellularDungeonFactory.jungle.generate(world, x, y + 8, z, world.rand);
//new ArcticVault().trySpawn(world, x, y, z); //new ArcticVault().trySpawn(world, x, y, z);

View File

@ -421,8 +421,8 @@ public class CraftingManager {
GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_trixite), new Object[] { " A ", "PTP", "PSP", 'A', ModItems.wire_aluminium, 'P', "plateAluminum", 'S', ModItems.powder_power, 'T', ModItems.crystal_trixite })); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_trixite), new Object[] { " A ", "PTP", "PSP", 'A', ModItems.wire_aluminium, 'P', "plateAluminum", 'S', ModItems.powder_power, 'T', ModItems.crystal_trixite }));
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", "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" })); 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" }));
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hev_battery, 4), new Object[] { " W ", "IEI", "ICI", 'W', ModItems.wire_gold, 'I', ModItems.plate_polymer, 'E', ModItems.powder_power, 'C', "dustCobalt" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hev_battery, 4), new Object[] { " W ", "IEI", "ICI", 'W', ModItems.wire_gold, 'I', ModItems.plate_polymer, 'E', Items.redstone, 'C', "dustCobalt" }));
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hev_battery, 4), new Object[] { " W ", "ICI", "IEI", 'W', ModItems.wire_gold, 'I', ModItems.plate_polymer, 'E', ModItems.powder_power, 'C', "dustCobalt" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.hev_battery, 4), new Object[] { " W ", "ICI", "IEI", 'W', ModItems.wire_gold, 'I', ModItems.plate_polymer, 'E', Items.redstone, 'C', "dustCobalt" }));
GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_red_cell), new Object[] { "WBW", "PBP", "WBW", 'W', ModItems.wire_aluminium, 'P', "plateAluminum", 'B', ItemBattery.getEmptyBattery(ModItems.battery_generic) })); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_red_cell), new Object[] { "WBW", "PBP", "WBW", 'W', ModItems.wire_aluminium, 'P', "plateAluminum", 'B', ItemBattery.getEmptyBattery(ModItems.battery_generic) }));
GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_advanced_cell), new Object[] { "WBW", "PBP", "WBW", 'W', ModItems.wire_red_copper, 'P', "plateCopper", 'B', ItemBattery.getEmptyBattery(ModItems.battery_advanced) })); GameRegistry.addRecipe(new ShapedOreRecipe(ItemBattery.getEmptyBattery(ModItems.battery_advanced_cell), new Object[] { "WBW", "PBP", "WBW", 'W', ModItems.wire_red_copper, 'P', "plateCopper", 'B', ItemBattery.getEmptyBattery(ModItems.battery_advanced) }));

View File

@ -11,8 +11,10 @@ import net.minecraft.item.Item.ToolMaterial;
import net.minecraft.item.ItemArmor.ArmorMaterial; import net.minecraft.item.ItemArmor.ArmorMaterial;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.stats.Achievement; import net.minecraft.stats.Achievement;
import net.minecraft.util.WeightedRandomChestContent;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.common.AchievementPage; import net.minecraftforge.common.AchievementPage;
import net.minecraftforge.common.ChestGenHooks;
import net.minecraftforge.common.ForgeChunkManager; import net.minecraftforge.common.ForgeChunkManager;
import net.minecraftforge.common.ForgeChunkManager.LoadingCallback; import net.minecraftforge.common.ForgeChunkManager.LoadingCallback;
import net.minecraftforge.common.ForgeChunkManager.Ticket; import net.minecraftforge.common.ForgeChunkManager.Ticket;
@ -259,6 +261,14 @@ public class MainRegistry {
enumToolMaterialBottleOpener.setRepairItem(new ItemStack(ModItems.plate_steel)); enumToolMaterialBottleOpener.setRepairItem(new ItemStack(ModItems.plate_steel));
tMatDesh.setRepairItem(new ItemStack(ModItems.ingot_desh)); tMatDesh.setRepairItem(new ItemStack(ModItems.ingot_desh));
ChestGenHooks.addItem(ChestGenHooks.VILLAGE_BLACKSMITH, new WeightedRandomChestContent(new ItemStack(ModItems.armor_polish), 1, 1, 3));
ChestGenHooks.addItem(ChestGenHooks.VILLAGE_BLACKSMITH, new WeightedRandomChestContent(new ItemStack(ModItems.bathwater), 1, 1, 1));
ChestGenHooks.addItem(ChestGenHooks.MINESHAFT_CORRIDOR, new WeightedRandomChestContent(new ItemStack(ModItems.bathwater), 1, 1, 1));
ChestGenHooks.addItem(ChestGenHooks.MINESHAFT_CORRIDOR, new WeightedRandomChestContent(new ItemStack(ModItems.serum), 1, 1, 5));
ChestGenHooks.addItem(ChestGenHooks.DUNGEON_CHEST, new WeightedRandomChestContent(new ItemStack(ModItems.heart_piece), 1, 1, 1));
ChestGenHooks.addItem(ChestGenHooks.PYRAMID_DESERT_CHEST, new WeightedRandomChestContent(new ItemStack(ModItems.heart_piece), 1, 1, 1));
ChestGenHooks.addItem(ChestGenHooks.PYRAMID_JUNGLE_CHEST, new WeightedRandomChestContent(new ItemStack(ModItems.heart_piece), 1, 1, 1));
NetworkRegistry.INSTANCE.registerGuiHandler(instance, new GUIHandler()); NetworkRegistry.INSTANCE.registerGuiHandler(instance, new GUIHandler());
GameRegistry.registerTileEntity(TileEntityTestBombAdvanced.class, "tilentity_testbombadvanced"); GameRegistry.registerTileEntity(TileEntityTestBombAdvanced.class, "tilentity_testbombadvanced");
GameRegistry.registerTileEntity(TileEntityDiFurnace.class, "tilentity_diFurnace"); GameRegistry.registerTileEntity(TileEntityDiFurnace.class, "tilentity_diFurnace");

View File

@ -178,10 +178,17 @@ public class ModEventHandler
if(!event.entityLiving.worldObj.isRemote) { if(!event.entityLiving.worldObj.isRemote) {
if(event.entityLiving instanceof EntitySpider && event.source instanceof EntityDamageSource && if(event.source instanceof EntityDamageSource && ((EntityDamageSource)event.source).getEntity() instanceof EntityPlayer) {
((EntityDamageSource)event.source).getEntity() instanceof EntityPlayer && event.entityLiving.getRNG().nextInt(500) == 0) {
event.entityLiving.dropItem(ModItems.spider_milk, 1); if(event.entityLiving instanceof EntitySpider && event.entityLiving.getRNG().nextInt(500) == 0) {
event.entityLiving.dropItem(ModItems.spider_milk, 1);
}
if(event.entityLiving instanceof EntitySpider && event.entityLiving.getRNG().nextInt(1000) == 0) {
event.entityLiving.dropItem(ModItems.heart_piece, 1);
}
} }
} }
} }

View File

@ -246,6 +246,11 @@ public class ModEventHandlerClient {
} }
} }
} }
//because armor thatisn't ItemArmor doesn't render at all
if(armor != null && armor.getItem() instanceof JetpackBase) {
((ItemArmorMod)armor.getItem()).modRender(event, armor);
}
} }
} }

View File

@ -502,6 +502,7 @@ public class ResourceManager {
public static final IModelCustom armor_ajr = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/AJR.obj")); public static final IModelCustom armor_ajr = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/AJR.obj"));
public static final IModelCustom armor_hat = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/hat.obj")); public static final IModelCustom armor_hat = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/hat.obj"));
public static final IModelCustom armor_fau = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/fau.obj")); public static final IModelCustom armor_fau = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/fau.obj"));
public static final IModelCustom armor_mod_tesla = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/armor/mod_tesla.obj"));
////Texture Items ////Texture Items
@ -572,6 +573,8 @@ public class ResourceManager {
public static final ResourceLocation fau_cassette = new ResourceLocation(RefStrings.MODID, "textures/armor/fau_cassette.png"); public static final ResourceLocation fau_cassette = new ResourceLocation(RefStrings.MODID, "textures/armor/fau_cassette.png");
public static final ResourceLocation fau_arm = new ResourceLocation(RefStrings.MODID, "textures/armor/fau_arm.png"); public static final ResourceLocation fau_arm = new ResourceLocation(RefStrings.MODID, "textures/armor/fau_arm.png");
public static final ResourceLocation mod_tesla = new ResourceLocation(RefStrings.MODID, "textures/armor/mod_tesla.png");
public static final ResourceLocation hat = new ResourceLocation(RefStrings.MODID, "textures/armor/hat.png"); public static final ResourceLocation hat = new ResourceLocation(RefStrings.MODID, "textures/armor/hat.png");

View File

@ -56,6 +56,9 @@ public class ModelRendererObj {
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
public void render(float scale) { public void render(float scale) {
if(parts == null)
return;
GL11.glPushMatrix(); GL11.glPushMatrix();
GL11.glTranslatef(this.offsetX * scale, this.offsetY * scale, this.offsetZ * scale); GL11.glTranslatef(this.offsetX * scale, this.offsetY * scale, this.offsetZ * scale);
@ -81,7 +84,7 @@ public class ModelRendererObj {
GL11.glScalef(scale, scale, scale); GL11.glScalef(scale, scale, scale);
if(parts != null && parts.length > 0) if(parts.length > 0)
for(String part : parts) for(String part : parts)
model.renderPart(part); model.renderPart(part);
else else

View File

@ -24,6 +24,16 @@ public class ModelArmorBase extends ModelBiped {
public ModelArmorBase(int type) { public ModelArmorBase(int type) {
this.type = type; this.type = type;
//generate null defaults to prevent major breakage from using incomplete models
head = new ModelRendererObj(null);
body = new ModelRendererObj(null);
leftArm = new ModelRendererObj(null).setRotationPoint(-5.0F, 2.0F, 0.0F);
rightArm = new ModelRendererObj(null).setRotationPoint(5.0F, 2.0F, 0.0F);
leftLeg = new ModelRendererObj(null).setRotationPoint(1.9F, 12.0F, 0.0F);
rightLeg = new ModelRendererObj(null).setRotationPoint(-1.9F, 12.0F, 0.0F);
leftFoot = new ModelRendererObj(null).setRotationPoint(1.9F, 12.0F, 0.0F);
rightFoot = new ModelRendererObj(null).setRotationPoint(-1.9F, 12.0F, 0.0F);
} }
public void setRotationAngles(float p_78087_1_, float p_78087_2_, float p_78087_3_, float p_78087_4_, float p_78087_5_, float p_78087_6_, Entity entity) { public void setRotationAngles(float p_78087_1_, float p_78087_2_, float p_78087_3_, float p_78087_4_, float p_78087_5_, float p_78087_6_, Entity entity) {

View File

@ -0,0 +1,33 @@
package com.hbm.render.model;
import org.lwjgl.opengl.GL11;
import com.hbm.main.ResourceManager;
import com.hbm.render.loader.ModelRendererObj;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
public class ModelBackTesla extends ModelArmorBase {
public ModelBackTesla() {
super(1);
body = new ModelRendererObj(ResourceManager.armor_mod_tesla);
}
@Override
public void render(Entity par1Entity, float par2, float par3, float par4, float par5, float par6, float par7) {
setRotationAngles(par2, par3, par4, par5, par6, par7, par1Entity);
GL11.glPushMatrix();
GL11.glShadeModel(GL11.GL_SMOOTH);
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.mod_tesla);
body.render(par7);
GL11.glShadeModel(GL11.GL_FLAT);
GL11.glPopMatrix();
}
}

View File

@ -6,6 +6,7 @@ import java.util.Random;
import com.hbm.blocks.ModBlocks; import com.hbm.blocks.ModBlocks;
import com.hbm.config.GeneralConfig; import com.hbm.config.GeneralConfig;
import com.hbm.items.ModItems;
import com.hbm.lib.HbmChestContents; import com.hbm.lib.HbmChestContents;
import com.hbm.lib.Library; import com.hbm.lib.Library;
import com.hbm.main.MainRegistry; import com.hbm.main.MainRegistry;
@ -15,6 +16,7 @@ import net.minecraft.block.Block;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemDoor; import net.minecraft.item.ItemDoor;
import net.minecraft.item.ItemStack;
import net.minecraft.util.WeightedRandomChestContent; import net.minecraft.util.WeightedRandomChestContent;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraft.world.gen.feature.WorldGenerator; import net.minecraft.world.gen.feature.WorldGenerator;
@ -649,7 +651,12 @@ public class Relay extends WorldGenerator
world.setBlock(x + 4, y + 0, z + 10, Blocks.brick_block, 0, 3); world.setBlock(x + 4, y + 0, z + 10, Blocks.brick_block, 0, 3);
world.setBlock(x + 6, y + 0, z + 10, ModBlocks.crate_iron, 0, 3); world.setBlock(x + 6, y + 0, z + 10, ModBlocks.crate_iron, 0, 3);
world.setBlockMetadataWithNotify(x + 6, y + 0, z + 10, 3, 3); world.setBlockMetadataWithNotify(x + 6, y + 0, z + 10, 3, 3);
WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.getLoot(1), (TileEntityCrateIron)world.getTileEntity(x + 6, y + 0, z + 10), 8); WeightedRandomChestContent.generateChestContents(rand, HbmChestContents.getLoot(1), (TileEntityCrateIron)world.getTileEntity(x + 6, y + 0, z + 10), 8);
if(world.rand.nextInt(5) == 0) {
((TileEntityCrateIron)world.getTileEntity(x + 6, y + 0, z + 10)).setInventorySlotContents(11, new ItemStack(ModItems.morning_glory));
}
world.setBlock(x + 7, y + 0, z + 10, Blocks.brick_block, 0, 3); world.setBlock(x + 7, y + 0, z + 10, Blocks.brick_block, 0, 3);
world.setBlock(x + 8, y + 0, z + 10, Blocks.brick_block, 0, 3); world.setBlock(x + 8, y + 0, z + 10, Blocks.brick_block, 0, 3);
world.setBlock(x + 10, y + 0, z + 10, ModBlocks.fence_metal, 0, 3); world.setBlock(x + 10, y + 0, z + 10, ModBlocks.fence_metal, 0, 3);
@ -659,7 +666,7 @@ public class Relay extends WorldGenerator
world.setBlock(x + 10, y + 0, z + 11, ModBlocks.fence_metal, 0, 3); world.setBlock(x + 10, y + 0, z + 11, ModBlocks.fence_metal, 0, 3);
world.setBlock(x + 0, y + 0, z + 12, Library.getRandomConcrete(), 0, 3); world.setBlock(x + 0, y + 0, z + 12, Library.getRandomConcrete(), 0, 3);
//world.setBlock(x + 4, y + 0, z + 12, Blocks.iron_door, 0, 3); //world.setBlock(x + 4, y + 0, z + 12, Blocks.iron_door, 0, 3);
ItemDoor.placeDoorBlock(world, x + 4, y + 0, z + 12, 0, Blocks.iron_door); ItemDoor.placeDoorBlock(world, x + 4, y + 0, z + 12, 0, Blocks.iron_door);
world.setBlock(x + 7, y + 0, z + 12, Blocks.brick_block, 0, 3); world.setBlock(x + 7, y + 0, z + 12, Blocks.brick_block, 0, 3);
world.setBlock(x + 8, y + 0, z + 12, Blocks.brick_block, 0, 3); world.setBlock(x + 8, y + 0, z + 12, Blocks.brick_block, 0, 3);
world.setBlock(x + 10, y + 0, z + 12, ModBlocks.fence_metal, 0, 3); world.setBlock(x + 10, y + 0, z + 12, ModBlocks.fence_metal, 0, 3);

View File

@ -1,5 +1,7 @@
package com.hbm.world.generator; package com.hbm.world.generator;
import java.util.ArrayList;
import java.util.List;
import java.util.Random; import java.util.Random;
import com.hbm.blocks.ModBlocks; import com.hbm.blocks.ModBlocks;
@ -41,7 +43,25 @@ public class JungleDungeon extends CellularDungeon {
//A hole has not been made -> this is the bottom floor //A hole has not been made -> this is the bottom floor
if(!that.hasHole) { if(!that.hasHole) {
world.setBlock(x, y, z, ModBlocks.brick_jungle_circle);
List<int[]> rooms = new ArrayList();
for(int i = 0; i < that.cells.length; i++) {
for(int j = 0; j < that.cells[0].length; j++) {
if(that.cells[i][j] != null)
rooms.add(new int[]{i, j});
}
}
if(!rooms.isEmpty()) {
int ix = x - dimX * width / 2;
int iz = z - dimZ * width / 2;
int[] room = rooms.get(world.rand.nextInt(rooms.size()));
world.setBlock(ix + room[0] * (width - 1) + width / 2, y, iz + room[1] * (width - 1) + width / 2, ModBlocks.brick_jungle_circle);
}
} }
that.hasHole = false; that.hasHole = false;

View File

@ -67,7 +67,7 @@ public class JungleDungeonRoom extends CellularDungeonRoom {
if(world.getBlock(x + 1 + a, y - 1, z + 1 + b) == Blocks.air) { if(world.getBlock(x + 1 + a, y - 1, z + 1 + b) == Blocks.air) {
if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava || bl == ModBlocks.brick_jungle_trap) { if(bl == ModBlocks.brick_jungle || bl == ModBlocks.brick_jungle_cracked || bl == ModBlocks.brick_jungle_lava || bl == ModBlocks.brick_jungle_trap) {
world.setBlockToAir(x + 1 + a, y, z + 1 + b); world.setBlock(x + 1 + a, y, z + 1 + b, ModBlocks.brick_jungle_fragile);
punched = true; punched = true;
} }
} }