More sounds, pumpjack & turbofan textures, crates, small fixes

This commit is contained in:
HbmMods 2017-09-23 23:09:43 +02:00
parent f9330c0533
commit f93a39f974
51 changed files with 12004 additions and 5506 deletions

View File

@ -54,7 +54,7 @@ chem.COOLANT=Kühlflüssigkeit mischen
chem.DESH=Deshherstellung
chem.PEROXIDE=Wasserstoffperoxidherstellung
chem.CIRCUIT_4=Überstaktete Schaltkreisherstellung
chem.CIRCUIT_4=Leistungsstarke Schaltkreisherstellung
chem.CIRCUIT_5=Leistungsstarke Schaltkreisherstellung
item.record.lc.desc=Valve - Diabolic Adrenaline Guitar/Lambda Core
item.record.ss.desc=Valve - Sector Sweep
@ -239,9 +239,10 @@ tile.machine_fluidtank.name=Tank
container.fluidtank=Tank
tile.machine_turbofan.name=Turbofan
container.turbofan=Turbofan
tile.crate_iron.name=Eisenkiste
container.crateIron=Eisenkiste
tile.crate_steel.name=Stahlkiste
container.crateSteel=Stahlkiste
tile.red_pylon.name=Strommasten
item.wiring_red_copper.name=Kabeltrommel
@ -841,6 +842,7 @@ item.cotton_candy.name=Radioaktive Zuckerwatte
item.tem_flakes.name=Tem Flakes
item.glowing_stew.name=Leuchtende Pilzsuppe
item.lemon.name="Zitrone"
item.definitelyfood.name=GarantiertKeinDreck-Marken Feldration
tile.frozen_grass.name=Gefrorenes Gras
tile.frozen_dirt.name=Gefrorene Erde

View File

@ -239,9 +239,10 @@ tile.machine_fluidtank.name=Tank
container.fluidtank=Tank
tile.machine_turbofan.name=Turbofan
container.turbofan=Turbofan
tile.crate_iron.name=Iron Crate
container.crateIron=Iron Crate
tile.crate_steel.name=Steel Crate
container.crateSteel=Steel Crate
tile.red_pylon.name=Electricity Pole
item.wiring_red_copper.name=Cable Drum
@ -427,7 +428,7 @@ tile.block_reiium.name=Block of Reiium
tile.block_unobtainium.name=Block of Unobtainium
tile.block_daffergon.name=Block of Daffergon
tile.block_verticium.name=Block of Verticium
tile.block_desh.name=Reinfoced Block of Desh
tile.block_desh.name=Reinforced Block of Desh
tile.ore_aluminium.name=Aluminium Ore
tile.ore_copper.name=Copper Ore
@ -841,6 +842,7 @@ item.cotton_candy.name=Radioactive Cotton Candy
item.tem_flakes.name=Tem Flakes
item.glowing_stew.name=Glowing Mushroom Stew
item.lemon.name="Lemon"
item.definitelyfood.name=TotallyNotDirt-Brand MRE
tile.frozen_grass.name=Frozen Grass
tile.frozen_dirt.name=Frozen Dirt

File diff suppressed because it is too large Load Diff

View File

