Vent redstone option, added landmines and defuser
@ -249,6 +249,11 @@ item.turret_control.name=Geschützsteuerung
|
||||
item.turret_chip.name=Geschütz-KI-Chip
|
||||
item.turret_biometry.name=Geschütz-Telemetriekarte
|
||||
|
||||
tile.mine_ap.name=Antipersonenmine
|
||||
tile.mine_he.name=Antipanzermine
|
||||
tile.mine_shrap.name=Schrapnellmine
|
||||
item.defuser.name=High-Tech Bombenentschärfungsgerät
|
||||
|
||||
tile.bomb_multi.name=Mehrzweckbombe
|
||||
tile.rejuvinator.name=Regenerationsmaschine
|
||||
|
||||
|
||||
@ -261,6 +261,11 @@ item.turret_control.name=Turret Controller
|
||||
item.turret_chip.name=Turret AI-Chip
|
||||
item.turret_biometry.name=Turret Telemetry Card
|
||||
|
||||
tile.mine_ap.name=Anti-Personell Mine
|
||||
tile.mine_he.name=Anti-Tank Mine
|
||||
tile.mine_shrap.name=Shrapnel Mine
|
||||
item.defuser.name=High-Tech Bomb Defusing Device
|
||||
|
||||
tile.crate.name=Supply Crate
|
||||
tile.crate_weapon.name=Weapon Crate
|
||||
tile.crate_lead.name=Hazmat Crate
|
||||
|
||||
209
assets/hbm/models/mine_ap.obj
Normal file
@ -0,0 +1,209 @@
|
||||
# Blender v2.76 (sub 0) OBJ File: 'mine_ap.blend'
|
||||
# www.blender.org
|
||||
o Sphere
|
||||
v -0.023918 0.081742 0.000000
|
||||
v -0.044194 0.068194 0.000000
|
||||
v -0.057743 0.047918 0.000000
|
||||
v -0.062500 0.024000 0.000000
|
||||
v -0.057743 0.000082 0.000000
|
||||
v -0.016913 0.081742 -0.016912
|
||||
v -0.031250 0.068194 -0.031250
|
||||
v -0.040830 0.047918 -0.040830
|
||||
v -0.044194 0.024000 -0.044194
|
||||
v -0.040830 0.000082 -0.040830
|
||||
v -0.000000 0.081742 -0.023918
|
||||
v -0.000000 0.068194 -0.044194
|
||||
v -0.000000 0.047918 -0.057742
|
||||
v -0.000000 0.024000 -0.062500
|
||||
v -0.000000 0.000082 -0.057742
|
||||
v -0.000000 0.086500 0.000000
|
||||
v 0.016912 0.081742 -0.016912
|
||||
v 0.031250 0.068194 -0.031250
|
||||
v 0.040830 0.047918 -0.040830
|
||||
v 0.044194 0.024000 -0.044194
|
||||
v 0.040830 0.000082 -0.040830
|
||||
v 0.023918 0.081742 0.000000
|
||||
v 0.044194 0.068194 0.000000
|
||||
v 0.057742 0.047918 0.000000
|
||||
v 0.062500 0.024000 0.000000
|
||||
v 0.057742 0.000082 0.000000
|
||||
v 0.016912 0.081742 0.016912
|
||||
v 0.031250 0.068194 0.031250
|
||||
v 0.040830 0.047918 0.040830
|
||||
v 0.044194 0.024000 0.044194
|
||||
v 0.040830 0.000082 0.040830
|
||||
v -0.000000 0.081742 0.023918
|
||||
v -0.000000 0.068194 0.044194
|
||||
v -0.000000 0.047918 0.057742
|
||||
v -0.000000 0.024000 0.062500
|
||||
v -0.000000 0.000082 0.057742
|
||||
v -0.016913 0.081742 0.016912
|
||||
v -0.031250 0.068194 0.031250
|
||||
v -0.040830 0.047918 0.040830
|
||||
v -0.044194 0.024000 0.044194
|
||||
v -0.040830 0.000082 0.040830
|
||||
v -0.061524 0.148194 -0.061523
|
||||
v 0.061523 0.148194 -0.061523
|
||||
v 0.061523 0.148194 0.061523
|
||||
v -0.061524 0.148194 0.061523
|
||||
v -0.005980 0.081742 0.000000
|
||||
v -0.000000 0.081742 -0.005979
|
||||
v -0.000000 0.111500 0.000000
|
||||
v 0.005979 0.081742 0.000000
|
||||
v -0.000000 0.081742 0.005979
|
||||
v -0.000000 0.086500 0.000000
|
||||
vt 0.713388 0.422365
|
||||
vt 0.372492 0.422365
|
||||
vt 0.358449 0.234785
|
||||
vt 0.613541 0.784500
|
||||
vt 0.472338 0.784500
|
||||
vt 0.412485 0.606170
|
||||
vt 0.727431 0.234785
|
||||
vt 0.372492 0.047204
|
||||
vt 0.673395 0.606170
|
||||
vt 0.713387 0.047204
|
||||
vt 0.542940 0.958853
|
||||
vt 0.074879 0.038923
|
||||
vt 0.262088 0.020580
|
||||
vt 0.262088 0.720477
|
||||
vt 0.839131 0.569078
|
||||
vt 0.877120 0.614143
|
||||
vt 0.839131 0.803203
|
||||
vt 0.837838 0.803203
|
||||
vt 0.799848 0.614143
|
||||
vt 0.837838 0.569078
|
||||
vt 0.878413 0.569078
|
||||
vt 0.916403 0.614143
|
||||
vt 0.878413 0.803204
|
||||
vt 0.917696 0.614143
|
||||
vt 0.955685 0.569078
|
||||
vt 0.955685 0.803203
|
||||
vn -0.908700 0.180700 -0.376400
|
||||
vn -0.541400 0.810300 -0.224300
|
||||
vn -0.908700 -0.180700 -0.376400
|
||||
vn -0.786200 0.525300 -0.325600
|
||||
vn -0.376400 0.180700 -0.908700
|
||||
vn -0.224300 0.810300 -0.541400
|
||||
vn -0.376400 -0.180700 -0.908700
|
||||
vn -0.325600 0.525300 -0.786200
|
||||
vn 0.376400 -0.180700 -0.908700
|
||||
vn 0.325600 0.525300 -0.786200
|
||||
vn 0.376400 0.180700 -0.908700
|
||||
vn 0.224300 0.810300 -0.541400
|
||||
vn 0.786200 0.525300 -0.325600
|
||||
vn 0.908700 0.180700 -0.376400
|
||||
vn 0.541400 0.810300 -0.224300
|
||||
vn 0.908700 -0.180700 -0.376400
|
||||
vn 0.908700 0.180700 0.376400
|
||||
vn 0.541400 0.810300 0.224300
|
||||
vn 0.908700 -0.180700 0.376400
|
||||
vn 0.786200 0.525300 0.325600
|
||||
vn 0.224300 0.810300 0.541400
|
||||
vn 0.376400 -0.180700 0.908700
|
||||
vn 0.325600 0.525300 0.786200
|
||||
vn 0.376400 0.180700 0.908700
|
||||
vn -0.376400 -0.180700 0.908700
|
||||
vn -0.325600 0.525300 0.786200
|
||||
vn -0.376400 0.180700 0.908700
|
||||
vn -0.224300 0.810300 0.541400
|
||||
vn -0.194500 0.977600 -0.080500
|
||||
vn -0.080500 0.977600 -0.194500
|
||||
vn 0.080500 0.977600 -0.194500
|
||||
vn 0.194500 0.977600 -0.080500
|
||||
vn 0.194500 0.977600 0.080500
|
||||
vn 0.080500 0.977600 0.194500
|
||||
vn -0.080500 0.977600 0.194500
|
||||
vn -0.194500 0.977600 0.080500
|
||||
vn -0.908700 0.180700 0.376400
|
||||
vn -0.541400 0.810300 0.224300
|
||||
vn -0.908700 -0.180700 0.376400
|
||||
vn -0.786200 0.525300 0.325600
|
||||
vn -0.707100 0.000000 0.707100
|
||||
vn 0.707100 0.000000 0.707100
|
||||
vn 0.707100 0.000000 -0.707100
|
||||
vn -0.707100 0.000000 -0.707100
|
||||
vn -1.000000 0.000000 -0.000000
|
||||
vn 0.000000 0.000000 1.000000
|
||||
vn 1.000000 0.000000 -0.000000
|
||||
vn 0.000000 0.000000 -1.000000
|
||||
s off
|
||||
f 3/1/1 8/2/1 9/3/1
|
||||
f 1/4/2 6/5/2 7/6/2
|
||||
f 4/7/3 9/3/3 10/8/3
|
||||
f 2/9/4 7/6/4 8/2/4
|
||||
f 8/1/5 13/2/5 14/3/5
|
||||
f 6/4/6 11/5/6 12/6/6
|
||||
f 9/7/7 14/3/7 15/8/7
|
||||
f 7/9/8 12/6/8 13/2/8
|
||||
f 14/7/9 20/3/9 21/8/9
|
||||
f 12/9/10 18/6/10 19/2/10
|
||||
f 13/1/11 19/2/11 20/3/11
|
||||
f 11/4/12 17/5/12 18/6/12
|
||||
f 18/9/13 23/6/13 24/2/13
|
||||
f 19/1/14 24/2/14 25/3/14
|
||||
f 17/4/15 22/5/15 23/6/15
|
||||
f 20/7/16 25/3/16 26/8/16
|
||||
f 25/7/17 24/1/17 29/2/17
|
||||
f 23/9/18 22/4/18 27/5/18
|
||||
f 25/7/19 30/3/19 31/8/19
|
||||
f 23/9/20 28/6/20 29/2/20
|
||||
f 28/9/21 27/4/21 32/5/21
|
||||
f 31/10/22 30/7/22 35/3/22
|
||||
f 29/1/23 28/9/23 33/6/23
|
||||
f 29/1/24 34/2/24 35/3/24
|
||||
f 35/7/25 40/3/25 41/8/25
|
||||
f 33/9/26 38/6/26 39/2/26
|
||||
f 35/7/27 34/1/27 39/2/27
|
||||
f 32/4/28 37/5/28 38/6/28
|
||||
f 1/4/29 16/11/29 6/5/29
|
||||
f 6/4/30 16/11/30 11/5/30
|
||||
f 11/4/31 16/11/31 17/5/31
|
||||
f 17/4/32 16/11/32 22/5/32
|
||||
f 22/4/33 16/11/33 27/5/33
|
||||
f 27/4/34 16/11/34 32/5/34
|
||||
f 32/4/35 16/11/35 37/5/35
|
||||
f 37/4/36 16/11/36 1/5/36
|
||||
f 39/1/37 3/2/37 4/3/37
|
||||
f 37/4/38 1/5/38 2/6/38
|
||||
f 40/7/39 4/3/39 5/8/39
|
||||
f 39/1/40 38/9/40 2/6/40
|
||||
f 27/12/41 28/13/41 44/14/41
|
||||
f 17/12/42 18/13/42 43/14/42
|
||||
f 6/12/43 7/13/43 42/14/43
|
||||
f 37/12/44 38/13/44 45/14/44
|
||||
f 47/15/45 51/16/45 48/17/45
|
||||
f 48/18/46 51/19/46 49/20/46
|
||||
f 50/21/47 51/22/47 48/23/47
|
||||
f 51/24/48 46/25/48 48/26/48
|
||||
f 4/7/1 3/1/1 9/3/1
|
||||
f 2/9/2 1/4/2 7/6/2
|
||||
f 5/10/3 4/7/3 10/8/3
|
||||
f 3/1/4 2/9/4 8/2/4
|
||||
f 9/7/5 8/1/5 14/3/5
|
||||
f 7/9/6 6/4/6 12/6/6
|
||||
f 10/10/7 9/7/7 15/8/7
|
||||
f 8/1/8 7/9/8 13/2/8
|
||||
f 15/10/9 14/7/9 21/8/9
|
||||
f 13/1/10 12/9/10 19/2/10
|
||||
f 14/7/11 13/1/11 20/3/11
|
||||
f 12/9/12 11/4/12 18/6/12
|
||||
f 19/1/13 18/9/13 24/2/13
|
||||
f 20/7/14 19/1/14 25/3/14
|
||||
f 18/9/15 17/4/15 23/6/15
|
||||
f 21/10/16 20/7/16 26/8/16
|
||||
f 30/3/17 25/7/17 29/2/17
|
||||
f 28/6/18 23/9/18 27/5/18
|
||||
f 26/10/19 25/7/19 31/8/19
|
||||
f 24/1/20 23/9/20 29/2/20
|
||||
f 33/6/21 28/9/21 32/5/21
|
||||
f 36/8/22 31/10/22 35/3/22
|
||||
f 34/2/23 29/1/23 33/6/23
|
||||
f 30/7/24 29/1/24 35/3/24
|
||||
f 36/10/25 35/7/25 41/8/25
|
||||
f 34/1/26 33/9/26 39/2/26
|
||||
f 40/3/27 35/7/27 39/2/27
|
||||
f 33/9/28 32/4/28 38/6/28
|
||||
f 40/7/37 39/1/37 4/3/37
|
||||
f 38/9/38 37/4/38 2/6/38
|
||||
f 41/10/39 40/7/39 5/8/39
|
||||
f 3/2/40 39/1/40 2/6/40
|
||||
376
assets/hbm/models/mine_he.obj
Normal file
@ -0,0 +1,376 @@
|
||||
# Blender v2.76 (sub 0) OBJ File: 'mine_he.blend'
|
||||
# www.blender.org
|
||||
o Cylinder
|
||||
v 0.000000 0.000000 -0.250000
|
||||
v 0.000000 0.125000 -0.250000
|
||||
v 0.125000 0.000000 -0.216506
|
||||
v 0.125000 0.125000 -0.216506
|
||||
v 0.216506 0.000000 -0.125000
|
||||
v 0.216506 0.125000 -0.125000
|
||||
v 0.250000 0.000000 0.000000
|
||||
v 0.250000 0.125000 0.000000
|
||||
v 0.216506 0.000000 0.125000
|
||||
v 0.216506 0.125000 0.125000
|
||||
v 0.125000 0.000000 0.216506
|
||||
v 0.125000 0.125000 0.216506
|
||||
v 0.000000 0.000000 0.250000
|
||||
v 0.000000 0.125000 0.250000
|
||||
v -0.125000 0.000000 0.216506
|
||||
v -0.125000 0.125000 0.216506
|
||||
v -0.216506 0.000000 0.125000
|
||||
v -0.216506 0.125000 0.125000
|
||||
v -0.250000 0.000000 0.000000
|
||||
v -0.250000 0.125000 0.000000
|
||||
v -0.216506 0.000000 -0.125000
|
||||
v -0.216506 0.125000 -0.125000
|
||||
v -0.125000 0.000000 -0.216506
|
||||
v -0.125000 0.125000 -0.216506
|
||||
v 0.100000 0.125000 -0.173205
|
||||
v -0.000000 0.125000 -0.200000
|
||||
v 0.173205 0.125000 -0.100000
|
||||
v 0.200000 0.125000 0.000000
|
||||
v 0.173205 0.125000 0.100000
|
||||
v 0.100000 0.125000 0.173205
|
||||
v 0.000000 0.125000 0.200000
|
||||
v -0.100000 0.125000 0.173205
|
||||
v -0.173205 0.125000 0.100000
|
||||
v -0.200000 0.125000 0.000000
|
||||
v -0.173205 0.125000 -0.100000
|
||||
v -0.100000 0.125000 -0.173205
|
||||
v 0.100000 0.110000 -0.173205
|
||||
v -0.000000 0.110000 -0.200000
|
||||
v 0.173205 0.110000 -0.100000
|
||||
v 0.200000 0.110000 0.000000
|
||||
v 0.173205 0.110000 0.100000
|
||||
v 0.100000 0.110000 0.173205
|
||||
v 0.000000 0.110000 0.200000
|
||||
v -0.100000 0.110000 0.173205
|
||||
v -0.173205 0.110000 0.100000
|
||||
v -0.200000 0.110000 0.000000
|
||||
v -0.173205 0.110000 -0.100000
|
||||
v -0.100000 0.110000 -0.173205
|
||||
v 0.070000 0.110000 -0.121244
|
||||
v -0.000000 0.110000 -0.140000
|
||||
v 0.121244 0.110000 -0.070000
|
||||
v 0.140000 0.110000 0.000000
|
||||
v 0.121244 0.110000 0.070000
|
||||
v 0.070000 0.110000 0.121244
|
||||
v 0.000000 0.110000 0.140000
|
||||
v -0.070000 0.110000 0.121244
|
||||
v -0.121244 0.110000 0.070000
|
||||
v -0.140000 0.110000 0.000000
|
||||
v -0.121244 0.110000 -0.070000
|
||||
v -0.070000 0.110000 -0.121244
|
||||
v 0.070000 0.125000 -0.121244
|
||||
v -0.000000 0.125000 -0.140000
|
||||
v 0.121244 0.125000 -0.070000
|
||||
v 0.140000 0.125000 0.000000
|
||||
v 0.121244 0.125000 0.070000
|
||||
v 0.070000 0.125000 0.121244
|
||||
v 0.000000 0.125000 0.140000
|
||||
v -0.070000 0.125000 0.121244
|
||||
v -0.121244 0.125000 0.070000
|
||||
v -0.140000 0.125000 0.000000
|
||||
v -0.121244 0.125000 -0.070000
|
||||
v -0.070000 0.125000 -0.121244
|
||||
v 0.035000 0.125000 -0.060622
|
||||
v -0.000000 0.125000 -0.070000
|
||||
v 0.060622 0.125000 -0.035000
|
||||
v 0.070000 0.125000 0.000000
|
||||
v 0.060622 0.125000 0.035000
|
||||
v 0.035000 0.125000 0.060622
|
||||
v 0.000000 0.125000 0.070000
|
||||
v -0.035000 0.125000 0.060622
|
||||
v -0.060622 0.125000 0.035000
|
||||
v -0.070000 0.125000 0.000000
|
||||
v -0.060622 0.125000 -0.035000
|
||||
v -0.035000 0.125000 -0.060622
|
||||
v 0.021000 0.150000 -0.036373
|
||||
v -0.000000 0.150000 -0.042000
|
||||
v 0.036373 0.150000 -0.021000
|
||||
v 0.042000 0.150000 0.000000
|
||||
v 0.036373 0.150000 0.021000
|
||||
v 0.021000 0.150000 0.036373
|
||||
v 0.000000 0.150000 0.042000
|
||||
v -0.021000 0.150000 0.036373
|
||||
v -0.036373 0.150000 0.021000
|
||||
v -0.042000 0.150000 0.000000
|
||||
v -0.036373 0.150000 -0.021000
|
||||
v -0.021000 0.150000 -0.036373
|
||||
vt 0.960752 0.210383
|
||||
vt 0.779713 0.210383
|
||||
vt 0.779713 0.035513
|
||||
vt 0.942646 0.277949
|
||||
vt 0.694075 0.517821
|
||||
vt 0.018428 0.336781
|
||||
vt 0.265732 0.089478
|
||||
vt 0.942648 0.298932
|
||||
vt 0.797817 0.298932
|
||||
vt 0.797814 0.277947
|
||||
vt 0.920923 0.380009
|
||||
vt 0.819542 0.380009
|
||||
vt 0.920923 0.400994
|
||||
vt 0.819542 0.400994
|
||||
vt 0.895578 0.495584
|
||||
vt 0.844887 0.495584
|
||||
vt 0.762072 0.729031
|
||||
vt 0.791336 0.772633
|
||||
vt 0.769830 0.794139
|
||||
vt 0.761958 0.823517
|
||||
vt 0.879471 0.823517
|
||||
vt 0.850093 0.874402
|
||||
vt 0.915201 0.764875
|
||||
vt 0.871599 0.794139
|
||||
vt 0.850093 0.772633
|
||||
vt 0.879357 0.918004
|
||||
vt 0.871599 0.852895
|
||||
vt 0.709566 0.819974
|
||||
vt 0.722685 0.771011
|
||||
vt 0.873221 0.725488
|
||||
vt 0.820715 0.764761
|
||||
vt 0.931864 0.827060
|
||||
vt 0.918744 0.876024
|
||||
vt 0.709566 0.827060
|
||||
vt 0.769830 0.852895
|
||||
vt 0.768208 0.921547
|
||||
vt 0.791336 0.874402
|
||||
vt 0.820715 0.882274
|
||||
vt 0.817172 0.712368
|
||||
vt 0.918744 0.771011
|
||||
vt 0.931864 0.819974
|
||||
vt 0.762072 0.918004
|
||||
vt 0.726228 0.882160
|
||||
vt 0.824257 0.934666
|
||||
vt 0.960752 0.035512
|
||||
vt 0.446771 0.089478
|
||||
vt 0.603555 0.179997
|
||||
vt 0.694075 0.336782
|
||||
vt 0.603555 0.674605
|
||||
vt 0.446771 0.765124
|
||||
vt 0.265732 0.765124
|
||||
vt 0.108948 0.674605
|
||||
vt 0.018428 0.517820
|
||||
vt 0.108948 0.179997
|
||||
vt 0.726228 0.764875
|
||||
vt 0.879357 0.729031
|
||||
vt 0.915201 0.882160
|
||||
vt 0.824257 0.712368
|
||||
vt 0.722685 0.876024
|
||||
vt 0.817172 0.934666
|
||||
vt 0.768208 0.725488
|
||||
vt 0.873221 0.921547
|
||||
vn 0.258800 0.000000 -0.965900
|
||||
vn 0.707100 0.000000 -0.707100
|
||||
vn 0.965900 0.000000 -0.258800
|
||||
vn 0.965900 0.000000 0.258800
|
||||
vn 0.707100 0.000000 0.707100
|
||||
vn 0.258800 0.000000 0.965900
|
||||
vn -0.258800 0.000000 0.965900
|
||||
vn -0.707100 0.000000 0.707100
|
||||
vn -0.965900 0.000000 0.258800
|
||||
vn -0.965900 0.000000 -0.258800
|
||||
vn 0.000000 1.000000 0.000000
|
||||
vn -0.258800 0.000000 -0.965900
|
||||
vn -0.707100 0.000000 -0.707100
|
||||
vn 0.000000 -1.000000 0.000000
|
||||
vn -0.655700 0.734300 0.175700
|
||||
vn 0.175700 0.734300 0.655700
|
||||
vn 0.655700 0.734300 -0.175700
|
||||
vn -0.655700 0.734300 -0.175700
|
||||
vn -0.175700 0.734300 0.655700
|
||||
vn 0.655700 0.734300 0.175700
|
||||
vn -0.480000 0.734300 -0.480000
|
||||
vn 0.175700 0.734300 -0.655700
|
||||
vn -0.480000 0.734300 0.480000
|
||||
vn 0.480000 0.734300 0.480000
|
||||
vn -0.175700 0.734300 -0.655700
|
||||
vn 0.480000 0.734300 -0.480000
|
||||
s off
|
||||
f 2/1/1 4/2/1 3/3/1
|
||||
f 4/1/2 6/2/2 5/3/2
|
||||
f 6/1/3 8/2/3 7/3/3
|
||||
f 8/1/4 10/2/4 9/3/4
|
||||
f 10/1/5 12/2/5 11/3/5
|
||||
f 12/1/6 14/2/6 13/3/6
|
||||
f 14/1/7 16/2/7 15/3/7
|
||||
f 16/1/8 18/2/8 17/3/8
|
||||
f 18/1/9 20/2/9 19/3/9
|
||||
f 20/1/10 22/2/10 21/3/10
|
||||
f 10/2/11 8/1/11 28/4/11
|
||||
f 24/1/12 2/2/12 1/3/12
|
||||
f 22/1/13 24/2/13 23/3/13
|
||||
f 7/5/14 19/6/14 23/7/14
|
||||
f 27/4/9 39/8/9 40/9/9
|
||||
f 24/1/11 36/4/11 26/10/11
|
||||
f 2/1/11 26/4/11 25/10/11
|
||||
f 8/2/11 6/1/11 27/4/11
|
||||
f 22/1/11 35/4/11 36/10/11
|
||||
f 4/1/11 25/4/11 27/10/11
|
||||
f 20/1/11 34/4/11 35/10/11
|
||||
f 18/1/11 33/4/11 34/10/11
|
||||
f 16/1/11 32/4/11 33/10/11
|
||||
f 14/1/11 31/4/11 32/10/11
|
||||
f 14/2/11 12/1/11 30/4/11
|
||||
f 12/2/11 10/1/11 29/4/11
|
||||
f 39/8/11 51/11/11 52/12/11
|
||||
f 34/4/4 46/8/4 47/9/4
|
||||
f 31/4/1 43/8/1 44/9/1
|
||||
f 28/4/10 40/8/10 41/9/10
|
||||
f 35/4/5 47/8/5 48/9/5
|
||||
f 26/4/7 38/8/7 37/9/7
|
||||
f 32/4/2 44/8/2 45/9/2
|
||||
f 29/4/13 41/8/13 42/9/13
|
||||
f 36/4/6 48/8/6 38/9/6
|
||||
f 25/4/8 37/8/8 39/9/8
|
||||
f 33/4/3 45/8/3 46/9/3
|
||||
f 30/4/12 42/8/12 43/9/12
|
||||
f 54/11/6 66/13/6 67/14/6
|
||||
f 46/8/11 58/11/11 59/12/11
|
||||
f 43/8/11 55/11/11 56/12/11
|
||||
f 40/8/11 52/11/11 53/12/11
|
||||
f 47/8/11 59/11/11 60/12/11
|
||||
f 37/9/11 38/8/11 50/11/11
|
||||
f 44/8/11 56/11/11 57/12/11
|
||||
f 42/9/11 41/8/11 53/11/11
|
||||
f 38/9/11 48/8/11 60/11/11
|
||||
f 37/8/11 49/11/11 51/12/11
|
||||
f 45/8/11 57/11/11 58/12/11
|
||||
f 42/8/11 54/11/11 55/12/11
|
||||
f 66/13/11 78/15/11 79/16/11
|
||||
f 51/11/3 63/13/3 64/14/3
|
||||
f 58/11/10 70/13/10 71/14/10
|
||||
f 55/11/7 67/13/7 68/14/7
|
||||
f 52/11/4 64/13/4 65/14/4
|
||||
f 59/11/13 71/13/13 72/14/13
|
||||
f 50/11/1 62/13/1 61/14/1
|
||||
f 56/11/8 68/13/8 69/14/8
|
||||
f 53/11/5 65/13/5 66/14/5
|
||||
f 60/11/12 72/13/12 62/14/12
|
||||
f 49/11/2 61/13/2 63/14/2
|
||||
f 57/11/9 69/13/9 70/14/9
|
||||
f 81/17/15 93/18/15 94/19/15
|
||||
f 63/13/11 75/15/11 76/16/11
|
||||
f 70/13/11 82/15/11 83/16/11
|
||||
f 67/13/11 79/15/11 80/16/11
|
||||
f 64/13/11 76/15/11 77/16/11
|
||||
f 71/13/11 83/15/11 84/16/11
|
||||
f 62/13/11 74/15/11 73/16/11
|
||||
f 68/13/11 80/15/11 81/16/11
|
||||
f 66/14/11 65/13/11 77/15/11
|
||||
f 62/14/11 72/13/11 84/15/11
|
||||
f 61/13/11 73/15/11 75/16/11
|
||||
f 69/13/11 81/15/11 82/16/11
|
||||
f 95/20/11 89/21/11 87/22/11
|
||||
f 78/23/16 90/24/16 91/25/16
|
||||
f 75/26/17 87/22/17 88/27/17
|
||||
f 83/28/18 82/29/18 94/19/18
|
||||
f 79/30/19 91/25/19 92/31/19
|
||||
f 77/32/20 76/33/20 88/27/20
|
||||
f 83/34/21 95/20/21 96/35/21
|
||||
f 74/36/22 86/37/22 85/38/22
|
||||
f 80/39/23 92/31/23 93/18/23
|
||||
f 78/40/24 77/41/24 89/21/24
|
||||
f 74/42/25 84/43/25 96/35/25
|
||||
f 73/44/26 85/38/26 87/22/26
|
||||
f 1/45/1 2/1/1 3/3/1
|
||||
f 3/45/2 4/1/2 5/3/2
|
||||
f 5/45/3 6/1/3 7/3/3
|
||||
f 7/45/4 8/1/4 9/3/4
|
||||
f 9/45/5 10/1/5 11/3/5
|
||||
f 11/45/6 12/1/6 13/3/6
|
||||
f 13/45/7 14/1/7 15/3/7
|
||||
f 15/45/8 16/1/8 17/3/8
|
||||
f 17/45/9 18/1/9 19/3/9
|
||||
f 19/45/10 20/1/10 21/3/10
|
||||
f 29/10/11 10/2/11 28/4/11
|
||||
f 23/45/12 24/1/12 1/3/12
|
||||
f 21/45/13 22/1/13 23/3/13
|
||||
f 23/7/14 1/46/14 3/47/14
|
||||
f 3/47/14 5/48/14 7/5/14
|
||||
f 7/5/14 9/49/14 11/50/14
|
||||
f 11/50/14 13/51/14 15/52/14
|
||||
f 15/52/14 17/53/14 19/6/14
|
||||
f 19/6/14 21/54/14 23/7/14
|
||||
f 23/7/14 3/47/14 7/5/14
|
||||
f 7/5/14 11/50/14 15/52/14
|
||||
f 15/52/14 19/6/14 7/5/14
|
||||
f 28/10/9 27/4/9 40/9/9
|
||||
f 2/2/11 24/1/11 26/10/11
|
||||
f 4/2/11 2/1/11 25/10/11
|
||||
f 28/10/11 8/2/11 27/4/11
|
||||
f 24/2/11 22/1/11 36/10/11
|
||||
f 6/2/11 4/1/11 27/10/11
|
||||
f 22/2/11 20/1/11 35/10/11
|
||||
f 20/2/11 18/1/11 34/10/11
|
||||
f 18/2/11 16/1/11 33/10/11
|
||||
f 16/2/11 14/1/11 32/10/11
|
||||
f 31/10/11 14/2/11 30/4/11
|
||||
f 30/10/11 12/2/11 29/4/11
|
||||
f 40/9/11 39/8/11 52/12/11
|
||||
f 35/10/4 34/4/4 47/9/4
|
||||
f 32/10/1 31/4/1 44/9/1
|
||||
f 29/10/10 28/4/10 41/9/10
|
||||
f 36/10/5 35/4/5 48/9/5
|
||||
f 25/10/7 26/4/7 37/9/7
|
||||
f 33/10/2 32/4/2 45/9/2
|
||||
f 30/10/13 29/4/13 42/9/13
|
||||
f 26/10/6 36/4/6 38/9/6
|
||||
f 27/10/8 25/4/8 39/9/8
|
||||
f 34/10/3 33/4/3 46/9/3
|
||||
f 31/10/12 30/4/12 43/9/12
|
||||
f 55/12/6 54/11/6 67/14/6
|
||||
f 47/9/11 46/8/11 59/12/11
|
||||
f 44/9/11 43/8/11 56/12/11
|
||||
f 41/9/11 40/8/11 53/12/11
|
||||
f 48/9/11 47/8/11 60/12/11
|
||||
f 49/12/11 37/9/11 50/11/11
|
||||
f 45/9/11 44/8/11 57/12/11
|
||||
f 54/12/11 42/9/11 53/11/11
|
||||
f 50/12/11 38/9/11 60/11/11
|
||||
f 39/9/11 37/8/11 51/12/11
|
||||
f 46/9/11 45/8/11 58/12/11
|
||||
f 43/9/11 42/8/11 55/12/11
|
||||
f 67/14/11 66/13/11 79/16/11
|
||||
f 52/12/3 51/11/3 64/14/3
|
||||
f 59/12/10 58/11/10 71/14/10
|
||||
f 56/12/7 55/11/7 68/14/7
|
||||
f 53/12/4 52/11/4 65/14/4
|
||||
f 60/12/13 59/11/13 72/14/13
|
||||
f 49/12/1 50/11/1 61/14/1
|
||||
f 57/12/8 56/11/8 69/14/8
|
||||
f 54/12/5 53/11/5 66/14/5
|
||||
f 50/12/12 60/11/12 62/14/12
|
||||
f 51/12/2 49/11/2 63/14/2
|
||||
f 58/12/9 57/11/9 70/14/9
|
||||
f 82/55/15 81/17/15 94/19/15
|
||||
f 64/14/11 63/13/11 76/16/11
|
||||
f 71/14/11 70/13/11 83/16/11
|
||||
f 68/14/11 67/13/11 80/16/11
|
||||
f 65/14/11 64/13/11 77/16/11
|
||||
f 72/14/11 71/13/11 84/16/11
|
||||
f 61/14/11 62/13/11 73/16/11
|
||||
f 69/14/11 68/13/11 81/16/11
|
||||
f 78/16/11 66/14/11 77/15/11
|
||||
f 74/16/11 62/14/11 84/15/11
|
||||
f 63/14/11 61/13/11 75/16/11
|
||||
f 70/14/11 69/13/11 82/16/11
|
||||
f 87/22/11 85/38/11 95/20/11
|
||||
f 86/37/11 96/35/11 95/20/11
|
||||
f 95/20/11 94/19/11 93/18/11
|
||||
f 93/18/11 92/31/11 95/20/11
|
||||
f 91/25/11 90/24/11 89/21/11
|
||||
f 89/21/11 88/27/11 87/22/11
|
||||
f 85/38/11 86/37/11 95/20/11
|
||||
f 95/20/11 92/31/11 91/25/11
|
||||
f 91/25/11 89/21/11 95/20/11
|
||||
f 79/56/16 78/23/16 91/25/16
|
||||
f 76/57/17 75/26/17 88/27/17
|
||||
f 95/20/18 83/28/18 94/19/18
|
||||
f 80/58/19 79/30/19 92/31/19
|
||||
f 89/21/20 77/32/20 88/27/20
|
||||
f 84/59/21 83/34/21 96/35/21
|
||||
f 73/60/22 74/36/22 85/38/22
|
||||
f 81/61/23 80/39/23 93/18/23
|
||||
f 90/24/24 78/40/24 89/21/24
|
||||
f 86/37/25 74/42/25 96/35/25
|
||||
f 75/62/26 73/44/26 87/22/26
|
||||
BIN
assets/hbm/textures/blocks/mine_ap.png
Normal file
|
After Width: | Height: | Size: 210 B |
BIN
assets/hbm/textures/blocks/mine_ap_alt.png
Normal file
|
After Width: | Height: | Size: 276 B |
BIN
assets/hbm/textures/blocks/mine_he.png
Normal file
|
After Width: | Height: | Size: 296 B |
BIN
assets/hbm/textures/blocks/mine_shrap.png
Normal file
|
After Width: | Height: | Size: 269 B |
BIN
assets/hbm/textures/items/defuser.png
Normal file
|
After Width: | Height: | Size: 303 B |
BIN
assets/hbm/textures/models/mine_ap.png
Normal file
|
After Width: | Height: | Size: 696 B |
BIN
assets/hbm/textures/models/mine_he.png
Normal file
|
After Width: | Height: | Size: 850 B |
BIN
assets/hbm/textures/models/mine_shrap.png
Normal file
|
After Width: | Height: | Size: 842 B |
@ -180,7 +180,10 @@ public class ModBlocks {
|
||||
public static Block yellow_barrel;
|
||||
public static Block crashed_balefire;
|
||||
public static Block rejuvinator;
|
||||
|
||||
public static Block mine_ap;
|
||||
public static Block mine_he;
|
||||
public static Block mine_shrap;
|
||||
|
||||
public static Block crate;
|
||||
public static Block crate_weapon;
|
||||
public static Block crate_lead;
|
||||
@ -712,7 +715,10 @@ public class ModBlocks {
|
||||
red_barrel = new RedBarrel(Material.iron).setBlockName("red_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F);
|
||||
yellow_barrel = new YellowBarrel(Material.iron).setBlockName("yellow_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F);
|
||||
crashed_balefire = new BlockCrashedBomb(Material.iron).setBlockName("crashed_bomb").setCreativeTab(MainRegistry.nukeTab).setBlockUnbreakable().setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":crashed_balefire");
|
||||
rejuvinator = new BombRejuvinator(Material.iron).setBlockName("rejuvinator").setCreativeTab(MainRegistry.nukeTab).setBlockUnbreakable().setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":inserter_side");
|
||||
rejuvinator = new BombRejuvinator(Material.iron).setBlockName("rejuvinator").setCreativeTab(MainRegistry.nukeTab).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":inserter_side");
|
||||
mine_ap = new Landmine(Material.iron).setBlockName("mine_ap").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_ap");
|
||||
mine_he = new Landmine(Material.iron).setBlockName("mine_he").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_he");
|
||||
mine_shrap = new Landmine(Material.iron).setBlockName("mine_shrap").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_shrap");
|
||||
|
||||
machine_difurnace_off = new MachineDiFurnace(false).setBlockName("machine_difurnace_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab);
|
||||
machine_difurnace_on = new MachineDiFurnace(true).setBlockName("machine_difurnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F);
|
||||
@ -1130,6 +1136,11 @@ public class ModBlocks {
|
||||
GameRegistry.registerBlock(turret_cwis, turret_cwis.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(turret_cheapo, turret_cheapo.getUnlocalizedName());
|
||||
|
||||
//Mines
|
||||
GameRegistry.registerBlock(mine_ap, mine_ap.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(mine_he, mine_he.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(mine_shrap, mine_shrap.getUnlocalizedName());
|
||||
|
||||
//Wot
|
||||
GameRegistry.registerBlock(cel_prime, cel_prime.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(cel_prime_terminal, cel_prime_terminal.getUnlocalizedName());
|
||||
|
||||
173
com/hbm/blocks/bomb/Landmine.java
Normal file
@ -0,0 +1,173 @@
|
||||
package com.hbm.blocks.bomb;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.explosion.ExplosionChaos;
|
||||
import com.hbm.explosion.ExplosionLarge;
|
||||
import com.hbm.interfaces.IBomb;
|
||||
import com.hbm.items.ModItems;
|
||||
import com.hbm.tileentity.bomb.TileEntityLandmine;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockContainer;
|
||||
import net.minecraft.block.BlockFence;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.item.EntityItem;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.tileentity.TileEntityDispenser;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class Landmine extends BlockContainer implements IBomb {
|
||||
|
||||
public static boolean safeMode = false;
|
||||
|
||||
public Landmine(Material p_i45386_1_) {
|
||||
super(p_i45386_1_);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TileEntity createNewTileEntity(World world, int i) {
|
||||
return new TileEntityLandmine();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getRenderType() {
|
||||
return -1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isOpaqueCube() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean renderAsNormalBlock() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Item getItemDropped(int i, Random rand, int j) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setBlockBoundsBasedOnState(IBlockAccess p_149719_1_, int p_149719_2_, int p_149719_3_,
|
||||
int p_149719_4_) {
|
||||
float f = 0.0625F;
|
||||
if (this == ModBlocks.mine_ap)
|
||||
this.setBlockBounds(6 * f, 0.0F, 6 * f, 10 * f, 4 * f, 10 * f);
|
||||
if (this == ModBlocks.mine_he)
|
||||
this.setBlockBounds(4 * f, 0.0F, 4 * f, 12 * f, 2 * f, 12 * f);
|
||||
if (this == ModBlocks.mine_shrap)
|
||||
this.setBlockBounds(4 * f, 0.0F, 4 * f, 12 * f, 2 * f, 12 * f);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) {
|
||||
float f = 0.0625F;
|
||||
if (this == ModBlocks.mine_ap)
|
||||
this.setBlockBounds(6 * f, 0.0F, 6 * f, 10 * f, 4 * f, 10 * f);
|
||||
if (this == ModBlocks.mine_he)
|
||||
this.setBlockBounds(4 * f, 0.0F, 4 * f, 12 * f, 2 * f, 12 * f);
|
||||
if (this == ModBlocks.mine_shrap)
|
||||
this.setBlockBounds(4 * f, 0.0F, 4 * f, 12 * f, 2 * f, 12 * f);
|
||||
return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY,
|
||||
z + this.maxZ);
|
||||
}
|
||||
|
||||
public boolean canPlaceBlockAt(World world, int x, int y, int z) {
|
||||
return World.doesBlockHaveSolidTopSurface(world, x, y - 1, z)
|
||||
|| BlockFence.func_149825_a(world.getBlock(x, y - 1, z));
|
||||
}
|
||||
|
||||
public void onNeighborBlockChange(World world, int x, int y, int z,
|
||||
Block block) {
|
||||
|
||||
if (world.isBlockIndirectlyGettingPowered(x, y, z))
|
||||
{
|
||||
explode(world, x, y, z);
|
||||
}
|
||||
|
||||
boolean flag = false;
|
||||
|
||||
if (!World.doesBlockHaveSolidTopSurface(world, x, y - 1, z)
|
||||
&& !BlockFence.func_149825_a(world.getBlock(x, y - 1, z))) {
|
||||
flag = true;
|
||||
}
|
||||
|
||||
if (flag) {
|
||||
this.dropBlockAsItem(world, x, y, z,
|
||||
world.getBlockMetadata(x, y, z), 0);
|
||||
world.setBlockToAir(x, y, z);
|
||||
}
|
||||
}
|
||||
|
||||
public void breakBlock(World world, int x, int y, int z, Block block, int i) {
|
||||
|
||||
if (!safeMode) {
|
||||
explode(world, x, y, z);
|
||||
}
|
||||
|
||||
super.breakBlock(world, x, y, z, block, i);
|
||||
}
|
||||
|
||||
public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int i, float fx, float fy,
|
||||
float fz) {
|
||||
if (player.getHeldItem() != null && player.getHeldItem().getItem() == ModItems.defuser) {
|
||||
|
||||
safeMode = true;
|
||||
world.setBlockToAir(x, y, z);
|
||||
|
||||
ItemStack itemstack = new ItemStack(this, 1);
|
||||
float f = world.rand.nextFloat() * 0.6F + 0.2F;
|
||||
float f1 = world.rand.nextFloat() * 0.2F;
|
||||
float f2 = world.rand.nextFloat() * 0.6F + 0.2F;
|
||||
|
||||
EntityItem entityitem = new EntityItem(world, x + f, y + f1 + 1, z + f2, itemstack);
|
||||
|
||||
float f3 = 0.05F;
|
||||
entityitem.motionX = (float) world.rand.nextGaussian() * f3;
|
||||
entityitem.motionY = (float) world.rand.nextGaussian() * f3 + 0.2F;
|
||||
entityitem.motionZ = (float) world.rand.nextGaussian() * f3;
|
||||
|
||||
if(!world.isRemote)
|
||||
world.spawnEntityInWorld(entityitem);
|
||||
|
||||
safeMode = false;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void explode(World world, int x, int y, int z) {
|
||||
|
||||
if(!world.isRemote) {
|
||||
|
||||
Landmine.safeMode = true;
|
||||
world.func_147480_a(x, y, z, false);
|
||||
Landmine.safeMode = false;
|
||||
|
||||
if (this == ModBlocks.mine_ap) {
|
||||
world.newExplosion(null, x + 0.5, y + 0.5, z + 0.5, 2.5F, false, false);
|
||||
}
|
||||
if (this == ModBlocks.mine_he) {
|
||||
ExplosionLarge.explode(world, x + 0.5, y + 0.5, z + 0.5, 10F, true, false, false);
|
||||
}
|
||||
if (this == ModBlocks.mine_shrap) {
|
||||
ExplosionLarge.explode(world, x + 0.5, y + 0.5, z + 0.5, 1, true, false, false);
|
||||
ExplosionLarge.spawnShrapnelShower(world, x + 0.5, y + 0.5, z + 0.5, 0, 1D, 0, 45, 0.2D);
|
||||
ExplosionLarge.spawnShrapnels(world, x + 0.5, y + 0.5, z + 0.5, 5);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,5 +1,7 @@
|
||||
package com.hbm.blocks.generic;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
import com.hbm.lib.RefStrings;
|
||||
import com.hbm.tileentity.deco.TileEntityVent;
|
||||
|
||||
@ -8,6 +10,7 @@ import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.block.BlockContainer;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.IIcon;
|
||||
import net.minecraft.world.World;
|
||||
@ -39,4 +42,10 @@ public class BlockVent extends BlockContainer {
|
||||
return side == 1 ? this.iconTop : (side == 0 ? this.iconTop : this.blockIcon);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Item getItemDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -832,6 +832,8 @@ public class ModItems {
|
||||
public static Item med_ipecac;
|
||||
public static Item med_ptsd;
|
||||
public static Item med_schizophrenia;
|
||||
|
||||
public static Item defuser;
|
||||
|
||||
public static Item flame_pony;
|
||||
public static Item flame_conspiracy;
|
||||
@ -2048,6 +2050,8 @@ public class ModItems {
|
||||
med_ptsd = new ItemLemon(0, 0, false).setUnlocalizedName("med_ptsd").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":med_ptsd_new");
|
||||
med_schizophrenia = new ItemLemon(0, 0, false).setUnlocalizedName("med_schizophrenia").setCreativeTab(MainRegistry.consumableTab).setTextureName(RefStrings.MODID + ":med_schizophrenia_new");
|
||||
|
||||
defuser = new Item().setUnlocalizedName("defuser").setMaxStackSize(1).setFull3D().setCreativeTab(MainRegistry.nukeTab).setTextureName(RefStrings.MODID + ":defuser");
|
||||
|
||||
flame_pony = new ItemCustomLore().setUnlocalizedName("flame_pony").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":flame_pony");
|
||||
flame_conspiracy = new ItemCustomLore().setUnlocalizedName("flame_conspiracy").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":flame_conspiracy");
|
||||
flame_politics = new ItemCustomLore().setUnlocalizedName("flame_politics").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":flame_politics");
|
||||
@ -3676,6 +3680,7 @@ public class ModItems {
|
||||
GameRegistry.registerItem(detonator_multi, detonator_multi.getUnlocalizedName());
|
||||
GameRegistry.registerItem(crate_caller, crate_caller.getUnlocalizedName());
|
||||
GameRegistry.registerItem(meteor_remote, meteor_remote.getUnlocalizedName());
|
||||
GameRegistry.registerItem(defuser, defuser.getUnlocalizedName());
|
||||
GameRegistry.registerItem(hazmat_helmet, hazmat_helmet.getUnlocalizedName());
|
||||
GameRegistry.registerItem(hazmat_plate, hazmat_plate.getUnlocalizedName());
|
||||
GameRegistry.registerItem(hazmat_legs, hazmat_legs.getUnlocalizedName());
|
||||
|
||||
@ -349,12 +349,24 @@ public class HbmWorldGen implements IWorldGenerator {
|
||||
int z = j + rand.nextInt(16);
|
||||
int y = world.getHeightValue(x, z);
|
||||
|
||||
if(world.getBlock(x, y, z).canPlaceTorchOnTop(world, x, y - 1, z))
|
||||
world.setBlock(x, y + 1, z, ModBlocks.broadcaster_pc, rand.nextInt(4) + 2, 2);
|
||||
if(world.getBlock(x, y - 1, z).canPlaceTorchOnTop(world, x, y - 1, z))
|
||||
world.setBlock(x, y, z, ModBlocks.broadcaster_pc, rand.nextInt(4) + 2, 2);
|
||||
|
||||
if(MainRegistry.enableDebugMode)
|
||||
MainRegistry.logger.info("[Debug] Successfully spawned corrupted broadcaster at " + x + " " + y +" " + z);
|
||||
}
|
||||
|
||||
if (MainRegistry.enableMines && rand.nextInt(MainRegistry.minefreq) == 0) {
|
||||
int x = i + rand.nextInt(16);
|
||||
int z = j + rand.nextInt(16);
|
||||
int y = world.getHeightValue(x, z);
|
||||
|
||||
if(world.getBlock(x, y - 1, z).canPlaceTorchOnTop(world, x, y - 1, z))
|
||||
world.setBlock(x, y, z, ModBlocks.mine_ap);
|
||||
|
||||
if(MainRegistry.enableDebugMode)
|
||||
MainRegistry.logger.info("[Debug] Successfully spawned landmine at " + x + " " + y +" " + z);
|
||||
}
|
||||
}
|
||||
|
||||
if (rand.nextInt(25) == 0) {
|
||||
|
||||
@ -71,6 +71,8 @@ public class ClientProxy extends ServerProxy
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretCIWS.class, new RenderCIWSTurret());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretCheapo.class, new RenderCheapoTurret());
|
||||
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityLandmine.class, new RenderLandmine());
|
||||
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityCelPrime.class, new RenderCelPrimeTower());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityCelPrimeTerminal.class, new RenderCelPrimePart());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityCelPrimeBattery.class, new RenderCelPrimePart());
|
||||
|
||||
@ -1237,6 +1237,10 @@ public class CraftingManager {
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.vent_chlorine), new Object[] { "IGI", "ICI", "IDI", 'I', "plateIron", 'G', Blocks.iron_bars, 'C', ModItems.pellet_gas, 'D', Blocks.dispenser }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.vent_cloud), new Object[] { "IGI", "ICI", "IDI", 'I', "plateIron", 'G', Blocks.iron_bars, 'C', ModItems.grenade_cloud, 'D', Blocks.dispenser }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.vent_pink_cloud), new Object[] { "IGI", "ICI", "IDI", 'I', "plateIron", 'G', Blocks.iron_bars, 'C', ModItems.grenade_pink_cloud, 'D', Blocks.dispenser }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.mine_ap, 4), new Object[] { "C", "P", "T", 'C', ModItems.circuit_targeting_tier2, 'P', "plateIron", 'T', Blocks.tnt }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.mine_he, 1), new Object[] { " C ", "PTP", 'C', ModItems.circuit_targeting_tier2, 'P', "plateSteel", 'T', Blocks.tnt }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModBlocks.mine_shrap, 2), new Object[] { "LLL", " C ", "PTP", 'C', ModItems.circuit_targeting_tier2, 'P', "plateSteel", 'T', ModBlocks.det_cord, 'L', ModItems.pellet_buckshot }));
|
||||
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.defuser, 1), new Object[] { " PS", "P P", " P ", 'P', "ingotPolymer", 'S', "plateSteel" }));
|
||||
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.paper, 1), new Object[] { new ItemStack(ModItems.assembly_template, 1, OreDictionary.WILDCARD_VALUE) });
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.paper, 1), new Object[] { new ItemStack(ModItems.chemistry_template, 1, OreDictionary.WILDCARD_VALUE) });
|
||||
|
||||
@ -187,6 +187,7 @@ import com.hbm.tileentity.bomb.TileEntityCelPrimePort;
|
||||
import com.hbm.tileentity.bomb.TileEntityCelPrimeTanks;
|
||||
import com.hbm.tileentity.bomb.TileEntityCelPrimeTerminal;
|
||||
import com.hbm.tileentity.bomb.TileEntityCrashedBomb;
|
||||
import com.hbm.tileentity.bomb.TileEntityLandmine;
|
||||
import com.hbm.tileentity.bomb.TileEntityLaunchPad;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukeBoy;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukeCustom;
|
||||
@ -227,6 +228,7 @@ import com.hbm.tileentity.deco.TileEntityRotationTester;
|
||||
import com.hbm.tileentity.deco.TileEntityTaint;
|
||||
import com.hbm.tileentity.deco.TileEntityTestContainer;
|
||||
import com.hbm.tileentity.deco.TileEntityTestRender;
|
||||
import com.hbm.tileentity.deco.TileEntityVent;
|
||||
import com.hbm.tileentity.deco.TileEntityYellowBarrel;
|
||||
import com.hbm.tileentity.machine.TileEntityAMSBase;
|
||||
import com.hbm.tileentity.machine.TileEntityAMSEmitter;
|
||||
@ -336,7 +338,7 @@ public class MainRegistry
|
||||
//Armor Materials
|
||||
public static ArmorMaterial enumArmorMaterialEmerald = EnumHelper.addArmorMaterial("TEST", 2500, new int[] {3, 8, 6, 3}, 30);
|
||||
public static ArmorMaterial enumArmorMaterialSchrabidium = EnumHelper.addArmorMaterial("SCHRABIDIUM", 100, new int[] {3, 8, 6, 3}, 50);
|
||||
public static ArmorMaterial enumArmorMaterialEuphemium = EnumHelper.addArmorMaterial("EUPHEMIUM", 2147483647, new int[] {3, 8, 6, 3}, 100);
|
||||
public static ArmorMaterial enumArmorMaterialEuphemium = EnumHelper.addArmorMaterial("EUPHEMIUM", 2100000000, new int[] {3, 8, 6, 3}, 100);
|
||||
public static ArmorMaterial enumArmorMaterialHazmat = EnumHelper.addArmorMaterial("HAZMAT", 60, new int[] {2, 5, 4, 1}, 5);
|
||||
public static ArmorMaterial enumArmorMaterialT45 = EnumHelper.addArmorMaterial("T45", 1000, new int[] {2, 5, 4, 1}, 0);
|
||||
public static ArmorMaterial enumArmorMaterialSteel = EnumHelper.addArmorMaterial("STEEL", 20, new int[] {2, 6, 5, 2}, 5);
|
||||
@ -431,7 +433,7 @@ public class MainRegistry
|
||||
public static boolean enablePlutoniumOre = false;
|
||||
public static boolean enableDungeons = true;
|
||||
public static boolean enableMDOres = true;
|
||||
public static boolean enableBarrels = false;
|
||||
public static boolean enableMines = true;
|
||||
public static boolean enableNITAN = true;
|
||||
public static boolean enableNukeClouds = true;
|
||||
public static boolean enableAutoCleanup = false;
|
||||
@ -481,6 +483,7 @@ public class MainRegistry
|
||||
public static int dudStructure = 500;
|
||||
public static int spaceshipStructure = 1000;
|
||||
public static int broadcaster = 5000;
|
||||
public static int minefreq = 64;
|
||||
public static int meteorStrikeChance = 20 * 60 * 90;
|
||||
public static int meteorShowerChance = 20 * 60 * 3;
|
||||
public static int meteorShowerDuration = 6000;
|
||||
@ -666,6 +669,8 @@ public class MainRegistry
|
||||
GameRegistry.registerTileEntity(TileEntityVaultDoor.class, "tileentity_vault_door");
|
||||
GameRegistry.registerTileEntity(TileEntityRadiobox.class, "tileentity_radio_broadcaster");
|
||||
GameRegistry.registerTileEntity(TileEntityRadioRec.class, "tileentity_radio_receiver");
|
||||
GameRegistry.registerTileEntity(TileEntityVent.class, "tileentity_vent");
|
||||
GameRegistry.registerTileEntity(TileEntityLandmine.class, "tileentity_landmine");
|
||||
|
||||
EntityRegistry.registerModEntity(EntityRocket.class, "entity_rocket", 0, this, 250, 1, true);
|
||||
EntityRegistry.registerModEntity(EntityNukeExplosion.class, "entity_nuke_explosion", 1, this, 250, 1, true);
|
||||
@ -1339,7 +1344,7 @@ public class MainRegistry
|
||||
enablePlutoniumOre = config.get(Configuration.CATEGORY_GENERAL, "1.02_enablePlutoniumNetherOre", false).getBoolean(false);
|
||||
enableDungeons = config.get(Configuration.CATEGORY_GENERAL, "1.03_enableDungeonSpawn", true).getBoolean(true);
|
||||
enableMDOres = config.get(Configuration.CATEGORY_GENERAL, "1.04_enableOresInModdedDimensions", true).getBoolean(true);
|
||||
enableBarrels = config.get(Configuration.CATEGORY_GENERAL, "1.05_enableNuclearBarrelSpawn", false).getBoolean(false);
|
||||
enableMines = config.get(Configuration.CATEGORY_GENERAL, "1.05_enableLandmineSpawn", true).getBoolean(true);
|
||||
enableNITAN = config.get(Configuration.CATEGORY_GENERAL, "1.06_enableNITANChestSpawn", true).getBoolean(true);
|
||||
enableNukeClouds = config.get(Configuration.CATEGORY_GENERAL, "1.07_enableMushroomClouds", true).getBoolean(true);
|
||||
enableAutoCleanup = config.get(Configuration.CATEGORY_GENERAL, "1.08_enableAutomaticRadCleanup", false).getBoolean(false);
|
||||
@ -1459,8 +1464,11 @@ public class MainRegistry
|
||||
propSpaceship.comment = "Spawn spaceship on every nTH chunk";
|
||||
spaceshipStructure = propSpaceship.getInt();
|
||||
Property propBroadcaster = config.get(Configuration.CATEGORY_GENERAL, "4.12_broadcasterSpawn", 5000);
|
||||
propBroadcaster.comment = "Spawn spaceship on every nTH chunk";
|
||||
propBroadcaster.comment = "Spawn corrupt broadcaster on every nTH chunk";
|
||||
broadcaster = propBroadcaster.getInt();
|
||||
Property propMines = config.get(Configuration.CATEGORY_GENERAL, "4.13_landmineSpawn", 64);
|
||||
propMines.comment = "Spawn AP landmine on every nTH chunk";
|
||||
minefreq = propMines.getInt();
|
||||
|
||||
Property propMeteorStrikeChance = config.get(Configuration.CATEGORY_GENERAL, "5.00_meteorStrikeChance", 50000);
|
||||
propMeteorStrikeChance.comment = "The probability of a meteor spawning (an average of once every nTH ticks)";
|
||||
|
||||
@ -34,6 +34,10 @@ public class ResourceManager {
|
||||
public static final IModelCustom turret_cheapo_head = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/turret_cheapo_head.obj"));
|
||||
public static final IModelCustom turret_cheapo_gun = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/turret_cheapo_gun.obj"));
|
||||
|
||||
//Landmines
|
||||
public static final IModelCustom mine_ap = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/mine_ap.obj"));
|
||||
public static final IModelCustom mine_he = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/mine_he.obj"));
|
||||
|
||||
//Pumpjack
|
||||
public static final IModelCustom pumpjack_base = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/pumpjack_base.obj"));
|
||||
public static final IModelCustom pumpjack_head = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/pumpjack_head.obj"));
|
||||
@ -127,6 +131,11 @@ public class ResourceManager {
|
||||
public static final ResourceLocation turret_cheapo_rotor_tex = new ResourceLocation(RefStrings.MODID, "textures/models/turret_cheapo_rotor.png");
|
||||
public static final ResourceLocation turret_cheapo_head_tex = new ResourceLocation(RefStrings.MODID, "textures/models/turret_cheapo_head.png");
|
||||
public static final ResourceLocation turret_cheapo_gun_tex = new ResourceLocation(RefStrings.MODID, "textures/models/turret_cheapo_gun.png");
|
||||
|
||||
//Landmines
|
||||
public static final ResourceLocation mine_ap_tex = new ResourceLocation(RefStrings.MODID, "textures/models/mine_ap.png");
|
||||
public static final ResourceLocation mine_he_tex = new ResourceLocation(RefStrings.MODID, "textures/models/mine_he.png");
|
||||
public static final ResourceLocation mine_shrap_tex = new ResourceLocation(RefStrings.MODID, "textures/models/mine_shrap.png");
|
||||
|
||||
//Pumpjack
|
||||
public static final ResourceLocation pumpjack_base_tex = new ResourceLocation(RefStrings.MODID, "textures/models/pumpjack_base.png");
|
||||
|
||||
42
com/hbm/render/tileentity/RenderLandmine.java
Normal file
@ -0,0 +1,42 @@
|
||||
package com.hbm.render.tileentity;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.main.ResourceManager;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
|
||||
public class RenderLandmine 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);
|
||||
GL11.glRotatef(180, 0F, 1F, 0F);
|
||||
|
||||
Block block = tileEntity.getWorldObj().getBlock(tileEntity.xCoord, tileEntity.yCoord, tileEntity.zCoord);
|
||||
|
||||
if(block == ModBlocks.mine_ap) {
|
||||
GL11.glScaled(1.5F, 1.5F, 1.5F);
|
||||
bindTexture(ResourceManager.mine_ap_tex);
|
||||
ResourceManager.mine_ap.renderAll();
|
||||
}
|
||||
if(block == ModBlocks.mine_he) {
|
||||
bindTexture(ResourceManager.mine_he_tex);
|
||||
ResourceManager.mine_he.renderAll();
|
||||
}
|
||||
if(block == ModBlocks.mine_shrap) {
|
||||
bindTexture(ResourceManager.mine_shrap_tex);
|
||||
ResourceManager.mine_he.renderAll();
|
||||
}
|
||||
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
}
|
||||
83
com/hbm/tileentity/bomb/TileEntityLandmine.java
Normal file
@ -0,0 +1,83 @@
|
||||
package com.hbm.tileentity.bomb;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.blocks.bomb.Landmine;
|
||||
import com.hbm.explosion.ExplosionLarge;
|
||||
import com.hbm.main.ResourceManager;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
|
||||
public class TileEntityLandmine extends TileEntity {
|
||||
|
||||
private boolean isPrimed = false;
|
||||
|
||||
public void updateEntity() {
|
||||
|
||||
if(!worldObj.isRemote) {
|
||||
Block block = worldObj.getBlock(xCoord, yCoord, zCoord);
|
||||
double range = 1;
|
||||
|
||||
if (block == ModBlocks.mine_ap) {
|
||||
range = 1.5D;
|
||||
}
|
||||
if (block == ModBlocks.mine_he) {
|
||||
range = 2;
|
||||
}
|
||||
if (block == ModBlocks.mine_shrap) {
|
||||
range = 1.5D;
|
||||
}
|
||||
|
||||
List<Object> list = worldObj.getEntitiesWithinAABBExcludingEntity(null,
|
||||
AxisAlignedBB.getBoundingBox(xCoord - range, yCoord - 1, zCoord - range, xCoord + range, yCoord + 1, zCoord + range));
|
||||
|
||||
boolean flag = false;
|
||||
for (Object o : list) {
|
||||
|
||||
if (o instanceof EntityLivingBase) {
|
||||
|
||||
flag = true;
|
||||
|
||||
if(isPrimed) {
|
||||
|
||||
((Landmine)block).explode(worldObj, xCoord, yCoord, zCoord);
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if(!isPrimed && !flag) {
|
||||
|
||||
this.worldObj.playSoundEffect(this.xCoord, this.yCoord, this.zCoord, "hbm:item.techBoop", 2.0F, 1.0F);
|
||||
isPrimed = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void readFromNBT(NBTTagCompound nbt) {
|
||||
super.readFromNBT(nbt);
|
||||
|
||||
isPrimed = nbt.getBoolean("primed");
|
||||
}
|
||||
|
||||
public void writeToNBT(NBTTagCompound nbt) {
|
||||
super.writeToNBT(nbt);
|
||||
|
||||
nbt.setBoolean("primed", isPrimed);
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public double getMaxRenderDistanceSquared()
|
||||
{
|
||||
return 65536.0D;
|
||||
}
|
||||
}
|
||||
@ -16,7 +16,7 @@ public class TileEntityVent extends TileEntity {
|
||||
|
||||
public void updateEntity() {
|
||||
|
||||
if(!worldObj.isRemote) {
|
||||
if(!worldObj.isRemote && worldObj.isBlockIndirectlyGettingPowered(xCoord, yCoord, zCoord)) {
|
||||
Block b = worldObj.getBlock(xCoord, yCoord, zCoord);
|
||||
|
||||
if(b == ModBlocks.vent_chlorine) {
|
||||
|
||||