a ton of stuff, whoa mama

This commit is contained in:
HbmMods 2020-03-14 22:01:03 +01:00
parent 2a205c6b9b
commit 702ce91f64
62 changed files with 3285 additions and 412 deletions

View File

@ -1469,13 +1469,16 @@ item.ammo_20gauge_wither.name=Kaliber 20 Schrot (Wither)
item.ammo_5mm.name=5mm Patrone
item.ammo_5mm_explosive.name=5mm Patrone (Explosiv)
item.ammo_5mm_du.name=5mm Patrone (DU)
item.ammo_5mm_star.name=5mm Patrone (Sternenmetall)
item.ammo_50ae.name=.50 AE Patrone
item.ammo_50ae_ap.name=.50 AE Patrone (Panzerbrechend)
item.ammo_50ae_du.name=.50 AE Patrone (DU)
item.ammo_50ae_star.name=.50 AE Patrone (Sternenmetall)
item.ammo_50bmg.name=.50 BMG Patrone
item.ammo_50bmg_incendiary.name=.50 BMG Patrone (Brand)
item.ammo_50bmg_explosive.name=.50 BMG Patrone (Explosiv)
item.ammo_50bmg_du.name=.50 BMG Patrone (DU)
item.ammo_50bmg_star.name=.50 BMG Patrone (Sternenmetall)
item.ammo_9mm.name=9mm Patrone
item.ammo_9mm_ap.name=9mm Patrone (Panzerbrechend)
item.ammo_9mm_du.name=9mm Patrone (DU)
@ -1489,6 +1492,7 @@ item.ammo_357_desh.name=.357 Magnum Deshkugel
item.ammo_44.name=.44 Magnum Patrone
item.ammo_44_ap.name=.44 Magnum Patrone (Panzerbrechend)
item.ammo_44_du.name=.44 Magnum Patrone (DU)
item.ammo_44_star.name=.44 Magnum Patrone (Sternenmetall)
item.ammo_44_pip.name=.44 Magnum Patrone (Güterwagon)
item.ammo_44_bj.name=.44 Magnum Patrone (Boot)
item.ammo_44_rocket.name=.44 Magnum Rakete
@ -2286,7 +2290,7 @@ item.letter.name=Eilbrief
item.polaroid.name=Das Polaroid
item.glitch.name=Glitch
item.book_secret.name=3-596-50802-9
item.book_of_.name=Das Buch der
item.book_of_.name=Das Buch der Güterwaggons
item.burnt_bark.name=Verbrannte Rinde
item.loot_10.name=Größe 10 Raketen-Lootbox

View File

@ -1469,13 +1469,16 @@ item.ammo_20gauge_wither.name=20 Gauge Buckshot (Withering)
item.ammo_5mm.name=5mm Round
item.ammo_5mm_explosive.name=5mm Round (Explosive)
item.ammo_5mm_du.name=5mm Round (DU)
item.ammo_5mm_star.name=5mm Round (Starmetal)
item.ammo_50ae.name=.50 AE Round
item.ammo_50ae_ap.name=.50 AE Round (Armor Piercing)
item.ammo_50ae_du.name=.50 AE Round (DU)
item.ammo_50ae_star.name=.50 AE Round (Starmetal)
item.ammo_50bmg.name=.50 BMG Round
item.ammo_50bmg_incendiary.name=.50 BMG Round (Incendiary)
item.ammo_50bmg_explosive.name=.50 BMG Round (Explosive)
item.ammo_50bmg_du.name=.50 BMG Round (DU)
item.ammo_50bmg_star.name=.50 BMG Round (Starmetal)
item.ammo_9mm.name=9mm Round
item.ammo_9mm_ap.name=9mm Round (Armor Piercing)
item.ammo_9mm_du.name=9mm Round (DU)
@ -1489,6 +1492,7 @@ item.ammo_357_desh.name=.357 Magnum Desh Bullet
item.ammo_44.name=.44 Magnum Bullet
item.ammo_44_ap.name=.44 Magnum Bullet (Armor Piercing)
item.ammo_44_du.name=.44 Magnum Bullet (DU)
item.ammo_44_star.name=.44 Magnum Bullet (Starmetal)
item.ammo_44_pip.name=.44 Magnum Bullet (Boxcar)
item.ammo_44_bj.name=.44 Magnum Bullet (Boat)
item.ammo_44_rocket.name=.44 Magnum Rocket
@ -2286,7 +2290,7 @@ item.letter.name=Express Mail
item.polaroid.name=The Polaroid
item.glitch.name=Glitch
item.book_secret.name=3-596-50802-9
item.book_of_.name=The Book of
item.book_of_.name=The Book of Boxcars
item.burnt_bark.name=Burnt Bark
item.loot_10.name=Size 10 Missile Loot Crate

File diff suppressed because it is too large Load Diff

View File