@ -5,8 +5,6 @@ v -0.250000 0.125000 2.000000
v -0.250000 0.875000 2.000000
v -0.250000 0.125000 -3.500000
v -0.250000 0.875000 -3.500000
v 0.250000 0.125000 2.000000
v 0.250000 0.875000 2.000000
v 0.250000 0.125000 -3.500000
v 0.250000 0.875000 -3.500000
v -0.250000 0.637500 1.950000
@ -52,14 +50,12 @@ v 0.375000 0.915367 2.597759
v -0.375000 1.564213 2.164214
v 0.375000 1.564213 2.164214
v -0.375000 0.875000 2.000000
v 0.375000 0.875000 2.000000
v -0.375000 0.125000 2.000000
v 0.375000 0.125000 2.000000
v -0.375000 -0.815367 2.247759
v -0.325000 -0.815367 2.247759
v 0.375000 -0.815367 2.247759
v -0.375000 -0.050000 2.450000
v -0.325000 -0.050000 2.500000
v 0.375000 -0.050000 2.500000
v -0.375000 -0.050000 2.150000
v -0.325000 -0.050000 2.150000
v 0.375000 -0.050000 2.150000
v -0.375000 0.100000 2.500000
v 0.375000 0.100000 2.500000
@ -85,9 +81,9 @@ v 0.325000 0.100000 2.500000
v 0.325000 0.700000 2.400000
v 0.325000 0.700000 2.150000
v 0.325000 1.165367 2.247759
v -0.325000 -0.050000 2.450000
v -0.325000 -0.050000 2.150000
v -0.325000 -0.815367 2.247759
v -0.375000 -0.050000 2.150000
v -0.375000 -0.050000 2.500000
v -0.375000 -0.815367 2.247759
v -0.325000 0.100000 2.150000
v -0.325000 0.100000 2.500000
v -0.325000 0.550000 2.450000
@ -111,232 +107,454 @@ v 0.625000 -0.125000 -2.875000
v 0.625000 0.125000 -2.875000
v 0.625000 -0.125000 -3.125000
v 0.625000 0.125000 -3.125000
vn 0.000000 -1.000000 0.000000
vn 0.000000 1.000000 0.000000
v 0.375000 0.875000 2.000000
v 0.375000 0.125000 2.000000
v 0.250000 0.125000 2.000000
v 0.250000 0.875000 2.000000
vt 0.018428 0.322540
vt 0.649017 0.323468
vt 0.656186 0.332143
vt 0.658969 0.069734
vt 0.658502 0.173021
vt 0.651446 0.139467
vt 0.019594 0.147805
vt 0.019719 0.135425
vt 0.011461 0.228410
vt 0.018656 0.249230
vt 0.018420 0.261919
vt 0.650303 0.253635
vt 0.658193 0.231814
vt 0.650155 0.266025
vt 0.650570 0.240730
vt 0.019246 0.237418
vt 0.746977 0.069780
vt 0.658999 0.011062
vt 0.016439 0.779721
vt 0.016439 0.726930
vt 0.632812 0.726930
vt 0.632812 0.779722
vt 0.632724 0.790479
vt 0.010731 0.779721
vt 0.016527 0.716173
vt 0.638519 0.726930
vt 0.016128 0.880525
vt 0.016117 0.871100
vt 0.556079 0.871100
vt 0.556090 0.880525
vt 0.556013 0.889948
vt 0.010743 0.880531
vt 0.016194 0.861676
vt 0.561464 0.871093
vt 0.632812 0.631162
vt 0.632812 0.683953
vt 0.016439 0.683953
vt 0.016439 0.631162
vt 0.016527 0.620405
vt 0.638519 0.631162
vt 0.632724 0.694710
vt 0.010731 0.683953
vt 0.556079 0.821365
vt 0.556090 0.830790
vt 0.016128 0.830790
vt 0.016117 0.821365
vt 0.016194 0.811942
vt 0.561464 0.821359
vt 0.556013 0.840213
vt 0.010743 0.830796
vt 0.897268 0.010731
vt 0.989269 0.010731
vt 0.989268 0.106457
vt 0.989269 0.202182
vt 0.897268 0.202182
vt 0.989269 0.297907
vt 0.897268 0.297907
vt 0.989269 0.393632
vt 0.897268 0.393632
vt 0.783804 0.181143
vt 0.783804 0.273144
vt 0.768470 0.273144
vt 0.572602 0.468990
vt 0.541661 0.562876
vt 0.535835 0.560956
vt 0.584594 0.562876
vt 0.584594 0.569009
vt 0.578686 0.468213
vt 0.842071 0.601697
vt 0.842071 0.620097
vt 0.811404 0.620097
vt 0.842071 0.546496
vt 0.799137 0.546496
vt 0.799137 0.528096
vt 0.802204 0.233277
vt 0.839004 0.233277
vt 0.832871 0.251677
vt 0.802204 0.251677
vt 0.814196 0.308763
vt 0.845138 0.178077
vt 0.875805 0.184210
vt 0.857130 0.278096
vt 0.840328 0.379151
vt 0.830079 0.434210
vt 0.787145 0.458744
vt 0.768470 0.552630
vt 0.805271 0.601697
vt 0.787145 0.646515
vt 0.830079 0.677182
vt 0.661171 0.473204
vt 0.661171 0.528404
vt 0.624370 0.528404
vt 0.667304 0.473204
vt 0.661171 0.534537
vt 0.618237 0.473204
vt 0.618275 0.529081
vt 0.618237 0.467070
vt 0.665811 0.715468
vt 0.696478 0.715468
vt 0.684486 0.772554
vt 0.665811 0.709335
vt 0.690489 0.773815
vt 0.678657 0.774461
vt 0.666115 0.626538
vt 0.709049 0.626538
vt 0.702916 0.681739
vt 0.666115 0.620405
vt 0.715145 0.627216
vt 0.666115 0.681739
vt 0.702916 0.687872
vt 0.659982 0.681739
vt 0.706761 0.530289
vt 0.694769 0.473204
vt 0.725436 0.473204
vt 0.688767 0.474464
vt 0.694769 0.467070
vt 0.731266 0.475111
vt 0.256067 0.537608
vt 0.256067 0.414940
vt 0.317401 0.414940
vt 0.164066 0.537608
vt 0.164066 0.414940
vt 0.102732 0.537608
vt 0.102732 0.414940
vt 0.010731 0.537608
vt 0.010731 0.414940
vt 0.010731 0.353606
vt 0.102732 0.353606
vt 0.102732 0.598942
vt 0.010731 0.598942
vt 0.676200 0.414940
vt 0.676200 0.384273
vt 0.706867 0.384273
vt 0.522866 0.414940
vt 0.522866 0.384273
vt 0.492199 0.414940
vt 0.492199 0.384273
vt 0.338864 0.414940
vt 0.338864 0.384273
vt 0.338864 0.353606
vt 0.492199 0.353606
vt 0.492199 0.445607
vt 0.338864 0.445607
vt 0.503283 0.540451
vt 0.514372 0.544425
vt 0.448294 0.571964
vt 0.448294 0.467070
vt 0.453856 0.485351
vt 0.457402 0.555660
vt 0.802204 0.159676
vt 0.845138 0.159676
vt 0.802204 0.178077
vt 0.803948 0.010731
vt 0.814196 0.065791
vt 0.857130 0.090324
vt 0.860471 0.641564
vt 0.860471 0.549563
vt 0.840327 0.726108
vt 0.011770 0.169617
vt 0.013576 0.069403
vt 0.842071 0.528096
vt 0.875805 0.549563
vt 0.875805 0.641564
vt 0.650668 0.164006
vt 0.651287 0.078805
vt 0.340198 0.543493
vt 0.338864 0.467081
vt 0.426831 0.467070
vt 0.860285 0.747571
vt 0.768470 0.918769
vt 0.768498 0.747571
vt 0.010731 0.331605
vt 0.651239 0.152166
vt 0.747007 0.011107
vt 0.016350 0.790478
vt 0.010731 0.726930
vt 0.632900 0.716173
vt 0.638519 0.779722
vt 0.016051 0.889948
vt 0.010731 0.871106
vt 0.556156 0.861676
vt 0.561476 0.880518
vt 0.632900 0.620405
vt 0.638519 0.683953
vt 0.016351 0.694710
vt 0.010731 0.631162
vt 0.556156 0.811942
vt 0.561476 0.830783
vt 0.016051 0.840213
vt 0.010731 0.821372
vt 0.897268 0.106457
vt 0.768470 0.181143
vt 0.566777 0.467070
vt 0.541661 0.569009
vt 0.590678 0.562099
vt 0.803948 0.357688
vt 0.667304 0.528404
vt 0.624370 0.534538
vt 0.612141 0.473881
vt 0.661171 0.467070
vt 0.696478 0.709335
vt 0.702481 0.716729
vt 0.659982 0.717376
vt 0.709049 0.620405
vt 0.709011 0.682416
vt 0.666115 0.687872
vt 0.659982 0.626538
vt 0.700759 0.531550
vt 0.725436 0.467070
vt 0.712591 0.532196
vt 0.317401 0.537608
vt 0.706867 0.414940
vt 0.020752 0.078070
vt 0.019349 0.160700
vt 0.013606 0.010731
vt 0.426831 0.558777
vt 0.340198 0.558777
vt 0.340198 0.467070
vt 0.860285 0.918769
vt 0.768511 0.920371
vn -1.000000 -0.000000 0.000000
vn 1.000000 0.000000 0.000000
vn 0.000000 0.000000 -1.000000
vn 0.000000 -1.000000 0.000000
vn 0.000000 1.000000 0.000000
vn 0.000000 0.000000 1.000000
vn 0.000000 -0.555600 0.831500
vn 0.000000 -0.195100 0.980800
vn 0.000000 0.195100 0.980800
vn 0.000000 0.555600 0.831500
vn 0.000000 0.231800 -0.972800
vn 0.000000 -0.117400 -0.993100
vn -0.000000 0.313000 -0.949800
vn 0.000000 0.126700 0.991900
vn 0.000000 -0.110400 -0.993900
vn 0.000000 -0.205600 0.978600
vn 0.000000 -0.310900 -0.950400
vn 0.000000 0.255500 -0.966800
vn 0.000000 -0.313000 0.949800
vn 0.000000 0.231800 -0.972800
vn 0.000000 -0.117400 -0.993100
s off
f 3//1 7//1 5//1
f 8//2 4//2 2//2
f 12//3 11//3 3//3
f 7//4 8//4 13//4
f 16//4 15//4 5//4
f 19//4 6//4 14//4
f 18//4 17//4 8//4
f 19//4 14//4 13//4
f 2//3 24//3 9//3
f 23//3 4//3 10//3
f 22//3 21//3 2//3
f 9//3 24//3 23//3
f 8//5 7//5 3//5
f 26//4 27//4 28//4
f 26//1 25//1 13//1
f 27//5 26//5 14//5
f 28//2 27//2 15//2
f 25//6 28//6 16//6
f 30//4 31//4 32//4
f 30//1 29//1 17//1
f 31//5 30//5 18//5
f 32//2 31//2 19//2
f 29//6 32//6 20//6
f 34//3 35//3 36//3
f 34//1 33//1 9//1
f 35//6 34//6 10//6
f 36//2 35//2 11//2
f 33//5 36//5 12//5
f 38//3 39//3 40//3
f 38//1 37//1 21//1
f 39//6 38//6 22//6
f 40//2 39//2 23//2
f 37//5 40//5 24//5
f 41//7 42//7 44//7
f 44//8 46//8 45//8
f 46//9 48//9 47//9
f 48//10 50//10 49//10
f 49//11 50//11 2//11
f 1//12 41//12 53//12
f 54//5 5//5 6//5
f 1//5 53//5 51//5
f 75//13 77//13 58//13
f 77//1 76//1 60//1
f 76//14 75//14 56//14
f 75//4 76//4 77//4
f 68//4 74//4 70//4
f 64//4 62//4 58//4
f 67//3 65//3 69//3
f 57//3 61//3 63//3
f 51//3 73//3 71//3
f 53//3 67//3 51//3
f 63//3 53//3 59//3
f 53//3 41//3 55//3
f 43//3 55//3 41//3
f 55//3 43//3 57//3
f 45//3 61//3 57//3
f 65//3 61//3 45//3
f 65//3 47//3 69//3
f 71//3 69//3 47//3
f 52//4 50//4 72//4
f 68//4 64//4 54//4
f 64//4 60//4 54//4
f 54//4 60//4 56//4
f 42//4 56//4 44//4
f 56//4 58//4 44//4
f 46//4 44//4 58//4
f 46//4 62//4 66//4
f 66//4 70//4 48//4
f 48//4 70//4 72//4
f 78//4 79//4 80//4
f 79//6 78//6 64//6
f 80//1 79//1 68//1
f 81//15 80//15 66//15
f 78//2 81//2 62//2
f 82//4 83//4 84//4
f 83//2 82//2 70//2
f 72//16 84//16 83//16
f 82//17 84//17 72//17
f 85//3 86//3 87//3
f 86//1 85//1 57//1
f 87//14 86//14 59//14
f 85//18 87//18 55//18
f 88//3 89//3 90//3
f 89//2 88//2 63//2
f 90//15 89//15 61//15
f 91//1 90//1 65//1
f 88//6 91//6 67//6
f 92//3 93//3 94//3
f 73//16 93//16 92//16
f 94//2 93//2 73//2
f 92//17 94//17 69//17
f 98//3 97//3 95//3
f 102//5 101//5 97//5
f 100//4 99//4 101//4
f 96//6 95//6 99//6
f 97//1 101//1 99//1
f 102//2 98//2 96//2
f 106//3 105//3 103//3
f 110//5 109//5 105//5
f 108//4 107//4 109//4
f 104//6 103//6 107//6
f 105//1 109//1 107//1
f 110//2 106//2 104//2
f 1//1 3//1 5//1
f 6//2 8//2 2//2
f 1//3 12//3 3//3
f 20//4 13//4 8//4
f 16//4 7//4 13//4
f 8//4 17//4 20//4
f 7//4 16//4 5//4
f 15//4 14//4 5//4
f 19//4 18//4 6//4
f 6//4 5//4 14//4
f 6//4 18//4 8//4
f 20//4 19//4 13//4
f 9//3 12//3 1//3
f 1//3 2//3 9//3
f 21//3 24//3 2//3
f 11//3 10//3 3//3
f 23//3 22//3 4//3
f 4//3 3//3 10//3
f 4//3 22//3 2//3
f 10//3 9//3 23//3
f 4//5 8//5 3//5
f 25//4 26//4 28//4
f 14//1 26//1 13//1
f 15//5 27//5 14//5
f 16//2 28//2 15//2
f 13//6 25//6 16//6
f 29//4 30//4 32//4
f 18//1 30//1 17//1
f 19//5 31//5 18//5
f 20//2 32//2 19//2
f 17//6 29//6 20//6
f 33//3 34//3 36//3
f 10//1 34//1 9//1
f 11//6 35//6 10//6
f 12//2 36//2 11//2
f 9//5 33//5 12//5
f 37//3 38//3 40//3
f 22//1 38//1 21//1
f 23//6 39//6 22//6
f 24//2 40//2 23//2
f 21//5 37//5 24//5
f 43//7 41//7 44//7
f 43//8 44//8 45//8
f 45//9 46//9 47//9
f 47//10 48//10 49//10
f 6//11 2//11 50//11
f 51//11 49//11 2//11
f 50//11 52//11 6//11
f 53//6 5//6 1//6
f 1//12 54//12 42//12
f 42//12 41//12 1//12
f 54//6 1//6 5//6
f 6//5 52//5 54//5
f 51//5 2//5 1//5
f 1//6 5//6 53//6
f 56//13 75//13 58//13
f 58//1 77//1 60//1
f 60//14 76//14 56//14
f 66//4 68//4 70//4
f 60//4 64//4 58//4
f 73//3 67//3 69//3
f 59//3 57//3 63//3
f 49//3 51//3 71//3
f 73//3 51//3 67//3
f 53//3 63//3 67//3
f 59//3 53//3 55//3
f 43//3 45//3 57//3
f 47//3 65//3 45//3
f 49//3 71//3 47//3
f 74//4 52//4 72//4
f 54//4 52//4 68//4
f 74//4 68//4 52//4
f 42//4 54//4 56//4
f 62//4 46//4 58//4
f 48//4 46//4 66//4
f 50//4 48//4 72//4
f 81//4 78//4 80//4
f 68//6 79//6 64//6
f 66//1 80//1 68//1
f 62//15 81//15 66//15
f 64//2 78//2 62//2
f 74//2 83//2 70//2
f 74//16 72//16 83//16
f 70//17 82//17 72//17
f 59//1 86//1 57//1
f 55//14 87//14 59//14
f 57//18 85//18 55//18
f 91//3 88//3 90//3
f 61//2 89//2 63//2
f 65//15 90//15 61//15
f 67//1 91//1 65//1
f 63//6 88//6 67//6
f 71//16 73//16 92//16
f 69//2 94//2 73//2
f 71//17 92//17 69//17
f 96//3 98//3 95//3
f 98//5 102//5 97//5
f 102//4 100//4 101//4
f 100//6 96//6 99//6
f 95//1 97//1 99//1
f 100//2 102//2 96//2
f 104//3 106//3 103//3
f 106//5 110//5 105//5
f 110//4 108//4 109//4
f 108//6 104//6 107//6
f 103//1 105//1 107//1
f 108//2 110//2 104//2
f 10/1/1 9/2/1 3/3/1
f 5/4/2 6/5/2 11/6/2
f 17/7/2 12/8/2 11/6/2
f 2/9/1 22/10/1 7/11/1
f 21/12/1 4/13/1 8/14/1
f 20/15/1 19/16/1 2/9/1
f 7/11/1 22/10/1 21/12/1
f 6/17/3 5/4/3 3/18/3
f 24/19/2 25/20/2 26/21/2
f 24/19/4 23/22/4 11/23/4
f 25/20/3 24/19/3 12/24/3
f 26/21/5 25/20/5 13/25/5
f 23/22/6 26/21/6 14/26/6
f 28/27/2 29/28/2 30/29/2
f 28/27/4 27/30/4 15/31/4
f 29/28/3 28/27/3 16/32/3
f 30/29/5 29/28/5 17/33/5
f 27/30/6 30/29/6 18/34/6
f 32/35/1 33/36/1 34/37/1
f 32/35/4 31/38/4 7/39/4
f 33/36/6 32/35/6 8/40/6
f 34/37/5 33/36/5 9/41/5
f 31/38/3 34/37/3 10/42/3
f 36/43/1 37/44/1 38/45/1
f 36/43/4 35/46/4 19/47/4
f 37/44/6 36/43/6 20/48/6
f 38/45/5 37/44/5 21/49/5
f 35/46/3 38/45/3 22/50/3
f 39/51/7 40/52/7 42/53/7
f 42/53/8 44/54/8 43/55/8
f 44/54/9 46/56/9 45/57/9
f 46/56/10 48/58/10 47/59/10
f 50/60/3 49/61/3 2/62/3
f 71/63/11 73/64/11 54/65/11
f 73/64/4 72/66/4 56/67/4
f 72/66/12 71/63/12 52/68/12
f 71/63/2 72/66/2 73/64/2
f 64/69/2 70/70/2 66/71/2
f 60/72/2 58/73/2 54/74/2
f 63/75/1 61/76/1 65/77/1
f 49/61/1 69/78/1 67/79/1
f 50/60/1 63/75/1 49/61/1
f 61/76/1 57/80/1 43/81/1
f 61/76/1 45/82/1 65/77/1
f 67/79/1 65/77/1 45/82/1
f 40/83/2 52/84/2 42/85/2
f 52/84/2 54/74/2 42/85/2
f 44/86/2 42/85/2 54/74/2
f 44/86/2 58/73/2 62/87/2
f 62/87/2 66/71/2 46/88/2
f 46/88/2 66/71/2 68/89/2
f 74/90/2 75/91/2 76/92/2
f 75/91/6 74/90/6 60/93/6
f 76/92/4 75/91/4 64/94/4
f 77/95/13 76/92/13 62/96/13
f 74/90/5 77/95/5 58/97/5
f 78/98/2 79/99/2 80/100/2
f 79/99/5 78/98/5 66/101/5
f 68/102/14 80/100/14 79/99/14
f 78/98/15 80/100/15 68/103/15
f 84/104/1 85/105/1 86/106/1
f 85/105/5 84/104/5 59/107/5
f 86/106/13 85/105/13 57/108/13
f 87/109/4 86/106/4 61/110/4
f 84/104/6 87/109/6 63/111/6
f 88/112/1 89/113/1 90/114/1
f 69/115/14 89/113/14 88/112/14
f 90/114/5 89/113/5 69/116/5
f 88/112/15 90/114/15 65/117/15
f 94/118/1 93/119/1 91/120/1
f 98/121/3 97/122/3 93/119/3
f 96/123/2 95/124/2 97/122/2
f 92/125/6 91/126/6 95/124/6
f 93/127/4 97/128/4 95/124/4
f 98/129/5 94/130/5 92/125/5
f 102/131/1 101/132/1 99/133/1
f 106/134/3 105/135/3 101/132/3
f 104/136/2 103/137/2 105/135/2
f 100/138/6 99/139/6 103/137/6
f 101/140/4 105/141/4 103/137/4
f 106/142/5 102/143/5 100/138/5
f 53/144/4 82/145/4 81/146/4
f 53/144/16 82/145/16 83/147/16
f 81/146/12 83/147/12 51/148/12
f 51/148/1 53/144/1 55/149/1
f 81/150/1 82/151/1 57/80/1
f 59/152/1 50/60/1 81/150/1
f 50/60/1 39/153/1 83/154/1
f 41/155/1 83/154/1 39/153/1
f 83/154/1 41/155/1 82/151/1
f 43/81/1 57/80/1 82/151/1
f 107/156/2 64/69/2 108/157/2
f 107/156/2 48/158/2 68/89/2
f 12/8/2 110/159/2 109/160/2
f 60/72/2 56/161/2 108/157/2
f 52/84/2 40/83/2 108/157/2
f 109/162/3 110/163/3 107/156/3
f 15/164/2 6/5/2 110/159/2
f 110/159/5 6/5/5 4/13/5
f 109/160/2 5/4/2 14/165/2
f 3/18/4 5/4/4 109/160/4
f 110/166/17 2/167/17 47/168/17
f 39/169/18 109/170/18 40/171/18
f 1/172/1 10/1/1 3/3/1
f 18/173/2 11/6/2 6/5/2
f 14/165/2 5/4/2 11/6/2
f 6/5/2 15/164/2 18/173/2
f 18/173/2 17/7/2 11/6/2
f 7/11/1 10/1/1 1/172/1
f 1/172/1 2/9/1 7/11/1
f 19/16/1 22/10/1 2/9/1
f 9/2/1 8/14/1 3/3/1
f 21/12/1 20/15/1 4/13/1
f 4/13/1 3/3/1 8/14/1
f 4/13/1 20/15/1 2/9/1
f 8/14/1 7/11/1 21/12/1
f 4/174/3 6/17/3 3/18/3
f 23/22/2 24/19/2 26/21/2
f 12/175/4 24/19/4 11/23/4
f 13/176/3 25/20/3 12/24/3
f 14/177/5 26/21/5 13/25/5
f 11/178/6 23/22/6 14/26/6
f 27/30/2 28/27/2 30/29/2
f 16/179/4 28/27/4 15/31/4
f 17/180/3 29/28/3 16/32/3
f 18/181/5 30/29/5 17/33/5
f 15/182/6 27/30/6 18/34/6
f 31/38/1 32/35/1 34/37/1
f 8/183/4 32/35/4 7/39/4
f 9/184/6 33/36/6 8/40/6
f 10/185/5 34/37/5 9/41/5
f 7/186/3 31/38/3 10/42/3
f 35/46/1 36/43/1 38/45/1
f 20/187/4 36/43/4 19/47/4
f 21/188/6 37/44/6 20/48/6
f 22/189/5 38/45/5 21/49/5
f 19/190/3 35/46/3 22/50/3
f 41/191/7 39/51/7 42/53/7
f 41/191/8 42/53/8 43/55/8
f 43/55/9 44/54/9 45/57/9
f 45/57/10 46/56/10 47/59/10
f 1/192/3 50/60/3 2/62/3
f 52/193/11 71/63/11 54/65/11
f 54/194/4 73/64/4 56/67/4
f 56/195/12 72/66/12 52/68/12
f 62/87/2 64/69/2 66/71/2
f 56/161/2 60/72/2 54/74/2
f 69/78/1 63/75/1 65/77/1
f 47/196/1 49/61/1 67/79/1
f 69/78/1 49/61/1 63/75/1
f 50/60/1 59/152/1 63/75/1
f 45/82/1 61/76/1 43/81/1
f 47/196/1 67/79/1 45/82/1
f 58/73/2 44/86/2 54/74/2
f 46/88/2 44/86/2 62/87/2
f 48/158/2 46/88/2 68/89/2
f 77/95/2 74/90/2 76/92/2
f 64/197/6 75/91/6 60/93/6
f 62/198/4 76/92/4 64/94/4
f 58/199/13 77/95/13 62/96/13
f 60/200/5 74/90/5 58/97/5
f 70/201/5 79/99/5 66/101/5
f 70/202/14 68/102/14 79/99/14
f 66/203/15 78/98/15 68/103/15
f 87/109/1 84/104/1 86/106/1
f 57/204/5 85/105/5 59/107/5
f 61/205/13 86/106/13 57/108/13
f 63/206/4 87/109/4 61/110/4
f 59/207/6 84/104/6 63/111/6
f 67/208/14 69/115/14 88/112/14
f 65/209/5 90/114/5 69/116/5
f 67/210/15 88/112/15 65/117/15
f 92/211/1 94/118/1 91/120/1
f 94/118/3 98/121/3 93/119/3
f 98/121/2 96/123/2 97/122/2
f 96/123/6 92/125/6 95/124/6
f 91/126/4 93/127/4 95/124/4
f 96/123/5 98/129/5 92/125/5
f 100/212/1 102/131/1 99/133/1
f 102/131/3 106/134/3 101/132/3
f 106/134/2 104/136/2 105/135/2
f 104/136/6 100/138/6 103/137/6
f 99/139/4 101/140/4 103/137/4
f 104/136/5 106/142/5 100/138/5
f 55/149/4 53/144/4 81/146/4
f 51/148/16 53/144/16 83/147/16
f 55/149/12 81/146/12 51/148/12
f 59/152/1 81/150/1 57/80/1
f 81/150/1 50/60/1 83/154/1
f 41/155/1 43/81/1 82/151/1
f 60/72/2 108/157/2 64/69/2
f 107/156/2 70/70/2 64/69/2
f 70/70/2 107/156/2 68/89/2
f 109/160/2 13/213/2 12/8/2
f 12/8/2 17/7/2 110/159/2
f 16/214/2 110/159/2 17/7/2
f 56/161/2 52/84/2 108/157/2
f 108/157/3 109/162/3 107/156/3
f 16/214/2 15/164/2 110/159/2
f 2/9/5 110/159/5 4/13/5
f 13/213/2 109/160/2 14/165/2
f 1/215/4 3/18/4 109/160/4
f 47/168/17 48/216/17 110/166/17
f 107/217/17 110/166/17 48/216/17
f 2/167/17 49/218/17 47/168/17
f 108/170/18 40/171/18 109/170/18
f 39/169/18 50/219/18 1/220/18
f 1/220/18 109/170/18 39/169/18

