french translations, solinium bomb chassis, new bomb textures
1565
assets/hbm/lang/fr_FR.lang
Normal file
582
assets/hbm/models/ufp.obj
Normal file
@ -0,0 +1,582 @@
|
||||
# Blender v2.76 (sub 0) OBJ File: 'ufp.blend'
|
||||
# www.blender.org
|
||||
o Cylinder
|
||||
v 0.000000 1.000000 -0.500000
|
||||
v 0.000000 1.000000 1.500000
|
||||
v 0.191342 0.961940 -0.500000
|
||||
v 0.191342 0.961940 1.500000
|
||||
v 0.353553 0.853553 -0.500000
|
||||
v 0.353553 0.853553 1.500000
|
||||
v 0.461940 0.691342 -0.500000
|
||||
v 0.461940 0.691342 1.500000
|
||||
v 0.500000 0.500000 -0.500000
|
||||
v 0.500000 0.500000 1.500000
|
||||
v 0.461940 0.308658 -0.500000
|
||||
v 0.461940 0.308658 1.500000
|
||||
v 0.353553 0.146447 -0.500000
|
||||
v 0.353553 0.146447 1.500000
|
||||
v 0.191342 0.038060 -0.500000
|
||||
v 0.191342 0.038060 1.500000
|
||||
v 0.000000 -0.000000 -0.500000
|
||||
v 0.000000 0.000000 1.500000
|
||||
v -0.191342 0.038060 -0.500000
|
||||
v -0.191342 0.038060 1.500000
|
||||
v -0.353553 0.146446 -0.500000
|
||||
v -0.353553 0.146447 1.500000
|
||||
v -0.461940 0.308658 -0.500000
|
||||
v -0.461940 0.308658 1.500000
|
||||
v -0.500000 0.500000 -0.500000
|
||||
v -0.500000 0.500000 1.500000
|
||||
v -0.461940 0.691342 -0.500000
|
||||
v -0.461940 0.691342 1.500000
|
||||
v -0.353553 0.853553 -0.500000
|
||||
v -0.353553 0.853554 1.500000
|
||||
v -0.191341 0.961940 -0.500000
|
||||
v -0.191341 0.961940 1.500000
|
||||
v 0.143506 0.846455 1.750000
|
||||
v 0.000000 0.875000 1.750000
|
||||
v 0.265165 0.765165 1.750000
|
||||
v 0.346455 0.643506 1.750000
|
||||
v 0.375000 0.500000 1.750000
|
||||
v 0.346455 0.356494 1.750000
|
||||
v 0.265165 0.234835 1.750000
|
||||
v 0.143506 0.153545 1.750000
|
||||
v 0.000000 0.125000 1.750000
|
||||
v -0.143506 0.153545 1.750000
|
||||
v -0.265165 0.234835 1.750000
|
||||
v -0.346455 0.356494 1.750000
|
||||
v -0.375000 0.500000 1.750000
|
||||
v -0.346455 0.643506 1.750000
|
||||
v -0.265165 0.765165 1.750000
|
||||
v -0.143506 0.846455 1.750000
|
||||
v 0.047835 0.615485 1.900000
|
||||
v 0.000000 0.625000 1.900000
|
||||
v 0.088388 0.588389 1.900000
|
||||
v 0.115485 0.547836 1.900000
|
||||
v 0.125000 0.500000 1.900000
|
||||
v 0.115485 0.452165 1.900000
|
||||
v 0.088388 0.411612 1.900000
|
||||
v 0.047835 0.384515 1.900000
|
||||
v 0.000000 0.375000 1.900000
|
||||
v -0.047835 0.384515 1.900000
|
||||
v -0.088388 0.411612 1.900000
|
||||
v -0.115485 0.452165 1.900000
|
||||
v -0.125000 0.500000 1.900000
|
||||
v -0.115485 0.547836 1.900000
|
||||
v -0.088388 0.588389 1.900000
|
||||
v -0.047835 0.615485 1.900000
|
||||
v 0.000000 0.750000 -1.750000
|
||||
v 0.095671 0.730970 -1.750000
|
||||
v 0.176777 0.676777 -1.750000
|
||||
v 0.230970 0.595671 -1.750000
|
||||
v 0.250000 0.500000 -1.750000
|
||||
v 0.230970 0.404329 -1.750000
|
||||
v 0.176777 0.323223 -1.750000
|
||||
v 0.095671 0.269030 -1.750000
|
||||
v 0.000000 0.250000 -1.750000
|
||||
v -0.095671 0.269030 -1.750000
|
||||
v -0.176777 0.323223 -1.750000
|
||||
v -0.230970 0.404329 -1.750000
|
||||
v -0.250000 0.500000 -1.750000
|
||||
v -0.230970 0.595671 -1.750000
|
||||
v -0.176777 0.676777 -1.750000
|
||||
v -0.095671 0.730970 -1.750000
|
||||
v -0.000000 0.750000 -2.500000
|
||||
v 0.095671 0.730970 -2.500000
|
||||
v 0.176777 0.676777 -2.500000
|
||||
v 0.230970 0.595671 -2.500000
|
||||
v 0.250000 0.500000 -2.500000
|
||||
v 0.230970 0.404329 -2.500000
|
||||
v 0.176777 0.323223 -2.500000
|
||||
v 0.095671 0.269030 -2.500000
|
||||
v 0.000000 0.250000 -2.500000
|
||||
v -0.095671 0.269030 -2.500000
|
||||
v -0.176777 0.323223 -2.500000
|
||||
v -0.230970 0.404329 -2.500000
|
||||
v -0.250000 0.500000 -2.500000
|
||||
v -0.230970 0.595671 -2.500000
|
||||
v -0.176777 0.676777 -2.500000
|
||||
v -0.095671 0.730970 -2.500000
|
||||
v -0.530330 1.030330 -1.750000
|
||||
v 0.530330 -0.030330 -1.750000
|
||||
v -0.530330 1.030330 -2.500000
|
||||
v 0.530330 -0.030330 -2.500000
|
||||
v -0.265165 0.765165 -1.000000
|
||||
v 0.265165 0.234835 -1.000000
|
||||
v -0.530330 -0.030330 -1.750000
|
||||
v 0.530330 1.030330 -1.750000
|
||||
v -0.530330 -0.030330 -2.500000
|
||||
v 0.530330 1.030330 -2.500000
|
||||
v -0.265165 0.234835 -1.000000
|
||||
v 0.265165 0.765165 -1.000000
|
||||
vt 0.308738 0.762034
|
||||
vt 0.272835 0.762033
|
||||
vt 0.272836 0.393966
|
||||
vt 0.236932 0.762033
|
||||
vt 0.236932 0.393966
|
||||
vt 0.201028 0.762033
|
||||
vt 0.201029 0.393966
|
||||
vt 0.165125 0.762033
|
||||
vt 0.165126 0.393966
|
||||
vt 0.129222 0.762033
|
||||
vt 0.129222 0.393966
|
||||
vt 0.093319 0.762033
|
||||
vt 0.093319 0.393966
|
||||
vt 0.057415 0.762033
|
||||
vt 0.057415 0.393966
|
||||
vt 0.021512 0.762033
|
||||
vt 0.021512 0.393966
|
||||
vt 0.595963 0.762035
|
||||
vt 0.560060 0.762035
|
||||
vt 0.560063 0.393968
|
||||
vt 0.524157 0.762035
|
||||
vt 0.524160 0.393968
|
||||
vt 0.488254 0.762034
|
||||
vt 0.488256 0.393967
|
||||
vt 0.452351 0.762034
|
||||
vt 0.452353 0.393967
|
||||
vt 0.416447 0.762034
|
||||
vt 0.416449 0.393967
|
||||
vt 0.380544 0.762034
|
||||
vt 0.380546 0.393967
|
||||
vt 0.232444 0.813276
|
||||
vt 0.205516 0.813276
|
||||
vt 0.344641 0.762034
|
||||
vt 0.308739 0.393966
|
||||
vt 0.344643 0.393967
|
||||
vt 0.281812 0.159539
|
||||
vt 0.160637 0.813276
|
||||
vt 0.151661 0.866175
|
||||
vt 0.142685 0.866175
|
||||
vt 0.052928 0.813276
|
||||
vt 0.026000 0.813276
|
||||
vt 0.304250 0.813276
|
||||
vt 0.277323 0.813276
|
||||
vt 0.447863 0.813277
|
||||
vt 0.124734 0.813276
|
||||
vt 0.097806 0.813276
|
||||
vt 0.519669 0.813277
|
||||
vt 0.340153 0.813277
|
||||
vt 0.196540 0.813276
|
||||
vt 0.169613 0.813276
|
||||
vt 0.591475 0.813278
|
||||
vt 0.564548 0.813278
|
||||
vt 0.411959 0.813277
|
||||
vt 0.268347 0.813276
|
||||
vt 0.088831 0.813276
|
||||
vt 0.061903 0.813276
|
||||
vt 0.483766 0.813277
|
||||
vt 0.133710 0.813276
|
||||
vt 0.555572 0.813278
|
||||
vt 0.528645 0.813277
|
||||
vt 0.376056 0.813277
|
||||
vt 0.349129 0.813277
|
||||
vt 0.782044 0.733935
|
||||
vt 0.790337 0.692245
|
||||
vt 0.807606 0.695680
|
||||
vt 0.420935 0.813277
|
||||
vt 0.438886 0.866176
|
||||
vt 0.115758 0.866175
|
||||
vt 0.106782 0.866175
|
||||
vt 0.385032 0.813277
|
||||
vt 0.402983 0.866175
|
||||
vt 0.079855 0.866175
|
||||
vt 0.070879 0.866175
|
||||
vt 0.367080 0.866175
|
||||
vt 0.358104 0.866175
|
||||
vt 0.043952 0.866175
|
||||
vt 0.295274 0.866175
|
||||
vt 0.286298 0.866175
|
||||
vt 0.331177 0.866175
|
||||
vt 0.322201 0.866175
|
||||
vt 0.582499 0.866176
|
||||
vt 0.573523 0.866176
|
||||
vt 0.259371 0.866175
|
||||
vt 0.250395 0.866175
|
||||
vt 0.546596 0.866176
|
||||
vt 0.223468 0.866175
|
||||
vt 0.214492 0.866175
|
||||
vt 0.492742 0.813277
|
||||
vt 0.510693 0.866176
|
||||
vt 0.187564 0.866175
|
||||
vt 0.178589 0.866175
|
||||
vt 0.474790 0.866176
|
||||
vt 0.465814 0.866176
|
||||
vt 0.353620 0.159539
|
||||
vt 0.353620 0.021514
|
||||
vt 0.371572 0.021514
|
||||
vt 0.425427 0.159540
|
||||
vt 0.443378 0.159540
|
||||
vt 0.102295 0.159539
|
||||
vt 0.120246 0.159539
|
||||
vt 0.497234 0.159540
|
||||
vt 0.515185 0.159540
|
||||
vt 0.317716 0.159539
|
||||
vt 0.174102 0.159539
|
||||
vt 0.192054 0.159539
|
||||
vt 0.595966 0.393968
|
||||
vt 0.569041 0.159541
|
||||
vt 0.389523 0.159540
|
||||
vt 0.407475 0.159540
|
||||
vt 0.245909 0.159539
|
||||
vt 0.066391 0.159539
|
||||
vt 0.084343 0.159539
|
||||
vt 0.461330 0.159540
|
||||
vt 0.479282 0.159540
|
||||
vt 0.138198 0.159539
|
||||
vt 0.533137 0.159540
|
||||
vt 0.551089 0.159541
|
||||
vt 0.371571 0.159539
|
||||
vt 0.210005 0.159539
|
||||
vt 0.227957 0.159539
|
||||
vt 0.030488 0.159538
|
||||
vt 0.048439 0.159538
|
||||
vt 0.693090 0.782494
|
||||
vt 0.638990 0.746346
|
||||
vt 0.729239 0.728394
|
||||
vt 0.030488 0.021513
|
||||
vt 0.048439 0.021513
|
||||
vt 0.281813 0.021512
|
||||
vt 0.299765 0.021512
|
||||
vt 0.317716 0.021512
|
||||
vt 0.335668 0.021512
|
||||
vt 0.569042 0.021515
|
||||
vt 0.586993 0.021515
|
||||
vt 0.245909 0.021514
|
||||
vt 0.263861 0.021514
|
||||
vt 0.533138 0.021515
|
||||
vt 0.551090 0.021515
|
||||
vt 0.210006 0.021513
|
||||
vt 0.227957 0.021513
|
||||
vt 0.497235 0.021515
|
||||
vt 0.515186 0.021515
|
||||
vt 0.174102 0.021513
|
||||
vt 0.192054 0.021513
|
||||
vt 0.461331 0.021515
|
||||
vt 0.479283 0.021515
|
||||
vt 0.138199 0.021513
|
||||
vt 0.156150 0.021513
|
||||
vt 0.425427 0.021515
|
||||
vt 0.443379 0.021515
|
||||
vt 0.102295 0.021513
|
||||
vt 0.120247 0.021513
|
||||
vt 0.389524 0.021514
|
||||
vt 0.407476 0.021514
|
||||
vt 0.066391 0.021513
|
||||
vt 0.084343 0.021513
|
||||
vt 0.915041 0.511196
|
||||
vt 0.638990 0.511196
|
||||
vt 0.638990 0.373170
|
||||
vt 0.846029 0.649222
|
||||
vt 0.708003 0.649222
|
||||
vt 0.885898 0.083239
|
||||
vt 0.762444 0.330146
|
||||
vt 0.638990 0.268420
|
||||
vt 0.978488 0.206693
|
||||
vt 0.916761 0.330146
|
||||
vt 0.299764 0.159539
|
||||
vt 0.313226 0.813276
|
||||
vt 0.241419 0.813276
|
||||
vt 0.456838 0.813277
|
||||
vt 0.813952 0.702027
|
||||
vt 0.817387 0.710320
|
||||
vt 0.817387 0.719295
|
||||
vt 0.813952 0.727588
|
||||
vt 0.807606 0.733935
|
||||
vt 0.799313 0.737370
|
||||
vt 0.790337 0.737370
|
||||
vt 0.775698 0.727588
|
||||
vt 0.772263 0.719295
|
||||
vt 0.772263 0.710320
|
||||
vt 0.775698 0.702027
|
||||
vt 0.782044 0.695680
|
||||
vt 0.799313 0.692245
|
||||
vt 0.429911 0.866175
|
||||
vt 0.394007 0.866175
|
||||
vt 0.034976 0.866175
|
||||
vt 0.537620 0.866176
|
||||
vt 0.501717 0.866176
|
||||
vt 0.335668 0.159539
|
||||
vt 0.586992 0.159541
|
||||
vt 0.263861 0.159539
|
||||
vt 0.156150 0.159539
|
||||
vt 0.675139 0.692245
|
||||
vt 0.693090 0.692245
|
||||
vt 0.709675 0.699115
|
||||
vt 0.722369 0.711809
|
||||
vt 0.729239 0.746346
|
||||
vt 0.722369 0.762931
|
||||
vt 0.709675 0.775624
|
||||
vt 0.675139 0.782494
|
||||
vt 0.658554 0.775624
|
||||
vt 0.645860 0.762931
|
||||
vt 0.638990 0.728394
|
||||
vt 0.645860 0.711809
|
||||
vt 0.658554 0.699115
|
||||
vt 0.915041 0.373170
|
||||
vt 0.762444 0.021512
|
||||
vn 0.195100 0.980800 -0.000000
|
||||
vn 0.555600 0.831500 0.000000
|
||||
vn 0.831500 0.555600 0.000000
|
||||
vn 0.980800 0.195100 -0.000000
|
||||
vn 0.980800 -0.195100 0.000000
|
||||
vn 0.831500 -0.555600 0.000000
|
||||
vn 0.555600 -0.831500 0.000000
|
||||
vn 0.195100 -0.980800 0.000000
|
||||
vn -0.195100 -0.980800 0.000000
|
||||
vn -0.555600 -0.831500 0.000000
|
||||
vn -0.831500 -0.555600 0.000000
|
||||
vn -0.980800 -0.195100 0.000000
|
||||
vn -0.980800 0.195100 0.000000
|
||||
vn -0.831500 0.555600 0.000000
|
||||
vn 0.746500 0.498800 0.440300
|
||||
vn -0.195100 0.980800 0.000000
|
||||
vn -0.555600 0.831500 -0.000000
|
||||
vn 0.191400 0.962400 -0.192500
|
||||
vn 0.511800 -0.101800 0.853000
|
||||
vn 0.175200 -0.880600 0.440300
|
||||
vn 0.175200 0.880600 0.440300
|
||||
vn -0.880600 0.175200 0.440300
|
||||
vn 0.746500 -0.498800 0.440300
|
||||
vn -0.746500 -0.498800 0.440300
|
||||
vn -0.175200 0.880600 0.440300
|
||||
vn 0.880600 0.175200 0.440300
|
||||
vn -0.175200 -0.880600 0.440300
|
||||
vn -0.746500 0.498800 0.440300
|
||||
vn 0.498800 0.746500 0.440300
|
||||
vn 0.498800 -0.746500 0.440300
|
||||
vn -0.880600 -0.175200 0.440300
|
||||
vn 0.880600 -0.175200 0.440300
|
||||
vn -0.498800 -0.746500 0.440300
|
||||
vn -0.498800 0.746500 0.440300
|
||||
vn 0.000000 0.000000 1.000000
|
||||
vn -0.511800 0.101800 0.853000
|
||||
vn 0.433900 -0.289900 0.853000
|
||||
vn -0.433900 0.289900 0.853000
|
||||
vn 0.289900 -0.433900 0.853000
|
||||
vn -0.289900 0.433900 0.853000
|
||||
vn 0.101800 -0.511800 0.853000
|
||||
vn 0.101800 0.511800 0.853000
|
||||
vn -0.101800 0.511800 0.853000
|
||||
vn -0.101800 -0.511800 0.853000
|
||||
vn 0.289900 0.433900 0.853000
|
||||
vn -0.289900 -0.433900 0.853000
|
||||
vn 0.433900 0.289900 0.853000
|
||||
vn -0.433900 -0.289900 0.853000
|
||||
vn 0.511800 0.101800 0.853000
|
||||
vn -0.511800 -0.101800 0.853000
|
||||
vn -0.962400 0.191400 -0.192500
|
||||
vn 0.815900 -0.545200 -0.192500
|
||||
vn -0.815900 -0.545200 -0.192500
|
||||
vn -0.191400 0.962400 -0.192500
|
||||
vn 0.962400 0.191400 -0.192500
|
||||
vn -0.191400 -0.962400 -0.192500
|
||||
vn -0.815900 0.545200 -0.192500
|
||||
vn 0.545200 0.815900 -0.192500
|
||||
vn 0.545200 -0.815900 -0.192500
|
||||
vn -0.962400 -0.191400 -0.192500
|
||||
vn 0.962400 -0.191400 -0.192500
|
||||
vn -0.545200 -0.815900 -0.192500
|
||||
vn -0.545200 0.815900 -0.192500
|
||||
vn 0.815900 0.545200 -0.192500
|
||||
vn 0.191400 -0.962400 -0.192500
|
||||
vn -0.000000 0.000000 -1.000000
|
||||
vn 0.707100 0.707100 0.000000
|
||||
vn -0.707100 0.707100 -0.000000
|
||||
s off
|
||||
f 2/1/1 4/2/1 3/3/1
|
||||
f 4/2/2 6/4/2 5/5/2
|
||||
f 6/4/3 8/6/3 7/7/3
|
||||
f 8/6/4 10/8/4 9/9/4
|
||||
f 10/8/5 12/10/5 11/11/5
|
||||
f 12/10/6 14/12/6 13/13/6
|
||||
f 14/12/7 16/14/7 15/15/7
|
||||
f 16/14/8 18/16/8 17/17/8
|
||||
f 18/18/9 20/19/9 19/20/9
|
||||
f 20/19/10 22/21/10 21/22/10
|
||||
f 22/21/11 24/23/11 23/24/11
|
||||
f 24/23/12 26/25/12 25/26/12
|
||||
f 26/25/13 28/27/13 27/28/13
|
||||
f 28/27/14 30/29/14 29/30/14
|
||||
f 6/4/15 35/31/15 36/32/15
|
||||
f 32/33/16 2/1/16 1/34/16
|
||||
f 30/29/17 32/33/17 31/35/17
|
||||
f 1/34/18 3/3/18 66/36/18
|
||||
f 37/37/19 53/38/19 54/39/19
|
||||
f 16/14/20 40/40/20 41/41/20
|
||||
f 2/1/21 34/42/21 33/43/21
|
||||
f 28/27/22 26/25/22 45/44/22
|
||||
f 12/10/23 38/45/23 39/46/23
|
||||
f 24/23/24 22/21/24 43/47/24
|
||||
f 2/1/25 32/33/25 48/48/25
|
||||
f 8/6/26 36/49/26 37/50/26
|
||||
f 18/18/27 41/51/27 42/52/27
|
||||
f 30/29/28 28/27/28 46/53/28
|
||||
f 6/4/29 4/2/29 33/54/29
|
||||
f 14/12/30 39/55/30 40/56/30
|
||||
f 26/25/31 24/23/31 44/57/31
|
||||
f 10/8/32 37/37/32 38/58/32
|
||||
f 20/19/33 42/59/33 43/60/33
|
||||
f 30/29/34 47/61/34 48/62/34
|
||||
f 59/63/35 53/64/35 51/65/35
|
||||
f 46/66/36 45/44/36 61/67/36
|
||||
f 38/45/37 54/68/37 55/69/37
|
||||
f 47/70/38 46/53/38 62/71/38
|
||||
f 39/55/39 55/72/39 56/73/39
|
||||
f 47/61/40 63/74/40 64/75/40
|
||||
f 41/41/41 40/40/41 56/76/41
|
||||
f 34/42/42 50/77/42 49/78/42
|
||||
f 48/48/43 64/79/43 50/80/43
|
||||
f 41/51/44 57/81/44 58/82/44
|
||||
f 33/54/45 49/83/45 51/84/45
|
||||
f 43/60/46 42/59/46 58/85/46
|
||||
f 35/31/47 51/86/47 52/87/47
|
||||
f 44/88/48 43/47/48 59/89/48
|
||||
f 36/49/49 52/90/49 53/91/49
|
||||
f 44/57/50 60/92/50 61/93/50
|
||||
f 80/94/17 96/95/17 95/96/17
|
||||
f 27/28/51 78/97/51 77/98/51
|
||||
f 13/13/52 71/99/52 70/100/52
|
||||
f 23/24/53 76/101/53 75/102/53
|
||||
f 31/35/54 1/34/54 65/103/54
|
||||
f 9/9/55 69/104/55 68/105/55
|
||||
f 17/106/56 19/20/56 74/107/56
|
||||
f 29/30/57 79/108/57 78/109/57
|
||||
f 3/3/58 5/5/58 67/110/58
|
||||
f 15/15/59 72/111/59 71/112/59
|
||||
f 25/26/60 77/113/60 76/114/60
|
||||
f 9/9/61 11/11/61 70/115/61
|
||||
f 21/22/62 75/116/62 74/117/62
|
||||
f 31/35/63 80/94/63 79/118/63
|
||||
f 7/7/64 68/119/64 67/120/64
|
||||
f 17/17/65 73/121/65 72/122/65
|
||||
f 88/123/66 92/124/66 84/125/66
|
||||
f 73/121/8 89/126/8 88/127/8
|
||||
f 66/36/1 82/128/1 81/129/1
|
||||
f 65/103/16 81/130/16 96/131/16
|
||||
f 74/107/9 90/132/9 89/133/9
|
||||
f 67/110/2 83/134/2 82/135/2
|
||||
f 75/116/10 91/136/10 90/137/10
|
||||
f 68/119/3 84/138/3 83/139/3
|
||||
f 76/101/11 92/140/11 91/141/11
|
||||
f 69/104/4 85/142/4 84/143/4
|
||||
f 77/113/12 93/144/12 92/145/12
|
||||
f 70/115/5 86/146/5 85/147/5
|
||||
f 78/97/13 94/148/13 93/149/13
|
||||
f 71/99/6 87/150/6 86/151/6
|
||||
f 79/108/14 95/152/14 94/153/14
|
||||
f 72/111/7 88/154/7 87/155/7
|
||||
f 97/156/67 98/157/67 100/158/67
|
||||
f 97/156/67 101/159/67 102/160/67
|
||||
f 103/161/68 104/162/68 106/163/68
|
||||
f 103/161/68 107/164/68 108/165/68
|
||||
f 1/34/1 2/1/1 3/3/1
|
||||
f 3/3/2 4/2/2 5/5/2
|
||||
f 5/5/3 6/4/3 7/7/3
|
||||
f 7/7/4 8/6/4 9/9/4
|
||||
f 9/9/5 10/8/5 11/11/5
|
||||
f 11/11/6 12/10/6 13/13/6
|
||||
f 13/13/7 14/12/7 15/15/7
|
||||
f 15/15/8 16/14/8 17/17/8
|
||||
f 17/106/9 18/18/9 19/20/9
|
||||
f 19/20/10 20/19/10 21/22/10
|
||||
f 21/22/11 22/21/11 23/24/11
|
||||
f 23/24/12 24/23/12 25/26/12
|
||||
f 25/26/13 26/25/13 27/28/13
|
||||
f 27/28/14 28/27/14 29/30/14
|
||||
f 8/6/15 6/4/15 36/32/15
|
||||
f 31/35/16 32/33/16 1/34/16
|
||||
f 29/30/17 30/29/17 31/35/17
|
||||
f 65/166/18 1/34/18 66/36/18
|
||||
f 38/58/19 37/37/19 54/39/19
|
||||
f 18/16/20 16/14/20 41/41/20
|
||||
f 4/2/21 2/1/21 33/43/21
|
||||
f 46/66/22 28/27/22 45/44/22
|
||||
f 14/12/23 12/10/23 39/46/23
|
||||
f 44/88/24 24/23/24 43/47/24
|
||||
f 34/167/25 2/1/25 48/48/25
|
||||
f 10/8/26 8/6/26 37/50/26
|
||||
f 20/19/27 18/18/27 42/52/27
|
||||
f 47/70/28 30/29/28 46/53/28
|
||||
f 35/168/29 6/4/29 33/54/29
|
||||
f 16/14/30 14/12/30 40/56/30
|
||||
f 45/169/31 26/25/31 44/57/31
|
||||
f 12/10/32 10/8/32 38/58/32
|
||||
f 22/21/33 20/19/33 43/60/33
|
||||
f 32/33/34 30/29/34 48/62/34
|
||||
f 51/65/35 49/170/35 50/171/35
|
||||
f 50/171/35 64/172/35 51/65/35
|
||||
f 63/173/35 62/174/35 61/175/35
|
||||
f 61/175/35 60/176/35 63/173/35
|
||||
f 59/63/35 58/177/35 57/178/35
|
||||
f 57/178/35 56/179/35 55/180/35
|
||||
f 55/180/35 54/181/35 53/64/35
|
||||
f 53/64/35 52/182/35 51/65/35
|
||||
f 51/65/35 64/172/35 63/173/35
|
||||
f 63/173/35 60/176/35 59/63/35
|
||||
f 59/63/35 57/178/35 55/180/35
|
||||
f 55/180/35 53/64/35 59/63/35
|
||||
f 51/65/35 63/173/35 59/63/35
|
||||
f 62/183/36 46/66/36 61/67/36
|
||||
f 39/46/37 38/45/37 55/69/37
|
||||
f 63/184/38 47/70/38 62/71/38
|
||||
f 40/56/39 39/55/39 56/73/39
|
||||
f 48/62/40 47/61/40 64/75/40
|
||||
f 57/185/41 41/41/41 56/76/41
|
||||
f 33/43/42 34/42/42 49/78/42
|
||||
f 34/167/43 48/48/43 50/80/43
|
||||
f 42/52/44 41/51/44 58/82/44
|
||||
f 35/168/45 33/54/45 51/84/45
|
||||
f 59/186/46 43/60/46 58/85/46
|
||||
f 36/32/47 35/31/47 52/87/47
|
||||
f 60/187/48 44/88/48 59/89/48
|
||||
f 37/50/49 36/49/49 53/91/49
|
||||
f 45/169/50 44/57/50 61/93/50
|
||||
f 79/118/17 80/94/17 95/96/17
|
||||
f 25/26/51 27/28/51 77/98/51
|
||||
f 11/11/52 13/13/52 70/100/52
|
||||
f 21/22/53 23/24/53 75/102/53
|
||||
f 80/188/54 31/35/54 65/103/54
|
||||
f 7/7/55 9/9/55 68/105/55
|
||||
f 73/189/56 17/106/56 74/107/56
|
||||
f 27/28/57 29/30/57 78/109/57
|
||||
f 66/190/58 3/3/58 67/110/58
|
||||
f 13/13/59 15/15/59 71/112/59
|
||||
f 23/24/60 25/26/60 76/114/60
|
||||
f 69/191/61 9/9/61 70/115/61
|
||||
f 19/20/62 21/22/62 74/117/62
|
||||
f 29/30/63 31/35/63 79/118/63
|
||||
f 5/5/64 7/7/64 67/120/64
|
||||
f 15/15/65 17/17/65 72/122/65
|
||||
f 96/192/66 81/193/66 82/194/66
|
||||
f 82/194/66 83/195/66 84/125/66
|
||||
f 84/125/66 85/196/66 86/197/66
|
||||
f 86/197/66 87/198/66 84/125/66
|
||||
f 88/123/66 89/199/66 90/200/66
|
||||
f 90/200/66 91/201/66 92/124/66
|
||||
f 92/124/66 93/202/66 94/203/66
|
||||
f 94/203/66 95/204/66 92/124/66
|
||||
f 96/192/66 82/194/66 84/125/66
|
||||
f 84/125/66 87/198/66 88/123/66
|
||||
f 88/123/66 90/200/66 92/124/66
|
||||
f 92/124/66 95/204/66 96/192/66
|
||||
f 96/192/66 84/125/66 92/124/66
|
||||
f 72/122/8 73/121/8 88/127/8
|
||||
f 65/166/1 66/36/1 81/129/1
|
||||
f 80/188/16 65/103/16 96/131/16
|
||||
f 73/189/9 74/107/9 89/133/9
|
||||
f 66/190/2 67/110/2 82/135/2
|
||||
f 74/117/10 75/116/10 90/137/10
|
||||
f 67/120/3 68/119/3 83/139/3
|
||||
f 75/102/11 76/101/11 91/141/11
|
||||
f 68/105/4 69/104/4 84/143/4
|
||||
f 76/114/12 77/113/12 92/145/12
|
||||
f 69/191/5 70/115/5 85/147/5
|
||||
f 77/98/13 78/97/13 93/149/13
|
||||
f 70/100/6 71/99/6 86/151/6
|
||||
f 78/109/14 79/108/14 94/153/14
|
||||
f 71/112/7 72/111/7 87/155/7
|
||||
f 99/205/67 97/156/67 100/158/67
|
||||
f 98/157/67 97/156/67 102/160/67
|
||||
f 105/206/68 103/161/68 106/163/68
|
||||
f 104/162/68 103/161/68 108/165/68
|
||||
BIN
assets/hbm/textures/gui/soliniumSchematic.png
Normal file
|
After Width: | Height: | Size: 3.0 KiB |
BIN
assets/hbm/textures/items/ingot_solinium.png
Normal file
|
After Width: | Height: | Size: 304 B |
|
Before Width: | Height: | Size: 370 KiB After Width: | Height: | Size: 7.0 KiB |
|
Before Width: | Height: | Size: 724 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 294 KiB After Width: | Height: | Size: 16 KiB |
BIN
assets/hbm/textures/models/TheGadget3_tex.png
Normal file
|
After Width: | Height: | Size: 33 KiB |
@ -210,6 +210,9 @@ public class ModBlocks {
|
||||
public static Block nuke_custom;
|
||||
public static final int guiID_nuke_custom = 37;
|
||||
|
||||
public static Block nuke_solinium;
|
||||
public static final int guiID_nuke_solinium = 60;
|
||||
|
||||
public static Block bomb_multi;
|
||||
public static final int guiID_bomb_multi = 10;
|
||||
|
||||
@ -618,6 +621,7 @@ public class ModBlocks {
|
||||
nuke_fleija = new NukeFleija(Material.iron).setBlockName("nuke_fleija").setCreativeTab(MainRegistry.tabNuke).setHardness(5.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":fleija");
|
||||
nuke_prototype = new NukePrototype(Material.iron).setBlockName("nuke_prototype").setCreativeTab(MainRegistry.tabNuke).setHardness(5.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":prototype");
|
||||
nuke_custom = new NukeCustom(Material.iron).setBlockName("nuke_custom").setCreativeTab(MainRegistry.tabNuke).setHardness(5.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":custom");
|
||||
nuke_solinium = new NukeSolinium(Material.iron).setBlockName("nuke_solinium").setCreativeTab(MainRegistry.tabNuke).setHardness(5.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":nuke_solinium");
|
||||
|
||||
bomb_multi = new BombMulti(Material.iron).setBlockName("bomb_multi").setCreativeTab(MainRegistry.tabNuke).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":bomb_multi1");
|
||||
//bomb_multi_large = new BombMultiLarge(Material.iron).setBlockName("bomb_multi_large").setCreativeTab(MainRegistry.tabNuke).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":bomb_multi_large");
|
||||
@ -990,6 +994,7 @@ public class ModBlocks {
|
||||
GameRegistry.registerBlock(nuke_tsar, nuke_tsar.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(nuke_prototype, ItemPrototypeBlock.class, nuke_prototype.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(nuke_fleija, nuke_fleija.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(nuke_solinium, nuke_solinium.getUnlocalizedName());
|
||||
GameRegistry.registerBlock(nuke_custom, nuke_custom.getUnlocalizedName());
|
||||
|
||||
//Generic Bombs
|
||||
|
||||
215
com/hbm/blocks/bomb/NukeSolinium.java
Normal file
@ -0,0 +1,215 @@
|
||||
package com.hbm.blocks.bomb;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.Random;
|
||||
|
||||
import com.hbm.blocks.ModBlocks;
|
||||
import com.hbm.entity.effect.EntityCloudFleija;
|
||||
import com.hbm.entity.logic.EntityNukeExplosionMK3;
|
||||
import com.hbm.interfaces.IBomb;
|
||||
import com.hbm.main.MainRegistry;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukeSolinium;
|
||||
|
||||
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockContainer;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.entity.EntityLivingBase;
|
||||
import net.minecraft.entity.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.util.MathHelper;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
public class NukeSolinium extends BlockContainer implements IBomb {
|
||||
|
||||
private final Random field_149933_a = new Random();
|
||||
private static boolean keepInventory = false;
|
||||
private Map field_77288_k = new HashMap();
|
||||
|
||||
public NukeSolinium(Material p_i45386_1_) {
|
||||
super(p_i45386_1_);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
|
||||
return new TileEntityNukeSolinium();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Item getItemDropped(int p_149650_1_, Random p_149650_2_, int p_149650_3_)
|
||||
{
|
||||
return Item.getItemFromBlock(ModBlocks.nuke_solinium);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void breakBlock(World p_149749_1_, int p_149749_2_, int p_149749_3_, int p_149749_4_, Block p_149749_5_, int p_149749_6_)
|
||||
{
|
||||
if (!keepInventory)
|
||||
{
|
||||
TileEntityNukeSolinium tileentityfurnace = (TileEntityNukeSolinium)p_149749_1_.getTileEntity(p_149749_2_, p_149749_3_, p_149749_4_);
|
||||
|
||||
if (tileentityfurnace != null)
|
||||
{
|
||||
for (int i1 = 0; i1 < tileentityfurnace.getSizeInventory(); ++i1)
|
||||
{
|
||||
ItemStack itemstack = tileentityfurnace.getStackInSlot(i1);
|
||||
|
||||
if (itemstack != null)
|
||||
{
|
||||
float f = this.field_149933_a.nextFloat() * 0.8F + 0.1F;
|
||||
float f1 = this.field_149933_a.nextFloat() * 0.8F + 0.1F;
|
||||
float f2 = this.field_149933_a.nextFloat() * 0.8F + 0.1F;
|
||||
|
||||
while (itemstack.stackSize > 0)
|
||||
{
|
||||
int j1 = this.field_149933_a.nextInt(21) + 10;
|
||||
|
||||
if (j1 > itemstack.stackSize)
|
||||
{
|
||||
j1 = itemstack.stackSize;
|
||||
}
|
||||
|
||||
itemstack.stackSize -= j1;
|
||||
EntityItem entityitem = new EntityItem(p_149749_1_, p_149749_2_ + f, p_149749_3_ + f1, p_149749_4_ + f2, new ItemStack(itemstack.getItem(), j1, itemstack.getItemDamage()));
|
||||
|
||||
if (itemstack.hasTagCompound())
|
||||
{
|
||||
entityitem.getEntityItem().setTagCompound((NBTTagCompound)itemstack.getTagCompound().copy());
|
||||
}
|
||||
|
||||
float f3 = 0.05F;
|
||||
entityitem.motionX = (float)this.field_149933_a.nextGaussian() * f3;
|
||||
entityitem.motionY = (float)this.field_149933_a.nextGaussian() * f3 + 0.2F;
|
||||
entityitem.motionZ = (float)this.field_149933_a.nextGaussian() * f3;
|
||||
p_149749_1_.spawnEntityInWorld(entityitem);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
p_149749_1_.func_147453_f(p_149749_2_, p_149749_3_, p_149749_4_, p_149749_5_);
|
||||
}
|
||||
}
|
||||
|
||||
super.breakBlock(p_149749_1_, p_149749_2_, p_149749_3_, p_149749_4_, p_149749_5_, p_149749_6_);
|
||||
}
|
||||
|
||||
@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())
|
||||
{
|
||||
TileEntityNukeSolinium entity = (TileEntityNukeSolinium) world.getTileEntity(x, y, z);
|
||||
if(entity != null)
|
||||
{
|
||||
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_nuke_solinium, world, x, y, z);
|
||||
}
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNeighborBlockChange(World p_149695_1_, int x, int y, int z, Block p_149695_5_)
|
||||
{
|
||||
TileEntityNukeSolinium entity = (TileEntityNukeSolinium) p_149695_1_.getTileEntity(x, y, z);
|
||||
if (p_149695_1_.isBlockIndirectlyGettingPowered(x, y, z) && !p_149695_1_.isRemote)
|
||||
{
|
||||
if(entity.isReady())
|
||||
{
|
||||
this.onBlockDestroyedByPlayer(p_149695_1_, x, y, z, 1);
|
||||
entity.clearSlots();
|
||||
p_149695_1_.setBlockToAir(x, y, z);
|
||||
igniteTestBomb(p_149695_1_, x, y, z, MainRegistry.fleijaRadius);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public boolean igniteTestBomb(World world, int x, int y, int z, int r)
|
||||
{
|
||||
if (!world.isRemote)
|
||||
{
|
||||
TileEntityNukeSolinium entityn = (TileEntityNukeSolinium) world.getTileEntity(x, y, z);
|
||||
entityn.clearSlots();
|
||||
world.playSoundEffect(x, y, z, "random.explode", 1.0f, world.rand.nextFloat() * 0.1F + 0.9F);
|
||||
|
||||
EntityNukeExplosionMK3 entity = new EntityNukeExplosionMK3(world);
|
||||
entity.posX = x;
|
||||
entity.posY = y;
|
||||
entity.posZ = z;
|
||||
entity.destructionRange = r;
|
||||
entity.speed = MainRegistry.blastSpeed;
|
||||
entity.coefficient = 1.0F;
|
||||
entity.waste = false;
|
||||
|
||||
world.spawnEntityInWorld(entity);
|
||||
|
||||
EntityCloudFleija cloud = new EntityCloudFleija(world, r);
|
||||
cloud.posX = x;
|
||||
cloud.posY = y;
|
||||
cloud.posZ = z;
|
||||
world.spawnEntityInWorld(cloud);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getRenderType(){
|
||||
return -1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isOpaqueCube() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean renderAsNormalBlock() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack itemStack) {
|
||||
int i = MathHelper.floor_double(player.rotationYaw * 4.0F / 360.0F + 0.5D) & 3;
|
||||
|
||||
if(i == 0)
|
||||
{
|
||||
world.setBlockMetadataWithNotify(x, y, z, 5, 2);
|
||||
}
|
||||
if(i == 1)
|
||||
{
|
||||
world.setBlockMetadataWithNotify(x, y, z, 3, 2);
|
||||
}
|
||||
if(i == 2)
|
||||
{
|
||||
world.setBlockMetadataWithNotify(x, y, z, 4, 2);
|
||||
}
|
||||
if(i == 3)
|
||||
{
|
||||
world.setBlockMetadataWithNotify(x, y, z, 2, 2);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void explode(World world, int x, int y, int z) {
|
||||
TileEntityNukeSolinium entity = (TileEntityNukeSolinium) world.getTileEntity(x, y, z);
|
||||
//if (p_149695_1_.isBlockIndirectlyGettingPowered(x, y, z))
|
||||
{
|
||||
if(entity.isReady())
|
||||
{
|
||||
this.onBlockDestroyedByPlayer(world, x, y, z, 1);
|
||||
entity.clearSlots();
|
||||
world.setBlockToAir(x, y, z);
|
||||
igniteTestBomb(world, x, y, z, MainRegistry.fleijaRadius);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -14,6 +14,7 @@ import com.hbm.tileentity.bomb.TileEntityNukeGadget;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukeMan;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukeMike;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukePrototype;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukeSolinium;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukeTsar;
|
||||
import com.hbm.tileentity.bomb.TileEntityTestNuke;
|
||||
import com.hbm.tileentity.machine.TileEntityAMSBase;
|
||||
@ -598,6 +599,15 @@ public class GUIHandler implements IGuiHandler {
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
case ModBlocks.guiID_nuke_solinium:
|
||||
{
|
||||
if(entity instanceof TileEntityNukeSolinium)
|
||||
{
|
||||
//return new ContainerNukeSolinium(player.inventory, (TileEntityNukeSolinium) entity);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
@ -1130,6 +1140,15 @@ public class GUIHandler implements IGuiHandler {
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
case ModBlocks.guiID_nuke_solinium:
|
||||
{
|
||||
if(entity instanceof TileEntityNukeSolinium)
|
||||
{
|
||||
//return new GUINukeSolinium(player.inventory, (TileEntityNukeSolinium) entity);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
//CLIENTONLY GUIS
|
||||
|
||||
@ -58,6 +58,7 @@ public class ClientProxy extends ServerProxy
|
||||
//MinecraftForgeClient.registerItemRenderer(Item.getItemFromBlock(ModBlocks.nuke_gadget), new ItemRenderNukeGadget());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityNukeBoy.class, new RenderNukeBoy());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityNukeCustom.class, new RenderNukeCustom());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityNukeSolinium.class, new RenderNukeSolinium());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineCentrifuge.class, new RenderCentrifuge());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityNukeMan.class, new RenderNukeMan());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineUF6Tank.class, new RenderUF6Tank());
|
||||
|
||||
@ -172,6 +172,7 @@ import com.hbm.tileentity.bomb.TileEntityNukeGadget;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukeMan;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukeMike;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukePrototype;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukeSolinium;
|
||||
import com.hbm.tileentity.bomb.TileEntityNukeTsar;
|
||||
import com.hbm.tileentity.bomb.TileEntityRedBarrel;
|
||||
import com.hbm.tileentity.bomb.TileEntityTestBombAdvanced;
|
||||
@ -585,6 +586,7 @@ public class MainRegistry
|
||||
GameRegistry.registerTileEntity(TileEntityMachineRadar.class, "tileentity_radar");
|
||||
GameRegistry.registerTileEntity(TileEntityBroadcaster.class, "tileentity_pink_cloud_broadcaster");
|
||||
GameRegistry.registerTileEntity(TileEntityTurretCheapo.class, "tileentity_turret_cheapo");
|
||||
GameRegistry.registerTileEntity(TileEntityNukeSolinium.class, "tileentity_nuke_solinium");
|
||||
|
||||
EntityRegistry.registerModEntity(EntityRocket.class, "entity_rocket", 0, this, 250, 1, true);
|
||||
EntityRegistry.registerModEntity(EntityNukeExplosion.class, "entity_nuke_explosion", 1, this, 250, 1, true);
|
||||
|
||||
@ -66,6 +66,9 @@ public class ResourceManager {
|
||||
public static final IModelCustom radar_body = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/radar_base.obj"));
|
||||
public static final IModelCustom radar_head = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/radar_head.obj"));
|
||||
|
||||
//Bombs
|
||||
public static final IModelCustom bomb_solinium = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/ufp.obj"));
|
||||
|
||||
////Textures TEs
|
||||
|
||||
public static final ResourceLocation universal = new ResourceLocation(RefStrings.MODID, "textures/models/TheGadget3_.png");
|
||||
|
||||
@ -19,7 +19,7 @@ public class RenderNukeGadget extends TileEntitySpecialRenderer {
|
||||
public RenderNukeGadget()
|
||||
{
|
||||
gadgetModel = AdvancedModelLoader.loadModel(objTesterModelRL);
|
||||
gadgetTexture = new ResourceLocation(RefStrings.MODID, "textures/models/TheGadget3_.png");
|
||||
gadgetTexture = new ResourceLocation(RefStrings.MODID, "textures/models/TheGadget3_tex.png");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
47
com/hbm/render/tileentity/RenderNukeSolinium.java
Normal file
@ -0,0 +1,47 @@
|
||||
package com.hbm.render.tileentity;
|
||||
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
import com.hbm.lib.RefStrings;
|
||||
import com.hbm.main.ResourceManager;
|
||||
|
||||
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.client.model.AdvancedModelLoader;
|
||||
import net.minecraftforge.client.model.IModelCustom;
|
||||
|
||||
public class RenderNukeSolinium extends TileEntitySpecialRenderer {
|
||||
|
||||
public RenderNukeSolinium() { }
|
||||
|
||||
@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(90, 0F, 1F, 0F);
|
||||
|
||||
switch(tileEntity.getBlockMetadata())
|
||||
{
|
||||
case 2:
|
||||
GL11.glRotatef(90, 0F, 1F, 0F); break;
|
||||
case 4:
|
||||
GL11.glRotatef(180, 0F, 1F, 0F); break;
|
||||
case 3:
|
||||
GL11.glRotatef(270, 0F, 1F, 0F); break;
|
||||
case 5:
|
||||
GL11.glRotatef(0, 0F, 1F, 0F); break;
|
||||
}
|
||||
|
||||
bindTexture(ResourceManager.universal);
|
||||
ResourceManager.bomb_solinium.renderAll();
|
||||
|
||||
GL11.glEnable(GL11.GL_CULL_FACE);
|
||||
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
}
|
||||
211
com/hbm/tileentity/bomb/TileEntityNukeSolinium.java
Normal file
@ -0,0 +1,211 @@
|
||||
package com.hbm.tileentity.bomb;
|
||||
|
||||
import com.hbm.items.ModItems;
|
||||
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.inventory.ISidedInventory;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.nbt.NBTTagList;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
|
||||
public class TileEntityNukeSolinium extends TileEntity implements ISidedInventory {
|
||||
|
||||
public ItemStack slots[];
|
||||
private String customName;
|
||||
|
||||
public TileEntityNukeSolinium() {
|
||||
slots = new ItemStack[11];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSizeInventory() {
|
||||
return slots.length;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemStack getStackInSlot(int i) {
|
||||
return slots[i];
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemStack decrStackSize(int i, int j) {
|
||||
if(slots[i] != null)
|
||||
{
|
||||
if(slots[i].stackSize <= j)
|
||||
{
|
||||
ItemStack itemStack = slots[i];
|
||||
slots[i] = null;
|
||||
return itemStack;
|
||||
}
|
||||
ItemStack itemStack1 = slots[i].splitStack(j);
|
||||
if (slots[i].stackSize == 0)
|
||||
{
|
||||
slots[i] = null;
|
||||
}
|
||||
|
||||
return itemStack1;
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemStack getStackInSlotOnClosing(int i) {
|
||||
if(slots[i] != null)
|
||||
{
|
||||
ItemStack itemStack = slots[i];
|
||||
slots[i] = null;
|
||||
return itemStack;
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setInventorySlotContents(int i, ItemStack itemStack) {
|
||||
slots[i] = itemStack;
|
||||
if(itemStack != null && itemStack.stackSize > getInventoryStackLimit())
|
||||
{
|
||||
itemStack.stackSize = getInventoryStackLimit();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getInventoryName() {
|
||||
return this.hasCustomInventoryName() ? this.customName : "container.nukeSolinium";
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasCustomInventoryName() {
|
||||
return this.customName != null && this.customName.length() > 0;
|
||||
}
|
||||
|
||||
public void setCustomName(String name) {
|
||||
this.customName = name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getInventoryStackLimit() {
|
||||
return 64;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isUseableByPlayer(EntityPlayer player) {
|
||||
if(worldObj.getTileEntity(xCoord, yCoord, zCoord) != this)
|
||||
{
|
||||
return false;
|
||||
}else{
|
||||
return player.getDistanceSq(xCoord + 0.5D, yCoord + 0.5D, zCoord + 0.5D) <=64;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void openInventory() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void closeInventory() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isItemValidForSlot(int p_94041_1_, ItemStack p_94041_2_) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int[] getAccessibleSlotsFromSide(int p_94128_1_) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canInsertItem(int i, ItemStack itemStack, int j) {
|
||||
return this.isItemValidForSlot(i, itemStack);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canExtractItem(int i, ItemStack itemStack, int j) {
|
||||
return j != 0 || i != 1 || itemStack.getItem() == Items.bucket;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void readFromNBT(NBTTagCompound nbt) {
|
||||
super.readFromNBT(nbt);
|
||||
NBTTagList list = nbt.getTagList("items", 10);
|
||||
slots = new ItemStack[getSizeInventory()];
|
||||
|
||||
for(int i = 0; i < list.tagCount(); i++)
|
||||
{
|
||||
NBTTagCompound nbt1 = list.getCompoundTagAt(i);
|
||||
byte b0 = nbt1.getByte("slot");
|
||||
if(b0 >= 0 && b0 < slots.length)
|
||||
{
|
||||
slots[b0] = ItemStack.loadItemStackFromNBT(nbt1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeToNBT(NBTTagCompound nbt) {
|
||||
super.writeToNBT(nbt);
|
||||
NBTTagList list = new NBTTagList();
|
||||
|
||||
for(int i = 0; i < slots.length; i++)
|
||||
{
|
||||
if(slots[i] != null)
|
||||
{
|
||||
NBTTagCompound nbt1 = new NBTTagCompound();
|
||||
nbt1.setByte("slot", (byte)i);
|
||||
slots[i].writeToNBT(nbt1);
|
||||
list.appendTag(nbt1);
|
||||
}
|
||||
}
|
||||
nbt.setTag("items", list);
|
||||
}
|
||||
|
||||
public boolean isReady() {
|
||||
|
||||
if(slots[0] != null && slots[1] != null && slots[2] != null && slots[3] != null && slots[4] != null && slots[5] != null && slots[6] != null && slots[7] != null && slots[8] != null && slots[9] != null && slots[10] != null)
|
||||
if(slots[0].getItem() == ModItems.fleija_igniter &&
|
||||
slots[1].getItem() == ModItems.fleija_igniter &&
|
||||
slots[2].getItem() == ModItems.fleija_propellant &&
|
||||
slots[3].getItem() == ModItems.fleija_propellant &&
|
||||
slots[4].getItem() == ModItems.fleija_propellant &&
|
||||
slots[5].getItem() == ModItems.fleija_core &&
|
||||
slots[6].getItem() == ModItems.fleija_core &&
|
||||
slots[7].getItem() == ModItems.fleija_core &&
|
||||
slots[8].getItem() == ModItems.fleija_core &&
|
||||
slots[9].getItem() == ModItems.fleija_core &&
|
||||
slots[10].getItem() == ModItems.fleija_core)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public void clearSlots() {
|
||||
for(int i = 0; i < slots.length; i++)
|
||||
{
|
||||
slots[i] = null;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public AxisAlignedBB getRenderBoundingBox() {
|
||||
return TileEntity.INFINITE_EXTENT_AABB;
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public double getMaxRenderDistanceSquared()
|
||||
{
|
||||
return 65536.0D;
|
||||
}
|
||||
}
|
||||
@ -75,6 +75,14 @@ public abstract class TileEntityTurretBase extends TileEntity {
|
||||
if(rotationPitch > 30)
|
||||
rotationPitch = 30;
|
||||
|
||||
if(this instanceof TileEntityTurretCheapo) {
|
||||
|
||||
if(rotationPitch < -30)
|
||||
rotationPitch = -30;
|
||||
if(rotationPitch > 15)
|
||||
rotationPitch = 15;
|
||||
}
|
||||
|
||||
if(worldObj.getBlock(xCoord, yCoord, zCoord) instanceof TurretBase && ammo > 0) {
|
||||
if(((TurretBase)worldObj.getBlock(xCoord, yCoord, zCoord)).executeHoldAction(worldObj, use, rotationYaw, rotationPitch, xCoord, yCoord, zCoord))
|
||||
ammo--;
|
||||
|
||||
@ -47,6 +47,9 @@ public class TileEntityMachineRadar extends TileEntity implements IConsumer {
|
||||
@Override
|
||||
public void updateEntity() {
|
||||
|
||||
if(this.yCoord < MainRegistry.radarAltitude)
|
||||
return;
|
||||
|
||||
if(!worldObj.isRemote)
|
||||
nearbyMissiles.clear();
|
||||
|
||||
@ -80,7 +83,7 @@ public class TileEntityMachineRadar extends TileEntity implements IConsumer {
|
||||
nearbyMissiles.add(new int[] { (int)mis.posX, (int)mis.posZ, mis.getMissileType() });
|
||||
}*/
|
||||
|
||||
if(e instanceof EntityRocketHoming && e.posY >= yCoord + MainRegistry.radarBuffer) {
|
||||
/*if(e instanceof EntityRocketHoming && e.posY >= yCoord + MainRegistry.radarBuffer) {
|
||||
EntityRocketHoming rocket = (EntityRocketHoming)e;
|
||||
|
||||
if(rocket.getIsCritical())
|
||||
@ -89,7 +92,7 @@ public class TileEntityMachineRadar extends TileEntity implements IConsumer {
|
||||
nearbyMissiles.add(new int[] { (int)e.posX, (int)e.posZ, 6, (int)e.posY });
|
||||
|
||||
continue;
|
||||
}
|
||||
}*/
|
||||
|
||||
if(!(e instanceof EntityMissileBaseAdvanced) && e.width * e.width * e.height >= 0.5D && e.posY >= yCoord + MainRegistry.radarBuffer) {
|
||||
nearbyMissiles.add(new int[] { (int)e.posX, (int)e.posZ, 5, (int)e.posY });
|
||||
|
||||