@ -97,90 +97,36 @@ v 0.025000 0.450000 -0.585000
v 0.025000 0.450000 -0.535000
v -0.025000 0.450000 -0.585000
v -0.025000 0.450000 -0.535000
vt 0.760870 0.130435
vt 0.456522 0.217391
vt 0.326087 0.130435
vt 0.108696 0.891304
vt 0.239130 0.891304
vt 0.239130 0.956522
vt 0.326087 0.391304
vt 0.456522 0.304348
vt 0.760870 0.391304
vt 0.239130 0.217391
vt 0.326087 0.217391
vt 0.326087 0.304348
vt 0.760870 0.217391
vt 0.760870 0.304348
vt 0.760870 0.043478
vt 0.108696 0.586957
vt 0.108696 0.521739
vt 0.760870 0.521739
vt 0.108696 0.456522
vt 0.760870 0.456522
vt 0.217391 0.847826
vt 0.130435 0.847826
vt 0.130435 0.782609
vt 0.108696 0.391304
vt 0.108696 0.782609
vt 0.108696 0.717391
vt 0.760870 0.717391
vt 0.007716 0.472674
vt 0.007716 0.419018
vt 0.100650 0.419018
vt 0.108696 0.652174
vt 0.760870 0.586957
vt 0.760870 0.652174
vt 0.217391 0.978261
vt 0.130435 0.978261
vt 0.108696 0.956522
vt 0.760870 0.434783
vt 0.826087 0.434783
vt 0.826087 0.543478
vt 0.760870 0.413043
vt 0.826087 0.413043
vt 0.826087 0.347826
vt 0.826087 0.304348
vt 0.760870 0.347826
vt 0.826087 0.239130
vt 0.826087 0.739130
vt 0.826087 0.847826
vt 0.760870 0.847826
vt 0.760870 0.673913
vt 0.826087 0.673913
vt 0.760870 0.630435
vt 0.826087 0.630435
vt 0.760870 0.565217
vt 0.826087 0.565217
vt 0.369565 0.891304
vt 0.260870 0.847826
vt 0.347826 0.782609
vt 0.347826 0.847826
vt 0.847826 0.413043
vt 0.847826 0.391304
vt 0.934783 0.391304
vt 0.826087 0.413043
vt 0.826087 0.239130
vt 0.847826 0.326087
vt 0.934783 0.326087
vt 0.847826 0.239130
vt 0.956522 0.239130
vt 0.956522 0.413043
vt 0.000063 0.000063
vt 0.086957 0.000000
vt 0.086957 0.217391
vt 0.130435 0.217391
vt 0.130435 0.043478
vt 0.130435 0.173913
vt 0.260870 0.217391
vt 0.217391 0.173913
vt 0.217391 0.043478
vt 0.130435 0.043478
vt 0.130435 0.000000
vt 0.260870 0.217391
vt 0.152174 0.304348
vt -0.000000 0.304348
vt -0.000000 0.260870
vt 0.152174 0.260870
vt -0.000000 0.217391
vt -0.000000 0.347826
vt -0.000000 0.391304
vt 0.152174 0.347826
vt 0.869565 0.478261
vt 0.869565 0.456522
vt 0.913043 0.456522
@ -204,7 +150,9 @@ vt 0.978261 0.239130
vt 0.913043 0.239130
vt 0.065217 0.608696
vt 0.108696 0.608696
vt 0.108696 0.652174
vt 0.065217 0.652174
vt 0.108696 0.717391
vt 0.065217 0.543478
vt 0.000000 0.500000
vt 0.021739 0.500000
@ -215,183 +163,278 @@ vt 0.043478 0.521739
vt 0.347826 0.978261
vt 0.260870 0.978261
vt 0.369565 0.956522
vt 0.217391 0.782609
vt 0.100650 0.472674
vt 0.054183 0.499502
vt 0.054183 0.392190
vt 0.260870 0.782609
vt 0.847826 0.391304
vt 0.934783 0.391304
vt 0.000000 0.217391
vt 0.260870 -0.000000
vt 0.913043 0.478261
vt 0.869565 0.043478
vt 0.760870 0.239130
vt 0.065217 0.717391
vt 0.108696 0.543478
vt 0.000000 0.521739
vt 0.760870 0.130435
vt 0.456522 0.217391
vt 0.326087 0.130435
vt 0.326087 0.391304
vt 0.456522 0.304348
vt 0.760870 0.391304
vt 0.239130 0.217391
vt 0.326087 0.217391
vt 0.326087 0.304348
vt 0.760870 0.217391
vt 0.760870 0.304348
vt 0.760870 0.043478
vt 0.108696 0.586957
vt 0.108696 0.521739
vt 0.760870 0.521739
vt 0.108696 0.456522
vt 0.760870 0.456522
vt 0.108696 0.391304
vt 0.108696 0.782609
vt 0.760870 0.717391
vt 0.760870 0.586957
vt 0.760870 0.652174
vt 0.760870 0.434783
vt 0.826087 0.434783
vt 0.826087 0.543478
vt 0.760870 0.413043
vt 0.826087 0.347826
vt 0.826087 0.304348
vt 0.760870 0.347826
vt 0.826087 0.739130
vt 0.826087 0.847826
vt 0.760870 0.847826
vt 0.760870 0.673913
vt 0.826087 0.673913
vt 0.760870 0.630435
vt 0.826087 0.630435
vt 0.760870 0.565217
vt 0.826087 0.565217
vt 0.847826 0.413043
vt 0.847826 0.239130
vt 0.130435 0.217391
vt 0.130435 0.000000
vt 0.152174 0.304348
vt -0.000000 0.304348
vt -0.000000 0.260870
vt 0.152174 0.260870
vt -0.000000 0.347826
vt -0.000000 0.391304
vt 0.152174 0.347826
vt 0.326087 0.173913
vt 0.326087 0.347826
vt 0.239130 0.304348
vt 0.326087 0.043478
vt 0.217391 0.782609
vt 0.760870 0.782609
vt 0.100650 0.472674
vt 0.054183 0.499502
vt 0.054183 0.392190
vt 0.760870 0.543478
vt 0.760870 0.239130
vt 0.760870 0.739130
vt 0.260870 0.782609
vt 0.934783 0.413043
vt 0.934783 0.239130
vt 0.217391 0.217391
vt 0.217391 -0.000000
vt 0.260870 -0.000000
vt 0.152174 0.217391
vt 0.152174 0.391304
vt 0.913043 0.478261
vt 0.869565 0.043478
vt 0.065217 0.717391
vt 0.108696 0.543478
vt 0.000000 0.521739
vn -1.000000 -0.000000 0.000000
vn 0.000000 0.000000 1.000000
vn 1.000000 0.000000 0.000000
vn 0.000000 -1.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 -0.948700 0.316200
vn 0.500000 0.866000 -0.000000
vn 0.500000 -0.866000 0.000000
vn -0.500000 -0.866000 0.000000
vn -0.500000 0.866000 -0.000000
vn 0.894400 0.447200 0.000000
vn 0.970100 -0.242500 0.000000
vn -0.970100 -0.242500 0.000000
vn -0.894400 0.447200 0.000000
vn 0.000000 0.000000 -1.000000
vn 0.000000 0.768200 -0.640200
vn 0.000000 -0.287300 -0.957800
vn 0.000000 0.707100 -0.707100
vn 1.000000 0.000000 0.000000
vn -1.000000 0.000000 0.000000
vn 0.000000 -0.707100 -0.707100
vn 0.707100 0.707100 -0.000000
vn 0.707100 -0.707100 0.000000
vn -0.707100 0.707100 -0.000000
vn -0.707100 -0.707100 0.000000
vn 0.000000 0.707100 0.707100
vn 0.000000 -1.000000 0.000000
vn 0.000000 -0.274700 0.961500
vn 0.000000 0.274700 -0.961500
vn 0.000000 1.000000 0.000000
vn 0.894400 0.447200 0.000000
vn -0.894400 0.447200 0.000000
vn -0.707100 0.707100 0.000000
vn -0.672700 -0.730300 0.118500
vn -0.577300 0.577300 0.577300
vn 0.577300 0.577300 0.577300
vn 0.672700 -0.730300 0.118500
vn 0.707100 0.707100 0.000000
vn -0.596200 -0.469400 0.651300
vn 0.596200 -0.469400 0.651300
vn -0.707100 -0.707100 0.000000
vn 0.707100 -0.707100 0.000000
vn 0.000000 0.792400 0.610000
vn 0.686200 0.396200 0.610000
vn 0.866000 0.500000 0.000000
vn 0.686200 -0.396200 0.610000
vn 0.866000 -0.500000 0.000000
vn 0.000000 -0.792400 0.610000
vn -0.686200 -0.396200 0.610000
vn -0.866000 -0.500000 0.000000
vn -0.686200 0.396200 0.610000
vn -0.866000 0.500000 0.000000
vn 0.418300 0.676800 0.605700
vn 0.418300 0.676800 -0.605700
vn -0.418300 0.676800 -0.605700
vn 0.732100 0.172800 0.658900
vn 0.732100 0.172800 -0.658900
vn 0.727100 -0.089500 -0.680600
vn 0.672300 -0.082700 -0.735600
vn 0.727100 -0.089500 0.680600
vn 0.577300 -0.577300 -0.577300
vn 0.672300 -0.082700 0.735600
vn -0.577300 -0.577300 -0.577300
vn 0.577300 -0.577300 0.577300
vn -0.672300 -0.082700 0.735600
vn -0.672300 -0.082700 -0.735600
vn -0.727100 -0.089500 0.680600
vn -0.727100 -0.089500 -0.680600
vn -0.732100 0.172800 0.658900
vn -0.732100 0.172800 -0.658900
vn 0.487100 0.670900 -0.559100
vn 0.622900 0.331800 -0.708400
vn -0.622900 0.331800 -0.708400
vn 0.675800 -0.107000 -0.729200
vn -0.675800 -0.107000 -0.729200
vn 0.182400 -0.282500 -0.941700
vn 0.546900 0.773400 0.320400
vn 0.630200 0.297100 -0.717300
vn -0.630200 0.297100 -0.717300
vn -0.630200 -0.297100 -0.717300
vn 0.630200 -0.297100 -0.717300
vn 0.546900 -0.773400 0.320400
vn -0.418300 0.676800 0.605700
vn -0.577300 -0.577300 0.577300
vn -0.487100 0.670900 -0.559100
vn -0.182400 -0.282500 -0.941700
vn -0.546900 0.773400 0.320400
vn -0.546900 -0.773400 0.320400
s off
f 4/1/1 9/2/1 2/3/1
f 29/4/2 30/5/2 32/6/2
f 6/7/3 10/8/3 8/9/3
f 2/10/2 1/11/2 5/12/2
f 3/13/4 7/14/4 10/8/4
f 8/15/5 4/1/5 2/3/5
f 9/2/6 10/8/6 5/12/6
f 14/16/7 16/17/7 15/18/7
f 16/17/3 18/19/3 17/20/3
f 25/21/2 26/22/2 12/23/2
f 17/20/8 18/19/8 20/24/8
f 26/22/2 25/21/2 30/5/2
f 20/25/9 22/26/9 21/27/9
f 24/28/2 22/29/2 18/30/2
f 24/31/10 14/16/10 13/32/10
f 22/26/1 24/31/1 23/33/1
f 27/34/2 28/35/2 31/36/2
f 27/37/5 37/38/5 38/39/5
f 32/40/11 42/41/11 37/38/11
f 40/42/3 42/41/3 32/40/3
f 35/43/12 40/42/12 30/44/12
f 33/45/3 35/43/3 25/14/3
f 34/46/4 33/47/4 11/48/4
f 26/49/1 36/50/1 34/46/1
f 29/51/13 39/52/13 36/50/13
f 31/53/1 41/54/1 39/52/1
f 38/39/14 41/54/14 31/53/14
f 39/55/15 40/5/15 35/56/15
f 34/57/15 36/58/15 35/56/15
f 46/59/16 48/60/16 47/61/16
f 48/60/15 50/62/15 49/63/15
f 49/63/17 50/62/17 44/64/17
f 46/41/3 44/45/3 50/62/3
f 49/63/1 43/65/1 45/66/1
f 53/67/2 54/68/2 52/69/2
f 52/70/18 56/71/18 55/72/18
f 57/73/19 58/74/19 54/75/19
f 56/71/15 58/74/15 57/73/15
f 58/74/3 56/71/3 52/69/3
f 51/76/1 55/72/1 57/73/1
f 59/77/20 60/78/20 62/79/20
f 61/80/21 62/79/21 64/81/21
f 66/82/22 60/78/22 59/77/22
f 64/83/23 66/82/23 65/84/23
f 68/85/15 70/86/15 69/87/15
f 70/86/19 74/88/19 73/89/19
f 71/90/24 72/91/24 68/85/24
f 72/92/3 74/93/3 70/86/3
f 69/87/1 73/94/1 71/95/1
f 80/96/4 82/97/4 81/98/4
f 81/99/25 82/97/25 78/100/25
f 76/101/26 80/96/26 79/102/26
f 81/103/1 77/104/1 75/105/1
f 76/101/3 78/100/3 82/97/3
f 87/106/5 89/107/5 90/31/5
f 88/108/1 90/31/1 85/26/1
f 89/107/3 87/106/3 84/109/3
f 94/110/11 93/111/11 91/112/11
f 91/112/14 95/113/14 96/114/14
f 93/115/15 95/112/15 91/111/15
f 94/115/2 92/113/2 96/112/2
f 38/116/15 37/117/15 42/6/15
f 41/118/15 42/6/15 40/5/15
f 1/119/1 2/3/1 9/2/1
f 4/1/1 3/13/1 9/2/1
f 31/36/2 29/4/2 32/6/2
f 7/14/3 8/9/3 10/8/3
f 6/7/3 5/120/3 10/8/3
f 6/121/2 2/10/2 5/12/2
f 9/2/4 3/13/4 10/8/4
f 6/122/5 8/15/5 2/3/5
f 1/11/6 9/2/6 5/12/6
f 13/32/7 14/16/7 15/18/7
f 15/18/3 16/17/3 17/20/3
f 11/123/2 25/21/2 12/23/2
f 19/9/8 17/20/8 20/24/8
f 29/4/2 26/22/2 30/5/2
f 19/124/9 20/25/9 21/27/9
f 18/30/2 16/125/2 14/126/2
f 14/126/2 24/28/2 18/30/2
f 22/29/2 20/127/2 18/30/2
f 23/33/10 24/31/10 13/32/10
f 21/27/1 22/26/1 23/33/1
f 32/6/2 27/34/2 31/36/2
f 28/128/5 27/37/5 38/39/5
f 27/37/11 32/40/11 37/38/11
f 30/44/3 40/42/3 32/40/3
f 25/14/12 35/43/12 30/44/12
f 11/129/3 33/45/3 25/14/3
f 12/130/4 34/46/4 11/48/4
f 12/130/1 26/49/1 34/46/1
f 26/49/13 29/51/13 36/50/13
f 29/51/1 31/53/1 39/52/1
f 28/128/14 38/39/14 31/53/14
f 36/58/15 39/55/15 35/56/15
f 33/131/15 34/57/15 35/56/15
f 45/132/16 46/59/16 47/61/16
f 47/61/15 48/60/15 49/63/15
f 43/133/17 49/63/17 44/64/17
f 48/60/3 46/41/3 50/62/3
f 47/61/1 49/63/1 45/66/1
f 51/81/2 53/67/2 52/69/2
f 51/134/18 52/70/18 55/72/18
f 53/135/19 57/73/19 54/75/19
f 55/72/15 56/71/15 57/73/15
f 54/68/3 58/74/3 52/69/3
f 53/136/1 51/76/1 57/73/1
f 61/80/20 59/77/20 62/79/20
f 63/137/21 61/80/21 64/81/21
f 65/84/22 66/82/22 59/77/22
f 63/138/23 64/83/23 65/84/23
f 67/139/15 68/85/15 69/87/15
f 69/87/19 70/86/19 73/89/19
f 67/139/24 71/90/24 68/85/24
f 68/85/3 72/92/3 70/86/3
f 67/139/1 69/87/1 71/95/1
f 79/140/4 80/96/4 81/98/4
f 77/129/25 81/99/25 78/100/25
f 75/105/26 76/101/26 79/102/26
f 79/102/1 81/103/1 75/105/1
f 80/96/3 76/101/3 82/97/3
f 88/108/5 87/106/5 90/31/5
f 83/141/1 88/108/1 85/26/1
f 86/142/3 89/107/3 84/109/3
f 92/143/11 94/110/11 91/112/11
f 92/143/14 91/112/14 96/114/14
f 41/118/15 38/116/15 42/6/15
f 39/55/15 41/118/15 40/5/15
f 29/1/1 30/2/1 32/3/1
f 25/4/1 26/5/1 12/6/1
f 26/5/1 25/4/1 30/2/1
f 24/7/1 22/8/1 18/9/1
f 27/10/1 28/11/1 31/12/1
f 39/13/2 40/2/2 35/14/2
f 34/15/2 36/16/2 35/14/2
f 46/17/3 44/18/3 50/19/3
f 49/20/4 43/21/4 45/22/4
f 53/23/1 54/24/1 52/25/1
f 58/26/3 56/27/3 52/25/3
f 51/28/4 55/29/4 57/30/4
f 68/31/2 70/32/2 69/33/2
f 70/32/5 74/34/5 73/35/5
f 71/36/6 72/37/6 68/31/6
f 72/38/3 74/39/3 70/32/3
f 69/33/4 73/40/4 71/41/4
f 80/42/7 82/43/7 81/44/7
f 81/45/8 82/43/8 78/46/8
f 76/47/9 80/42/9 79/48/9
f 81/49/4 77/50/4 75/51/4
f 76/47/3 78/46/3 82/43/3
f 87/52/10 89/53/10 90/54/10
f 88/55/4 90/54/4 85/56/4
f 89/53/3 87/52/3 84/57/3
f 94/58/11 93/59/11 91/60/11
f 91/60/12 95/61/12 96/62/12
f 93/63/2 95/60/2 91/59/2
f 94/63/1 92/61/1 96/60/1
f 38/64/2 37/65/2 42/3/2
f 41/66/2 42/3/2 40/2/2
f 31/12/1 29/1/1 32/3/1
f 11/67/1 25/4/1 12/6/1
f 29/1/1 26/5/1 30/2/1
f 18/9/1 16/68/1 14/69/1
f 14/69/1 24/7/1 18/9/1
f 22/8/1 20/70/1 18/9/1
f 32/3/1 27/10/1 31/12/1
f 36/16/2 39/13/2 35/14/2
f 33/71/2 34/15/2 35/14/2
f 48/72/3 46/17/3 50/19/3
f 47/73/4 49/20/4 45/22/4
f 51/74/1 53/23/1 52/25/1
f 54/24/3 58/26/3 52/25/3
f 53/75/4 51/28/4 57/30/4
f 67/76/2 68/31/2 69/33/2
f 69/33/5 70/32/5 73/35/5
f 67/76/6 71/36/6 68/31/6
f 68/31/3 72/38/3 70/32/3
f 67/76/4 69/33/4 71/41/4
f 79/77/7 80/42/7 81/44/7
f 77/78/8 81/45/8 78/46/8
f 75/51/9 76/47/9 79/48/9
f 79/48/4 81/49/4 75/51/4
f 80/42/3 76/47/3 82/43/3
f 88/55/10 87/52/10 90/54/10
f 83/79/4 88/55/4 85/56/4
f 86/80/3 89/53/3 84/57/3
f 92/81/11 94/58/11 91/60/11
f 92/81/12 91/60/12 96/62/12
f 41/66/2 38/64/2 42/3/2
f 39/13/2 41/66/2 40/2/2
s 1
f 4/82/13 9/83/14 2/84/15
f 6/85/16 10/86/17 8/87/18
f 2/88/15 1/89/19 5/90/20
f 3/91/21 7/92/22 10/86/17
f 8/93/18 4/82/13 2/84/15
f 9/83/14 10/86/17 5/90/20
f 14/94/23 16/95/24 15/96/25
f 16/95/24 18/97/26 17/98/27
f 17/98/27 18/97/26 20/99/28
f 20/100/28 22/56/29 21/101/30
f 24/54/31 14/94/23 13/102/10
f 22/56/29 24/54/31 23/103/32
f 27/104/33 37/105/34 38/106/35
f 32/107/36 42/17/37 37/105/34
f 40/108/38 42/17/37 32/107/36
f 35/109/39 40/108/38 30/110/40
f 33/18/41 35/109/39 25/92/42
f 34/111/43 33/112/41 11/113/44
f 26/114/45 36/115/46 34/111/43
f 29/116/47 39/117/48 36/115/46
f 31/118/49 41/119/50 39/117/48
f 38/106/35 41/119/50 31/118/49
f 46/120/51 48/72/52 47/73/53
f 48/72/52 50/19/54 49/20/55
f 49/20/55 50/19/54 44/121/56
f 52/122/57 56/27/58 55/29/59
f 57/30/60 58/26/61 54/123/62
f 56/27/58 58/26/61 57/30/60
f 59/124/10 60/125/10 62/126/3
f 61/127/3 62/126/3 64/74/7
f 66/128/4 60/125/10 59/124/10
f 64/129/7 66/128/4 65/130/4
f 1/131/19 2/84/15 9/83/14
f 4/82/13 3/91/21 9/83/14
f 7/92/22 8/87/18 10/86/17
f 6/85/16 5/132/20 10/86/17
f 6/133/16 2/88/15 5/90/20
f 9/83/14 3/91/21 10/86/17
f 6/134/16 8/93/18 2/84/15
f 1/89/19 9/83/14 5/90/20
f 13/102/10 14/94/23 15/96/25
f 15/96/25 16/95/24 17/98/27
f 19/87/7 17/98/27 20/99/28
f 19/135/7 20/100/28 21/101/30
f 23/103/32 24/54/31 13/102/10
f 21/101/30 22/56/29 23/103/32
f 28/136/63 27/104/33 38/106/35
f 27/104/33 32/107/36 37/105/34
f 30/110/40 40/108/38 32/107/36
f 25/92/42 35/109/39 30/110/40
f 11/78/44 33/18/41 25/92/42
f 12/137/64 34/111/43 11/113/44
f 12/137/64 26/114/45 34/111/43
f 26/114/45 29/116/47 36/115/46
f 29/116/47 31/118/49 39/117/48
f 28/136/63 38/106/35 31/118/49
f 45/138/65 46/120/51 47/73/53
f 47/73/53 48/72/52 49/20/55
f 43/139/66 49/20/55 44/121/56
f 51/140/67 52/122/57 55/29/59
f 53/141/68 57/30/60 54/123/62
f 55/29/59 56/27/58 57/30/60
f 61/127/3 59/124/10 62/126/3
f 63/142/7 61/127/3 64/74/7
f 65/130/4 66/128/4 59/124/10
f 63/143/7 64/129/7 65/130/4

