form fixes, derrick gas funnies, new radar model, more booze

This commit is contained in:
Bob 2021-02-10 23:10:10 +01:00
parent 78808b1f5d
commit 5f3a641d73
27 changed files with 1034 additions and 161 deletions

View File

@ -992,6 +992,7 @@ item.euphemium_kit.name=Euphemium Kit
item.euphemium_legs.name=Euphemiumbeinschutz
item.euphemium_plate.name=Euphemiumbrustpanzer
item.euphemium_stopper.name=Stopper
item.fabsols_vodka.name=Fabsols Wodka
item.factory_core_advanced.name=Fortgeschrittener Fabrikenergiecluster
item.factory_core_titanium.name=Einfacher Fabrikenergiecluster
item.fallout.name=Fallouthäufchen
@ -2180,6 +2181,7 @@ item.weapon_pipe_rusty.name=Der Einstellungskorrigierer
item.weapon_saw.name=Ärztlich autorisierter Mord
item.weaponized_starblaster_cell.name=§cManipulierte Sternenblaster-Energiezelle§r
item.wd40.name=VT-40
item.wild_p.name=Wild Pegasus Trockener Wiskey
item.wire_advanced_alloy.name=Supraleiter
item.wire_aluminium.name=Aluminiumdraht
item.wire_copper.name=Kupferdraht

View File

@ -998,6 +998,7 @@ item.euphemium_kit.name=Euphemium Kit
item.euphemium_legs.name=Euphemium Leggings
item.euphemium_plate.name=Euphemium Chestplate
item.euphemium_stopper.name=Stopper
item.fabsols_vodka.name=Fabsol's Vodka
item.factory_core_advanced.name=Advanced Factory Energy Cluster
item.factory_core_titanium.name=Basic Factory Energy Cluster
item.fallout.name=Pile of Fallout
@ -2186,6 +2187,7 @@ item.weapon_pipe_rusty.name=The Attitude Adjuster
item.weapon_saw.name=Doctor Assisted Homicide
item.weaponized_starblaster_cell.name=§cRigged Star Blaster Energy Cell§r
item.wd40.name=VT-40
item.wild_p.name=Wild Pegasus Dry Whiskey
item.wire_advanced_alloy.name=Super Conductor
item.wire_aluminium.name=Aluminium Wire
item.wire_copper.name=Copper Wire

View File

@ -0,0 +1,769 @@
# Blender v2.79 (sub 0) OBJ File: 'radar.blend'
# www.blender.org
o Dish
v -0.500000 1.250000 0.500000
v -0.500000 2.250000 0.500000
v -0.500000 1.250000 -0.500000
v -0.500000 2.250000 -0.500000
v -0.250000 1.500000 -1.500000
v -0.250000 2.000000 -1.500000
v -0.250000 1.500000 1.500000
v -0.250000 2.000000 1.500000
v -0.500000 1.750000 0.250000
v -0.500000 1.750000 -0.250000
v -0.500000 1.750000 -0.125000
v -0.500000 1.750000 0.125000
v -0.625000 1.625000 0.250000
v -0.625000 1.625000 -0.250000
v -0.625000 1.625000 -0.125000
v -0.625000 1.625000 0.125000
v -0.625000 1.250000 0.250000
v -0.625000 1.250000 -0.250000
v -0.625000 1.250000 -0.125000
v -0.625000 1.250000 0.125000
v -0.500000 1.125000 0.250000
v -0.500000 1.125000 -0.250000
v -0.500000 1.125000 -0.125000
v -0.500000 1.125000 0.125000
v -0.500000 1.251000 0.250000
v -0.500000 1.251000 -0.250000
v -0.500000 1.251000 -0.125000
v -0.500000 1.251000 0.125000
v -0.250000 1.251000 0.250000
v -0.250000 1.251000 -0.250000
v -0.250000 1.251000 -0.125000
v -0.250000 1.251000 0.125000
v 0.250000 1.251000 0.250000
v -0.125000 1.251000 0.000000
v 0.250000 1.251000 -0.250000
v 0.500000 1.251000 0.062500
v 0.500000 1.251000 -0.062500
v -0.250000 1.126000 0.250000
v -0.250000 1.126000 -0.250000
v 0.250000 1.126000 0.250000
v 0.250000 1.126000 -0.250000
v -0.250000 1.126000 -0.125000
v -0.250000 1.126000 0.125000
v -0.125000 1.126000 0.000000
v 0.500000 1.126000 0.062500
v 0.500000 1.126000 -0.062500
v 0.562500 1.251000 0.062500
v 0.562500 1.626000 0.062500
v 0.562500 1.251000 -0.062500
v 0.562500 1.626000 -0.062500
v 0.687500 1.251000 0.062500
v 0.687500 1.626000 0.062500
v 0.687500 1.626000 -0.062500
v 0.500000 1.251000 0.000000
v 0.500000 1.626000 0.000000
v 0.750000 1.251000 0.000000
v 0.750000 1.626000 0.000000
v 0.687500 1.251000 -0.062500
v 0.687500 1.219750 0.062500
v 0.687500 1.219750 -0.062500
vt 0.666667 0.333333
vt 0.333333 0.000000
vt 0.666667 0.000000
vt 1.000000 0.250000
vt 0.333333 0.333333
vt 0.000000 0.083333
vt 0.166667 0.916667
vt 0.208333 0.979167
vt 0.166667 0.979167
vt 0.041667 0.979167
vt 0.083333 0.916667
vt 0.083333 0.979167
vt 0.166667 0.812500
vt 0.208333 0.916667
vt 0.041667 0.916667
vt 0.083333 0.812500
vt 0.166667 0.750000
vt 0.208333 0.812500
vt 0.041667 0.812500
vt 0.083333 0.750000
vt 0.250000 0.666667
vt 0.291667 0.750000
vt 0.250000 0.750000
vt 0.375000 0.750000
vt 0.416667 0.666667
vt 0.416667 0.750000
vt 0.333333 0.625000
vt 0.291667 0.666667
vt 0.416667 0.500000
vt 0.333333 0.416667
vt 0.250000 0.500000
vt 0.458333 0.666667
vt 0.208333 0.500000
vt 0.333333 0.708333
vt 0.375000 0.666667
vt 0.375000 0.708333
vt 0.291667 0.708333
vt 0.333333 0.666667
vt 0.250000 0.770833
vt 0.250000 0.812500
vt 0.125000 0.770833
vt 0.125000 0.812500
vt 0.125000 0.812500
vt 0.000000 0.812500
vt 0.125000 0.750000
vt 0.083333 0.666667
vt 0.125000 0.666667
vt 0.166667 0.666667
vt 0.125000 0.750000
vt 0.125000 0.666667
vt 0.208333 0.666667
vt 0.041667 0.750000
vt 0.208333 0.750000
vt 0.125000 0.625000
vt 0.041667 0.666667
vt 0.041667 0.500000
vt 0.104167 0.416667
vt 0.208333 0.416667
vt 0.250000 0.416667
vt 0.458333 0.416667
vt 0.416667 0.416667
vt 0.416667 0.354167
vt 0.416667 0.333333
vt 0.437500 0.354167
vt 0.479167 0.437500
vt 0.520833 0.437500
vt 0.520833 0.479167
vt 0.416667 0.395833
vt 0.104167 0.354167
vt 0.125000 0.333333
vt 0.145833 0.354167
vt 0.145833 0.416667
vt 0.354167 0.416667
vt 0.354167 0.395833
vt 0.312500 0.416667
vt 0.312500 0.395833
vt 0.250000 0.333333
vt 0.250000 0.354167
vt 0.229167 0.354167
vt 0.250000 0.395833
vt 0.604167 0.333333
vt 0.625000 0.437500
vt 0.604167 0.437500
vt 0.458333 0.437500
vt 0.479167 0.333333
vt 0.520833 0.333333
vt 0.541667 0.333333
vt 0.562500 0.437500
vt 0.541667 0.437500
vt 0.562500 0.333333
vt 1.000000 0.083333
vt 0.000000 0.250000
vt 0.375000 0.666667
vt 0.458333 0.500000
vt 0.291667 0.666667
vt 0.250000 0.958333
vt 0.125000 0.958333
vt 0.125000 0.958333
vt 0.125000 0.770833
vt 0.000000 0.958333
vt 0.000000 0.770833
vt 0.458333 0.750000
vt 0.541667 0.458333
vt 0.479167 0.479167
vt 0.458333 0.458333
vt 0.625000 0.333333
vt 0.458333 0.333333
vn 1.0000 0.0000 0.0000
vn 0.9701 0.0000 0.2425
vn 0.9701 0.0000 -0.2425
vn -0.7071 0.7071 0.0000
vn -1.0000 0.0000 0.0000
vn -0.7071 -0.7071 0.0000
vn 0.0000 1.0000 0.0000
vn 0.0000 0.0000 -1.0000
vn 0.0000 0.0000 1.0000
vn -0.7071 0.0000 -0.7071
vn -0.7071 0.0000 0.7071
vn 0.0040 -1.0000 0.0000
vn 0.0000 -1.0000 0.0000
vn 0.6000 0.0000 0.8000
vn 0.6000 0.0000 -0.8000
vn 0.7071 0.0000 -0.7071
vn 0.4472 -0.8944 0.0000
vn 0.7071 0.0000 0.7071
s off
f 4/1/1 1/2/1 3/3/1
f 3/3/2 6/4/2 4/1/2
f 2/5/3 7/6/3 1/2/3
f 16/7/4 9/8/4 12/9/4
f 10/10/4 15/11/4 11/12/4
f 20/13/5 13/14/5 16/7/5
f 14/15/5 19/16/5 15/11/5
f 24/17/6 17/18/6 20/13/6
f 18/19/6 23/20/6 19/16/6
f 29/21/7 28/22/7 25/23/7
f 27/24/7 30/25/7 26/26/7
f 29/21/7 34/27/7 32/28/7
f 30/25/7 34/27/7 35/29/7
f 54/30/7 35/29/7 33/31/7
f 35/29/8 39/32/8 30/25/8
f 29/21/9 40/33/9 33/31/9
f 34/34/10 43/35/10 32/36/10
f 31/37/11 44/38/11 34/34/11
f 17/18/9 21/39/9 25/40/9
f 19/16/9 23/41/9 27/42/9
f 28/43/8 20/13/8 16/7/8
f 26/44/8 18/19/8 14/15/8
f 27/45/9 42/46/9 31/47/9
f 39/32/8 26/26/8 30/25/8
f 43/48/8 28/49/8 32/50/8
f 25/23/9 38/51/9 29/21/9
f 22/52/12 42/46/12 23/20/12
f 24/17/12 38/51/12 21/53/12
f 38/51/13 44/54/13 40/33/13
f 44/54/13 39/55/13 41/56/13
f 40/33/13 41/56/13 46/57/13
f 33/31/14 45/58/14 36/59/14
f 46/60/15 35/29/15 37/61/15
f 58/62/16 56/63/16 60/64/16
f 48/65/7 52/66/7 53/67/7
f 49/68/8 60/64/8 46/60/8
f 60/69/17 56/70/17 59/71/17
f 46/57/17 59/71/17 45/72/17
f 37/73/7 54/30/7 49/74/7
f 54/30/7 36/75/7 47/76/7
f 56/77/18 51/78/18 59/79/18
f 59/79/9 51/78/9 47/80/9
f 49/81/10 55/82/10 50/83/10
f 55/84/11 47/85/11 48/65/11
f 48/65/9 51/86/9 52/66/9
f 56/87/18 52/66/18 51/86/18
f 56/87/16 53/88/16 57/89/16
f 50/83/8 58/90/8 49/81/8
f 4/1/1 2/5/1 1/2/1
f 3/3/2 5/91/2 6/4/2
f 2/5/3 8/92/3 7/6/3
f 16/7/4 13/14/4 9/8/4
f 10/10/4 14/15/4 15/11/4
f 20/13/5 17/18/5 13/14/5
f 14/15/5 18/19/5 19/16/5
f 24/17/6 21/53/6 17/18/6
f 18/19/6 22/52/6 23/20/6
f 29/21/7 32/28/7 28/22/7
f 27/24/7 31/93/7 30/25/7
f 29/21/7 33/31/7 34/27/7
f 30/25/7 31/93/7 34/27/7
f 33/31/7 36/75/7 54/30/7
f 54/30/7 37/73/7 35/29/7
f 35/29/7 34/27/7 33/31/7
f 35/29/8 41/94/8 39/32/8
f 29/21/9 38/51/9 40/33/9
f 34/34/10 44/38/10 43/35/10
f 31/37/11 42/95/11 44/38/11
f 25/40/9 9/96/9 13/14/9
f 13/14/9 17/18/9 25/40/9
f 27/42/9 11/97/9 15/11/9
f 15/11/9 19/16/9 27/42/9
f 16/7/8 12/98/8 28/43/8
f 28/43/8 24/99/8 20/13/8
f 14/15/8 10/100/8 26/44/8
f 26/44/8 22/101/8 18/19/8
f 27/45/9 23/20/9 42/46/9
f 39/32/8 22/102/8 26/26/8
f 43/48/8 24/17/8 28/49/8
f 25/23/9 21/53/9 38/51/9
f 22/52/12 39/55/12 42/46/12
f 24/17/12 43/48/12 38/51/12
f 38/51/13 43/48/13 44/54/13
f 44/54/13 42/46/13 39/55/13
f 46/57/13 45/72/13 40/33/13
f 40/33/13 44/54/13 41/56/13
f 33/31/14 40/33/14 45/58/14
f 46/60/15 41/94/15 35/29/15
f 57/103/7 53/67/7 52/66/7
f 53/67/7 50/104/7 48/65/7
f 50/104/7 55/105/7 48/65/7
f 46/60/8 37/61/8 49/68/8
f 49/68/8 58/62/8 60/64/8
f 46/57/17 60/69/17 59/71/17
f 36/59/9 45/58/9 47/80/9
f 45/58/9 59/79/9 47/80/9
f 49/81/10 54/106/10 55/82/10
f 55/84/11 54/107/11 47/85/11
f 48/65/9 47/85/9 51/86/9
f 56/87/18 57/89/18 52/66/18
f 56/87/16 58/90/16 53/88/16
f 50/83/8 53/88/8 58/90/8
o Base
v -0.500000 0.000000 0.500000
v -0.500000 0.125000 0.500000
v -0.500000 0.000000 -0.500000
v -0.500000 0.125000 -0.500000
v 0.500000 0.000000 0.500000
v 0.500000 0.125000 0.500000
v 0.500000 0.000000 -0.500000
v 0.500000 0.125000 -0.500000
v -0.500000 0.312500 0.187500
v -0.500000 0.687500 0.187500
v -0.500000 0.312500 -0.187500
v -0.500000 0.687500 -0.187500
v 0.500000 0.312500 0.187500
v 0.500000 0.687500 0.187500
v 0.500000 0.312500 -0.187500
v 0.500000 0.687500 -0.187500
v 0.187500 0.312500 0.500000
v 0.187500 0.687500 0.500000
v -0.187500 0.312500 0.500000
v -0.187500 0.687500 0.500000
v 0.187500 0.312500 -0.500000
v 0.187500 0.687500 -0.500000
v -0.187500 0.312500 -0.500000
v -0.187500 0.687500 -0.500000
v -0.375000 0.312500 0.187500
v -0.375000 0.312500 -0.187500
v -0.375000 0.687500 -0.187500
v -0.375000 0.687500 0.187500
v 0.375000 0.312500 -0.187500
v 0.375000 0.312500 0.187500
v 0.375000 0.687500 0.187500
v 0.375000 0.687500 -0.187500
v 0.187500 0.312500 0.375000
v -0.187500 0.312500 0.375000
v -0.187500 0.687500 0.375000
v 0.187500 0.687500 0.375000
v -0.187500 0.312500 -0.375000
v 0.187500 0.312500 -0.375000
v 0.187500 0.687500 -0.375000
v -0.187500 0.687500 -0.375000
v -0.312500 1.000000 0.312500
v -0.312500 1.000000 -0.312500
v 0.312500 1.000000 0.312500
v 0.312500 1.000000 -0.312500
v 0.437500 1.000000 -0.437500
v 0.437500 1.000000 0.437500
v -0.437500 1.000000 -0.437500
v -0.437500 1.000000 0.437500
v 0.437500 0.125000 0.437500
v 0.437500 0.125000 0.312500
v 0.312500 0.125000 0.437500
v 0.437500 0.875000 0.437500
v 0.437500 0.875000 0.312500
v 0.312500 0.875000 0.437500
v 0.437500 0.125000 -0.312500
v 0.437500 0.125000 -0.437500
v 0.312500 0.125000 -0.437500
v 0.437500 0.875000 -0.312500
v 0.437500 0.875000 -0.437500
v 0.312500 0.875000 -0.437500
v -0.312500 0.125000 0.437500
v -0.437500 0.125000 0.437500
v -0.437500 0.125000 0.312500
v -0.312500 0.875000 0.437500
v -0.437500 0.875000 0.437500
v -0.437500 0.875000 0.312500
v -0.312500 0.125000 -0.437500
v -0.437500 0.125000 -0.312500
v -0.437500 0.125000 -0.437500
v -0.312500 0.875000 -0.437500
v -0.437500 0.875000 -0.312500
v -0.437500 0.875000 -0.437500
v 0.312500 0.125000 0.375000
v -0.312500 0.125000 0.375000
v 0.312500 0.875000 0.375000
v -0.312500 0.875000 0.375000
v 0.312500 0.125000 -0.375000
v 0.312500 0.875000 -0.375000
v -0.312500 0.125000 -0.375000
v -0.312500 0.875000 -0.375000
v 0.375000 0.125000 0.312500
v 0.375000 0.875000 0.312500
v 0.375000 0.125000 -0.312500
v 0.375000 0.875000 -0.312500
v -0.375000 0.125000 0.312500
v -0.375000 0.875000 0.312500
v -0.375000 0.125000 -0.312500
v -0.375000 0.875000 -0.312500
v 0.312500 1.062500 0.312500
v -0.312500 1.062500 0.312500
v 0.312500 1.062500 -0.312500
v -0.312500 1.062500 -0.312500
v -0.156250 1.062500 0.156250
v -0.156250 1.062500 -0.156250
v 0.156250 1.062500 0.156250
v 0.156250 1.062500 -0.156250
v -0.156250 1.125000 0.156250
v -0.156250 1.125000 -0.156250
v 0.156250 1.125000 -0.156250
v 0.156250 1.125000 0.156250
vt -0.000000 0.380952
vt 0.400000 0.428571
vt -0.000000 0.428571
vt -0.000000 0.380952
vt 0.400000 0.428571
vt -0.000000 0.428571
vt 0.400000 0.428571
vt -0.000000 0.380952
vt 0.400000 0.380952
vt 0.400000 0.428571
vt -0.000000 0.380952
vt 0.400000 0.380952
vt 0.000000 0.000000
vt 0.400000 -0.000000
vt 0.700000 0.047619
vt 0.450000 0.023810
vt 0.700000 0.023810
vt 0.275000 0.690476
vt 0.125000 0.547619
vt 0.275000 0.547619
vt 0.275000 0.547619
vt 0.125000 0.690476
vt 0.125000 0.547619
vt 0.275000 0.547619
vt 0.125000 0.690476
vt 0.125000 0.547619
vt 0.275000 0.690476
vt 0.125000 0.547619
vt 0.275000 0.547619
vt 0.125000 0.500000
vt 0.075000 0.690476
vt 0.275000 0.738095
vt 0.275000 0.690476
vt 0.325000 0.547619
vt 0.125000 0.500000
vt 0.075000 0.690476
vt 0.125000 0.690476
vt 0.275000 0.738095
vt 0.325000 0.547619
vt 0.125000 0.500000
vt 0.075000 0.690476
vt 0.275000 0.738095
vt 0.275000 0.690476
vt 0.325000 0.547619
vt 0.125000 0.500000
vt 0.075000 0.690476
vt 0.125000 0.690476
vt 0.275000 0.738095
vt 0.325000 0.547619
vt 0.425000 0.690476
vt 0.400000 0.976190
vt 0.400000 0.690476
vt 0.425000 0.690476
vt 0.400000 0.976190
vt 0.400000 0.690476
vt 0.525000 0.976190
vt 0.550000 0.690476
vt 0.550000 0.976190
vt 0.550000 0.976190
vt 0.525000 0.690476
vt 0.550000 0.690476
vt 0.400000 0.690476
vt 0.425000 0.976190
vt 0.400000 0.976190
vt 0.750000 0.428571
vt 0.400000 0.095238
vt 0.750000 0.095238
vt 0.525000 0.976190
vt 0.550000 0.690476
vt 0.550000 0.976190
vt 0.475000 0.690476
vt 0.425000 0.690476
vt 0.375000 0.738095
vt 0.375000 0.500000
vt 0.425000 0.690476
vt 0.400000 0.976190
vt 0.400000 0.690476
vt 0.475000 0.976190
vt 0.700000 0.023810
vt 0.450000 0.047619
vt 0.450000 0.023810
vt 0.525000 0.690476
vt 0.475000 0.976190
vt 0.475000 0.690476
vt 0.425000 0.976190
vt 0.000000 0.809524
vt 0.075000 0.785714
vt 0.325000 0.785714
vt 0.525000 0.690476
vt 0.475000 0.976190
vt 0.475000 0.690476
vt 0.425000 0.976190
vt -0.000000 0.428571
vt 0.025000 0.500000
vt 0.025000 0.738095
vt 0.550000 0.976190
vt 0.525000 0.690476
vt 0.550000 0.690476
vt 0.475000 0.976190
vt 0.475000 0.690476
vt 0.425000 0.976190
vt 0.325000 0.452381
vt 0.075000 0.452381
vt 1.000000 0.285714
vt 0.750000 0.000000
vt 1.000000 0.000000
vt 1.000000 0.000000
vt 0.750000 0.285714
vt 0.750000 0.000000
vt 1.000000 0.000000
vt 0.750000 0.285714
vt 0.750000 0.000000
vt 1.000000 0.285714
vt 0.750000 0.000000
vt 1.000000 0.000000
vt 0.700000 0.047619
vt 0.450000 0.023810
vt 0.700000 0.023810
vt 0.700000 0.023810
vt 0.450000 0.047619
vt 0.450000 0.023810
vt 0.700000 0.047619
vt 0.400000 0.095238
vt 0.700000 0.047619
vt 0.750000 0.047619
vt 0.750000 0.095238
vt 0.750000 0.047619
vt 0.750000 0.095238
vt 0.400000 0.452381
vt 0.650000 0.690476
vt 0.400000 0.690476
vt 0.400000 0.428571
vt 0.650000 0.452381
vt 0.400000 0.452381
vt 0.400000 0.428571
vt 0.650000 0.452381
vt 0.400000 0.452381
vt 0.650000 0.452381
vt 0.400000 0.428571
vt 0.650000 0.428571
vt 0.650000 0.452381
vt 0.400000 0.428571
vt 0.650000 0.428571
vt 0.875000 0.285714
vt 0.750000 0.309524
vt 0.750000 0.285714
vt 0.750000 0.309524
vt 0.875000 0.285714
vt 0.875000 0.309524
vt 0.875000 0.285714
vt 0.750000 0.309524
vt 0.750000 0.285714
vt 0.750000 0.309524
vt 0.875000 0.285714
vt 0.875000 0.309524
vt 0.400000 0.380952
vt 0.400000 0.380952
vt -0.000000 0.428571
vt 0.450000 0.047619
vt 0.275000 0.500000
vt 0.075000 0.547619
vt 0.125000 0.738095
vt 0.325000 0.690476
vt 0.275000 0.500000
vt 0.075000 0.547619
vt 0.125000 0.738095
vt 0.325000 0.690476
vt 0.275000 0.500000
vt 0.075000 0.547619
vt 0.125000 0.738095
vt 0.325000 0.690476
vt 0.275000 0.500000
vt 0.075000 0.547619
vt 0.125000 0.738095
vt 0.325000 0.690476
vt 0.525000 0.976190
vt 0.400000 0.428571
vt 0.400000 0.809524
vt 0.375000 0.785714
vt 0.350000 0.738095
vt 0.350000 0.500000
vt 0.375000 0.452381
vt 0.025000 0.785714
vt 0.075000 0.761905
vt 0.325000 0.761905
vt 0.025000 0.452381
vt 0.050000 0.500000
vt 0.050000 0.738095
vt 0.525000 0.976190
vt 0.325000 0.476190
vt 0.075000 0.476190
vt 0.750000 0.285714
vt 1.000000 0.285714
vt 1.000000 0.285714
vt 0.750000 0.285714
vt 0.450000 0.047619
vt 0.750000 0.047619
vt 0.400000 0.047619
vt 0.750000 0.047619
vt 0.750000 0.095238
vt 0.400000 0.047619
vt 0.400000 0.095238
vt 0.400000 0.047619
vt 0.400000 0.095238
vt 0.400000 0.047619
vt 0.650000 0.428571
vt 0.650000 0.428571
vt 0.400000 0.452381
vt 0.875000 0.309524
vt 0.750000 0.285714
vt 0.875000 0.309524
vt 0.750000 0.285714
vn -1.0000 0.0000 0.0000
vn 0.0000 0.0000 -1.0000
vn 1.0000 0.0000 0.0000
vn 0.0000 0.0000 1.0000
vn 0.0000 -1.0000 0.0000
vn 0.0000 1.0000 0.0000
s off
f 62/108/19 63/109/19 61/110/19
f 64/111/20 67/112/20 63/113/20
f 68/114/21 65/115/21 67/116/21
f 66/117/22 61/118/22 65/119/22
f 67/116/23 61/120/23 63/121/23
f 114/122/23 136/123/23 135/124/23
f 84/125/20 81/126/20 83/127/20
f 69/128/19 72/129/19 71/130/19
f 77/131/22 80/132/22 79/133/22
f 76/134/21 73/135/21 75/136/21
f 86/137/23 69/128/23 71/130/23
f 87/138/20 71/130/20 72/129/20
f 88/139/24 72/129/24 70/140/24
f 85/141/22 70/140/22 69/128/22
f 90/142/23 75/136/23 73/135/23
f 91/143/22 73/135/22 74/144/22
f 92/145/24 74/144/24 76/134/24
f 89/146/20 76/134/20 75/136/20
f 94/147/23 77/131/23 79/133/23
f 95/148/19 79/133/19 80/132/19
f 96/149/24 80/132/24 78/150/24
f 93/151/21 78/150/21 77/131/21
f 98/152/23 83/127/23 81/126/23
f 99/153/21 81/126/21 82/154/21
f 100/155/24 82/154/24 84/125/24
f 97/156/19 84/125/19 83/127/19
f 115/157/22 144/158/22 143/159/22
f 123/160/20 146/161/20 145/162/20
f 120/163/19 137/164/19 138/165/19
f 142/166/20 110/167/20 141/168/20
f 133/169/19 114/170/19 135/171/19
f 107/172/24 106/173/24 105/174/24
f 124/175/21 134/176/21 136/177/21
f 109/178/22 114/170/22 111/179/22
f 127/180/24 117/181/24 68/114/24
f 127/182/21 140/183/21 139/184/21
f 110/167/21 112/185/21 109/178/21
f 144/186/23 113/187/23 142/188/23
f 117/189/20 119/190/20 116/191/20
f 116/191/21 118/192/21 115/157/21
f 62/193/24 123/194/24 128/195/24
f 121/196/22 125/197/22 122/198/22
f 122/198/19 126/199/19 123/160/19
f 66/200/24 111/201/24 121/202/24
f 148/203/22 128/204/22 147/205/22
f 128/204/19 132/206/19 129/207/19
f 129/207/20 130/208/20 127/182/20
f 115/209/24 110/210/24 66/200/24
f 135/211/22 134/212/22 133/213/22
f 139/214/20 138/215/20 137/216/20
f 143/217/21 142/218/21 141/219/21
f 146/220/19 147/221/19 145/222/19
f 126/223/23 148/224/23 146/225/23
f 140/226/23 120/227/23 138/228/23
f 106/173/21 113/187/21 118/229/21
f 105/230/20 120/227/20 130/231/20
f 126/223/19 125/232/19 108/233/19
f 114/122/22 112/234/22 106/235/22
f 149/236/24 152/237/24 150/238/24
f 150/239/19 102/240/19 101/241/19
f 152/242/20 104/243/20 102/244/20
f 151/245/21 103/246/21 104/247/21
f 149/248/22 101/249/22 103/250/22
f 156/251/21 160/252/21 155/253/21
f 153/254/19 158/255/19 154/256/19
f 155/257/22 157/258/22 153/259/22
f 154/260/20 159/261/20 156/262/20
f 62/108/19 64/263/19 63/109/19
f 64/111/20 68/264/20 67/112/20
f 68/114/21 66/200/21 65/115/21
f 66/117/22 62/265/22 61/118/22
f 67/116/23 65/115/23 61/120/23
f 114/122/23 124/266/23 136/123/23
f 84/125/20 82/154/20 81/126/20
f 69/128/19 70/140/19 72/129/19
f 77/131/22 78/150/22 80/132/22
f 76/134/21 74/144/21 73/135/21
f 86/137/23 85/267/23 69/128/23
f 87/138/20 86/268/20 71/130/20
f 88/139/24 87/269/24 72/129/24
f 85/141/22 88/270/22 70/140/22
f 90/142/23 89/271/23 75/136/23
f 91/143/22 90/272/22 73/135/22
f 92/145/24 91/273/24 74/144/24
f 89/146/20 92/274/20 76/134/20
f 94/147/23 93/275/23 77/131/23
f 95/148/19 94/276/19 79/133/19
f 96/149/24 95/277/24 80/132/24
f 93/151/21 96/278/21 78/150/21
f 98/152/23 97/279/23 83/127/23
f 99/153/21 98/280/21 81/126/21
f 100/155/24 99/281/24 82/154/24
f 97/156/19 100/282/19 84/125/19
f 115/157/22 118/192/22 144/158/22
f 123/160/20 126/199/20 146/161/20
f 120/163/19 117/189/19 137/164/19
f 142/166/20 113/283/20 110/167/20
f 133/169/19 111/179/19 114/170/19
f 107/172/24 108/284/24 106/173/24
f 124/175/21 121/196/21 134/176/21
f 109/178/22 112/185/22 114/170/22
f 68/114/24 64/285/24 127/180/24
f 64/285/24 129/286/24 127/180/24
f 127/180/24 139/287/24 137/288/24
f 117/181/24 116/289/24 68/114/24
f 127/180/24 137/288/24 117/181/24
f 127/182/21 130/208/21 140/183/21
f 110/167/21 113/283/21 112/185/21
f 144/186/23 118/229/23 113/187/23
f 117/189/20 120/163/20 119/190/20
f 116/191/21 119/190/21 118/192/21
f 129/286/24 64/285/24 128/195/24
f 64/285/24 62/193/24 128/195/24
f 62/193/24 122/290/24 123/194/24
f 123/194/24 145/291/24 147/292/24
f 123/194/24 147/292/24 128/195/24
f 121/196/22 124/175/22 125/197/22
f 122/198/19 125/197/19 126/199/19
f 122/290/24 62/193/24 121/202/24
f 62/193/24 66/200/24 121/202/24
f 66/200/24 109/293/24 111/201/24
f 111/201/24 133/294/24 134/295/24
f 111/201/24 134/295/24 121/202/24
f 148/203/22 131/296/22 128/204/22
f 128/204/19 131/296/19 132/206/19
f 129/207/20 132/206/20 130/208/20
f 66/200/24 68/114/24 115/209/24
f 68/114/24 116/289/24 115/209/24
f 115/209/24 143/297/24 141/298/24
f 110/210/24 109/293/24 66/200/24
f 115/209/24 141/298/24 110/210/24
f 135/211/22 136/299/22 134/212/22
f 139/214/20 140/300/20 138/215/20
f 143/217/21 144/301/21 142/218/21
f 146/220/19 148/302/19 147/221/19
f 126/223/23 131/303/23 148/224/23
f 140/226/23 130/231/23 120/227/23
f 119/304/21 105/174/21 118/229/21
f 105/174/21 106/173/21 118/229/21
f 106/173/21 112/305/21 113/187/21
f 132/306/20 107/307/20 130/231/20
f 107/307/20 105/230/20 130/231/20
f 105/230/20 119/308/20 120/227/20
f 108/233/19 107/309/19 131/303/19
f 107/309/19 132/310/19 131/303/19
f 131/303/19 126/223/19 108/233/19
f 106/235/22 108/311/22 124/266/22
f 108/311/22 125/312/22 124/266/22
f 124/266/22 114/122/22 106/235/22
f 149/236/24 151/245/24 152/237/24
f 150/239/19 152/313/19 102/240/19
f 152/242/20 151/314/20 104/243/20
f 151/245/21 149/236/21 103/246/21
f 149/248/22 150/315/22 101/249/22
f 156/251/21 159/316/21 160/252/21
f 153/254/19 157/317/19 158/255/19
f 155/257/22 160/318/22 157/258/22
f 154/260/20 158/319/20 159/261/20

Binary file not shown.

After

Width:  |  Height:  |  Size: 659 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 606 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 247 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 163 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1006 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -1010,7 +1010,7 @@ public class ModBlocks {
block_trinitite = new BlockOre(Material.iron, 3F, 35F).setBlockName("block_trinitite").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_trinitite");
block_waste = new BlockNuclearWaste(Material.iron, 5F, 60F).setBlockName("block_waste").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_waste");
block_waste_painted = new BlockNuclearWaste(Material.iron, 5F, 60F).setBlockName("block_waste_painted").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_waste_painted");
ancient_scrap = new BlockOutgas(Material.iron, true, 1, true).setBlockName("ancient_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(100.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":ancient_scrap");
ancient_scrap = new BlockOutgas(Material.iron, true, 1, true, true).setBlockName("ancient_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(100.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":ancient_scrap");
block_scrap = new BlockFalling(Material.sand).setBlockName("block_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(2.5F).setResistance(5.0F).setStepSound(Block.soundTypeGravel).setBlockTextureName(RefStrings.MODID + ":block_scrap");
block_electrical_scrap = new BlockFalling(Material.iron).setBlockName("block_electrical_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(2.5F).setResistance(5.0F).setStepSound(Block.soundTypeMetal).setBlockTextureName(RefStrings.MODID + ":electrical_scrap_alt2");
block_beryllium = new BlockGeneric(Material.iron).setBlockName("block_beryllium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_beryllium");

View File

@ -16,6 +16,7 @@ public class BlockOutgas extends BlockOre {
boolean randomTick;
int rate;
boolean onBreak;
boolean onNeighbour;
public BlockOutgas(Material mat, boolean randomTick, int rate, boolean onBreak) {
super(mat);
@ -23,6 +24,12 @@ public class BlockOutgas extends BlockOre {
this.randomTick = randomTick;
this.rate = rate;
this.onBreak = onBreak;
this.onNeighbour = false;
}
public BlockOutgas(Material mat, boolean randomTick, int rate, boolean onBreak, boolean onNeighbour) {
this(mat, randomTick, rate, onBreak);
this.onNeighbour = onNeighbour;
}
public int tickRate(World p_149738_1_) {
@ -89,4 +96,18 @@ public class BlockOutgas extends BlockOre {
super.dropBlockAsItemWithChance(world, x, y, z, meta, chance, fortune);
}
@Override
public void onNeighborBlockChange(World world, int x, int y, int z, Block block) {
if(onNeighbour) {
for(ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) {
if(world.getBlock(x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ) == Blocks.air) {
world.setBlock(x + dir.offsetX, y + dir.offsetY, z + dir.offsetZ, getGas());
}
}
}
}
}

View File

@ -76,6 +76,20 @@ public class MineralRecipes {
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_schrabidium_fuel, 2), new Object[] { ModItems.billet_schrabidium, ModItems.billet_neptunium, ModItems.nugget_beryllium, ModItems.nugget_beryllium, ModItems.nugget_beryllium, ModItems.nugget_beryllium, ModItems.nugget_beryllium, ModItems.nugget_beryllium });
GameRegistry.addRecipe(new ShapelessOreRecipe(new ItemStack(ModItems.billet_schrabidium_fuel, 1), new Object[] { ModItems.nugget_schrabidium, ModItems.nugget_schrabidium, "nuggetNeptunium", "nuggetNeptunium", ModItems.nugget_beryllium, ModItems.nugget_beryllium }));
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_uranium, 2), new Object[] { ModItems.billet_uranium, ModItems.billet_uranium, ModItems.billet_uranium });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_u233, 2), new Object[] { ModItems.billet_u233, ModItems.billet_u233, ModItems.billet_u233 });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_u235, 2), new Object[] { ModItems.billet_u235, ModItems.billet_u235, ModItems.billet_u235 });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_u238, 2), new Object[] { ModItems.billet_u238, ModItems.billet_u238, ModItems.billet_u238 });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_plutonium, 2), new Object[] { ModItems.billet_plutonium, ModItems.billet_plutonium, ModItems.billet_plutonium });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_pu238, 2), new Object[] { ModItems.billet_pu238, ModItems.billet_pu238, ModItems.billet_pu238 });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_pu239, 2), new Object[] { ModItems.billet_pu239, ModItems.billet_pu239, ModItems.billet_pu239 });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_pu240, 2), new Object[] { ModItems.billet_pu240, ModItems.billet_pu240, ModItems.billet_pu240 });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_pu_mix, 2), new Object[] { ModItems.billet_pu_mix, ModItems.billet_pu_mix, ModItems.billet_pu_mix });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_neptunium, 2), new Object[] { ModItems.billet_neptunium, ModItems.billet_neptunium, ModItems.billet_neptunium });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_polonium, 2), new Object[] { ModItems.billet_polonium, ModItems.billet_polonium, ModItems.billet_polonium });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_schrabidium, 2), new Object[] { ModItems.billet_schrabidium, ModItems.billet_schrabidium, ModItems.billet_schrabidium });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.ingot_solinium, 2), new Object[] { ModItems.billet_solinium, ModItems.billet_solinium, ModItems.billet_solinium });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.pellet_rtg), new Object[] { ModItems.billet_pu238, ModItems.billet_pu238, ModItems.billet_pu238 });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.pellet_rtg_weak), new Object[] { ModItems.billet_u238, ModItems.billet_u238, ModItems.billet_pu238 });
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.pellet_rtg_polonium), new Object[] { ModItems.billet_polonium, ModItems.billet_polonium, ModItems.billet_polonium });

View File

@ -11,9 +11,11 @@ import com.hbm.saveddata.RadiationSavedData;
import com.hbm.util.ContaminationUtil;
import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint;
import net.minecraft.block.Block;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.EntityPlayerMP;
import net.minecraft.init.Blocks;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
@ -85,6 +87,17 @@ public class EntityEffectHandler {
entity.addPotionEffect(new PotionEffect(Potion.hunger.id, 60, 19));
}
if(HbmLivingProps.getRadiation(entity) > 900 && world.getTotalWorldTime() % 10 == 0) {
NBTTagCompound nbt = new NBTTagCompound();
nbt.setString("type", "sweat");
nbt.setInteger("count", 1);
nbt.setInteger("block", Block.getIdFromBlock(Blocks.redstone_block));
nbt.setInteger("entity", entity.getEntityId());
PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(nbt, 0, 0, 0), new TargetPoint(entity.dimension, entity.posX, entity.posY, entity.posZ, 25));
}
} else {
float radiation = HbmLivingProps.getRadiation(entity);
@ -112,8 +125,9 @@ public class EntityEffectHandler {
if(chance == 1 || entity.getRNG().nextInt(chance) == 0) {
NBTTagCompound data = new NBTTagCompound();
data.setString("type", "digammaDecay");
data.setString("type", "sweat");
data.setInteger("count", 1);
data.setInteger("block", Block.getIdFromBlock(Blocks.soul_sand));
data.setInteger("entity", entity.getEntityId());
PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, 0, 0, 0), new TargetPoint(entity.dimension, entity.posX, entity.posY, entity.posZ, 25));
}