View File

@ -81,6 +81,164 @@ v -0.650000 -0.900000 0.090000
v -0.650000 -0.900000 -0.090000
v -0.500000 -0.900000 -0.090000
v -0.500000 -0.900000 0.090000
vt 0.502964 0.376131
vt 0.479656 0.376131
vt 0.479655 0.071595
vt 0.456348 0.376131
vt 0.456347 0.071595
vt 0.642813 0.376130
vt 0.619505 0.376130
vt 0.619505 0.071595
vt 0.596197 0.376130
vt 0.596197 0.071595
vt 0.572889 0.376130
vt 0.572889 0.071595
vt 0.549580 0.376130
vt 0.549580 0.071595
vt 0.603024 0.415920
vt 0.603024 0.392612
vt 0.526272 0.376131
vt 0.502964 0.071595
vt 0.526272 0.071595
vt 0.603024 0.055113
vt 0.603024 0.031805
vt 0.642814 0.015323
vt 0.015323 0.903467
vt 0.309708 0.903467
vt 0.309708 0.984677
vt 0.502774 0.842366
vt 0.797159 0.842366
vt 0.797159 0.872820
vt 0.502774 0.761157
vt 0.797159 0.761157
vt 0.502774 0.730703
vt 0.797159 0.730703
vt 0.472321 0.842366
vt 0.472321 0.761157
vt 0.045777 0.761156
vt 0.340162 0.761157
vt 0.340162 0.842366
vt 0.045777 0.730703
vt 0.340162 0.730703
vt 0.411414 0.903467
vt 0.705799 0.903467
vt 0.705799 0.984677
vt 0.045777 0.842366
vt 0.340162 0.872820
vt 0.015323 0.761156
vt 0.083668 0.676875
vt 0.083668 0.541974
vt 0.200209 0.518793
vt 0.220512 0.035236
vt 0.337053 0.058417
vt 0.220512 0.216499
vt 0.341014 0.213230
vt 0.224473 0.236411
vt 0.351158 0.207920
vt 0.337053 0.193318
vt 0.405398 0.127303
vt 0.405398 0.104130
vt 0.425700 0.104130
vt 0.425700 0.127303
vt 0.348340 0.041542
vt 0.224473 0.015323
vt 0.103971 0.058417
vt 0.100010 0.038505
vt 0.035626 0.104130
vt 0.024339 0.087254
vt 0.035626 0.127302
vt 0.015323 0.127302
vt 0.021521 0.141905
vt 0.103971 0.193317
vt 0.100010 0.213230
vt 0.103971 0.445052
vt 0.103971 0.310152
vt 0.220512 0.286970
vt 0.600628 0.518793
vt 0.717169 0.541974
vt 0.600628 0.700056
vt 0.224473 0.267058
vt 0.341014 0.290240
vt 0.337053 0.310152
vt 0.351158 0.295549
vt 0.419503 0.361564
vt 0.425700 0.399340
vt 0.405398 0.399340
vt 0.405398 0.376167
vt 0.416685 0.416215
vt 0.348340 0.461928
vt 0.337053 0.445052
vt 0.341014 0.464965
vt 0.224473 0.488146
vt 0.220512 0.468234
vt 0.216551 0.488146
vt 0.100010 0.464965
vt 0.092684 0.461928
vt 0.024339 0.416215
vt 0.035626 0.399339
vt 0.015323 0.399339
vt 0.015323 0.376167
vt 0.035626 0.376167
vt 0.021521 0.361564
vt 0.089866 0.295549
vt 0.100010 0.290239
vt 0.216551 0.267058
vt 0.898671 0.820034
vt 0.868217 0.820034
vt 0.868217 0.783489
vt 0.380767 0.925800
vt 0.380767 0.962344
vt 0.871645 0.842366
vt 0.871645 0.872820
vt 0.871644 0.730703
vt 0.871644 0.761157
vt 0.411220 0.783489
vt 0.441674 0.783489
vt 0.441674 0.820034
vt 0.411220 0.820034
vt 0.414647 0.730703
vt 0.414647 0.761157
vt 0.776857 0.925800
vt 0.776857 0.962344
vt 0.414647 0.842366
vt 0.414647 0.872820
vt 0.642814 0.071595
vt 0.659294 0.392612
vt 0.659294 0.415920
vt 0.642813 0.432401
vt 0.619505 0.432401
vt 0.659295 0.031805
vt 0.659295 0.055113
vt 0.619505 0.015323
vt 0.015323 0.984677
vt 0.502774 0.872820
vt 0.411414 0.984677
vt 0.045777 0.872819
vt 0.015323 0.842366
vt 0.316750 0.541974
vt 0.316750 0.676875
vt 0.385096 0.607989
vt 0.385096 0.631162
vt 0.200209 0.700056
vt 0.015323 0.631162
vt 0.015323 0.607989
vt 0.419503 0.141905
vt 0.416685 0.087254
vt 0.341014 0.038505
vt 0.216551 0.015323
vt 0.092684 0.041541
vt 0.015323 0.104130
vt 0.089866 0.207920
vt 0.216551 0.236411
vt 0.785515 0.610859
vt 0.717169 0.676875
vt 0.484087 0.676875
vt 0.484087 0.541974
vt 0.415742 0.610859
vt 0.415742 0.587687
vt 0.785515 0.587687
vt 0.425700 0.376167
vt 0.898671 0.783489
vn 0.000000 -0.382700 -0.923900
vn 0.000000 -0.923900 -0.382700
vn 0.000000 -0.923900 0.382700
@ -106,143 +264,143 @@ vn 0.000000 -1.000000 0.000000
vn 0.000000 -0.299800 -0.954000
vn 0.000000 -0.299800 0.954000
s off
f 2//1 4//1 3//1
f 4//2 6//2 5//2
f 6//3 8//3 7//3
f 8//4 10//4 9//4
f 10//5 12//5 11//5
f 12//6 14//6 13//6
f 12//7 10//7 6//7
f 16//8 2//8 1//8
f 14//9 16//9 15//9
f 9//10 11//10 15//10
f 20//10 19//10 17//10
f 24//11 23//11 19//11
f 22//7 21//7 23//7
f 18//12 17//12 21//12
f 24//13 20//13 18//13
f 28//10 27//10 25//10
f 32//11 31//11 27//11
f 30//7 29//7 31//7
f 26//12 25//12 29//12
f 32//13 28//13 26//13
f 45//10 38//10 37//10
f 50//7 51//7 41//7
f 36//14 37//14 41//14
f 36//15 42//15 43//15
f 52//11 48//11 35//11
f 52//16 51//16 47//16
f 51//17 50//17 46//17
f 50//18 49//18 45//18
f 49//19 33//19 44//19
f 33//12 34//12 39//12
f 39//20 34//20 40//20
f 38//21 40//21 41//21
f 65//10 58//10 57//10
f 70//7 71//7 61//7
f 57//14 61//14 62//14
f 56//15 62//15 63//15
f 72//11 68//11 55//11
f 72//16 71//16 67//16
f 71//17 70//17 66//17
f 70//18 69//18 65//18
f 69//19 53//19 64//19
f 53//12 54//12 59//12
f 59//20 54//20 60//20
f 58//21 60//21 61//21
f 74//22 75//22 76//22
f 74//10 73//10 17//10
f 23//23 75//23 74//23
f 76//7 75//7 23//7
f 73//24 76//24 21//24
f 78//22 79//22 80//22
f 78//10 77//10 25//10
f 79//23 78//23 27//23
f 80//7 79//7 31//7
f 77//24 80//24 29//24
f 1//1 2//1 3//1
f 3//2 4//2 5//2
f 5//3 6//3 7//3
f 7//4 8//4 9//4
f 9//5 10//5 11//5
f 11//6 12//6 13//6
f 6//7 4//7 2//7
f 2//7 16//7 6//7
f 14//7 12//7 6//7
f 10//7 8//7 6//7
f 6//7 16//7 14//7
f 15//8 16//8 1//8
f 13//9 14//9 15//9
f 15//10 1//10 3//10
f 3//10 5//10 7//10
f 7//10 9//10 15//10
f 11//10 13//10 15//10
f 15//10 3//10 7//10
f 18//10 20//10 17//10
f 20//11 24//11 19//11
f 24//7 22//7 23//7
f 22//12 18//12 21//12
f 22//13 24//13 18//13
f 26//10 28//10 25//10
f 28//11 32//11 27//11
f 32//7 30//7 31//7
f 30//12 26//12 29//12
f 30//13 32//13 26//13
f 37//10 36//10 47//10
f 35//10 48//10 47//10
f 47//10 46//10 37//10
f 45//10 44//10 39//10
f 39//10 38//10 45//10
f 36//10 35//10 47//10
f 46//10 45//10 37//10
f 43//7 42//7 51//7
f 41//7 40//7 49//7
f 34//7 33//7 49//7
f 49//7 50//7 41//7
f 51//7 52//7 43//7
f 42//7 41//7 51//7
f 34//7 49//7 40//7
f 42//14 36//14 41//14
f 35//15 36//15 43//15
f 43//11 52//11 35//11
f 48//16 52//16 47//16
f 47//17 51//17 46//17
f 46//18 50//18 45//18
f 45//19 49//19 44//19
f 44//12 33//12 39//12
f 38//20 39//20 40//20
f 37//21 38//21 41//21
f 57//10 56//10 67//10
f 55//10 68//10 67//10
f 67//10 66//10 57//10
f 65//10 64//10 59//10
f 59//10 58//10 65//10
f 56//10 55//10 67//10
f 66//10 65//10 57//10
f 63//7 62//7 71//7
f 61//7 60//7 69//7
f 54//7 53//7 69//7
f 69//7 70//7 61//7
f 71//7 72//7 63//7
f 62//7 61//7 71//7
f 54//7 69//7 60//7
f 56//14 57//14 62//14
f 55//15 56//15 63//15
f 63//11 72//11 55//11
f 68//16 72//16 67//16
f 67//17 71//17 66//17
f 66//18 70//18 65//18
f 65//19 69//19 64//19
f 64//12 53//12 59//12
f 58//20 59//20 60//20
f 57//21 58//21 61//21
f 73//22 74//22 76//22
f 19//10 74//10 17//10
f 19//23 23//23 74//23
f 21//7 76//7 23//7
f 17//24 73//24 21//24
f 77//22 78//22 80//22
f 27//10 78//10 25//10
f 31//23 79//23 27//23
f 29//7 80//7 31//7
f 25//24 77//24 29//24
f 2/1/1 4/2/1 3/3/1
f 4/2/2 6/4/2 5/5/2
f 6/6/3 8/7/3 7/8/3
f 8/7/4 10/9/4 9/10/4
f 10/9/5 12/11/5 11/12/5
f 12/11/6 14/13/6 13/14/6
f 12/15/7 10/16/7 6/6/7
f 16/17/8 2/1/8 1/18/8
f 14/13/9 16/17/9 15/19/9
f 9/20/10 11/21/10 15/22/10
f 20/23/10 19/24/10 17/25/10
f 24/26/11 23/27/11 19/28/11
f 22/29/7 21/30/7 23/27/7
f 18/31/12 17/32/12 21/30/12
f 24/26/13 20/33/13 18/34/13
f 28/35/10 27/36/10 25/37/10
f 32/38/11 31/39/11 27/36/11
f 30/40/7 29/41/7 31/42/7
f 26/43/12 25/37/12 29/44/12
f 32/45/13 28/35/13 26/43/13
f 45/46/10 38/47/10 37/48/10
f 50/49/7 51/50/7 41/51/7
f 36/52/14 37/53/14 41/51/14
f 36/54/15 42/55/15 43/56/15
f 52/57/11 48/58/11 35/59/11
f 52/57/16 51/50/16 47/60/16
f 51/50/17 50/49/17 46/61/17
f 50/49/18 49/62/18 45/63/18
f 49/62/19 33/64/19 44/65/19
f 33/64/12 34/66/12 39/67/12
f 39/68/20 34/66/20 40/69/20
f 38/70/21 40/69/21 41/51/21
f 65/71/10 58/72/10 57/73/10
f 70/74/7 71/75/7 61/76/7
f 57/73/14 61/77/14 62/78/14
f 56/79/15 62/80/15 63/81/15
f 72/82/11 68/83/11 55/84/11
f 72/85/16 71/86/16 67/87/16
f 71/88/17 70/89/17 66/90/17
f 70/91/18 69/92/18 65/71/18
f 69/93/19 53/94/19 64/95/19
f 53/96/12 54/97/12 59/98/12
f 59/98/20 54/99/20 60/100/20
f 58/72/21 60/101/21 61/102/21
f 74/103/22 75/104/22 76/105/22
f 74/106/10 73/107/10 17/25/10
f 23/27/23 75/108/23 74/109/23
f 76/105/7 75/104/7 23/27/7
f 73/110/24 76/111/24 21/30/24
f 78/112/22 79/113/22 80/114/22
f 78/112/10 77/115/10 25/37/10
f 79/116/23 78/117/23 27/36/23
f 80/118/7 79/119/7 31/42/7
f 77/120/24 80/121/24 29/44/24
f 1/18/1 2/1/1 3/3/1
f 3/3/2 4/2/2 5/5/2
f 5/122/3 6/6/3 7/8/3
f 7/8/4 8/7/4 9/10/4
f 9/10/5 10/9/5 11/12/5
f 11/12/6 12/11/6 13/14/6
f 6/6/7 4/123/7 2/124/7
f 2/124/7 16/125/7 6/6/7
f 14/126/7 12/15/7 6/6/7
f 10/16/7 8/7/7 6/6/7
f 6/6/7 16/125/7 14/126/7
f 15/19/8 16/17/8 1/18/8
f 13/14/9 14/13/9 15/19/9
f 15/22/10 1/127/10 3/128/10
f 3/128/10 5/122/10 7/8/10
f 7/8/10 9/20/10 15/22/10
f 11/21/10 13/129/10 15/22/10
f 15/22/10 3/128/10 7/8/10
f 18/130/10 20/23/10 17/25/10
f 20/131/11 24/26/11 19/28/11
f 24/26/7 22/29/7 23/27/7
f 22/29/12 18/31/12 21/30/12
f 22/29/13 24/26/13 18/34/13
f 26/43/10 28/35/10 25/37/10
f 28/35/11 32/38/11 27/36/11
f 32/132/7 30/40/7 31/42/7
f 30/133/12 26/43/12 29/44/12
f 30/134/13 32/45/13 26/43/13
f 37/48/10 36/135/10 47/136/10
f 35/137/10 48/138/10 47/136/10
f 47/136/10 46/139/10 37/48/10
f 45/46/10 44/140/10 39/141/10
f 39/141/10 38/47/10 45/46/10
f 36/135/10 35/137/10 47/136/10
f 46/139/10 45/46/10 37/48/10
f 43/56/7 42/55/7 51/50/7
f 41/51/7 40/69/7 49/62/7
f 34/66/7 33/64/7 49/62/7
f 49/62/7 50/49/7 41/51/7
f 51/50/7 52/57/7 43/56/7
f 42/55/7 41/51/7 51/50/7
f 34/66/7 49/62/7 40/69/7
f 42/55/14 36/52/14 41/51/14
f 35/142/15 36/54/15 43/56/15
f 43/56/11 52/57/11 35/59/11
f 48/143/16 52/57/16 47/60/16
f 47/144/17 51/50/17 46/61/17
f 46/145/18 50/49/18 45/63/18
f 45/146/19 49/62/19 44/65/19
f 44/147/12 33/64/12 39/67/12
f 38/148/20 39/68/20 40/69/20
f 37/149/21 38/70/21 41/51/21
f 57/73/10 56/79/10 67/87/10
f 55/84/10 68/83/10 67/87/10
f 67/87/10 66/90/10 57/73/10
f 65/71/10 64/95/10 59/98/10
f 59/98/10 58/72/10 65/71/10
f 56/79/10 55/84/10 67/87/10
f 66/90/10 65/71/10 57/73/10
f 63/150/7 62/151/7 71/75/7
f 61/76/7 60/152/7 69/153/7
f 54/154/7 53/155/7 69/153/7
f 69/153/7 70/74/7 61/76/7
f 71/75/7 72/156/7 63/150/7
f 62/151/7 61/76/7 71/75/7
f 54/154/7 69/153/7 60/152/7
f 56/79/14 57/73/14 62/78/14
f 55/84/15 56/79/15 63/81/15
f 63/157/11 72/82/11 55/84/11
f 68/83/16 72/85/16 67/87/16
f 67/87/17 71/88/17 66/90/17
f 66/90/18 70/91/18 65/71/18
f 65/71/19 69/93/19 64/95/19
f 64/95/12 53/96/12 59/98/12
f 58/72/20 59/98/20 60/100/20
f 57/73/21 58/72/21 61/102/21
f 73/158/22 74/103/22 76/105/22
f 19/24/10 74/106/10 17/25/10
f 19/28/23 23/27/23 74/109/23
f 21/30/7 76/105/7 23/27/7
f 17/32/24 73/110/24 21/30/24
f 77/115/22 78/112/22 80/114/22
f 27/36/10 78/112/10 25/37/10
f 31/39/23 79/116/23 27/36/23
f 29/41/7 80/118/7 31/42/7
f 25/37/24 77/120/24 29/44/24

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -11,6 +11,7 @@
"block.chemplantOperate": {"category": "block", "sounds": [{"name": "block/chemplantOperate", "stream": false}]},
"block.dieselOperate": {"category": "block", "sounds": [{"name": "block/dieselOperate", "stream": false}]},
"block.igeneratorOperate": {"category": "block", "sounds": [{"name": "block/igeneratorOperate", "stream": false}]},
"block.turbofanOperate": {"category": "block", "sounds": [{"name": "block/turbofanOperate", "stream": false}]},
"item.techBleep": {"category": "player", "sounds": [{"name": "tool/techBleep", "stream": false}]},
"item.techBoop": {"category": "player", "sounds": [{"name": "tool/techBoop", "stream": false}]},

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

View File

@ -1,16 +1,35 @@
package com.hbm.blocks.generic;
import java.util.Random;
import com.hbm.blocks.ModBlocks;
import com.hbm.lib.RefStrings;
import com.hbm.main.MainRegistry;
import com.hbm.tileentity.machine.TileEntityCrateIron;
import com.hbm.tileentity.machine.TileEntityCrateSteel;
import com.hbm.tileentity.machine.TileEntityMachineOilWell;
import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.ISidedInventory;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
public class BlockStorageCrate extends Block {
public class BlockStorageCrate extends BlockContainer {
private final Random field_149933_a = new Random();
private Random rand;
private static boolean keepInventory;
@SideOnly(Side.CLIENT)
private IIcon iconTop;
@ -40,4 +59,87 @@ public class BlockStorageCrate extends Block {
return side == 1 ? this.iconTop : (side == 0 ? this.iconTop : this.blockIcon);
}
@Override
public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
if(this == ModBlocks.crate_iron)
return new TileEntityCrateIron();
if(this == ModBlocks.crate_steel)
return new TileEntityCrateSteel();
return null;
}
@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)
{
ISidedInventory tileentityfurnace = (ISidedInventory)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())
{
TileEntity entity = world.getTileEntity(x, y, z);
if(entity instanceof TileEntityCrateIron)
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_crate_iron, world, x, y, z);
}
if(entity instanceof TileEntityCrateSteel)
{
FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_crate_steel, world, x, y, z);
}
return true;
} else {
return false;
}
}
}

View File

@ -121,7 +121,7 @@ public class MachinePumpjack extends BlockContainer implements IMultiblock {
//
DummyBlockPumpjack.safeBreak = true;
world.setBlock(x - 2, y, z + 1, ModBlocks.dummy_port_pumpjack);
TileEntity te = world.getTileEntity(x + 2, y, z + 1);
TileEntity te = world.getTileEntity(x - 2, y, z + 1);
if(te instanceof TileEntityDummy) {
TileEntityDummy dummy = (TileEntityDummy)te;
dummy.targetX = x;
@ -129,7 +129,7 @@ public class MachinePumpjack extends BlockContainer implements IMultiblock {
dummy.targetZ = z;
}
world.setBlock(x - 2, y, z - 1, ModBlocks.dummy_port_pumpjack);
TileEntity te2 = world.getTileEntity(x + 2, y, z - 1);
TileEntity te2 = world.getTileEntity(x - 2, y, z - 1);
if(te2 instanceof TileEntityDummy) {
TileEntityDummy dummy = (TileEntityDummy)te2;
dummy.targetX = x;
@ -137,7 +137,7 @@ public class MachinePumpjack extends BlockContainer implements IMultiblock {
dummy.targetZ = z;
}
world.setBlock(x - 3, y, z + 1, ModBlocks.dummy_port_pumpjack);
TileEntity te3 = world.getTileEntity(x + 3, y, z + 1);
TileEntity te3 = world.getTileEntity(x - 3, y, z + 1);
if(te3 instanceof TileEntityDummy) {
TileEntityDummy dummy = (TileEntityDummy)te3;
dummy.targetX = x;
@ -145,7 +145,7 @@ public class MachinePumpjack extends BlockContainer implements IMultiblock {
dummy.targetZ = z;
}
world.setBlock(x - 3, y, z - 1, ModBlocks.dummy_port_pumpjack);
TileEntity te4 = world.getTileEntity(x + 3, y, z - 1);
TileEntity te4 = world.getTileEntity(x - 3, y, z - 1);
if(te4 instanceof TileEntityDummy) {
TileEntityDummy dummy = (TileEntityDummy)te4;
dummy.targetX = x;

View File

@ -48,7 +48,7 @@ public class EntityGasFlameFX extends EntityModFX
this.prevPosX = this.posX;
this.prevPosY = this.posY;
this.prevPosZ = this.posZ;
if(maxAge < 30)
{
maxAge = rand.nextInt(13) + 30;
@ -60,9 +60,8 @@ public class EntityGasFlameFX extends EntityModFX
{
this.setDead();
}
this.motionX *= 0.7599999785423279D;
//this.motionY *= 0.7599999785423279D;
this.motionY += 0.0075D;
this.motionZ *= 0.7599999785423279D;

View File

@ -6,7 +6,7 @@ public class FluidTypeHandler {
NONE (0x888888, 8947848, 0, 1, "hbmfluid.none"),
WATER (0x3333FF, 3355647, 1, 1, "hbmfluid.water"),
STEAM (0x020202, 3355647, 9, 1, "hbmfluid.steam"),
STEAM (0xe5e5e5, 15066597, 9, 1, "hbmfluid.steam"),
COOLANT (0xd8fcff, 14220543, 2, 1, "hbmfluid.coolant"),
LAVA (0xFF3300, 16724736, 3, 1, "hbmfluid.lava"),

View File

@ -20,6 +20,8 @@ import com.hbm.tileentity.machine.TileEntityConverterHeRf;
import com.hbm.tileentity.machine.TileEntityConverterRfHe;
import com.hbm.tileentity.machine.TileEntityCoreAdvanced;
import com.hbm.tileentity.machine.TileEntityCoreTitanium;
import com.hbm.tileentity.machine.TileEntityCrateIron;
import com.hbm.tileentity.machine.TileEntityCrateSteel;
import com.hbm.tileentity.machine.TileEntityDiFurnace;
import com.hbm.tileentity.machine.TileEntityFWatzCore;
import com.hbm.tileentity.machine.TileEntityFusionMultiblock;
@ -460,6 +462,22 @@ public class GUIHandler implements IGuiHandler {
return new ContainerMachineTurbofan(player.inventory, (TileEntityMachineTurbofan) entity);
}
}
case ModBlocks.guiID_crate_iron:
{
if(entity instanceof TileEntityCrateIron)
{
return new ContainerCrateIron(player.inventory, (TileEntityCrateIron) entity);
}
}
case ModBlocks.guiID_crate_steel:
{
if(entity instanceof TileEntityCrateSteel)
{
return new ContainerCrateSteel(player.inventory, (TileEntityCrateSteel) entity);
}
}
}
return null;
}
@ -864,6 +882,22 @@ public class GUIHandler implements IGuiHandler {
return new GUIMachineTurbofan(player.inventory, (TileEntityMachineTurbofan) entity);
}
}
case ModBlocks.guiID_crate_iron:
{
if(entity instanceof TileEntityCrateIron)
{
return new GUICrateIron(player.inventory, (TileEntityCrateIron) entity);
}
}
case ModBlocks.guiID_crate_steel:
{
if(entity instanceof TileEntityCrateSteel)
{
return new GUICrateSteel(player.inventory, (TileEntityCrateSteel) entity);
}
}
}
} else {
//CLIENTONLY GUIS

View File

@ -27,7 +27,7 @@ public class FluidRecipeHandler extends TemplateRecipeHandler {
public SmeltingSet(ItemStack input, ItemStack result) {
input.stackSize = 1;
this.input = new PositionedStack(input, 83 - 27 - 18 + 1, 5 + 18 + 1);
this.result = new PositionedStack(result, 83 + 27 + 18 + 1, 5 + 18 + 1);
this.result = new PositionedStack(result, 83 + 27 + 18 + 1 - 18, 5 + 18 + 1);
}
@Override
@ -103,7 +103,7 @@ public class FluidRecipeHandler extends TemplateRecipeHandler {
@Override
public void loadTransferRects() {
transferRects.add(new RecipeTransferRect(new Rectangle(74 + 6, 23, 24, 18), "fluidcons"));
transferRects.add(new RecipeTransferRect(new Rectangle(74 + 6 - 18, 23, 42, 18), "fluidcons"));
RecipeTransferRectHandler.registerRectsToGuis(getRecipeTransferRectGuis(), transferRects);
}
}

View File

@ -0,0 +1,82 @@
package com.hbm.inventory.container;
import com.hbm.inventory.SlotMachineOutput;
import com.hbm.tileentity.machine.TileEntityCrateIron;
import com.hbm.tileentity.machine.TileEntityMachineTurbofan;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.ICrafting;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
public class ContainerCrateIron extends Container {
private TileEntityCrateIron diFurnace;
public ContainerCrateIron(InventoryPlayer invPlayer, TileEntityCrateIron tedf) {
diFurnace = tedf;
for(int i = 0; i < 4; i++)
{
for(int j = 0; j < 9; j++)
{
this.addSlotToContainer(new Slot(tedf, j + i * 9, 8 + j * 18, 18 + i * 18));
}
}
for(int i = 0; i < 3; i++)
{
for(int j = 0; j < 9; j++)
{
this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18 + 20));
}
}
for(int i = 0; i < 9; i++)
{
this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 142 + 20));
}
}
@Override
public ItemStack transferStackInSlot(EntityPlayer p_82846_1_, int par2)
{
ItemStack var3 = null;
Slot var4 = (Slot) this.inventorySlots.get(par2);
if (var4 != null && var4.getHasStack())
{
ItemStack var5 = var4.getStack();
var3 = var5.copy();
if (par2 <= diFurnace.getSizeInventory() - 1) {
if (!this.mergeItemStack(var5, diFurnace.getSizeInventory(), this.inventorySlots.size(), true))
{
return null;
}
}
else if (!this.mergeItemStack(var5, 0, diFurnace.getSizeInventory(), false))
{
return null;
}
if (var5.stackSize == 0)
{
var4.putStack((ItemStack) null);
}
else
{
var4.onSlotChanged();
}
}
return var3;
}
@Override
public boolean canInteractWith(EntityPlayer player) {
return diFurnace.isUseableByPlayer(player);
}
}

View File

@ -0,0 +1,80 @@
package com.hbm.inventory.container;
import com.hbm.tileentity.machine.TileEntityCrateIron;
import com.hbm.tileentity.machine.TileEntityCrateSteel;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.inventory.Container;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
public class ContainerCrateSteel extends Container {
private TileEntityCrateSteel diFurnace;
public ContainerCrateSteel(InventoryPlayer invPlayer, TileEntityCrateSteel tedf) {
diFurnace = tedf;
for(int i = 0; i < 6; i++)
{
for(int j = 0; j < 9; j++)
{
this.addSlotToContainer(new Slot(tedf, j + i * 9, 8 + j * 18, 18 + i * 18));
}
}
for(int i = 0; i < 3; i++)
{
for(int j = 0; j < 9; j++)
{
this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18 + (18 * 3) + 2));
}
}
for(int i = 0; i < 9; i++)
{
this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 142 + (18 * 3) + 2));
}
}
@Override
public ItemStack transferStackInSlot(EntityPlayer p_82846_1_, int par2)
{
ItemStack var3 = null;
Slot var4 = (Slot) this.inventorySlots.get(par2);
if (var4 != null && var4.getHasStack())
{
ItemStack var5 = var4.getStack();
var3 = var5.copy();
if (par2 <= diFurnace.getSizeInventory() - 1) {
if (!this.mergeItemStack(var5, diFurnace.getSizeInventory(), this.inventorySlots.size(), true))
{
return null;
}
}
else if (!this.mergeItemStack(var5, 0, diFurnace.getSizeInventory(), false))
{
return null;
}
if (var5.stackSize == 0)
{
var4.putStack((ItemStack) null);
}
else
{
var4.onSlotChanged();
}
}
return var3;
}
@Override
public boolean canInteractWith(EntityPlayer player) {
return diFurnace.isUseableByPlayer(player);
}
}

View File

@ -15,9 +15,11 @@ public class ContainerMachineTurbofan extends Container {
private TileEntityMachineTurbofan diFurnace;
private int power;
private int afterburner;
public ContainerMachineTurbofan(InventoryPlayer invPlayer, TileEntityMachineTurbofan tedf) {
power = 0;
afterburner = 0;
diFurnace = tedf;
@ -43,6 +45,7 @@ public class ContainerMachineTurbofan extends Container {
public void addCraftingToCrafters(ICrafting crafting) {
super.addCraftingToCrafters(crafting);
crafting.sendProgressBarUpdate(this, 0, this.diFurnace.power);
crafting.sendProgressBarUpdate(this, 1, this.diFurnace.afterburner);
}
@Override
@ -98,6 +101,10 @@ public class ContainerMachineTurbofan extends Container {
{
par1.sendProgressBarUpdate(this, 0, this.diFurnace.power);
}
if(this.afterburner != this.diFurnace.afterburner)
{
par1.sendProgressBarUpdate(this, 1, this.diFurnace.afterburner);
}
}
this.power = this.diFurnace.power;
@ -109,6 +116,10 @@ public class ContainerMachineTurbofan extends Container {
{
diFurnace.power = j;
}
if(i == 1)
{
diFurnace.afterburner = j;
}
}
}

View File

@ -0,0 +1,45 @@
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.inventory.FluidTank;
import com.hbm.inventory.container.ContainerCrateIron;
import com.hbm.inventory.container.ContainerMachineTurbofan;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.machine.TileEntityCrateIron;
import com.hbm.tileentity.machine.TileEntityMachineTurbofan;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.client.resources.I18n;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.util.ResourceLocation;
public class GUICrateIron extends GuiContainer {
private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_crate_iron.png");
private TileEntityCrateIron diFurnace;
public GUICrateIron(InventoryPlayer invPlayer, TileEntityCrateIron tedf) {
super(new ContainerCrateIron(invPlayer, tedf));
diFurnace = tedf;
this.xSize = 176;
this.ySize = 186;
}
@Override
protected void drawGuiContainerForegroundLayer(int i, int j) {
String name = this.diFurnace.hasCustomInventoryName() ? this.diFurnace.getInventoryName() : I18n.format(this.diFurnace.getInventoryName());
this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752);
this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 4210752);
}
@Override
protected void drawGuiContainerBackgroundLayer(float p_146976_1_, int p_146976_2_, int p_146976_3_) {
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
Minecraft.getMinecraft().getTextureManager().bindTexture(texture);
drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize);
}
}

