Advertisement
KrazziPro

PewPew Dragon

Jul 10th, 2019
175
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 23.62 KB | None | 0 0
  1. @name Dragon PewPew Offical
  2. @inputs Active W A S D Space Shift Alt Mouse1 Mouse2 Seat:wirelink FB:entity SM:entity Pod:wirelink
  3. @outputs [Pew1, Pew2, Pew3, Grenade1, Grenade2, Grenade3]:entity Ops CONSTANT FireQ
  4. @persist Head:entity [E O SE FB SM]:entity SitQ StandQ FlyQ FlapQ FireQ WalkVel [FlyVel Color1 White Origin Target Nrm]:vector FlyAng:angle Theta1 Theta2 Roll Yaw Lift BlinkT FireT DST
  5. @trigger
  6. @model models/hunter/blocks/cube1x1x1.mdl
  7. if(first()|duped()){
  8.  
  9. Color1 = vec(0,0,0)
  10. #Color2 = vec(255,0,0)#red
  11. Color2 = vec(50,50,50)
  12. Color3 = vec(0,0,0)
  13. #Color4 = vec(0,127,21)
  14. Color4 = vec(0,0,0)
  15. Mat = "sprops/textures/sprops_metal5"
  16. Trails = "trails/plasma"
  17. E = entity()
  18. O = owner()
  19. P = E:pos() + vec(2,0,12)
  20. Ang0 = ang()
  21.  
  22. White = vec(255)
  23. Black = vec(0)
  24. Green = vec(0,255,63)
  25.  
  26. SitQ = 0
  27. StandQ = 0
  28. FlyQ = 0
  29. CONSTANT = 1
  30. runOnChat(1)
  31.  
  32. E:setAlpha(0)
  33.  
  34.  
  35. holoCreate(0,P,vec(6,2.6,2.5),Ang0,Color1,"sphere3") #Main Body
  36. holoCreate(1,P+vec(36,0,12),vec(1,1,2),ang(50,0,0),Color1,"cylinder")
  37. holoCreate(2,P+vec(36,0,8),vec(2,2,2),ang(60,0,0),Color1,"cone")
  38. holoCreate(75,P+vec(0,0,17),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  39. holoCreate(76,P+vec(15,0,15),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  40. holoCreate(77,P+vec(-15,0,15),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  41.  
  42. P1 = P+vec(48,0,22)
  43. Head=holoCreate(3,P1,vec(1.5),Ang0,Color1,"sphere2") #Head
  44. holoCreate(4,P1+vec(8,0,-2),vec(2,1.375,1),Ang0,Color1,"sphere2")
  45. holoCreate(5,P1+vec(14,0,-2),vec(1,1,1),Ang0,Color1,"sphere2")
  46. holoCreate(6,P1+vec(15,2,-8),vec(0.25,0.25,0.375),ang(180,0,0),Color2,"cone")
  47. holoCreate(7,P1+vec(15,-2,-8),vec(0.25,0.25,0.375),ang(180,0,0),Color2,"cone")
  48. holoCreate(8,P1+vec(1,3,6.5),vec(0.75,0.75,0.5),Ang0,Color1,"sphere2")
  49. holoCreate(9,P1+vec(1,-3,6.5),vec(0.75,0.75,0.5),Ang0,Color1,"sphere2")
  50. holoCreate(10,P1+vec(18.5,2,0),vec(0.0625,0.125,0.125),Ang0,Color4,"sphere")
  51. holoCreate(11,P1+vec(18.5,-2,0),vec(0.0625,0.125,0.125),Ang0,Color4,"sphere")
  52.  
  53. holoCreate(12,P1+vec(5,3,6.5),vec(0.125,0.25,0.35),ang(0,0,-30),Color4,"sphere") #Eyes
  54. holoCreate(13,P1+vec(5,-3,6.5),vec(0.125,0.25,0.35),ang(0,0,30),Color4,"sphere")
  55. holoDisableShading(12,1)
  56. holoDisableShading(13,1)
  57. holoCreate(14,P1+vec(5.5,3,6.5),vec(0.125),ang(0,0,-15),Color4,"sphere")
  58. holoCreate(15,P1+vec(5.5,-3,6.5),vec(0.125),ang(0,0,15),Color4,"sphere")
  59. holoCreate(16,P1+vec(-4,7.5,11),vec(0.375,0.375,1),ang(-30,0,-30),Color2,"cone")
  60. holoCreate(17,P1+vec(-4,-7.5,11),vec(0.375,0.375,1),ang(-30,0,30),Color2,"cone")
  61. holoCreate(73,P1+vec(0,0,9),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  62. holoCreate(74,P1+vec(15,0,3),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  63. P2 = P+vec(24,7,0)
  64.  
  65.  
  66. holoCreate(18,P2,vec(1.5),Ang0,Color1,"sphere3") #Left Front Leg
  67. holoCreate(19,P2+vec(4,4,-17),vec(0.75,0.75,2.5),ang(-15,0,10),Color1,"cylinder")
  68. holoCreate(20,P2+vec(10,7,-32),vec(1.25,1,0.75),Ang0,Color1,"sphere")
  69. holoCreate(21,P2+vec(17,7,-34),vec(0.25,0.25,0.625),ang(90,0,0),Color2,"cone")
  70. holoCreate(22,P2+vec(17,10,-34),vec(0.25,0.25,0.625),ang(90,15,0),Color2,"cone")
  71. holoCreate(23,P2+vec(17,4,-34),vec(0.25,0.25,0.625),ang(90,-15,0),Color2,"cone")
  72.  
  73.  
  74. P3 = P+vec(24,-7,0)
  75.  
  76. holoCreate(24,P3,vec(1.5),Ang0,Color1,"sphere3") #Right Front Leg
  77. holoCreate(25,P3+vec(4,-4,-17),vec(0.75,0.75,2.5),ang(-15,0,-10),Color1,"cylinder")
  78. holoCreate(26,P3+vec(10,-7,-32),vec(1.25,1,0.75),Ang0,Color1,"sphere")
  79. holoCreate(27,P3+vec(17,-7,-34),vec(0.25,0.25,0.625),ang(90,0,0),Color2,"cone")
  80. holoCreate(28,P3+vec(17,-10,-34),vec(0.25,0.25,0.625),ang(90,-15,0),Color2,"cone")
  81. holoCreate(29,P3+vec(17,-4,-34),vec(0.25,0.25,0.625),ang(90,15,0),Color2,"cone")
  82.  
  83.  
  84. P4 = P+vec(-20,7,-4)
  85.  
  86. holoCreate(30,P4,vec(2,1.5,2),Ang0,Color1,"sphere") #Left Rear Leg
  87. holoCreate(31,P4+vec(-2,4,-16),vec(0.75,0.75,2.5),ang(10,0,10),Color1,"cylinder")
  88. holoCreate(32,P4+vec(0,7,-30),vec(2,1,0.75),Ang0,Color1,"sphere2")
  89. holoCreate(33,P4+vec(13,7,-30),vec(0.25,0.25,0.625),ang(90,0,0),Color2,"cone")
  90. holoCreate(34,P4+vec(12,10,-30),vec(0.25,0.25,0.625),ang(90,15,0),Color2,"cone")
  91. holoCreate(35,P4+vec(12,4,-30),vec(0.25,0.25,0.625),ang(90,-15,0),Color2,"cone")
  92.  
  93.  
  94. P5 = P+vec(-20,-7,-4)
  95.  
  96. holoCreate(36,P5,vec(2,1.5,2),Ang0,Color1,"sphere") #Right Rear Leg
  97. holoCreate(37,P5+vec(-2,-4,-16),vec(0.75,0.75,2.5),ang(10,0,-10),Color1,"cylinder")
  98. holoCreate(38,P5+vec(0,-7,-30),vec(2,1,0.75),Ang0,Color1,"sphere2")
  99. holoCreate(39,P5+vec(13,-7,-30),vec(0.25,0.25,0.625),ang(90,0,0),Color2,"cone")
  100. holoCreate(40,P5+vec(12,-10,-30),vec(0.25,0.25,0.625),ang(90,-15,0),Color2,"cone")
  101. holoCreate(41,P5+vec(12,-4,-30),vec(0.25,0.25,0.625),ang(90,15,0),Color2,"cone")
  102.  
  103.  
  104. P6 = P+vec(-28,0,0)
  105.  
  106. holoCreate(42,P6,vec(4,1.5,1.5),Ang0,Color1,"sphere3") #Tail
  107. holoCreate(43,P6+vec(-24,0,0),vec(4,1.25,1.25),Ang0,Color1,"sphere3")
  108. holoCreate(44,P6+vec(-48,0,0),vec(4,1,1),Ang0,Color1,"sphere3")
  109. holoCreate(45,P6+vec(-72,0,0),vec(4,0.75,0.75),Ang0,Color1,"sphere3")
  110. holoCreate(67,P6+vec(-15,0,9),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  111. holoCreate(68,P6+vec(-30,0,9),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  112. holoCreate(69,P6+vec(-45,0,8),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  113. holoCreate(70,P6+vec(-60,0,7),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  114. holoCreate(71,P6+vec(-75,0,6),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  115. holoCreate(72,P6+vec(-90,0,6),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  116.  
  117.  
  118. P7 = P+vec(12,12,0)
  119.  
  120. holoCreate(46,P7,vec(1,1,0.5),Ang0,Color3,"sphere2") #Left Wing Inner
  121. holoCreate(47,P7+vec(6,24,0),vec(0.25,0.25,4),ang(0,-15,90),Color3,"cylinder")
  122. holoCreate(48,P7+vec(-6,48,0),vec(0.25,0.25,3),ang(90,0,0),Color3,"cylinder")
  123. holoCreate(49,P7+vec(-12,24,0),vec(2,4,0.125),Ang0,Color2,"cube")
  124. holoCreate(50,P7+vec(6,24,0),vec(1,0.125,4),ang(0,0,90),Color2,"right_prism")
  125.  
  126.  
  127. P8 = P+vec(24,60,0)
  128.  
  129. holoCreate(51,P8,vec(0.5),Ang0,Color3,"sphere2") #Left Wing Outer
  130. holoCreate(52,P8+vec(-6,24,0),vec(0.25,0.25,4),ang(0,15,90),Color3,"cylinder")
  131. holoCreate(53,P8+vec(-24,24,0),vec(2,4,0.125),Ang0,Color2,"cube")
  132. holoCreate(54,P8+vec(-6,24,0),vec(1,0.125,4),ang(0,0,-90),Color2,"right_prism")
  133. holoCreate(55,P8+vec(-48,24,0),vec(2,0.125,4),ang(0,180,-90),Color2,"right_prism")
  134. holoCreate(78,P+vec(24,60,4),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  135.  
  136.  
  137. P9 = P+vec(12,-12,0)
  138.  
  139. holoCreate(56,P9,vec(1,1,0.5),Ang0,Color3,"sphere2") #Right Wing Inner
  140. holoCreate(57,P9+vec(6,-24,0),vec(0.25,0.25,4),ang(0,15,90),Color3,"cylinder")
  141. holoCreate(58,P9+vec(-6,-48,0),vec(0.25,0.25,3),ang(90,0,0),Color3,"cylinder")
  142. holoCreate(59,P9+vec(-12,-24,0),vec(2,4,0.125),Ang0,Color2,"cube")
  143. holoCreate(60,P9+vec(6,-24,0),vec(1,0.125,4),ang(0,0,-90),Color2,"right_prism")
  144.  
  145.  
  146. P10 = P+vec(24,-60,0)
  147.  
  148. holoCreate(61,P10,vec(0.5),Ang0,Color3,"sphere2") #Right Wing Outer
  149. holoCreate(62,P10+vec(-6,-24,0),vec(0.25,0.25,4),ang(0,-15,90),Color3,"cylinder")
  150. holoCreate(63,P10+vec(-24,-24,0),vec(2,4,0.125),Ang0,Color2,"cube")
  151. holoCreate(64,P10+vec(-6,-24,0),vec(1,0.125,4),ang(0,0,90),Color2,"right_prism") #0.125,1,4
  152. holoCreate(65,P10+vec(-48,-24,0),vec(2,0.125,4),ang(0,180,90),Color2,"right_prism") #0.125,2,4
  153. holoCreate(79,P+vec(24,-60,4),vec(0.25,0.25,0.375),ang(0,0,0),Color2,"cone")
  154.  
  155.  
  156. P11 = P+vec(-28,0,0)
  157.  
  158.  
  159.  
  160.  
  161. holoCreate(66,E:pos(),vec(1),Ang0)
  162. holoAlpha(66,0)
  163.  
  164. #Body 0
  165. #Head 3
  166. #LF Leg 18
  167. #RF Leg 24
  168. #LR Leg 30
  169. #RR Leg 36
  170. #Tail 42
  171. #LWI 46
  172. #LWO 51
  173. #RWI 56
  174. #RWO 61
  175.  
  176. for(N=1,2){
  177. holoParent(N,0)
  178. }
  179. for(N=4,17){
  180. holoParent(N,3)
  181. }
  182. for(N=19,23){
  183. holoParent(N,18)
  184. }
  185. for(N=25,29){
  186. holoParent(N,24)
  187. }
  188. for(N=31,35){
  189. holoParent(N,30)
  190. }
  191. for(N=37,41){
  192. holoParent(N,36)
  193. }
  194. for(N=43,45){
  195. holoParent(N,42)
  196. }
  197. for(N=47,50){
  198. holoParent(N,46)
  199. }
  200. for(N=52,55){
  201. holoParent(N,51)
  202. }
  203. for(N=57,60){
  204. holoParent(N,56)
  205. }
  206. for(N=62,65){
  207. holoParent(N,61)
  208. }
  209. for(N=67,72){
  210. holoParent(N,42)
  211. }
  212. for(N=73,74){
  213. holoParent(N,3)
  214. }
  215. for(N=75,77){
  216. holoParent(N,0)
  217. }
  218. for(N=78,78){
  219. holoParent(N,51)
  220. }
  221. for(N=79,79){
  222. holoParent(N,61)
  223. }
  224.  
  225.  
  226. holoParent(3,0)
  227. holoParent(18,0)
  228. holoParent(24,0)
  229. holoParent(30,0)
  230. holoParent(36,0)
  231. holoParent(42,0)
  232. holoParent(46,0)
  233. holoParent(51,46)
  234. holoParent(56,0)
  235. holoParent(61,56)
  236.  
  237. holoParent(0,66)
  238. holoAng(66,E:angles())
  239. holoParent(66,E)
  240.  
  241. for(N=0,65){
  242. CL = holoEntity(N):getColor()
  243. if(CL==Color1 | CL==Color2){
  244. holoMaterial(N,Mat)
  245. }
  246. }
  247. }
  248. interval(20)
  249. if(!Active){
  250. if(!SitQ){
  251. SitQ = 1
  252. StandQ = 0
  253. Ang = E:angles()
  254. Rg = E:right()
  255. Ang1 = Ang:rotateAroundAxis(Rg,30)
  256. F1 = Ang1:forward()
  257. holoAng(66,Ang1)
  258. holoPos(66,E:pos()+vec(0,0,-16))
  259. holoAng(42,Ang)
  260. holoAng(30,Ang:rotateAroundAxis(Rg,90))
  261. holoAng(36,Ang:rotateAroundAxis(Rg,90))
  262. holoAng(18,Ang:rotateAroundAxis(Rg,10))
  263. holoAng(24,Ang:rotateAroundAxis(Rg,10))
  264. holoAng(3,Ang)
  265. holoAng(46,Ang1:rotateAroundAxis(F1,90))
  266. holoAng(56,Ang1:rotateAroundAxis(F1,-90))
  267. holoAng(51,Ang1:rotateAroundAxis(F1,-90))
  268. holoAng(61,Ang1:rotateAroundAxis(F1,90))
  269. E:propNotSolid(0)
  270. WalkVel = 0
  271. soundStop(2)
  272. }
  273.  
  274. Heading = -heading(E:pos(),E:angles(),O:pos()+vec(0,0,12))
  275. if((O:pos():distance(E:pos())<512) & abs(Heading:yaw()) < 60){
  276.  
  277. holoAng(3,E:angles() + Heading)
  278. }else{
  279. holoAng(3,E:angles())
  280. }
  281.  
  282. }else{
  283. Ang = E:angles()
  284. Rg = E:right()
  285. if(!StandQ){
  286. StandQ = 1
  287. SitQ = 0
  288. F1 = Ang:forward()
  289. holoAng(66,Ang)
  290. holoPos(66,E:pos())
  291. holoAng(42,Ang:rotateAroundAxis(Rg,15))
  292. holoAng(3,Ang)
  293. holoAng(30,Ang)
  294. holoAng(36,Ang)
  295. holoAng(18,Ang)
  296. holoAng(24,Ang)
  297. holoAng(46,Ang:rotateAroundAxis(F1,45))
  298. holoAng(56,Ang:rotateAroundAxis(F1,-45))
  299. holoAng(51,Ang:rotateAroundAxis(F1,-135))
  300. holoAng(61,Ang:rotateAroundAxis(F1,135))
  301. E:propFreeze(1)
  302. E:propNotSolid(1)
  303. SE = Seat:entity()
  304. soundPlay(2,0,"npc/crow/flap2.wav")
  305.  
  306. }
  307. if(StandQ & !FlyQ){
  308. WalkVel += W|S ? W-S : -sign(WalkVel)
  309. WalkVel = clamp(WalkVel,-32,32*(1+!Shift*3))
  310. Roll += A|D ? (D-A) : -sign(Roll)
  311. Roll = clamp(Roll,-5,5)
  312. Ranger = rangerOffset(96,E:pos(),vec(0,0,-1))
  313. BasePos = Ranger:hit() ? Ranger:pos() : E:pos()+vec(0,0,-48)
  314. rangerHitEntities(0)
  315. Ranger2 = rangerOffset(60,E:pos()+vec(0,0,24)+24*E:forward(),E:forward())
  316. if(Ranger2:hit() & WalkVel > 0){WalkVel = 0}
  317. E:setPos(BasePos + vec(0,0,24+WalkVel*sin(Theta1)/16) + E:forward()*WalkVel/4)
  318. E:setAng(E:angles():setRoll(Roll) + ang(0,A-D,0)*(1 - WalkVel/160)*4)
  319.  
  320.  
  321. Theta1 += 8*((A|D) & !(W|S)) + WalkVel/(2+(WalkVel>96)*4)
  322. if(Theta1>360){Theta1-=360}
  323.  
  324. if(WalkVel > 96){
  325. Step = 45*sin(Theta1)
  326. holoAng(18,Ang:rotateAroundAxis(Rg,Step))
  327. holoAng(24,Ang:rotateAroundAxis(Rg,Step))
  328. holoAng(30,Ang:rotateAroundAxis(Rg,-Step))
  329. holoAng(36,Ang:rotateAroundAxis(Rg,-Step))
  330. }elseif(WalkVel != 0 |A|D){
  331. Step = 30*sin(Theta1)
  332. holoAng(18,Ang:rotateAroundAxis(Rg,Step))
  333. holoAng(24,Ang:rotateAroundAxis(Rg,-Step))
  334. holoAng(30,Ang:rotateAroundAxis(Rg,-Step))
  335. holoAng(36,Ang:rotateAroundAxis(Rg,Step))
  336. }else{
  337. holoAng(18,Ang)
  338. holoAng(24,Ang)
  339. holoAng(30,Ang)
  340. holoAng(36,Ang)
  341. }
  342.  
  343. soundPitch(2,abs(WalkVel) - 72*(WalkVel > 96))
  344.  
  345. if(((WalkVel > 96)|!Ranger:hit()) & Space & !FlyQ){
  346. FlyQ = 1
  347. Lift = 4
  348. F1 = Ang:forward()
  349. Yaw = Ang:yaw()
  350. holoAng(18,Ang:rotateAroundAxis(Rg,60))
  351. holoAng(24,Ang:rotateAroundAxis(Rg,60))
  352. holoAng(30,Ang:rotateAroundAxis(Rg,-90))
  353. holoAng(36,Ang:rotateAroundAxis(Rg,-90))
  354. holoAng(42,Ang)
  355. holoAng(46,Ang:rotateAroundAxis(F1,15))
  356. holoAng(56,Ang:rotateAroundAxis(F1,-15))
  357. holoAng(51,Ang:rotateAroundAxis(F1,-15))
  358. holoAng(61,Ang:rotateAroundAxis(F1,15))
  359. soundPlay(1,0,"vehicles/fast_windloop1.wav")
  360. soundStop(2)
  361. }
  362. }elseif(FlyQ){
  363. Yaw += A-D
  364. Roll += A|D ? (D-A) : -sign(Roll)
  365. Roll = clamp(Roll,-15,15)
  366. FlyAng = ang(0,Yaw,Roll)
  367. WalkVel += W|S ? (W-S)*2 : -sign(WalkVel-48)
  368. WalkVel = clamp(WalkVel,8,128)
  369.  
  370. Lift += Space - !Space
  371. Lift = clamp(Lift,-6,8)
  372.  
  373. E:setAng(FlyAng)
  374. FlyVel = WalkVel*FlyAng:forward()/3 + vec(0,0,Lift - (128 - WalkVel)/16)
  375. rangerHitEntities(0)
  376. Ranger2 = rangerOffset(60,E:pos(),E:forward())
  377. if(Ranger2:hit() & WalkVel > 0){WalkVel = 0,Crash=1}
  378. E:setPos(E:pos()+FlyVel)
  379.  
  380.  
  381. if(WalkVel <= 96){
  382. LandingLeg = WalkVel/96
  383. holoAng(18,Ang:rotateAroundAxis(Rg,60*LandingLeg))
  384. holoAng(24,Ang:rotateAroundAxis(Rg,60*LandingLeg))
  385. holoAng(30,Ang:rotateAroundAxis(Rg,-90*LandingLeg))
  386. holoAng(36,Ang:rotateAroundAxis(Rg,-90*LandingLeg))
  387. }
  388. holoAng(42,FlyAng:rotateAroundAxis(E:up(),Roll))
  389. F1 = FlyAng:forward()
  390. if(Space){
  391. if(FlapQ){FlapQ=0}
  392. Theta2 += 16
  393. if(Theta2 > 360){Theta2 += -360}
  394. FlapAng = 15*sin(Theta2)
  395. holoAng(46,Ang:rotateAroundAxis(F1,15 + FlapAng))
  396. holoAng(56,Ang:rotateAroundAxis(F1,-15 + -FlapAng))
  397. holoAng(51,Ang:rotateAroundAxis(F1,-15 + FlapAng*4))
  398. holoAng(61,Ang:rotateAroundAxis(F1,15 + -FlapAng*4))
  399. }elseif(!FlapQ){
  400. FlapAng = 0
  401. Theta2 = 0
  402. FlapQ = 1
  403. holoAng(46,Ang:rotateAroundAxis(F1,15))
  404. holoAng(56,Ang:rotateAroundAxis(F1,-15))
  405. holoAng(51,Ang:rotateAroundAxis(F1,-15))
  406. holoAng(61,Ang:rotateAroundAxis(F1,15))
  407.  
  408. }
  409. soundPitch(1,WalkVel*0.75 + abs(FlapAng)*2)
  410.  
  411. Ranger = rangerOffset(24,E:pos()+vec(0,0,0),vec(0,0,-1))
  412.  
  413. if((Ranger:hit() & !Space)|Crash){
  414. Crash = 0
  415. FlyQ = 0
  416. StandQ = 0
  417. E:setAng(FlyAng*ang(0,1,0))
  418. #WalkVel *=3
  419. soundPlay(0,1,"physics/concrete/boulder_impact_hard3.wav")
  420. soundPlay(2,0,"npc/crow/flap2.wav")
  421. soundStop(1)
  422. }
  423. }
  424. EyeAng = SE:driver():eyeAngles()
  425. if(abs(E:bearing(SE:driver():aimPos())) < 90){
  426. holoAng(3,EyeAng)
  427. SM:setAng(EyeAng)
  428. }
  429.  
  430. if(Alt){SE:ejectPod()}
  431. if(Mouse1 & !FireQ){
  432. FireQ = 1
  433. FireT = 0
  434. Origin = E:pos()+24*E:forward()+24*E:up()
  435. Target = SE:driver():aimPos()
  436. Nrm = (Target-Origin):normalized()
  437. DST = floor(Target:distance(Origin))
  438.  
  439.  
  440. }
  441. if(Mouse2 & ~Mouse2){
  442. soundPlay(3,0,"npc/antlion_guard/angry2.wav")
  443. soundPitch(3,randint(80,120))
  444. }elseif(!Mouse2 & ~Mouse2){
  445. soundStop(0)
  446. }
  447. if(FireQ){
  448. FB:setPos(Origin + FireT*Nrm)
  449. if(FireT >= DST){
  450. Bomb = propSpawn("models/props_phx/mk-82.mdl",Target - 4*Nrm,ang(),1)
  451. Bomb:propBreak()
  452. FireQ = 0
  453. }
  454. FireT+=64
  455. }else{
  456. FB:setPos(E:pos()+-24*E:forward())
  457. }
  458. }
  459.  
  460. BlinkT++
  461. if(BlinkT==100){
  462. holoScale(14,vec(0.125,0.25,0.0625))
  463. holoScale(15,vec(0.125,0.25,0.0625))
  464. holoColor(12,Green)
  465. holoColor(13,Green)
  466. holoDisableShading(12,1)
  467. holoDisableShading(13,1)
  468. }elseif(BlinkT==115){
  469. holoScale(14,vec(0.125))
  470. holoScale(15,vec(0.125))
  471. holoColor(12,White)
  472. holoColor(13,White)
  473. holoDisableShading(12,1)
  474. holoDisableShading(13,1)
  475. BlinkT = 0
  476. }
  477. FB:setAlpha(0)
  478. SM:setAlpha(0)
  479. SM:setPos(E:pos()+48*E:forward() + 24*EyeAng:forward() + 36*E:up())
  480. if(chatClk(O)){
  481. LS = O:lastSaid()
  482. if(LS==".come"){
  483. hideChat(1)
  484. E:setPos(O:aimPos()+vec(0,0,24))
  485. E:setAng(O:eyeAngles()*ang(0,1,0) + ang(0,180,0))
  486. }
  487. }
  488. #####################################
  489. #####################################
  490. #####################################
  491. #####################################
  492. #End Of Dragon
  493. #####################################
  494. #####################################
  495. #####################################
  496. #####################################
  497. #Beginning Of PewPew
  498. #####################################
  499. #####################################
  500. #####################################
  501. #####################################
  502. Pew1:pewFire(0)
  503. Pew2:pewFire(0)
  504. Pew3:pewFire(0)
  505. Grenade1:pewFire(0)
  506. Grenade2:pewFire(0)
  507. Grenade3:pewFire(0)
  508. if(Pew1:isValid() == 0) {
  509. Pew1 = pewCreate("100 Cal Explosive Rounds","models/hunter/plates/plate025x025.mdl",entity():pos(),entity():angles(),"forward")
  510. Pew1:propNotSolid(1)
  511. Pew1:propStatic(1)
  512. Pew1:propDraw(0)
  513. }
  514. Pew1:pewFire(0)
  515. Pew2:pewFire(0)
  516. Pew3:pewFire(0)
  517. Grenade1:pewFire(0)
  518. Grenade2:pewFire(0)
  519. Grenade3:pewFire(0)
  520. if(Pew2:isValid() == 0) {
  521. Pew2 = pewCreate("100 Cal Explosive Rounds","models/hunter/plates/plate025x025.mdl",entity():pos(),entity():angles(),"forward")
  522. Pew2:propNotSolid(1)
  523. Pew2:propStatic(1)
  524. Pew2:propDraw(0)
  525. }
  526. Pew1:pewFire(0)
  527. Pew2:pewFire(0)
  528. Pew3:pewFire(0)
  529. Grenade1:pewFire(0)
  530. Grenade2:pewFire(0)
  531. Grenade3:pewFire(0)
  532. if(Pew3:isValid() == 0) {
  533. Pew3 = pewCreate("100 Cal Explosive Rounds","models/hunter/plates/plate025x025.mdl",entity():pos(),entity():angles(),"forward")
  534. Pew3:propNotSolid(1)
  535. Pew3:propStatic(1)
  536. Pew3:propDraw(0)
  537. }
  538. Pew1:pewFire(0)
  539. Pew2:pewFire(0)
  540. Pew3:pewFire(0)
  541. Grenade1:pewFire(0)
  542. Grenade2:pewFire(0)
  543. Grenade3:pewFire(0)
  544. if(Grenade1:isValid() == 0) {
  545. Grenade1 = pewCreate("100 Cal Explosive Rounds","models/hunter/plates/plate025x025.mdl",entity():pos(),entity():angles(),"forward")
  546. Grenade1:propNotSolid(1)
  547. Grenade1:propStatic(1)
  548. Grenade1:propDraw(0)
  549. }
  550. Pew1:pewFire(0)
  551. Pew2:pewFire(0)
  552. Pew3:pewFire(0)
  553. Grenade1:pewFire(0)
  554. Grenade2:pewFire(0)
  555. Grenade3:pewFire(0)
  556. if(Grenade2:isValid() == 0) {
  557. Grenade2 = pewCreate("100 Cal Explosive Rounds","models/hunter/plates/plate025x025.mdl",entity():pos(),entity():angles(),"forward")
  558. Grenade2:propNotSolid(1)
  559. Grenade2:propStatic(1)
  560. Grenade2:propDraw(0)
  561. }
  562. Pew1:pewFire(0)
  563. Pew2:pewFire(0)
  564. Pew3:pewFire(0)
  565. Grenade1:pewFire(0)
  566. Grenade2:pewFire(0)
  567. Grenade3:pewFire(0)
  568. if(Grenade3:isValid() == 0) {
  569. Grenade3 = pewCreate("Flamethrower","models/hunter/plates/plate025x025.mdl",entity():pos(),entity():angles(),"forward")
  570. Grenade3:propNotSolid(1)
  571. Grenade3:propStatic(1)
  572. Grenade3:propDraw(0)
  573. }
  574.  
  575. if(owner():weapon():type() == "weapon_physcannon") {
  576. if(owner():keyAttack2()) {
  577. Pew1:pewFire(1)
  578. }
  579. }
  580. if(owner():weapon():type() == "weapon_physcannon") {
  581. if(owner():keyAttack2()) {
  582. Pew2:pewFire(1)
  583. }
  584. }
  585. if(owner():weapon():type() == "weapon_physcannon") {
  586. if(owner():keyAttack2()) {
  587. Pew3:pewFire(1)
  588. }
  589. }
  590. if(owner():weapon():type() == "weapon_physcannon") {
  591. if(owner():keyAttack2()) {
  592. Grenade1:pewFire(1)
  593. }
  594. }
  595. if(owner():weapon():type() == "weapon_physcannon") {
  596. if(owner():keyAttack2()) {
  597. Grenade2:pewFire(1)
  598. }
  599. }
  600. if(owner():weapon():type() == "weapon_physcannon") {
  601. if(owner():keyAttack1()) {
  602. Grenade3:pewFire(1)
  603. }
  604. }
  605. ##############################################################################
  606. #Artilleries:
  607. # Basic Artillery
  608. # Modifiable Artillery
  609. # Nebelwerfer
  610. # Rocket Barrage
  611.  
  612. #Bombs and Explosives:
  613. # Bomb Rack
  614. # C4
  615. # Carpet Bomber
  616. # EMP Bomb
  617. # Helicopter Bomb
  618. # Warhead
  619.  
  620. #Cannons:
  621. # 37mm Cannon
  622. # 40mm Cannon
  623. # 105mm Cannon
  624. # 230mm Cannon
  625. # Basic Cannon
  626. # EMP Cannon
  627. # Flak Cannon
  628. # Plasma Bomb
  629. # Railgun
  630.  
  631. #Close Combat:
  632. # Fist
  633. # Flamethrower
  634. # Laser Sword
  635.  
  636. #Defense:
  637. # Regenerator
  638. # Automatic Defense
  639. # Manual Defense
  640.  
  641.  
  642. #Fun:
  643. # Firework
  644. # Water Balloon
  645.  
  646. #Lasers:
  647. # Basic Laser
  648. # Beam Laser
  649. # particle beam
  650. # Laser Machinegun
  651. # Medium Laser
  652.  
  653. #Launchers and Spawners:
  654. # C4 Spawner
  655. # Grenade Launcher
  656. # Smoke Grenade Launcher
  657.  
  658. #Machineguns:
  659. # 50 Cal Machinegun
  660. # 100 Cal Explosive Rounds
  661. # Basic Machinegun
  662. # Burst Machinegun
  663. # Gauss Gun
  664. # Minigun
  665.  
  666. #Naval:
  667. # Naval Mine
  668. # Naval Mine Spawner
  669. # Torpedo
  670.  
  671. #Other:
  672. # Delayed Sticky-Bomb Launcher
  673. # Flame Shell
  674. # Smoke Emitter
  675. # Thud Rounds
  676. # Unrealistic Railgun
  677.  
  678. ##############################################################################
  679.  
  680. Pew1:setAng(owner():eyeAngles())
  681. Pew2:setAng(owner():eyeAngles())
  682. Pew3:setAng(owner():eyeAngles())
  683. Grenade1:setAng(owner():eyeAngles())
  684. Grenade2:setAng(owner():eyeAngles())
  685. Grenade3:setAng(owner():eyeAngles())
  686.  
  687. Angle = Pew1:angles() + ang(0,-20,0)
  688. SinAng = Angle:yaw()
  689. Speed = 10
  690.  
  691. Angle = Pew2:angles() + ang(0,-20,0)
  692. SinAng = Angle:yaw()
  693. Speed = 10
  694.  
  695. Angle = Pew3:angles() + ang(0,-20,0)
  696. SinAng = Angle:yaw()
  697. Speed = 10
  698.  
  699. Pos = Head:pos()
  700. Pos = Pos + vec(Speed*sin(SinAng+90)*sin(Angle:pitch()+90), Speed*sin(SinAng)*sin(Angle:pitch()+90), Speed*sin(Angle:pitch()+180))
  701. Pew1:setPos(Pos)
  702.  
  703. Pos = Head:pos()
  704. Pos = Pos + vec(Speed*sin(SinAng+90)*sin(Angle:pitch()+90), Speed*sin(SinAng)*sin(Angle:pitch()+90), Speed*sin(Angle:pitch()+180))
  705. Pew2:setPos(Pos)
  706.  
  707. Pos = Head:pos()
  708. Pos = Pos + vec(Speed*sin(SinAng+90)*sin(Angle:pitch()+90), Speed*sin(SinAng)*sin(Angle:pitch()+90), Speed*sin(Angle:pitch()+180))
  709. Pew3:setPos(Pos)
  710.  
  711. Angle = Grenade1:angles() + ang(0,-20,0)
  712. SinAng = Angle:yaw()
  713.  
  714. Angle = Grenade2:angles() + ang(0,-20,0)
  715. SinAng = Angle:yaw()
  716.  
  717. Angle = Grenade3:angles() + ang(0,-20,0)
  718. SinAng = Angle:yaw()
  719.  
  720. Pos = Head:pos()
  721. Pos = Pos + vec(Speed*sin(SinAng+90)*sin(Angle:pitch()+90), Speed*sin(SinAng)*sin(Angle:pitch()+90), Speed*sin(Angle:pitch()+180))
  722. Grenade1:setPos(Pos)
  723.  
  724. Pos = Head:pos()
  725. Pos = Pos + vec(Speed*sin(SinAng+90)*sin(Angle:pitch()+90), Speed*sin(SinAng)*sin(Angle:pitch()+90), Speed*sin(Angle:pitch()+180))
  726. Grenade2:setPos(Pos)
  727.  
  728. Pos = Head:pos()
  729. Pos = Pos + vec(Speed*sin(SinAng+90)*sin(Angle:pitch()+90), Speed*sin(SinAng)*sin(Angle:pitch()+90), Speed*sin(Angle:pitch()+180))
  730. Grenade3:setPos(Pos)
  731.  
  732. Pod["Eject",number] = Pod["Entity",entity]:driver() != owner()
  733.  
  734. if(lastSaid() == "del") {
  735. if(lastSpoke() == owner()) {
  736. if(chatClk()) {
  737. Pew1:propDelete()
  738. Pew2:propDelete()
  739. Pew3:propDelete()
  740. Grenade1:propDelete()
  741. Grenade2:propDelete()
  742. Grenade3:propDelete()
  743. selfDestruct()
  744. selfDestructAll()
  745. }
  746. }
  747. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement