diff --git a/assets/hbm/lang/de_DE.lang b/assets/hbm/lang/de_DE.lang index 44484813d..93fecec5b 100644 --- a/assets/hbm/lang/de_DE.lang +++ b/assets/hbm/lang/de_DE.lang @@ -22,6 +22,12 @@ hbmfluid.gas=Erdgas hbmfluid.coolant=Kühlflüssigkeit hbmfluid.amat=Antimaterie hbmfluid.aschrab=Antischrabidium +hbmfluid.heavyoil=Schweröl +hbmfluid.bitumen=Bitumen +hbmfluid.heatingoil=Heizöl +hbmfluid.naphtha=Mitteldestillat +hbmfluid.lightoil=Leichtöl +hbmfluid.petroleum=Petroleumgas item.record.lc.desc=Valve - Diabolic Adrenaline Guitar/Lambda Core item.record.ss.desc=Valve - Sector Sweep @@ -262,6 +268,9 @@ tile.machine_rtg_cyan.name=Schrabidium-Zerfallsenergie-Generator (WIP) tile.machine_rtg_blue.name=Konvektionsgenerator tile.machine_rtg_purple.name=Paarvernichtungsgenerator +item.fluid_identifier.name=Flüssigkeits-Kennzeichnung +item.assembly_template.name=Fertigungsvorlage: + item.fuse.name=Sicherung tile.test_nuke.name=Test Atombombe diff --git a/assets/hbm/lang/en_US.lang b/assets/hbm/lang/en_US.lang index 864cd8529..d3df22b3d 100644 --- a/assets/hbm/lang/en_US.lang +++ b/assets/hbm/lang/en_US.lang @@ -22,6 +22,12 @@ hbmfluid.gas=Natural Gas hbmfluid.coolant=Coolant hbmfluid.amat=Antimatter hbmfluid.aschrab=Antischrabidium +hbmfluid.heavyoil=Heavy Oil +hbmfluid.bitumen=Bitumen +hbmfluid.heatingoil=Heating Oil +hbmfluid.naphtha=Naphtha +hbmfluid.lightoil=Light Oil +hbmfluid.petroleum=Petroleum Gas item.record.lc.desc=Valve - Diabolic Adrenaline Guitar/Lambda Core item.record.ss.desc=Valve - Sector Sweep @@ -263,62 +269,7 @@ tile.machine_rtg_blue.name=Convection Generator tile.machine_rtg_purple.name=Antimatter Annihilation Generator item.fluid_identifier.name=Fluid Identifier - -item.assembly_template.TEST.name=Assembly Template: Test -item.assembly_template.MIXED_PLATE.name=Assembly Template: Mixed Plate -item.assembly_template.HAZMAT_CLOTH.name=Assembly Template: Hazmat Cloth -item.assembly_template.ASBESTOS_CLOTH.name=Assembly Template: Fire Proximity Cloth -item.assembly_template.COAL_FILTER.name=Assembly Template: Activated Carbon Filter -item.assembly_template.CENTRIFUGE_ELEMENT.name=Assembly Template: Centrifuge Element -item.assembly_template.CENTRIFUGE_TOWER.name=Assembly Template: Centrifuge Tower -item.assembly_template.DEE_MAGNET.name=Assembly Template: Dee Magnets -item.assembly_template.FLAT_MAGNET.name=Assembly Template: Flat Magnet -item.assembly_template.CYCLOTRON_TOWER.name=Assembly Template: Cyclotron Tower -item.assembly_template.REACTOR_CORE.name=Assembly Template: Breeding Reactor Core -item.assembly_template.RTG_UNIT.name=Assembly Template: RTG Unit -item.assembly_template.HEAT_UNIT.name=Assembly Template: Thermal Distribution Unit -item.assembly_template.GRAVITY_UNIT.name=Assembly Template: Gravity Manipulator -item.assembly_template.TITANIUM_DRILL.name=Assembly Template: Titanium Drill -item.assembly_template.TELEPAD.name=Assembly Template: Telepad -item.assembly_template.TELEKIT.name=Assembly Template: Entanglement Kit -item.assembly_template.GEASS_REACTOR.name=Assembly Template: Dysfunctional Nuclear Reactor -item.assembly_template.GENERATOR_FRONT.name=Assembly Template: Generator Front -item.assembly_template.WT1_GENERIC.name=Assembly Template: Small Warhead -item.assembly_template.WT2_GENERIC.name=Assembly Template: Medium Warhead -item.assembly_template.WT3_GENERIC.name=Assembly Template: Large Warhead -item.assembly_template.WT1_FIRE.name=Assembly Template: Small Incendiary Warhead -item.assembly_template.WT2_FIRE.name=Assembly Template: Medium Incendiary Warhead -item.assembly_template.WT3_FIRE.name=Assembly Template: Large Incendiary Warhead -item.assembly_template.WT1_CLUSTER.name=Assembly Template: Small Cluster Warhead -item.assembly_template.WT2_CLUSTER.name=Assembly Template: Medium Cluster Warhead -item.assembly_template.WT3_CLUSTER.name=Assembly Template: Large Cluster Warhead -item.assembly_template.WT1_BUSTER.name=Assembly Template: Small Bunker Buster Warhead -item.assembly_template.WT2_BUSTER.name=Assembly Template: Medium Bunker Buster Warhead -item.assembly_template.WT3_BUSTER.name=Assembly Template: Large Bunker Buster Warhead -item.assembly_template.W_NUCLEAR.name=Assembly Template: Nuclear Warhead -item.assembly_template.W_MIRVLET.name=Assembly Template: MIRV -item.assembly_template.W_MIRV.name=Assembly Template: Eightfold MIRV Warhead -item.assembly_template.W_ENDOTHERMIC.name=Assembly Template: Endothermic Warhead -item.assembly_template.W_EXOTHERMIC.name=Assembly Template: Exothermic Warhead -item.assembly_template.T1_TANK.name=Assembly Template: Small Fuel Tank -item.assembly_template.T2_TANK.name=Assembly Template: Medium Fuel Tank -item.assembly_template.T3_TANK.name=Assembly Template: Large Fuel Tank -item.assembly_template.T1_THRUSTER.name=Assembly Template: Small Thruster -item.assembly_template.T2_THRUSTER.name=Assembly Template: Medium Thruster -item.assembly_template.T3_THRUSTER.name=Assembly Template: Large Thruster -item.assembly_template.CHOPPER_HEAD.name=Assembly Template: Hunter Chopper Cockpit -item.assembly_template.CHOPPER_GUN.name=Assembly Template: Emplacement Gun -item.assembly_template.CHOPPER_BODY.name=Assembly Template: Hunter Chopper Body -item.assembly_template.CHOPPER_TAIL.name=Assembly Template: Hunter Chopper Tail -item.assembly_template.CHOPPER_WING.name=Assembly Template: Hunter Chopper Wing -item.assembly_template.CHOPPER_BLADES.name=Assembly Template: Hunter Chopper Rotor Blades -item.assembly_template.CIRCUIT_2.name=Assembly Template: Enhanced Circuit -item.assembly_template.CIRCUIT_3.name=Assembly Template: Advanced Circuit -item.assembly_template.RTG_PELLET.name=Assembly Template: Plutonium 238 Fuel Pellet -item.assembly_template.WEAK_PELLET.name=Assembly Template: Weak Uranium RTG Pellet -item.assembly_template.FUSION_PELLET.name=Assembly Template: Tritium-Deuterium-Cake -item.assembly_template.CLUSTER_PELLETS.name=Assembly Template: Explosive Pellets -item.assembly_template.GUN_PELLETS.name=Assembly Template: Lead Pellets +item.assembly_template.name=Assembly Template: item.fuse.name=Fuse diff --git a/assets/hbm/models/bombletSelena.obj b/assets/hbm/models/bombletSelena.obj new file mode 100644 index 000000000..147bad9cc --- /dev/null +++ b/assets/hbm/models/bombletSelena.obj @@ -0,0 +1,370 @@ +# Blender v2.76 (sub 0) OBJ File: 'bombletSelena.blend' +# www.blender.org +o Cylinder +v -0.000000 -0.250000 -0.090313 +v -0.000000 0.250000 -0.031250 +v 0.063861 -0.250000 -0.063861 +v 0.022097 0.250000 -0.022097 +v 0.090312 -0.250000 0.000000 +v 0.031250 0.250000 0.000000 +v 0.063861 -0.250000 0.063861 +v 0.022097 0.250000 0.022097 +v -0.000000 -0.250000 0.090313 +v -0.000000 0.250000 0.031250 +v -0.063861 -0.250000 0.063861 +v -0.022097 0.250000 0.022097 +v -0.090313 -0.250000 -0.000000 +v -0.031250 0.250000 -0.000000 +v -0.063861 -0.250000 -0.063861 +v -0.022097 0.250000 -0.022097 +v -0.000000 0.125000 -0.125000 +v 0.088388 0.125000 -0.088388 +v 0.125000 0.125000 0.000000 +v 0.088388 0.125000 0.088388 +v -0.000000 0.125000 0.125000 +v -0.088388 0.125000 0.088388 +v -0.125000 0.125000 -0.000000 +v -0.088388 0.125000 -0.088388 +v -0.000000 0.190000 -0.093750 +v 0.066291 0.190000 -0.066291 +v 0.093750 0.190000 0.000000 +v 0.066291 0.190000 0.066291 +v -0.000000 0.190000 0.093750 +v -0.066291 0.190000 0.066291 +v -0.093750 0.190000 -0.000000 +v -0.066291 0.190000 -0.066291 +v 0.088388 -0.050000 -0.088388 +v 0.125000 -0.050000 0.000000 +v 0.088388 -0.050000 0.088388 +v -0.000000 -0.050000 0.125000 +v -0.088388 -0.050000 0.088388 +v -0.125000 -0.050000 -0.000000 +v -0.088388 -0.050000 -0.088388 +v -0.000000 -0.050000 -0.125000 +v 0.063861 -0.125000 -0.063861 +v 0.090312 -0.125000 0.000000 +v 0.063861 -0.125000 0.063861 +v -0.000000 -0.125000 0.090313 +v -0.063861 -0.125000 0.063861 +v -0.090313 -0.125000 -0.000000 +v -0.063861 -0.125000 -0.063861 +v -0.000000 -0.125000 -0.090313 +v 0.095791 -0.275000 -0.095791 +v -0.095791 -0.275000 0.095791 +v 0.095791 -0.125000 -0.095791 +v -0.095791 -0.125000 0.095791 +v 0.063861 -0.100000 -0.063861 +v -0.063861 -0.100000 0.063861 +v 0.000000 -0.275000 -0.135469 +v -0.000000 -0.275000 0.135469 +v 0.000000 -0.125000 -0.135469 +v -0.000000 -0.125000 0.135469 +v 0.000000 -0.100000 -0.090313 +v -0.000000 -0.100000 0.090313 +v -0.095791 -0.275000 -0.095791 +v 0.095791 -0.275000 0.095791 +v -0.095791 -0.125000 -0.095791 +v 0.095791 -0.125000 0.095791 +v -0.063861 -0.100000 -0.063861 +v 0.063861 -0.100000 0.063861 +v -0.135469 -0.275000 0.000000 +v 0.135469 -0.275000 -0.000000 +v -0.135469 -0.125000 0.000000 +v 0.135469 -0.125000 -0.000000 +v -0.090312 -0.100000 0.000000 +v 0.090313 -0.100000 -0.000000 +vt 0.200305 0.646222 +vt 0.172274 0.646222 +vt 0.144244 0.548632 +vt 0.088183 0.646222 +vt 0.060153 0.646222 +vt 0.032122 0.548631 +vt 0.873037 0.646223 +vt 0.845006 0.646223 +vt 0.816976 0.548632 +vt 0.788945 0.548632 +vt 0.760915 0.646223 +vt 0.732884 0.646223 +vt 0.648793 0.646223 +vt 0.620762 0.646223 +vt 0.592732 0.548632 +vt 0.536671 0.646223 +vt 0.508640 0.646223 +vt 0.480610 0.548632 +vt 0.037928 0.914221 +vt 0.065958 0.914221 +vt 0.085779 0.962072 +vt 0.340457 0.548632 +vt 0.312427 0.646222 +vt 0.284396 0.646222 +vt 0.424549 0.646223 +vt 0.396518 0.646222 +vt 0.368488 0.548632 +vt 0.018107 0.820726 +vt 0.156396 0.682437 +vt 0.213678 0.739718 +vt 0.466595 0.465278 +vt 0.354473 0.465278 +vt 0.354473 0.260186 +vt 0.242351 0.465278 +vt 0.242351 0.260186 +vt 0.578717 0.465278 +vt 0.466595 0.260186 +vt 0.690839 0.465278 +vt 0.578717 0.260186 +vt 0.802961 0.465278 +vt 0.690839 0.260186 +vt 0.915082 0.465278 +vt 0.802961 0.260186 +vt 0.130229 0.465278 +vt 0.018107 0.465278 +vt 0.018107 0.260186 +vt 0.130229 0.260186 +vt 0.452579 0.548632 +vt 0.256366 0.548632 +vt 0.564701 0.548632 +vt 0.676823 0.548632 +vt 0.704854 0.548632 +vt 0.901067 0.548632 +vt 0.116214 0.548632 +vt 0.228336 0.548632 +vt 0.145786 0.164601 +vt 0.033664 0.164601 +vt 0.899526 0.164602 +vt 0.915082 0.260186 +vt 0.787404 0.164602 +vt 0.675282 0.164602 +vt 0.482152 0.164602 +vt 0.257908 0.164602 +vt 0.451038 0.164602 +vt 0.370030 0.164602 +vt 0.370030 0.018107 +vt 0.338916 0.164602 +vt 0.257908 0.018107 +vt 0.563160 0.164602 +vt 0.482152 0.018107 +vt 0.594274 0.164602 +vt 0.594274 0.018107 +vt 0.706396 0.164602 +vt 0.706396 0.018108 +vt 0.818517 0.164602 +vt 0.818518 0.018108 +vt 0.114672 0.164601 +vt 0.033664 0.018107 +vt 0.226794 0.164602 +vt 0.145786 0.018107 +vt 0.695639 0.858230 +vt 0.695639 0.682437 +vt 0.748560 0.711736 +vt 0.249892 0.858230 +vt 0.249978 0.682437 +vt 0.302884 0.711761 +vt 0.339098 0.711735 +vt 0.392020 0.682437 +vt 0.392020 0.858230 +vt 0.873909 0.858230 +vt 0.873909 0.682437 +vt 0.926830 0.711736 +vt 0.659425 0.858230 +vt 0.606504 0.858230 +vt 0.659425 0.711736 +vt 0.481155 0.858230 +vt 0.428234 0.887529 +vt 0.428234 0.858230 +vt 0.517369 0.858230 +vt 0.517369 0.682437 +vt 0.570290 0.711736 +vt 0.784774 0.858230 +vt 0.784774 0.682437 +vt 0.837695 0.711735 +vt 0.065958 0.981893 +vt 0.037928 0.981893 +vt 0.018107 0.962072 +vt 0.018107 0.934042 +vt 0.085779 0.934042 +vt 0.213678 0.820726 +vt 0.156396 0.878008 +vt 0.075388 0.878008 +vt 0.018107 0.739718 +vt 0.075388 0.682437 +vt 0.451038 0.018107 +vt 0.338916 0.018107 +vt 0.563160 0.018107 +vt 0.675282 0.018107 +vt 0.787404 0.018108 +vt 0.899526 0.018108 +vt 0.114672 0.018107 +vt 0.226794 0.018107 +vt 0.748560 0.858230 +vt 0.748560 0.887529 +vt 0.302813 0.858256 +vt 0.302799 0.887554 +vt 0.339098 0.887529 +vt 0.339098 0.858230 +vt 0.926830 0.858230 +vt 0.926830 0.887529 +vt 0.659425 0.887529 +vt 0.606504 0.682437 +vt 0.428234 0.711736 +vt 0.481155 0.682437 +vt 0.570290 0.858230 +vt 0.570290 0.887529 +vt 0.837695 0.858230 +vt 0.837695 0.887529 +vn 0.275700 0.693400 -0.665700 +vn 0.665700 0.693400 -0.275700 +vn 0.665700 0.693400 0.275700 +vn 0.275700 0.693400 0.665700 +vn -0.275700 0.693400 0.665700 +vn -0.665700 0.693400 0.275700 +vn 0.000000 1.000000 -0.000000 +vn -0.275700 0.693400 -0.665700 +vn -0.665700 0.693400 -0.275700 +vn 0.000000 -1.000000 0.000000 +vn -0.923900 0.000000 -0.382700 +vn -0.382700 0.000000 -0.923900 +vn -0.923900 0.000000 0.382700 +vn -0.382700 0.000000 0.923900 +vn 0.382700 0.000000 0.923900 +vn 0.923900 0.000000 0.382700 +vn 0.923900 0.000000 -0.382700 +vn 0.382700 0.000000 -0.923900 +vn -0.844300 0.405900 -0.349700 +vn -0.349700 0.405900 -0.844300 +vn -0.844300 0.405900 0.349700 +vn -0.349700 0.405900 0.844300 +vn 0.349700 0.405900 0.844300 +vn 0.844300 0.405900 0.349700 +vn 0.844300 0.405900 -0.349700 +vn 0.349700 0.405900 -0.844300 +vn 0.351900 -0.392900 -0.849600 +vn 0.849600 -0.392900 -0.351900 +vn 0.849600 -0.392900 0.351900 +vn 0.351900 -0.392900 0.849600 +vn -0.351900 -0.392900 0.849600 +vn -0.849600 -0.392900 0.351900 +vn -0.351900 -0.392900 -0.849600 +vn -0.849600 -0.392900 -0.351900 +vn -0.707100 0.000000 -0.707100 +vn 0.707100 0.000000 0.707100 +vn 0.707100 0.000000 -0.707100 +vn 1.000000 0.000000 -0.000000 +vn 0.000000 0.000000 1.000000 +vn -0.000000 0.000000 -1.000000 +s off +f 2/1/1 4/2/1 26/3/1 +f 4/4/2 6/5/2 27/6/2 +f 6/7/3 8/8/3 28/9/3 +f 28/10/4 8/11/4 10/12/4 +f 10/13/5 12/14/5 30/15/5 +f 12/16/6 14/17/6 31/18/6 +f 12/19/7 10/20/7 6/21/7 +f 32/22/8 16/23/8 2/24/8 +f 14/25/9 16/26/9 32/27/9 +f 7/28/10 13/29/10 15/30/10 +f 23/31/11 24/32/11 39/33/11 +f 24/32/12 17/34/12 40/35/12 +f 22/36/13 23/31/13 38/37/13 +f 21/38/14 22/36/14 37/39/14 +f 20/40/15 21/38/15 36/41/15 +f 19/42/16 20/40/16 35/43/16 +f 18/44/17 19/45/17 34/46/17 +f 17/34/18 18/44/18 33/47/18 +f 31/48/19 32/27/19 24/32/19 +f 32/22/20 25/49/20 17/34/20 +f 22/36/21 30/50/21 31/18/21 +f 21/38/22 29/51/22 30/15/22 +f 28/10/23 29/52/23 21/38/23 +f 27/53/24 28/9/24 20/40/24 +f 26/54/25 27/6/25 19/45/25 +f 17/34/26 25/55/26 26/3/26 +f 40/35/27 33/47/27 41/56/27 +f 33/47/28 34/46/28 42/57/28 +f 42/58/29 34/59/29 35/43/29 +f 43/60/30 35/43/30 36/41/30 +f 44/61/31 36/41/31 37/39/31 +f 37/39/32 38/37/32 46/62/32 +f 39/33/33 40/35/33 48/63/33 +f 46/64/34 38/37/34 39/33/34 +f 46/64/11 47/65/11 15/66/11 +f 47/67/12 48/63/12 1/68/12 +f 45/69/13 46/62/13 13/70/13 +f 44/61/14 45/71/14 11/72/14 +f 43/60/15 44/73/15 9/74/15 +f 42/58/16 43/75/16 7/76/16 +f 41/77/17 42/57/17 5/78/17 +f 48/79/18 41/56/18 3/80/18 +f 51/81/35 49/82/35 3/83/35 +f 52/84/36 50/85/36 11/86/36 +f 15/87/37 61/88/37 63/89/37 +f 58/90/38 56/91/38 9/92/38 +f 46/93/39 69/94/39 13/95/39 +f 57/96/38 59/97/38 48/98/38 +f 70/99/40 68/100/40 5/101/40 +f 64/102/37 62/103/37 7/104/37 +f 25/55/1 2/1/1 26/3/1 +f 26/54/2 4/4/2 27/6/2 +f 27/53/3 6/7/3 28/9/3 +f 29/52/4 28/10/4 10/12/4 +f 29/51/5 10/13/5 30/15/5 +f 30/50/6 12/16/6 31/18/6 +f 6/21/7 4/105/7 2/106/7 +f 2/106/7 16/107/7 6/21/7 +f 14/108/7 12/19/7 6/21/7 +f 10/20/7 8/109/7 6/21/7 +f 6/21/7 16/107/7 14/108/7 +f 25/49/8 32/22/8 2/24/8 +f 31/48/9 14/25/9 32/27/9 +f 15/30/10 1/110/10 7/28/10 +f 3/111/10 5/112/10 7/28/10 +f 7/28/10 9/113/10 11/114/10 +f 11/114/10 13/29/10 7/28/10 +f 1/110/10 3/111/10 7/28/10 +f 38/37/11 23/31/11 39/33/11 +f 39/33/12 24/32/12 40/35/12 +f 37/39/13 22/36/13 38/37/13 +f 36/41/14 21/38/14 37/39/14 +f 35/43/15 20/40/15 36/41/15 +f 34/59/16 19/42/16 35/43/16 +f 33/47/17 18/44/17 34/46/17 +f 40/35/18 17/34/18 33/47/18 +f 23/31/19 31/48/19 24/32/19 +f 24/32/20 32/22/20 17/34/20 +f 23/31/21 22/36/21 31/18/21 +f 22/36/22 21/38/22 30/15/22 +f 20/40/23 28/10/23 21/38/23 +f 19/42/24 27/53/24 20/40/24 +f 18/44/25 26/54/25 19/45/25 +f 18/44/26 17/34/26 26/3/26 +f 48/79/27 40/35/27 41/56/27 +f 41/77/28 33/47/28 42/57/28 +f 43/75/29 42/58/29 35/43/29 +f 44/73/30 43/60/30 36/41/30 +f 45/71/31 44/61/31 37/39/31 +f 45/69/32 37/39/32 46/62/32 +f 47/67/33 39/33/33 48/63/33 +f 47/65/34 46/64/34 39/33/34 +f 13/115/11 46/64/11 15/66/11 +f 15/116/12 47/67/12 1/68/12 +f 11/117/13 45/69/13 13/70/13 +f 9/118/14 44/61/14 11/72/14 +f 7/119/15 43/60/15 9/74/15 +f 5/120/16 42/58/16 7/76/16 +f 3/121/17 41/77/17 5/78/17 +f 1/122/18 48/79/18 3/80/18 +f 3/83/35 41/123/35 51/81/35 +f 53/124/35 51/81/35 41/123/35 +f 11/86/36 45/125/36 52/84/36 +f 54/126/36 52/84/36 45/125/36 +f 63/89/37 65/127/37 47/128/37 +f 47/128/37 15/87/37 63/89/37 +f 9/92/38 44/129/38 58/90/38 +f 60/130/38 58/90/38 44/129/38 +f 46/93/39 71/131/39 69/94/39 +f 67/132/39 13/95/39 69/94/39 +f 48/98/38 1/133/38 57/96/38 +f 55/134/38 57/96/38 1/133/38 +f 5/101/40 42/135/40 70/99/40 +f 72/136/40 70/99/40 42/135/40 +f 7/104/37 43/137/37 64/102/37 +f 66/138/37 64/102/37 43/137/37 diff --git a/assets/hbm/models/bombletTheta.obj b/assets/hbm/models/bombletTheta.obj new file mode 100644 index 000000000..ab9488e42 --- /dev/null +++ b/assets/hbm/models/bombletTheta.obj @@ -0,0 +1,370 @@ +# Blender v2.76 (sub 0) OBJ File: 'bombletTheta.blend' +# www.blender.org +o Cylinder +v -0.000000 -1.331111 -0.270938 +v -0.000000 1.668889 -0.093750 +v 0.191582 -1.331111 -0.191582 +v 0.066291 1.668889 -0.066291 +v 0.270938 -1.331111 0.000000 +v 0.093750 1.668889 0.000000 +v 0.191582 -1.331111 0.191582 +v 0.066291 1.668889 0.066291 +v -0.000000 -1.331111 0.270938 +v -0.000000 1.668889 0.093750 +v -0.191582 -1.331111 0.191582 +v -0.066291 1.668889 0.066291 +v -0.270938 -1.331111 0.000000 +v -0.093750 1.668889 0.000000 +v -0.191582 -1.331111 -0.191582 +v -0.066291 1.668889 -0.066291 +v -0.000000 0.843889 -0.375000 +v 0.265165 0.843889 -0.265165 +v 0.375000 0.843889 0.000000 +v 0.265165 0.843889 0.265165 +v -0.000000 0.843889 0.375000 +v -0.265165 0.843889 0.265165 +v -0.375000 0.843889 0.000000 +v -0.265165 0.843889 -0.265165 +v -0.000000 1.338889 -0.281250 +v 0.198874 1.338889 -0.198874 +v 0.281250 1.338889 0.000000 +v 0.198874 1.338889 0.198874 +v -0.000000 1.338889 0.281250 +v -0.198874 1.338889 0.198874 +v -0.281250 1.338889 0.000000 +v -0.198874 1.338889 -0.198874 +v 0.265165 0.018889 -0.265165 +v 0.375000 0.018889 0.000000 +v 0.265165 0.018889 0.265165 +v -0.000000 0.018889 0.375000 +v -0.265165 0.018889 0.265165 +v -0.375000 0.018889 0.000000 +v -0.265165 0.018889 -0.265165 +v -0.000000 0.018889 -0.375000 +v 0.191582 -0.656111 -0.191582 +v 0.270938 -0.656111 0.000000 +v 0.191582 -0.656111 0.191582 +v -0.000000 -0.656111 0.270938 +v -0.191582 -0.656111 0.191582 +v -0.270938 -0.656111 0.000000 +v -0.191582 -0.656111 -0.191582 +v -0.000000 -0.656111 -0.270938 +v 0.287373 -1.406111 -0.287373 +v -0.287373 -1.406111 0.287373 +v 0.287373 -0.656111 -0.287373 +v -0.287373 -0.656111 0.287373 +v 0.191582 -0.581111 -0.191582 +v -0.191582 -0.581111 0.191582 +v 0.000000 -1.406111 -0.406406 +v -0.000000 -1.406111 0.406406 +v 0.000000 -0.656111 -0.406406 +v -0.000000 -0.656111 0.406406 +v 0.000000 -0.581111 -0.270938 +v -0.000000 -0.581111 0.270938 +v -0.287373 -1.406111 -0.287373 +v 0.287373 -1.406111 0.287373 +v -0.287373 -0.656111 -0.287373 +v 0.287373 -0.656111 0.287373 +v -0.191582 -0.581111 -0.191582 +v 0.191582 -0.581111 0.191582 +v -0.406406 -1.406111 0.000000 +v 0.406406 -1.406111 -0.000000 +v -0.406406 -0.656111 0.000000 +v 0.406406 -0.656111 -0.000000 +v -0.270937 -0.581111 0.000000 +v 0.270938 -0.581111 -0.000000 +vt 0.176237 0.819515 +vt 0.154730 0.931226 +vt 0.133224 0.931226 +vt 0.090210 0.819515 +vt 0.068704 0.931226 +vt 0.047197 0.931226 +vt 0.670890 0.931226 +vt 0.649383 0.931226 +vt 0.627877 0.819515 +vt 0.584863 0.931226 +vt 0.563357 0.931226 +vt 0.541850 0.819515 +vt 0.520343 0.819515 +vt 0.498837 0.931226 +vt 0.477330 0.931226 +vt 0.434317 0.819515 +vt 0.412810 0.931226 +vt 0.391304 0.931226 +vt 0.748231 0.749169 +vt 0.769738 0.749169 +vt 0.784946 0.785883 +vt 0.240757 0.931226 +vt 0.219250 0.931226 +vt 0.197744 0.819515 +vt 0.326784 0.931226 +vt 0.305277 0.931226 +vt 0.283770 0.819515 +vt 0.839128 0.164991 +vt 0.733024 0.121041 +vt 0.776974 0.014937 +vt 0.359044 0.668894 +vt 0.273017 0.668894 +vt 0.273017 0.421616 +vt 0.186990 0.668894 +vt 0.186990 0.421616 +vt 0.445070 0.668894 +vt 0.359043 0.421616 +vt 0.531097 0.668894 +vt 0.445070 0.421616 +vt 0.617123 0.668894 +vt 0.531097 0.421616 +vt 0.703150 0.668894 +vt 0.617123 0.421616 +vt 0.100964 0.668894 +vt 0.014937 0.668894 +vt 0.014937 0.421616 +vt 0.100964 0.421616 +vt 0.348290 0.819515 +vt 0.262264 0.819515 +vt 0.369797 0.819515 +vt 0.455823 0.819515 +vt 0.606370 0.819515 +vt 0.692397 0.819515 +vt 0.025690 0.819515 +vt 0.111717 0.819515 +vt 0.112900 0.217256 +vt 0.026873 0.217256 +vt 0.691213 0.217256 +vt 0.703150 0.421616 +vt 0.605187 0.217256 +vt 0.457006 0.217256 +vt 0.370980 0.217256 +vt 0.198926 0.217256 +vt 0.284953 0.217256 +vt 0.347107 0.217256 +vt 0.284953 0.014937 +vt 0.261081 0.217256 +vt 0.198926 0.014937 +vt 0.433134 0.217256 +vt 0.370979 0.014937 +vt 0.519160 0.217256 +vt 0.457006 0.014937 +vt 0.543033 0.217256 +vt 0.543033 0.014937 +vt 0.629059 0.217256 +vt 0.629059 0.014937 +vt 0.089027 0.217256 +vt 0.026873 0.014937 +vt 0.175054 0.217256 +vt 0.112900 0.014937 +vt 0.873981 0.419663 +vt 0.873980 0.194865 +vt 0.914585 0.217344 +vt 0.873980 0.696815 +vt 0.873980 0.472017 +vt 0.914585 0.494497 +vt 0.733024 0.494497 +vt 0.773628 0.472017 +vt 0.773628 0.696815 +vt 0.944459 0.419663 +vt 0.944459 0.194865 +vt 0.985063 0.217344 +vt 0.844106 0.419663 +vt 0.803502 0.419663 +vt 0.844106 0.217344 +vt 0.773628 0.419663 +vt 0.733024 0.442143 +vt 0.733024 0.419663 +vt 0.944459 0.696815 +vt 0.944459 0.472017 +vt 0.985063 0.494497 +vt 0.803502 0.696815 +vt 0.803502 0.472017 +vt 0.844106 0.494497 +vt 0.769738 0.801091 +vt 0.748231 0.801091 +vt 0.733024 0.785883 +vt 0.733024 0.764377 +vt 0.784946 0.764377 +vt 0.839128 0.014937 +vt 0.883078 0.058887 +vt 0.883078 0.121041 +vt 0.776974 0.164991 +vt 0.733024 0.058887 +vt 0.347107 0.014937 +vt 0.261081 0.014937 +vt 0.433134 0.014937 +vt 0.519160 0.014937 +vt 0.605187 0.014937 +vt 0.691213 0.014937 +vt 0.089027 0.014937 +vt 0.175054 0.014937 +vt 0.914585 0.419663 +vt 0.914585 0.442143 +vt 0.914585 0.696815 +vt 0.914585 0.719295 +vt 0.733024 0.719295 +vt 0.733024 0.696815 +vt 0.985063 0.419663 +vt 0.985063 0.442143 +vt 0.844106 0.442143 +vt 0.803502 0.194865 +vt 0.733024 0.217344 +vt 0.773628 0.194865 +vt 0.985063 0.696815 +vt 0.985063 0.719295 +vt 0.844106 0.696815 +vt 0.844106 0.719295 +vn 0.338800 0.464800 -0.818000 +vn 0.818000 0.464800 -0.338800 +vn 0.818000 0.464800 0.338800 +vn 0.338800 0.464800 0.818000 +vn -0.338800 0.464800 0.818000 +vn -0.818000 0.464800 0.338800 +vn 0.000000 1.000000 0.000000 +vn -0.338800 0.464800 -0.818000 +vn -0.818000 0.464800 -0.338800 +vn 0.000000 -1.000000 0.000000 +vn -0.923900 0.000000 -0.382700 +vn -0.382700 0.000000 -0.923900 +vn -0.923900 0.000000 0.382700 +vn -0.382700 0.000000 0.923900 +vn 0.382700 0.000000 0.923900 +vn 0.923900 0.000000 0.382700 +vn 0.923900 0.000000 -0.382700 +vn 0.382700 0.000000 -0.923900 +vn -0.910100 0.172400 -0.377000 +vn -0.377000 0.172400 -0.910100 +vn -0.910100 0.172400 0.377000 +vn -0.377000 0.172400 0.910100 +vn 0.377000 0.172400 0.910100 +vn 0.910100 0.172400 0.377000 +vn 0.910100 0.172400 -0.377000 +vn 0.377000 0.172400 -0.910100 +vn 0.378900 -0.141000 -0.914600 +vn 0.914600 -0.141000 -0.378900 +vn 0.914600 -0.141000 0.378900 +vn 0.378900 -0.141000 0.914600 +vn -0.378900 -0.141000 0.914600 +vn -0.914600 -0.141000 0.378900 +vn -0.378900 -0.141000 -0.914600 +vn -0.914600 -0.141000 -0.378900 +vn -0.707100 0.000000 -0.707100 +vn 0.707100 0.000000 0.707100 +vn 0.707100 0.000000 -0.707100 +vn 1.000000 0.000000 -0.000000 +vn 0.000000 0.000000 1.000000 +vn -0.000000 0.000000 -1.000000 +s off +f 25/1/1 2/2/1 4/3/1 +f 26/4/2 4/5/2 6/6/2 +f 6/7/3 8/8/3 28/9/3 +f 8/10/4 10/11/4 29/12/4 +f 29/13/5 10/14/5 12/15/5 +f 30/16/6 12/17/6 14/18/6 +f 12/19/7 10/20/7 6/21/7 +f 16/22/8 2/23/8 25/24/8 +f 14/25/9 16/26/9 32/27/9 +f 7/28/10 11/29/10 15/30/10 +f 23/31/11 24/32/11 39/33/11 +f 24/32/12 17/34/12 40/35/12 +f 22/36/13 23/31/13 38/37/13 +f 21/38/14 22/36/14 37/39/14 +f 20/40/15 21/38/15 36/41/15 +f 19/42/16 20/40/16 35/43/16 +f 18/44/17 19/45/17 34/46/17 +f 17/34/18 18/44/18 33/47/18 +f 31/48/19 32/27/19 24/32/19 +f 32/49/20 25/24/20 17/34/20 +f 30/16/21 31/50/21 23/31/21 +f 29/13/22 30/51/22 22/36/22 +f 28/52/23 29/12/23 21/38/23 +f 27/53/24 28/9/24 20/40/24 +f 26/4/25 27/54/25 19/45/25 +f 25/1/26 26/55/26 18/44/26 +f 40/35/27 33/47/27 41/56/27 +f 33/47/28 34/46/28 42/57/28 +f 42/58/29 34/59/29 35/43/29 +f 43/60/30 35/43/30 36/41/30 +f 36/41/31 37/39/31 45/61/31 +f 37/39/32 38/37/32 46/62/32 +f 39/33/33 40/35/33 48/63/33 +f 38/37/34 39/33/34 47/64/34 +f 46/65/11 47/64/11 15/66/11 +f 47/67/12 48/63/12 1/68/12 +f 45/69/13 46/62/13 13/70/13 +f 44/71/14 45/61/14 11/72/14 +f 43/60/15 44/73/15 9/74/15 +f 42/58/16 43/75/16 7/76/16 +f 41/77/17 42/57/17 5/78/17 +f 48/79/18 41/56/18 3/80/18 +f 51/81/35 49/82/35 3/83/35 +f 52/84/36 50/85/36 11/86/36 +f 15/87/37 61/88/37 63/89/37 +f 58/90/38 56/91/38 9/92/38 +f 46/93/39 69/94/39 13/95/39 +f 57/96/38 59/97/38 48/98/38 +f 70/99/40 68/100/40 5/101/40 +f 64/102/37 62/103/37 7/104/37 +f 26/55/1 25/1/1 4/3/1 +f 27/54/2 26/4/2 6/6/2 +f 27/53/3 6/7/3 28/9/3 +f 28/52/4 8/10/4 29/12/4 +f 30/51/5 29/13/5 12/15/5 +f 31/50/6 30/16/6 14/18/6 +f 6/21/7 4/105/7 2/106/7 +f 2/106/7 16/107/7 6/21/7 +f 14/108/7 12/19/7 6/21/7 +f 10/20/7 8/109/7 6/21/7 +f 6/21/7 16/107/7 14/108/7 +f 32/49/8 16/22/8 25/24/8 +f 31/48/9 14/25/9 32/27/9 +f 15/30/10 1/110/10 3/111/10 +f 3/111/10 5/112/10 15/30/10 +f 7/28/10 9/113/10 11/29/10 +f 11/29/10 13/114/10 15/30/10 +f 15/30/10 5/112/10 7/28/10 +f 38/37/11 23/31/11 39/33/11 +f 39/33/12 24/32/12 40/35/12 +f 37/39/13 22/36/13 38/37/13 +f 36/41/14 21/38/14 37/39/14 +f 35/43/15 20/40/15 36/41/15 +f 34/59/16 19/42/16 35/43/16 +f 33/47/17 18/44/17 34/46/17 +f 40/35/18 17/34/18 33/47/18 +f 23/31/19 31/48/19 24/32/19 +f 24/32/20 32/49/20 17/34/20 +f 22/36/21 30/16/21 23/31/21 +f 21/38/22 29/13/22 22/36/22 +f 20/40/23 28/52/23 21/38/23 +f 19/42/24 27/53/24 20/40/24 +f 18/44/25 26/4/25 19/45/25 +f 17/34/26 25/1/26 18/44/26 +f 48/79/27 40/35/27 41/56/27 +f 41/77/28 33/47/28 42/57/28 +f 43/75/29 42/58/29 35/43/29 +f 44/73/30 43/60/30 36/41/30 +f 44/71/31 36/41/31 45/61/31 +f 45/69/32 37/39/32 46/62/32 +f 47/67/33 39/33/33 48/63/33 +f 46/65/34 38/37/34 47/64/34 +f 13/115/11 46/65/11 15/66/11 +f 15/116/12 47/67/12 1/68/12 +f 11/117/13 45/69/13 13/70/13 +f 9/118/14 44/71/14 11/72/14 +f 7/119/15 43/60/15 9/74/15 +f 5/120/16 42/58/16 7/76/16 +f 3/121/17 41/77/17 5/78/17 +f 1/122/18 48/79/18 3/80/18 +f 3/83/35 41/123/35 51/81/35 +f 53/124/35 51/81/35 41/123/35 +f 11/86/36 45/125/36 52/84/36 +f 54/126/36 52/84/36 45/125/36 +f 63/89/37 65/127/37 47/128/37 +f 47/128/37 15/87/37 63/89/37 +f 9/92/38 44/129/38 58/90/38 +f 60/130/38 58/90/38 44/129/38 +f 46/93/39 71/131/39 69/94/39 +f 67/132/39 13/95/39 69/94/39 +f 48/98/38 1/133/38 57/96/38 +f 55/134/38 57/96/38 1/133/38 +f 5/101/40 42/135/40 70/99/40 +f 72/136/40 70/99/40 42/135/40 +f 7/104/37 43/137/37 64/102/37 +f 66/138/37 64/102/37 43/137/37 diff --git a/assets/hbm/models/missileDoomsday.obj b/assets/hbm/models/missileDoomsday.obj new file mode 100644 index 000000000..f29f428b3 --- /dev/null +++ b/assets/hbm/models/missileDoomsday.obj @@ -0,0 +1,698 @@ +# Blender v2.76 (sub 0) OBJ File: 'missileDoomsday.blend' +# www.blender.org +o Cylinder_Cylinder.002 +v 0.000000 0.500000 -0.500000 +v -0.000000 6.000000 -0.075000 +v 0.250000 0.500000 -0.433013 +v 0.037500 6.000000 -0.064952 +v 0.433013 0.500000 -0.250000 +v 0.064952 6.000000 -0.037500 +v 0.500000 0.500000 0.000000 +v 0.075000 6.000000 0.000000 +v 0.433013 0.500000 0.250000 +v 0.064952 6.000000 0.037500 +v 0.250000 0.500000 0.433013 +v 0.037500 6.000000 0.064952 +v 0.000000 0.500000 0.500000 +v 0.000000 6.000000 0.075000 +v -0.250000 0.500000 0.433013 +v -0.037500 6.000000 0.064952 +v -0.433013 0.500000 0.250000 +v -0.064952 6.000000 0.037500 +v -0.500000 0.500000 0.000000 +v -0.075000 6.000000 0.000000 +v -0.433013 0.500000 -0.250000 +v -0.064952 6.000000 -0.037500 +v -0.250000 0.500000 -0.433013 +v -0.037500 6.000000 -0.064952 +v 0.000000 3.000000 -0.500000 +v 0.250000 3.000000 -0.433013 +v 0.433013 3.000000 -0.250000 +v 0.500000 3.000000 0.000000 +v 0.433013 3.000000 0.250000 +v 0.250000 3.000000 0.433013 +v 0.000000 3.000000 0.500000 +v -0.250000 3.000000 0.433013 +v -0.433013 3.000000 0.250000 +v -0.500000 3.000000 0.000000 +v -0.433013 3.000000 -0.250000 +v -0.250000 3.000000 -0.433013 +v 0.000000 4.500000 -0.500000 +v 0.250000 4.500000 -0.433013 +v 0.433013 4.500000 -0.250000 +v 0.500000 4.500000 0.000000 +v 0.433013 4.500000 0.250000 +v 0.250000 4.500000 0.433013 +v 0.000000 4.500000 0.500000 +v -0.250000 4.500000 0.433013 +v -0.433013 4.500000 0.250000 +v -0.500000 4.500000 0.000000 +v -0.433013 4.500000 -0.250000 +v -0.250000 4.500000 -0.433013 +v -0.000000 5.250000 -0.400000 +v 0.200000 5.250000 -0.346410 +v 0.346410 5.250000 -0.200000 +v 0.400000 5.250000 0.000000 +v 0.346410 5.250000 0.200000 +v 0.200000 5.250000 0.346410 +v 0.000000 5.250000 0.400000 +v -0.200000 5.250000 0.346410 +v -0.346410 5.250000 0.200000 +v -0.400000 5.250000 0.000000 +v -0.346410 5.250000 -0.200000 +v -0.200000 5.250000 -0.346410 +v -0.000000 5.825000 -0.250000 +v 0.125000 5.825000 -0.216506 +v 0.216506 5.825000 -0.125000 +v 0.250000 5.825000 0.000000 +v 0.216506 5.825000 0.125000 +v 0.125000 5.825000 0.216506 +v 0.000000 5.825000 0.250000 +v -0.125000 5.825000 0.216506 +v -0.216506 5.825000 0.125000 +v -0.250000 5.825000 0.000000 +v -0.216506 5.825000 -0.125000 +v -0.125000 5.825000 -0.216506 +v 0.250000 0.500000 -0.375000 +v 0.161612 0.500000 -0.338388 +v 0.125000 0.500000 -0.250000 +v 0.161612 0.500000 -0.161612 +v 0.250000 0.500000 -0.125000 +v 0.338388 0.500000 -0.161612 +v 0.375000 0.500000 -0.250000 +v 0.338388 0.500000 -0.338388 +v 0.073223 0.000000 -0.426777 +v 0.250000 0.000000 -0.500000 +v 0.000000 0.000000 -0.250000 +v 0.073223 0.000000 -0.073223 +v 0.250000 0.000000 0.000000 +v 0.426777 0.000000 -0.073223 +v 0.500000 0.000000 -0.250000 +v 0.426777 0.000000 -0.426777 +v -0.250000 0.500000 -0.375000 +v -0.338388 0.500000 -0.338388 +v -0.375000 0.500000 -0.250000 +v -0.338388 0.500000 -0.161612 +v -0.250000 0.500000 -0.125000 +v -0.161612 0.500000 -0.161612 +v -0.125000 0.500000 -0.250000 +v -0.161612 0.500000 -0.338388 +v -0.426777 0.000000 -0.426777 +v -0.250000 0.000000 -0.500000 +v -0.500000 0.000000 -0.250000 +v -0.426777 0.000000 -0.073223 +v -0.250000 0.000000 0.000000 +v -0.073223 0.000000 -0.073223 +v 0.000000 0.000000 -0.250000 +v -0.073223 0.000000 -0.426777 +v -0.250000 0.500000 0.125000 +v -0.338388 0.500000 0.161612 +v -0.375000 0.500000 0.250000 +v -0.338388 0.500000 0.338388 +v -0.250000 0.500000 0.375000 +v -0.161612 0.500000 0.338388 +v -0.125000 0.500000 0.250000 +v -0.161612 0.500000 0.161612 +v -0.426777 0.000000 0.073223 +v -0.250000 0.000000 0.000000 +v -0.500000 0.000000 0.250000 +v -0.426777 0.000000 0.426777 +v -0.250000 0.000000 0.500000 +v -0.073223 0.000000 0.426777 +v 0.000000 0.000000 0.250000 +v -0.073223 0.000000 0.073223 +v 0.250000 0.500000 0.125000 +v 0.161612 0.500000 0.161612 +v 0.125000 0.500000 0.250000 +v 0.161612 0.500000 0.338388 +v 0.250000 0.500000 0.375000 +v 0.338388 0.500000 0.338388 +v 0.375000 0.500000 0.250000 +v 0.338388 0.500000 0.161612 +v 0.073223 0.000000 0.073223 +v 0.250000 0.000000 0.000000 +v 0.000000 0.000000 0.250000 +v 0.073223 0.000000 0.426777 +v 0.250000 0.000000 0.500000 +v 0.426777 0.000000 0.426777 +v 0.500000 0.000000 0.250000 +v 0.426777 0.000000 0.073223 +v -0.000000 0.250000 -0.750000 +v 0.750000 0.250000 -0.000000 +v 0.000000 0.250000 0.750000 +v -0.750000 0.250000 0.000000 +v -0.000000 2.750000 -0.750000 +v 0.750000 2.750000 -0.000000 +v 0.000000 2.750000 0.750000 +v -0.750000 2.750000 0.000000 +vt 0.236482 0.807753 +vt 0.229780 0.843753 +vt 0.224036 0.843753 +vt 0.198187 0.807753 +vt 0.191485 0.843753 +vt 0.185741 0.843753 +vt 0.153190 0.843753 +vt 0.147446 0.843753 +vt 0.140744 0.807753 +vt 0.121596 0.807753 +vt 0.114895 0.843753 +vt 0.109151 0.843753 +vt 0.076600 0.843753 +vt 0.070855 0.843753 +vt 0.064154 0.807753 +vt 0.038304 0.843753 +vt 0.032560 0.843753 +vt 0.025859 0.807752 +vt 0.459551 0.843752 +vt 0.453807 0.843753 +vt 0.447105 0.807752 +vt 0.421256 0.843752 +vt 0.415512 0.843752 +vt 0.408810 0.807752 +vt 0.382961 0.843752 +vt 0.377217 0.843752 +vt 0.370515 0.807752 +vt 0.351367 0.807752 +vt 0.344666 0.843752 +vt 0.338922 0.843752 +vt 0.511269 0.605874 +vt 0.516243 0.587308 +vt 0.521988 0.608746 +vt 0.268076 0.843752 +vt 0.262331 0.843752 +vt 0.255630 0.807752 +vt 0.306371 0.843753 +vt 0.300626 0.843753 +vt 0.293925 0.807753 +vt 0.800919 0.677915 +vt 0.658000 0.639620 +vt 0.710312 0.587308 +vt 0.322645 0.386187 +vt 0.284350 0.386187 +vt 0.284350 0.016285 +vt 0.246055 0.386187 +vt 0.246055 0.016285 +vt 0.360941 0.386187 +vt 0.322645 0.016285 +vt 0.399236 0.386187 +vt 0.360940 0.016285 +vt 0.437531 0.386187 +vt 0.399235 0.016285 +vt 0.475826 0.386187 +vt 0.437529 0.016285 +vt 0.054580 0.386187 +vt 0.016285 0.386187 +vt 0.016285 0.016286 +vt 0.092875 0.386187 +vt 0.054580 0.016286 +vt 0.131170 0.386187 +vt 0.092875 0.016286 +vt 0.169465 0.386187 +vt 0.131170 0.016286 +vt 0.207760 0.386187 +vt 0.169465 0.016286 +vt 0.207760 0.016286 +vt 0.322646 0.608128 +vt 0.284351 0.608128 +vt 0.246056 0.608128 +vt 0.360941 0.608128 +vt 0.399236 0.608128 +vt 0.437531 0.608128 +vt 0.475826 0.608128 +vt 0.054580 0.608128 +vt 0.016285 0.608128 +vt 0.092875 0.608128 +vt 0.131170 0.608128 +vt 0.169465 0.608128 +vt 0.207761 0.608128 +vt 0.318816 0.720016 +vt 0.288180 0.720016 +vt 0.280521 0.720016 +vt 0.249885 0.720016 +vt 0.357112 0.720015 +vt 0.326476 0.720016 +vt 0.395407 0.720015 +vt 0.364771 0.720015 +vt 0.433702 0.720015 +vt 0.403066 0.720015 +vt 0.471997 0.720015 +vt 0.441361 0.720015 +vt 0.050751 0.720016 +vt 0.020114 0.720016 +vt 0.089046 0.720016 +vt 0.058410 0.720016 +vt 0.127341 0.720016 +vt 0.096705 0.720016 +vt 0.165636 0.720016 +vt 0.135000 0.720016 +vt 0.203931 0.720016 +vt 0.173295 0.720016 +vt 0.242226 0.720016 +vt 0.211590 0.720016 +vt 0.313072 0.807753 +vt 0.274777 0.807752 +vt 0.332220 0.807752 +vt 0.389663 0.807752 +vt 0.427958 0.807752 +vt 0.466253 0.807752 +vt 0.045006 0.807752 +vt 0.083301 0.807753 +vt 0.102449 0.807753 +vt 0.159892 0.807753 +vt 0.179039 0.807753 +vt 0.217334 0.807753 +vt 0.726349 0.321816 +vt 0.726349 0.350127 +vt 0.678019 0.370146 +vt 0.726349 0.036304 +vt 0.726349 0.064615 +vt 0.678019 0.084634 +vt 0.757037 0.145006 +vt 0.690356 0.108008 +vt 0.706330 0.084634 +vt 0.748152 0.171758 +vt 0.672586 0.161512 +vt 0.678977 0.133932 +vt 0.747560 0.185901 +vt 0.671403 0.189798 +vt 0.749593 0.199910 +vt 0.754179 0.213301 +vt 0.684641 0.244600 +vt 0.775033 0.123309 +vt 0.765024 0.133319 +vt 0.751348 0.157968 +vt 0.675468 0.217816 +vt 0.761162 0.225615 +vt 0.698607 0.269226 +vt 0.765024 0.418830 +vt 0.757037 0.430517 +vt 0.690356 0.393520 +vt 0.748152 0.457269 +vt 0.672586 0.447024 +vt 0.678977 0.419443 +vt 0.747560 0.471413 +vt 0.671403 0.475310 +vt 0.749593 0.485421 +vt 0.754179 0.498813 +vt 0.684641 0.530111 +vt 0.706330 0.370146 +vt 0.751348 0.443479 +vt 0.675468 0.503328 +vt 0.761162 0.511126 +vt 0.698607 0.554738 +vt 0.576745 0.321816 +vt 0.576745 0.350127 +vt 0.528416 0.370146 +vt 0.615420 0.418830 +vt 0.607433 0.430517 +vt 0.540753 0.393520 +vt 0.598549 0.457269 +vt 0.522983 0.447024 +vt 0.529374 0.419444 +vt 0.597957 0.471412 +vt 0.521799 0.475310 +vt 0.599989 0.485421 +vt 0.604576 0.498813 +vt 0.535038 0.530111 +vt 0.625430 0.408821 +vt 0.556727 0.370146 +vt 0.601744 0.443479 +vt 0.525864 0.503328 +vt 0.611559 0.511126 +vt 0.549004 0.554738 +vt 0.576745 0.036304 +vt 0.576745 0.064615 +vt 0.528416 0.084634 +vt 0.607433 0.145006 +vt 0.540753 0.108008 +vt 0.556727 0.084634 +vt 0.598549 0.171758 +vt 0.522983 0.161512 +vt 0.529374 0.133932 +vt 0.597957 0.185901 +vt 0.521799 0.189799 +vt 0.599989 0.199910 +vt 0.604576 0.213301 +vt 0.535038 0.244600 +vt 0.625430 0.123309 +vt 0.615420 0.133319 +vt 0.601744 0.157967 +vt 0.525864 0.217816 +vt 0.611559 0.225615 +vt 0.549004 0.269226 +vt 0.844594 0.386187 +vt 0.807604 0.423177 +vt 0.807604 0.053275 +vt 0.877164 0.386187 +vt 0.877164 0.016285 +vt 0.914154 0.053275 +vt 0.946725 0.386187 +vt 0.946725 0.016285 +vt 0.983715 0.053275 +vt 0.877164 0.825649 +vt 0.877164 0.455747 +vt 0.914154 0.492737 +vt 0.529834 0.600899 +vt 0.526962 0.605874 +vt 0.516243 0.608746 +vt 0.508397 0.600899 +vt 0.508397 0.595155 +vt 0.511269 0.590180 +vt 0.521988 0.587308 +vt 0.526962 0.590180 +vt 0.529834 0.595155 +vt 0.748607 0.587308 +vt 0.781772 0.606456 +vt 0.800919 0.639620 +vt 0.781772 0.711080 +vt 0.748607 0.730227 +vt 0.710312 0.730227 +vt 0.677148 0.711080 +vt 0.658000 0.677915 +vt 0.677148 0.606456 +vt 0.475824 0.016285 +vt 0.658000 0.350127 +vt 0.658000 0.321816 +vt 0.678019 0.301797 +vt 0.706330 0.301797 +vt 0.658000 0.064615 +vt 0.658000 0.036304 +vt 0.678019 0.016285 +vt 0.706330 0.016285 +vt 0.775033 0.408821 +vt 0.508397 0.350127 +vt 0.508397 0.321816 +vt 0.528416 0.301797 +vt 0.556727 0.301797 +vt 0.508397 0.064615 +vt 0.508397 0.036304 +vt 0.528416 0.016285 +vt 0.556727 0.016285 +vt 0.844594 0.016285 +vt 0.914154 0.423177 +vt 0.983715 0.423177 +vt 0.914154 0.862639 +vn 0.186200 0.694700 -0.694700 +vn 0.508600 0.694700 -0.508600 +vn 0.694700 0.694700 -0.186100 +vn 0.694700 0.694700 0.186100 +vn 0.508600 0.694700 0.508600 +vn 0.186200 0.694700 0.694700 +vn -0.186200 0.694700 0.694800 +vn -0.508600 0.694700 0.508600 +vn -0.694700 0.694700 0.186100 +vn -0.694700 0.694700 -0.186200 +vn 0.000000 1.000000 -0.000000 +vn -0.186200 0.694700 -0.694700 +vn -0.508600 0.694700 -0.508600 +vn 0.000000 -1.000000 0.000000 +vn -0.707100 0.000000 -0.707100 +vn -0.258800 0.000000 -0.965900 +vn -0.965900 0.000000 -0.258800 +vn -0.965900 0.000000 0.258800 +vn -0.707100 0.000000 0.707100 +vn -0.258800 0.000000 0.965900 +vn 0.258800 0.000000 0.965900 +vn 0.707100 0.000000 0.707100 +vn 0.965900 0.000000 0.258800 +vn 0.965900 0.000000 -0.258800 +vn 0.707100 0.000000 -0.707100 +vn 0.258800 0.000000 -0.965900 +vn -0.701300 0.127700 -0.701300 +vn -0.256700 0.127700 -0.958000 +vn -0.958000 0.127700 -0.256700 +vn -0.958000 0.127700 0.256700 +vn -0.701300 0.127700 0.701300 +vn -0.256700 0.127700 0.958000 +vn 0.256700 0.127700 0.958000 +vn 0.701300 0.127700 0.701300 +vn 0.958000 0.127700 0.256700 +vn 0.958000 0.127700 -0.256700 +vn 0.701300 0.127700 -0.701300 +vn 0.256700 0.127700 -0.958000 +vn -0.685700 0.244300 -0.685700 +vn -0.251000 0.244300 -0.936600 +vn -0.936600 0.244300 -0.251000 +vn -0.936600 0.244300 0.251000 +vn -0.685700 0.244300 0.685700 +vn -0.251000 0.244300 0.936600 +vn 0.251000 0.244300 0.936600 +vn 0.685700 0.244300 0.685700 +vn 0.936600 0.244300 0.251000 +vn 0.936600 0.244300 -0.251000 +vn 0.685700 0.244300 -0.685700 +vn 0.251000 0.244300 -0.936600 +vn -0.900200 0.225000 0.372900 +vn -0.372900 0.225000 -0.900200 +vn 0.372900 0.225000 -0.900200 +vn 0.900200 0.225000 0.372900 +vn -0.372900 0.225000 0.900200 +vn -0.900200 0.225000 -0.372900 +vn 0.900200 0.225000 -0.372900 +vn 0.372900 0.225000 0.900200 +vn 1.000000 0.000000 -0.000000 +vn 0.000000 0.000000 1.000000 +vn -0.000000 0.000000 -1.000000 +vn 0.694700 0.694700 -0.186200 +vn 0.694700 0.694700 0.186200 +vn -0.186200 0.694700 0.694700 +vn -0.694700 0.694700 0.186200 +vn 0.000000 1.000000 -0.000100 +vn 0.000000 1.000000 0.000100 +s off +f 61/1/1 2/2/1 4/3/1 +f 62/4/2 4/5/2 6/6/2 +f 6/7/3 8/8/3 64/9/3 +f 64/10/4 8/11/4 10/12/4 +f 10/13/5 12/14/5 66/15/5 +f 12/16/6 14/17/6 67/18/6 +f 14/19/7 16/20/7 68/21/7 +f 16/22/8 18/23/8 69/24/8 +f 18/25/9 20/26/9 70/27/9 +f 70/28/10 20/29/10 22/30/10 +f 22/31/11 14/32/11 2/33/11 +f 24/34/12 2/35/12 61/36/12 +f 22/37/13 24/38/13 72/39/13 +f 7/40/14 19/41/14 23/42/14 +f 35/43/15 36/44/15 23/45/15 +f 36/44/16 25/46/16 1/47/16 +f 34/48/17 35/43/17 21/49/17 +f 33/50/18 34/48/18 19/51/18 +f 32/52/19 33/50/19 17/53/19 +f 31/54/20 32/52/20 15/55/20 +f 30/56/21 31/57/21 13/58/21 +f 29/59/22 30/56/22 11/60/22 +f 28/61/23 29/59/23 9/62/23 +f 27/63/24 28/61/24 7/64/24 +f 26/65/25 27/63/25 5/66/25 +f 25/46/26 26/65/26 3/67/26 +f 47/68/15 48/69/15 36/44/15 +f 48/69/16 37/70/16 25/46/16 +f 46/71/17 47/68/17 35/43/17 +f 45/72/18 46/71/18 34/48/18 +f 44/73/19 45/72/19 33/50/19 +f 43/74/20 44/73/20 32/52/20 +f 42/75/21 43/76/21 31/57/21 +f 41/77/22 42/75/22 30/56/22 +f 40/78/23 41/77/23 29/59/23 +f 39/79/24 40/78/24 28/61/24 +f 38/80/25 39/79/25 27/63/25 +f 37/70/26 38/80/26 26/65/26 +f 47/68/27 59/81/27 60/82/27 +f 60/83/28 49/84/28 37/70/28 +f 58/85/29 59/86/29 47/68/29 +f 57/87/30 58/88/30 46/71/30 +f 44/73/31 56/89/31 57/90/31 +f 43/74/32 55/91/32 56/92/32 +f 54/93/33 55/94/33 43/76/33 +f 53/95/34 54/96/34 42/75/34 +f 40/78/35 52/97/35 53/98/35 +f 51/99/36 52/100/36 40/78/36 +f 50/101/37 51/102/37 39/79/37 +f 37/70/38 49/103/38 50/104/38 +f 59/81/39 71/105/39 72/39/39 +f 72/106/40 61/36/40 49/84/40 +f 70/28/41 71/107/41 59/86/41 +f 57/87/42 69/108/42 70/27/42 +f 68/109/43 69/24/43 57/90/43 +f 55/91/44 67/110/44 68/21/44 +f 66/111/45 67/18/45 55/94/45 +f 53/95/46 65/112/46 66/15/46 +f 64/10/47 65/113/47 53/98/47 +f 51/99/48 63/114/48 64/9/48 +f 62/4/49 63/115/49 51/102/49 +f 49/103/50 61/1/50 62/116/50 +f 102/117/14 101/118/14 99/119/14 +f 86/120/14 85/121/14 83/122/14 +f 75/123/51 83/124/51 84/125/51 +f 73/126/52 82/127/52 81/128/52 +f 73/126/53 80/129/53 88/130/53 +f 79/131/54 78/132/54 86/133/54 +f 77/134/55 76/135/55 84/125/55 +f 74/136/56 81/128/56 83/124/56 +f 79/131/57 87/137/57 88/130/57 +f 78/132/58 77/138/58 85/139/58 +f 92/140/51 91/141/51 99/142/51 +f 89/143/52 98/144/52 97/145/52 +f 96/146/53 104/147/53 98/144/53 +f 95/148/54 94/149/54 102/150/54 +f 92/140/55 100/151/55 101/118/55 +f 90/152/56 97/145/56 99/142/56 +f 95/148/57 103/153/57 104/147/57 +f 94/149/58 93/154/58 101/155/58 +f 118/156/14 117/157/14 115/158/14 +f 108/159/51 107/160/51 115/161/51 +f 105/162/52 114/163/52 113/164/52 +f 112/165/53 120/166/53 114/163/53 +f 111/167/54 110/168/54 118/169/54 +f 109/170/55 108/159/55 116/171/55 +f 106/172/56 113/164/56 115/161/56 +f 111/167/57 119/173/57 120/166/57 +f 110/168/58 109/174/58 117/175/58 +f 134/176/14 133/177/14 131/178/14 +f 123/179/51 131/180/51 132/181/51 +f 121/182/52 130/183/52 129/184/52 +f 128/185/53 136/186/53 130/183/53 +f 127/187/54 126/188/54 134/189/54 +f 125/190/55 124/191/55 132/181/55 +f 123/179/56 122/192/56 129/184/56 +f 127/187/57 135/193/57 136/186/57 +f 126/188/58 125/194/58 133/195/58 +f 141/196/59 25/197/59 1/198/59 +f 144/199/60 140/200/60 19/201/60 +f 143/202/59 139/203/59 13/204/59 +f 142/205/61 138/206/61 7/207/61 +f 62/116/1 61/1/1 4/3/1 +f 63/115/2 62/4/2 6/6/2 +f 63/114/62 6/7/62 64/9/62 +f 65/113/63 64/10/63 10/12/63 +f 65/112/5 10/13/5 66/15/5 +f 66/111/6 12/16/6 67/18/6 +f 67/110/64 14/19/64 68/21/64 +f 68/109/8 16/22/8 69/24/8 +f 69/108/65 18/25/65 70/27/65 +f 71/107/10 70/28/10 22/30/10 +f 6/208/66 4/209/66 2/33/66 +f 2/33/67 24/210/67 22/31/67 +f 22/31/11 20/211/11 18/212/11 +f 18/212/11 16/213/11 14/32/11 +f 14/32/11 12/214/11 10/215/11 +f 10/215/11 8/216/11 14/32/11 +f 6/208/11 2/33/11 14/32/11 +f 22/31/11 18/212/11 14/32/11 +f 14/32/11 8/216/11 6/208/11 +f 72/106/12 24/34/12 61/36/12 +f 71/105/13 22/37/13 72/39/13 +f 23/42/14 1/217/14 3/218/14 +f 3/218/14 5/219/14 7/40/14 +f 7/40/14 9/220/14 11/221/14 +f 11/221/14 13/222/14 15/223/14 +f 15/223/14 17/224/14 19/41/14 +f 19/41/14 21/225/14 23/42/14 +f 23/42/14 3/218/14 7/40/14 +f 7/40/14 11/221/14 15/223/14 +f 15/223/14 19/41/14 7/40/14 +f 21/49/15 35/43/15 23/45/15 +f 23/45/16 36/44/16 1/47/16 +f 19/51/17 34/48/17 21/49/17 +f 17/53/18 33/50/18 19/51/18 +f 15/55/19 32/52/19 17/53/19 +f 13/226/20 31/54/20 15/55/20 +f 11/60/21 30/56/21 13/58/21 +f 9/62/22 29/59/22 11/60/22 +f 7/64/23 28/61/23 9/62/23 +f 5/66/24 27/63/24 7/64/24 +f 3/67/25 26/65/25 5/66/25 +f 1/47/26 25/46/26 3/67/26 +f 35/43/15 47/68/15 36/44/15 +f 36/44/16 48/69/16 25/46/16 +f 34/48/17 46/71/17 35/43/17 +f 33/50/18 45/72/18 34/48/18 +f 32/52/19 44/73/19 33/50/19 +f 31/54/20 43/74/20 32/52/20 +f 30/56/21 42/75/21 31/57/21 +f 29/59/22 41/77/22 30/56/22 +f 28/61/23 40/78/23 29/59/23 +f 27/63/24 39/79/24 28/61/24 +f 26/65/25 38/80/25 27/63/25 +f 25/46/26 37/70/26 26/65/26 +f 48/69/27 47/68/27 60/82/27 +f 48/69/28 60/83/28 37/70/28 +f 46/71/29 58/85/29 47/68/29 +f 45/72/30 57/87/30 46/71/30 +f 45/72/31 44/73/31 57/90/31 +f 44/73/32 43/74/32 56/92/32 +f 42/75/33 54/93/33 43/76/33 +f 41/77/34 53/95/34 42/75/34 +f 41/77/35 40/78/35 53/98/35 +f 39/79/36 51/99/36 40/78/36 +f 38/80/37 50/101/37 39/79/37 +f 38/80/38 37/70/38 50/104/38 +f 60/82/39 59/81/39 72/39/39 +f 60/83/40 72/106/40 49/84/40 +f 58/85/41 70/28/41 59/86/41 +f 58/88/42 57/87/42 70/27/42 +f 56/89/43 68/109/43 57/90/43 +f 56/92/44 55/91/44 68/21/44 +f 54/93/45 66/111/45 55/94/45 +f 54/96/46 53/95/46 66/15/46 +f 52/97/47 64/10/47 53/98/47 +f 52/100/48 51/99/48 64/9/48 +f 50/101/49 62/4/49 51/102/49 +f 50/104/50 49/103/50 62/116/50 +f 99/119/14 97/227/14 98/228/14 +f 98/228/14 104/229/14 99/119/14 +f 103/230/14 102/117/14 99/119/14 +f 101/118/14 100/151/14 99/119/14 +f 99/119/14 104/229/14 103/230/14 +f 83/122/14 81/231/14 82/232/14 +f 82/232/14 88/233/14 83/122/14 +f 87/234/14 86/120/14 83/122/14 +f 85/121/14 84/125/14 83/122/14 +f 83/122/14 88/233/14 87/234/14 +f 76/135/51 75/123/51 84/125/51 +f 74/136/52 73/126/52 81/128/52 +f 82/127/53 73/126/53 88/130/53 +f 87/137/54 79/131/54 86/133/54 +f 85/121/55 77/134/55 84/125/55 +f 75/123/56 74/136/56 83/124/56 +f 80/129/57 79/131/57 88/130/57 +f 86/133/58 78/132/58 85/139/58 +f 100/151/51 92/140/51 99/142/51 +f 90/152/52 89/143/52 97/145/52 +f 89/143/53 96/146/53 98/144/53 +f 103/153/54 95/148/54 102/150/54 +f 93/235/55 92/140/55 101/118/55 +f 91/141/56 90/152/56 99/142/56 +f 96/146/57 95/148/57 104/147/57 +f 102/150/58 94/149/58 101/155/58 +f 115/158/14 113/236/14 114/237/14 +f 114/237/14 120/238/14 115/158/14 +f 119/239/14 118/156/14 115/158/14 +f 117/157/14 116/171/14 115/158/14 +f 115/158/14 120/238/14 119/239/14 +f 116/171/51 108/159/51 115/161/51 +f 106/172/52 105/162/52 113/164/52 +f 105/162/53 112/165/53 114/163/53 +f 119/173/54 111/167/54 118/169/54 +f 117/157/55 109/170/55 116/171/55 +f 107/160/56 106/172/56 115/161/56 +f 112/165/57 111/167/57 120/166/57 +f 118/169/58 110/168/58 117/175/58 +f 131/178/14 129/240/14 130/241/14 +f 130/241/14 136/242/14 131/178/14 +f 135/243/14 134/176/14 131/178/14 +f 133/177/14 132/181/14 131/178/14 +f 131/178/14 136/242/14 135/243/14 +f 124/191/51 123/179/51 132/181/51 +f 122/192/52 121/182/52 129/184/52 +f 121/182/53 128/185/53 130/183/53 +f 135/193/54 127/187/54 134/189/54 +f 133/177/55 125/190/55 132/181/55 +f 131/180/56 123/179/56 129/184/56 +f 128/185/57 127/187/57 136/186/57 +f 134/189/58 126/188/58 133/195/58 +f 137/244/59 141/196/59 1/198/59 +f 34/245/60 144/199/60 19/201/60 +f 31/246/59 143/202/59 13/204/59 +f 28/247/61 142/205/61 7/207/61 diff --git a/com/hbm/blocks/bomb/LaunchPad.java b/com/hbm/blocks/bomb/LaunchPad.java index 7ee6daf74..32b02c94a 100644 --- a/com/hbm/blocks/bomb/LaunchPad.java +++ b/com/hbm/blocks/bomb/LaunchPad.java @@ -9,6 +9,7 @@ import com.hbm.entity.missile.EntityMissileBurst; import com.hbm.entity.missile.EntityMissileBusterStrong; import com.hbm.entity.missile.EntityMissileCluster; import com.hbm.entity.missile.EntityMissileClusterStrong; +import com.hbm.entity.missile.EntityMissileDoomsday; import com.hbm.entity.missile.EntityMissileDrill; import com.hbm.entity.missile.EntityMissileEndo; import com.hbm.entity.missile.EntityMissileExo; @@ -219,7 +220,8 @@ public class LaunchPad extends BlockContainer implements IBomb { if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_generic && entity.power >= 75000) { - EntityMissileGeneric missile = new EntityMissileGeneric(p_149695_1_, xCoord, zCoord, x + 0.5F, y + 2F, z + 0.5F); + //EntityMissileGeneric missile = new EntityMissileGeneric(p_149695_1_, xCoord, zCoord, x + 0.5F, y + 2F, z + 0.5F); + EntityMissileGeneric missile = new EntityMissileGeneric(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); p_149695_1_.spawnEntityInWorld(missile); entity.power -= 75000; @@ -246,7 +248,7 @@ public class LaunchPad extends BlockContainer implements IBomb { } if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_cluster && entity.power >= 75000) { - EntityMissileCluster missile = new EntityMissileCluster(p_149695_1_, xCoord, zCoord, x + 0.5F, y + 2F, z + 0.5F); + EntityMissileCluster missile = new EntityMissileCluster(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); p_149695_1_.spawnEntityInWorld(missile); entity.power -= 75000; @@ -376,6 +378,15 @@ public class LaunchPad extends BlockContainer implements IBomb { p_149695_1_.spawnEntityInWorld(missile); entity.power -= 75000; + entity.slots[0] = null; + p_149695_1_.playSoundEffect(x, y, z, "hbm:weapon.missileTakeOff", 2.0F, 1.0F); + } + if(entity.slots[0] != null && entity.slots[0].getItem() == ModItems.missile_doomsday && entity.power >= 75000) + { + EntityMissileDoomsday missile = new EntityMissileDoomsday(p_149695_1_, x + 0.5F, y + 2F, z + 0.5F, xCoord, zCoord); + p_149695_1_.spawnEntityInWorld(missile); + entity.power -= 75000; + entity.slots[0] = null; p_149695_1_.playSoundEffect(x, y, z, "hbm:weapon.missileTakeOff", 2.0F, 1.0F); } diff --git a/com/hbm/entity/missile/EntityBombletTheta.java b/com/hbm/entity/missile/EntityBombletTheta.java new file mode 100644 index 000000000..cc83f65bb --- /dev/null +++ b/com/hbm/entity/missile/EntityBombletTheta.java @@ -0,0 +1,112 @@ +package com.hbm.entity.missile; + +import com.hbm.entity.effect.EntityNukeCloudSmall; +import com.hbm.entity.logic.EntityNukeExplosionAdvanced; +import com.hbm.entity.particle.EntitySSmokeFX; +import com.hbm.entity.particle.EntitySmokeFX; +import com.hbm.main.MainRegistry; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.entity.projectile.EntityThrowable; +import net.minecraft.init.Blocks; +import net.minecraft.util.MathHelper; +import net.minecraft.util.MovingObjectPosition; +import net.minecraft.util.Vec3; +import net.minecraft.world.World; + +public class EntityBombletTheta extends EntityThrowable { + + double decelY = 0.1D; + double accelXZ = 0.1D; + + public EntityBombletTheta(World p_i1582_1_) { + super(p_i1582_1_); + this.ignoreFrustumCheck = true; + } + + @Override + public void onUpdate() { + this.prevPosX = this.posX; + this.prevPosY = this.posY; + this.prevPosZ = this.posZ; + + this.posX += this.motionX; + this.posY += this.motionY; + this.posZ += this.motionZ; + + Vec3 vector = Vec3.createVectorHelper(motionX, 0, motionZ); + vector = vector.normalize(); + vector.xCoord *= accelXZ; + vector.zCoord *= accelXZ; + this.motionY -= decelY; + this.motionX -= vector.xCoord; + this.motionZ -= vector.zCoord; + + this.rotation(); + + if(this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.air) + { + if(!this.worldObj.isRemote) + { + /*EntityNukeExplosionAdvanced entity = new EntityNukeExplosionAdvanced(this.worldObj); + entity.posX = this.posX; + entity.posY = this.posY; + entity.posZ = this.posZ; + entity.destructionRange = MainRegistry.mirvRadius; + entity.speed = 25; + entity.coefficient = 10.0F; + + this.worldObj.spawnEntityInWorld(entity); + + EntityNukeCloudSmall entity2 = new EntityNukeCloudSmall(this.worldObj, 1000); + entity2.posX = this.posX; + entity2.posY = this.posY - 9; + entity2.posZ = this.posZ; + this.worldObj.spawnEntityInWorld(entity2);*/ + } + this.setDead(); + } + + if(!this.worldObj.isRemote) + this.worldObj.spawnEntityInWorld(new EntitySSmokeFX(this.worldObj, this.posX, this.posY, this.posZ, 0.0, 0.0, 0.0)); + } + + protected void rotation() { + float f2 = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionZ * this.motionZ); + this.rotationYaw = (float)(Math.atan2(this.motionX, this.motionZ) * 180.0D / Math.PI); + + for (this.rotationPitch = (float)(Math.atan2(this.motionY, f2) * 180.0D / Math.PI) - 90; this.rotationPitch - this.prevRotationPitch < -180.0F; this.prevRotationPitch -= 360.0F) + { + ; + } + + while (this.rotationPitch - this.prevRotationPitch >= 180.0F) + { + this.prevRotationPitch += 360.0F; + } + + while (this.rotationYaw - this.prevRotationYaw < -180.0F) + { + this.prevRotationYaw -= 360.0F; + } + + while (this.rotationYaw - this.prevRotationYaw >= 180.0F) + { + this.prevRotationYaw += 360.0F; + } + } + + @Override + protected void onImpact(MovingObjectPosition p_70184_1_) { + + } + + @Override + @SideOnly(Side.CLIENT) + public boolean isInRangeToRenderDist(double distance) + { + return distance < 25000; + } + +} diff --git a/com/hbm/entity/missile/EntityMissileBase.java b/com/hbm/entity/missile/EntityMissileBase.java index 683290d67..66d076d6c 100644 --- a/com/hbm/entity/missile/EntityMissileBase.java +++ b/com/hbm/entity/missile/EntityMissileBase.java @@ -231,7 +231,7 @@ public class EntityMissileBase extends EntityThrowable { { this.worldObj.createExplosion(this, this.posX, this.posY, this.posZ, 5.0F, true); } - this.setDead(); + this.setDead(); } } diff --git a/com/hbm/entity/missile/EntityMissileBaseAdvanced.java b/com/hbm/entity/missile/EntityMissileBaseAdvanced.java new file mode 100644 index 000000000..6c0632eed --- /dev/null +++ b/com/hbm/entity/missile/EntityMissileBaseAdvanced.java @@ -0,0 +1,156 @@ +package com.hbm.entity.missile; + +import com.hbm.entity.particle.EntitySmokeFX; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.entity.Entity; +import net.minecraft.init.Blocks; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.MathHelper; +import net.minecraft.util.Vec3; +import net.minecraft.world.World; + +public abstract class EntityMissileBaseAdvanced extends Entity { + + int startX; + int startZ; + int targetX; + int targetZ; + double decelY; + double accelXZ; + boolean isCluster = false; + + public EntityMissileBaseAdvanced(World p_i1582_1_) { + super(p_i1582_1_); + this.ignoreFrustumCheck = true; + } + + public EntityMissileBaseAdvanced(World world, float x, float y, float z, int a, int b) { + super(world); + this.ignoreFrustumCheck = true; + this.posX = x; + this.posY = y; + this.posZ = z; + startX = (int) x; + startZ = (int) z; + targetX = a; + targetZ = b; + this.motionY = 1.5; + + Vec3 vector = Vec3.createVectorHelper(targetX - startX, 0, targetZ - startZ); + accelXZ = decelY = 1/vector.lengthVector(); + decelY *= 1.5; + } + + @Override + protected void entityInit() { + + } + + @Override + protected void readEntityFromNBT(NBTTagCompound nbt) { + super.readFromNBT(nbt); + decelY = nbt.getDouble("decel"); + accelXZ = nbt.getDouble("accel"); + targetX = nbt.getInteger("tX"); + targetZ = nbt.getInteger("tZ"); + startX = nbt.getInteger("sX"); + startZ = nbt.getInteger("sZ"); + } + + @Override + protected void writeEntityToNBT(NBTTagCompound nbt) { + super.writeToNBT(nbt); + nbt.setDouble("decel", decelY); + nbt.setDouble("accel", accelXZ); + nbt.setInteger("tX", targetX); + nbt.setInteger("tZ", targetZ); + nbt.setInteger("sX", startX); + nbt.setInteger("sZ", startZ); + } + + protected void rotation() { + float f2 = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionZ * this.motionZ); + this.rotationYaw = (float)(Math.atan2(this.motionX, this.motionZ) * 180.0D / Math.PI); + + for (this.rotationPitch = (float)(Math.atan2(this.motionY, f2) * 180.0D / Math.PI) - 90; this.rotationPitch - this.prevRotationPitch < -180.0F; this.prevRotationPitch -= 360.0F) + { + ; + } + + while (this.rotationPitch - this.prevRotationPitch >= 180.0F) + { + this.prevRotationPitch += 360.0F; + } + + while (this.rotationYaw - this.prevRotationYaw < -180.0F) + { + this.prevRotationYaw -= 360.0F; + } + + while (this.rotationYaw - this.prevRotationYaw >= 180.0F) + { + this.prevRotationYaw += 360.0F; + } + } + + @Override + public void onUpdate() + { + super.onUpdate(); + this.posX += this.motionX; + this.posY += this.motionY; + this.posZ += this.motionZ; + + this.rotation(); + + this.motionY -= decelY; + + Vec3 vector = Vec3.createVectorHelper(targetX - startX, 0, targetZ - startZ); + vector = vector.normalize(); + vector.xCoord *= accelXZ; + vector.zCoord *= accelXZ; + + if(motionY > 0) { + motionX += vector.xCoord; + motionZ += vector.zCoord; + } + + if(motionY < 0) { + motionX -= vector.xCoord; + motionZ -= vector.zCoord; + } + + if(!this.worldObj.isRemote) + this.worldObj.spawnEntityInWorld(new EntitySmokeFX(this.worldObj, this.posX, this.posY, this.posZ, 0.0, 0.0, 0.0)); + + if(this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.air && + this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.water && + this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.flowing_water) { + + if(!this.worldObj.isRemote) + { + onImpact(); + } + this.setDead(); + } + + if(motionY < -1 && this.isCluster && !worldObj.isRemote) { + cluster(); + this.setDead(); + } + } + + @Override + @SideOnly(Side.CLIENT) + public boolean isInRangeToRenderDist(double distance) + { + return distance < 25000; + } + + public abstract void onImpact(); + + public void cluster() { } + +} diff --git a/com/hbm/entity/missile/EntityMissileCluster.java b/com/hbm/entity/missile/EntityMissileCluster.java index daa5faa12..55aa48aa3 100644 --- a/com/hbm/entity/missile/EntityMissileCluster.java +++ b/com/hbm/entity/missile/EntityMissileCluster.java @@ -6,144 +6,25 @@ import com.hbm.explosion.ExplosionChaos; import net.minecraft.init.Blocks; import net.minecraft.world.World; -public class EntityMissileCluster extends EntityMissileBase { +public class EntityMissileCluster extends EntityMissileBaseAdvanced { public EntityMissileCluster(World p_i1582_1_) { super(p_i1582_1_); } - public EntityMissileCluster(World p_i1582_1_, int x, int z, double a, double b, double c) { - super(p_i1582_1_, x, z, a, b, c); + public EntityMissileCluster(World world, float x, float y, float z, int a, int b) { + super(world, x, y, z, a, b); + this.isCluster = true; + } + + @Override + public void onImpact() { + this.worldObj.createExplosion(this, this.posX, this.posY, this.posZ, 5F, true); + ExplosionChaos.cluster(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 25, 100); } @Override - public void onUpdate() - { - - this.posX += this.motionX; - this.posY += this.motionY; - this.posZ += this.motionZ; - - this.rotation(); - - switch(phase) - { - case 0: - if(loc0 != null) - { - freePizzaGoddammit(loc0); - if(loc0.posX + 2 > this.posX && loc0.posX - 2 < this.posX && - loc0.posY + 2 > this.posY && loc0.posY - 2 < this.posY && - loc0.posZ + 2 > this.posZ && loc0.posZ - 2 < this.posZ) - { - this.phase = 1; - } - } - break; - case 1: - if(loc1 != null) - { - freePizzaGoddammit(loc1); - if(loc1.posX + 2 > this.posX && loc1.posX - 2 < this.posX && - loc1.posY + 2 > this.posY && loc1.posY - 2 < this.posY && - loc1.posZ + 2 > this.posZ && loc1.posZ - 2 < this.posZ) - { - this.phase = 2; - } - } - break; - case 2: - if(loc2 != null) - { - freePizzaGoddammit(loc2); - if(loc2.posX + 2 > this.posX && loc2.posX - 2 < this.posX && - loc2.posY + 2 > this.posY && loc2.posY - 2 < this.posY && - loc2.posZ + 2 > this.posZ && loc2.posZ - 2 < this.posZ) - { - this.phase = 3; - } - } - break; - case 3: - if(loc3 != null) - { - freePizzaGoddammit(loc3); - if(loc3.posX + 2 > this.posX && loc3.posX - 2 < this.posX && - loc3.posY + 2 > this.posY && loc3.posY - 2 < this.posY && - loc3.posZ + 2 > this.posZ && loc3.posZ - 2 < this.posZ) - { - this.phase = 4; - } - } - break; - case 4: - if(loc4 != null) - { - freePizzaGoddammit(loc4); - if(loc4.posX + 2 > this.posX && loc4.posX - 2 < this.posX && - loc4.posY + 2 > this.posY && loc4.posY - 2 < this.posY && - loc4.posZ + 2 > this.posZ && loc4.posZ - 2 < this.posZ) - { - this.phase = 5; - } - } - break; - case 5: - if(loc5 != null) - { - freePizzaGoddammit(loc5); - if(loc5.posX + 2 > this.posX && loc5.posX - 2 < this.posX && - loc5.posY + 2 > this.posY && loc5.posY - 2 < this.posY && - loc5.posZ + 2 > this.posZ && loc5.posZ - 2 < this.posZ) - { - this.phase = 6; - } - } - break; - case 6: - if(loc6 != null) - { - freePizzaGoddammit(loc6); - if(loc6.posX + 2 > this.posX && loc6.posX - 2 < this.posX && - loc6.posY + 2 > this.posY && loc6.posY - 2 < this.posY && - loc6.posZ + 2 > this.posZ && loc6.posZ - 2 < this.posZ) - { - this.phase = 7; - } - } - break; - case 7: - if(loc7 != null) - { - freePizzaGoddammit(loc7); - if(loc7.posX + 2 > this.posX && loc7.posX - 2 < this.posX && - loc7.posY + 2 > this.posY && loc7.posY - 2 < this.posY && - loc7.posZ + 2 > this.posZ && loc7.posZ - 2 < this.posZ) - { - this.phase = 8; - } - } - break; - case 8: - if(target != null) - { - this.worldObj.createExplosion(this, this.posX, this.posY, this.posZ, 5F, true); - ExplosionChaos.cluster(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 25, 100); - this.setDead(); - } - break; - } - - this.worldObj.spawnEntityInWorld(new EntitySmokeFX(this.worldObj, this.posX, this.posY, this.posZ, 0.0, 0.0, 0.0)); - - if(this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.air && this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.water && this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.flowing_water) - { - if(!this.worldObj.isRemote) - { - this.worldObj.createExplosion(this, this.posX, this.posY, this.posZ, 5F, true); - ExplosionChaos.cluster(this.worldObj, (int)this.posX, (int)this.posY, (int)this.posZ, 25, 100); - } - this.setDead(); - } - } + public void cluster() { + this.onImpact(); + } } diff --git a/com/hbm/entity/missile/EntityMissileDoomsday.java b/com/hbm/entity/missile/EntityMissileDoomsday.java new file mode 100644 index 000000000..adfa89f0f --- /dev/null +++ b/com/hbm/entity/missile/EntityMissileDoomsday.java @@ -0,0 +1,236 @@ +package com.hbm.entity.missile; + +import com.hbm.entity.particle.EntitySmokeFX; +import com.hbm.explosion.ExplosionLarge; + +import net.minecraft.init.Blocks; +import net.minecraft.world.World; + +public class EntityMissileDoomsday extends EntityMissileBaseAdvanced { + + public EntityMissileDoomsday(World p_i1582_1_) { + super(p_i1582_1_); + } + + public EntityMissileDoomsday(World world, float x, float y, float z, int a, int b) { + super(world, x, y, z, a, b); + } + + @Override + public void onImpact() { + ExplosionLarge.explode(worldObj, posX, posY, posZ, 10.0F, true, true, true); + } + + public void onUpdate() { + super.onUpdate(); + if(motionY <= 0) { + if(!worldObj.isRemote) { + this.setDead(); + EntityBombletTheta bomblet1 = new EntityBombletTheta(worldObj); + EntityBombletTheta bomblet2 = new EntityBombletTheta(worldObj); + EntityBombletTheta bomblet3 = new EntityBombletTheta(worldObj); + EntityBombletTheta bomblet4 = new EntityBombletTheta(worldObj); + EntityBombletTheta bomblet5 = new EntityBombletTheta(worldObj); + EntityBombletTheta bomblet6 = new EntityBombletTheta(worldObj); + bomblet1.motionX = this.motionX * (rand.nextFloat() + 0.5F); + bomblet1.motionY = this.motionY * (rand.nextFloat() + 0.5F); + bomblet1.motionZ = this.motionZ * (rand.nextFloat() + 0.5F); + bomblet2.motionX = this.motionX * (rand.nextFloat() + 0.5F); + bomblet2.motionY = this.motionY * (rand.nextFloat() + 0.5F); + bomblet2.motionZ = this.motionZ * (rand.nextFloat() + 0.5F); + bomblet3.motionX = this.motionX * (rand.nextFloat() + 0.5F); + bomblet3.motionY = this.motionY * (rand.nextFloat() + 0.5F); + bomblet3.motionZ = this.motionZ * (rand.nextFloat() + 0.5F); + bomblet4.motionX = this.motionX * (rand.nextFloat() + 0.5F); + bomblet4.motionY = this.motionY * (rand.nextFloat() + 0.5F); + bomblet4.motionZ = this.motionZ * (rand.nextFloat() + 0.5F); + bomblet5.motionX = this.motionX * (rand.nextFloat() + 0.5F); + bomblet5.motionY = this.motionY * (rand.nextFloat() + 0.5F); + bomblet5.motionZ = this.motionZ * (rand.nextFloat() + 0.5F); + bomblet6.motionX = this.motionX * (rand.nextFloat() + 0.5F); + bomblet6.motionY = this.motionY * (rand.nextFloat() + 0.5F); + bomblet6.motionZ = this.motionZ * (rand.nextFloat() + 0.5F); + bomblet1.posX = this.posX; + bomblet1.posY = this.posY; + bomblet1.posZ = this.posZ; + bomblet2.posX = this.posX; + bomblet2.posY = this.posY; + bomblet2.posZ = this.posZ; + bomblet3.posX = this.posX; + bomblet3.posY = this.posY; + bomblet3.posZ = this.posZ; + bomblet4.posX = this.posX; + bomblet4.posY = this.posY; + bomblet4.posZ = this.posZ; + bomblet5.posX = this.posX; + bomblet5.posY = this.posY; + bomblet5.posZ = this.posZ; + bomblet6.posX = this.posX; + bomblet6.posY = this.posY; + bomblet6.posZ = this.posZ; + + bomblet1.decelY = this.decelY; + bomblet2.decelY = this.decelY; + bomblet3.decelY = this.decelY; + bomblet4.decelY = this.decelY; + bomblet5.decelY = this.decelY; + bomblet6.decelY = this.decelY; + bomblet1.accelXZ = this.accelXZ; + bomblet2.accelXZ = this.accelXZ; + bomblet3.accelXZ = this.accelXZ; + bomblet4.accelXZ = this.accelXZ; + bomblet5.accelXZ = this.accelXZ; + bomblet6.accelXZ = this.accelXZ; + worldObj.spawnEntityInWorld(bomblet1); + worldObj.spawnEntityInWorld(bomblet2); + worldObj.spawnEntityInWorld(bomblet3); + worldObj.spawnEntityInWorld(bomblet4); + worldObj.spawnEntityInWorld(bomblet5); + worldObj.spawnEntityInWorld(bomblet6); + } + } + } + + /*public EntityMissileGeneric(World p_i1582_1_) { + super(p_i1582_1_); + } + + public EntityMissileGeneric(World p_i1582_1_, int x, int z, double a, double b, double c) { + super(p_i1582_1_, x, z, a, b, c); + } + + @Override + public void onUpdate() + { + + this.posX += this.motionX; + this.posY += this.motionY; + this.posZ += this.motionZ; + + this.rotation(); + + switch(phase) + { + case 0: + if(loc0 != null) + { + freePizzaGoddammit(loc0); + if(loc0.posX + 2 > this.posX && loc0.posX - 2 < this.posX && + loc0.posY + 2 > this.posY && loc0.posY - 2 < this.posY && + loc0.posZ + 2 > this.posZ && loc0.posZ - 2 < this.posZ) + { + this.phase = 1; + } + } + break; + case 1: + if(loc1 != null) + { + freePizzaGoddammit(loc1); + if(loc1.posX + 2 > this.posX && loc1.posX - 2 < this.posX && + loc1.posY + 2 > this.posY && loc1.posY - 2 < this.posY && + loc1.posZ + 2 > this.posZ && loc1.posZ - 2 < this.posZ) + { + this.phase = 2; + } + } + break; + case 2: + if(loc2 != null) + { + freePizzaGoddammit(loc2); + if(loc2.posX + 2 > this.posX && loc2.posX - 2 < this.posX && + loc2.posY + 2 > this.posY && loc2.posY - 2 < this.posY && + loc2.posZ + 2 > this.posZ && loc2.posZ - 2 < this.posZ) + { + this.phase = 3; + } + } + break; + case 3: + if(loc3 != null) + { + freePizzaGoddammit(loc3); + if(loc3.posX + 2 > this.posX && loc3.posX - 2 < this.posX && + loc3.posY + 2 > this.posY && loc3.posY - 2 < this.posY && + loc3.posZ + 2 > this.posZ && loc3.posZ - 2 < this.posZ) + { + this.phase = 4; + } + } + break; + case 4: + if(loc4 != null) + { + freePizzaGoddammit(loc4); + if(loc4.posX + 2 > this.posX && loc4.posX - 2 < this.posX && + loc4.posY + 2 > this.posY && loc4.posY - 2 < this.posY && + loc4.posZ + 2 > this.posZ && loc4.posZ - 2 < this.posZ) + { + this.phase = 5; + } + } + break; + case 5: + if(loc5 != null) + { + freePizzaGoddammit(loc5); + if(loc5.posX + 2 > this.posX && loc5.posX - 2 < this.posX && + loc5.posY + 2 > this.posY && loc5.posY - 2 < this.posY && + loc5.posZ + 2 > this.posZ && loc5.posZ - 2 < this.posZ) + { + this.phase = 6; + } + } + break; + case 6: + if(loc6 != null) + { + freePizzaGoddammit(loc6); + if(loc6.posX + 2 > this.posX && loc6.posX - 2 < this.posX && + loc6.posY + 2 > this.posY && loc6.posY - 2 < this.posY && + loc6.posZ + 2 > this.posZ && loc6.posZ - 2 < this.posZ) + { + this.phase = 7; + } + } + break; + case 7: + if(loc7 != null) + { + freePizzaGoddammit(loc7); + if(loc7.posX + 2 > this.posX && loc7.posX - 2 < this.posX && + loc7.posY + 2 > this.posY && loc7.posY - 2 < this.posY && + loc7.posZ + 2 > this.posZ && loc7.posZ - 2 < this.posZ) + { + this.phase = 8; + } + } + break; + case 8: + if(target != null) + { + freePizzaGoddammit(target); + if(target.posX + 2 > this.posX && target.posX - 2 < this.posX && + target.posY + 2 > this.posY && target.posY - 2 < this.posY && + target.posZ + 2 > this.posZ && target.posZ - 2 < this.posZ) + { + this.phase = -1; + } + } + break; + } + + this.worldObj.spawnEntityInWorld(new EntitySmokeFX(this.worldObj, this.posX, this.posY, this.posZ, 0.0, 0.0, 0.0)); + + if(this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.air && this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.water && this.worldObj.getBlock((int)this.posX, (int)this.posY, (int)this.posZ) != Blocks.flowing_water) + { + if(!this.worldObj.isRemote) + { + ExplosionLarge.explode(worldObj, posX, posY, posZ, 10.0F, true, true, true); + } + this.setDead(); + } + }*/ + +} diff --git a/com/hbm/entity/missile/EntityMissileGeneric.java b/com/hbm/entity/missile/EntityMissileGeneric.java index f840bd8b7..9f9b80154 100644 --- a/com/hbm/entity/missile/EntityMissileGeneric.java +++ b/com/hbm/entity/missile/EntityMissileGeneric.java @@ -6,11 +6,24 @@ import com.hbm.explosion.ExplosionLarge; import net.minecraft.init.Blocks; import net.minecraft.world.World; -public class EntityMissileGeneric extends EntityMissileBase { +public class EntityMissileGeneric extends EntityMissileBaseAdvanced { public EntityMissileGeneric(World p_i1582_1_) { super(p_i1582_1_); } + + public EntityMissileGeneric(World world, float x, float y, float z, int a, int b) { + super(world, x, y, z, a, b); + } + + @Override + public void onImpact() { + ExplosionLarge.explode(worldObj, posX, posY, posZ, 10.0F, true, true, true); + } + + /*public EntityMissileGeneric(World p_i1582_1_) { + super(p_i1582_1_); + } public EntityMissileGeneric(World p_i1582_1_, int x, int z, double a, double b, double c) { super(p_i1582_1_, x, z, a, b, c); @@ -148,6 +161,6 @@ public class EntityMissileGeneric extends EntityMissileBase { } this.setDead(); } - } + }*/ } diff --git a/com/hbm/handler/FluidTypeHandler.java b/com/hbm/handler/FluidTypeHandler.java index 81d103610..ee6ccf1d0 100644 --- a/com/hbm/handler/FluidTypeHandler.java +++ b/com/hbm/handler/FluidTypeHandler.java @@ -4,23 +4,42 @@ public class FluidTypeHandler { public enum FluidType { NONE (0x888888, 8947848, 0, 1, "hbmfluid.none"), + WATER (0x3333FF, 3355647, 1, 1, "hbmfluid.water"), COOLANT (0xd8fcff, 14220543, 2, 1, "hbmfluid.coolant"), + LAVA (0xFF3300, 16724736, 3, 1, "hbmfluid.lava"), + DEUTERIUM (0x0000FF, 255, 4, 1, "hbmfluid.deuterium"), TRITIUM (0x000099, 153, 5, 1, "hbmfluid.tritium"), + OIL (0x020202, 131586, 6, 1, "hbmfluid.oil"), + + HEAVYOIL (0x141312, 1315602, 2, 2, "hbmfluid.heavyoil"), + BITUMEN (0x1f2426, 2040870, 3, 2, "hbmfluid.bitumen"), SMEAR (0x190f01, 1642241, 7, 1, "hbmfluid.smear"), + HEATINGOIL (0x211806, 2168838, 4, 2, "hbmfluid.heatingoil"), + RECLAIMED (0x332b22, 3353378, 8, 1, "hbmfluid.reclaimed"), PETROIL (0x44413d, 4473149, 9, 1, "hbmfluid.petroil"), + LUBRICANT (0x606060, 6316128, 10, 1, "hbmfluid.lubricant"), + + NAPHTHA (0x595744, 5855044, 5, 2, "hbmfluid.naphtha"), DIESEL (0xf2eed5, 15920853, 11, 1, "hbmfluid.diesel"), + + LIGHTOIL (0x8c7451, 9204817, 6, 2, "hbmfluid.lightoil"), KEROSENE (0xffa5d2, 16754130, 12, 1, "hbmfluid.kerosene"), + GAS (0xfffeed, 16776941, 13, 1, "hbmfluid.gas"), + PETROLEUM (0x7cb7c9, 8173513, 7, 2, "hbmfluid.petroleum"), + UF6 (0xD1CEBE, 13749950, 14, 1, "hbmfluid.uf6"), PUF6 (0x4C4C4C, 5000268, 15, 1, "hbmfluid.puf6"), + AMAT (0x010101, 65793, 0, 2, "hbmfluid.amat"), ASCHRAB (0xb50000, 11862016, 1, 2, "hbmfluid.aschrab"); + private int color; private int msa; diff --git a/com/hbm/inventory/FluidTank.java b/com/hbm/inventory/FluidTank.java index 9290ecdae..244e6b51e 100644 --- a/com/hbm/inventory/FluidTank.java +++ b/com/hbm/inventory/FluidTank.java @@ -69,6 +69,11 @@ public class FluidTank { FluidType inType = FluidType.NONE; if(slots[in] != null) { inType = FluidContainerRegistry.getFluidType(slots[in]); + + if(FluidContainerRegistry.getFluidContent(slots[in], type) <= 0) + return; + } else { + return; } if(slots[in] != null && inType.name().equals(type.name()) && fluid + FluidContainerRegistry.getFluidContent(slots[in], type) <= maxFluid) { diff --git a/com/hbm/items/ModItems.java b/com/hbm/items/ModItems.java index d00a43f07..95ea7ed35 100644 --- a/com/hbm/items/ModItems.java +++ b/com/hbm/items/ModItems.java @@ -526,6 +526,7 @@ public class ModItems { public static Item missile_nuclear_cluster; public static Item missile_endo; public static Item missile_exo; + public static Item missile_doomsday; public static Item gun_rpg; public static Item gun_rpg_ammo; @@ -1445,6 +1446,7 @@ public class ModItems { missile_nuclear_cluster = new Item().setUnlocalizedName("missile_nuclear_cluster").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":missile_nuclear_cluster"); missile_endo = new Item().setUnlocalizedName("missile_endo").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":missile_endo"); missile_exo = new Item().setUnlocalizedName("missile_exo").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":missile_exo"); + missile_doomsday = new Item().setUnlocalizedName("missile_doomsday").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":missile_doomsday"); gun_rpg = new GunRpg().setUnlocalizedName("gun_rpg").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_rpg_new"); gun_rpg_ammo = new Item().setUnlocalizedName("gun_rpg_ammo").setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":gun_rpg_ammo_new"); @@ -2455,6 +2457,7 @@ public class ModItems { GameRegistry.registerItem(missile_nuclear_cluster, missile_nuclear_cluster.getUnlocalizedName()); GameRegistry.registerItem(missile_endo, missile_endo.getUnlocalizedName()); GameRegistry.registerItem(missile_exo, missile_exo.getUnlocalizedName()); + GameRegistry.registerItem(missile_doomsday, missile_doomsday.getUnlocalizedName()); //Guns GameRegistry.registerItem(gun_revolver_iron, gun_revolver_iron.getUnlocalizedName()); diff --git a/com/hbm/items/tool/ItemAssemblyTemplate.java b/com/hbm/items/tool/ItemAssemblyTemplate.java index a02cc17ce..c4d38dd1a 100644 --- a/com/hbm/items/tool/ItemAssemblyTemplate.java +++ b/com/hbm/items/tool/ItemAssemblyTemplate.java @@ -6,9 +6,11 @@ import com.hbm.inventory.MachineRecipes; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.entity.EntityList; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraft.util.StatCollector; public class ItemAssemblyTemplate extends Item { @@ -55,11 +57,18 @@ public class ItemAssemblyTemplate extends Item { this.setMaxDamage(0); } - @Override - public String getUnlocalizedName(ItemStack stack) + public String getItemStackDisplayName(ItemStack stack) { - int i = stack.getItemDamage(); - return super.getUnlocalizedName() + "." + EnumAssemblyTemplate.getEnum(i).getName(); + String s = ("" + StatCollector.translateToLocal(this.getUnlocalizedName() + ".name")).trim(); + ItemStack out = MachineRecipes.getOutputFromTempate(stack); + String s1 = ("" + StatCollector.translateToLocal((out != null ? out.getUnlocalizedName() : "") + ".name")).trim(); + + if (s1 != null) + { + s = s + " " + s1; + } + + return s; } @Override diff --git a/com/hbm/main/ClientProxy.java b/com/hbm/main/ClientProxy.java index 9b825979d..588b98c29 100644 --- a/com/hbm/main/ClientProxy.java +++ b/com/hbm/main/ClientProxy.java @@ -35,6 +35,7 @@ import com.hbm.entity.grenade.EntityGrenadeStrong; import com.hbm.entity.grenade.EntityGrenadeTau; import com.hbm.entity.grenade.EntityGrenadeZOMG; import com.hbm.entity.item.EntityMinecartTest; +import com.hbm.entity.missile.EntityBombletTheta; import com.hbm.entity.missile.EntityMIRV; import com.hbm.entity.missile.EntityMissileAntiBallistic; import com.hbm.entity.missile.EntityMissileBunkerBuster; @@ -42,6 +43,7 @@ import com.hbm.entity.missile.EntityMissileBurst; import com.hbm.entity.missile.EntityMissileBusterStrong; import com.hbm.entity.missile.EntityMissileCluster; import com.hbm.entity.missile.EntityMissileClusterStrong; +import com.hbm.entity.missile.EntityMissileDoomsday; import com.hbm.entity.missile.EntityMissileDrill; import com.hbm.entity.missile.EntityMissileEndo; import com.hbm.entity.missile.EntityMissileExo; @@ -98,6 +100,7 @@ import com.hbm.render.entity.RenderBeam3; import com.hbm.render.entity.RenderBeam4; import com.hbm.render.entity.RenderBigNuke; import com.hbm.render.entity.RenderBlackHole; +import com.hbm.render.entity.RenderBombletTheta; import com.hbm.render.entity.RenderChopperMine; import com.hbm.render.entity.RenderCloudFleija; import com.hbm.render.entity.RenderCyberCrab; @@ -112,6 +115,7 @@ import com.hbm.render.entity.RenderMinecartTest; import com.hbm.render.entity.RenderMiniMIRV; import com.hbm.render.entity.RenderMiniNuke; import com.hbm.render.entity.RenderMirv; +import com.hbm.render.entity.RenderMissileDoomsday; import com.hbm.render.entity.RenderMissileGeneric; import com.hbm.render.entity.RenderMissileHuge; import com.hbm.render.entity.RenderMissileMirv; @@ -440,6 +444,8 @@ public class ClientProxy extends ServerProxy RenderingRegistry.registerEntityRenderingHandler(EntityMissileNuclear.class, new RenderMissileNuclear()); RenderingRegistry.registerEntityRenderingHandler(EntityMissileMirv.class, new RenderMissileMirv()); RenderingRegistry.registerEntityRenderingHandler(EntityMIRV.class, new RenderMirv()); + RenderingRegistry.registerEntityRenderingHandler(EntityMissileDoomsday.class, new RenderMissileDoomsday()); + RenderingRegistry.registerEntityRenderingHandler(EntityBombletTheta.class, new RenderBombletTheta()); RenderingRegistry.registerEntityRenderingHandler(EntityMissileEndo.class, new RenderMissileThermo()); RenderingRegistry.registerEntityRenderingHandler(EntityMissileExo.class, new RenderMissileThermo()); diff --git a/com/hbm/main/MainRegistry.java b/com/hbm/main/MainRegistry.java index f6a3f90ca..f8f911bab 100644 --- a/com/hbm/main/MainRegistry.java +++ b/com/hbm/main/MainRegistry.java @@ -63,6 +63,7 @@ import com.hbm.entity.item.EntityMinecartTest; import com.hbm.entity.logic.EntityNukeExplosion; import com.hbm.entity.logic.EntityNukeExplosionAdvanced; import com.hbm.entity.logic.EntityNukeExplosionPlus; +import com.hbm.entity.missile.EntityBombletTheta; import com.hbm.entity.missile.EntityMIRV; import com.hbm.entity.missile.EntityMissileAntiBallistic; import com.hbm.entity.missile.EntityMissileBunkerBuster; @@ -70,6 +71,7 @@ import com.hbm.entity.missile.EntityMissileBurst; import com.hbm.entity.missile.EntityMissileBusterStrong; import com.hbm.entity.missile.EntityMissileCluster; import com.hbm.entity.missile.EntityMissileClusterStrong; +import com.hbm.entity.missile.EntityMissileDoomsday; import com.hbm.entity.missile.EntityMissileDrill; import com.hbm.entity.missile.EntityMissileEndo; import com.hbm.entity.missile.EntityMissileExo; @@ -548,6 +550,8 @@ public class MainRegistry EntityRegistry.registerModEntity(EntityGasFlameFX.class, "entity_gasflame_fx", 75, this, 1000, 1, true); EntityRegistry.registerModEntity(EntityMinecartTest.class, "entity_minecart_test", 76, this, 1000, 1, true); EntityRegistry.registerModEntity(EntitySparkBeam.class, "entity_spark_beam", 77, this, 1000, 1, true); + EntityRegistry.registerModEntity(EntityMissileDoomsday.class, "entity_missile_doomsday", 78, this, 1000, 1, true); + EntityRegistry.registerModEntity(EntityBombletTheta.class, "entity_theta", 79, this, 1000, 1, true); EntityRegistry.registerGlobalEntityID(EntityNuclearCreeper.class, "entity_mob_nuclear_creeper", EntityRegistry.findGlobalUniqueEntityId(), 0x204131, 0x75CE00); EntityRegistry.registerGlobalEntityID(EntityHunterChopper.class, "entity_mob_hunter_chopper", EntityRegistry.findGlobalUniqueEntityId(), 0x000020, 0x2D2D72); diff --git a/com/hbm/packet/TEFluidPipePacket.java b/com/hbm/packet/TEFluidPipePacket.java index 1103739ae..4703b534f 100644 --- a/com/hbm/packet/TEFluidPipePacket.java +++ b/com/hbm/packet/TEFluidPipePacket.java @@ -55,14 +55,18 @@ public class TEFluidPipePacket implements IMessage { @Override public IMessage onMessage(TEFluidPipePacket m, MessageContext ctx) { - TileEntity te = Minecraft.getMinecraft().theWorld.getTileEntity(m.x, m.y, m.z); + try { + TileEntity te = Minecraft.getMinecraft().theWorld.getTileEntity(m.x, m.y, m.z); - if (te != null && te instanceof TileEntityFluidDuct) { + if (te != null && te instanceof TileEntityFluidDuct) { - TileEntityFluidDuct duct = (TileEntityFluidDuct) te; - duct.type = m.type; + TileEntityFluidDuct duct = (TileEntityFluidDuct) te; + duct.type = m.type; + } + return null; + } catch(Exception ex) { + return null; } - return null; } } } diff --git a/com/hbm/packet/TEMissilePacket.java b/com/hbm/packet/TEMissilePacket.java index 4f9a839df..374895a7b 100644 --- a/com/hbm/packet/TEMissilePacket.java +++ b/com/hbm/packet/TEMissilePacket.java @@ -1,11 +1,13 @@ package com.hbm.packet; +import com.hbm.items.ModItems; import com.hbm.tileentity.TileEntityLaunchPad; 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.item.ItemStack; import net.minecraft.tileentity.TileEntity; public class TEMissilePacket implements IMessage { @@ -20,12 +22,49 @@ public class TEMissilePacket implements IMessage { } - public TEMissilePacket(int x, int y, int z, int type) + public TEMissilePacket(int x, int y, int z, ItemStack stack) { this.x = x; this.y = y; this.z = z; - this.type = type; + this.type = 0; + if(stack != null) { + if(stack.getItem() == ModItems.missile_generic) + type = 1; + if(stack.getItem() == ModItems.missile_strong) + type = 2; + if(stack.getItem() == ModItems.missile_cluster) + type = 3; + if(stack.getItem() == ModItems.missile_nuclear) + type = 4; + if(stack.getItem() == ModItems.missile_incendiary) + type = 5; + if(stack.getItem() == ModItems.missile_buster) + type = 6; + if(stack.getItem() == ModItems.missile_incendiary_strong) + type = 7; + if(stack.getItem() == ModItems.missile_cluster_strong) + type = 8; + if(stack.getItem() == ModItems.missile_buster_strong) + type = 9; + if(stack.getItem() == ModItems.missile_burst) + type = 10; + if(stack.getItem() == ModItems.missile_inferno) + type = 11; + if(stack.getItem() == ModItems.missile_rain) + type = 12; + if(stack.getItem() == ModItems.missile_drill) + type = 13; + if(stack.getItem() == ModItems.missile_endo) + type = 14; + if(stack.getItem() == ModItems.missile_exo) + type = 15; + if(stack.getItem() == ModItems.missile_nuclear_cluster) + type = 16; + if(stack.getItem() == ModItems.missile_doomsday) + type = 17; + + } } @Override @@ -52,7 +91,7 @@ public class TEMissilePacket implements IMessage { if (te != null && te instanceof TileEntityLaunchPad) { - TileEntityLaunchPad gen = (TileEntityLaunchPad) te; + TileEntityLaunchPad gen = (TileEntityLaunchPad)te; gen.state = m.type; } return null; diff --git a/com/hbm/render/entity/RenderBombletTheta.java b/com/hbm/render/entity/RenderBombletTheta.java new file mode 100644 index 000000000..97e415646 --- /dev/null +++ b/com/hbm/render/entity/RenderBombletTheta.java @@ -0,0 +1,41 @@ +package com.hbm.render.entity; + +import org.lwjgl.opengl.GL11; + +import com.hbm.lib.RefStrings; + +import net.minecraft.client.renderer.entity.Render; +import net.minecraft.entity.Entity; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.client.model.AdvancedModelLoader; +import net.minecraftforge.client.model.IModelCustom; + +public class RenderBombletTheta extends Render { + + private static final ResourceLocation objTesterModelRL = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/bombletTheta.obj"); + private IModelCustom boyModel; + private ResourceLocation boyTexture; + + public RenderBombletTheta() { + boyModel = AdvancedModelLoader.loadModel(objTesterModelRL); + boyTexture = new ResourceLocation(RefStrings.MODID, "textures/models/TheGadget3_.png"); + } + + @Override + public void doRender(Entity p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_) { + + GL11.glPushMatrix(); + GL11.glTranslatef((float)p_76986_2_, (float)p_76986_4_, (float)p_76986_6_); + GL11.glRotatef(p_76986_1_.prevRotationYaw + (p_76986_1_.rotationYaw - p_76986_1_.prevRotationYaw) * p_76986_9_ - 90.0F, 0.0F, 1.0F, 0.0F); + GL11.glRotatef(p_76986_1_.prevRotationPitch + (p_76986_1_.rotationPitch - p_76986_1_.prevRotationPitch) * p_76986_9_, 0.0F, 0.0F, 1.0F); + + bindTexture(boyTexture); + boyModel.renderAll(); + GL11.glPopMatrix(); + } + + @Override + protected ResourceLocation getEntityTexture(Entity p_110775_1_) { + return new ResourceLocation(RefStrings.MODID +":textures/models/TheGadget3_.png"); + } +} diff --git a/com/hbm/render/entity/RenderMissileDoomsday.java b/com/hbm/render/entity/RenderMissileDoomsday.java new file mode 100644 index 000000000..6b836c51f --- /dev/null +++ b/com/hbm/render/entity/RenderMissileDoomsday.java @@ -0,0 +1,42 @@ +package com.hbm.render.entity; + +import org.lwjgl.opengl.GL11; + +import com.hbm.lib.RefStrings; + +import net.minecraft.client.renderer.entity.Render; +import net.minecraft.entity.Entity; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.client.model.AdvancedModelLoader; +import net.minecraftforge.client.model.IModelCustom; + +public class RenderMissileDoomsday extends Render { + + private static final ResourceLocation objTesterModelRL = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/missileDoomsday.obj"); + private IModelCustom boyModel; + private ResourceLocation boyTexture; + + public RenderMissileDoomsday() { + boyModel = AdvancedModelLoader.loadModel(objTesterModelRL); + boyTexture = new ResourceLocation(RefStrings.MODID, "textures/models/TheGadget3_.png"); + } + + @Override + public void doRender(Entity p_76986_1_, double p_76986_2_, double p_76986_4_, double p_76986_6_, float p_76986_8_, float p_76986_9_) { + + GL11.glPushMatrix(); + GL11.glTranslatef((float)p_76986_2_, (float)p_76986_4_, (float)p_76986_6_); + GL11.glRotatef(p_76986_1_.prevRotationYaw + (p_76986_1_.rotationYaw - p_76986_1_.prevRotationYaw) * p_76986_9_ - 90.0F, 0.0F, 1.0F, 0.0F); + GL11.glRotatef(p_76986_1_.prevRotationPitch + (p_76986_1_.rotationPitch - p_76986_1_.prevRotationPitch) * p_76986_9_, 0.0F, 0.0F, 1.0F); + GL11.glScalef(2F, 2F, 2F); + + bindTexture(boyTexture); + boyModel.renderAll(); + GL11.glPopMatrix(); + } + + @Override + protected ResourceLocation getEntityTexture(Entity p_110775_1_) { + return new ResourceLocation(RefStrings.MODID +":textures/models/TheGadget3_.png"); + } +} diff --git a/com/hbm/render/tileentity/RenderLaunchPadTier1.java b/com/hbm/render/tileentity/RenderLaunchPadTier1.java index e3c41d5ba..3b0a1edae 100644 --- a/com/hbm/render/tileentity/RenderLaunchPadTier1.java +++ b/com/hbm/render/tileentity/RenderLaunchPadTier1.java @@ -20,6 +20,7 @@ public class RenderLaunchPadTier1 extends TileEntitySpecialRenderer { private static final ResourceLocation missileNuclearModel = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/MissileNuke.obj"); private static final ResourceLocation missileMirvModel = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/MissileMirv.obj"); private static final ResourceLocation missileThermoModel = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/MissileThermal.obj"); + private static final ResourceLocation missileDoomModel = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/missileDoomsday.obj"); private IModelCustom padModel; private IModelCustom missileGeneric; private IModelCustom missileStrong; @@ -27,6 +28,7 @@ public class RenderLaunchPadTier1 extends TileEntitySpecialRenderer { private IModelCustom missileNuclear; private IModelCustom missileMirv; private IModelCustom missileThermo; + private IModelCustom missileDoom; private ResourceLocation padTexture; private ResourceLocation missileGenericTexture; private ResourceLocation missileIncendiaryTexture; @@ -54,6 +56,7 @@ public class RenderLaunchPadTier1 extends TileEntitySpecialRenderer { missileNuclear = AdvancedModelLoader.loadModel(missileNuclearModel); missileMirv = AdvancedModelLoader.loadModel(missileMirvModel); missileThermo = AdvancedModelLoader.loadModel(missileThermoModel); + missileDoom = AdvancedModelLoader.loadModel(missileDoomModel); padTexture = new ResourceLocation(RefStrings.MODID, "textures/models/TheGadget3_.png"); missileGenericTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileV2.png"); missileIncendiaryTexture = new ResourceLocation(RefStrings.MODID, "textures/models/MissileIncendiary.png"); @@ -93,108 +96,116 @@ public class RenderLaunchPadTier1 extends TileEntitySpecialRenderer { bindTexture(padTexture); padModel.renderAll(); - - //if(((TileEntityLaunchPad)tileEntity).getThatWorld().isRemote) - { + + int state = 0; + + if(tileEntity instanceof TileEntityLaunchPad) + state = ((TileEntityLaunchPad)tileEntity).state; + GL11.glTranslated(0, 0.5, 0); - if(((TileEntityLaunchPad)tileEntity).state == 1) + if(state == 1) { GL11.glScalef(1.0F, 1.0F, 1.0F); bindTexture(missileGenericTexture); missileGeneric.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 2) + if(state == 2) { GL11.glScalef(1.5F, 1.5F, 1.5F); bindTexture(missileStrongTexture); missileStrong.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 3) + if(state == 3) { GL11.glScalef(1.0F, 1.0F, 1.0F); bindTexture(missileClusterTexture); missileGeneric.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 4) + if(state == 4) { GL11.glScalef(1.5F, 1.5F, 1.5F); bindTexture(missileNuclearTexture); missileNuclear.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 5) + if(state == 5) { GL11.glScalef(1.0F, 1.0F, 1.0F); bindTexture(missileIncendiaryTexture); missileGeneric.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 6) + if(state == 6) { GL11.glScalef(1.0F, 1.0F, 1.0F); bindTexture(missileBusterTexture); missileGeneric.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 7) + if(state == 7) { GL11.glScalef(1.5F, 1.5F, 1.5F); bindTexture(missileStrongIncendiaryTexture); missileStrong.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 8) + if(state == 8) { GL11.glScalef(1.5F, 1.5F, 1.5F); bindTexture(missileStrongClusterTexture); missileStrong.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 9) + if(state == 9) { GL11.glScalef(1.5F, 1.5F, 1.5F); bindTexture(missileStrongBusterTexture); missileStrong.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 10) + if(state == 10) { GL11.glScalef(2.0F, 2.0F, 2.0F); bindTexture(missileHugeTexture); missileHuge.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 11) + if(state == 11) { GL11.glScalef(2.0F, 2.0F, 2.0F); bindTexture(missileHugeIncendiaryTexture); missileHuge.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 12) + if(state == 12) { GL11.glScalef(2.0F, 2.0F, 2.0F); bindTexture(missileHugeClusterTexture); missileHuge.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 13) + if(state == 13) { GL11.glScalef(2.0F, 2.0F, 2.0F); bindTexture(missileHugeBusterTexture); missileHuge.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 14) + if(state == 14) { GL11.glScalef(1.5F, 1.5F, 1.5F); bindTexture(missileThermoEndoTexture); missileThermo.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 15) + if(state == 15) { GL11.glScalef(1.5F, 1.5F, 1.5F); bindTexture(missileThermoExoTexture); missileThermo.renderAll(); } - if(((TileEntityLaunchPad)tileEntity).state == 16) + if(state == 16) { GL11.glScalef(2F, 2F, 2F); bindTexture(missileMirvTexture); missileMirv.renderAll(); } - } + if(state == 17) + { + GL11.glScalef(2F, 2F, 2F); + bindTexture(missileStrongTexture); + missileDoom.renderAll(); + } GL11.glPopMatrix(); } diff --git a/com/hbm/tileentity/TileEntityLaunchPad.java b/com/hbm/tileentity/TileEntityLaunchPad.java index 6d8ffe745..b48968b63 100644 --- a/com/hbm/tileentity/TileEntityLaunchPad.java +++ b/com/hbm/tileentity/TileEntityLaunchPad.java @@ -29,9 +29,6 @@ public class TileEntityLaunchPad extends TileEntity implements ISidedInventory, private static final int[] slots_side = new int[] {1}; public int state = 0; - public int targetX = this.xCoord + 50; - public int targetZ = this.zCoord; - private String customName; public TileEntityLaunchPad() { @@ -194,55 +191,14 @@ public class TileEntityLaunchPad extends TileEntity implements ISidedInventory, power = Library.chargeTEFromItems(slots, 2, power, maxPower); - ItemStack stack = slots[0]; - - if(stack != null) { - if(stack.getItem() == ModItems.missile_generic) - state = 1; - if(stack.getItem() == ModItems.missile_strong) - state = 2; - if(stack.getItem() == ModItems.missile_cluster) - state = 3; - if(stack.getItem() == ModItems.missile_nuclear) - state = 4; - if(stack.getItem() == ModItems.missile_incendiary) - state = 5; - if(stack.getItem() == ModItems.missile_buster) - state = 6; - if(stack.getItem() == ModItems.missile_incendiary_strong) - state = 7; - if(stack.getItem() == ModItems.missile_cluster_strong) - state = 8; - if(stack.getItem() == ModItems.missile_buster_strong) - state = 9; - if(stack.getItem() == ModItems.missile_burst) - state = 10; - if(stack.getItem() == ModItems.missile_inferno) - state = 11; - if(stack.getItem() == ModItems.missile_rain) - state = 12; - if(stack.getItem() == ModItems.missile_drill) - state = 13; - if(stack.getItem() == ModItems.missile_endo) - state = 14; - if(stack.getItem() == ModItems.missile_exo) - state = 15; - if(stack.getItem() == ModItems.missile_nuclear_cluster) - state = 16; - - if(!worldObj.isRemote) - PacketDispatcher.wrapper.sendToAll(new TEMissilePacket(xCoord, yCoord, zCoord, state)); - } + if(!worldObj.isRemote) + PacketDispatcher.wrapper.sendToAll(new TEMissilePacket(xCoord, yCoord, zCoord, slots[0])); } @Override public AxisAlignedBB getRenderBoundingBox() { return TileEntity.INFINITE_EXTENT_AABB; } - - public World getThatWorld() { - return this.worldObj; - } @Override public void setPower(int i) { diff --git a/com/hbm/tileentity/TileEntityMachineFluidTank.java b/com/hbm/tileentity/TileEntityMachineFluidTank.java index 73d5b57b1..af31266d7 100644 --- a/com/hbm/tileentity/TileEntityMachineFluidTank.java +++ b/com/hbm/tileentity/TileEntityMachineFluidTank.java @@ -110,11 +110,6 @@ public class TileEntityMachineFluidTank extends TileEntity implements ISidedInve @Override public boolean isItemValidForSlot(int i, ItemStack stack) { - if(i == 0 && stack.getItem() == ModItems.cell_uf6) - return true; - if(i == 2 && stack.getItem() == ModItems.cell_empty) - return true; - return false; }