View File

@ -0,0 +1,44 @@
package com.hbm.inventory.gui;
import org.lwjgl.opengl.GL11;
import com.hbm.inventory.container.ContainerCrateIron;
import com.hbm.inventory.container.ContainerCrateSteel;
import com.hbm.lib.RefStrings;
import com.hbm.tileentity.machine.TileEntityCrateIron;
import com.hbm.tileentity.machine.TileEntityCrateSteel;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.client.resources.I18n;
import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.util.ResourceLocation;
public class GUICrateSteel extends GuiContainer {
private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_crate_steel.png");
private TileEntityCrateSteel diFurnace;
public GUICrateSteel(InventoryPlayer invPlayer, TileEntityCrateSteel tedf) {
super(new ContainerCrateSteel(invPlayer, tedf));
diFurnace = tedf;
this.xSize = 176;
this.ySize = 222;
}
@Override
protected void drawGuiContainerForegroundLayer(int i, int j) {
String name = this.diFurnace.hasCustomInventoryName() ? this.diFurnace.getInventoryName() : I18n.format(this.diFurnace.getInventoryName());
this.fontRendererObj.drawString(name, this.xSize / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752);
this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 4210752);
}
@Override
protected void drawGuiContainerBackgroundLayer(float p_146976_1_, int p_146976_2_, int p_146976_3_) {
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
Minecraft.getMinecraft().getTextureManager().bindTexture(texture);
drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize);
}
}

View File

@ -52,6 +52,11 @@ public class GUIMachineTurbofan extends GuiFluidContainer {
int i = diFurnace.getPowerScaled(52);
drawTexturedModalRect(guiLeft + 152 - 9, guiTop + 69 - i, 176 + 16, 52 - i, 16, i);
}
if(diFurnace.afterburner > 0) {
int i = diFurnace.afterburner;
drawTexturedModalRect(guiLeft + 107, guiTop + 53, 176, (i - 1) * 16, 16, 16);
}
Minecraft.getMinecraft().getTextureManager().bindTexture(FluidTank.fluidTextures);

View File

@ -649,6 +649,7 @@ public class ModItems {
public static Item tem_flakes;
public static Item glowing_stew;
public static Item lemon;
public static Item definitelyfood;
public static Item flame_pony;
public static Item flame_conspiracy;
@ -1605,6 +1606,7 @@ public class ModItems {
tem_flakes = new ItemTemFlakes(0, 0, false).setUnlocalizedName("tem_flakes").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":tem_flakes");
glowing_stew = new ItemSoup(6).setUnlocalizedName("glowing_stew").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":glowing_stew");
lemon = new ItemLemon(3, 5, false).setUnlocalizedName("lemon").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":lemon");
definitelyfood = new ItemLemon(2, 5, false).setUnlocalizedName("definitelyfood").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":definitelyfood");
flame_pony = new ItemCustomLore().setUnlocalizedName("flame_pony").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":flame_pony");
flame_conspiracy = new ItemCustomLore().setUnlocalizedName("flame_conspiracy").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":flame_conspiracy");
@ -2779,6 +2781,7 @@ public class ModItems {
GameRegistry.registerItem(tem_flakes, tem_flakes.getUnlocalizedName());
GameRegistry.registerItem(glowing_stew, glowing_stew.getUnlocalizedName());
GameRegistry.registerItem(lemon, lemon.getUnlocalizedName());
GameRegistry.registerItem(definitelyfood, definitelyfood.getUnlocalizedName());
//Energy Drinks
GameRegistry.registerItem(can_empty, can_empty.getUnlocalizedName());
@ -2916,7 +2919,7 @@ public class ModItems {
GameRegistry.registerItem(wand, wand.getUnlocalizedName());
GameRegistry.registerItem(wand_s, wand_s.getUnlocalizedName());
GameRegistry.registerItem(wand_d, wand_d.getUnlocalizedName());
GameRegistry.registerItem(remote, remote.getUnlocalizedName());
//GameRegistry.registerItem(remote, remote.getUnlocalizedName());
GameRegistry.registerItem(euphemium_stopper, euphemium_stopper.getUnlocalizedName());
GameRegistry.registerItem(polaroid, polaroid.getUnlocalizedName());
GameRegistry.registerItem(book_secret, book_secret.getUnlocalizedName());

View File

@ -2,6 +2,8 @@ package com.hbm.items.food;
import java.util.List;
import com.hbm.items.ModItems;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemFood;
import net.minecraft.item.ItemStack;
@ -15,7 +17,18 @@ public class ItemLemon extends ItemFood {
@Override
public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool)
{
list.add("Eh, good enough.");
if(this == ModItems.lemon) {
list.add("Eh, good enough.");
}
if(this == ModItems.definitelyfood) {
list.add("A'right, I got sick and tired of");
list.add("having to go out, kill things just");
list.add("to get food and not die, so here is ");
list.add("my absolutely genius solution:");
list.add("");
list.add("Have some edible dirt.");
}
}
}

View File

@ -219,6 +219,7 @@ public class Library {
if(checkArmor(player, ModItems.hazmat_helmet, ModItems.hazmat_plate, ModItems.hazmat_legs, ModItems.hazmat_boots) ||
checkArmor(player, ModItems.t45_helmet, ModItems.t45_plate, ModItems.t45_legs, ModItems.t45_boots) ||
checkArmor(player, ModItems.euphemium_helmet, ModItems.euphemium_plate, ModItems.euphemium_legs, ModItems.euphemium_boots) ||
checkArmor(player, ModItems.schrabidium_helmet, ModItems.schrabidium_plate, ModItems.schrabidium_legs, ModItems.schrabidium_boots) ||
checkArmor(player, ModItems.hazmat_paa_helmet, ModItems.hazmat_paa_plate, ModItems.hazmat_paa_legs, ModItems.hazmat_paa_boots))
{
return true;

View File

@ -447,6 +447,7 @@ public class CraftingManager {
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.shimmer_head, 1), new Object[] { "SSS", "DTD", "SSS", 'S', "ingotSteel", 'D', "blockDesh", 'T', "blockTungsten" }));
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.shimmer_handle, 1), new Object[] { "GP", "GP", "GP", 'G', "plateGold", 'P', "ingotPolymer" }));
GameRegistry.addRecipe(new ItemStack(ModItems.shimmer_sledge, 1), new Object[] { "H", "G", "G", 'G', ModItems.shimmer_handle, 'H', ModItems.shimmer_head });
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.definitelyfood, 1), new Object[] { "DDD", "SDS", "DDD", 'D', Blocks.dirt, 'S', "plateSteel" }));
GameRegistry.addShapelessRecipe(new ItemStack(ModItems.toothpicks, 3), new Object[] { Items.stick, Items.stick, Items.stick });
GameRegistry.addShapedRecipe(new ItemStack(ModItems.ducttape, 6), new Object[] { "FSF", "SPS", "FSF", 'F', Items.string, 'S', Items.slime_ball, 'P', Items.paper });
@ -501,6 +502,8 @@ public class CraftingManager {
GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_well), 1), new Object[] { "TPM", "GPG", "GDG", 'T', ModItems.tank_steel, 'P', ModItems.pipes_steel, 'M', ModItems.motor, 'G', ModBlocks.steel_scaffold, 'D', ModItems.drill_titanium });
GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_flare), 1), new Object[] { "UHU", "GPG", "GTG", 'U', ModItems.thermo_element, 'H', ModItems.hull_small_steel, 'G', ModBlocks.steel_scaffold, 'P', ModItems.pipes_steel, 'T', ModItems.tank_steel });
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.machine_refinery), 1), new Object[] { "PTP", "CTC", "WFW", 'P', "plateTitanium", 'T', ModItems.tank_steel, 'C', ModItems.coil_tungsten, 'W', ModBlocks.red_wire_coated, 'F', ModBlocks.machine_electric_furnace_off }));
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.crate_iron), 1), new Object[] { "PPP", "I I", "III", 'P', "plateIron", 'I', "ingotIron" }));
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.crate_steel), 1), new Object[] { "PPP", "I I", "III", 'P', "plateSteel", 'I', "ingotSteel" }));
GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.factory_titanium_hull), 1), new Object[] { "PIP", "I I", "PIP", 'P', "plateTitanium", 'I', "ingotTitanium" }));
GameRegistry.addRecipe(new ItemStack(Item.getItemFromBlock(ModBlocks.factory_titanium_furnace), 1), new Object[] { "HMH", "MFM", "HMH", 'H', Item.getItemFromBlock(ModBlocks.factory_titanium_hull), 'M', ModItems.motor, 'F', Item.getItemFromBlock(Blocks.furnace) });

View File

@ -170,6 +170,8 @@ import com.hbm.tileentity.machine.TileEntityConverterHeRf;
import com.hbm.tileentity.machine.TileEntityConverterRfHe;
import com.hbm.tileentity.machine.TileEntityCoreAdvanced;
import com.hbm.tileentity.machine.TileEntityCoreTitanium;
import com.hbm.tileentity.machine.TileEntityCrateIron;
import com.hbm.tileentity.machine.TileEntityCrateSteel;
import com.hbm.tileentity.machine.TileEntityDiFurnace;
import com.hbm.tileentity.machine.TileEntityDummy;
import com.hbm.tileentity.machine.TileEntityFWatzCore;
@ -491,6 +493,8 @@ public class MainRegistry
GameRegistry.registerTileEntity(TileEntityTurretTau.class, "tileentity_turret_tau");
GameRegistry.registerTileEntity(TileEntityMachinePumpjack.class, "tileentity_machine_pumpjack");
GameRegistry.registerTileEntity(TileEntityMachineTurbofan.class, "tileentity_machine_turbofan");
GameRegistry.registerTileEntity(TileEntityCrateIron.class, "tileentity_crate_iron");
GameRegistry.registerTileEntity(TileEntityCrateSteel.class, "tileentity_crate_steel");
EntityRegistry.registerModEntity(EntityRocket.class, "entity_rocket", 0, this, 250, 1, true);
EntityRegistry.registerModEntity(EntityNukeExplosion.class, "entity_nuke_explosion", 1, this, 250, 1, true);

View File

@ -28,5 +28,18 @@ public class ResourceManager {
//Turbofan
public static final IModelCustom turbofan_body = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/turbofan_body.obj"));
public static final IModelCustom turbofan_blades = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/turbofan_blades.obj"));
////Textures TEs
public static final ResourceLocation universal = new ResourceLocation(RefStrings.MODID, "textures/models/TheGadget3_.png");
//Pumpjack
public static final ResourceLocation pumpjack_base_tex = new ResourceLocation(RefStrings.MODID, "textures/models/pumpjack_base.png");
public static final ResourceLocation pumpjack_head_tex = new ResourceLocation(RefStrings.MODID, "textures/models/pumpjack_head.png");
public static final ResourceLocation pumpjack_rotor_tex = new ResourceLocation(RefStrings.MODID, "textures/models/pumpjack_rotor.png");
//Pumpjack
public static final ResourceLocation turbofan_body_tex = new ResourceLocation(RefStrings.MODID, "textures/models/turbofan_body.png");
public static final ResourceLocation turbofan_blades_tex = new ResourceLocation(RefStrings.MODID, "textures/models/turbofan_blades.png");
}

View File