View File

@ -115,6 +115,7 @@
"weapon.boat": {"category": "player", "sounds": [{"name": "weapon/boat", "stream": false}]},
"weapon.hkShoot": {"category": "player", "sounds": [{"name": "weapon/hkShoot", "stream": false}]},
"weapon.hkReload": {"category": "player", "sounds": [{"name": "weapon/hkReload", "stream": false}]},
"weapon.deagleShoot": {"category": "player", "sounds": [{"name": "weapon/deagleShoot", "stream": false}]},
"weapon.reloadTurret": {"category": "player", "sounds": [{"name": "weapon/reloadTurret", "stream": false}]},
"weapon.switchmode1": {"category": "player", "sounds": [{"name": "weapon/switchmode1", "stream": false}]},

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 251 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 235 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

View File

Before

Width:  |  Height:  |  Size: 812 B

After

Width:  |  Height:  |  Size: 812 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 459 B

After

Width:  |  Height:  |  Size: 787 B

View File

@ -1,5 +0,0 @@
{
"animation": {
"frametime": 4
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 406 B

After

Width:  |  Height:  |  Size: 369 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 384 B

After

Width:  |  Height:  |  Size: 322 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 322 B

After

Width:  |  Height:  |  Size: 384 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 360 B

After

Width:  |  Height:  |  Size: 307 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

@ -16,18 +16,11 @@ import com.hbm.main.MainRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
import net.minecraft.block.Block;
import net.minecraft.block.BlockDirt;
import net.minecraft.block.BlockFalling;
import net.minecraft.block.BlockSlab;
import net.minecraft.block.BlockStairs;
import net.minecraft.block.material.MapColor;
import net.minecraft.block.material.Material;
import net.minecraft.block.material.MaterialLiquid;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemSlab;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidRegistry;
@ -472,6 +465,7 @@ public class ModBlocks {
public static final int guiID_ams_limiter = 56;
public static Block dfc_emitter;
public static final int guiID_dfc_emitter = 87;
public static Block dfc_injector;
public static Block dfc_receiver;
public static Block dfc_core;

View File

@ -1,20 +1,19 @@
package com.hbm.blocks.machine;
import com.hbm.blocks.ModBlocks;
import com.hbm.interfaces.IBomb;
import com.hbm.interfaces.IMultiblock;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.machine.TileEntityCoreEmitter;
import com.hbm.tileentity.machine.TileEntityCoreInjector;
import com.hbm.tileentity.machine.TileEntityCoreReceiver;
import com.hbm.tileentity.machine.TileEntityVaultDoor;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.BlockPistonBase;
import net.minecraft.block.material.Material;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
public class CoreComponent extends BlockContainer {
@ -56,4 +55,21 @@ public class CoreComponent extends BlockContainer {
int l = BlockPistonBase.determineOrientation(world, x, y, z, player);
world.setBlockMetadataWithNotify(x, y, z, l, 2);
}
@Override
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) {
if(world.isRemote) {
return true;
} else if(!player.isSneaking()) {
if(this == ModBlocks.dfc_emitter)
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_dfc_emitter, world, x, y, z);
return true;
} else {
return false;
}
}
}

View File

@ -547,6 +547,12 @@ public class EntityBulletBase extends Entity implements IProjectile {
int cfg = nbt.getInteger("config");
this.config = BulletConfigSyncingUtil.pullConfig(cfg);
if(this.config == null) {
this.setDead();
return;
}
this.dataWatcher.updateObject(18, cfg);
this.dataWatcher.updateObject(16, (byte)this.config.style);

View File

@ -25,100 +25,107 @@ public class BulletConfigSyncingUtil {
}
}
static int i = 0;
/// duplicate ids will cause wrong configs to be loaded ///
public static final int TEST_CONFIG = 0x00;
public static final int IRON_REVOLVER = 0x01;
public static final int STEEL_REVOLVER = 0x02;
public static final int LEAD_REVOLVER = 0x03;
public static final int GOLD_REVOLVER = 0x04;
public static final int CURSED_REVOLVER = 0x05;
public static final int SCHRABIDIUM_REVOLVER = 0x06;
public static final int NIGHT_REVOLVER = 0x07;
public static final int NIGHT2_REVOLVER = 0x08;
public static final int SATURNITE_REVOLVER = 0x09;
public static final int DESH_REVOLVER = 0x0A;
public static int TEST_CONFIG = i++;
public static int IRON_REVOLVER = i++;
public static int STEEL_REVOLVER = i++;
public static int LEAD_REVOLVER = i++;
public static int GOLD_REVOLVER = i++;
public static int CURSED_REVOLVER = i++;
public static int SCHRABIDIUM_REVOLVER = i++;
public static int NIGHT_REVOLVER = i++;
public static int NIGHT2_REVOLVER = i++;
public static int SATURNITE_REVOLVER = i++;
public static int DESH_REVOLVER = i++;
public static final int G20_NORMAL = 0x10;
public static final int G20_SLUG = 0x11;
public static final int G20_FLECHETTE = 0x12;
public static final int G20_FIRE = 0x13;
public static final int G20_EXPLOSIVE = 0x14;
public static final int G20_CAUSTIC = 0x15;
public static final int G20_SHOCK = 0x16;
public static final int G20_WITHER = 0x17;
public static int G20_NORMAL = i++;
public static int G20_SLUG = i++;
public static int G20_FLECHETTE = i++;
public static int G20_FIRE = i++;
public static int G20_EXPLOSIVE = i++;
public static int G20_CAUSTIC = i++;
public static int G20_SHOCK = i++;
public static int G20_WITHER = i++;
public static final int ROCKET_NORMAL = 0x20;
public static final int ROCKET_HE = 0x21;
public static final int ROCKET_INCENDIARY = 0x22;
public static final int ROCKET_SHRAPNEL = 0x23;
public static final int ROCKET_EMP = 0x24;
public static final int ROCKET_GLARE = 0x25;
public static final int ROCKET_SLEEK = 0x26;
public static final int ROCKET_NUKE = 0x27;
public static final int ROCKET_CHAINSAW = 0x28;
public static final int ROCKET_TOXIC = 0x29;
public static int ROCKET_NORMAL = i++;
public static int ROCKET_HE = i++;
public static int ROCKET_INCENDIARY = i++;
public static int ROCKET_SHRAPNEL = i++;
public static int ROCKET_EMP = i++;
public static int ROCKET_GLARE = i++;
public static int ROCKET_SLEEK = i++;
public static int ROCKET_NUKE = i++;
public static int ROCKET_CHAINSAW = i++;
public static int ROCKET_TOXIC = i++;
public static final int GRENADE_NORMAL = 0x30;
public static final int GRENADE_HE = 0x31;
public static final int GRENADE_INCENDIARY = 0x32;
public static final int GRENADE_CHEMICAL = 0x33;
public static final int GRENADE_SLEEK = 0x34;
public static final int GRENADE_CONCUSSION = 0x35;
public static final int GRENADE_FINNED = 0x36;
public static final int GRENADE_NUCLEAR = 0x37;
public static int GRENADE_NORMAL = i++;
public static int GRENADE_HE = i++;
public static int GRENADE_INCENDIARY = i++;
public static int GRENADE_CHEMICAL = i++;
public static int GRENADE_SLEEK = i++;
public static int GRENADE_CONCUSSION = i++;
public static int GRENADE_FINNED = i++;
public static int GRENADE_NUCLEAR = i++;
public static final int G12_NORMAL = 0x40;
public static final int G12_INCENDIARY = 0x41;
public static int G12_NORMAL = i++;
public static int G12_INCENDIARY = i++;
public static final int LR22_NORMAL = 0x50;
public static final int LR22_AP = 0x51;
public static final int LR22_NORMAL_FIRE = 0x52;
public static final int LR22_AP_FIRE = 0x53;
public static int LR22_NORMAL = i++;
public static int LR22_AP = i++;
public static int LR22_NORMAL_FIRE = i++;
public static int LR22_AP_FIRE = i++;
public static final int M44_NORMAL = 0x60;
public static final int M44_AP = 0x61;
public static final int M44_DU = 0x62;
public static final int M44_PIP = 0x63;
public static final int M44_BJ = 0x64;
public static final int M44_ROCKET = 0x65;
public static int M44_NORMAL = i++;
public static int M44_AP = i++;
public static int M44_DU = i++;
public static int M44_STAR = i++;
public static int M44_PIP = i++;
public static int M44_BJ = i++;
public static int M44_ROCKET = i++;
public static final int P9_NORMAL = 0x70;
public static final int P9_AP = 0x71;
public static final int P9_DU = 0x72;
public static final int P9_ROCKET = 0x73;
public static int P9_NORMAL = i++;
public static int P9_AP = i++;
public static int P9_DU = i++;
public static int P9_ROCKET = i++;
public static final int BMG50_NORMAL = 0x80;
public static final int BMG50_INCENDIARY = 0x81;
public static final int BMG50_EXPLOSIVE = 0x82;
public static final int BMG50_DU = 0x83;
public static int BMG50_NORMAL = i++;
public static int BMG50_INCENDIARY = i++;
public static int BMG50_EXPLOSIVE = i++;
public static int BMG50_DU = i++;
public static int BMG50_STAR = i++;
public static final int R5_NORMAL = 0x90;
public static final int R5_EXPLOSIVE = 0x91;
public static final int R5_DU = 0x92;
public static final int R5_NORMAL_BOLT = 0x93;
public static final int R5_EXPLOSIVE_BOLT = 0x94;
public static final int R5_DU_BOLT = 0x95;
public static int R5_NORMAL = i++;
public static int R5_EXPLOSIVE = i++;
public static int R5_DU = i++;
public static int R5_STAR = i++;
public static int R5_NORMAL_BOLT = i++;
public static int R5_EXPLOSIVE_BOLT = i++;
public static int R5_DU_BOLT = i++;
public static int R5_STAR_BOLT = i++;
public static final int AE50_NORMAL = 0xA0;
public static final int AE50_AP = 0xA1;
public static final int AE50_DU = 0xA2;
public static int AE50_NORMAL = i++;
public static int AE50_AP = i++;
public static int AE50_DU = i++;
public static int AE50_STAR = i++;
public static final int SPECIAL_OSIPR = 0xB0;
public static final int SPECIAL_GAUSS = 0xB1;
public static final int SPECIAL_GAUSS_CHARGED = 0xB2;
public static int SPECIAL_OSIPR = i++;
public static int SPECIAL_GAUSS = i++;
public static int SPECIAL_GAUSS_CHARGED = i++;
public static final int G20_NORMAL_FIRE = 0xC0;
public static final int G20_SLUG_FIRE = 0xC1;
public static final int G20_FLECHETTE_FIRE = 0xC2;
public static final int G20_EXPLOSIVE_FIRE = 0xC3;
public static final int G20_CAUSTIC_FIRE = 0xC4;
public static final int G20_SHOCK_FIRE = 0xC5;
public static final int G20_WITHER_FIRE = 0xC6;
public static int G20_NORMAL_FIRE = i++;
public static int G20_SLUG_FIRE = i++;
public static int G20_FLECHETTE_FIRE = i++;
public static int G20_EXPLOSIVE_FIRE = i++;
public static int G20_CAUSTIC_FIRE = i++;
public static int G20_SHOCK_FIRE = i++;
public static int G20_WITHER_FIRE = i++;
public static final int NUKE_NORMAL = 0xD0;
public static final int NUKE_MIRV = 0xD1;
public static final int NUKE_AMAT = 0xD2;
public static final int NUKE_PROTO = 0xD3;
public static int NUKE_NORMAL = i++;
public static int NUKE_MIRV = i++;
public static int NUKE_AMAT = i++;
public static int NUKE_PROTO = i++;
public static void loadConfigsForSync() {
@ -175,6 +182,7 @@ public class BulletConfigSyncingUtil {
configSet.add(new ConfigKeyPair(Gun44MagnumFactory.getNoPipConfig(), M44_NORMAL));
configSet.add(new ConfigKeyPair(Gun44MagnumFactory.getNoPipAPConfig(), M44_AP));
configSet.add(new ConfigKeyPair(Gun44MagnumFactory.getNoPipDUConfig(), M44_DU));
configSet.add(new ConfigKeyPair(Gun44MagnumFactory.getNoPipStarConfig(), M44_STAR));
configSet.add(new ConfigKeyPair(Gun44MagnumFactory.getPipConfig(), M44_PIP));
configSet.add(new ConfigKeyPair(Gun44MagnumFactory.getBJConfig(), M44_BJ));
configSet.add(new ConfigKeyPair(Gun44MagnumFactory.getRocketConfig(), M44_ROCKET));
@ -188,17 +196,21 @@ public class BulletConfigSyncingUtil {
configSet.add(new ConfigKeyPair(Gun50BMGFactory.get50BMGFireConfig(), BMG50_INCENDIARY));
configSet.add(new ConfigKeyPair(Gun50BMGFactory.get50BMGExplosiveConfig(), BMG50_EXPLOSIVE));
configSet.add(new ConfigKeyPair(Gun50BMGFactory.get50BMGDUConfig(), BMG50_DU));
configSet.add(new ConfigKeyPair(Gun50BMGFactory.get50BMGStarConfig(), BMG50_STAR));
configSet.add(new ConfigKeyPair(Gun5mmFactory.get5mmConfig(), R5_NORMAL));
configSet.add(new ConfigKeyPair(Gun5mmFactory.get5mmExplosiveConfig(), R5_EXPLOSIVE));
configSet.add(new ConfigKeyPair(Gun5mmFactory.get5mmDUConfig(), R5_DU));
configSet.add(new ConfigKeyPair(Gun5mmFactory.get5mmStarConfig(), R5_STAR));
configSet.add(new ConfigKeyPair(Gun5mmFactory.get5mmConfig().setToBolt(BulletConfiguration.BOLT_LACUNAE), R5_NORMAL_BOLT));
configSet.add(new ConfigKeyPair(Gun5mmFactory.get5mmExplosiveConfig().setToBolt(BulletConfiguration.BOLT_LACUNAE), R5_EXPLOSIVE_BOLT));
configSet.add(new ConfigKeyPair(Gun5mmFactory.get5mmDUConfig().setToBolt(BulletConfiguration.BOLT_LACUNAE), R5_DU_BOLT));
configSet.add(new ConfigKeyPair(Gun5mmFactory.get5mmStarConfig().setToBolt(BulletConfiguration.BOLT_LACUNAE), R5_STAR_BOLT));
configSet.add(new ConfigKeyPair(Gun50AEFactory.get50AEConfig(), AE50_NORMAL));
configSet.add(new ConfigKeyPair(Gun50AEFactory.get50APConfig(), AE50_AP));
configSet.add(new ConfigKeyPair(Gun50AEFactory.get50DUConfig(), AE50_DU));
configSet.add(new ConfigKeyPair(Gun50AEFactory.get50StarConfig(), AE50_STAR));
configSet.add(new ConfigKeyPair(GunOSIPRFactory.getPulseConfig(), SPECIAL_OSIPR));
configSet.add(new ConfigKeyPair(GunGaussFactory.getGaussConfig(), SPECIAL_GAUSS));
@ -214,6 +226,7 @@ public class BulletConfigSyncingUtil {
configSet.add(new ConfigKeyPair(GunFatmanFactory.getNukeConfig(), NUKE_NORMAL));
configSet.add(new ConfigKeyPair(GunFatmanFactory.getNukeProtoConfig(), NUKE_PROTO));
configSet.add(new ConfigKeyPair(GunFatmanFactory.getBalefireConfig(), NUKE_AMAT));
}
public static BulletConfiguration pullConfig(int key) {

View File

@ -5,7 +5,6 @@ import com.hbm.inventory.container.*;
import com.hbm.inventory.gui.*;
import com.hbm.inventory.inv.InventoryLeadBox;
import com.hbm.items.ModItems;
import com.hbm.items.tool.ItemLeadBox;
import com.hbm.tileentity.bomb.*;
import com.hbm.tileentity.machine.*;
@ -778,6 +777,15 @@ public class GUIHandler implements IGuiHandler {
}
return null;
}
case ModBlocks.guiID_dfc_emitter:
{
if(entity instanceof TileEntityCoreEmitter)
{
return new ContainerCoreEmitter(player.inventory, (TileEntityCoreEmitter) entity);
}
return null;
}
}
} else {
//NON-TE CONTAINERS
@ -1554,6 +1562,15 @@ public class GUIHandler implements IGuiHandler {
}
return null;
}
case ModBlocks.guiID_dfc_emitter:
{
if(entity instanceof TileEntityCoreEmitter)
{
return new GUICoreEmitter(player.inventory, (TileEntityCoreEmitter) entity);
}
return null;
}
}
} else {
//CLIENTONLY GUIS

View File

@ -1,5 +1,6 @@
package com.hbm.handler;
import java.util.ArrayList;
import java.util.List;
import com.hbm.render.util.RenderScreenOverlay.Crosshair;
@ -58,6 +59,7 @@ public class GunConfiguration {
public String name = "";
public String manufacturer = "";
public List<String> comment = new ArrayList();
//bullet configs for main and alt fire
public List<Integer> config;

View File

@ -48,6 +48,7 @@ public class Gun44MagnumFactory {
config.config.add(BulletConfigSyncingUtil.M44_NORMAL);
config.config.add(BulletConfigSyncingUtil.M44_AP);
config.config.add(BulletConfigSyncingUtil.M44_DU);
config.config.add(BulletConfigSyncingUtil.M44_STAR);
config.config.add(BulletConfigSyncingUtil.M44_ROCKET);
return config;
@ -67,6 +68,7 @@ public class Gun44MagnumFactory {
config.config.add(BulletConfigSyncingUtil.M44_NORMAL);
config.config.add(BulletConfigSyncingUtil.M44_AP);
config.config.add(BulletConfigSyncingUtil.M44_DU);
config.config.add(BulletConfigSyncingUtil.M44_STAR);
config.config.add(BulletConfigSyncingUtil.M44_ROCKET);
return config;
@ -87,6 +89,7 @@ public class Gun44MagnumFactory {
config.config.add(BulletConfigSyncingUtil.M44_NORMAL);
config.config.add(BulletConfigSyncingUtil.M44_AP);
config.config.add(BulletConfigSyncingUtil.M44_DU);
config.config.add(BulletConfigSyncingUtil.M44_STAR);
config.config.add(BulletConfigSyncingUtil.M44_ROCKET);
return config;
@ -106,6 +109,7 @@ public class Gun44MagnumFactory {
config.config.add(BulletConfigSyncingUtil.M44_NORMAL);
config.config.add(BulletConfigSyncingUtil.M44_AP);
config.config.add(BulletConfigSyncingUtil.M44_DU);
config.config.add(BulletConfigSyncingUtil.M44_STAR);
config.config.add(BulletConfigSyncingUtil.M44_PIP);
config.config.add(BulletConfigSyncingUtil.M44_BJ);
config.config.add(BulletConfigSyncingUtil.M44_ROCKET);
@ -150,6 +154,19 @@ public class Gun44MagnumFactory {
return bullet;
}
public static BulletConfiguration getNoPipStarConfig() {
BulletConfiguration bullet = BulletConfigFactory.standardBulletConfig();
bullet.ammo = ModItems.ammo_44_star;
bullet.dmgMin = 14;
bullet.dmgMax = 20;
bullet.wear = 25;
bullet.leadChance = 100;
return bullet;
}
public static BulletConfiguration getPipConfig() {
BulletConfiguration bullet = BulletConfigFactory.standardBulletConfig();

View File

@ -29,7 +29,7 @@ public class Gun50AEFactory {
config.allowsInfinity = true;
config.crosshair = Crosshair.L_CLASSIC;
config.reloadSound = GunConfiguration.RSOUND_REVOLVER;
config.firingSound = "hbm:weapon.revolverShootAlt";
config.firingSound = "hbm:weapon.deagleShoot";
config.reloadSoundEnd = false;
return config;
@ -44,10 +44,12 @@ public class Gun50AEFactory {
config.name = "IMI Desert Eagle";
config.manufacturer = "Magnum Research / Israel Military Industries";
config.hasSights = true;
config.config = new ArrayList<Integer>();
config.config.add(BulletConfigSyncingUtil.AE50_NORMAL);
config.config.add(BulletConfigSyncingUtil.AE50_AP);
config.config.add(BulletConfigSyncingUtil.AE50_DU);
config.config.add(BulletConfigSyncingUtil.AE50_STAR);
return config;
}
@ -93,4 +95,18 @@ public class Gun50AEFactory {
return bullet;
}
public static BulletConfiguration get50StarConfig() {
BulletConfiguration bullet = BulletConfigFactory.standardBulletConfig();
bullet.ammo = ModItems.ammo_50ae_star;
bullet.spread *= inaccuracy;
bullet.dmgMin = 48;
bullet.dmgMax = 56;
bullet.leadChance = 100;
bullet.wear = 25;
return bullet;
}
}

View File

@ -41,6 +41,7 @@ public class Gun50BMGFactory {
config.config.add(BulletConfigSyncingUtil.BMG50_INCENDIARY);
config.config.add(BulletConfigSyncingUtil.BMG50_EXPLOSIVE);
config.config.add(BulletConfigSyncingUtil.BMG50_DU);
config.config.add(BulletConfigSyncingUtil.BMG50_STAR);
return config;
}
@ -75,6 +76,7 @@ public class Gun50BMGFactory {
config.config.add(BulletConfigSyncingUtil.BMG50_INCENDIARY);
config.config.add(BulletConfigSyncingUtil.BMG50_EXPLOSIVE);
config.config.add(BulletConfigSyncingUtil.BMG50_DU);
config.config.add(BulletConfigSyncingUtil.BMG50_STAR);
return config;
}
@ -134,4 +136,18 @@ public class Gun50BMGFactory {
return bullet;
}
public static BulletConfiguration get50BMGStarConfig() {
BulletConfiguration bullet = BulletConfigFactory.standardBulletConfig();
bullet.ammo = ModItems.ammo_50bmg_star;
bullet.spread *= inaccuracy;
bullet.dmgMin = 50;
bullet.dmgMax = 70;
bullet.wear = 25;
bullet.leadChance = 100;
return bullet;
}
}

View File

@ -28,13 +28,14 @@ public class Gun5mmFactory {
config.reloadType = GunConfiguration.RELOAD_NONE;
config.allowsInfinity = true;
config.crosshair = Crosshair.L_CIRCLE;
config.durability = 5000;
config.durability = 10000;
config.firingSound = "hbm:weapon.lacunaeShoot";
config.config = new ArrayList<Integer>();
config.config.add(BulletConfigSyncingUtil.R5_NORMAL);
config.config.add(BulletConfigSyncingUtil.R5_EXPLOSIVE);
config.config.add(BulletConfigSyncingUtil.R5_DU);
config.config.add(BulletConfigSyncingUtil.R5_STAR);
return config;
}
@ -53,7 +54,7 @@ public class Gun5mmFactory {
GunConfiguration config = getMinigunConfig();
config.durability = 6500;
config.durability = 15000;
config.name = "CZ57 Avenger Minigun";
config.manufacturer = "Rockwell International Corporation";
@ -64,7 +65,7 @@ public class Gun5mmFactory {
GunConfiguration config = getMinigunConfig();
config.durability = 10000;
config.durability = 25000;
config.name = "Auntie Lacunae";
config.manufacturer = "Rockwell International Corporation?";
@ -72,6 +73,7 @@ public class Gun5mmFactory {
config.config.add(BulletConfigSyncingUtil.R5_NORMAL_BOLT);
config.config.add(BulletConfigSyncingUtil.R5_EXPLOSIVE_BOLT);
config.config.add(BulletConfigSyncingUtil.R5_DU_BOLT);
config.config.add(BulletConfigSyncingUtil.R5_STAR_BOLT);
return config;
}
@ -116,5 +118,19 @@ public class Gun5mmFactory {
return bullet;
}
public static BulletConfiguration get5mmStarConfig() {
BulletConfiguration bullet = BulletConfigFactory.standardBulletConfig();
bullet.ammo = ModItems.ammo_5mm_star;
bullet.spread *= inaccuracy;
bullet.dmgMin = 12;
bullet.dmgMax = 20;
bullet.wear = 25;
bullet.leadChance = 100;
return bullet;
}
}

View File

@ -2,10 +2,15 @@ package com.hbm.handler.guncfg;
import java.util.ArrayList;
import com.hbm.entity.logic.EntityBalefire;
import com.hbm.entity.projectile.EntityBulletBase;
import com.hbm.explosion.ExplosionParticleB;
import com.hbm.handler.BulletConfigSyncingUtil;
import com.hbm.handler.BulletConfiguration;
import com.hbm.handler.GunConfiguration;
import com.hbm.interfaces.IBulletImpactBehavior;
import com.hbm.items.ModItems;
import com.hbm.main.MainRegistry;
import com.hbm.render.util.RenderScreenOverlay.Crosshair;
public class GunFatmanFactory {
@ -42,6 +47,19 @@ public class GunFatmanFactory {
return config;
}
public static GunConfiguration getBELConfig() {
GunConfiguration config = getFatmanConfig();
config.name = "Balefire Egg Launcher";
config.manufacturer = "Fort Strong";
config.config = new ArrayList<Integer>();
config.config.add(BulletConfigSyncingUtil.NUKE_AMAT);
return config;
}
public static GunConfiguration getProtoConfig() {
GunConfiguration config = new GunConfiguration();
@ -107,6 +125,23 @@ public class GunFatmanFactory {
BulletConfiguration bullet = BulletConfigFactory.standardNukeConfig();
bullet.ammo = ModItems.gun_bf_ammo;
bullet.nuke = 0;
bullet.style = BulletConfiguration.STYLE_BF;
bullet.bImpact = new IBulletImpactBehavior() {
public void behaveBlockHit(EntityBulletBase bullet, int x, int y, int z) {
if(!bullet.worldObj.isRemote) {
EntityBalefire bf = new EntityBalefire(bullet.worldObj);
bf.posX = x;
bf.posY = y;
bf.posZ = z;
bf.destructionRange = (int) (MainRegistry.fatmanRadius * 1.25);
bullet.worldObj.spawnEntityInWorld(bf);
ExplosionParticleB.spawnMush(bullet.worldObj, x, y, z);
}
}
};
return bullet;
}

View File

@ -2,8 +2,6 @@ package com.hbm.interfaces;
import com.hbm.entity.projectile.EntityBulletBase;
import net.minecraft.entity.Entity;
public interface IBulletImpactBehavior {
//block is hit, bullet dies

View File

@ -2,8 +2,6 @@ package com.hbm.interfaces;
import com.hbm.entity.projectile.EntityBulletBase;
import net.minecraft.entity.Entity;
public interface IBulletRicochetBehavior {
//block is hit, bullet ricochets

View File

@ -0,0 +1,7 @@
package com.hbm.interfaces;
public interface ILaserable {
public void addEnergy(long energy);
}

View File

@ -0,0 +1,40 @@
package com.hbm.inventory.container;
import com.hbm.inventory.SlotMachineOutput;
import com.hbm.tileentity.machine.TileEntityCoreEmitter;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.Slot;
public class ContainerCoreEmitter extends Container {
private TileEntityCoreEmitter nukeBoy;
public ContainerCoreEmitter(InventoryPlayer invPlayer, TileEntityCoreEmitter tedf) {
nukeBoy = tedf;
this.addSlotToContainer(new Slot(tedf, 0, 8, 17));
this.addSlotToContainer(new SlotMachineOutput(invPlayer.player, tedf, 1, 8, 53));
for(int i = 0; i < 3; i++)
{
for(int j = 0; j < 9; j++)
{
this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18 + 56));
}
}
for(int i = 0; i < 9; i++)
{
this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 142 + 56));
}
}
@Override
public boolean canInteractWith(EntityPlayer player) {
return nukeBoy.isUseableByPlayer(player);
}
}

View File

@ -0,0 +1,48 @@
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.inventory.container.ContainerCoreEmitter;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.machine.TileEntityCoreEmitter;
import net.minecraft.client.Minecraft;
import net.minecraft.client.resources.I18n;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.util.ResourceLocation;
public class GUICoreEmitter extends GuiInfoContainer {
private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/dfc/gui_emitter.png");
private TileEntityCoreEmitter press;
public GUICoreEmitter(InventoryPlayer invPlayer, TileEntityCoreEmitter tedf) {
super(new ContainerCoreEmitter(invPlayer, tedf));
press = tedf;
this.xSize = 176;
this.ySize = 166;
}
@Override
public void drawScreen(int mouseX, int mouseY, float f) {
super.drawScreen(mouseX, mouseY, f);
this.drawElectricityInfo(this, mouseX, mouseY, guiLeft + 26, guiTop + 69 - 52, 16, 52, press.power, press.maxPower);
}
@Override
protected void drawGuiContainerForegroundLayer( int i, int j) {
String name = this.press.hasCustomInventoryName() ? this.press.getInventoryName() : I18n.format(this.press.getInventoryName());
this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752);
this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 4210752);
}
@Override
protected void drawGuiContainerBackgroundLayer(float p_146976_1_, int p_146976_2_, int p_146976_3_) {
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
Minecraft.getMinecraft().getTextureManager().bindTexture(texture);
drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize);
}
}

View File

@ -1,7 +1,6 @@
package com.hbm.inventory.gui;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.client.resources.I18n;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.util.ResourceLocation;

View File

@ -7,7 +7,6 @@ import com.hbm.lib.RefStrings;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.client.resources.I18n;
import net.minecraft.inventory.Container;
import net.minecraft.util.ResourceLocation;

View File

@ -1047,12 +1047,14 @@ public class ModItems {
public static Item ammo_44;
public static Item ammo_44_ap;
public static Item ammo_44_du;
public static Item ammo_44_star;
public static Item ammo_44_pip;
public static Item ammo_44_bj;
public static Item ammo_44_rocket;
public static Item ammo_5mm;
public static Item ammo_5mm_explosive;
public static Item ammo_5mm_du;
public static Item ammo_5mm_star;
public static Item ammo_9mm;
public static Item ammo_9mm_ap;
public static Item ammo_9mm_du;
@ -1062,10 +1064,12 @@ public class ModItems {
public static Item ammo_50ae;
public static Item ammo_50ae_ap;
public static Item ammo_50ae_du;
public static Item ammo_50ae_star;
public static Item ammo_50bmg;
public static Item ammo_50bmg_incendiary;
public static Item ammo_50bmg_explosive;
public static Item ammo_50bmg_du;
public static Item ammo_50bmg_star;
public static Item ammo_folly;
public static Item ammo_folly_nuclear;
public static Item ammo_folly_du;
@ -2736,6 +2740,7 @@ public class ModItems {
ammo_5mm = new ItemAmmo().setUnlocalizedName("ammo_5mm").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_5mm");
ammo_5mm_explosive = new ItemAmmo().setUnlocalizedName("ammo_5mm_explosive").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_5mm_explosive");
ammo_5mm_du = new ItemAmmo().setUnlocalizedName("ammo_5mm_du").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_5mm_du");
ammo_5mm_star = new ItemAmmo().setUnlocalizedName("ammo_5mm_star").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_5mm_star");
ammo_9mm = new ItemAmmo().setUnlocalizedName("ammo_9mm").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_9mm");
ammo_9mm_ap = new ItemAmmo().setUnlocalizedName("ammo_9mm_ap").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_9mm_ap");
ammo_9mm_du = new ItemAmmo().setUnlocalizedName("ammo_9mm_du").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_9mm_du");
@ -2743,14 +2748,17 @@ public class ModItems {
ammo_50ae = new ItemAmmo().setUnlocalizedName("ammo_50ae").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50ae");
ammo_50ae_ap = new ItemAmmo().setUnlocalizedName("ammo_50ae_ap").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50ae_ap");
ammo_50ae_du = new ItemAmmo().setUnlocalizedName("ammo_50ae_du").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50ae_du");
ammo_50ae_star = new ItemAmmo().setUnlocalizedName("ammo_50ae_star").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50ae_star");
ammo_50bmg = new ItemAmmo().setUnlocalizedName("ammo_50bmg").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50bmg");
ammo_50bmg_incendiary = new ItemAmmo().setUnlocalizedName("ammo_50bmg_incendiary").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50bmg_incendiary");
ammo_50bmg_explosive = new ItemAmmo().setUnlocalizedName("ammo_50bmg_explosive").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50bmg_explosive");
ammo_50bmg_du = new ItemAmmo().setUnlocalizedName("ammo_50bmg_du").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50bmg_du");
ammo_50bmg_star = new ItemAmmo().setUnlocalizedName("ammo_50bmg_star").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_50bmg_star");
ammo_357_desh = new ItemAmmo().setUnlocalizedName("ammo_357_desh").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_357_desh");
ammo_44 = new ItemAmmo().setUnlocalizedName("ammo_44").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44");
ammo_44_ap = new ItemAmmo().setUnlocalizedName("ammo_44_ap").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44_ap");
ammo_44_du = new ItemAmmo().setUnlocalizedName("ammo_44_du").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44_du");
ammo_44_star = new ItemAmmo().setUnlocalizedName("ammo_44_star").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44_star");
ammo_44_pip = new ItemAmmo().setUnlocalizedName("ammo_44_pip").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44_pip");
ammo_44_bj = new ItemAmmo().setUnlocalizedName("ammo_44_bj").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44_bj");
ammo_44_rocket = new ItemAmmo().setUnlocalizedName("ammo_44_rocket").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":ammo_44_rocket");
@ -2815,9 +2823,9 @@ public class ModItems {
gun_calamity = new ItemGunBase(Gun50BMGFactory.getCalamityConfig()).setUnlocalizedName("gun_calamity").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_calamity");
gun_calamity_dual = new ItemGunBase(Gun50BMGFactory.getSaddleConfig()).setUnlocalizedName("gun_calamity_dual").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_calamity_dual");
gun_lacunae_ammo = new ItemCustomLore().setUnlocalizedName("gun_lacunae_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_lacunae_ammo");
gun_minigun = new ItemGunBase(Gun5mmFactory.get53Config()).setUnlocalizedName("gun_minigun").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_minigun");
gun_avenger = new ItemGunBase(Gun5mmFactory.get57Config()).setUnlocalizedName("gun_avenger").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_avenger");
gun_lacunae = new ItemGunBase(Gun5mmFactory.getLacunaeConfig()).setUnlocalizedName("gun_lacunae").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_lacunae");
gun_minigun = new ItemGunLacunae(Gun5mmFactory.get53Config()).setUnlocalizedName("gun_minigun").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_minigun");
gun_avenger = new ItemGunLacunae(Gun5mmFactory.get57Config()).setUnlocalizedName("gun_avenger").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_avenger");
gun_lacunae = new ItemGunLacunae(Gun5mmFactory.getLacunaeConfig()).setUnlocalizedName("gun_lacunae").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_lacunae");
gun_folly = new GunFolly().setUnlocalizedName("gun_folly").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_folly");
gun_fatman_ammo = new Item().setUnlocalizedName("gun_fatman_ammo").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_fatman_ammo");
gun_fatman = new ItemGunBase(GunFatmanFactory.getFatmanConfig()).setUnlocalizedName("gun_fatman").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_fatman");
@ -2825,7 +2833,7 @@ public class ModItems {
gun_mirv_ammo = new Item().setUnlocalizedName("gun_mirv_ammo").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_mirv_ammo");
gun_mirv = new ItemGunBase(GunFatmanFactory.getFatmanConfig()).setUnlocalizedName("gun_mirv").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_mirv");
gun_bf_ammo = new Item().setUnlocalizedName("gun_bf_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_bf_ammo");
gun_bf = new ItemGunBase(GunFatmanFactory.getFatmanConfig()).setUnlocalizedName("gun_bf").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_bf");
gun_bf = new ItemGunBase(GunFatmanFactory.getBELConfig()).setUnlocalizedName("gun_bf").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_bf");
gun_mp40_ammo = new Item().setUnlocalizedName("gun_mp40_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_mp40_ammo");
gun_mp40 = new ItemGunBase(Gun9mmFactory.getMP40Config()).setUnlocalizedName("gun_mp40").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_mp40");
gun_uzi_ammo = new Item().setUnlocalizedName("gun_uzi_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_uzi_ammo");
@ -4685,12 +4693,14 @@ public class ModItems {
GameRegistry.registerItem(ammo_44, ammo_44.getUnlocalizedName());
GameRegistry.registerItem(ammo_44_ap, ammo_44_ap.getUnlocalizedName());
GameRegistry.registerItem(ammo_44_du, ammo_44_du.getUnlocalizedName());
GameRegistry.registerItem(ammo_44_star, ammo_44_star.getUnlocalizedName());
GameRegistry.registerItem(ammo_44_pip, ammo_44_pip.getUnlocalizedName());
GameRegistry.registerItem(ammo_44_bj, ammo_44_bj.getUnlocalizedName());
GameRegistry.registerItem(ammo_44_rocket, ammo_44_rocket.getUnlocalizedName());
GameRegistry.registerItem(ammo_5mm, ammo_5mm.getUnlocalizedName());
GameRegistry.registerItem(ammo_5mm_explosive, ammo_5mm_explosive.getUnlocalizedName());
GameRegistry.registerItem(ammo_5mm_du, ammo_5mm_du.getUnlocalizedName());
GameRegistry.registerItem(ammo_5mm_star, ammo_5mm_star.getUnlocalizedName());
GameRegistry.registerItem(ammo_9mm, ammo_9mm.getUnlocalizedName());
GameRegistry.registerItem(ammo_9mm_ap, ammo_9mm_ap.getUnlocalizedName());
GameRegistry.registerItem(ammo_9mm_du, ammo_9mm_du.getUnlocalizedName());
@ -4700,10 +4710,12 @@ public class ModItems {
GameRegistry.registerItem(ammo_50ae, ammo_50ae.getUnlocalizedName());
GameRegistry.registerItem(ammo_50ae_ap, ammo_50ae_ap.getUnlocalizedName());
GameRegistry.registerItem(ammo_50ae_du, ammo_50ae_du.getUnlocalizedName());
GameRegistry.registerItem(ammo_50ae_star, ammo_50ae_star.getUnlocalizedName());
GameRegistry.registerItem(ammo_50bmg, ammo_50bmg.getUnlocalizedName());
GameRegistry.registerItem(ammo_50bmg_incendiary, ammo_50bmg_incendiary.getUnlocalizedName());
GameRegistry.registerItem(ammo_50bmg_explosive, ammo_50bmg_explosive.getUnlocalizedName());
GameRegistry.registerItem(ammo_50bmg_du, ammo_50bmg_du.getUnlocalizedName());
GameRegistry.registerItem(ammo_50bmg_star, ammo_50bmg_star.getUnlocalizedName());
GameRegistry.registerItem(ammo_rocket, ammo_rocket.getUnlocalizedName());
GameRegistry.registerItem(ammo_rocket_he, ammo_rocket_he.getUnlocalizedName());
GameRegistry.registerItem(ammo_rocket_incendiary, ammo_rocket_incendiary.getUnlocalizedName());

View File

@ -325,22 +325,27 @@ public class ItemEnergy extends Item {
if(this == ModItems.bottle_nuka)
{
list.add("Contains about 210 kcal and 1500 mSv.");
list.add("[Requires bottle opener]");
}
if(this == ModItems.bottle_cherry)
{
list.add("Now with severe radiation poisoning in every seventh bottle!");
list.add("[Requires bottle opener]");
}
if(this == ModItems.bottle_quantum)
{
list.add("Comes with a colorful mix of over 70 isotopes!");
list.add("[Requires bottle opener]");
}
if(this == ModItems.bottle2_korl)
{
list.add("Contains actual orange juice!");
list.add("[Requires bottle opener]");
}
if(this == ModItems.bottle2_fritz)
{
list.add("moremore caffeine");
list.add("[Requires bottle opener]");
}
if(this == ModItems.bottle2_korl_special)
{
@ -348,6 +353,7 @@ public class ItemEnergy extends Item {
list.add("shgehgev u rguer");
else
list.add("Contains actual orange juice!");
list.add("[Requires bottle opener]");
}
if(this == ModItems.bottle2_fritz_special)
{
@ -355,6 +361,7 @@ public class ItemEnergy extends Item {
list.add("ygrogr fgrof bf");
else
list.add("moremore caffeine");
list.add("[Requires bottle opener]");
}
if(this == ModItems.bottle_sparkle)
{
@ -362,6 +369,7 @@ public class ItemEnergy extends Item {
list.add("Contains trace amounts of taint.");
else
list.add("The most delicious beverage in the wasteland!");
list.add("[Requires bottle opener]");
}
if(this == ModItems.bottle_sparkle)
{
@ -369,6 +377,7 @@ public class ItemEnergy extends Item {
list.add("Now with 400% more radiation!");
else
list.add("Tastes like radish and radiation.");
list.add("[Requires bottle opener]");
}
if(this == ModItems.bottle2_sunset)
{
@ -384,6 +393,7 @@ public class ItemEnergy extends Item {
} else {
list.add("The eternal #2. Screw you, Bradberton!");
}
list.add("[Requires bottle opener]");
}
}
}

View File

@ -683,8 +683,7 @@ public class ItemCustomLore extends Item {
if(this == ModItems.book_of_)
{
list.add("Denn wer den Walzer richtig tritt,");
list.add("der ist auch für den Abgang fit.");
list.add("Edition 4, gold lined pages");
}
if(this == ModItems.missile_skin_camo)

View File

@ -60,7 +60,7 @@ public class ItemDrop extends Item {
}
}
if (stack.getItem() != null && stack.getItem() == ModItems.detonator_de) {
if (!entityItem.worldObj.isRemote) {
if (!entityItem.worldObj.isRemote && MainRegistry.dropDead) {
entityItem.worldObj.createExplosion(entityItem, entityItem.posX, entityItem.posY,
entityItem.posZ, 15.0F, true);
@ -73,19 +73,19 @@ public class ItemDrop extends Item {
if (entityItem.onGround) {
if (stack.getItem() != null && stack.getItem() == ModItems.cell_antimatter) {
if (stack.getItem() != null && stack.getItem() == ModItems.cell_antimatter && MainRegistry.dropCell) {
if (!entityItem.worldObj.isRemote) {
entityItem.worldObj.createExplosion(entityItem, entityItem.posX, entityItem.posY,
entityItem.posZ, 10.0F, true);
}
}
if (stack.getItem() != null && stack.getItem() == ModItems.pellet_antimatter) {
if (stack.getItem() != null && stack.getItem() == ModItems.pellet_antimatter && MainRegistry.dropCell) {
if (!entityItem.worldObj.isRemote) {
ExplosionLarge.explodeFire(entityItem.worldObj, entityItem.posX, entityItem.posY,
entityItem.posZ, 100, true, true, true);
}
}
if (stack.getItem() != null && stack.getItem() == ModItems.cell_anti_schrabidium) {
if (stack.getItem() != null && stack.getItem() == ModItems.cell_anti_schrabidium && MainRegistry.dropCell) {
if (!entityItem.worldObj.isRemote) {
entityItem.worldObj.playSoundEffect(entityItem.posX, entityItem.posY, entityItem.posZ,
"random.explode", 100.0f, entityItem.worldObj.rand.nextFloat() * 0.1F + 0.9F);
@ -108,7 +108,7 @@ public class ItemDrop extends Item {
entityItem.worldObj.spawnEntityInWorld(cloud);
}
}
if (stack.getItem() != null && stack.getItem() == ModItems.singularity) {
if (stack.getItem() != null && stack.getItem() == ModItems.singularity && MainRegistry.dropSing) {
if (!entityItem.worldObj.isRemote) {
EntityVortex bl = new EntityVortex(entityItem.worldObj, 1.5F);
@ -118,7 +118,7 @@ public class ItemDrop extends Item {
entityItem.worldObj.spawnEntityInWorld(bl);
}
}
if (stack.getItem() != null && stack.getItem() == ModItems.singularity_counter_resonant) {
if (stack.getItem() != null && stack.getItem() == ModItems.singularity_counter_resonant && MainRegistry.dropSing) {
if (!entityItem.worldObj.isRemote) {
EntityVortex bl = new EntityVortex(entityItem.worldObj, 2.5F);
@ -128,7 +128,7 @@ public class ItemDrop extends Item {
entityItem.worldObj.spawnEntityInWorld(bl);
}
}
if (stack.getItem() != null && stack.getItem() == ModItems.singularity_super_heated) {
if (stack.getItem() != null && stack.getItem() == ModItems.singularity_super_heated && MainRegistry.dropSing) {
if (!entityItem.worldObj.isRemote) {
EntityVortex bl = new EntityVortex(entityItem.worldObj, 2.5F);
@ -138,7 +138,7 @@ public class ItemDrop extends Item {
entityItem.worldObj.spawnEntityInWorld(bl);
}
}
if (stack.getItem() != null && stack.getItem() == ModItems.black_hole) {
if (stack.getItem() != null && stack.getItem() == ModItems.black_hole && MainRegistry.dropSing) {
if (!entityItem.worldObj.isRemote) {
/*entityItem.worldObj.playSoundEffect(entityItem.posX, entityItem.posY, entityItem.posZ,
"random.explode", 100.0f, entityItem.worldObj.rand.nextFloat() * 0.1F + 0.9F);
@ -162,7 +162,7 @@ public class ItemDrop extends Item {
entityItem.worldObj.spawnEntityInWorld(bl);
}
}
if (stack.getItem() != null && stack.getItem() == ModItems.singularity_spark) {
if (stack.getItem() != null && stack.getItem() == ModItems.singularity_spark && MainRegistry.dropSing) {
if (!entityItem.worldObj.isRemote) {
EntityRagingVortex bl = new EntityRagingVortex(entityItem.worldObj, 3.5F);
bl.posX = entityItem.posX ;
@ -171,7 +171,7 @@ public class ItemDrop extends Item {
entityItem.worldObj.spawnEntityInWorld(bl);
}
}
if (stack.getItem() != null && stack.getItem() == ModItems.crystal_xen) {
if (stack.getItem() != null && stack.getItem() == ModItems.crystal_xen && MainRegistry.dropCrys) {
if (!entityItem.worldObj.isRemote) {
ExplosionChaos.floater(entityItem.worldObj, (int)entityItem.posX, (int)entityItem.posY, (int)entityItem.posZ, 25, 75);
ExplosionChaos.move(entityItem.worldObj, (int)entityItem.posX, (int)entityItem.posY, (int)entityItem.posZ, 25, 0, 75, 0);

View File

@ -45,6 +45,8 @@ public class WatzFuel extends ItemRadioactive {
list.add("Heat provided: " + heat + " heat");
list.add("Heat multiplier: " + (heatMultiplier >= 1 ? "+" : "") + (Math.round(heatMultiplier * 1000) * .10 - 100) + "%");
list.add("Decay multiplier: " + (decayMultiplier >= 1 ? "+" : "") + (Math.round(decayMultiplier * 1000) * .10 - 100) + "%");
super.addInformation(itemstack, player, list, bool);
}
public static void setLifeTime(ItemStack stack, int time) {

View File

@ -2,21 +2,15 @@ package com.hbm.items.tool;
import java.util.List;
import com.hbm.handler.FluidTypeHandler.FluidType;
import com.hbm.tileentity.conductor.TileEntityFluidDuct;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.client.resources.I18n;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.World;
public class ItemCassette extends Item {

View File

@ -1,5 +1,7 @@
package com.hbm.items.tool;
import java.util.List;
import com.hbm.items.ModItems;
import com.hbm.main.MainRegistry;
@ -19,4 +21,10 @@ public class ItemCatalog extends Item {
return stack;
}
@Override
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) {
list.add("For a guide on how to obtain this, visit https://bit.ly/2TPgcqT");
list.add("No tricks this time, i promise.");
}
}

View File

@ -2,6 +2,8 @@ package com.hbm.items.tool;
import java.util.List;
import com.hbm.items.ModItems;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
@ -13,6 +15,30 @@ public class ItemSatChip extends Item {
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool)
{
list.add("Satellite frequency: " + getFreq(itemstack));
if(this == ModItems.sat_foeq)
list.add("Gives you an achievement. That's it.");
if(this == ModItems.sat_gerald)
list.add("Unused (for now)");
if(this == ModItems.sat_laser)
list.add("Allows to summon lasers with a 15 second cooldown.");
if(this == ModItems.sat_mapper)
list.add("Displays currently loaded chunks.");
if(this == ModItems.sat_miner)
list.add("Will deliver ore powders to a caargo landing pad.");
if(this == ModItems.sat_radar)
list.add("Shows a map of active entities.");
if(this == ModItems.sat_resonator)
list.add("Unused");
if(this == ModItems.sat_scanner)
list.add("Creates a topdown map of underground ores.");
}
public static int getFreq(ItemStack stack) {

View File

@ -87,6 +87,11 @@ public class ItemAmmo extends Item {
list.add(EnumChatFormatting.BLUE + "+ Rocket");
list.add(EnumChatFormatting.YELLOW + "* Uhhhh");
}
if(this == ModItems.ammo_44_star) {
list.add(EnumChatFormatting.BLUE + "+ Highly increased damage");
list.add(EnumChatFormatting.YELLOW + "* Starmetal");
list.add(EnumChatFormatting.RED + "- Highly decreased damage");
}
//5mm
if(this == ModItems.ammo_5mm_explosive) {
@ -99,6 +104,11 @@ public class ItemAmmo extends Item {
list.add(EnumChatFormatting.YELLOW + "* Heavy metal");
list.add(EnumChatFormatting.RED + "- Highly increased wear");
}
if(this == ModItems.ammo_5mm_star) {
list.add(EnumChatFormatting.BLUE + "+ Highly increased damage");
list.add(EnumChatFormatting.YELLOW + "* Starmetal");
list.add(EnumChatFormatting.RED + "- Highly increased wear");
}
//9mm
if(this == ModItems.ammo_9mm_ap) {
@ -136,6 +146,11 @@ public class ItemAmmo extends Item {
list.add(EnumChatFormatting.YELLOW + "* Heavy metal");
list.add(EnumChatFormatting.RED + "- Highly increased wear");
}
if(this == ModItems.ammo_50bmg_star) {
list.add(EnumChatFormatting.BLUE + "+ Highly increased damage");
list.add(EnumChatFormatting.YELLOW + "* Starmetal");
list.add(EnumChatFormatting.RED + "- Highly increased wear");
}
//.50 AE
if(this == ModItems.ammo_50ae_ap) {
@ -147,6 +162,11 @@ public class ItemAmmo extends Item {
list.add(EnumChatFormatting.YELLOW + "* Heavy metal");
list.add(EnumChatFormatting.RED + "- Highly increased wear");
}
if(this == ModItems.ammo_50ae_star) {
list.add(EnumChatFormatting.BLUE + "+ Highly increased damage");
list.add(EnumChatFormatting.YELLOW + "* Starmetal");
list.add(EnumChatFormatting.RED + "- Highly increased wear");
}
//84mm ROCKETS
if(this == ModItems.ammo_rocket_he) {

View File

@ -30,6 +30,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.world.World;
import net.minecraftforge.client.event.MouseEvent;
@ -476,10 +477,17 @@ public class ItemGunBase extends Item implements IHoldableWeapon {
list.add("Durability: " + dura + " / " + mainConfig.durability);
if(MainRegistry.enableDebugMode) {
//if(MainRegistry.enableDebugMode) {
list.add("");
list.add("Name: " + mainConfig.name);
list.add("Manufacturer: " + mainConfig.manufacturer);
//}
if(!mainConfig.comment.isEmpty()) {
list.add("");
for(String s : mainConfig.comment)
list.add(EnumChatFormatting.ITALIC + s);
list.add("");
}
if(MainRegistry.enableExtendedLogging) {
@ -652,7 +660,7 @@ public class ItemGunBase extends Item implements IHoldableWeapon {
}
/// NBT utility ///
protected static void writeNBT(ItemStack stack, String key, int value) {
public static void writeNBT(ItemStack stack, String key, int value) {
if(!stack.hasTagCompound())
stack.stackTagCompound = new NBTTagCompound();
@ -660,7 +668,7 @@ public class ItemGunBase extends Item implements IHoldableWeapon {
stack.stackTagCompound.setInteger(key, value);
}
protected static int readNBT(ItemStack stack, String key) {
public static int readNBT(ItemStack stack, String key) {
if(!stack.hasTagCompound())
return 0;

View File

@ -121,4 +121,13 @@ public class ItemGunGauss extends ItemGunBase {
public static int getCharge(ItemStack stack) {
return readNBT(stack, "gauss_charge");
}
@Override
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) {
list.add("alt-fire is broken, just yell at me until i fix it ok");
list.add("");
super.addInformation(stack, player, list, bool);
}
}

View File

@ -0,0 +1,68 @@
package com.hbm.items.weapon;
import java.util.List;
import org.lwjgl.input.Keyboard;
import org.lwjgl.input.Mouse;
import com.hbm.entity.projectile.EntityBulletBase;
import com.hbm.entity.projectile.EntityCombineBall;
import com.hbm.handler.BulletConfigSyncingUtil;
import com.hbm.handler.BulletConfiguration;
import com.hbm.handler.GunConfiguration;
import com.hbm.interfaces.IHoldableWeapon;
import com.hbm.items.ModItems;
import com.hbm.main.MainRegistry;
import com.hbm.packet.GunButtonPacket;
import com.hbm.packet.PacketDispatcher;
import com.hbm.render.util.RenderScreenOverlay.Crosshair;
import com.hbm.sound.AudioWrapper;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.EntityClientPlayerMP;
import net.minecraft.client.resources.I18n;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
import net.minecraftforge.client.event.MouseEvent;
public class ItemGunLacunae extends ItemGunBase {
public ItemGunLacunae(GunConfiguration config) {
super(config);
}
@Override
public void startAction(ItemStack stack, World world, EntityPlayer player, boolean main) {
setDelay(stack, 20);
world.playSoundAtEntity(player, "hbm:weapon.lacunaeSpinup", 1.0F, 1.0F);
}
@Override
public void endAction(ItemStack stack, World world, EntityPlayer player, boolean main) {
world.playSoundAtEntity(player, "hbm:weapon.lacunaeSpindown", 1.0F, 1.0F);
}
protected void updateServer(ItemStack stack, World world, EntityPlayer player, int slot, boolean isCurrentItem) {
super.updateServer(stack, world, player, slot, isCurrentItem);
if(getIsMouseDown(stack)) {
int rot = readNBT(stack, "rot") % 360;
rot += 25;
writeNBT(stack, "rot", rot);
}
}
}

View File

@ -4,6 +4,7 @@ import java.util.List;
import com.hbm.entity.effect.EntityCloudFleijaRainbow;
import com.hbm.entity.logic.EntityNukeExplosionMK3;
import com.hbm.main.MainRegistry;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
@ -20,28 +21,31 @@ public class WeaponizedCell extends Item {
if(item.ticksExisted > 50 * 20 || item.isBurning()) {
if(!world.isRemote) {
world.playSoundEffect(item.posX, item.posY, item.posZ,
"random.explode", 100.0f, world.rand.nextFloat() * 0.1F + 0.9F);
EntityNukeExplosionMK3 exp = new EntityNukeExplosionMK3(world);
exp.posX = item.posX;
exp.posY = item.posY;
exp.posZ = item.posZ;
exp.destructionRange = 100;
exp.speed = 25;
exp.coefficient = 1.0F;
exp.waste = false;
world.spawnEntityInWorld(exp);
EntityCloudFleijaRainbow cloud = new EntityCloudFleijaRainbow(world, 100);
cloud.posX = item.posX;
cloud.posY = item.posY;
cloud.posZ = item.posZ;
world.spawnEntityInWorld(cloud);
if(MainRegistry.dropStar) {
world.playSoundEffect(item.posX, item.posY, item.posZ, "random.explode", 100.0f, world.rand.nextFloat() * 0.1F + 0.9F);
EntityNukeExplosionMK3 exp = new EntityNukeExplosionMK3(world);
exp.posX = item.posX;
exp.posY = item.posY;
exp.posZ = item.posZ;
exp.destructionRange = 100;
exp.speed = 25;
exp.coefficient = 1.0F;
exp.waste = false;
world.spawnEntityInWorld(exp);
EntityCloudFleijaRainbow cloud = new EntityCloudFleijaRainbow(world, 100);
cloud.posX = item.posX;
cloud.posY = item.posY;
cloud.posZ = item.posZ;
world.spawnEntityInWorld(cloud);
}
item.setDead();
}
item.setDead();
}
int randy = (50 * 20) - item.ticksExisted;

View File

@ -3,7 +3,7 @@ package com.hbm.lib;
public class RefStrings {
public static final String MODID = "hbm";
public static final String NAME = "Hbm's Nuclear Tech Mod";
public static final String VERSION = "1.0.27 BETA (3365)";
public static final String VERSION = "1.0.27 BETA (3442)";
//HBM's Beta Naming Convention:
//V T (X)
//V -> next release version

View File

@ -142,6 +142,7 @@ public class ClientProxy extends ServerProxy
MinecraftForgeClient.registerItemRenderer(ModItems.gun_stinger, new ItemRenderStinger());
MinecraftForgeClient.registerItemRenderer(ModItems.gun_skystinger, new ItemRenderStinger());
MinecraftForgeClient.registerItemRenderer(ModItems.gun_hk69, new ItemRenderWeaponObj());
MinecraftForgeClient.registerItemRenderer(ModItems.gun_deagle, new ItemRenderWeaponObj());
//MinecraftForgeClient.registerItemRenderer(ModItems.gun_rpg_ammo, new ItemRenderRocket());
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityBombMulti.class, new RenderBombMulti());

View File

@ -913,18 +913,22 @@ public class CraftingManager {
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.ammo_20gauge_wither, 4), new Object[] { "BCB", "CAC", "BCB", 'B', ModItems.ammo_20gauge, 'A', Blocks.soul_sand, 'C', "dustCoal" }));
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_44_ap, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_44, 'A', ModItems.ingot_dura_steel });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_44_du, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_44, 'A', ModItems.ingot_u238 });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_44_star, 4), new Object[] { " B ", "BAB", " B ", 'B', ModItems.ammo_44_du, 'A', ModItems.ingot_starmetal });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_44_pip, 1), new Object[] { " B ", "BAB", " B ", 'A', ModItems.ammo_44, 'B', ModItems.powder_magic });
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.ammo_44_bj, 1), new Object[] { " C ", "BAB", " C ", 'A', ModItems.ammo_44, 'B', ModItems.powder_magic, 'C', "dustDesh" }));
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_5mm_explosive, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_5mm, 'A', Blocks.tnt });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_5mm_du, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_5mm, 'A', ModItems.ingot_u238 });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_5mm_star, 4), new Object[] { " B ", "BAB", " B ", 'B', ModItems.ammo_5mm_du, 'A', ModItems.ingot_starmetal });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_9mm_ap, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_9mm, 'A', ModItems.ingot_dura_steel });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_9mm_du, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_9mm, 'A', ModItems.ingot_u238 });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_22lr_ap, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_22lr, 'A', ModItems.ingot_dura_steel });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_50bmg_incendiary, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_50bmg, 'A', ModItems.powder_fire });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_50bmg_explosive, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_50bmg, 'A', Blocks.tnt });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_50bmg_du, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_50bmg, 'A', ModItems.ingot_u238 });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_50bmg_star, 4), new Object[] { " B ", "BAB", " B ", 'B', ModItems.ammo_50bmg_du, 'A', ModItems.ingot_starmetal });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_50ae_ap, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_50ae, 'A', ModItems.ingot_dura_steel });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_50ae_du, 8), new Object[] { "BBB", "BAB", "BBB", 'B', ModItems.ammo_50ae, 'A', ModItems.ingot_u238 });
GameRegistry.addRecipe(new ItemStack(ModItems.ammo_50ae_star, 4), new Object[] { " B ", "BAB", " B ", 'B', ModItems.ammo_50ae_du, 'A', ModItems.ingot_starmetal });
GameRegistry.addRecipe(new ItemStack(ModItems.folly_bullet, 1), new Object[] { " S ", "STS", "SMS", 'S', ModItems.ingot_starmetal, 'T', ModItems.powder_magic, 'M', ModBlocks.block_meteor });
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.folly_bullet_nuclear, 1), new Object[] { " N ", "UTU", "UTU", 'N', ModItems.gun_fatman_ammo, 'U', "ingotIron", 'T', "blockTungsten" }));

View File

@ -318,6 +318,12 @@ public class MainRegistry
public static int generalOverride = 0;
public static int polaroidID = 1;
public static boolean dropCell = true;
public static boolean dropSing = true;
public static boolean dropStar = true;
public static boolean dropCrys = true;
public static boolean dropDead = true;
public static int taintID = 62;
public static int radiationID = 63;
public static int bangID = 64;
@ -1763,6 +1769,13 @@ public class MainRegistry
final String CATEGORY_MACHINE = "09_machines";
templateBlacklist = Arrays.asList(createConfigStringList(config, CATEGORY_MACHINE, "9.00_templateBlacklist", "Which machine templates should be prohibited from being created (args: enum names)"));
final String CATEGORY_DROPS = "10_dangerous_drops";
dropCell = createConfigBool(config, CATEGORY_DROPS, "10.00_dropCell", "Whether antimatter cells should explode when dropped", true);
dropSing = createConfigBool(config, CATEGORY_DROPS, "10.01_dropBHole", "Whether singularities and blaack holes should spawn when dropped", true);
dropStar = createConfigBool(config, CATEGORY_DROPS, "10.02_dropStar", "Whether rigged star blaster cells should explode when dropped", true);
dropCrys = createConfigBool(config, CATEGORY_DROPS, "10.04_dropCrys", "Whether xen crystals should move blocks when dropped", true);
dropDead = createConfigBool(config, CATEGORY_DROPS, "10.05_dropDead", "Whether dead man's explosives should explode when dropped", true);
config.save();
@ -1809,6 +1822,13 @@ public class MainRegistry
return prop.getInt();
}
private static boolean createConfigBool(Configuration config, String category, String name, String comment, boolean def) {
Property prop = config.get(category, name, def);
prop.comment = comment;
return prop.getBoolean();
}
private static String[] createConfigStringList(Configuration config, String category, String name, String comment) {
Property prop = config.get(category, name, new String[] { "PLACEHOLDER" } );

View File

@ -1,10 +1,8 @@
package com.hbm.main;
import java.nio.charset.StandardCharsets;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.Base64;
import java.util.List;
import java.util.Random;
@ -27,8 +25,6 @@ import com.hbm.saveddata.RadiationSavedData;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.PlayerEvent;
import cpw.mods.fml.common.gameevent.TickEvent.WorldTickEvent;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLiving;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.monster.EntityCreeper;
@ -52,10 +48,8 @@ import net.minecraft.world.chunk.Chunk;
import net.minecraftforge.event.entity.EntityEvent.EnteringChunk;
import net.minecraftforge.event.entity.living.LivingDeathEvent;
import net.minecraftforge.event.entity.living.LivingSpawnEvent;
import net.minecraftforge.event.entity.player.PlayerDropsEvent;
import net.minecraftforge.event.entity.player.PlayerInteractEvent;
import net.minecraftforge.event.entity.player.PlayerInteractEvent.Action;
import scala.actors.threadpool.Arrays;
public class ModEventHandler
{
@ -385,13 +379,15 @@ public class ModEventHandler
}
String[] hashes = new String[] {
"da07ea0f3b13c2b3357511a7cb6121a7beaab120d0b9d745bb3637a1ff0e4d07",
"1aed2593fe54480eb240d110444131469757429dc7f9dd9ce5768aa4ae8c99c7",
"7bc4ada27654650ebc4a499d7ebd66f6f9fbb0d93b9091aadbe3afd155cc3547",
"3eec01bdbdfb1b9cb6eb66956f2049eac6e257a24e1e84b90da1ee3337c80385"
"7e6fabead604ce497b32c2ff29148254879980c045b97fa627eb074eb2de81e7",
"9031b60664473360593e89c7c9ece297ee3fbee25b0891450d904f15b3255bf6",
"d841ef1ebaf7bdb284fc20be3508a8db1dae78f8630bf9d192bb7cd8384458da",
"7c78f529c5f4748577bd8922753c04135cd733f525172b5a782894cfb9d544a8"
};
static final String salt = "df5fe65986dc0f145a867ad29aee9bfebc3a1cd5afb05f32";
@SubscribeEvent
public void onClickSign(PlayerInteractEvent event) {
@ -404,16 +400,23 @@ public class ModEventHandler
TileEntitySign sign = (TileEntitySign)world.getTileEntity(x, y, z);
int correct = 0;
for(int i = 0; i < 4; i++) {
if(!hashes[i].equals(getHash(sign.signText[i]))) {
return;
if(hashes[i].equals(getHash(sign.signText[i] + salt))) {
sign.signText[i] = "Correct!";
sign.markDirty();
sign.getWorldObj().markBlockForUpdate(x, y, z);
correct++;
}
}
world.func_147480_a(x, y, z, false);
EntityItem entityitem = new EntityItem(world, x, y, z, new ItemStack(ModItems.bobmazon_hidden));
entityitem.delayBeforeCanPickup = 10;
world.spawnEntityInWorld(entityitem);
if(correct == 4) {
world.func_147480_a(x, y, z, false);
EntityItem entityitem = new EntityItem(world, x, y, z, new ItemStack(ModItems.bobmazon_hidden));
entityitem.delayBeforeCanPickup = 10;
world.spawnEntityInWorld(entityitem);
}
}
}

View File

@ -282,7 +282,8 @@ public class ResourceManager {
public static final IModelCustom shimmer_axe = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/shimmer_axe.obj"));
public static final IModelCustom brimstone = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/brimstone.obj"));
public static final IModelCustom hk69 = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/weapons/hk69.obj"));
public static final IModelCustom hk69 = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/hk69.obj"));
public static final IModelCustom deagle = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/deagle.obj"));
////Texture Items
@ -292,6 +293,7 @@ public class ResourceManager {
public static final ResourceLocation brimstone_tex = new ResourceLocation(RefStrings.MODID, "textures/models/brimstone.png");
public static final ResourceLocation hk69_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/hk69.png");
public static final ResourceLocation deagle_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/deagle.png");

View File

@ -4,6 +4,7 @@ import org.lwjgl.opengl.GL11;
import com.hbm.items.ModItems;
import com.hbm.items.weapon.GunFolly;
import com.hbm.items.weapon.ItemGunBase;
import com.hbm.lib.RefStrings;
import com.hbm.main.MainRegistry;
import com.hbm.render.model.ModelCalBarrel;
@ -203,7 +204,7 @@ public class ItemRenderOverkill implements IItemRenderer {
if(item.getItem() == ModItems.gun_lacunae ||
item.getItem() == ModItems.gun_minigun ||
item.getItem() == ModItems.gun_avenger)
lacunae.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, f);
lacunae.render((Entity)data[1], 0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.0625F, ItemGunBase.readNBT(item, "rot"));
if(item.getItem() == ModItems.gun_folly) {
int state = GunFolly.getState(item);

View File

@ -10,6 +10,7 @@ import com.hbm.render.model.ModelPanzerschreck;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.IItemRenderer;
@ -33,7 +34,8 @@ public class ItemRenderWeaponObj implements IItemRenderer {
@Override
public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) {
return false;
return type == ItemRenderType.ENTITY && (helper == ItemRendererHelper.ENTITY_ROTATION || helper == ItemRendererHelper.ENTITY_BOBBING);
}
@Override
@ -41,44 +43,95 @@ public class ItemRenderWeaponObj implements IItemRenderer {
GL11.glPushMatrix();
GL11.glDisable(GL11.GL_CULL_FACE);
EntityPlayer player = Minecraft.getMinecraft().thePlayer;
if(item.getItem() == ModItems.gun_hk69)
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.hk69_tex);
if(item.getItem() == ModItems.gun_deagle)
Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.turbofan_blades_tex);
switch(type) {
case EQUIPPED_FIRST_PERSON:
GL11.glTranslatef(1.0F, 0.5F, 0.0F);
GL11.glRotatef(90F, 0.0F, 1.0F, 0.0F);
GL11.glRotatef(-25F, 1.0F, 0.0F, 0.0F);
GL11.glRotatef(-10F, 0.0F, 1.0F, 0.0F);
GL11.glScaled(0.75, 0.75, 0.75);
if(Minecraft.getMinecraft().thePlayer.isSneaking()) {
GL11.glTranslatef(1.16F, 0.35F, -0.8F);
GL11.glRotatef(5.5F, 0.0F, 1.0F, 0.0F);
GL11.glRotatef(4F, 1.0F, 0.0F, 0.0F);
if(item.getItem() == ModItems.gun_hk69) {
GL11.glTranslatef(1.0F, 0.5F, 0.0F);
GL11.glRotatef(90F, 0.0F, 1.0F, 0.0F);
GL11.glRotatef(-25F, 1.0F, 0.0F, 0.0F);
GL11.glRotatef(-10F, 0.0F, 1.0F, 0.0F);
GL11.glScaled(0.75, 0.75, 0.75);
if(player.isSneaking()) {
GL11.glTranslatef(1.16F, 0.35F, -0.8F);
GL11.glRotatef(5.5F, 0.0F, 1.0F, 0.0F);
GL11.glRotatef(4F, 1.0F, 0.0F, 0.0F);
}
}
if(item.getItem() == ModItems.gun_deagle) {
GL11.glRotatef(90F, 0.0F, 1.0F, 0.0F);
GL11.glRotatef(25F, -1.0F, 0.0F, 0.0F);
GL11.glTranslatef(0.2F, 0.2F, 0.8F);
GL11.glScaled(0.2, 0.2, 0.2);
if(player.isSneaking()) {
GL11.glTranslatef(3.7F, 1.7F, 0F);
GL11.glRotatef(-5F, 0.0F, 1.0F, 0.0F);
}
}
break;
case EQUIPPED:
GL11.glRotatef(20F, 1.0F, 0.0F, 1.0F);
GL11.glRotatef(10F, 0.0F, 1.0F, 0.0F);
GL11.glTranslatef(0.4F, 0.0F, 0.55F);
GL11.glScaled(0.75, 0.75, 0.75);
if(item.getItem() == ModItems.gun_hk69) {
GL11.glRotatef(20F, 1.0F, 0.0F, 1.0F);
GL11.glRotatef(10F, 0.0F, 1.0F, 0.0F);
GL11.glTranslatef(0.4F, 0.0F, 0.55F);
GL11.glScaled(0.75, 0.75, 0.75);
}
if(item.getItem() == ModItems.gun_deagle) {
GL11.glRotatef(90F, 0.0F, 1.0F, 0.0F);
GL11.glRotatef(35F, -1.0F, 0.0F, 0.0F);
GL11.glTranslatef(0.0F, -0.1F, 0.8F);
GL11.glScaled(0.15, 0.15, 0.15);
}
break;
case ENTITY:
GL11.glTranslatef(0.0F, 0.2F, 0.0F);
GL11.glRotatef(90F, 0.0F, 1.0F, 0.0F);
GL11.glScaled(0.75, 0.75, 0.75);
if(item.getItem() == ModItems.gun_hk69) {
GL11.glTranslatef(0.0F, 0.2F, 0.0F);
GL11.glRotatef(90F, 0.0F, 1.0F, 0.0F);
GL11.glScaled(0.75, 0.75, 0.75);
}
if(item.getItem() == ModItems.gun_deagle) {
GL11.glTranslatef(0.0F, 0.2F, 0.0F);
GL11.glScaled(0.25, 0.25, 0.25);
}
break;
default: break;
}
if(item.getItem() == ModItems.gun_hk69)
if(item.getItem() == ModItems.gun_hk69) {
GL11.glShadeModel(GL11.GL_SMOOTH);
ResourceManager.hk69.renderAll();
GL11.glShadeModel(GL11.GL_FLAT);
}
if(item.getItem() == ModItems.gun_deagle) {
GL11.glShadeModel(GL11.GL_SMOOTH);
ResourceManager.deagle.renderAll();
GL11.glShadeModel(GL11.GL_FLAT);
}
GL11.glEnable(GL11.GL_CULL_FACE);
GL11.glPopMatrix();

View File

@ -464,7 +464,7 @@ public class ModelLacunae extends ModelBase {
super.render(entity, f, f1, f2, f3, f4, f5);
setRotationAngles(f, f1, f2, f3, f4, f5, entity);
rot *= 0.0025F;
rot *= Math.PI / 180F;
Barrel1.rotateAngleX += rot;
Barrel2.rotateAngleX += rot;
@ -556,6 +556,33 @@ public class ModelLacunae extends ModelBase {
ClampB.render(f5);
ClampF.render(f5);
AmmoBox.render(f5);
Barrel1.rotateAngleX -= rot;
Barrel2.rotateAngleX -= rot;
Barrel3.rotateAngleX -= rot;
Barrel4.rotateAngleX -= rot;
Barrel5.rotateAngleX -= rot;
Barrel6.rotateAngleX -= rot;
Brace1.rotateAngleX -= rot;
Brace2.rotateAngleX -= rot;
Brace3.rotateAngleX -= rot;
Brace4.rotateAngleX -= rot;
Brace5.rotateAngleX -= rot;
Brace6.rotateAngleX -= rot;
Brace7.rotateAngleX -= rot;
Brace8.rotateAngleX -= rot;
Brace9.rotateAngleX -= rot;
Brace10.rotateAngleX -= rot;
Brace11.rotateAngleX -= rot;
Brace12.rotateAngleX -= rot;
Disc1.rotateAngleX -= rot;
Disc2.rotateAngleX -= rot;
Disc3.rotateAngleX -= rot;
Disc4.rotateAngleX -= rot;
Disc5.rotateAngleX -= rot;
Disc6.rotateAngleX -= rot;
Disc7.rotateAngleX -= rot;
Disc8.rotateAngleX -= rot;
}
private void setRotation(ModelRenderer model, float x, float y, float z) {

View File

@ -4,6 +4,9 @@ import org.lwjgl.opengl.GL11;
import com.hbm.lib.RefStrings;
import com.hbm.main.ResourceManager;
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.TileEntityCoreEmitter;
import com.hbm.tileentity.machine.TileEntityCoreInjector;
import com.hbm.tileentity.machine.TileEntityCoreReceiver;
@ -11,6 +14,7 @@ import com.hbm.tileentity.machine.TileEntityCoreReceiver;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.Vec3;
import net.minecraftforge.client.model.AdvancedModelLoader;
import net.minecraftforge.client.model.IModelCustom;
@ -50,6 +54,8 @@ public class RenderCoreComponent extends TileEntitySpecialRenderer {
if(tileEntity instanceof TileEntityCoreEmitter) {
bindTexture(ResourceManager.dfc_emitter_tex);
ResourceManager.dfc_emitter.renderAll();
BeamPronter.prontHelix(Vec3.createVectorHelper(0, 0, 6), 0, 0.5, 0.5, EnumWaveType.SPIRAL, EnumBeamType.LINE, 0xFF0000, 0xFF8000, (int)tileEntity.getWorldObj().getTotalWorldTime() % 360 * -50, 100, 0.25F);
}
if(tileEntity instanceof TileEntityCoreReceiver) {

View File

@ -1,7 +1,106 @@
package com.hbm.tileentity.machine;
import net.minecraft.tileentity.TileEntity;
import java.util.ArrayList;
import java.util.List;
public class TileEntityCoreEmitter extends TileEntity {
import com.hbm.handler.FluidTypeHandler.FluidType;
import com.hbm.interfaces.IConsumer;
import com.hbm.interfaces.IFluidAcceptor;
import com.hbm.interfaces.ILaserable;
import com.hbm.inventory.FluidTank;
import com.hbm.tileentity.TileEntityMachineBase;
import net.minecraftforge.common.util.ForgeDirection;
public class TileEntityCoreEmitter extends TileEntityMachineBase implements IConsumer, IFluidAcceptor, ILaserable {
public long power;
public static final long maxPower = 1000000000L;
public long joules;
public boolean isOn;
public FluidTank tank;
public TileEntityCoreEmitter() {
super(2);
}
@Override
public String getName() {
return "container.dfcEmitter";
}
@Override
public void updateEntity() {
if (!worldObj.isRemote) {
//tank.setType(0, 1, slots);
//tank.updateTank(xCoord, yCoord, zCoord);
ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata());
//worldObj.setBlock(xCoord + dir.offsetX, yCoord + dir.offsetY, zCoord + dir.offsetZ, Blocks.dirt);
}
}
@Override
public void setFluidFill(int i, FluidType type) {
if(type.name().equals(tank.getTankType().name()))
tank.setFill(i);
}
@Override
public int getFluidFill(FluidType type) {
if(type.name().equals(tank.getTankType().name()))
return tank.getFill();
else
return 0;
}
@Override
public int getMaxFluidFill(FluidType type) {
if(type.name().equals(tank.getTankType().name()))
return tank.getMaxFill();
else
return 0;
}
@Override
public void setFillstate(int fill, int index) {
tank.setFill(fill);
}
@Override
public void setType(FluidType type, int index) {
tank.setTankType(type);
}
@Override
public List<FluidTank> getTanks() {
List<FluidTank> list = new ArrayList();
list.add(tank);
return list;
}
@Override
public void setPower(long i) {
this.power = i;
}
@Override
public long getPower() {
return this.power;
}
@Override
public long getMaxPower() {
return this.maxPower;
}
@Override
public void addEnergy(long energy) {
joules += energy;
}
}