View File

@ -36,7 +36,7 @@ public class GUIMachineDiesel extends GuiInfoContainer {
" Diesel (500 HE/t)",
" Petroil (300 HE/t)",
" Biofuel (400 HE/t)",
" Diesel (1000 HE/t)",
" Hydrogen (1000 HE/t)",
" NITAN Superfuel (5000 HE/t)" };
this.drawCustomInfoStat(mouseX, mouseY, guiLeft - 16, guiTop + 36, 16, 16, guiLeft - 8, guiTop + 36 + 16, text);

View File

@ -1863,6 +1863,8 @@ public class ModItems {
public static Item heart_fab;
public static Item wd40;
public static Item scrumpy;
public static Item wild_p;
public static Item fabsols_vodka;
public static Item hazmat_helmet;
public static Item hazmat_plate;
@ -2819,6 +2821,8 @@ public class ModItems {
heart_fab = new ItemModHealth(60F).setUnlocalizedName("heart_fab").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":heart_fab");
wd40 = new ItemModWD40().setUnlocalizedName("wd40").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":wd40");
scrumpy = new ItemModRevive(1).setUnlocalizedName("scrumpy").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":scrumpy");
wild_p = new ItemModRevive(3).setUnlocalizedName("wild_p").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":wild_p");
fabsols_vodka = new ItemModRevive(9999).setUnlocalizedName("fabsols_vodka").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":fabsols_vodka");
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");
@ -6308,6 +6312,8 @@ public class ModItems {
GameRegistry.registerItem(heart_fab, heart_fab.getUnlocalizedName());
GameRegistry.registerItem(wd40, wd40.getUnlocalizedName());
GameRegistry.registerItem(scrumpy, scrumpy.getUnlocalizedName());
GameRegistry.registerItem(wild_p, wild_p.getUnlocalizedName());
GameRegistry.registerItem(fabsols_vodka, fabsols_vodka.getUnlocalizedName());
//The Gadget
GameRegistry.registerItem(gadget_explosive, gadget_explosive.getUnlocalizedName());

View File

@ -3,6 +3,7 @@ package com.hbm.items.armor;
import java.util.List;
import com.hbm.handler.ArmorModHandler;
import com.hbm.items.ModItems;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
@ -14,20 +15,35 @@ public class ItemModRevive extends ItemArmorMod {
super(ArmorModHandler.extra, false, false, true, false);
this.setMaxDamage(durability);
}
@Override
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) {
list.add(EnumChatFormatting.GOLD + "But how did you survive?");
list.add(EnumChatFormatting.RED + "I was drunk.");
if(this == ModItems.scrumpy) {
list.add(EnumChatFormatting.GOLD + "But how did you survive?");
list.add(EnumChatFormatting.RED + "I was drunk.");
}
if(this == ModItems.wild_p) {
list.add(EnumChatFormatting.DARK_GRAY + "Explosive " + EnumChatFormatting.RED + "Reactive " + EnumChatFormatting.DARK_GRAY + "Plot " + EnumChatFormatting.RED + "Armor");
}
if(this == ModItems.fabsols_vodka) {
list.add(EnumChatFormatting.ITALIC + "In the news:");
list.add(EnumChatFormatting.RED + "" + EnumChatFormatting.BOLD + "Man literally too angry to die.");
list.add("");
list.add(EnumChatFormatting.ITALIC + "\"I ain't got time to die\" says local");
list.add(EnumChatFormatting.ITALIC + "man after ripping the physical manifestation");
list.add(EnumChatFormatting.ITALIC + "of disaster itself in half.");
}
list.add("");
list.add(EnumChatFormatting.GOLD + "" + (stack.getMaxDamage() - stack.getItemDamage()) + " revives left");
list.add("");
super.addInformation(stack, player, list, bool);
}
@Override
public void addDesc(List list, ItemStack stack, ItemStack armor) {
list.add(EnumChatFormatting.GOLD + " " + stack.getDisplayName() + " (" + (stack.getMaxDamage() - stack.getItemDamage()) + " revives left)");
}