@ -2,10 +2,14 @@ package com.hbm.packet;
import com.hbm.sound.SoundLoopAssembler;
import com.hbm.sound.SoundLoopChemplant;
import com.hbm.sound.SoundLoopIGen;
import com.hbm.sound.SoundLoopMiner;
import com.hbm.sound.SoundLoopTurbofan;
import com.hbm.tileentity.machine.TileEntityMachineAssembler;
import com.hbm.tileentity.machine.TileEntityMachineChemplant;
import com.hbm.tileentity.machine.TileEntityMachineIGenerator;
import com.hbm.tileentity.machine.TileEntityMachineMiningDrill;
import com.hbm.tileentity.machine.TileEntityMachineTurbofan;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import cpw.mods.fml.common.network.simpleimpl.IMessageHandler;
@ -92,6 +96,30 @@ public class LoopedSoundPacket implements IMessage {
if(flag && te.getWorldObj().isRemote && ((TileEntityMachineAssembler)te).isProgressing)
Minecraft.getMinecraft().getSoundHandler().playSound(new SoundLoopAssembler(new ResourceLocation("hbm:block.assemblerOperate"), te));
}
if (te != null && te instanceof TileEntityMachineIGenerator) {
boolean flag = true;
for(int i = 0; i < SoundLoopIGen.list.size(); i++) {
if(SoundLoopIGen.list.get(i).getTE() == te && !SoundLoopIGen.list.get(i).isDonePlaying())
flag = false;
}
if(flag && te.getWorldObj().isRemote && ((TileEntityMachineIGenerator)te).torque > 0)
Minecraft.getMinecraft().getSoundHandler().playSound(new SoundLoopIGen(new ResourceLocation("hbm:block.igeneratorOperate"), te));
}
if (te != null && te instanceof TileEntityMachineTurbofan) {
boolean flag = true;
for(int i = 0; i < SoundLoopTurbofan.list.size(); i++) {
if(SoundLoopTurbofan.list.get(i).getTE() == te && !SoundLoopTurbofan.list.get(i).isDonePlaying())
flag = false;
}
if(flag && te.getWorldObj().isRemote && ((TileEntityMachineTurbofan)te).isRunning)
Minecraft.getMinecraft().getSoundHandler().playSound(new SoundLoopTurbofan(new ResourceLocation("hbm:block.turbofanOperate"), te));
}
return null;
}
}

View File

@ -45,6 +45,8 @@ public class PacketDispatcher {
wrapper.registerMessage(ItemFolderPacket.Handler.class, ItemFolderPacket.class, i++, Side.SERVER);
//Pumpjack rotation for animation rendering
wrapper.registerMessage(TEPumpjackPacket.Handler.class, TEPumpjackPacket.class, i++, Side.CLIENT);
//Turbofan spin for rendering
wrapper.registerMessage(TETurbofanPacket.Handler.class, TETurbofanPacket.class, i++, Side.CLIENT);
}
}

View File

@ -15,18 +15,20 @@ public class TEIGeneratorPacket implements IMessage {
int y;
int z;
float spin;
int torque;
public TEIGeneratorPacket()
{
}
public TEIGeneratorPacket(int x, int y, int z, float spin)
public TEIGeneratorPacket(int x, int y, int z, float spin, int torque)
{
this.x = x;
this.y = y;
this.z = z;
this.spin = spin;
this.torque = torque;
}
@Override
@ -35,6 +37,7 @@ public class TEIGeneratorPacket implements IMessage {
y = buf.readInt();
z = buf.readInt();
spin = buf.readFloat();
torque = buf.readInt();
}
@Override
@ -43,6 +46,7 @@ public class TEIGeneratorPacket implements IMessage {
buf.writeInt(y);
buf.writeInt(z);
buf.writeFloat(spin);
buf.writeInt(torque);
}
public static class Handler implements IMessageHandler<TEIGeneratorPacket, IMessage> {
@ -55,6 +59,7 @@ public class TEIGeneratorPacket implements IMessage {
TileEntityMachineIGenerator gen = (TileEntityMachineIGenerator) te;
gen.rotation = m.spin;
gen.torque = m.torque;
}
return null;
}

View File

@ -0,0 +1,68 @@
package com.hbm.packet;
import com.hbm.tileentity.machine.TileEntityMachineIGenerator;
import com.hbm.tileentity.machine.TileEntityMachineTurbofan;
import cpw.mods.fml.common.network.simpleimpl.IMessage;
import cpw.mods.fml.common.network.simpleimpl.IMessageHandler;
import cpw.mods.fml.common.network.simpleimpl.MessageContext;
import io.netty.buffer.ByteBuf;
import net.minecraft.client.Minecraft;
import net.minecraft.tileentity.TileEntity;
public class TETurbofanPacket implements IMessage {
int x;
int y;
int z;
int spin;
boolean isRunning;
public TETurbofanPacket()
{
}
public TETurbofanPacket(int x, int y, int z, int spin, boolean isRunning)
{
this.x = x;
this.y = y;
this.z = z;
this.spin = spin;
this.isRunning = isRunning;
}
@Override
public void fromBytes(ByteBuf buf) {
x = buf.readInt();
y = buf.readInt();
z = buf.readInt();
spin = buf.readInt();
isRunning = buf.readBoolean();
}
@Override
public void toBytes(ByteBuf buf) {
buf.writeInt(x);
buf.writeInt(y);
buf.writeInt(z);
buf.writeInt(spin);
buf.writeBoolean(isRunning);
}
public static class Handler implements IMessageHandler<TETurbofanPacket, IMessage> {
@Override
public IMessage onMessage(TETurbofanPacket m, MessageContext ctx) {
TileEntity te = Minecraft.getMinecraft().theWorld.getTileEntity(m.x, m.y, m.z);
if (te != null && te instanceof TileEntityMachineTurbofan) {
TileEntityMachineTurbofan gen = (TileEntityMachineTurbofan) te;
gen.spin = m.spin;
gen.isRunning = m.isRunning;
}
return null;
}
}
}

View File

@ -15,8 +15,6 @@ import net.minecraft.util.ResourceLocation;
public class RenderPumpjack extends TileEntitySpecialRenderer {
public RenderPumpjack() { }
private ResourceLocation gadgetTexture = new ResourceLocation(RefStrings.MODID, "textures/models/TheGadget3_.png");
int i;
@ -44,7 +42,7 @@ public class RenderPumpjack extends TileEntitySpecialRenderer {
GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glRotatef(180, 0F, 1F, 0F);
this.bindTexture(gadgetTexture);
this.bindTexture(ResourceManager.pumpjack_base_tex);
ResourceManager.pumpjack_base.renderAll();
GL11.glPopMatrix();
@ -60,7 +58,7 @@ public class RenderPumpjack extends TileEntitySpecialRenderer {
GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glRotatef(180, 0F, 1F, 0F);
this.bindTexture(gadgetTexture);
this.bindTexture(ResourceManager.pumpjack_rotor_tex);
GL11.glRotated(i - 90, 1F, 0F, 0F);
ResourceManager.pumpjack_rotor.renderAll();
@ -79,7 +77,7 @@ public class RenderPumpjack extends TileEntitySpecialRenderer {
GL11.glDisable(GL11.GL_CULL_FACE);
GL11.glRotatef(180, 0F, 1F, 0F);
this.bindTexture(gadgetTexture);
this.bindTexture(ResourceManager.pumpjack_head_tex);
float t = (float) Math.sin((i / (180 / Math.PI))) * 15;
GL11.glRotatef(t, 1F, 0F, 0F);
ResourceManager.pumpjack_head.renderAll();

View File

@ -5,6 +5,7 @@ import org.lwjgl.opengl.GL11;
import com.hbm.lib.RefStrings;
import com.hbm.main.ResourceManager;
import com.hbm.tileentity.machine.TileEntityMachineIGenerator;
import com.hbm.tileentity.machine.TileEntityMachineTurbofan;
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.tileentity.TileEntity;
@ -13,17 +14,12 @@ import net.minecraftforge.client.model.AdvancedModelLoader;
import net.minecraftforge.client.model.IModelCustom;
public class RenderTurbofan extends TileEntitySpecialRenderer {
private ResourceLocation gadgetTexture = new ResourceLocation(RefStrings.MODID, "textures/models/TheGadget3_.png");
public RenderTurbofan() { }
int i;
@Override
public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f)
{
i -= 3;
GL11.glPushMatrix();
GL11.glTranslated(x + 0.5D, y, z + 0.5D);
GL11.glEnable(GL11.GL_LIGHTING);
@ -42,7 +38,7 @@ public class RenderTurbofan extends TileEntitySpecialRenderer {
GL11.glRotatef(0, 0F, 1F, 0F); break;
}
bindTexture(gadgetTexture);
bindTexture(ResourceManager.turbofan_body_tex);
ResourceManager.turbofan_body.renderAll();
@ -70,9 +66,11 @@ public class RenderTurbofan extends TileEntitySpecialRenderer {
case 5:
GL11.glRotatef(0, 0F, 1F, 0F); break;
}
GL11.glRotatef(i, 0F, 0F, 1F);
if(tileEntity instanceof TileEntityMachineTurbofan)
GL11.glRotatef(((TileEntityMachineTurbofan)tileEntity).spin, 0F, 0F, -1F);
bindTexture(gadgetTexture);
bindTexture(ResourceManager.turbofan_blades_tex);
ResourceManager.turbofan_blades.renderAll();
GL11.glPopMatrix();

View File

@ -0,0 +1,41 @@
package com.hbm.sound;
import java.util.ArrayList;
import java.util.List;
import com.hbm.tileentity.machine.TileEntityMachineAssembler;
import com.hbm.tileentity.machine.TileEntityMachineIGenerator;
import com.hbm.tileentity.machine.TileEntityMachineMiningDrill;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
public class SoundLoopIGen extends SoundLoopMachine {
public static List<SoundLoopIGen> list = new ArrayList<SoundLoopIGen>();
public SoundLoopIGen(ResourceLocation path, TileEntity te) {
super(path, te);
list.add(this);
}
@Override
public void update() {
super.update();
if(te instanceof TileEntityMachineIGenerator) {
TileEntityMachineIGenerator drill = (TileEntityMachineIGenerator)te;
if(this.volume != 3)
volume = 3;
if(drill.torque <= 0)
this.donePlaying = true;
}
}
public TileEntity getTE() {
return te;
}
}

View File

@ -0,0 +1,41 @@
package com.hbm.sound;
import java.util.ArrayList;
import java.util.List;
import com.hbm.tileentity.machine.TileEntityMachineAssembler;
import com.hbm.tileentity.machine.TileEntityMachineMiningDrill;
import com.hbm.tileentity.machine.TileEntityMachineTurbofan;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.ResourceLocation;
public class SoundLoopTurbofan extends SoundLoopMachine {
public static List<SoundLoopTurbofan> list = new ArrayList<SoundLoopTurbofan>();
public SoundLoopTurbofan(ResourceLocation path, TileEntity te) {
super(path, te);
list.add(this);
}
@Override
public void update() {
super.update();
if(te instanceof TileEntityMachineTurbofan) {
TileEntityMachineTurbofan drill = (TileEntityMachineTurbofan)te;
if(this.volume != 10)
volume = 10;
if(!drill.isRunning)
this.donePlaying = true;
}
}
public TileEntity getTE() {
return te;
}
}

View File

@ -0,0 +1,168 @@
package com.hbm.tileentity.machine;
import com.hbm.blocks.ModBlocks;
import com.hbm.handler.FluidTypeHandler.FluidType;
import com.hbm.inventory.FluidTank;
import com.hbm.items.ModItems;
import com.hbm.items.special.ItemBattery;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.ISidedInventory;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.tileentity.TileEntity;
public class TileEntityCrateIron extends TileEntity implements ISidedInventory {
private ItemStack slots[];
private String customName;
public TileEntityCrateIron() {
slots = new ItemStack[36];
}
@Override
public int getSizeInventory() {
return slots.length;
}
@Override
public ItemStack getStackInSlot(int i) {
return slots[i];
}
@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.crateIron";
}
@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;
}
}
// You scrubs aren't needed for anything (right now)
@Override
public void openInventory() {
}
@Override
public void closeInventory() {
}
@Override
public boolean isItemValidForSlot(int i, ItemStack stack) {
return true;
}
@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 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);
}
@Override
public int[] getAccessibleSlotsFromSide(int p_94128_1_) {
int[] slots = new int[36];
for(int i = 0; i < slots.length; i++)
slots[i] = i;
return slots;
}
@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 true;
}
}

View File

