Cheesecaked

Sentry Gun

Oct 9th, 2022
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 34.52 KB | None | 0 0
  1. @name Sentry Gun
  2. @persist Turret:entity Angle:angle Level X X2 X3 X4
  3. @persist Length1 Length2
  4. @persist P_38_44 Len_38_44 Yaw24 Up24 IK_offset
  5. @persist Target:entity Range LoseRange Lose
  6. @persist InitDelay MinDelay Delay Buildup InitDamage Damage DBuildup
  7. @inputs CCFilter CCEntity:entity CCPosition:vector
  8. @outputs Fire Damage
  9. #@model models/props_junk/propane_tank001a.mdl
  10.  
  11. if(dupefinished()){
  12. reset()
  13. }
  14. elseif(first()){
  15. runOnTick(1)
  16.  
  17. #entity():setAlpha(0)
  18.  
  19. findIncludePlayerProps(owner())
  20. findByClass("gmod_wire_turret")
  21. findSortByDistance(entity():pos())
  22. if(find():isValid() & find():pos():distance(entity():pos()) <= 200){
  23. Index = 1
  24. Turret = find()
  25. }
  26.  
  27. ColorBlue = array(vec(0,100,200),vec(0,50,100),vec(0,40,80))
  28.  
  29. Color = ColorBlue
  30.  
  31. #Settings
  32. Range = 1000
  33. LoseRange = 1500
  34.  
  35. InitDelay = 9
  36. MinDelay = 2
  37. Buildup = 0.005
  38. InitDamage = 20
  39. DBuildUp = 0.005
  40. #
  41.  
  42. Delay = InitDelay
  43. Damage = InitDamage
  44.  
  45. #Box and origin
  46. holoCreate(1,entity():pos(),vec(),entity():angles())
  47. holoParent(1,entity())
  48. holoCreate(2,holoEntity(1):pos(),vec(2,5,1/24),holoEntity(1):angles(),Color[1,vector])
  49. holoParent(2,1)
  50. holoCreate(103,holoEntity(1):toWorld(vec(11.75,0,0)),vec(),holoEntity(1):toWorld(ang()))
  51. holoParent(103,2)
  52. holoCreate(3,holoEntity(1):toWorld(vec(11.75,0,12)),vec(1/24,5,2),holoEntity(1):toWorld(ang()),Color[1,vector])
  53. holoAlpha(103,0)
  54. holoParent(3,103)
  55. holoCreate(104,holoEntity(1):toWorld(vec(-11.75,0,0)),vec(),holoEntity(1):toWorld(ang(0,180,0)))
  56. holoAlpha(104,0)
  57. holoParent(104,2)
  58. holoCreate(4,holoEntity(1):toWorld(vec(-11.75,0,12)),vec(1/24,5,2),holoEntity(1):toWorld(ang()),Color[1,vector])
  59. holoParent(4,104)
  60. holoCreate(105,holoEntity(1):toWorld(vec(0,29.75,0)),vec(),holoEntity(1):toWorld(ang(0,90,0)))
  61. holoAlpha(105,0)
  62. holoParent(105,2)
  63. holoCreate(5,holoEntity(1):toWorld(vec(0,29.75,12)),vec(23/12,1/24,2),holoEntity(1):toWorld(ang()),Color[1,vector])
  64. holoParent(5,105)
  65. holoCreate(106,holoEntity(1):toWorld(vec(0,-29.75,0)),vec(),holoEntity(1):toWorld(ang(0,-90,0)))
  66. holoAlpha(106,0)
  67. holoParent(106,2)
  68. holoCreate(6,holoEntity(1):toWorld(vec(0,-29.75,12)),vec(23/12,1/24,2),holoEntity(1):toWorld(ang()),Color[1,vector])
  69. holoParent(6,106)
  70. holoCreate(7,holoEntity(3):toWorld(vec(1,-12,12)),vec(1.5/12,1.5/12,8/12),holoEntity(1):toWorld(ang(0,0,90)),vec(50),"hq_cylinder")
  71. holoParent(7,3)
  72. holoCreate(8,holoEntity(3):toWorld(vec(1,12,12)),vec(1.5/12,1.5/12,8/12),holoEntity(1):toWorld(ang(0,0,90)),vec(50),"hq_cylinder")
  73. holoParent(8,3)
  74. holoCreate(108,holoEntity(3):toWorld(vec(1,0,12)),vec(),holoEntity(1):toWorld(ang()))
  75. holoAlpha(108,0)
  76. holoParent(108,8)
  77. holoCreate(9,holoEntity(1):toWorld(vec(0,0,24)),vec(2,2,5),holoEntity(1):toWorld(ang(0,0,90)),Color[1,vector],"hq_tube_thin")
  78. holoClip(9,vec(0,-0.5,0),vec(0,1,0),0)
  79. holoClipEnabled(9,1)
  80. holoParent(9,108)
  81. holoCreate(10,holoEntity(9):toWorld(vec(0,0,29.75)),vec(22.5/12,22.5/12,1/24),holoEntity(9):toWorld(ang()),Color[1,vector],"hq_cylinder")
  82. holoClip(10,vec(0,-0.5,0),vec(0,1,0),0)
  83. holoClipEnabled(10,1)
  84. holoParent(10,9)
  85. holoCreate(11,holoEntity(9):toWorld(vec(0,0,-29.75)),vec(22.5/12,22.5/12,1/24),holoEntity(9):toWorld(ang()),Color[1,vector],"hq_cylinder")
  86. holoClip(11,vec(0,-0.5,0),vec(0,1,0),0)
  87. holoClipEnabled(11,1)
  88. holoParent(11,9)
  89. holoCreate(12,holoEntity(4):toWorld(vec(-1,0,9)),vec(1.5/12,1.5/12,6/12),holoEntity(1):toWorld(ang(0,0,90)),vec(50),"hq_rcube")
  90. holoParent(12,9)
  91. holoCreate(13,holoEntity(9):toWorld(vec(0,9.1,0)),vec(3/12,2,1/24),holoEntity(1):toWorld(ang()),vec(50))
  92. holoParent(13,9)
  93. holoCreate(14,holoEntity(9):toWorld(vec(0,12,0)),vec(1/12,1/12,15/12),holoEntity(1):toWorld(ang(90,90,0)),vec(50),"hqrcylinder")
  94. holoParent(14,9)
  95. holoCreate(15,holoEntity(9):toWorld(vec(0,10.5,7.9)),vec(1/12,1/12,4/12),holoEntity(1):toWorld(ang(22.5,90,0)),vec(50),"hqrcylinder")
  96. holoParent(15,9)
  97. holoCreate(16,holoEntity(9):toWorld(vec(0,10.5,-7.9)),vec(1/12,1/12,4/12),holoEntity(1):toWorld(ang(-22.5,90,0)),vec(50),"hqrcylinder")
  98. holoParent(16,9)
  99.  
  100. #Hull
  101. holoCreate(17,holoEntity(1):toWorld(vec(0,16,11.5)),vec(20/12,20/12,1),holoEntity(1):toWorld(ang(175,90,0)),Color[2,vector],"hqrcylinder")
  102. holoParent(17,1)
  103. holoCreate(18,holoEntity(17):toWorld(vec(12,0,0)),vec(13/12,14/12,11/12),holoEntity(17):toWorld(ang()),Color[2,vector],"hq_rcube")
  104. holoClip(18,vec(0,0,0),vec(-1,0,0),0)
  105. holoClipEnabled(18,1)
  106. holoParent(18,17)
  107. holoCreate(19,holoEntity(17):toWorld(vec(12,0,0)),-holoScale(18):setX(2/12),holoEntity(18):toWorld(ang()),vec(),"hq_rcube")
  108. holoClip(19,vec(0,0,0),vec(-1,0,0),0)
  109. holoClipEnabled(19,1)
  110. holoParent(19,17)
  111. holoCreate(20,holoEntity(17):toWorld(vec(0,0,1.5)),vec(15/12,15/12,10/12),holoEntity(17):toWorld(ang()),vec(65),"hqrcylinder")
  112. holoParent(20,17)
  113.  
  114. #Skele
  115. holoCreate(21,holoEntity(17):toWorld(vec(12.3,0,0)),vec(1/24,15.25/12,6/12),holoEntity(17):toWorld(ang()),vec(65))
  116. #holoParent(21,1)
  117. holoCreate(22,holoEntity(17):toWorld(vec(9.55,7.375,0)),vec(5/12,1/24,6/12),holoEntity(17):toWorld(ang()),vec(65))
  118. holoParent(22,21)
  119. holoCreate(23,holoEntity(17):toWorld(vec(9.55,-7.375,0)),vec(5/12,1/24,6/12),holoEntity(17):toWorld(ang()),vec(65))
  120. holoParent(23,21)
  121. #V-pillar
  122. holoCreate(24,holoEntity(21):toWorld(vec(18.25,0,0)),vec(4.5/12,4.5/12,30/12),holoEntity(17):toWorld(ang(-90,0,0)),vec(65),"hq_cylinder")
  123. holoCreate(25,holoEntity(21):toWorld(vec(11.25,0,0)),vec(9/12,9/12,1/24),holoEntity(17):toWorld(ang(-90,0,0)),vec(65),"hq_cylinder")
  124. holoParent(25,24)
  125. #H-pillar
  126. holoCreate(26,holoEntity(24):toWorld(vec(0,0,3)),vec(2/12,2/12,13.5/12),holoEntity(17):toWorld(ang(0,0,-90)),vec(35),"hqrcylinder")
  127. holoParent(26,24)
  128.  
  129. #L-frame
  130. holoCreate(27,holoEntity(24):toWorld(vec(3,5.375,6)),vec(1,1/24,1),holoEntity(17):toWorld(ang(5,0,0)),vec(65))
  131. holoParent(27,26)
  132. holoCreate(28,holoEntity(27):toWorld(vec(12,0,4.5)),vec(16/12,1/24,3/12),holoEntity(27):toWorld(ang(0,0,0)),vec(65))
  133. holoParent(28,27)
  134.  
  135. holoCreate(29,holoEntity(26):toWorld(vec(0,0,5.375)),vec(13/12,13/12,0.7/12),holoEntity(17):toWorld(ang(0,0,90)),vec(15),"hq_tube_thin")
  136. holoClip(29,1,vec(0,-1,0),vec(0,1,0),0)
  137. holoClipEnabled(29,1,1)
  138. holoClip(29,2,vec(1,0,0),vec(-20,3,0),0)
  139. holoClipEnabled(29,2,1)
  140. holoParent(29,27)
  141.  
  142. #R-frame
  143. holoCreate(30,holoEntity(24):toWorld(vec(3,-5.375,6)),vec(1,1/24,1),holoEntity(17):toWorld(ang(5,0,0)),vec(65))
  144. holoParent(30,26)
  145. holoCreate(31,holoEntity(30):toWorld(vec(12,0,4.5)),vec(16/12,1/24,3/12),holoEntity(30):toWorld(ang(0,0,0)),vec(65))
  146. holoParent(31,30)
  147.  
  148. holoCreate(32,holoEntity(26):toWorld(vec(0,0,-5.375)),vec(13/12,13/12,0.7/12),holoEntity(17):toWorld(ang(0,0,90)),vec(15),"hq_tube_thin")
  149. holoClip(32,1,vec(0,-1,0),vec(0,1,0),0)
  150. holoClipEnabled(32,1,1)
  151. holoClip(32,2,vec(1,0,0),vec(-20,3,0),0)
  152. holoClipEnabled(32,2,1)
  153. holoParent(32,30)
  154.  
  155. #L-leg
  156. holoCreate(133,holoEntity(26):toWorld(vec()),vec(),holoEntity(24):toWorld(ang()))
  157. holoAlpha(133,0)
  158. holoParent(133,24)
  159. holoCreate(33,holoEntity(26):toWorld(vec(-4,0,5.85)),vec(8/12,1.5/12,1/24),holoEntity(17):toWorld(ang(0,0,90)),vec(45))
  160. holoParent(33,133)
  161. holoClip(33,vec(-3 -0.125,0,0),vec(1,-1,0),0)
  162. holoClipEnabled(33,1)
  163. holoCreate(34,holoEntity(33):toWorld(vec(-3 -0.125,0,0)),vec(0.5/12,0.5/12,2/12),holoEntity(33):toWorld(ang(0,-45,90)),vec(45),"hq_cylinder")
  164. holoParent(34,33)
  165. holoCreate(35,holoEntity(34):toWorld(vec(11 +0.125,0,0)),vec(22/12,1/24,2/12),holoEntity(34):toWorld(ang()),vec(45))
  166. holoParent(35,34)
  167. holoCreate(36,holoEntity(35):toWorld(vec(11.5,0,0)),vec(1/24,1/24,1/12),holoEntity(34):toWorld(ang(-90,0,0)),vec(45),"hq_cylinder")
  168. holoParent(36,35)
  169. holoCreate(37,holoEntity(36):toWorld(vec(0,0,-0.8)),vec(1/12),holoEntity(34):toWorld(ang(0,0,0)),vec(45),"hqsphere")
  170. holoParent(37,36)
  171. holoCreate(38,holoEntity(37):toWorld(vec(0.5,0,0)),vec(2/12,2/12,1/24),holoEntity(34):toWorld(ang(-90,0,0)),vec(45),"hq_cylinder")
  172. holoParent(38,37)
  173. holoAng(34,holoEntity(34):toWorld(ang(0,-10,0)))
  174.  
  175. #R-leg
  176. holoCreate(39,holoEntity(26):toWorld(vec(-4,0,-5.85)),vec(8/12,1.5/12,1/24),holoEntity(17):toWorld(ang(0,0,-90)),vec(45))
  177. holoClip(39,vec(-3 -0.125,0,0),vec(1,1,0),0)
  178. holoClipEnabled(39,1)
  179. holoParent(39,133)
  180. holoCreate(40,holoEntity(39):toWorld(vec(-3 -0.125,0,0)),vec(0.5/12,0.5/12,2/12),holoEntity(39):toWorld(ang(0,45,90)),vec(45),"hq_cylinder")
  181. holoParent(40,39)
  182. holoCreate(41,holoEntity(40):toWorld(vec(11 +0.125,0,0)),vec(22/12,1/24,2/12),holoEntity(40):toWorld(ang()),vec(45))
  183. holoParent(41,40)
  184. holoCreate(42,holoEntity(41):toWorld(vec(11.5,0,0)),vec(1/24,1/24,1/12),holoEntity(40):toWorld(ang(-90,0,0)),vec(45),"hq_cylinder")
  185. holoParent(42,41)
  186. holoCreate(43,holoEntity(42):toWorld(vec(0,0,-0.8)),vec(1/12),holoEntity(40):toWorld(ang(0,0,0)),vec(45),"hqsphere")
  187. holoParent(43,42)
  188. holoCreate(44,holoEntity(43):toWorld(vec(0.5,0,0)),vec(2/12,2/12,1/24),holoEntity(40):toWorld(ang(-90,0,0)),vec(45),"hq_cylinder")
  189. holoParent(44,43)
  190. holoAng(40,holoEntity(40):toWorld(ang(0,-10,0)))
  191. #holoAng(40,holoEntity(40):toWorld(ang(0,-169,0)))
  192.  
  193. #Handle
  194. holoCreate(45,holoEntity(26):toWorld(vec(sin(-145)*(-3),cos(-145)*(-3),6.35)),vec(6/12,1.5/12,1/24),holoEntity(26):toWorld(ang(0,55,0)),vec(45))
  195. holoParent(45,26)
  196. holoCreate(46,holoEntity(26):toWorld(vec(sin(-145)*(-3),cos(-145)*(-3),-6.35)),vec(6/12,1.5/12,1/24),holoEntity(26):toWorld(ang(0,55,0)),vec(45))
  197. holoParent(46,26)
  198. holoCreate(47,holoEntity(45):toWorld(vec(2.4,0,-6.35)),vec(1/12,1/12,12.2/12),holoEntity(26):toWorld(ang()),vec(65),"hq_cylinder")
  199. holoParent(47,26)
  200.  
  201. #Hull control
  202. #holoCreate(54,holoEntity(17):toWorld(vec(0,0,-6)),vec(2/12),holoEntity(1):toWorld(ang()),vec(65),"hq_sphere")
  203.  
  204. holoCreate(48,holoEntity(24):toWorld(vec(-2.25,0,12)),vec(2/12),holoEntity(1):toWorld(ang(-45,90,0)),vec(65),"hq_sphere")
  205. Length1 = 5
  206. Length2 = 8
  207. holoCreate(49,holoEntity(48):toWorld(vec((Length1/2)+0.5,0,0)),vec(1/12,1/12,Length1/12),holoEntity(48):toWorld(ang(90,0,0)),vec(65),"hq_cylinder")
  208. holoCreate(50,holoEntity(49):toWorld(vec(0,0,(Length1/2)+0.5)),vec(2/12),holoEntity(49):toWorld(ang(-90,0,0)),vec(65),"hq_sphere")
  209. holoCreate(51,holoEntity(50):toWorld(vec((Length2/2)+0.5,0,0)),vec(1/12,1/12,Length2/12),holoEntity(50):toWorld(ang(90,0,0)),vec(65),"hq_cylinder")
  210. holoCreate(52,holoEntity(51):toWorld(vec(0,0,(Length2/2)+0.5)),vec(2/12),holoEntity(51):toWorld(ang(-90,0,0)),vec(65),"hq_sphere")
  211. holoCreate(53,holoEntity(52):toWorld(vec((Length2/2)+0.5,0,0)),vec(1/12,1/12,Length2/12),holoEntity(52):toWorld(ang(90,0,0)),vec(65),"hq_cylinder")
  212. holoCreate(54,holoEntity(53):toWorld(vec(0,0,(Length2/2)+0.5)),vec(2/12),holoEntity(53):toWorld(ang(-90,0,0)),vec(65),"hq_sphere")
  213.  
  214. for(H = 49,54){
  215. holoParent(H,H-1)
  216. }
  217. holoParent(48,24)
  218.  
  219. #[
  220. #unused diamond 2-limb ik method
  221. holoAng(48,holoEntity(24):(holoEntity(17):toWorld(vec(0,0,-6)) - holoEntity(48):pos()):toAngle())
  222. holoAng(48,holoEntity(48):toWorld(ang(-45,0,0)))
  223.  
  224. IK1 = holoEntity(24):toLocal(holoEntity(50):pos())
  225. IK2 = holoEntity(24):toLocal(holoEntity(17):toWorld(vec(0,0,-6)))
  226. IK = vec2(IK2:x(),IK2:z())-vec2(IK1:x(),IK1:z())
  227. IK_r = sqrt(IK:x()^2 + IK:y()^2)
  228. IK_a = Length2 + 1
  229.  
  230. holoAng(50,(holoEntity(17):toWorld(vec(0,0,-6)) - holoEntity(50):pos()):toAngle())
  231. holoAng(50,holoEntity(50):toWorld(ang(-acos(IK_r/2/IK_a),0,0)))
  232. ]#
  233.  
  234. IK_ang = (holoEntity(24):toLocal(holoEntity(17):toWorld(vec(0,0,-6))) - holoEntity(24):toLocal(holoEntity(48):pos())):toAngle()+ang(30,0,0)
  235. holoAng(48,holoEntity(24):toWorld(IK_ang))
  236.  
  237. #print(IK_ang:pitch()-270)
  238.  
  239. IK1 = holoEntity(24):toLocal(holoEntity(50):pos())
  240. IK2 = holoEntity(24):toLocal(holoEntity(17):toWorld(vec(0,0,-6)))
  241. IK = vec2(IK2:x(),IK2:z())-vec2(IK1:x(),IK1:z())
  242. IK_r = sqrt(IK:x()^2 + IK:y()^2)
  243. IK_a = Length2 + 1
  244. IK_theta1 = IK_ang:pitch() - 270 - (acos(IK:y()/IK_r) + acos(((IK_r*IK_r)/(2*IK_a*IK_r))))
  245. IK_theta2 = 180 - acos(((IK_a^2)*2-(IK_r^2))/(2*(IK_a^2)))
  246.  
  247. holoAng(50,holoEntity(48):toWorld(ang(-IK_theta1,0,0)))
  248. holoAng(52,holoEntity(50):toWorld(ang(-IK_theta2,0,0)))
  249.  
  250. #[
  251. #Failed 3-limb ik
  252. IK1 = vec(-2.25,0,12)
  253. IK2 = holoEntity(24):toLocal(holoEntity(17):toWorld(vec(0,0,-6)))
  254.  
  255. IK_a1 = Length1 + 1
  256. IK_a2 = Length2 + 1
  257.  
  258. IK = vec2(IK2:x(),IK2:z())-vec2(IK1:x(),IK1:z())
  259. IK_r1 = (vec2():distance(IK))/2
  260.  
  261. IK_phi1 = 180/(1+(2*IK_a2/IK_a1))
  262. IK_phi2 = 180/(2+(IK_a1/IK_a2))
  263.  
  264. IK_phi3 = asin(7.9*sin(IK_phi1)/IK_a1)
  265. IK_phi7 = abs(atan(IK:x()/IK:y()))
  266. IK_theta1 = 180 - IK_phi1 - IK_phi3 + IK_phi7
  267.  
  268. IK_r2 = sqrt((IK_r1^2) + (IK_a1^2) - (2*IK_r1*IK_a1*cos(180 - IK_phi1 - IK_phi3)))
  269. IK_phi5 = asin((IK_r2*sin(IK_phi2))/IK_a2)
  270. IK_phi4 = 180 - IK_phi2 - IK_phi5
  271. IK_theta2 = 180 - IK_phi3 - IK_phi4
  272.  
  273. IK_phi6 = asin((IK_r1*sin(IK_phi2))/IK_a2)
  274. IK_theta3 = 180 - IK_phi5 - IK_phi6
  275.  
  276.  
  277. IK_print1 = IK_phi1:toString()+", "+IK_phi2:toString()+", "+IK_phi3:toString()+", "+IK_phi7:toString()
  278. IK_print2 = IK_phi4:toString()+", "+IK_phi5:toString()+", "+IK_phi6:toString()
  279. IK_print3 = IK_theta1:toString()+", -"+IK_theta2:toString()+", -"+IK_theta3:toString()
  280. #print(IK)
  281. #print(asin(IK_r1*sin(IK_phi1)/IK_a1))
  282. #print(IK_r1)
  283. #print(holoEntity(48):pos():distance(holoEntity(50):pos()))
  284. print("Phi 1,2,3,7: "+IK_print1)
  285. print("Phi 4,5,6: "+IK_print2)
  286. print("Theta 1,2: "+IK_print3)
  287.  
  288. holoAng(48,holoEntity(24):toWorld(ang(-90-IK_theta1,0,0)))
  289. holoAng(50,holoEntity(48):toWorld(ang(IK_theta2,0,0)))
  290. holoAng(52,holoEntity(50):toWorld(ang(IK_theta3,0,0)))
  291. ]#
  292.  
  293.  
  294.  
  295.  
  296.  
  297. holoParent(17,24)
  298.  
  299. #V-pillar top
  300. holoCreate(55,holoEntity(24):toWorld(vec(0,0,15)),vec(4.5/12),holoEntity(24):toWorld(ang()),vec(65),"hqsphere")
  301. holoParent(55,24)
  302. holoCreate(156,holoEntity(55):toWorld(vec(0,0,1)),vec(),holoEntity(24):toWorld(ang()))
  303. holoParent(156,55)
  304. holoCreate(56,holoEntity(156):toWorld(vec()),vec(1.5/12,1.5/12,8/12),holoEntity(17):toWorld(ang(0,0,90)),vec(65),"hq_cylinder")
  305. holoParent(56,156)
  306. #
  307. holoCreate(57,holoEntity(56):toWorld(vec(0,0,3.5)),vec(2/12,2/12,1/12),holoEntity(56):toWorld(ang()),vec(45),"hq_tube")
  308. holoParent(57,56)
  309. holoCreate(58,holoEntity(56):toWorld(vec(-1.125,0,3.5)),vec(2.25/12,2/12,0.75/12),holoEntity(56):toWorld(ang()),vec(45),"hq_cube")
  310. holoParent(58,57)
  311.  
  312. holoCreate(59,holoEntity(56):toWorld(vec(0,0,-3.5)),vec(2/12,2/12,1/12),holoEntity(56):toWorld(ang()),vec(45),"hq_tube")
  313. holoParent(59,56)
  314. holoCreate(60,holoEntity(56):toWorld(vec(-1.125,0,-3.5)),vec(2.25/12,2/12,0.75/12),holoEntity(56):toWorld(ang()),vec(45),"hq_cube")
  315. holoParent(60,59)
  316.  
  317. holoParent(21,156)
  318.  
  319. #Extension legs
  320. #28,31
  321. holoCreate(61,holoEntity(28):toWorld(vec(-4,-1.125,0)),vec(1.75/12,1.75/12,8/12),holoEntity(28):toWorld(ang(-90,0,0)),vec(65),"hq_tube_thin")
  322. holoParent(61,28)
  323. holoCreate(62,holoEntity(61):toWorld(vec(0,0,-4)),vec(1.5/12,1.5/12,16/12),holoEntity(61):toWorld(ang()),vec(45),"hq_cylinder")
  324. holoCreate(63,holoEntity(31):toWorld(vec(-4,1.125,0)),vec(1.75/12,1.75/12,8/12),holoEntity(31):toWorld(ang(-90,0,0)),vec(65),"hq_tube_thin")
  325. holoParent(63,31)
  326. holoCreate(64,holoEntity(63):toWorld(vec(0,0,-4)),vec(1.5/12,1.5/12,16/12),holoEntity(63):toWorld(ang()),vec(45),"hq_cylinder")
  327.  
  328. holoCreate(65,holoEntity(64):toWorld(vec(0,4.25,-4)),vec(0.5/12,9.5/12,5/12),holoEntity(64):toWorld(ang()),vec(45))
  329. holoParent(62,65)
  330. holoParent(64,65)
  331. holoParent(65,26)
  332.  
  333. holoCreate(66,holoEntity(62):toWorld(vec(0,0,-8.9)),vec(1/12,1.2/12,2/12),holoEntity(62):toWorld(ang(180,0,0)),vec(45),"pyramid")
  334. holoParent(66,65)
  335. holoCreate(67,holoEntity(64):toWorld(vec(0,0,-8.9)),vec(1/12,1.2/12,2/12),holoEntity(64):toWorld(ang(180,0,0)),vec(45),"pyramid")
  336. holoParent(67,65)
  337.  
  338. #Hull_front
  339. #/2-4 extend,/2 inside
  340. holoCreate(68,holoEntity(18):toWorld(vec(-15/2,0,0)),vec(15/12,14/12,11/12)-vec(0,1/192,1/192),holoEntity(18):toWorld(ang()),vec(65),"hqrcube")
  341. holoClip(68,vec(holoScale(68):x()*6 - 0.3,0,0),vec(-1,0,0),0)
  342. holoClipEnabled(68,1)
  343. holoParent(68,18)
  344. #nice
  345. holoCreate(69,holoEntity(68):pos(),-holoScale(68),holoEntity(68):toWorld(ang()),vec(65),"hqrcube")
  346. holoClip(69,vec(holoScale(68):x()*6 - 0.3,0,0),vec(-1,0,0),0)
  347. holoClipEnabled(69,1)
  348. holoParent(69,68)
  349. holoCreate(70,holoEntity(68):toWorld(vec(holoScale(68):x()*6-2,0,0)),(holoScale(18):setX(1/12))-vec(0,1/12,1/12),holoEntity(18):toWorld(ang()),Color[3,vector])
  350. holoParent(70,68)
  351. #12x14x11
  352.  
  353.  
  354.  
  355.  
  356.  
  357. for(H = 3,9){
  358. holoMaterial(H,"models/wireframe")
  359. holoAlpha(H,80)
  360. }
  361.  
  362. entity():setMaterial("models/wireframe")
  363.  
  364. for(H = 1,70){
  365. holoAlpha(H,0)
  366. }
  367.  
  368. #holoAlpha(6,0)
  369. }
  370. else{
  371. if(changed(first())){
  372. for(H = 1,70){
  373. holoAlpha(H,255)
  374. }
  375. }
  376.  
  377. if(X <= 600){
  378. X += 1
  379.  
  380. if(X >= 50 & X < 61){
  381. for(H = 103,106){
  382. holoAng(H,holoEntity(H):toWorld(ang(8,0,0)))
  383. }
  384. }
  385. elseif(X == 61){
  386. Angle_108 = holoEntity(108):angles()
  387. }
  388.  
  389. if(X >= 61 & X < 65){
  390. holoAng(108,holoEntity(108):toWorld(ang(5,0,0)))
  391. }
  392. elseif(X >= 70 & X < 160){
  393. holoPos(24,holoEntity(24):pos() + holoEntity(1):toWorld(vec(0,14.43374803/90,6.25/90)) - holoEntity(1):pos())
  394. holoAng(24,holoEntity(1):toWorld(ang(84*(1 - ((X-70) / 90)),90 + 90*((X-70) / 90),0)))
  395. }
  396. elseif(X >= 163 & X < 208){
  397. holoAng(34,holoEntity(34):toWorld(ang(0,-3,0)))
  398. holoAng(40,holoEntity(40):toWorld(ang(0,-3,0)))
  399. }
  400. elseif(X >= 213 & X < 246){
  401. holoAng(133,holoEntity(133):toWorld(ang(3,0,0)))
  402. }
  403. elseif(X >= 249 & X < 279){
  404. holoAng(37,holoEntity(37):angles():setPitch(holoEntity(1):angles():pitch()+90))
  405. holoAng(43,holoEntity(43):angles():setPitch(holoEntity(1):angles():pitch()+90))
  406.  
  407. Up24 += (8/29)
  408. holoPos(24,holoEntity(26):pos() + holoEntity(24):up()*Up24)
  409. holoAng(24,holoEntity(1):toWorld(ang(0,180,0)))
  410. holoPos(26,holoEntity(133):pos())
  411. holoAng(26,holoEntity(26):toWorld(ang(0,1.6,0)))
  412. holoPos(133,holoEntity(3844):toWorld(vec(Len_38_44*cos(P_38_44 - (X - 249)),0,-Len_38_44*sin(P_38_44 - (X - 249)))))
  413. holoAng(133,(holoEntity(3844):pos() - holoEntity(133):pos()):toAngle()+ang(53,0,0))
  414. }
  415. elseif(X >= 279 & X < 287){
  416. holoPos(65,holoEntity(65):toWorld(vec(0,0,-1)))
  417. }
  418. elseif(X >= 283 & X < 313){
  419. holoAng(37,holoEntity(37):angles():setPitch(holoEntity(1):angles():pitch()+90))
  420. holoAng(43,holoEntity(43):angles():setPitch(holoEntity(1):angles():pitch()+90))
  421.  
  422. Up24 -= (8/29)
  423. holoPos(24,holoEntity(26):pos() + holoEntity(24):up()*Up24)
  424. holoAng(24,holoEntity(1):toWorld(ang(0,180,0)))
  425. holoPos(26,holoEntity(133):pos())
  426. holoAng(26,holoEntity(26):toWorld(ang(0,0.26,0)))
  427. holoPos(133,holoEntity(3844):toWorld(vec(Len_38_44*cos(P_38_44 + (X - 283)),0,-Len_38_44*sin(P_38_44 + (X - 283)))))
  428. holoAng(133,(holoEntity(3844):pos() - holoEntity(133):pos()):toAngle()+ang(53,0,0))
  429. }
  430. elseif(X >= 320 & X < 440){
  431. holoPos(24,holoEntity(24):toWorld(vec(0,0,0.025)))
  432. holoAng(24,holoEntity(24):toWorld(ang(0,6,0)))
  433. }
  434. elseif(X >= 445 & X < 486){
  435. holoPos(17,holoEntity(17):pos() + holoEntity(24):toWorld(vec(-0.5,0,0))-holoEntity(24):pos())
  436. holoAng(17,holoEntity(17):toWorld(ang(-95/40,0,0)))
  437.  
  438. IK_ang = (holoEntity(24):toLocal(holoEntity(17):toWorld(vec(0,0,-6))) - holoEntity(24):toLocal(holoEntity(48):pos())):toAngle()+ang(30,0,0)
  439. holoAng(48,holoEntity(24):toWorld(IK_ang))
  440.  
  441. IK1 = holoEntity(24):toLocal(holoEntity(50):pos())
  442. IK2 = holoEntity(24):toLocal(holoEntity(17):toWorld(vec(0,0,-6)))
  443. IK = vec2(IK2:x(),IK2:z())-vec2(IK1:x(),IK1:z())
  444. IK_r = sqrt(IK:x()^2 + IK:y()^2)
  445. IK_a = Length2 + 1
  446. IK_theta1 = IK_ang:pitch() - 270 - (acos(IK:y()/IK_r) + acos(((IK_r*IK_r)/(2*IK_a*IK_r))))
  447. IK_theta2 = 180 - acos(((IK_a^2)*2-(IK_r^2))/(2*(IK_a^2)))
  448.  
  449. holoAng(50,holoEntity(48):toWorld(ang(-IK_theta1,0,0)))
  450. holoAng(52,holoEntity(50):toWorld(ang(-IK_theta2,0,0)))
  451. }
  452. elseif(X >= 486 & X < 493){
  453. holoPos(68,holoEntity(68):toWorld(vec(1.83,0,0)))
  454. }
  455. elseif(X >= 495 & X < 511){
  456. holoPos(17,holoEntity(17):pos() + holoEntity(24):toWorld(vec(2/16,0,-6.5/16))-holoEntity(24):pos())
  457. holoAng(17,holoEntity(17):toWorld(ang(7.5/16,0,0)))
  458.  
  459. IK_ang = (holoEntity(24):toLocal(holoEntity(17):toWorld(vec(0,0,-6))) - holoEntity(24):toLocal(holoEntity(48):pos())):toAngle()+ang(45,0,0)
  460. holoAng(48,holoEntity(24):toWorld(IK_ang))
  461.  
  462. IK1 = holoEntity(24):toLocal(holoEntity(50):pos())
  463. IK2 = holoEntity(24):toLocal(holoEntity(17):toWorld(vec(0,0,-6)))
  464. IK = vec2(IK2:x(),IK2:z())-vec2(IK1:x(),IK1:z())
  465. IK_r = sqrt(IK:x()^2 + IK:y()^2)
  466. IK_a = Length2 + 1
  467. IK_theta1 = IK_ang:pitch() - 270 - (acos(IK:y()/IK_r) + acos(((IK_r*IK_r)/(2*IK_a*IK_r))))
  468. IK_theta2 = 180 - acos(((IK_a^2)*2-(IK_r^2))/(2*(IK_a^2)))
  469.  
  470. holoAng(50,holoEntity(48):toWorld(ang(-IK_theta1,0,0)))
  471. holoAng(52,holoEntity(50):toWorld(ang(-IK_theta2,0,0)))
  472. }
  473. elseif(X >= 521 & X < 532){
  474. holoColor(87,holoEntity(87):getColor()+vec(10,0,0))
  475. }
  476.  
  477. if(X == 240){
  478. Yaw24 = holoEntity(24):angles():yaw()
  479. }
  480. elseif(X == 247){
  481. holoAng(37,holoEntity(37):angles():setPitch(holoEntity(1):angles():pitch()+90))
  482. holoAng(43,holoEntity(43):angles():setPitch(holoEntity(1):angles():pitch()+90))
  483.  
  484. V_38_44 = (holoEntity(38):boxCenterW() + holoEntity(44):boxCenterW())/2
  485. Len_38_44 = V_38_44:distance(holoEntity(133):boxCenterW())
  486. holoCreate(3844,V_38_44,vec(1/12),holoEntity(1):angles())
  487. holoAlpha(3844,0)
  488. L_38_44 = holoEntity(3844):toLocal(holoEntity(133):boxCenterW())
  489. A_38_44 = holoEntity(3844):toLocal((holoEntity(133):pos() - holoEntity(3844):pos()):toAngle())
  490. P_38_44 = A_38_44:pitch()
  491.  
  492. Up24 = holoEntity(1):toLocal(holoEntity(24):pos()):z() - holoEntity(1):toLocal(holoEntity(26):pos()):z()
  493.  
  494. holoUnparent(24)
  495. holoUnparent(26)
  496. holoUnparent(133)
  497. }
  498. elseif(X == 248){
  499. holoParent(24,26)
  500. }
  501. elseif(X == 280){
  502. L_38_44 = holoEntity(3844):toLocal(holoEntity(133):boxCenterW())
  503. A_38_44 = holoEntity(3844):toLocal((holoEntity(133):pos() - holoEntity(3844):pos()):toAngle())
  504. P_38_44 = A_38_44:pitch()
  505. }
  506. elseif(X == 313){
  507. holoDelete(3844)
  508. holoUnparent(133)
  509. holoUnparent(26)
  510. holoUnparent(33)
  511. holoUnparent(39)
  512. holoParent(24,1)
  513. holoParent(26,1)
  514. holoParent(33,1)
  515. holoParent(39,1)
  516. holoParent(133,1)
  517. }
  518. elseif(X == 442){
  519. #Tube
  520. holoCreate(71,holoEntity(68):toWorld(vec(holoScale(68):x()*6-1.25,3,-1.5)),vec(5.5/12,5.5/12,0.5/12),holoEntity(18):toWorld(ang(90,0,0)),vec(45),"hq_cylinder")
  521. holoParent(71,70)
  522. holoCreate(72,holoEntity(71):toWorld(vec(0,0,0.5625)),vec(3/12,3/12,0.125/12),holoEntity(71):toWorld(ang()),vec(25),"hq_cylinder")
  523. holoParent(72,71)
  524. holoCreate(172,holoEntity(72):pos(),vec(),holoEntity(18):toWorld(ang()))
  525. holoAlpha(172,0)
  526. holoParent(172,72)
  527. holoCreate(73,holoEntity(71):toWorld(vec(0,0,1)),vec(4/12,4/12,1.5/12),holoEntity(71):toWorld(ang()),vec(45),"hq_tube")
  528. holoParent(73,71)
  529. holoCreate(74,holoEntity(71):toWorld(vec(0,0,2.25)),vec(4/12,4/12,1/12),holoEntity(71):toWorld(ang()),vec(45),"hq_tube")
  530. holoClip(74,vec(1,0,0),vec(1,0,0),0)
  531. holoClipEnabled(74,1)
  532. holoParent(74,73)
  533. holoCreate(75,holoEntity(71):toWorld(vec(0,0,2.25)),vec(4/12,4/12,1/12),holoEntity(71):toWorld(ang()),vec(45),"hq_tube")
  534. holoClip(75,vec(-1,0,0),vec(-1,0,0),0)
  535. holoClipEnabled(75,1)
  536. holoParent(75,73)
  537. #Clip covers......
  538. holoCreate(76,holoEntity(71):toWorld(vec(1.055,1.4066,2.25)),vec(1/12,0.62/12,1/768),holoEntity(71):toWorld(ang(-90,0,0)),vec(45))
  539. holoParent(76,74)
  540. holoCreate(77,holoEntity(71):toWorld(vec(1.055,-1.4066,2.25)),vec(1/12,0.62/12,1/768),holoEntity(71):toWorld(ang(-90,0,0)),vec(45))
  541. holoParent(77,74)
  542. holoCreate(78,holoEntity(71):toWorld(vec(-1.055,1.4066,2.25)),vec(1/12,0.62/12,1/768),holoEntity(71):toWorld(ang(-90,0,0)),vec(45))
  543. holoParent(78,74)
  544. holoCreate(79,holoEntity(71):toWorld(vec(-1.055,-1.4066,2.25)),vec(1/12,0.62/12,1/768),holoEntity(71):toWorld(ang(-90,0,0)),vec(45))
  545. holoParent(79,74)
  546. holoCreate(80,holoEntity(71):toWorld(vec(0,0,3.5)),vec(4/12,4/12,1.5/12),holoEntity(71):toWorld(ang()),vec(45),"hq_tube")
  547. holoParent(80,73)
  548. #Camera and light
  549. holoCreate(81,holoEntity(68):toWorld(vec(holoScale(68):x()*6-1.375,-1.6,-2.5)),vec(1.8/12,1.8/12,0.25/12),holoEntity(18):toWorld(ang(90,0,0)),vec(45),"hq_cylinder")
  550. holoParent(81,70)
  551. holoCreate(82,holoEntity(68):toWorld(vec(holoScale(68):x()*6-1.375,-3,-2.5)),vec(1.8/12,1.8/12,0.25/12),holoEntity(18):toWorld(ang(90,0,0)),vec(45),"hq_cylinder")
  552. holoParent(82,70)
  553. holoCreate(83,holoEntity(68):toWorld(vec(holoScale(68):x()*6-1.375,-2.3,-2.5)),vec(1.8/12,1.4/12,0.25/12),holoEntity(18):toWorld(ang(90,0,0)),vec(45))
  554. holoParent(83,70)
  555. holoCreate(84,holoEntity(68):toWorld(vec(holoScale(68):x()*6-1.375,-3.7,-1.8)),vec(1.2/12,1.2/12,0.25/12),holoEntity(18):toWorld(ang(90,0,0)),vec(45),"hq_cylinder")
  556. holoParent(84,70)
  557. holoCreate(85,holoEntity(81):toWorld(vec(0,0,0.125)),vec(1/12,1/12,0.5/12),holoEntity(81):angles(),vec(10),"hq_dome")
  558. holoParent(85,81)
  559. holoCreate(86,holoEntity(82):toWorld(vec(0,0,0.125)),vec(1/12,1/12,0.5/12),holoEntity(82):angles(),vec(10),"hq_dome")
  560. holoParent(86,82)
  561. holoCreate(87,holoEntity(84):toWorld(vec(0,0,0.125)),vec(0.5/12,0.5/12,0.4/12),holoEntity(84):angles(),vec(50,10,10),"hq_dome")
  562. holoParent(87,84)
  563. holoCreate(88,holoEntity(83):toWorld(vec(0,0,0.125+0.0025)),vec(1/12,1.4/12,0.005/12),holoEntity(84):angles(),vec(35))
  564. holoParent(88,85)
  565.  
  566. holoUnparent(17)
  567.  
  568. for(H = 71,90){
  569. holoAlpha(H,0)
  570. }
  571. }
  572. elseif(X == 485){
  573. for(H = 71,90){
  574. holoAlpha(H,255)
  575. }
  576. }
  577. elseif(X == 512){
  578. for(H = 2,12){
  579. holoDelete(H)
  580. }
  581.  
  582. holoParent(17,156)
  583.  
  584. findClearWhitePlayerPropList()
  585.  
  586. findIncludeClass("player")
  587. findIncludeClass("npc_*")
  588. }
  589. }
  590. else{
  591. IK_offset0 = holoEntity(24):toLocal(holoEntity(17):toWorld(vec(0,0,-6))) - holoEntity(24):toLocal(holoEntity(48):pos())
  592. if(IK_offset0:x() >= 0){
  593. IK_ang0 = IK_offset0:toAngle():setYaw(180):setPitch(270-IK_offset0:toAngle():pitch()+270)
  594. }
  595. else{
  596. IK_ang0 = IK_offset0:toAngle()
  597. }
  598.  
  599. if(IK_ang0:pitch() >= 270){
  600. if(IK_ang0:pitch() <= 315){
  601. IK_ang = IK_ang0 + ang(45-(310-IK_ang0:pitch()),0,0)
  602. }
  603. else{
  604. IK_ang = IK_ang0 + ang(45,0,0)
  605. }
  606. }
  607. elseif(IK_ang0:pitch() <= 90){
  608. IK_ang = IK_ang0 + ang(45-IK_ang0:pitch(),0,0)
  609. }
  610. else{
  611. IK_ang = ang(270,180,0)
  612. }
  613.  
  614. holoAng(48,holoEntity(24):toWorld(IK_ang))
  615.  
  616. IK1 = holoEntity(24):toLocal(holoEntity(50):pos())
  617. IK2 = holoEntity(24):toLocal(holoEntity(17):toWorld(vec(0,0,-6)))
  618. IK = vec2(abs(IK2:x()-IK1:x()),abs(IK2:z()-IK1:z()))
  619. IK_r = sqrt(IK:x()^2 + IK:y()^2)
  620. IK_a = Length2 + 1
  621. if(IK_ang:pitch() == 270){
  622. IK_theta1 = 90 - (acos(IK:x()/IK_r) + acos(((IK_r*IK_r)/(2*IK_a*IK_r))))
  623. }
  624. else{
  625. IK_theta1 = IK_ang:pitch() - 270 - (acos(IK:y()/IK_r) + acos(((IK_r*IK_r)/(2*IK_a*IK_r))))
  626. }
  627. IK_theta2 = 180 - acos(((IK_a^2)*2-(IK_r^2))/(2*(IK_a^2)))
  628.  
  629. holoAng(50,holoEntity(48):toWorld(ang(-IK_theta1,0,0)))
  630. holoAng(52,holoEntity(50):toWorld(ang(-IK_theta2,0,0)))
  631.  
  632. #
  633. #Target = owner()
  634.  
  635. X4 += 1
  636.  
  637. if(changed(Target)){
  638. if(Target:isValid()){
  639. Delay = InitDelay
  640. Damage = InitDamage
  641.  
  642. Lose = 0
  643. }
  644. }
  645.  
  646. if(CCFilter == 1){
  647.  
  648. }
  649. else{
  650. if(Target:isValid()){
  651. if(!Target:isAlive()){
  652. Target = noentity()
  653. }
  654. else{
  655. Aiming = Target:boxCenterW()+owner():vel()*0.2
  656.  
  657. X3 += 1
  658.  
  659. if(Delay - Buildup < MinDelay){
  660. Delay = MinDelay
  661. }
  662. elseif(Delay - Buildup > MinDelay){
  663. Delay -= Buildup
  664. }
  665.  
  666. if(X3%round(Delay) == 0){
  667. Fire = 1
  668. }
  669. else{
  670. Fire = 0
  671. }
  672.  
  673. Damage += DBuildup
  674.  
  675. rangerFilter(entity())
  676. rangerFilter(Turret)
  677.  
  678. if(rangerOffset(holoEntity(172):pos(),Target:boxCenterW()):entity() != Target & rangerOffset(holoEntity(172):pos(),Target:shootPos()):entity() != Target){
  679. Lose += 1
  680. }
  681.  
  682. if(Target:boxCenterW():distance(holoEntity(156):pos()) >= LoseRange){
  683. Lose += 1
  684. }
  685.  
  686. if(Lose >= 15){
  687. Target = noentity()
  688. }
  689. }
  690. }
  691. else{
  692. Aiming = holoEntity(1):toWorld(vec(cos(sin(X4*2.5)*75)*(-200),sin(sin(X4*2.5)*75)*(-200),holoEntity(1):toLocal(holoEntity(156):pos()):z()+6))
  693.  
  694. Fire = 0
  695.  
  696. findInSphere(holoEntity(156):pos(),Range)
  697. findSortByDistance(holoEntity(156):pos())
  698.  
  699. rangerFilter(entity())
  700. rangerFilter(Turret)
  701.  
  702. foreach(EntI,Ent:entity = findToArray()){
  703. if(Ent != owner() & Ent:isValid() & (rangerOffset(holoEntity(172):pos(),Ent:boxCenterW()):entity() == Ent|rangerOffset(holoEntity(172):pos(),Ent:shootPos()):entity() == Ent)){
  704. Target = Ent
  705. break
  706. }
  707. else{
  708. continue
  709. }
  710. }
  711. }
  712. }
  713.  
  714. A = (holoEntity(24):toLocal(Aiming)-holoEntity(24):toLocal(holoEntity(172):pos())):toAngle()
  715. holoAng(24,holoEntity(24):toWorld(A:setPitch(0):setRoll(0)))
  716.  
  717. A2 = (holoEntity(24):toLocal(Aiming)-holoEntity(24):toLocal(holoEntity(172):pos())):toAngle()
  718. if(A2:pitch() <= -30){
  719. holoAng(156,holoEntity(24):toWorld(ang(-30,0,0)))
  720. }
  721. else{
  722. holoAng(156,holoEntity(24):toWorld(A2:setYaw(0):setRoll(0)))
  723. }
  724.  
  725. #X2 += 1
  726. if(X2%20 == 1){
  727. #print(IK_offset0)
  728. #print(IK_ang0,", ",IK_ang)
  729. #print((IK_ang:pitch()%90) + " - " + acos(IK:y()/IK_r) + " - " + acos(((IK_r*IK_r)/(2*IK_a*IK_r))))
  730. #print(holoEntity(24):toLocal(holoEntity(156):toWorld(A2:setYaw(0):setRoll(0))))
  731. }
  732.  
  733. if(Turret:isValid()){
  734. if(!Turret:isFrozen()){
  735. TurretPos = holoEntity(172):toWorld(vec(0,0,0))
  736. Turret:applyForce(((TurretPos - Turret:boxCenterW())*5 - Turret:vel()*0.4)*Turret:mass())
  737. TurretAng = holoEntity(172):angles()
  738. TurretL = Turret:toLocal(rotationVector(quat(TurretAng)/quat(Turret)) + Turret:pos())
  739. Turret:applyTorque((TurretL*300-Turret:angVelVector()*40)*Turret:inertia())
  740.  
  741. X2 += 1
  742. if(X2%20 == 1){
  743. Turret:setMass(2000)
  744. Turret:setMaterial("")
  745. Turret:setColor(vec(255))
  746. Turret:setAlpha(0)
  747. }
  748. }
  749. else{
  750. X2 += 1
  751. if(X2%20 == 1){
  752. Turret:setMass(2000)
  753. Turret:setMaterial("models/wireframe")
  754. Turret:setColor(vec(255,0,0))
  755. Turret:setAlpha(255)
  756. }
  757. }
  758. }
  759. }
  760. }
Advertisement
Add Comment
Please, Sign In to add comment