diff --git a/assets/hbm/lang/de_DE.lang b/assets/hbm/lang/de_DE.lang index 1bd00f2ca..207cb21b9 100644 --- a/assets/hbm/lang/de_DE.lang +++ b/assets/hbm/lang/de_DE.lang @@ -1349,6 +1349,7 @@ item.matchstick.name=Streichholz item.remote.name=Kaputte Fernbedienung item.shimmer_head.name=Schwerer Hammerkopf +item.shimmer_axe_head.name=Schwerer Axtkopf item.shimmer_handle.name=Verstärketer Polymergriff item.redcoil_capacitor.name=Rotspulenkondensator diff --git a/assets/hbm/lang/en_US.lang b/assets/hbm/lang/en_US.lang index 5a5bf3d45..b31a36503 100644 --- a/assets/hbm/lang/en_US.lang +++ b/assets/hbm/lang/en_US.lang @@ -1352,6 +1352,7 @@ item.matchstick.name=Matchstick item.remote.name=Broken Remote item.shimmer_head.name=Heavy Hammer Head +item.shimmer_axe_head.name=Heavy Axe Head item.shimmer_handle.name=Reinforced Polymer Handle item.redcoil_capacitor.name=Redcoil Capacitor diff --git a/assets/hbm/models/turret_cheapo_base.obj b/assets/hbm/models/turret_cheapo_base.obj new file mode 100644 index 000000000..842d7ba86 --- /dev/null +++ b/assets/hbm/models/turret_cheapo_base.obj @@ -0,0 +1,333 @@ +# Blender v2.76 (sub 0) OBJ File: 'turret_cheapo_base.blend' +# www.blender.org +o Grid.001_Grid.003 +v -0.500000 0.062500 0.500000 +v -0.375000 0.062500 0.500000 +v 0.375000 0.062500 0.500000 +v 0.500000 0.062500 0.500000 +v -0.500000 0.062500 0.375000 +v -0.375000 0.062500 0.375000 +v 0.375000 0.062500 0.375000 +v 0.500000 0.062500 0.375000 +v -0.125000 0.875000 0.125000 +v 0.000000 0.875000 0.125000 +v 0.125000 0.875000 0.125000 +v -0.125000 0.875000 0.000000 +v 0.000000 0.875000 0.000000 +v 0.125000 0.875000 0.000000 +v -0.125000 0.875000 -0.125000 +v 0.000000 0.875000 -0.125000 +v 0.125000 0.875000 -0.125000 +v -0.500000 0.062500 -0.375000 +v -0.375000 0.062500 -0.375000 +v 0.375000 0.062500 -0.375000 +v 0.500000 0.062500 -0.375000 +v -0.500000 0.062500 -0.500000 +v -0.375000 0.062500 -0.500000 +v 0.375000 0.062500 -0.500000 +v 0.500000 0.062500 -0.500000 +v -0.562500 0.062500 0.312500 +v -0.562500 0.062500 0.562500 +v -0.312500 0.062500 0.562500 +v -0.312500 0.062500 0.312500 +v 0.312500 0.062500 0.562500 +v 0.312500 0.062500 0.312500 +v 0.562500 0.062500 0.562500 +v 0.562500 0.062500 0.312500 +v -0.312500 0.062500 -0.312500 +v -0.562500 0.062500 -0.312500 +v 0.562500 0.062500 -0.312500 +v 0.312500 0.062500 -0.312500 +v -0.562500 0.062500 -0.562500 +v -0.312500 0.062500 -0.562500 +v 0.312500 0.062500 -0.562500 +v 0.562500 0.062500 -0.562500 +v -0.562500 0.000000 0.312500 +v -0.562500 0.000000 0.562500 +v -0.312500 0.000000 0.562500 +v -0.312500 0.000000 0.312500 +v 0.312500 0.000000 0.562500 +v 0.312500 0.000000 0.312500 +v 0.562500 0.000000 0.562500 +v 0.562500 0.000000 0.312500 +v -0.312500 0.000000 -0.312500 +v -0.562500 0.000000 -0.312500 +v 0.562500 0.000000 -0.312500 +v 0.312500 0.000000 -0.312500 +v -0.562500 0.000000 -0.562500 +v -0.312500 0.000000 -0.562500 +v 0.312500 0.000000 -0.562500 +v 0.562500 0.000000 -0.562500 +v -0.125000 1.000000 0.125000 +v -0.125000 1.000000 -0.125000 +v 0.125000 1.000000 0.125000 +v 0.125000 1.000000 -0.125000 +vt 0.824881 0.881975 +vt 0.795084 0.911772 +vt 0.795084 0.792586 +vt 0.388946 0.701344 +vt 0.388946 0.743483 +vt 0.304668 0.659206 +vt 0.429963 0.038108 +vt 0.429962 0.500675 +vt 0.375000 0.477643 +vt 0.265076 0.061140 +vt 0.320038 0.038108 +vt 0.320038 0.500675 +vt 0.484925 0.061140 +vt 0.875000 0.477643 +vt 0.875000 0.015075 +vt 0.929962 0.038108 +vt 0.820038 0.500675 +vt 0.820038 0.038108 +vt 0.629790 0.617067 +vt 0.629790 0.574928 +vt 0.714067 0.659205 +vt 0.765076 0.061140 +vt 0.984925 0.061140 +vt 0.984925 0.523708 +vt 0.929962 0.500675 +vt 0.625000 0.477643 +vt 0.570038 0.500675 +vt 0.570038 0.038108 +vt 0.515076 0.523708 +vt 0.515076 0.061140 +vt 0.625000 0.015075 +vt 0.679962 0.038108 +vt 0.734925 0.061140 +vt 0.734925 0.523708 +vt 0.679963 0.500675 +vt 0.884474 0.673045 +vt 0.914270 0.702842 +vt 0.795084 0.702842 +vt 0.375000 0.015075 +vt 0.015076 0.061140 +vt 0.070038 0.038108 +vt 0.070038 0.500675 +vt 0.234925 0.061140 +vt 0.234924 0.523708 +vt 0.179962 0.500675 +vt 0.179962 0.038108 +vt 0.125000 0.477643 +vt 0.125000 0.015075 +vt 0.283599 0.638136 +vt 0.367876 0.553859 +vt 0.795084 0.762789 +vt 0.914270 0.762789 +vt 0.629790 0.743483 +vt 0.608721 0.764552 +vt 0.524443 0.680275 +vt 0.367876 0.764552 +vt 0.283599 0.680275 +vt 0.671929 0.659205 +vt 0.346807 0.659206 +vt 0.388946 0.574928 +vt 0.884474 0.822382 +vt 0.914270 0.792586 +vt 0.914270 0.911772 +vt 0.629790 0.701344 +vt 0.545512 0.659205 +vt 0.388946 0.617067 +vt 0.473223 0.659205 +vt 0.884474 0.881975 +vt 0.431084 0.659205 +vt 0.824881 0.673045 +vt 0.795084 0.583655 +vt 0.824881 0.613452 +vt 0.914270 0.583655 +vt 0.824881 0.822382 +vt 0.884474 0.613452 +vt 0.587651 0.659205 +vt 0.582273 0.794703 +vt 0.701459 0.794703 +vt 0.701459 0.913889 +vt 0.283599 0.794703 +vt 0.402785 0.794703 +vt 0.402785 0.913889 +vt 0.015075 0.822382 +vt 0.134262 0.822382 +vt 0.134262 0.941568 +vt 0.432936 0.794703 +vt 0.552122 0.794703 +vt 0.552122 0.913889 +vt 0.650859 0.553859 +vt 0.735137 0.638136 +vt 0.410015 0.553859 +vt 0.494292 0.638136 +vt 0.765288 0.911772 +vt 0.765288 0.792586 +vt 0.494292 0.680275 +vt 0.410015 0.764552 +vt 0.944067 0.792586 +vt 0.944067 0.911772 +vt 0.765288 0.702842 +vt 0.765288 0.583655 +vt 0.914270 0.941568 +vt 0.795084 0.941568 +vt 0.795084 0.553859 +vt 0.914270 0.553859 +vt 0.524443 0.638136 +vt 0.608721 0.553859 +vt 0.944067 0.583655 +vt 0.944067 0.702842 +vt 0.735137 0.680275 +vt 0.650859 0.764552 +vt 0.914270 0.732638 +vt 0.795084 0.732638 +vt 0.074669 0.732638 +vt 0.193855 0.732638 +vt 0.134262 0.792231 +vt 0.015075 0.732638 +vt 0.015075 0.673045 +vt 0.193855 0.613452 +vt 0.074669 0.613452 +vt 0.134262 0.553859 +vt 0.253448 0.673045 +vt 0.253448 0.732638 +vt 0.265076 0.523708 +vt 0.484924 0.523708 +vt 0.765076 0.523708 +vt 0.015075 0.523708 +vt 0.582273 0.913889 +vt 0.283599 0.913889 +vt 0.015075 0.941568 +vt 0.432936 0.913889 +vt 0.193855 0.792231 +vt 0.074669 0.792231 +vt 0.015075 0.613452 +vt 0.074669 0.553859 +vt 0.193855 0.553859 +vt 0.253448 0.613452 +vn 0.000000 1.000000 0.000000 +vn 0.000000 0.419100 0.908000 +vn 0.000000 -0.419100 -0.908000 +vn 0.908000 -0.419100 0.000000 +vn -0.908000 0.419100 0.000000 +vn 0.000000 0.419100 -0.908000 +vn 0.000000 -0.419100 0.908000 +vn 0.908000 0.419100 0.000000 +vn -0.908000 -0.419100 0.000000 +vn 0.000000 0.000000 1.000000 +vn 0.000000 0.000000 -1.000000 +vn -1.000000 0.000000 0.000000 +vn 0.000000 -1.000000 0.000000 +vn 1.000000 0.000000 0.000000 +s off +f 22/1/1 38/2/1 35/3/1 +f 5/4/1 26/5/1 27/6/1 +f 2/7/2 10/8/2 9/9/2 +f 6/10/3 5/11/3 12/12/3 +f 10/8/4 2/7/4 6/13/4 +f 15/14/5 22/15/5 18/16/5 +f 15/14/6 16/17/6 23/18/6 +f 20/19/1 37/20/1 36/21/1 +f 19/22/4 23/18/4 16/17/4 +f 19/23/7 13/24/7 12/25/7 +f 17/26/8 14/27/8 21/28/8 +f 14/27/7 13/29/7 20/30/7 +f 17/26/6 25/31/6 24/32/6 +f 20/33/9 13/34/9 16/35/9 +f 8/36/1 33/37/1 31/38/1 +f 5/11/5 1/39/5 9/9/5 +f 7/40/9 3/41/9 10/42/9 +f 7/43/3 13/44/3 14/45/3 +f 8/46/8 14/45/8 11/47/8 +f 3/41/2 4/48/2 11/47/2 +f 27/6/10 43/49/10 44/50/10 +f 35/3/10 51/51/10 50/52/10 +f 41/53/11 57/54/11 56/55/11 +f 26/5/12 42/56/12 43/57/12 +f 21/58/1 36/21/1 41/53/1 +f 1/59/1 27/6/1 28/60/1 +f 19/61/1 34/62/1 39/63/1 +f 25/64/1 41/53/1 40/65/1 +f 2/66/1 28/60/1 29/67/1 +f 23/68/1 39/63/1 38/2/1 +f 6/69/1 29/67/1 26/5/1 +f 7/70/1 31/38/1 30/71/1 +f 3/72/1 30/71/1 32/73/1 +f 18/74/1 35/3/1 34/62/1 +f 4/75/1 32/73/1 33/37/1 +f 24/76/1 40/65/1 37/20/1 +f 42/77/13 45/78/13 44/79/13 +f 47/80/13 49/81/13 48/82/13 +f 54/83/13 55/84/13 50/85/13 +f 56/86/13 57/87/13 52/88/13 +f 37/20/10 53/89/10 52/90/10 +f 28/60/14 44/91/14 45/92/14 +f 38/2/12 54/93/12 51/94/12 +f 29/67/11 45/95/11 42/96/11 +f 34/62/14 50/97/14 55/98/14 +f 31/38/12 47/99/12 46/100/12 +f 39/63/11 55/101/11 54/102/11 +f 30/71/10 46/103/10 48/104/10 +f 40/65/12 56/105/12 53/106/12 +f 32/73/14 48/107/14 49/108/14 +f 36/21/14 52/109/14 57/110/14 +f 33/37/11 49/111/11 47/112/11 +f 59/113/11 61/114/11 16/115/11 +f 59/113/12 15/116/12 12/117/12 +f 60/118/10 58/119/10 10/120/10 +f 60/118/1 61/114/1 59/113/1 +f 14/121/14 17/122/14 61/114/14 +f 18/74/1 22/1/1 35/3/1 +f 1/59/1 5/4/1 27/6/1 +f 1/39/2 2/7/2 9/9/2 +f 13/123/3 6/10/3 12/12/3 +f 13/124/4 10/8/4 6/13/4 +f 12/25/5 15/14/5 18/16/5 +f 22/15/6 15/14/6 23/18/6 +f 21/58/1 20/19/1 36/21/1 +f 13/125/4 19/22/4 16/17/4 +f 18/16/7 19/23/7 12/25/7 +f 25/31/8 17/26/8 21/28/8 +f 21/28/7 14/27/7 20/30/7 +f 16/35/6 17/26/6 24/32/6 +f 24/32/9 20/33/9 16/35/9 +f 7/70/1 8/36/1 31/38/1 +f 12/12/5 5/11/5 9/9/5 +f 13/126/9 7/40/9 10/42/9 +f 8/46/3 7/43/3 14/45/3 +f 4/48/8 8/46/8 11/47/8 +f 10/42/2 3/41/2 11/47/2 +f 28/60/10 27/6/10 44/50/10 +f 34/62/10 35/3/10 50/52/10 +f 40/65/11 41/53/11 56/55/11 +f 27/6/12 26/5/12 43/57/12 +f 25/64/1 21/58/1 41/53/1 +f 2/66/1 1/59/1 28/60/1 +f 23/68/1 19/61/1 39/63/1 +f 24/76/1 25/64/1 40/65/1 +f 6/69/1 2/66/1 29/67/1 +f 22/1/1 23/68/1 38/2/1 +f 5/4/1 6/69/1 26/5/1 +f 3/72/1 7/70/1 30/71/1 +f 4/75/1 3/72/1 32/73/1 +f 19/61/1 18/74/1 34/62/1 +f 8/36/1 4/75/1 33/37/1 +f 20/19/1 24/76/1 37/20/1 +f 43/127/13 42/77/13 44/79/13 +f 46/128/13 47/80/13 48/82/13 +f 51/129/13 54/83/13 50/85/13 +f 53/130/13 56/86/13 52/88/13 +f 36/21/10 37/20/10 52/90/10 +f 29/67/14 28/60/14 45/92/14 +f 35/3/12 38/2/12 51/94/12 +f 26/5/11 29/67/11 42/96/11 +f 39/63/14 34/62/14 55/98/14 +f 30/71/12 31/38/12 46/100/12 +f 38/2/11 39/63/11 54/102/11 +f 32/73/10 30/71/10 48/104/10 +f 37/20/12 40/65/12 53/106/12 +f 33/37/14 32/73/14 49/108/14 +f 41/53/14 36/21/14 57/110/14 +f 31/38/11 33/37/11 47/112/11 +f 17/131/11 16/115/11 61/114/11 +f 15/132/11 59/113/11 16/115/11 +f 12/117/12 9/133/12 58/119/12 +f 58/119/12 59/113/12 12/117/12 +f 9/134/10 10/120/10 58/119/10 +f 11/135/10 60/118/10 10/120/10 +f 58/119/1 60/118/1 59/113/1 +f 61/114/14 60/118/14 14/121/14 +f 11/136/14 14/121/14 60/118/14 diff --git a/assets/hbm/models/turret_cheapo_gun.obj b/assets/hbm/models/turret_cheapo_gun.obj new file mode 100644 index 000000000..b11c7b566 --- /dev/null +++ b/assets/hbm/models/turret_cheapo_gun.obj @@ -0,0 +1,512 @@ +# Blender v2.76 (sub 0) OBJ File: 'turret_cheapo_gun.blend' +# www.blender.org +o Cylinder +v -0.009151 -0.034151 1.462500 +v -0.052452 -0.059151 1.462500 +v -0.009151 -0.034151 0.462500 +v -0.052452 -0.059151 0.462500 +v -0.034151 0.009151 1.462500 +v -0.077452 -0.015849 1.462500 +v -0.034151 0.009151 0.462500 +v -0.077452 -0.015849 0.462500 +v 0.034151 0.009151 1.462500 +v 0.077452 -0.015849 1.462500 +v 0.034151 0.009151 0.462500 +v 0.077452 -0.015849 0.462500 +v 0.009151 -0.034151 1.462500 +v 0.052452 -0.059151 1.462500 +v 0.009151 -0.034151 0.462500 +v 0.052452 -0.059151 0.462500 +v -0.025000 0.025000 1.462500 +v -0.025000 0.075000 1.462500 +v -0.025000 0.025000 0.462500 +v -0.025000 0.075000 0.462500 +v 0.025000 0.025000 1.462500 +v 0.025000 0.075000 1.462500 +v 0.025000 0.025000 0.462500 +v 0.025000 0.075000 0.462500 +v 0.000000 0.100000 0.400000 +v 0.000000 0.100000 0.462500 +v 0.070711 0.070711 0.400000 +v 0.070711 0.070711 0.462500 +v 0.100000 -0.000000 0.400000 +v 0.100000 0.000000 0.462500 +v 0.070711 -0.070711 0.400000 +v 0.070711 -0.070711 0.462500 +v -0.000000 -0.100000 0.400000 +v -0.000000 -0.100000 0.462500 +v -0.070711 -0.070711 0.400000 +v -0.070711 -0.070711 0.462500 +v -0.100000 -0.000000 0.400000 +v -0.100000 0.000000 0.462500 +v -0.070711 0.070711 0.400000 +v -0.070711 0.070711 0.462500 +v 0.000000 0.100000 0.700000 +v 0.000000 0.100000 0.762500 +v 0.070711 0.070711 0.700000 +v 0.070711 0.070711 0.762500 +v 0.100000 -0.000000 0.700000 +v 0.100000 0.000000 0.762500 +v 0.070711 -0.070711 0.700000 +v 0.070711 -0.070711 0.762500 +v -0.000000 -0.100000 0.700000 +v -0.000000 -0.100000 0.762500 +v -0.070711 -0.070711 0.700000 +v -0.070711 -0.070711 0.762500 +v -0.100000 -0.000000 0.700000 +v -0.100000 0.000000 0.762500 +v -0.070711 0.070711 0.700000 +v -0.070711 0.070711 0.762500 +v 0.000000 0.100000 0.800000 +v 0.000000 0.100000 0.862500 +v 0.070711 0.070711 0.800000 +v 0.070711 0.070711 0.862500 +v 0.100000 -0.000000 0.800000 +v 0.100000 0.000000 0.862500 +v 0.070711 -0.070711 0.800000 +v 0.070711 -0.070711 0.862500 +v -0.000000 -0.100000 0.800000 +v -0.000000 -0.100000 0.862500 +v -0.070711 -0.070711 0.800000 +v -0.070711 -0.070711 0.862500 +v -0.100000 -0.000000 0.800000 +v -0.100000 0.000000 0.862500 +v -0.070711 0.070711 0.800000 +v -0.070711 0.070711 0.862500 +v 0.000000 0.100000 0.900000 +v 0.000000 0.100000 0.962500 +v 0.070711 0.070711 0.900000 +v 0.070711 0.070711 0.962500 +v 0.100000 -0.000000 0.900000 +v 0.100000 0.000000 0.962500 +v 0.070711 -0.070711 0.900000 +v 0.070711 -0.070711 0.962500 +v -0.000000 -0.100000 0.900000 +v -0.000000 -0.100000 0.962500 +v -0.070711 -0.070711 0.900000 +v -0.070711 -0.070711 0.962500 +v -0.100000 -0.000000 0.900000 +v -0.100000 0.000000 0.962500 +v -0.070711 0.070711 0.900000 +v -0.070711 0.070711 0.962500 +v 0.000000 0.100000 1.100000 +v 0.000000 0.100000 1.412500 +v 0.070711 0.070711 1.100000 +v 0.070711 0.070711 1.412500 +v 0.100000 -0.000000 1.100000 +v 0.100000 0.000000 1.412500 +v 0.070711 -0.070711 1.100000 +v 0.070711 -0.070711 1.412500 +v -0.000000 -0.100000 1.100000 +v -0.000000 -0.100000 1.412500 +v -0.070711 -0.070711 1.100000 +v -0.070711 -0.070711 1.412500 +v -0.100000 -0.000000 1.100000 +v -0.100000 0.000000 1.412500 +v -0.070711 0.070711 1.100000 +v -0.070711 0.070711 1.412500 +vt 0.640052 0.249617 +vt 0.640052 0.280553 +vt 0.021334 0.280552 +vt 0.021334 0.218681 +vt 0.021334 0.187745 +vt 0.640052 0.187745 +vt 0.573646 0.520567 +vt 0.604582 0.520567 +vt 0.604582 0.551503 +vt 0.640052 0.311488 +vt 0.021334 0.311488 +vt 0.640052 0.218681 +vt 0.021334 0.249617 +vt 0.640052 0.083205 +vt 0.640052 0.114141 +vt 0.021334 0.114142 +vt 0.021334 0.052270 +vt 0.021334 0.021334 +vt 0.640052 0.021334 +vt 0.604582 0.667774 +vt 0.604582 0.698710 +vt 0.573646 0.698710 +vt 0.640052 0.145077 +vt 0.021334 0.145077 +vt 0.640052 0.052269 +vt 0.021334 0.083206 +vt 0.640052 0.416028 +vt 0.640052 0.446964 +vt 0.021334 0.446963 +vt 0.021334 0.385092 +vt 0.021334 0.354156 +vt 0.640052 0.354156 +vt 0.573646 0.625107 +vt 0.573646 0.594171 +vt 0.604582 0.594171 +vt 0.640052 0.477900 +vt 0.021334 0.477899 +vt 0.640052 0.385092 +vt 0.021334 0.416028 +vt 0.845395 0.632256 +vt 0.884065 0.632256 +vt 0.884065 0.679611 +vt 0.884065 0.726965 +vt 0.845395 0.726965 +vt 0.884065 0.774320 +vt 0.884064 0.821675 +vt 0.845395 0.821675 +vt 0.884065 0.442838 +vt 0.884065 0.490193 +vt 0.845395 0.490193 +vt 0.884065 0.537547 +vt 0.845395 0.537547 +vt 0.102671 0.758398 +vt 0.136156 0.677559 +vt 0.183511 0.791883 +vt 0.884065 0.584902 +vt 0.845395 0.584902 +vt 0.497494 0.948874 +vt 0.450139 0.948874 +vt 0.416655 0.868035 +vt 0.802727 0.632256 +vt 0.802727 0.679611 +vt 0.764057 0.679611 +vt 0.802727 0.726965 +vt 0.764057 0.726965 +vt 0.802727 0.774320 +vt 0.802727 0.821675 +vt 0.764057 0.821675 +vt 0.802727 0.442838 +vt 0.802727 0.490193 +vt 0.764057 0.490193 +vt 0.802727 0.537547 +vt 0.764057 0.537547 +vt 0.259663 0.758398 +vt 0.293148 0.677559 +vt 0.340502 0.791883 +vt 0.802727 0.584902 +vt 0.764057 0.632256 +vt 0.764057 0.584902 +vt 0.763559 0.978666 +vt 0.716204 0.978666 +vt 0.682720 0.897827 +vt 0.060004 0.709985 +vt 0.060004 0.757340 +vt 0.021334 0.757340 +vt 0.060004 0.804695 +vt 0.021334 0.804695 +vt 0.060004 0.852049 +vt 0.060004 0.899404 +vt 0.021334 0.899404 +vt 0.060004 0.520567 +vt 0.060004 0.567922 +vt 0.021334 0.567922 +vt 0.060004 0.615276 +vt 0.021334 0.615276 +vt 0.416655 0.601406 +vt 0.450139 0.520567 +vt 0.497494 0.634891 +vt 0.021334 0.662631 +vt 0.060004 0.662631 +vt 0.340502 0.948874 +vt 0.293148 0.948875 +vt 0.259663 0.868035 +vt 0.682720 0.632256 +vt 0.682720 0.584902 +vt 0.721389 0.584902 +vt 0.682720 0.537547 +vt 0.721389 0.537547 +vt 0.682720 0.490193 +vt 0.682720 0.442838 +vt 0.721389 0.442838 +vt 0.682720 0.821675 +vt 0.682720 0.774320 +vt 0.721390 0.774320 +vt 0.682720 0.726966 +vt 0.721389 0.726966 +vt 0.259663 0.601406 +vt 0.293148 0.520567 +vt 0.340502 0.634891 +vt 0.721389 0.679611 +vt 0.682720 0.679611 +vt 0.183511 0.948874 +vt 0.136156 0.948875 +vt 0.102671 0.868035 +vt 0.682720 0.210752 +vt 0.682720 0.163398 +vt 0.876069 0.163398 +vt 0.682720 0.116043 +vt 0.876069 0.116043 +vt 0.682720 0.068688 +vt 0.682720 0.021334 +vt 0.876069 0.021334 +vt 0.682720 0.400170 +vt 0.682720 0.352816 +vt 0.876069 0.352816 +vt 0.682720 0.305461 +vt 0.876069 0.305461 +vt 0.102671 0.601406 +vt 0.136156 0.520567 +vt 0.183511 0.634891 +vt 0.682720 0.258107 +vt 0.876069 0.210752 +vt 0.876069 0.258107 +vt 0.497494 0.791883 +vt 0.450139 0.791883 +vt 0.416655 0.711044 +vt 0.573646 0.551503 +vt 0.573646 0.667774 +vt 0.604582 0.625107 +vt 0.845395 0.679611 +vt 0.845395 0.774320 +vt 0.845395 0.442838 +vt 0.216995 0.711044 +vt 0.216995 0.758398 +vt 0.136156 0.791883 +vt 0.102671 0.711044 +vt 0.183511 0.677559 +vt 0.450139 0.834550 +vt 0.530979 0.915390 +vt 0.497494 0.834550 +vt 0.530979 0.868035 +vt 0.416655 0.915390 +vt 0.764057 0.774320 +vt 0.764057 0.442838 +vt 0.373987 0.711044 +vt 0.373987 0.758398 +vt 0.293148 0.791883 +vt 0.259663 0.711044 +vt 0.340502 0.677559 +vt 0.716204 0.864342 +vt 0.797044 0.945181 +vt 0.763559 0.864342 +vt 0.797044 0.897827 +vt 0.682720 0.945182 +vt 0.021334 0.709985 +vt 0.021334 0.852049 +vt 0.021334 0.520567 +vt 0.530979 0.554052 +vt 0.530979 0.601406 +vt 0.450139 0.634891 +vt 0.416655 0.554052 +vt 0.497494 0.520567 +vt 0.293148 0.834551 +vt 0.373987 0.915390 +vt 0.340502 0.834551 +vt 0.373987 0.868035 +vt 0.259663 0.915390 +vt 0.721389 0.632256 +vt 0.721389 0.490193 +vt 0.721390 0.821675 +vt 0.373987 0.554052 +vt 0.373987 0.601407 +vt 0.293148 0.634891 +vt 0.259663 0.554052 +vt 0.340502 0.520567 +vt 0.136156 0.834551 +vt 0.216995 0.915390 +vt 0.183511 0.834551 +vt 0.216995 0.868035 +vt 0.102671 0.915390 +vt 0.876069 0.068688 +vt 0.876069 0.400170 +vt 0.216995 0.554052 +vt 0.216995 0.601407 +vt 0.136156 0.634891 +vt 0.102671 0.554052 +vt 0.183511 0.520567 +vt 0.450139 0.677559 +vt 0.530979 0.758398 +vt 0.497494 0.677559 +vt 0.530979 0.711044 +vt 0.416655 0.758398 +vn 0.500000 -0.866000 0.000000 +vn -0.500000 0.866000 0.000000 +vn 0.000000 0.000000 1.000000 +vn 0.866000 0.500000 0.000000 +vn -0.866000 -0.500000 0.000000 +vn 0.500000 0.866000 0.000000 +vn -0.500000 -0.866000 0.000000 +vn -0.866000 0.500000 0.000000 +vn 0.866000 -0.500000 0.000000 +vn -1.000000 0.000000 0.000000 +vn 1.000000 0.000000 0.000000 +vn 0.000000 -1.000000 0.000000 +vn 0.000000 1.000000 0.000000 +vn 0.382700 0.923900 -0.000000 +vn 0.923900 0.382700 -0.000000 +vn 0.923900 -0.382700 0.000000 +vn 0.382700 -0.923900 0.000000 +vn -0.382700 -0.923900 0.000000 +vn -0.923900 -0.382700 0.000000 +vn -0.382700 0.923900 -0.000000 +vn -0.923900 0.382700 -0.000000 +vn 0.000000 0.000000 -1.000000 +s off +f 4/1/1 3/2/1 1/3/1 +f 6/4/2 5/5/2 7/6/2 +f 2/7/3 1/8/3 5/9/3 +f 3/2/4 7/10/4 5/11/4 +f 8/12/5 4/1/5 2/13/5 +f 12/14/6 11/15/6 9/16/6 +f 14/17/7 13/18/7 15/19/7 +f 14/20/3 10/21/3 9/22/3 +f 11/15/8 15/23/8 13/24/8 +f 16/25/9 12/14/9 10/26/9 +f 20/27/10 19/28/10 17/29/10 +f 22/30/11 21/31/11 23/32/11 +f 18/33/3 17/34/3 21/35/3 +f 19/28/12 23/36/12 21/37/12 +f 24/38/13 20/27/13 18/39/13 +f 25/40/14 26/41/14 28/42/14 +f 28/42/15 30/43/15 29/44/15 +f 29/44/16 30/43/16 32/45/16 +f 32/45/17 34/46/17 33/47/17 +f 34/48/18 36/49/18 35/50/18 +f 36/49/19 38/51/19 37/52/19 +f 38/53/3 34/54/3 26/55/3 +f 40/56/20 26/41/20 25/40/20 +f 38/51/21 40/56/21 39/57/21 +f 33/58/22 35/59/22 39/60/22 +f 42/61/14 44/62/14 43/63/14 +f 43/63/15 44/62/15 46/64/15 +f 45/65/16 46/64/16 48/66/16 +f 48/66/17 50/67/17 49/68/17 +f 50/69/18 52/70/18 51/71/18 +f 52/70/19 54/72/19 53/73/19 +f 54/74/3 50/75/3 42/76/3 +f 56/77/20 42/61/20 41/78/20 +f 54/72/21 56/77/21 55/79/21 +f 49/80/22 51/81/22 55/82/22 +f 58/83/14 60/84/14 59/85/14 +f 59/85/15 60/84/15 62/86/15 +f 61/87/16 62/86/16 64/88/16 +f 64/88/17 66/89/17 65/90/17 +f 66/91/18 68/92/18 67/93/18 +f 68/92/19 70/94/19 69/95/19 +f 70/96/3 66/97/3 58/98/3 +f 71/99/20 72/100/20 58/83/20 +f 70/94/21 72/100/21 71/99/21 +f 65/101/22 67/102/22 71/103/22 +f 74/104/14 76/105/14 75/106/14 +f 75/106/15 76/105/15 78/107/15 +f 77/108/16 78/107/16 80/109/16 +f 80/109/17 82/110/17 81/111/17 +f 82/112/18 84/113/18 83/114/18 +f 84/113/19 86/115/19 85/116/19 +f 86/117/3 82/118/3 74/119/3 +f 87/120/20 88/121/20 74/104/20 +f 86/115/21 88/121/21 87/120/21 +f 81/122/22 83/123/22 87/124/22 +f 90/125/14 92/126/14 91/127/14 +f 92/126/15 94/128/15 93/129/15 +f 93/129/16 94/128/16 96/130/16 +f 96/130/17 98/131/17 97/132/17 +f 98/133/18 100/134/18 99/135/18 +f 100/134/19 102/136/19 101/137/19 +f 102/138/3 98/139/3 90/140/3 +f 104/141/20 90/125/20 89/142/20 +f 102/136/21 104/141/21 103/143/21 +f 97/144/22 99/145/22 103/146/22 +f 2/13/1 4/1/1 1/3/1 +f 8/12/2 6/4/2 7/6/2 +f 6/147/3 2/7/3 5/9/3 +f 1/3/4 3/2/4 5/11/4 +f 6/4/5 8/12/5 2/13/5 +f 10/26/6 12/14/6 9/16/6 +f 16/25/7 14/17/7 15/19/7 +f 13/148/3 14/20/3 9/22/3 +f 9/16/8 11/15/8 13/24/8 +f 14/17/9 16/25/9 10/26/9 +f 18/39/10 20/27/10 17/29/10 +f 24/38/11 22/30/11 23/32/11 +f 22/149/3 18/33/3 21/35/3 +f 17/29/12 19/28/12 21/37/12 +f 22/30/13 24/38/13 18/39/13 +f 27/150/14 25/40/14 28/42/14 +f 27/150/15 28/42/15 29/44/15 +f 31/151/16 29/44/16 32/45/16 +f 31/151/17 32/45/17 33/47/17 +f 33/152/18 34/48/18 35/50/18 +f 35/50/19 36/49/19 37/52/19 +f 30/153/3 28/154/3 26/55/3 +f 26/55/3 40/155/3 38/53/3 +f 38/53/3 36/156/3 34/54/3 +f 34/54/3 32/157/3 30/153/3 +f 30/153/3 26/55/3 34/54/3 +f 39/57/20 40/56/20 25/40/20 +f 37/52/21 38/51/21 39/57/21 +f 39/60/22 25/158/22 31/159/22 +f 27/160/22 29/161/22 31/159/22 +f 31/159/22 33/58/22 39/60/22 +f 35/59/22 37/162/22 39/60/22 +f 25/158/22 27/160/22 31/159/22 +f 41/78/14 42/61/14 43/63/14 +f 45/65/15 43/63/15 46/64/15 +f 47/163/16 45/65/16 48/66/16 +f 47/163/17 48/66/17 49/68/17 +f 49/164/18 50/69/18 51/71/18 +f 51/71/19 52/70/19 53/73/19 +f 46/165/3 44/166/3 42/76/3 +f 42/76/3 56/167/3 54/74/3 +f 54/74/3 52/168/3 50/75/3 +f 50/75/3 48/169/3 46/165/3 +f 46/165/3 42/76/3 50/75/3 +f 55/79/20 56/77/20 41/78/20 +f 53/73/21 54/72/21 55/79/21 +f 55/82/22 41/170/22 47/171/22 +f 43/172/22 45/173/22 47/171/22 +f 47/171/22 49/80/22 55/82/22 +f 51/81/22 53/174/22 55/82/22 +f 41/170/22 43/172/22 47/171/22 +f 57/175/14 58/83/14 59/85/14 +f 61/87/15 59/85/15 62/86/15 +f 63/176/16 61/87/16 64/88/16 +f 63/176/17 64/88/17 65/90/17 +f 65/177/18 66/91/18 67/93/18 +f 67/93/19 68/92/19 69/95/19 +f 62/178/3 60/179/3 58/98/3 +f 58/98/3 72/180/3 70/96/3 +f 70/96/3 68/181/3 66/97/3 +f 66/97/3 64/182/3 62/178/3 +f 62/178/3 58/98/3 66/97/3 +f 57/175/20 71/99/20 58/83/20 +f 69/95/21 70/94/21 71/99/21 +f 71/103/22 57/183/22 63/184/22 +f 59/185/22 61/186/22 63/184/22 +f 63/184/22 65/101/22 71/103/22 +f 67/102/22 69/187/22 71/103/22 +f 57/183/22 59/185/22 63/184/22 +f 73/188/14 74/104/14 75/106/14 +f 77/108/15 75/106/15 78/107/15 +f 79/189/16 77/108/16 80/109/16 +f 79/189/17 80/109/17 81/111/17 +f 81/190/18 82/112/18 83/114/18 +f 83/114/19 84/113/19 85/116/19 +f 78/191/3 76/192/3 74/119/3 +f 74/119/3 88/193/3 86/117/3 +f 86/117/3 84/194/3 82/118/3 +f 82/118/3 80/195/3 78/191/3 +f 78/191/3 74/119/3 82/118/3 +f 73/188/20 87/120/20 74/104/20 +f 85/116/21 86/115/21 87/120/21 +f 87/124/22 73/196/22 79/197/22 +f 75/198/22 77/199/22 79/197/22 +f 79/197/22 81/122/22 87/124/22 +f 83/123/22 85/200/22 87/124/22 +f 73/196/22 75/198/22 79/197/22 +f 89/142/14 90/125/14 91/127/14 +f 91/127/15 92/126/15 93/129/15 +f 95/201/16 93/129/16 96/130/16 +f 95/201/17 96/130/17 97/132/17 +f 97/202/18 98/133/18 99/135/18 +f 99/135/19 100/134/19 101/137/19 +f 94/203/3 92/204/3 90/140/3 +f 90/140/3 104/205/3 102/138/3 +f 102/138/3 100/206/3 98/139/3 +f 98/139/3 96/207/3 94/203/3 +f 94/203/3 90/140/3 98/139/3 +f 103/143/20 104/141/20 89/142/20 +f 101/137/21 102/136/21 103/143/21 +f 103/146/22 89/208/22 95/209/22 +f 91/210/22 93/211/22 95/209/22 +f 95/209/22 97/144/22 103/146/22 +f 99/145/22 101/212/22 103/146/22 +f 89/208/22 91/210/22 95/209/22 diff --git a/assets/hbm/models/turret_cheapo_head.obj b/assets/hbm/models/turret_cheapo_head.obj new file mode 100644 index 000000000..b9b8e240c --- /dev/null +++ b/assets/hbm/models/turret_cheapo_head.obj @@ -0,0 +1,566 @@ +# Blender v2.76 (sub 0) OBJ File: 'turret_cheapo_head.blend' +# www.blender.org +o Cube_Cube.002 +v -0.125000 0.375000 0.125000 +v -0.125000 0.375000 -0.125000 +v 0.125000 0.375000 0.125000 +v 0.125000 0.375000 -0.125000 +v 0.125000 0.125000 0.125000 +v 0.125000 0.125000 -0.125000 +v -0.125000 0.125000 -0.125000 +v -0.125000 0.125000 0.125000 +v 0.000000 0.125000 -0.125000 +v 0.000000 0.125000 0.125000 +v -0.125000 -0.000000 -0.125000 +v -0.000000 0.000000 -0.125000 +v -0.125000 -0.088388 -0.088388 +v -0.000000 -0.088388 -0.088388 +v -0.125000 -0.125000 0.000000 +v 0.000000 -0.125000 0.000000 +v -0.125000 -0.088388 0.088388 +v -0.000000 -0.088388 0.088388 +v -0.125000 0.000000 0.125000 +v -0.000000 0.000000 0.125000 +v 0.000000 0.375000 -0.125000 +v 0.000000 0.375000 -0.500000 +v 0.000000 0.375000 0.125000 +v 0.000000 0.375000 0.375000 +v 0.088388 0.338388 0.125000 +v 0.088388 0.338388 0.375000 +v 0.125000 0.250000 0.125000 +v 0.125000 0.250000 0.375000 +v 0.088388 0.161612 0.125000 +v 0.088388 0.161612 0.375000 +v -0.000000 0.125000 0.125000 +v -0.000000 0.125000 0.375000 +v -0.088388 0.161612 0.125000 +v -0.088388 0.161612 0.375000 +v -0.125000 0.250000 0.125000 +v -0.125000 0.250000 0.375000 +v -0.088388 0.338388 0.125000 +v -0.088388 0.338388 0.375000 +v 0.088388 0.338388 -0.500000 +v 0.088388 0.338388 -0.125000 +v 0.125000 0.250000 -0.500000 +v 0.125000 0.250000 -0.125000 +v 0.088388 0.161612 -0.500000 +v 0.088388 0.161612 -0.125000 +v -0.000000 0.125000 -0.500000 +v -0.000000 0.125000 -0.125000 +v -0.088388 0.161612 -0.500000 +v -0.088388 0.161612 -0.125000 +v -0.125000 0.250000 -0.500000 +v -0.125000 0.250000 -0.125000 +v -0.088388 0.338388 -0.500000 +v -0.088388 0.338388 -0.125000 +v -0.225000 0.225000 -0.500000 +v -0.225000 0.375000 -0.500000 +v -0.225000 0.225000 -0.650000 +v -0.225000 0.375000 -0.650000 +v 0.225000 0.225000 -0.500000 +v 0.225000 0.375000 -0.500000 +v 0.225000 0.225000 -0.650000 +v 0.225000 0.375000 -0.650000 +v -0.090000 0.125000 -0.650000 +v -0.090000 0.125000 -0.500000 +v 0.090000 0.125000 -0.650000 +v 0.090000 0.125000 -0.500000 +v 0.125000 0.100000 0.112500 +v 0.125000 0.300000 0.112500 +v 0.125000 0.100000 -0.012500 +v 0.125000 0.300000 -0.012500 +v 0.475000 0.100000 0.112500 +v 0.475000 0.300000 0.112500 +v 0.475000 0.100000 -0.012500 +v 0.475000 0.300000 -0.012500 +v 0.175000 0.300000 0.087500 +v 0.175000 0.300000 0.012500 +v 0.162500 0.350000 0.087500 +v 0.162500 0.350000 0.012500 +v 0.112500 0.400000 0.087500 +v 0.112500 0.400000 0.012500 +v 0.062500 0.400000 0.087500 +v 0.062500 0.400000 0.012500 +v 0.025000 0.375000 0.087500 +v 0.025000 0.375000 0.012500 +v 0.070711 0.320711 0.375000 +v -0.000000 0.350000 0.375000 +v 0.100000 0.250000 0.375000 +v 0.070711 0.179289 0.375000 +v -0.000000 0.150000 0.375000 +v -0.070711 0.179289 0.375000 +v -0.100000 0.250000 0.375000 +v -0.070711 0.320711 0.375000 +v 0.070711 0.320711 0.400000 +v -0.000000 0.350000 0.400000 +v 0.100000 0.250000 0.400000 +v 0.070711 0.179289 0.400000 +v -0.000000 0.150000 0.400000 +v -0.070711 0.179289 0.400000 +v -0.100000 0.250000 0.400000 +v -0.070711 0.320711 0.400000 +v -0.075000 0.475000 -0.175000 +v -0.075000 0.475000 0.175000 +v -0.039645 0.460355 -0.175000 +v -0.039645 0.460355 0.175000 +v -0.025000 0.425000 -0.175000 +v -0.025000 0.425000 0.175000 +v -0.039645 0.389645 -0.175000 +v -0.039645 0.389645 0.175000 +v -0.075000 0.375000 -0.175000 +v -0.075000 0.375000 0.175000 +v -0.110355 0.389645 -0.175000 +v -0.110355 0.389645 0.175000 +v -0.125000 0.425000 -0.175000 +v -0.125000 0.425000 0.175000 +v -0.110355 0.460355 -0.175000 +v -0.110355 0.460355 0.175000 +vt 0.821962 0.650392 +vt 0.775508 0.650392 +vt 0.775508 0.580710 +vt 0.752281 0.836267 +vt 0.821962 0.836267 +vt 0.801553 0.856676 +vt 0.821962 0.511028 +vt 0.775508 0.511028 +vt 0.775508 0.441347 +vt 0.092938 0.738769 +vt 0.092938 0.788509 +vt 0.023256 0.788509 +vt 0.092938 0.814706 +vt 0.023256 0.814706 +vt 0.092938 0.840903 +vt 0.023256 0.840903 +vt 0.092938 0.890643 +vt 0.023256 0.890643 +vt 0.821962 0.720074 +vt 0.815159 0.769346 +vt 0.782311 0.769346 +vt 0.775508 0.092937 +vt 0.782311 0.043665 +vt 0.815159 0.043665 +vt 0.023256 0.738769 +vt 0.023256 0.669087 +vt 0.092937 0.960325 +vt 0.868474 0.289916 +vt 0.868474 0.236584 +vt 0.938155 0.236584 +vt 0.881349 0.709753 +vt 0.881349 0.656420 +vt 0.927804 0.656420 +vt 0.868474 0.396581 +vt 0.868474 0.343248 +vt 0.938155 0.343248 +vt 0.881349 0.603088 +vt 0.927804 0.603088 +vt 0.868474 0.449913 +vt 0.938155 0.396581 +vt 0.881349 0.549756 +vt 0.927804 0.549756 +vt 0.868474 0.076588 +vt 0.868474 0.023256 +vt 0.938155 0.023256 +vt 0.881349 0.496424 +vt 0.927804 0.496424 +vt 0.868474 0.129920 +vt 0.938155 0.076588 +vt 0.927804 0.923081 +vt 0.881349 0.923081 +vt 0.881349 0.869749 +vt 0.868474 0.183252 +vt 0.938155 0.129920 +vt 0.881349 0.816417 +vt 0.927804 0.816417 +vt 0.868474 0.704419 +vt 0.868474 0.661754 +vt 0.881349 0.763085 +vt 0.927804 0.709753 +vt 0.927804 0.763085 +vt 0.938155 0.289916 +vt 0.938155 0.183252 +vt 0.775508 0.232301 +vt 0.775508 0.162619 +vt 0.821962 0.232301 +vt 0.536236 0.669087 +vt 0.573830 0.707022 +vt 0.562648 0.733675 +vt 0.626139 0.706326 +vt 0.690727 0.732578 +vt 0.627236 0.707263 +vt 0.679546 0.706567 +vt 0.716042 0.669087 +vt 0.821962 0.905949 +vt 0.426702 0.856756 +vt 0.377430 0.877166 +vt 0.426702 0.827893 +vt 0.475975 0.877166 +vt 0.191705 0.669087 +vt 0.252644 0.721342 +vt 0.252084 0.722279 +vt 0.194248 0.702241 +vt 0.139449 0.730026 +vt 0.681292 0.780186 +vt 0.660883 0.829459 +vt 0.632020 0.829459 +vt 0.681292 0.878731 +vt 0.330919 0.730026 +vt 0.293580 0.709473 +vt 0.296123 0.686546 +vt 0.536236 0.780186 +vt 0.585509 0.829459 +vt 0.556646 0.829459 +vt 0.536236 0.878731 +vt 0.821962 0.371665 +vt 0.775508 0.371665 +vt 0.775508 0.301983 +vt 0.274110 0.162619 +vt 0.357728 0.162619 +vt 0.357728 0.190492 +vt 0.023256 0.162619 +vt 0.023256 0.079001 +vt 0.274110 0.079001 +vt 0.728996 0.190492 +vt 0.645378 0.190492 +vt 0.645378 0.162619 +vt 0.274110 0.190492 +vt 0.274110 0.274110 +vt 0.023256 0.274110 +vt 0.451382 0.162619 +vt 0.451382 0.190492 +vt 0.551724 0.162619 +vt 0.551724 0.190492 +vt 0.098512 0.023256 +vt 0.198854 0.023256 +vt 0.198854 0.329856 +vt 0.098512 0.329856 +vt 0.329857 0.511085 +vt 0.218365 0.511085 +vt 0.218365 0.487858 +vt 0.524966 0.511085 +vt 0.524966 0.622576 +vt 0.329857 0.622576 +vt 0.524966 0.487858 +vt 0.636456 0.487858 +vt 0.636456 0.511085 +vt 0.329857 0.487858 +vt 0.329857 0.376367 +vt 0.524966 0.376367 +vt 0.023256 0.511085 +vt 0.023256 0.487858 +vt 0.231864 0.902021 +vt 0.231864 0.888085 +vt 0.260595 0.888085 +vt 0.192446 0.902021 +vt 0.192446 0.888085 +vt 0.164574 0.902021 +vt 0.164574 0.888085 +vt 0.139449 0.902021 +vt 0.139449 0.888085 +vt 0.377430 0.703902 +vt 0.382075 0.703902 +vt 0.382075 0.746567 +vt 0.868474 0.597755 +vt 0.868474 0.555089 +vt 0.868474 0.811084 +vt 0.868474 0.544423 +vt 0.868474 0.501757 +vt 0.868474 0.757752 +vt 0.868474 0.715086 +vt 0.868474 0.917748 +vt 0.868474 0.875082 +vt 0.868474 0.651087 +vt 0.868474 0.608422 +vt 0.868474 0.864416 +vt 0.868474 0.821750 +vt 0.454910 0.673732 +vt 0.485079 0.746567 +vt 0.454910 0.669087 +vt 0.412245 0.673732 +vt 0.489725 0.746567 +vt 0.485080 0.703902 +vt 0.412245 0.781382 +vt 0.412245 0.776736 +vt 0.454910 0.776736 +vt 0.378790 0.749852 +vt 0.408960 0.670447 +vt 0.488364 0.700617 +vt 0.458195 0.780021 +vt 0.224781 0.841573 +vt 0.203448 0.841573 +vt 0.203448 0.776537 +vt 0.182115 0.841573 +vt 0.182115 0.776537 +vt 0.160782 0.841573 +vt 0.160782 0.776537 +vt 0.139449 0.841573 +vt 0.139449 0.776537 +vt 0.310112 0.776537 +vt 0.310112 0.841573 +vt 0.288779 0.841573 +vt 0.267447 0.841573 +vt 0.267447 0.776537 +vt 0.536236 0.940327 +vt 0.572654 0.925242 +vt 0.587738 0.961660 +vt 0.246114 0.841573 +vt 0.224781 0.776537 +vt 0.246114 0.776537 +vt 0.392515 0.923677 +vt 0.428932 0.938762 +vt 0.377430 0.960094 +vt 0.821962 0.580710 +vt 0.821962 0.441347 +vt 0.775508 0.720074 +vt 0.798735 0.789756 +vt 0.821962 0.092937 +vt 0.821962 0.162619 +vt 0.798735 0.023256 +vt 0.092938 0.669087 +vt 0.023256 0.960325 +vt 0.938155 0.449913 +vt 0.927804 0.869749 +vt 0.821962 0.301983 +vt 0.728996 0.162619 +vt 0.023256 0.190492 +vt 0.260595 0.902021 +vt 0.377430 0.746567 +vt 0.868474 0.768418 +vt 0.412245 0.669087 +vt 0.489725 0.703902 +vt 0.454910 0.781382 +vt 0.408960 0.780021 +vt 0.378791 0.700617 +vt 0.458195 0.670448 +vt 0.488364 0.749852 +vt 0.288779 0.776537 +vt 0.572654 0.976744 +vt 0.551321 0.976744 +vt 0.536236 0.961660 +vt 0.551321 0.925242 +vt 0.587738 0.940327 +vt 0.413847 0.975179 +vt 0.392515 0.975179 +vt 0.377430 0.938761 +vt 0.413847 0.923677 +vt 0.428932 0.960094 +vn 0.000000 -1.000000 0.000000 +vn 0.000000 0.000000 -1.000000 +vn 1.000000 -0.000000 0.000000 +vn 0.000000 -0.382700 -0.923900 +vn 0.000000 -0.923900 -0.382700 +vn 0.000000 -0.923900 0.382700 +vn 0.000000 -0.382700 0.923900 +vn -1.000000 -0.000000 0.000000 +vn 0.000000 0.000000 1.000000 +vn -0.382700 0.923900 0.000000 +vn 0.382700 0.923900 0.000000 +vn -0.923900 -0.382700 0.000000 +vn 0.923900 0.382700 0.000000 +vn -0.382700 -0.923900 0.000000 +vn 0.923900 -0.382700 0.000000 +vn 0.382700 -0.923900 0.000000 +vn -0.923900 0.382700 0.000000 +vn 0.000000 -0.942200 -0.335000 +vn 0.000000 -0.978000 -0.208600 +vn 0.000000 1.000000 0.000000 +vn -0.595200 -0.803600 0.000000 +vn 0.595200 -0.803600 0.000000 +vn 0.970100 0.242500 0.000000 +vn 0.707100 0.707100 0.000000 +vn -0.554700 0.832100 0.000000 +vn 0.441700 -0.780900 -0.441700 +s off +f 10/1/1 9/2/1 6/3/1 +f 21/4/2 4/5/2 40/6/2 +f 27/7/3 42/8/3 4/9/3 +f 12/10/4 14/11/4 13/12/4 +f 14/11/5 16/13/5 15/14/5 +f 16/13/6 18/15/6 17/16/6 +f 18/15/7 20/17/7 19/18/7 +f 20/19/3 18/20/3 14/21/3 +f 11/22/8 13/23/8 17/24/8 +f 12/10/2 11/25/2 7/26/2 +f 19/18/9 20/17/9 10/27/9 +f 52/28/10 21/29/10 22/30/10 +f 24/31/11 26/32/11 25/33/11 +f 48/34/12 50/35/12 49/36/12 +f 26/32/13 28/37/13 27/38/13 +f 46/39/14 48/34/14 47/40/14 +f 28/37/15 30/41/15 29/42/15 +f 44/43/16 46/44/16 45/45/16 +f 30/41/16 32/46/16 31/47/16 +f 42/48/15 44/43/15 43/49/15 +f 31/50/14 32/51/14 34/52/14 +f 40/53/13 42/48/13 41/54/13 +f 34/52/12 36/55/12 35/56/12 +f 24/31/9 84/57/9 83/58/9 +f 38/59/10 24/31/10 23/60/10 +f 36/55/17 38/59/17 37/61/17 +f 50/35/17 52/28/17 51/62/17 +f 21/29/11 40/53/11 39/63/11 +f 50/64/8 7/65/8 35/66/8 +f 50/67/2 48/68/2 7/69/2 +f 7/69/2 48/68/2 46/70/2 +f 6/71/18 9/72/18 46/70/18 +f 44/73/2 42/74/2 6/71/2 +f 42/75/2 40/6/2 4/5/2 +f 52/76/2 50/77/2 2/78/2 +f 52/76/2 2/78/2 21/79/2 +f 8/80/19 10/81/19 31/82/19 +f 33/83/9 35/84/9 8/80/9 +f 35/85/9 37/86/9 1/87/9 +f 37/86/9 23/88/9 1/87/9 +f 27/89/9 29/90/9 5/91/9 +f 10/81/9 5/91/9 29/90/9 +f 27/92/9 3/93/9 25/94/9 +f 25/94/9 3/93/9 23/95/9 +f 23/96/20 21/97/20 2/98/20 +f 56/99/8 55/100/8 53/101/8 +f 60/102/2 59/103/2 55/104/2 +f 58/105/3 57/106/3 59/107/3 +f 54/108/9 53/109/9 57/110/9 +f 55/100/21 61/111/21 62/112/21 +f 60/102/20 56/99/20 54/108/20 +f 61/111/1 63/113/1 64/114/1 +f 59/103/2 63/115/2 61/116/2 +f 53/109/9 62/117/9 64/118/9 +f 57/106/22 64/114/22 63/113/22 +f 68/119/8 67/120/8 65/121/8 +f 72/122/2 71/123/2 67/124/2 +f 70/125/3 69/126/3 71/127/3 +f 66/128/9 65/129/9 69/130/9 +f 67/120/1 71/131/1 69/132/1 +f 72/122/20 68/119/20 66/128/20 +f 76/133/23 75/134/23 73/135/23 +f 78/136/24 77/137/24 75/134/24 +f 80/138/20 79/139/20 77/137/20 +f 82/140/25 81/141/25 79/139/25 +f 89/142/17 97/143/17 98/144/17 +f 28/37/9 85/145/9 86/146/9 +f 38/59/9 36/55/9 89/147/9 +f 30/41/9 86/148/9 87/149/9 +f 38/59/9 90/150/9 84/151/9 +f 32/51/9 87/152/9 88/153/9 +f 26/32/9 83/154/9 85/155/9 +f 34/52/9 88/156/9 89/157/9 +f 97/143/9 95/158/9 93/159/9 +f 87/160/14 95/158/14 96/161/14 +f 85/162/15 93/159/15 94/163/15 +f 84/164/11 92/165/11 91/166/11 +f 90/167/10 98/144/10 92/165/10 +f 88/168/12 96/161/12 97/143/12 +f 86/169/16 94/163/16 95/158/16 +f 83/170/13 91/166/13 93/159/13 +f 100/171/11 102/172/11 101/173/11 +f 102/172/13 104/174/13 103/175/13 +f 104/174/15 106/176/15 105/177/15 +f 106/176/16 108/178/16 107/179/16 +f 107/180/14 108/181/14 110/182/14 +f 110/182/12 112/183/12 111/184/12 +f 112/185/9 108/186/9 104/187/9 +f 114/188/10 100/171/10 99/189/10 +f 112/183/17 114/188/17 113/190/17 +f 105/191/2 109/192/2 101/193/2 +f 5/194/1 10/1/1 6/3/1 +f 4/9/3 3/195/3 27/7/3 +f 27/7/3 5/194/3 6/3/3 +f 6/3/3 42/8/3 27/7/3 +f 11/25/4 12/10/4 13/12/4 +f 13/12/5 14/11/5 15/14/5 +f 15/14/6 16/13/6 17/16/6 +f 17/16/7 18/15/7 19/18/7 +f 12/196/3 9/2/3 10/1/3 +f 10/1/3 20/19/3 12/196/3 +f 18/20/3 16/197/3 14/21/3 +f 14/21/3 12/196/3 20/19/3 +f 19/198/8 8/199/8 7/65/8 +f 7/65/8 11/22/8 19/198/8 +f 13/23/8 15/200/8 17/24/8 +f 17/24/8 19/198/8 11/22/8 +f 9/201/2 12/10/2 7/26/2 +f 8/202/9 19/18/9 10/27/9 +f 51/62/10 52/28/10 22/30/10 +f 23/60/11 24/31/11 25/33/11 +f 47/40/12 48/34/12 49/36/12 +f 25/33/13 26/32/13 27/38/13 +f 45/203/14 46/39/14 47/40/14 +f 27/38/15 28/37/15 29/42/15 +f 43/49/16 44/43/16 45/45/16 +f 29/42/16 30/41/16 31/47/16 +f 41/54/15 42/48/15 43/49/15 +f 33/204/14 31/50/14 34/52/14 +f 39/63/13 40/53/13 41/54/13 +f 33/204/12 34/52/12 35/56/12 +f 26/32/9 24/31/9 83/58/9 +f 37/61/10 38/59/10 23/60/10 +f 35/56/17 36/55/17 37/61/17 +f 49/36/17 50/35/17 51/62/17 +f 22/30/11 21/29/11 39/63/11 +f 35/66/8 1/205/8 2/98/8 +f 2/98/8 50/64/8 35/66/8 +f 7/65/8 8/199/8 35/66/8 +f 9/72/1 7/69/1 46/70/1 +f 44/73/2 6/71/2 46/70/2 +f 33/83/9 8/80/9 31/82/9 +f 31/82/26 10/81/26 29/90/26 +f 2/98/20 1/205/20 23/96/20 +f 23/96/20 3/195/20 4/9/20 +f 4/9/20 21/97/20 23/96/20 +f 54/108/8 56/99/8 53/101/8 +f 56/99/2 60/102/2 55/104/2 +f 60/206/3 58/105/3 59/107/3 +f 58/207/9 54/108/9 57/110/9 +f 53/101/21 55/100/21 62/112/21 +f 58/207/20 60/102/20 54/108/20 +f 62/112/1 61/111/1 64/114/1 +f 55/104/2 59/103/2 61/116/2 +f 57/110/9 53/109/9 64/118/9 +f 59/107/22 57/106/22 63/113/22 +f 66/128/8 68/119/8 65/121/8 +f 68/119/2 72/122/2 67/124/2 +f 72/122/3 70/125/3 71/127/3 +f 70/125/9 66/128/9 69/130/9 +f 65/121/1 67/120/1 69/132/1 +f 70/125/20 72/122/20 66/128/20 +f 74/208/23 76/133/23 73/135/23 +f 76/133/24 78/136/24 75/134/24 +f 78/136/20 80/138/20 77/137/20 +f 80/138/25 82/140/25 79/139/25 +f 90/209/17 89/142/17 98/144/17 +f 30/41/9 28/37/9 86/146/9 +f 90/210/9 38/59/9 89/147/9 +f 32/46/9 30/41/9 87/149/9 +f 24/31/9 38/59/9 84/151/9 +f 34/52/9 32/51/9 88/153/9 +f 28/37/9 26/32/9 85/155/9 +f 36/55/9 34/52/9 89/157/9 +f 93/159/9 91/166/9 92/165/9 +f 92/165/9 98/144/9 93/159/9 +f 97/143/9 96/161/9 95/158/9 +f 95/158/9 94/163/9 93/159/9 +f 93/159/9 98/144/9 97/143/9 +f 88/211/14 87/160/14 96/161/14 +f 86/212/15 85/162/15 94/163/15 +f 83/213/11 84/164/11 91/166/11 +f 84/214/10 90/167/10 92/165/10 +f 89/215/12 88/168/12 97/143/12 +f 87/216/16 86/169/16 95/158/16 +f 85/217/13 83/170/13 93/159/13 +f 99/189/11 100/171/11 101/173/11 +f 101/173/13 102/172/13 103/175/13 +f 103/175/15 104/174/15 105/177/15 +f 105/177/16 106/176/16 107/179/16 +f 109/218/14 107/180/14 110/182/14 +f 109/218/12 110/182/12 111/184/12 +f 104/187/9 102/219/9 100/220/9 +f 100/220/9 114/221/9 104/187/9 +f 112/185/9 110/222/9 108/186/9 +f 108/186/9 106/223/9 104/187/9 +f 104/187/9 114/221/9 112/185/9 +f 113/190/10 114/188/10 99/189/10 +f 111/184/17 112/183/17 113/190/17 +f 113/224/2 99/225/2 101/193/2 +f 101/193/2 103/226/2 105/191/2 +f 105/191/2 107/227/2 109/192/2 +f 109/192/2 111/228/2 113/224/2 +f 113/224/2 101/193/2 109/192/2 diff --git a/assets/hbm/models/turret_cheapo_rotor.obj b/assets/hbm/models/turret_cheapo_rotor.obj new file mode 100644 index 000000000..863a0cac0 --- /dev/null +++ b/assets/hbm/models/turret_cheapo_rotor.obj @@ -0,0 +1,218 @@ +# Blender v2.76 (sub 0) OBJ File: 'turret_cheapo_rotor.blend' +# www.blender.org +o Grid.002_Grid.004 +v 0.125000 1.125000 0.125000 +v 0.125000 1.125000 -0.125000 +v 0.000000 1.125000 -0.125000 +v 0.000000 1.125000 0.125000 +v -0.000000 1.250000 -0.125000 +v 0.125000 1.250000 -0.125000 +v -0.000000 1.250000 0.125000 +v 0.125000 1.250000 0.125000 +v -0.000000 1.338388 0.088388 +v 0.125000 1.338388 0.088388 +v -0.000000 1.375000 -0.000000 +v 0.125000 1.375000 -0.000000 +v -0.000000 1.338388 -0.088388 +v 0.125000 1.338388 -0.088388 +v -0.156250 1.250000 -0.050000 +v 0.156250 1.250000 -0.050000 +v -0.156250 1.214645 -0.035355 +v 0.156250 1.214645 -0.035355 +v -0.156250 1.200000 0.000000 +v 0.156250 1.200000 0.000000 +v -0.156250 1.214645 0.035355 +v 0.156250 1.214645 0.035355 +v -0.156250 1.250000 0.050000 +v 0.156250 1.250000 0.050000 +v -0.156250 1.285355 0.035355 +v 0.156250 1.285355 0.035355 +v -0.156250 1.300000 -0.000000 +v 0.156250 1.300000 -0.000000 +v -0.156250 1.285355 -0.035355 +v 0.156250 1.285355 -0.035355 +v 0.000000 1.000000 0.125000 +v 0.000000 1.000000 -0.125000 +v 0.125000 1.000000 -0.125000 +v 0.125000 1.000000 0.125000 +v -0.088388 1.000000 0.088388 +v -0.088388 1.125000 0.088388 +v -0.125000 1.000000 -0.000000 +v -0.125000 1.125000 -0.000000 +v -0.088388 1.000000 -0.088388 +v -0.088388 1.125000 -0.088388 +vt 0.258909 0.629669 +vt 0.038488 0.519458 +vt 0.258909 0.519458 +vt 0.961512 0.258909 +vt 0.929232 0.336840 +vt 0.773371 0.336840 +vt 0.664115 0.258909 +vt 0.664115 0.343261 +vt 0.553904 0.343261 +vt 0.664115 0.427613 +vt 0.553904 0.427613 +vt 0.664115 0.596316 +vt 0.664115 0.706527 +vt 0.553905 0.706527 +vt 0.664115 0.511965 +vt 0.553904 0.596316 +vt 0.553904 0.511965 +vt 0.553904 0.148698 +vt 0.664115 0.148698 +vt 0.395472 0.240932 +vt 0.395472 0.274673 +vt 0.119944 0.274673 +vt 0.395472 0.308414 +vt 0.119944 0.308413 +vt 0.395471 0.038488 +vt 0.395471 0.072228 +vt 0.119944 0.072230 +vt 0.395472 0.105969 +vt 0.119944 0.105970 +vt 0.395472 0.139710 +vt 0.119944 0.139711 +vt 0.395472 0.173451 +vt 0.119944 0.173451 +vt 0.476929 0.274673 +vt 0.453071 0.332272 +vt 0.395472 0.207191 +vt 0.119944 0.240932 +vt 0.119944 0.207192 +vt 0.096086 0.332272 +vt 0.038488 0.274673 +vt 0.062346 0.250815 +vt 0.122839 0.816855 +vt 0.207191 0.816855 +vt 0.207191 0.927066 +vt 0.291543 0.816855 +vt 0.291543 0.927066 +vt 0.553904 0.038488 +vt 0.664115 0.038488 +vt 0.664116 0.816738 +vt 0.553905 0.816738 +vt 0.375894 0.816855 +vt 0.375894 0.927066 +vt 0.038488 0.927066 +vt 0.038488 0.816855 +vt 0.741091 0.148698 +vt 0.741091 0.038488 +vt 0.961512 0.038488 +vt 0.741091 0.556306 +vt 0.741091 0.446095 +vt 0.961512 0.556306 +vt 0.226629 0.707600 +vt 0.148698 0.739880 +vt 0.070768 0.707600 +vt 0.226629 0.441527 +vt 0.038488 0.629669 +vt 0.070768 0.441527 +vt 0.148698 0.409247 +vt 0.741091 0.258909 +vt 0.961512 0.148698 +vt 0.851301 0.369120 +vt 0.553904 0.258909 +vt 0.119944 0.038489 +vt 0.419330 0.250814 +vt 0.453071 0.250814 +vt 0.476929 0.308414 +vt 0.419330 0.332272 +vt 0.096086 0.250815 +vt 0.062346 0.332272 +vt 0.038488 0.308414 +vt 0.122839 0.927066 +vt 0.929232 0.634237 +vt 0.851301 0.666517 +vt 0.773371 0.634237 +vt 0.961512 0.446095 +vn -1.000000 -0.000000 0.000000 +vn 1.000000 0.000000 0.000000 +vn 0.000000 0.382700 0.923900 +vn 0.000000 0.923900 0.382700 +vn 0.000000 0.000000 -1.000000 +vn 0.000000 0.382700 -0.923900 +vn 0.000000 0.923900 -0.382700 +vn 0.000000 0.000000 1.000000 +vn 0.000000 -0.382700 -0.923900 +vn 0.000000 -0.923900 -0.382700 +vn 0.000000 -0.923900 0.382700 +vn 0.000000 -0.382700 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.382700 0.000000 0.923900 +vn 0.000000 -1.000000 0.000000 +vn 0.000000 1.000000 0.000000 +s off +f 3/1/1 7/2/1 5/3/1 +f 6/4/2 14/5/2 10/6/2 +f 8/7/3 10/8/3 9/9/3 +f 10/8/4 12/10/4 11/11/4 +f 6/12/5 2/13/5 3/14/5 +f 14/15/6 6/12/6 5/16/6 +f 12/10/7 14/15/7 13/17/7 +f 4/18/8 1/19/8 8/7/8 +f 16/20/9 18/21/9 17/22/9 +f 18/21/10 20/23/10 19/24/10 +f 20/25/11 22/26/11 21/27/11 +f 22/26/12 24/28/12 23/29/12 +f 24/28/3 26/30/3 25/31/3 +f 26/30/4 28/32/4 27/33/4 +f 28/34/2 24/35/2 20/23/2 +f 30/36/6 16/20/6 15/37/6 +f 28/32/7 30/36/7 29/38/7 +f 21/39/1 27/40/1 29/41/1 +f 36/42/13 38/43/13 37/44/13 +f 38/43/14 40/45/14 39/46/14 +f 4/18/8 31/47/8 34/48/8 +f 2/13/5 33/49/5 32/50/5 +f 40/45/15 3/51/15 32/52/15 +f 31/53/16 4/54/16 36/42/16 +f 1/55/2 34/56/2 33/57/2 +f 32/58/17 33/59/17 31/60/17 +f 40/61/18 38/62/18 36/63/18 +f 13/64/1 5/3/1 7/2/1 +f 3/1/1 4/65/1 7/2/1 +f 7/2/1 9/66/1 11/67/1 +f 11/67/1 13/64/1 7/2/1 +f 8/68/2 1/55/2 2/69/2 +f 2/69/2 6/4/2 8/68/2 +f 14/5/2 12/70/2 10/6/2 +f 10/6/2 8/68/2 6/4/2 +f 7/71/3 8/7/3 9/9/3 +f 9/9/4 10/8/4 11/11/4 +f 5/16/5 6/12/5 3/14/5 +f 13/17/6 14/15/6 5/16/6 +f 11/11/7 12/10/7 13/17/7 +f 7/71/8 4/18/8 8/7/8 +f 15/37/9 16/20/9 17/22/9 +f 17/22/10 18/21/10 19/24/10 +f 19/72/11 20/25/11 21/27/11 +f 21/27/12 22/26/12 23/29/12 +f 23/29/3 24/28/3 25/31/3 +f 25/31/4 26/30/4 27/33/4 +f 20/23/2 18/21/2 16/73/2 +f 16/73/2 30/74/2 28/34/2 +f 28/34/2 26/75/2 24/35/2 +f 24/35/2 22/76/2 20/23/2 +f 20/23/2 16/73/2 28/34/2 +f 29/38/6 30/36/6 15/37/6 +f 27/33/7 28/32/7 29/38/7 +f 29/41/1 15/77/1 17/22/1 +f 17/22/1 19/24/1 29/41/1 +f 21/39/1 23/78/1 25/79/1 +f 25/79/1 27/40/1 21/39/1 +f 29/41/1 19/24/1 21/39/1 +f 35/80/13 36/42/13 37/44/13 +f 37/44/14 38/43/14 39/46/14 +f 1/19/8 4/18/8 34/48/8 +f 3/14/5 2/13/5 32/50/5 +f 39/46/15 40/45/15 32/52/15 +f 35/80/16 31/53/16 36/42/16 +f 2/69/2 1/55/2 33/57/2 +f 35/81/17 37/82/17 39/83/17 +f 39/83/17 32/58/17 31/60/17 +f 33/59/17 34/84/17 31/60/17 +f 31/60/17 35/81/17 39/83/17 +f 36/63/18 4/65/18 3/1/18 +f 3/1/18 40/61/18 36/63/18 diff --git a/assets/hbm/sounds.json b/assets/hbm/sounds.json index 10fc188ff..a40d878d9 100644 --- a/assets/hbm/sounds.json +++ b/assets/hbm/sounds.json @@ -55,10 +55,14 @@ "weapon.defabShoot": {"category": "player", "sounds": [{"name": "weapon/defabShoot", "stream": false}]}, "weapon.sparkShoot": {"category": "player", "sounds": ["weapon/sparkShoot1", "weapon/sparkShoot2", "weapon/sparkShoot3"]}, "weapon.bang": {"category": "player", "sounds": [{"name": "weapon/bang", "stream": false}]}, + "weapon.slice": {"category": "player", "sounds": [{"name": "weapon/slice", "stream": false}]}, + "weapon.kapeng": {"category": "player", "sounds": [{"name": "weapon/kapeng", "stream": false}]}, "weapon.leverActionReload": {"category": "player", "sounds": [{"name": "weapon/leverActionReload", "stream": false}]}, "weapon.b92Reload": {"category": "player", "sounds": [{"name": "weapon/b92Reload", "stream": false}]}, "weapon.stingerLockOn": {"category": "player", "sounds": [{"name": "weapon/stingerLockOn", "stream": false}]}, "weapon.sawShoot": {"category": "player", "sounds": [{"name": "weapon/sawShoot", "stream": false}]}, + "weapon.spinup": {"category": "player", "sounds": [{"name": "weapon/spinup", "stream": false}]}, + "weapon.spindown": {"category": "player", "sounds": [{"name": "weapon/spindown", "stream": false}]}, "weapon.reloadTurret": {"category": "player", "sounds": [{"name": "weapon/reloadTurret", "stream": false}]}, "weapon.switchmode1": {"category": "player", "sounds": [{"name": "weapon/switchmode1", "stream": false}]}, diff --git a/assets/hbm/sounds/weapon/kapeng.ogg b/assets/hbm/sounds/weapon/kapeng.ogg new file mode 100644 index 000000000..20f1d1043 Binary files /dev/null and b/assets/hbm/sounds/weapon/kapeng.ogg differ diff --git a/assets/hbm/sounds/weapon/slice.ogg b/assets/hbm/sounds/weapon/slice.ogg new file mode 100644 index 000000000..40f098e60 Binary files /dev/null and b/assets/hbm/sounds/weapon/slice.ogg differ diff --git a/assets/hbm/sounds/weapon/spindown.ogg b/assets/hbm/sounds/weapon/spindown.ogg new file mode 100644 index 000000000..9c1220495 Binary files /dev/null and b/assets/hbm/sounds/weapon/spindown.ogg differ diff --git a/assets/hbm/sounds/weapon/spinup.ogg b/assets/hbm/sounds/weapon/spinup.ogg new file mode 100644 index 000000000..6e662e35b Binary files /dev/null and b/assets/hbm/sounds/weapon/spinup.ogg differ diff --git a/assets/hbm/textures/items/shimmer_axe_head.png b/assets/hbm/textures/items/shimmer_axe_head.png new file mode 100644 index 000000000..948010875 Binary files /dev/null and b/assets/hbm/textures/items/shimmer_axe_head.png differ diff --git a/assets/hbm/textures/models/turret_cheapo_base.png b/assets/hbm/textures/models/turret_cheapo_base.png new file mode 100644 index 000000000..3b907d465 Binary files /dev/null and b/assets/hbm/textures/models/turret_cheapo_base.png differ diff --git a/assets/hbm/textures/models/turret_cheapo_gun.png b/assets/hbm/textures/models/turret_cheapo_gun.png new file mode 100644 index 000000000..b13b40cca Binary files /dev/null and b/assets/hbm/textures/models/turret_cheapo_gun.png differ diff --git a/assets/hbm/textures/models/turret_cheapo_head.png b/assets/hbm/textures/models/turret_cheapo_head.png new file mode 100644 index 000000000..19aa1b62b Binary files /dev/null and b/assets/hbm/textures/models/turret_cheapo_head.png differ diff --git a/assets/hbm/textures/models/turret_cheapo_rotor.png b/assets/hbm/textures/models/turret_cheapo_rotor.png new file mode 100644 index 000000000..a7272d99d Binary files /dev/null and b/assets/hbm/textures/models/turret_cheapo_rotor.png differ diff --git a/com/hbm/blocks/ModBlocks.java b/com/hbm/blocks/ModBlocks.java index 973be21c5..a023d5a40 100644 --- a/com/hbm/blocks/ModBlocks.java +++ b/com/hbm/blocks/ModBlocks.java @@ -416,6 +416,7 @@ public class ModBlocks { public static Block turret_tau; public static Block turret_spitfire; public static Block turret_cwis; + public static Block turret_cheapo; public static Block book_guide; @@ -756,6 +757,7 @@ public class ModBlocks { turret_tau = new TurretTau(Material.iron).setBlockName("turret_tau").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_tau"); turret_spitfire = new TurretSpitfire(Material.iron).setBlockName("turret_spitfire").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_spitfire"); turret_cwis = new TurretCIWS(Material.iron).setBlockName("turret_cwis").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_cwis"); + turret_cheapo = new TurretCheapo(Material.iron).setBlockName("turret_cheapo").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke).setBlockTextureName(RefStrings.MODID + ":turret_cheapo"); book_guide = new Guide(Material.iron).setBlockName("book_guide").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.tabNuke); @@ -1003,6 +1005,7 @@ public class ModBlocks { GameRegistry.registerBlock(turret_tau, turret_tau.getUnlocalizedName()); GameRegistry.registerBlock(turret_spitfire, turret_spitfire.getUnlocalizedName()); GameRegistry.registerBlock(turret_cwis, turret_cwis.getUnlocalizedName()); + GameRegistry.registerBlock(turret_cheapo, turret_cheapo.getUnlocalizedName()); //Block Bombs GameRegistry.registerBlock(flame_war, flame_war.getUnlocalizedName()); diff --git a/com/hbm/blocks/bomb/BombFloat.java b/com/hbm/blocks/bomb/BombFloat.java index d108b8af0..3a4e54435 100644 --- a/com/hbm/blocks/bomb/BombFloat.java +++ b/com/hbm/blocks/bomb/BombFloat.java @@ -58,6 +58,8 @@ public class BombFloat extends Block implements IBomb { @Override public void explode(World world, int x, int y, int z) { + world.playSoundEffect(x, y, z, "hbm:weapon.sparkShoot", 5.0f, world.rand.nextFloat() * 0.2F + 0.9F); + if(!world.isRemote) { world.setBlock(x, y, z, Blocks.air); if(this == ModBlocks.float_bomb) { diff --git a/com/hbm/blocks/bomb/TurretCheapo.java b/com/hbm/blocks/bomb/TurretCheapo.java new file mode 100644 index 000000000..d63a7e633 --- /dev/null +++ b/com/hbm/blocks/bomb/TurretCheapo.java @@ -0,0 +1,78 @@ +package com.hbm.blocks.bomb; + +import com.hbm.entity.projectile.EntityBullet; +import com.hbm.tileentity.bomb.TileEntityTurretCIWS; +import com.hbm.tileentity.bomb.TileEntityTurretCheapo; + +import net.minecraft.block.material.Material; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.Vec3; +import net.minecraft.world.World; + +public class TurretCheapo extends TurretBase { + + public TurretCheapo(Material mat) { + super(mat); + } + + @Override + public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) { + return new TileEntityTurretCheapo(); + } + + @Override + public boolean executeHoldAction(World world, int i, double yaw, double pitch, int x, int y, int z) { + + boolean flag = false; + + if(pitch < -30) + pitch = -30; + if(pitch > 15) + pitch = 15; + + TileEntityTurretCheapo te = (TileEntityTurretCheapo)world.getTileEntity(x, y, z); + + if(i == 0 && te.spin < 10) + world.playSoundEffect(x, y, z, "hbm:weapon.spinup", 1.0F, 1.0F); + + if(te.spin < 35) + te.spin += 5; + + if(te.spin > 25 && i % 4 == 0) { + Vec3 vector = Vec3.createVectorHelper( + -Math.sin(yaw / 180.0F * (float) Math.PI) * Math.cos(pitch / 180.0F * (float) Math.PI), + -Math.sin(pitch / 180.0F * (float) Math.PI), + Math.cos(yaw / 180.0F * (float) Math.PI) * Math.cos(pitch / 180.0F * (float) Math.PI)); + + vector.normalize(); + + if(!world.isRemote) { + EntityBullet bullet = new EntityBullet(world); + bullet.posX = x + vector.xCoord * 1.5 + 0.5; + bullet.posY = y + vector.yCoord * 1.5 + 1.5; + bullet.posZ = z + vector.zCoord * 1.5 + 0.5; + + bullet.motionX = vector.xCoord * 3; + bullet.motionY = vector.yCoord * 3; + bullet.motionZ = vector.zCoord * 3; + + bullet.damage = rand.nextInt(11) + 10; + + world.spawnEntityInWorld(bullet); + } + + world.playSoundEffect(x, y, z, "hbm:weapon.sawShoot", 3.0F, 1.0F); + + flag = true; + } + + return flag; + } + + @Override + public void executeReleaseAction(World world, int i, double yaw, double pitch, int x, int y, int z) { + + world.playSoundEffect(x, y, z, "hbm:weapon.spindown", 1.0F, 1.0F); + } + +} diff --git a/com/hbm/items/ModItems.java b/com/hbm/items/ModItems.java index 525a309f8..27627689b 100644 --- a/com/hbm/items/ModItems.java +++ b/com/hbm/items/ModItems.java @@ -332,6 +332,7 @@ public class ModItems { public static Item combine_scrap; public static Item shimmer_head; + public static Item shimmer_axe_head; public static Item shimmer_handle; public static Item telepad; @@ -1076,6 +1077,7 @@ public class ModItems { public static Item remote; public static Item turret_control; public static Item turret_chip; + public static Item turret_biometry; public static Item chopper; public static Item turret_light_ammo; @@ -1469,6 +1471,7 @@ public class ModItems { combine_scrap = new Item().setUnlocalizedName("combine_scrap").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":combine_scrap"); shimmer_head = new Item().setUnlocalizedName("shimmer_head").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":shimmer_head_original"); + shimmer_axe_head = new Item().setUnlocalizedName("shimmer_axe_head").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":shimmer_axe_head"); shimmer_handle = new Item().setUnlocalizedName("shimmer_handle").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":shimmer_handle"); telepad = new Item().setUnlocalizedName("telepad").setCreativeTab(MainRegistry.tabParts).setTextureName(RefStrings.MODID + ":telepad"); @@ -2051,7 +2054,8 @@ public class ModItems { linker = new ItemTeleLink().setUnlocalizedName("linker").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":linker"); oil_detector = new ItemOilDetector().setUnlocalizedName("oil_detector").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":oil_detector"); turret_control = new ItemTurretControl().setUnlocalizedName("turret_control").setFull3D().setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":turret_control"); - turret_chip = new ItemTurretChip().setUnlocalizedName("turret_chip").setFull3D().setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":turret_chip"); + turret_chip = new ItemTurretChip().setUnlocalizedName("turret_chip").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":turret_chip"); + turret_biometry = new ItemTurretBiometry().setUnlocalizedName("turret_biometry").setFull3D().setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":rei_scanner"); geiger_counter = new ItemGeigerCounter().setUnlocalizedName("geiger_counter").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":geiger_counter"); survey_scanner = new ItemSurveyScanner().setUnlocalizedName("survey_scanner").setMaxStackSize(1).setCreativeTab(MainRegistry.tabNuke).setTextureName(RefStrings.MODID + ":survey_scanner"); @@ -2630,6 +2634,7 @@ public class ModItems { //Hammer Parts GameRegistry.registerItem(shimmer_head, shimmer_head.getUnlocalizedName()); + GameRegistry.registerItem(shimmer_axe_head, shimmer_axe_head.getUnlocalizedName()); GameRegistry.registerItem(shimmer_handle, shimmer_handle.getUnlocalizedName()); //Circuits @@ -3010,6 +3015,7 @@ public class ModItems { GameRegistry.registerItem(designator_manual, designator_manual.getUnlocalizedName()); GameRegistry.registerItem(turret_control, turret_control.getUnlocalizedName()); GameRegistry.registerItem(turret_chip, turret_chip.getUnlocalizedName()); + GameRegistry.registerItem(turret_biometry, turret_biometry.getUnlocalizedName()); GameRegistry.registerItem(linker, linker.getUnlocalizedName()); GameRegistry.registerItem(oil_detector, oil_detector.getUnlocalizedName()); GameRegistry.registerItem(survey_scanner, survey_scanner.getUnlocalizedName()); diff --git a/com/hbm/items/gear/WeaponSpecial.java b/com/hbm/items/gear/WeaponSpecial.java index 6fbb47c4f..7ad0cec3a 100644 --- a/com/hbm/items/gear/WeaponSpecial.java +++ b/com/hbm/items/gear/WeaponSpecial.java @@ -38,7 +38,7 @@ public class WeaponSpecial extends ItemSword { if(this == ModItems.ullapool_caber) { return EnumRarity.uncommon; } - if(this == ModItems.shimmer_sledge) { + if(this == ModItems.shimmer_sledge || this == ModItems.shimmer_axe) { return EnumRarity.epic; } @@ -94,6 +94,13 @@ public class WeaponSpecial extends ItemSword { entity.motionZ += dZ; world.playSoundAtEntity(entity, "hbm:weapon.bang", 3.0F, 1.F); } + + if(this == ModItems.shimmer_axe) { + + entity.setHealth(entity.getHealth() / 2); + + world.playSoundAtEntity(entity, "hbm:weapon.slice", 3.0F, 1.F); + } return false; } @@ -101,7 +108,7 @@ public class WeaponSpecial extends ItemSword { @Override public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int i, float f1, float f2, float f3) { - + if(this == ModItems.shimmer_sledge) { if(world.getBlock(x, y, z) != Blocks.air) { @@ -120,7 +127,7 @@ public class WeaponSpecial extends ItemSword { rubble.motionX += dX; rubble.motionY += dY; rubble.motionZ += dZ; - world.playSoundAtEntity(rubble, "hbm:weapon.bang", 3.0F, 1.F); + world.playSoundAtEntity(rubble, "hbm:weapon.bang", 3.0F, 1.0F); if(!world.isRemote) { @@ -131,6 +138,24 @@ public class WeaponSpecial extends ItemSword { return true; } + if(this == ModItems.shimmer_axe) { + + world.playSoundEffect(x + 0.5, y + 0.5, z + 0.5, "hbm:weapon.kapeng", 3.0F, 1.0F); + + if(!world.isRemote) { + if(world.getBlock(x, y, z) != Blocks.air) { + world.func_147480_a(x, y, z, false); + } + if(world.getBlock(x, y + 1, z) != Blocks.air) { + world.func_147480_a(x, y + 1, z, false); + } + if(world.getBlock(x, y - 1, z) != Blocks.air) { + world.func_147480_a(x, y - 1, z, false); + } + } + return true; + } + return false; } @@ -141,7 +166,7 @@ public class WeaponSpecial extends ItemSword { if(this == ModItems.schrabidium_hammer) { multimap.put(SharedMonsterAttributes.movementSpeed.getAttributeUnlocalizedName(), new AttributeModifier(field_111210_e, "Weapon modifier", -0.5, 1)); } - if(this == ModItems.shimmer_sledge) { + if(this == ModItems.shimmer_sledge || this == ModItems.shimmer_axe) { multimap.put(SharedMonsterAttributes.movementSpeed.getAttributeUnlocalizedName(), new AttributeModifier(field_111210_e, "Weapon modifier", -0.2, 1)); } return multimap; @@ -173,6 +198,13 @@ public class WeaponSpecial extends ItemSword { list.add("Breaks everything, even portals."); } } + if(this == ModItems.shimmer_axe) { + if(MainRegistry.polaroidID == 11) { + list.add("shim's toolbox does an e-x-p-a-n-d"); + } else { + list.add("Timber!"); + } + } } } diff --git a/com/hbm/items/tool/ItemTurretBiometry.java b/com/hbm/items/tool/ItemTurretBiometry.java new file mode 100644 index 000000000..5d9d9dae5 --- /dev/null +++ b/com/hbm/items/tool/ItemTurretBiometry.java @@ -0,0 +1,67 @@ +package com.hbm.items.tool; + +import java.util.List; + +import com.hbm.blocks.bomb.TurretBase; +import com.hbm.tileentity.bomb.TileEntityTurretBase; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.ChatComponentText; +import net.minecraft.world.World; + +public class ItemTurretBiometry extends Item { + + @Override + public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) + { + list.add("Channel set to " + getFreq(itemstack)); + } + + @Override + public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) { + + int i = 0; + + if(player.isSneaking()) { + i = (getFreq(stack) - 1); + } else { + i = (getFreq(stack) + 1); + } + + if(i == -1) + i = 255; + + if(i == 256) + i = 0; + + setFreq(stack, i); + + if(world.isRemote) + player.addChatMessage(new ChatComponentText("Channel set to " + i)); + + world.playSoundAtEntity(player, "hbm:item.techBleep", 1.0F, 1.0F); + + player.swingItem(); + + return stack; + } + + public static int getFreq(ItemStack stack) { + if(stack.stackTagCompound == null) { + stack.stackTagCompound = new NBTTagCompound(); + return 0; + } + return stack.stackTagCompound.getInteger("freq"); + } + + private static void setFreq(ItemStack stack, int i) { + if(stack.stackTagCompound == null) { + stack.stackTagCompound = new NBTTagCompound(); + } + stack.stackTagCompound.setInteger("freq", i); + } +} diff --git a/com/hbm/items/tool/ItemTurretChip.java b/com/hbm/items/tool/ItemTurretChip.java index 6a21a4b25..6dbc92289 100644 --- a/com/hbm/items/tool/ItemTurretChip.java +++ b/com/hbm/items/tool/ItemTurretChip.java @@ -1,5 +1,7 @@ package com.hbm.items.tool; +import java.util.List; + import com.hbm.blocks.bomb.TurretBase; import com.hbm.tileentity.bomb.TileEntityTurretBase; @@ -13,6 +15,12 @@ import net.minecraft.world.World; public class ItemTurretChip extends Item { + @Override + public void addInformation(ItemStack itemstack, EntityPlayer player, List list, boolean bool) + { + list.add("Channel set to " + getFreq(itemstack)); + } + @Override public boolean onItemUse(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int p_77648_7_, float p_77648_8_, float p_77648_9_, float p_77648_10_) { @@ -22,10 +30,11 @@ public class ItemTurretChip extends Item { if(te instanceof TileEntityTurretBase) { ((TileEntityTurretBase)te).isAI = true; ((TileEntityTurretBase)te).uuid = player.getUniqueID().toString(); + ((TileEntityTurretBase)te).freq = getFreq(stack); } if(world.isRemote) { - player.addChatMessage(new ChatComponentText("Turret ownership set to: " + player.getDisplayName())); + player.addChatMessage(new ChatComponentText("Turret ownership set to: " + player.getDisplayName() + " on channel " + getFreq(stack))); } world.playSoundAtEntity(player, "hbm:item.techBleep", 1.0F, 1.0F); @@ -35,4 +44,48 @@ public class ItemTurretChip extends Item { return false; } + @Override + public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) { + + int i = 0; + + if(player.isSneaking()) { + i = (getFreq(stack) - 1); + } else { + i = (getFreq(stack) + 1); + } + + if(i == -1) + i = 255; + + if(i == 256) + i = 0; + + setFreq(stack, i); + + if(world.isRemote) + player.addChatMessage(new ChatComponentText("Channel set to " + i)); + + world.playSoundAtEntity(player, "hbm:item.techBleep", 1.0F, 1.0F); + + player.swingItem(); + + return stack; + } + + private static int getFreq(ItemStack stack) { + if(stack.stackTagCompound == null) { + stack.stackTagCompound = new NBTTagCompound(); + return 0; + } + return stack.stackTagCompound.getInteger("freq"); + } + + private static void setFreq(ItemStack stack, int i) { + if(stack.stackTagCompound == null) { + stack.stackTagCompound = new NBTTagCompound(); + } + stack.stackTagCompound.setInteger("freq", i); + } + } diff --git a/com/hbm/items/tool/ItemTurretControl.java b/com/hbm/items/tool/ItemTurretControl.java index 867ea38f9..f9a7a1e60 100644 --- a/com/hbm/items/tool/ItemTurretControl.java +++ b/com/hbm/items/tool/ItemTurretControl.java @@ -8,6 +8,7 @@ import com.hbm.entity.projectile.EntityBullet; import com.hbm.items.ModItems; import com.hbm.lib.ModDamageSource; import com.hbm.tileentity.bomb.TileEntityTurretBase; +import com.hbm.tileentity.bomb.TileEntityTurretCheapo; import net.minecraft.enchantment.Enchantment; import net.minecraft.enchantment.EnchantmentHelper; @@ -45,10 +46,18 @@ public class ItemTurretControl extends Item { if(!turret.isAI) { turret.rotationYaw = player.rotationYaw; turret.rotationPitch = player.rotationPitch; + if(turret.rotationPitch < -60) turret.rotationPitch = -60; if(turret.rotationPitch > 30) turret.rotationPitch = 30; + + if(turret instanceof TileEntityTurretCheapo) { + if(turret.rotationPitch < -30) + turret.rotationPitch = -30; + if(turret.rotationPitch > 15) + turret.rotationPitch = 15; + } } } } diff --git a/com/hbm/main/ClientProxy.java b/com/hbm/main/ClientProxy.java index 34b5174fc..05d27215e 100644 --- a/com/hbm/main/ClientProxy.java +++ b/com/hbm/main/ClientProxy.java @@ -78,6 +78,7 @@ public class ClientProxy extends ServerProxy ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretTau.class, new RenderTauTurret()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretSpitfire.class, new RenderSpitfireTurret()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretCIWS.class, new RenderCIWSTurret()); + ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTurretCheapo.class, new RenderCheapoTurret()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachinePumpjack.class, new RenderPumpjack()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineTurbofan.class, new RenderTurbofan()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachinePress.class, new RenderPress()); diff --git a/com/hbm/main/CraftingManager.java b/com/hbm/main/CraftingManager.java index e4390dc79..4dd290f2e 100644 --- a/com/hbm/main/CraftingManager.java +++ b/com/hbm/main/CraftingManager.java @@ -472,8 +472,10 @@ public class CraftingManager { GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.generator_steel, 1), new Object[] { "RRR", "CCC", "SSS", 'C', ModItems.coil_gold_torus, 'S', "ingotSteel", 'R', ModItems.rotor_steel })); //GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.generator_front, 1), new Object[] { "PSP", "TBT", "TWT", 'P', "plateSteel", 'S', "ingotSteel", 'T', ModItems.tank_steel, 'B', ModItems.turbine_titanium, 'W', ModBlocks.red_wire_coated })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.shimmer_head, 1), new Object[] { "SSS", "DTD", "SSS", 'S', "ingotSteel", 'D', "blockDesh", 'T', "blockTungsten" })); + GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.shimmer_axe_head, 1), new Object[] { "PII", "PBB", "PII", 'P', "plateSteel", 'B', "blockDesh", 'I', "ingotTungsten" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.shimmer_handle, 1), new Object[] { "GP", "GP", "GP", 'G', "plateGold", 'P', "ingotPolymer" })); GameRegistry.addRecipe(new ItemStack(ModItems.shimmer_sledge, 1), new Object[] { "H", "G", "G", 'G', ModItems.shimmer_handle, 'H', ModItems.shimmer_head }); + GameRegistry.addRecipe(new ItemStack(ModItems.shimmer_axe, 1), new Object[] { "H", "G", "G", 'G', ModItems.shimmer_handle, 'H', ModItems.shimmer_axe_head }); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.definitelyfood, 1), new Object[] { "DDD", "SDS", "DDD", 'D', Blocks.dirt, 'S', "plateSteel" })); GameRegistry.addRecipe(new ShapedOreRecipe(new ItemStack(ModItems.blade_tungsten, 2), new Object[] { "IP", "TP", "TI", 'P', "plateTitanium", 'T', "ingotTitanium", 'I', "ingotTungsten" })); GameRegistry.addRecipe(new ItemStack(ModItems.turbine_tungsten, 1), new Object[] { "BBB", "BSB", "BBB", 'B', ModItems.blade_tungsten, 'S', ModItems.ingot_dura_steel }); diff --git a/com/hbm/main/MainRegistry.java b/com/hbm/main/MainRegistry.java index feec2a2a7..06035378a 100644 --- a/com/hbm/main/MainRegistry.java +++ b/com/hbm/main/MainRegistry.java @@ -177,6 +177,7 @@ import com.hbm.tileentity.bomb.TileEntityRedBarrel; import com.hbm.tileentity.bomb.TileEntityTestBombAdvanced; import com.hbm.tileentity.bomb.TileEntityTestNuke; import com.hbm.tileentity.bomb.TileEntityTurretCIWS; +import com.hbm.tileentity.bomb.TileEntityTurretCheapo; import com.hbm.tileentity.bomb.TileEntityTurretFlamer; import com.hbm.tileentity.bomb.TileEntityTurretHeavy; import com.hbm.tileentity.bomb.TileEntityTurretLight; @@ -580,6 +581,7 @@ public class MainRegistry GameRegistry.registerTileEntity(TileEntityTurretCIWS.class, "tileentity_turret_cwis"); GameRegistry.registerTileEntity(TileEntityMachineRadar.class, "tileentity_radar"); GameRegistry.registerTileEntity(TileEntityBroadcaster.class, "tileentity_pink_cloud_broadcaster"); + GameRegistry.registerTileEntity(TileEntityTurretCheapo.class, "tileentity_turret_cheapo"); EntityRegistry.registerModEntity(EntityRocket.class, "entity_rocket", 0, this, 250, 1, true); EntityRegistry.registerModEntity(EntityNukeExplosion.class, "entity_nuke_explosion", 1, this, 250, 1, true); diff --git a/com/hbm/main/ResourceManager.java b/com/hbm/main/ResourceManager.java index 08f89490b..15ff3a012 100644 --- a/com/hbm/main/ResourceManager.java +++ b/com/hbm/main/ResourceManager.java @@ -20,6 +20,9 @@ public class ResourceManager { public static final IModelCustom turret_cwis_base = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/cwis_base.obj")); public static final IModelCustom turret_cwis_rotor = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/cwis_rotor.obj")); + public static final IModelCustom turret_cheapo_base = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/turret_cheapo_base.obj")); + public static final IModelCustom turret_cheapo_rotor = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/turret_cheapo_rotor.obj")); + public static final IModelCustom turret_heavy_gun = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/turret_heavy_gun.obj")); public static final IModelCustom turret_rocket_gun = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/turret_rocket_gun.obj")); public static final IModelCustom turret_light_gun = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/turret_light_gun.obj")); @@ -28,6 +31,8 @@ public class ResourceManager { public static final IModelCustom turret_spitfire_gun = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/turret_spitfire_gun.obj")); public static final IModelCustom turret_cwis_head = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/cwis_head.obj")); public static final IModelCustom turret_cwis_gun = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/cwis_gun.obj")); + public static final IModelCustom turret_cheapo_head = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/turret_cheapo_head.obj")); + public static final IModelCustom turret_cheapo_gun = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/turret_cheapo_gun.obj")); //Pumpjack public static final IModelCustom pumpjack_base = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/pumpjack_base.obj")); @@ -81,6 +86,10 @@ public class ResourceManager { public static final ResourceLocation turret_ciws_rotor_tex = new ResourceLocation(RefStrings.MODID, "textures/models/cwis_rotor.png"); public static final ResourceLocation turret_ciws_head_tex = new ResourceLocation(RefStrings.MODID, "textures/models/cwis_head.png"); public static final ResourceLocation turret_ciws_gun_tex = new ResourceLocation(RefStrings.MODID, "textures/models/cwis_gun.png"); + public static final ResourceLocation turret_cheapo_base_tex = new ResourceLocation(RefStrings.MODID, "textures/models/turret_cheapo_base.png"); + public static final ResourceLocation turret_cheapo_rotor_tex = new ResourceLocation(RefStrings.MODID, "textures/models/turret_cheapo_rotor.png"); + public static final ResourceLocation turret_cheapo_head_tex = new ResourceLocation(RefStrings.MODID, "textures/models/turret_cheapo_head.png"); + public static final ResourceLocation turret_cheapo_gun_tex = new ResourceLocation(RefStrings.MODID, "textures/models/turret_cheapo_gun.png"); //Pumpjack public static final ResourceLocation pumpjack_base_tex = new ResourceLocation(RefStrings.MODID, "textures/models/pumpjack_base.png"); diff --git a/com/hbm/packet/AuxGaugePacket.java b/com/hbm/packet/AuxGaugePacket.java index 912772e88..1a034b45c 100644 --- a/com/hbm/packet/AuxGaugePacket.java +++ b/com/hbm/packet/AuxGaugePacket.java @@ -3,6 +3,7 @@ package com.hbm.packet; import com.hbm.interfaces.IConsumer; import com.hbm.interfaces.ISource; import com.hbm.tileentity.bomb.TileEntityTurretCIWS; +import com.hbm.tileentity.bomb.TileEntityTurretCheapo; import com.hbm.tileentity.machine.TileEntityAMSBase; import com.hbm.tileentity.machine.TileEntityAMSEmitter; import com.hbm.tileentity.machine.TileEntityAMSLimiter; @@ -95,6 +96,11 @@ public class AuxGaugePacket implements IMessage { cwis.rotation = m.value; } + if (te instanceof TileEntityTurretCheapo) { + TileEntityTurretCheapo cwis = (TileEntityTurretCheapo)te; + + cwis.rotation = m.value; + } } catch (Exception x) { } return null; diff --git a/com/hbm/render/tileentity/RenderCheapoTurret.java b/com/hbm/render/tileentity/RenderCheapoTurret.java new file mode 100644 index 000000000..7dd1a7b81 --- /dev/null +++ b/com/hbm/render/tileentity/RenderCheapoTurret.java @@ -0,0 +1,100 @@ +package com.hbm.render.tileentity; + +import org.lwjgl.opengl.GL11; + +import com.hbm.main.ResourceManager; +import com.hbm.tileentity.bomb.TileEntityTurretBase; +import com.hbm.tileentity.bomb.TileEntityTurretCIWS; +import com.hbm.tileentity.bomb.TileEntityTurretCheapo; + +import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.Vec3; + +public class RenderCheapoTurret extends TileEntitySpecialRenderer { + + public RenderCheapoTurret() { } + + @Override + public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f) + { + GL11.glPushMatrix(); + GL11.glTranslated(x + 0.5D, y, z + 0.5D); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glDisable(GL11.GL_CULL_FACE); + GL11.glRotatef(180, 0F, 1F, 0F); + + double yaw = 0; + double pitch = 0; + + if(tileEntity instanceof TileEntityTurretBase) { + yaw = ((TileEntityTurretBase)tileEntity).rotationYaw; + pitch = ((TileEntityTurretBase)tileEntity).rotationPitch; + } + + this.bindTexture(ResourceManager.turret_cheapo_base_tex); + ResourceManager.turret_cheapo_base.renderAll(); + + GL11.glPopMatrix(); + + renderTileEntityAt2(tileEntity, x, y, z, f, yaw, pitch); + } + + public void renderTileEntityAt2(TileEntity tileEntity, double x, double y, double z, float f, double yaw, double pitch) + { + GL11.glPushMatrix(); + GL11.glTranslated(x + 0.5D, y, z + 0.5D); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glDisable(GL11.GL_CULL_FACE); + GL11.glRotatef(180, 0F, 1F, 0F); + + GL11.glRotated(yaw + 180, 0F, -1F, 0F); + + this.bindTexture(ResourceManager.turret_cheapo_rotor_tex); + ResourceManager.turret_cheapo_rotor.renderAll(); + + GL11.glPopMatrix(); + + renderTileEntityAt3(tileEntity, x, y, z, f, yaw, pitch); + } + + public void renderTileEntityAt3(TileEntity tileEntity, double x, double y, double z, float f, double yaw, double pitch) + { + GL11.glPushMatrix(); + GL11.glTranslated(x + 0.5D, y + 1.25D, z + 0.5D); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glDisable(GL11.GL_CULL_FACE); + GL11.glRotatef(180, 0F, 1F, 0F); + + GL11.glRotated(yaw + 180, 0F, -1F, 0F); + GL11.glRotated(pitch, 1F, 0F, 0F); + + this.bindTexture(ResourceManager.turret_cheapo_head_tex); + ResourceManager.turret_cheapo_head.renderAll(); + + GL11.glPopMatrix(); + + renderTileEntityAt4(tileEntity, x, y, z, f, yaw, pitch); + } + + public void renderTileEntityAt4(TileEntity tileEntity, double x, double y, double z, float f, double yaw, double pitch) + { + GL11.glPushMatrix(); + GL11.glTranslated(x + 0.5D, y + 1.25D, z + 0.5D); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glDisable(GL11.GL_CULL_FACE); + GL11.glRotatef(180, 0F, 1F, 0F); + + GL11.glRotated(yaw + 180, 0F, -1F, 0F); + GL11.glRotated(pitch, 1F, 0F, 0F); + + GL11.glTranslated(0, 0.25D, 0); + + GL11.glRotated(((TileEntityTurretCheapo)tileEntity).rotation, 0F, 0F, 1F); + + this.bindTexture(ResourceManager.turret_cheapo_gun_tex); + ResourceManager.turret_cheapo_gun.renderAll(); + + GL11.glPopMatrix(); + } +} diff --git a/com/hbm/tileentity/bomb/TileEntityTurretBase.java b/com/hbm/tileentity/bomb/TileEntityTurretBase.java index 7c22c6530..070ff6eb2 100644 --- a/com/hbm/tileentity/bomb/TileEntityTurretBase.java +++ b/com/hbm/tileentity/bomb/TileEntityTurretBase.java @@ -2,6 +2,7 @@ package com.hbm.tileentity.bomb; import com.hbm.blocks.bomb.TurretBase; import com.hbm.entity.missile.EntityMissileBaseAdvanced; +import com.hbm.items.tool.ItemTurretBiometry; import com.hbm.lib.Library; import com.hbm.packet.LoopedSoundPacket; import com.hbm.packet.PacketDispatcher; @@ -28,6 +29,7 @@ public abstract class TileEntityTurretBase extends TileEntity { public String uuid = "none"; public int use; public int ammo = 0; + public int freq = 0; @Override public void updateEntity() { @@ -61,7 +63,7 @@ public abstract class TileEntityTurretBase extends TileEntity { Vec3 turret = Vec3.createVectorHelper(target.posX - (xCoord + 0.5), target.posY + target.getEyeHeight() - (yCoord + 1), target.posZ - (zCoord + 0.5)); - if(this instanceof TileEntityTurretCIWS || this instanceof TileEntityTurretSpitfire) { + if(this instanceof TileEntityTurretCIWS || this instanceof TileEntityTurretSpitfire || this instanceof TileEntityTurretCheapo) { turret = Vec3.createVectorHelper(target.posX - (xCoord + 0.5), target.posY + target.getEyeHeight() - (yCoord + 1.5), target.posZ - (zCoord + 0.5)); } @@ -73,13 +75,13 @@ public abstract class TileEntityTurretBase extends TileEntity { if(rotationPitch > 30) rotationPitch = 30; - use++; - if(worldObj.getBlock(xCoord, yCoord, zCoord) instanceof TurretBase && ammo > 0) { if(((TurretBase)worldObj.getBlock(xCoord, yCoord, zCoord)).executeHoldAction(worldObj, use, rotationYaw, rotationPitch, xCoord, yCoord, zCoord)) ammo--; } + use++; + } else { use = 0; } @@ -96,11 +98,11 @@ public abstract class TileEntityTurretBase extends TileEntity { if(this instanceof TileEntityTurretCIWS && !(e instanceof EntityMissileBaseAdvanced)) return false; - if(e instanceof EntityPlayer && ((EntityPlayer)e).getUniqueID().toString().equals(uuid)) + if(e instanceof EntityPlayer && (((EntityPlayer)e).getUniqueID().toString().equals(uuid) || playerHasFreq((EntityPlayer)e)) ) return false; Vec3 turret; - if(this instanceof TileEntityTurretSpitfire || this instanceof TileEntityTurretCIWS) + if(this instanceof TileEntityTurretSpitfire || this instanceof TileEntityTurretCIWS || this instanceof TileEntityTurretCheapo) turret = Vec3.createVectorHelper(xCoord + 0.5, yCoord + 1.5, zCoord + 0.5); else turret = Vec3.createVectorHelper(xCoord + 0.5, yCoord + 1, zCoord + 0.5); @@ -119,6 +121,20 @@ public abstract class TileEntityTurretBase extends TileEntity { return !Library.isObstructed(worldObj, turret.xCoord, turret.yCoord, turret.zCoord, entity.xCoord, entity.yCoord, entity.zCoord); } + private boolean playerHasFreq(EntityPlayer player) { + + for(int i = 0; i < player.inventory.getSizeInventory(); i++) { + + ItemStack stack = player.inventory.getStackInSlot(i); + + if(stack != null && stack.getItem() instanceof ItemTurretBiometry) + if(ItemTurretBiometry.getFreq(stack) == this.freq) + return true; + } + + return false; + } + @Override public AxisAlignedBB getRenderBoundingBox() { return TileEntity.INFINITE_EXTENT_AABB; @@ -139,6 +155,7 @@ public abstract class TileEntityTurretBase extends TileEntity { isAI = nbt.getBoolean("AI"); uuid = nbt.getString("player"); ammo = nbt.getInteger("ammo"); + freq = nbt.getInteger("freq"); } @Override @@ -149,6 +166,7 @@ public abstract class TileEntityTurretBase extends TileEntity { nbt.setBoolean("AI", isAI); nbt.setString("player", uuid); nbt.setInteger("ammo", ammo); + nbt.setInteger("freq", freq); } } diff --git a/com/hbm/tileentity/bomb/TileEntityTurretCheapo.java b/com/hbm/tileentity/bomb/TileEntityTurretCheapo.java new file mode 100644 index 000000000..99e9a41be --- /dev/null +++ b/com/hbm/tileentity/bomb/TileEntityTurretCheapo.java @@ -0,0 +1,32 @@ +package com.hbm.tileentity.bomb; + +import com.hbm.packet.AuxGaugePacket; +import com.hbm.packet.PacketDispatcher; + +import net.minecraft.tileentity.TileEntity; + +public class TileEntityTurretCheapo extends TileEntityTurretBase { + + public int spin; + public int rotation; + + @Override + public void updateEntity() { + + super.updateEntity(); + + this.ammo = 100; + + if(!worldObj.isRemote) { + + if(spin > 0) + spin -= 1; + + rotation += spin; + rotation = rotation % 360; + + PacketDispatcher.wrapper.sendToAll(new AuxGaugePacket(xCoord, yCoord, zCoord, rotation, 0)); + } + } + +}