@ -0,0 +1,160 @@
package com.hbm.tileentity.machine;
import net.minecraft.entity.player.EntityPlayer;
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;
public class TileEntityCrateSteel extends TileEntity implements ISidedInventory {
private ItemStack slots[];
private String customName;
public TileEntityCrateSteel() {
slots = new ItemStack[54];
}
@Override
public int getSizeInventory() {
return slots.length;
}
@Override
public ItemStack getStackInSlot(int i) {
return slots[i];
}
@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.crateSteel";
}
@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;
}
}
// You scrubs aren't needed for anything (right now)
@Override
public void openInventory() {
}
@Override
public void closeInventory() {
}
@Override
public boolean isItemValidForSlot(int i, ItemStack stack) {
return true;
}
@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 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);
}
@Override
public int[] getAccessibleSlotsFromSide(int p_94128_1_) {
int[] slots = new int[54];
for(int i = 0; i < slots.length; i++)
slots[i] = i;
return slots;
}
@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 true;
}
}

View File

@ -260,8 +260,8 @@ public class TileEntityMachineDiesel extends TileEntity implements ISidedInvento
}
soundCycle++;
//if (soundCycle >= 3 && this.superTimer <= 0)
// soundCycle = 0;
if (soundCycle >= 3)
soundCycle = 0;
//if (this.superTimer > 0)
// soundCycle = 0;

View File

@ -8,6 +8,7 @@ import com.hbm.interfaces.IConsumer;
import com.hbm.interfaces.ISource;
import com.hbm.items.ModItems;
import com.hbm.lib.Library;
import com.hbm.packet.LoopedSoundPacket;
import com.hbm.packet.PacketDispatcher;
import com.hbm.packet.TEIGeneratorPacket;
import cpw.mods.fml.relauncher.Side;
@ -300,8 +301,10 @@ public class TileEntityMachineIGenerator extends TileEntity implements ISidedInv
doBatteryTask();
}
if(!worldObj.isRemote)
PacketDispatcher.wrapper.sendToAll(new TEIGeneratorPacket(xCoord, yCoord, zCoord, rotation));
if(!worldObj.isRemote) {
PacketDispatcher.wrapper.sendToAll(new TEIGeneratorPacket(xCoord, yCoord, zCoord, rotation, torque));
PacketDispatcher.wrapper.sendToAll(new LoopedSoundPacket(xCoord, yCoord, zCoord));
}
}
public void doFuelTask() {

View File

@ -6,6 +6,7 @@ import java.util.Random;
import com.hbm.blocks.ModBlocks;
import com.hbm.entity.particle.EntityDSmokeFX;
import com.hbm.entity.particle.EntityGasFlameFX;
import com.hbm.entity.particle.EntityTSmokeFX;
import com.hbm.handler.FluidTypeHandler.FluidType;
import com.hbm.interfaces.IConsumer;
@ -17,6 +18,10 @@ import com.hbm.items.ModItems;
import com.hbm.items.special.ItemBattery;
import com.hbm.lib.Library;
import com.hbm.lib.ModDamageSource;
import com.hbm.packet.LoopedSoundPacket;
import com.hbm.packet.PacketDispatcher;
import com.hbm.packet.TEIGeneratorPacket;
import com.hbm.packet.TETurbofanPacket;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
@ -39,6 +44,9 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
public List<IConsumer> list = new ArrayList();
public FluidTank tank;
Random rand = new Random();
public int afterburner;
public boolean isRunning;
public int spin;
private static final int[] slots_top = new int[] { 0 };
private static final int[] slots_bottom = new int[] { 0, 0 };
@ -198,6 +206,29 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
@Override
public void updateEntity() {
int nrg = 1250;
int cnsp = 1;
afterburner = 0;
if(slots[2] != null) {
if(slots[2].getItem() == ModItems.upgrade_afterburn_1) {
nrg *= 2;
cnsp *= 2.5;
afterburner = 1;
}
if(slots[2].getItem() == ModItems.upgrade_afterburn_2) {
nrg *= 3;
cnsp *= 5;
afterburner = 2;
}
if(slots[2].getItem() == ModItems.upgrade_afterburn_3) {
nrg *= 4;
cnsp *= 7.5;
afterburner = 3;
}
}
if (!worldObj.isRemote) {
age++;
if (age >= 20) {
@ -206,32 +237,21 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
if (age == 9 || age == 19)
ffgeuaInit();
int nrg = 1250;
int cnsp = 1;
if(slots[2] != null) {
if(slots[2].getItem() == ModItems.upgrade_afterburn_1) {
nrg *= 2;
cnsp *= 2.5;
}
if(slots[2].getItem() == ModItems.upgrade_afterburn_2) {
nrg *= 3;
cnsp *= 5;
}
if(slots[2].getItem() == ModItems.upgrade_afterburn_3) {
nrg *= 4;
cnsp *= 7.5;
}
}
//Tank Management
tank.loadTank(0, 1, slots);
tank.updateTank(xCoord, yCoord, zCoord);
isRunning = false;
if(tank.getFill() >= cnsp) {
tank.setFill(tank.getFill() - cnsp);
power += nrg;
isRunning = true;
spin += 3;
spin = spin % 360;
if(power > maxPower)
power = maxPower;
@ -243,7 +263,7 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
double posZ = zCoord + 0.5;
if(meta == 2) {
if(rand.nextInt(3) == 0) {
if(afterburner == 0 && rand.nextInt(3) == 0) {
EntityTSmokeFX smoke = new EntityTSmokeFX(worldObj);
smoke.posX = xCoord + 0.5 + (rand.nextGaussian() * 0.5);
smoke.posY = yCoord + 1.5 + (rand.nextGaussian() * 0.5);
@ -255,12 +275,28 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
worldObj.spawnEntityInWorld(smoke);
}
for(int i = 0; i < afterburner * 5; i++)
if(afterburner > 0 && rand.nextInt(2) == 0) {
EntityGasFlameFX smoke = new EntityGasFlameFX(worldObj);
smoke.posX = xCoord + 0.5 + (rand.nextGaussian() * 0.5);
smoke.posY = yCoord + 1.5 + (rand.nextGaussian() * 0.5);
smoke.posZ = zCoord + 4.25;
//smoke.motionX = rand.nextGaussian() * 0.3;
//smoke.motionY = rand.nextGaussian() * 0.3;
smoke.motionZ = 2.5 + (rand.nextFloat() * 3.5);
//smoke.isBurn = true;
if(!worldObj.isRemote)
worldObj.spawnEntityInWorld(smoke);
}
//Exhaust push
List<Entity> list = (List<Entity>)worldObj.getEntitiesWithinAABBExcludingEntity(null,
AxisAlignedBB.getBoundingBox(posX - 1.5, posY, posZ + 4.5, posX + 1.5, posY + 3, posZ + 12));
for(Entity e : list) {
e.motionZ += 0.5;
if(afterburner > 0)
e.setFire(3 * afterburner);
}
//Intake pull
@ -280,7 +316,7 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
}
}
if(meta == 3) {
if(rand.nextInt(3) == 0) {
if(afterburner == 0 && rand.nextInt(3) == 0) {
EntityTSmokeFX smoke = new EntityTSmokeFX(worldObj);
smoke.posX = xCoord + 0.5 + (rand.nextGaussian() * 0.5);
smoke.posY = yCoord + 1.5 + (rand.nextGaussian() * 0.5);
@ -292,12 +328,28 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
worldObj.spawnEntityInWorld(smoke);
}
for(int i = 0; i < afterburner * 5; i++)
if(afterburner > 0 && rand.nextInt(2) == 0) {
EntityGasFlameFX smoke = new EntityGasFlameFX(worldObj);
smoke.posX = xCoord + 0.5 + (rand.nextGaussian() * 0.5);
smoke.posY = yCoord + 1.5 + (rand.nextGaussian() * 0.5);
smoke.posZ = zCoord - 4.25;
//smoke.motionX = rand.nextGaussian() * 0.3;
//smoke.motionY = rand.nextGaussian() * 0.3;
smoke.motionZ = -2.5 - (rand.nextFloat() * 3.5);
//smoke.isBurn = true;
if(!worldObj.isRemote)
worldObj.spawnEntityInWorld(smoke);
}
//Exhaust push
List<Entity> list = (List<Entity>)worldObj.getEntitiesWithinAABBExcludingEntity(null,
AxisAlignedBB.getBoundingBox(posX - 1.5, posY, posZ - 12, posX + 1.5, posY + 3, posZ - 4.5));
for(Entity e : list) {
e.motionZ -= 0.5;
if(afterburner > 0)
e.setFire(3 * afterburner);
}
//Intake pull
@ -317,17 +369,31 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
}
}
if(meta == 4) {
if(rand.nextInt(3) == 0) {
if(afterburner == 0 && rand.nextInt(3) == 0) {
EntityTSmokeFX smoke = new EntityTSmokeFX(worldObj);
smoke.posX = xCoord + 4.25;
smoke.posY = yCoord + 1.5 + (rand.nextGaussian() * 0.5);
smoke.posZ = zCoord + 0.5 + (rand.nextGaussian() * 0.5);
smoke.motionX = 2.5 + (rand.nextFloat() * 3.5);
smoke.motionY = rand.nextGaussian() * 0.3;
smoke.motionZ = rand.nextGaussian() * 0.3;
//smoke.motionY = rand.nextGaussian() * 0.3;
//smoke.motionZ = rand.nextGaussian() * 0.3;
if(!worldObj.isRemote)
worldObj.spawnEntityInWorld(smoke);
}
for(int i = 0; i < afterburner * 5; i++)
if(afterburner > 0 && rand.nextInt(2) == 0) {
EntityGasFlameFX smoke = new EntityGasFlameFX(worldObj);
smoke.posX = xCoord + 4.25;
smoke.posY = yCoord + 1.5 + (rand.nextGaussian() * 0.5);
smoke.posZ = zCoord + 0.5 + (rand.nextGaussian() * 0.5);
smoke.motionX = 2.5 + (rand.nextFloat() * 3.5);
//smoke.motionY = rand.nextGaussian() * 0.3;
//smoke.motionZ = rand.nextGaussian() * 0.3;
//smoke.isBurn = true;
if(!worldObj.isRemote)
worldObj.spawnEntityInWorld(smoke);
}
//Exhaust push
List<Entity> list = (List<Entity>)worldObj.getEntitiesWithinAABBExcludingEntity(null,
@ -335,6 +401,8 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
for(Entity e : list) {
e.motionX += 0.5;
if(afterburner > 0)
e.setFire(3 * afterburner);
}
//Intake pull
@ -354,7 +422,7 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
}
}
if(meta == 5) {
if(rand.nextInt(3) == 0) {
if(afterburner == 0 && rand.nextInt(3) == 0) {
EntityTSmokeFX smoke = new EntityTSmokeFX(worldObj);
smoke.posX = xCoord - 4.25;
smoke.posY = yCoord + 1.5 + (rand.nextGaussian() * 0.5);
@ -365,6 +433,20 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
if(!worldObj.isRemote)
worldObj.spawnEntityInWorld(smoke);
}
for(int i = 0; i < afterburner * 5; i++)
if(afterburner > 0 && rand.nextInt(2) == 0) {
EntityGasFlameFX smoke = new EntityGasFlameFX(worldObj);
smoke.posX = xCoord - 4.25;
smoke.posY = yCoord + 1.5 + (rand.nextGaussian() * 0.5);
smoke.posZ = zCoord + 0.5 + (rand.nextGaussian() * 0.5);
smoke.motionX = -2.5 - (rand.nextFloat() * 3.5);
//smoke.motionY = rand.nextGaussian() * 0.3;
//smoke.motionZ = rand.nextGaussian() * 0.3;
//smoke.isBurn = true;
if(!worldObj.isRemote)
worldObj.spawnEntityInWorld(smoke);
}
//Exhaust push
List<Entity> list = (List<Entity>)worldObj.getEntitiesWithinAABBExcludingEntity(null,
@ -372,6 +454,8 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
for(Entity e : list) {
e.motionX -= 0.5;
if(afterburner > 0)
e.setFire(3 * afterburner);
}
//Intake pull
@ -392,6 +476,11 @@ public class TileEntityMachineTurbofan extends TileEntity implements ISidedInven
}
}
}
if(!worldObj.isRemote) {
PacketDispatcher.wrapper.sendToAll(new TETurbofanPacket(xCoord, yCoord, zCoord, spin, isRunning));
PacketDispatcher.wrapper.sendToAll(new LoopedSoundPacket(xCoord, yCoord, zCoord));
}
}
@Override