View File

@ -4,6 +4,7 @@ import java.util.List;
import com.hbm.inventory.FluidStack;
import com.hbm.inventory.MachineRecipes;
import com.hbm.items.ModItems;
import com.hbm.util.I18nUtil;
import cpw.mods.fml.relauncher.Side;
@ -284,7 +285,7 @@ public class ItemChemistryTemplate extends Item {
ItemStack[] out = MachineRecipes.getChemOutputFromTempate(stack);
FluidStack[] outF = MachineRecipes.getFluidOutputFromTempate(stack);
list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("info.templatefolder"));
list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("info.templatefolder", I18nUtil.resolveKey(ModItems.template_folder.getUnlocalizedName() + ".name")));
list.add("");
try {

View File

@ -2,6 +2,7 @@ package com.hbm.items.machine;
import java.util.List;
import com.hbm.handler.FluidTypeHandler.FluidType;
import com.hbm.items.ModItems;
import com.hbm.tileentity.conductor.TileEntityFluidDuct;
import com.hbm.util.I18nUtil;
@ -65,7 +66,7 @@ public class ItemFluidIdentifier extends Item {
if(!(stack.getItem() instanceof ItemFluidIdentifier))
return;
list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("info.templatefolder"));
list.add(EnumChatFormatting.YELLOW + I18nUtil.resolveKey("info.templatefolder", I18nUtil.resolveKey(ModItems.template_folder.getUnlocalizedName() + ".name")));
list.add("");
list.add("Universal fluid identifier for:");
list.add(" " + I18n.format(FluidType.getEnum(stack.getItemDamage()).getUnlocalizedName()));

View File

@ -1056,9 +1056,11 @@ public class ClientProxy extends ServerProxy {
player.attackedAtYaw = 0F;
}
if("digammaDecay".equals(type)) {
if("sweat".equals(type)) {
Entity e = world.getEntityByID(data.getInteger("entity"));
Block b = Block.getBlockById(data.getInteger("block"));
int meta = data.getInteger("meta");
if(e instanceof EntityLivingBase) {
@ -1069,7 +1071,7 @@ public class ClientProxy extends ServerProxy {
double iz = e.boundingBox.minZ - 0.2 + (e.boundingBox.maxZ - e.boundingBox.minZ + 0.4) * rand.nextDouble();
EntityFX fx = new net.minecraft.client.particle.EntityBlockDustFX(world, ix, iy, iz, 0, 0, 0, Blocks.soul_sand, 0);
EntityFX fx = new net.minecraft.client.particle.EntityBlockDustFX(world, ix, iy, iz, 0, 0, 0, b, meta);
ReflectionHelper.setPrivateValue(EntityFX.class, fx, 150 + rand.nextInt(50), "particleMaxAge", "field_70547_e");
Minecraft.getMinecraft().effectRenderer.addEffect(fx);

View File

@ -307,7 +307,7 @@ public class ModEventHandler
for(int i = 1; i < 5; i++) {
ItemStack prev = prevArmor!= null ? prevArmor[i] : null;
ItemStack prev = prevArmor != null ? prevArmor[i] : null;
ItemStack armor = event.entityLiving.getEquipmentInSlot(i);
boolean reapply = prevArmor != null && !ItemStack.areItemStacksEqual(prev, armor);

View File

@ -160,6 +160,7 @@ public class ResourceManager {
//Radar
public static final IModelCustom radar_body = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/radar_base.obj"));
public static final IModelCustom radar_head = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/radar_head.obj"));
public static final IModelCustom radar = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/machines/radar.obj"));
//Forcefield
public static final IModelCustom forcefield_top = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/forcefield_top.obj"));
@ -402,6 +403,8 @@ public class ResourceManager {
//Radar
public static final ResourceLocation radar_body_tex = new ResourceLocation(RefStrings.MODID, "textures/models/radar_base.png");
public static final ResourceLocation radar_head_tex = new ResourceLocation(RefStrings.MODID, "textures/models/radar_head.png");
public static final ResourceLocation radar_base_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/radar_base.png");
public static final ResourceLocation radar_dish_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/radar_dish.png");
//Forcefield
public static final ResourceLocation forcefield_base_tex = new ResourceLocation(RefStrings.MODID, "textures/models/forcefield_base.png");

View File

@ -716,14 +716,14 @@ public class ItemRenderLibrary {
renderers.put(Item.getItemFromBlock(ModBlocks.machine_radar), new ItemRenderBase() {
public void renderInventory() {
GL11.glTranslated(0, -4, 0);
GL11.glScaled(6, 6, 6);
GL11.glScaled(5, 5, 5);
}
public void renderCommon() {
GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glRotated(90, 0, -1, 0);
bindTexture(ResourceManager.radar_body_tex); ResourceManager.radar_body.renderAll();
bindTexture(ResourceManager.radar_head_tex); ResourceManager.radar_head.renderAll();
GL11.glEnable(GL11.GL_CULL_FACE);
GL11.glDisable(GL11.GL_CULL_FACE);
bindTexture(ResourceManager.radar_base_tex); ResourceManager.radar.renderPart("Base");
GL11.glTranslated(-0.125, 0, 0);
bindTexture(ResourceManager.radar_dish_tex); ResourceManager.radar.renderPart("Dish");
GL11.glEnable(GL11.GL_CULL_FACE);
}});
renderers.put(Item.getItemFromBlock(ModBlocks.machine_uf6_tank), new ItemRenderBase() {

View File

@ -10,41 +10,25 @@ import net.minecraft.tileentity.TileEntity;
public class RenderRadar extends TileEntitySpecialRenderer {
@Override
public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f)
{
GL11.glPushMatrix();
GL11.glTranslated(x + 0.5D, y, z + 0.5D);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_CULL_FACE);
@Override
public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f) {
GL11.glPushMatrix();
GL11.glTranslated(x + 0.5D, y, z + 0.5D);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glRotatef(180, 0F, 1F, 0F);
bindTexture(ResourceManager.radar_body_tex);
ResourceManager.radar_body.renderAll();
bindTexture(ResourceManager.radar_base_tex);
ResourceManager.radar.renderPart("Base");
GL11.glPopMatrix();
renderTileEntityAt2(tileEntity, x, y, z, f);
}
public void renderTileEntityAt2(TileEntity tileEntity, double x, double y, double z, float f)
{
GL11.glPushMatrix();
GL11.glTranslated(x + 0.5D, y, z + 0.5D);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glRotatef(180, 0F, 1F, 0F);
TileEntityMachineRadar radar = (TileEntityMachineRadar)tileEntity;
if(radar.power > 0)
GL11.glRotatef((System.currentTimeMillis() / 10) % 360, 0F, 1F, 0F);
TileEntityMachineRadar radar = (TileEntityMachineRadar) tileEntity;
GL11.glRotatef(radar.prevRotation + (radar.rotation - radar.prevRotation) * f, 0F, 1F, 0F);
GL11.glTranslated(-0.125D, 0, 0);
bindTexture(ResourceManager.radar_head_tex);
ResourceManager.radar_head.renderAll();
bindTexture(ResourceManager.radar_dish_tex);
ResourceManager.radar.renderPart("Dish");
GL11.glPopMatrix();
}
GL11.glPopMatrix();
}
}

View File

@ -31,7 +31,6 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraftforge.oredict.OreDictionary;
public class TileEntityMachineOilWell extends TileEntity implements ISidedInventory, IConsumer, IFluidContainer, IFluidSource {
@ -46,14 +45,14 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
public List<IFluidAcceptor> list1 = new ArrayList();
public List<IFluidAcceptor> list2 = new ArrayList();
public FluidTank[] tanks;
private static final int[] slots_top = new int[] {1};
private static final int[] slots_bottom = new int[] {2, 0};
private static final int[] slots_side = new int[] {0};
private static final int[] slots_top = new int[] { 1 };
private static final int[] slots_bottom = new int[] { 2, 0 };
private static final int[] slots_side = new int[] { 0 };
Random rand = new Random();
private String customName;
public TileEntityMachineOilWell() {
slots = new ItemStack[6];
tanks = new FluidTank[2];
@ -73,21 +72,19 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
@Override
public ItemStack getStackInSlotOnClosing(int i) {
if(slots[i] != null)
{
if(slots[i] != null) {
ItemStack itemStack = slots[i];
slots[i] = null;
return itemStack;
} else {
return null;
return null;
}
}
@Override
public void setInventorySlotContents(int i, ItemStack itemStack) {
slots[i] = itemStack;
if(itemStack != null && itemStack.stackSize > getInventoryStackLimit())
{
if(itemStack != null && itemStack.stackSize > getInventoryStackLimit()) {
itemStack.stackSize = getInventoryStackLimit();
}
}
@ -101,7 +98,7 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
public boolean hasCustomInventoryName() {
return this.customName != null && this.customName.length() > 0;
}
public void setCustomName(String name) {
this.customName = name;
}
@ -113,78 +110,75 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
@Override
public boolean isUseableByPlayer(EntityPlayer player) {
if(worldObj.getTileEntity(xCoord, yCoord, zCoord) != this)
{
if(worldObj.getTileEntity(xCoord, yCoord, zCoord) != this) {
return false;
}else{
return player.getDistanceSq(xCoord + 0.5D, yCoord + 0.5D, zCoord + 0.5D) <=128;
} else {
return player.getDistanceSq(xCoord + 0.5D, yCoord + 0.5D, zCoord + 0.5D) <= 128;
}
}
//You scrubs aren't needed for anything (right now)
// You scrubs aren't needed for anything (right now)
@Override
public void openInventory() {}
public void openInventory() {
}
@Override
public void closeInventory() {}
public void closeInventory() {
}
@Override
public boolean isItemValidForSlot(int i, ItemStack itemStack) {
if(i == 0)
if(itemStack.getItem() instanceof IBatteryItem)
return true;
if(i == 1)
return true;
return false;
}
@Override
public ItemStack decrStackSize(int i, int j) {
if(slots[i] != null)
{
if(slots[i].stackSize <= j)
{
if(slots[i] != null) {
if(slots[i].stackSize <= j) {
ItemStack itemStack = slots[i];
slots[i] = null;
return itemStack;
}
ItemStack itemStack1 = slots[i].splitStack(j);
if (slots[i].stackSize == 0)
{
if(slots[i].stackSize == 0) {
slots[i] = null;
}
return itemStack1;
} else {
return null;
}
}
@Override
public void readFromNBT(NBTTagCompound nbt) {
super.readFromNBT(nbt);
NBTTagList list = nbt.getTagList("items", 10);
this.power = nbt.getLong("powerTime");
this.age = nbt.getInteger("age");
this.tanks[0].readFromNBT(nbt, "oil");
this.tanks[1].readFromNBT(nbt, "gas");
slots = new ItemStack[getSizeInventory()];
for(int i = 0; i < list.tagCount(); i++)
{
for(int i = 0; i < list.tagCount(); i++) {
NBTTagCompound nbt1 = list.getCompoundTagAt(i);
byte b0 = nbt1.getByte("slot");
if(b0 >= 0 && b0 < slots.length)
{
if(b0 >= 0 && b0 < slots.length) {
slots[b0] = ItemStack.loadItemStackFromNBT(nbt1);
}
}
}
@Override
public void writeToNBT(NBTTagCompound nbt) {
super.writeToNBT(nbt);
@ -193,27 +187,24 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
this.tanks[0].writeToNBT(nbt, "oil");
this.tanks[1].writeToNBT(nbt, "gas");
NBTTagList list = new NBTTagList();
for(int i = 0; i < slots.length; i++)
{
if(slots[i] != null)
{
for(int i = 0; i < slots.length; i++) {
if(slots[i] != null) {
NBTTagCompound nbt1 = new NBTTagCompound();
nbt1.setByte("slot", (byte)i);
nbt1.setByte("slot", (byte) i);
slots[i].writeToNBT(nbt1);
list.appendTag(nbt1);
}
}
nbt.setTag("items", list);
}
@Override
public int[] getAccessibleSlotsFromSide(int p_94128_1_)
{
return p_94128_1_ == 0 ? slots_bottom : (p_94128_1_ == 1 ? slots_top : slots_side);
}
public int[] getAccessibleSlotsFromSide(int p_94128_1_) {
return p_94128_1_ == 0 ? slots_bottom : (p_94128_1_ == 1 ? slots_top : slots_side);
}
@Override
public boolean canInsertItem(int i, ItemStack itemStack, int j) {
@ -224,16 +215,16 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
public boolean canExtractItem(int i, ItemStack itemStack, int j) {
return false;
}
public long getPowerScaled(long i) {
return (power * i) / maxPower;
}
@Override
public void updateEntity() {
int timer = 50;
age++;
age2++;
if(age >= timer)
@ -244,93 +235,128 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
fillFluidInit(tanks[0].getTankType());
fillFluidInit(tanks[1].getTankType());
}
if(!worldObj.isRemote) {
this.tanks[0].unloadTank(1, 2, slots);
this.tanks[1].unloadTank(3, 4, slots);
for(int i = 0; i < 2; i++) {
tanks[i].updateTank(xCoord, yCoord, zCoord, worldObj.provider.dimensionId);
}
power = Library.chargeTEFromItems(slots, 0, power, maxPower);
if(power >= 100) {
//operation start
// operation start
if(age == timer - 1) {
warning = 0;
//warning 0, green: derrick is operational
//warning 1, red: derrick is full, has no power or the drill is jammed
//warning 2, yellow: drill has reached max depth
// warning 0, green: derrick is operational
// warning 1, red: derrick is full, has no power or the
// drill is jammed
// warning 2, yellow: drill has reached max depth
for(int i = this.yCoord - 1; i > this.yCoord - 1 - 100; i--) {
if(i <= 5) {
//Code 2: The drilling ended
// Code 2: The drilling ended
warning = 2;
break;
}
Block b = worldObj.getBlock(this.xCoord, i, this.zCoord);
if(b == ModBlocks.oil_pipe)
continue;
if((b.isReplaceable(worldObj, xCoord, i, zCoord) || b.getExplosionResistance(null) < 100) && !(b == ModBlocks.ore_oil || b == ModBlocks.ore_oil_empty)) {
// wanted to add oreDict support for oreUranium, but
// to be honest it's such a fringe case even with
// regular uranium ore that it's not worth all the
// lull checking (for naughty blocks with no items)
// and tedious ore dict lookups (which can be done
// in 5 minutes but that's more effort than it's
// worth)
if(worldObj.getBlock(xCoord, i, zCoord) == ModBlocks.ore_uranium) {
for(int u = -1; u <= 1; u++) {
for(int v = -1; v <= 1; v++) {
if(worldObj.getBlock(xCoord + u, yCoord + 6, zCoord + v) == Blocks.air) {
worldObj.setBlock(xCoord + u, yCoord + 6, zCoord + v, ModBlocks.gas_radon_dense);
}
}
}
}
worldObj.setBlock(xCoord, i, zCoord, ModBlocks.oil_pipe);
//Code 2: The drilling ended
// Code 2: The drilling ended
if(i == this.yCoord - 100)
warning = 2;
break;
} else if(this.tanks[0].getFill() < this.tanks[0].getMaxFill() && this.tanks[1].getFill() < this.tanks[1].getMaxFill()) {
if(succ(this.xCoord, i, this.zCoord)) {
this.tanks[0].setFill(this.tanks[0].getFill() + 500);
if(this.tanks[0].getFill() > this.tanks[0].getMaxFill())
this.tanks[0].setFill(tanks[0].getMaxFill());
this.tanks[1].setFill(this.tanks[1].getFill() + (100 + rand.nextInt(401)));
if(this.tanks[1].getFill() > this.tanks[1].getMaxFill())
this.tanks[1].setFill(tanks[1].getMaxFill());
ExplosionLarge.spawnOilSpills(worldObj, xCoord + 0.5F, yCoord + 5.5F, zCoord + 0.5F, 3);
worldObj.playSoundEffect(this.xCoord, this.yCoord, this.zCoord, "game.neutral.swim.splash", 2.0F, 0.5F);
break;
} else {
worldObj.setBlock(xCoord, i, zCoord, ModBlocks.oil_pipe);
break;
}
} else {
//Code 1: Drill jammed
// Code 1: Drill jammed
warning = 1;
break;
}
}
}
//operation end
// operation end
power -= 100;
} else {
warning = 1;
}
warning2 = 0;
if(tanks[1].getFill() > 0) {
if(slots[5] != null && (slots[5].getItem() == ModItems.fuse || slots[5].getItem() == ModItems.screwdriver)) {
warning2 = 2;
tanks[1].setFill(tanks[1].getFill() - 50);
if(tanks[1].getFill() <= 0)
tanks[1].setFill(0);
worldObj.spawnEntityInWorld(new EntityGasFX(worldObj, this.xCoord + 0.5F, this.yCoord + 6.5F, this.zCoord + 0.5F, 0.0, 0.0, 0.0));
worldObj.spawnEntityInWorld(new EntityGasFX(worldObj, this.xCoord + 0.5F, this.yCoord + 6.5F, this.zCoord + 0.5F, 0.0, 0.0, 0.0));
for(int u = -1; u <= 1; u++) {
for(int v = -1; v <= 1; v++) {
if(worldObj.rand.nextInt(10) == 0 && worldObj.getBlock(xCoord + u, yCoord + 6, zCoord + v) == Blocks.air) {
worldObj.setBlock(xCoord + u, yCoord + 6, zCoord + v, ModBlocks.gas_flammable);
}
}
}
} else {
warning2 = 1;
}
@ -338,33 +364,33 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
PacketDispatcher.wrapper.sendToAllAround(new AuxElectricityPacket(xCoord, yCoord, zCoord, power), new TargetPoint(worldObj.provider.dimensionId, xCoord, yCoord, zCoord, 50));
}
}
public boolean succ(int x, int y, int z) {
list.clear();
succ1(x, y, z);
succ2(x, y, z);
if(!list.isEmpty()) {
int i = rand.nextInt(list.size());
int a = list.get(i)[0];
int b = list.get(i)[1];
int c = list.get(i)[2];
if(worldObj.getBlock(a, b, c) == ModBlocks.ore_oil) {
worldObj.setBlock(a, b, c, ModBlocks.ore_oil_empty);
return true;
}
}
return false;
}
public void succInit1(int x, int y, int z) {
succ1(x + 1, y, z);
succ1(x - 1, y, z);
@ -373,7 +399,7 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
succ1(x, y, z + 1);
succ1(x, y, z - 1);
}
public void succInit2(int x, int y, int z) {
succ2(x + 1, y, z);
succ2(x - 1, y, z);
@ -382,20 +408,18 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
succ2(x, y, z + 1);
succ2(x, y, z - 1);
}
List<int[]> list = new ArrayList<int[]>();
public void succ1(int x, int y, int z) {
if(worldObj.getBlock(x, y, z) == ModBlocks.ore_oil_empty &&
worldObj.getBlockMetadata(x, y, z) == 0) {
if(worldObj.getBlock(x, y, z) == ModBlocks.ore_oil_empty && worldObj.getBlockMetadata(x, y, z) == 0) {
worldObj.setBlockMetadataWithNotify(x, y, z, 1, 2);
succInit1(x, y, z);
}
}
public void succ2(int x, int y, int z) {
if(worldObj.getBlock(x, y, z) == ModBlocks.ore_oil_empty &&
worldObj.getBlockMetadata(x, y, z) == 1) {
if(worldObj.getBlock(x, y, z) == ModBlocks.ore_oil_empty && worldObj.getBlockMetadata(x, y, z) == 1) {
worldObj.setBlockMetadataWithNotify(x, y, z, 0, 2);
succInit2(x, y, z);
} else if(worldObj.getBlock(x, y, z) == ModBlocks.ore_oil) {
@ -406,35 +430,34 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
@Override
public void setPower(long i) {
power = i;
}
@Override
public long getPower() {
return power;
}
@Override
public long getMaxPower() {
return maxPower;
}
@Override
public AxisAlignedBB getRenderBoundingBox() {
return TileEntity.INFINITE_EXTENT_AABB;
}
@Override
@SideOnly(Side.CLIENT)
public double getMaxRenderDistanceSquared()
{
public double getMaxRenderDistanceSquared() {
return 65536.0D;
}
@Override
public boolean getTact() {
if (age2 >= 0 && age2 < 10) {
if(age2 >= 0 && age2 < 10) {
return true;
}
@ -460,7 +483,7 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
return tanks[0].getFill();
else if(type.name().equals(tanks[1].getTankType().name()))
return tanks[1].getFill();
return 0;
}
@ -506,7 +529,7 @@ public class TileEntityMachineOilWell extends TileEntity implements ISidedInvent
List<FluidTank> list = new ArrayList();
list.add(tanks[0]);
list.add(tanks[1]);
return list;
}

View File

@ -25,7 +25,10 @@ public class TileEntityMachineRadar extends TileEntityTickingBase implements ICo
public List<int[]> nearbyMissiles = new ArrayList();
int pingTimer = 0;
int lastPower;
final static int maxTimer = 40;
final static int maxTimer = 80;
public float prevRotation;
public float rotation;
public long power = 0;
public static final int maxPower = 100000;
@ -84,6 +87,18 @@ public class TileEntityMachineRadar extends TileEntityTickingBase implements ICo
pingTimer = 0;
}
}
} else {
prevRotation = rotation;
if(power > 0) {
rotation += 5F;
}
if(rotation >= 360) {
rotation -= 360F;
prevRotation -= 360F;
}
}
}