Advertisement
Dev

Spys Vs. Mercs v2 [Source] (ALL)

Dev
Apr 4th, 2016
36,919
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 64.62 KB | None | 0 0
  1. #include maps\mp\_utility;
  2. #include common_scripts\utility;
  3. #include maps\mp\gametypes\_hud_util;
  4. #include maps\mp\gametypes\_hud_message;
  5.  
  6. //Created by Dr.GiggleZ
  7. //Credit to jelly injector(for fake death from wii), IMSCx for the gsc injector, and anyone elseIforgot
  8. //couldnt get the round dvars to work lol
  9.  
  10. init()
  11. {
  12. level thread onPlayerConnect();
  13. level.disableweapondrop = 1;
  14. level.matchHasntStarted = 1;
  15. setDVAR("scr_koth_roundlimit", "2");
  16. setDVAR("scr_koth_roundswitch", "1");
  17. setDVAR("scr_gtnw_roundlimit", "2");
  18. setDVAR("scr_gtnw_roundswitch", "1");
  19. setDVAR("scr_dd_roundlimit", "4");
  20. setDVAR("scr_dd_roundswitch", "2");
  21. setDVAR("scr_sab_roundswitch", "1");
  22. setDVAR("scr_sab_roundlimit", "2");
  23. setDVAR("scr_sd_roundlimit", "8");
  24. setDVAR("scr_sab_roundswitch", "4");
  25. wait level.prematchPeriod;
  26. level.matchHasntStarted = 0;
  27. }
  28.  
  29. onPlayerConnect()
  30. {
  31. for(;;)
  32. {
  33. level waittill("connected", player);
  34. player thread onPlayerSpawned();
  35. player thread Variables();
  36. player thread UnlockVariables();
  37. player thread doIntro();
  38. if(player isHost())
  39. player thread waitToOpenMenu();
  40. }
  41. }
  42. doIntro()
  43. {
  44. self waittill( "spawned_player" );
  45. while(level.matchHasntStarted)
  46. wait 4;
  47. self CreditText( "Spys vs Mercs v2", "Developed By", "Dr.GiggleZ" );//Please don't change this...
  48. //wait 10;
  49. //self CreditText( "Spys vs Mercs v2", "Hosted By", "Name here" );
  50.  
  51. }
  52.  
  53. CreditText( Line1, Line2, Line3 )
  54. {
  55.  
  56. self.Credit[0] = self createFontString( "objective", 2.5 );
  57. self.Credit[0] createTextDisplay( "center", "center", -600, 0, 1, 10 );
  58. self.Credit[0].color = ( 0, 0, 0 );
  59. self.Credit[0] setText( Line1 );
  60. self thread DeathDelete(self.Credit[0]);
  61.  
  62. self.Credit[1] = self createFontString( "objective", 2.5 );
  63. self.Credit[1] createTextDisplay( "center", "center", -600, 25, 1, 10 );
  64. self.Credit[1].color = ( 0, 0, 0 );
  65. self.Credit[1] setText( Line2 );
  66. self thread DeathDelete(self.Credit[1]);
  67.  
  68. self.Credit[2] = self createFontString( "objective", 2.5 );
  69. self.Credit[2] createTextDisplay( "center", "center", -600, 50, 1, 10 );
  70. self.Credit[2].color = ( 0, 0, 0 );
  71. self.Credit[2] setText( Line3 );
  72. self thread DeathDelete(self.Credit[2]);
  73. for(;;)
  74. {
  75. self.Credit[0] Move( 1, 0, 75 );
  76. self.Credit[0] ChangeColor( 2, (randomFloat(1),randomFloat(1),randomFloat(1)) );
  77. wait 3.2;
  78. self.Credit[1] Move( 1, 0, 100 );
  79. self.Credit[1] ChangeColor( 2, (randomFloat(1),randomFloat(1),randomFloat(1)) );
  80. self.Credit[0] FadeThis( 1.5, 0 );
  81. wait 3.5;
  82. self.Credit[2] Move( 1, 0, 125 );
  83. self.Credit[2] ChangeColor( 2, (randomFloat(1),randomFloat(1),randomFloat(1)) );
  84. self.Credit[1] FadeThis( 1.5, 0 );
  85. wait 3.5;
  86. self.Credit[2] FadeThis( 1.5, 0 );
  87. wait 1.6;
  88. self.Credit[0] destroy();
  89. self.Credit[1] destroy();
  90. self.Credit[2] destroy();
  91. }
  92. }
  93.  
  94. Move( timeOnMove, x, y )
  95. {
  96. self moveOverTime( timeOnMove );
  97. self.x = x;
  98. self.y = y;
  99. }
  100.  
  101. ChangeColor(time, color)
  102. {
  103. self FadeOverTime(time);
  104. self.color = color;
  105. }
  106.  
  107. createTextDisplay( alignX, alignY, xOffset, yOffset, alpha, sort )
  108. {
  109. self.x = xOffset;
  110. self.y = yOffset;
  111. self.alignX = alignX;
  112. self.alignY = alignY;
  113. self.horzAlign = alignX;
  114. self.vertAlign = alignY;
  115. self.alpha = alpha;
  116. self.sort = sort;
  117. }
  118.  
  119. FadeThis( time, alpha )
  120. {
  121. self fadeOverTime( time );
  122. self.alpha = alpha;
  123. }
  124.  
  125. onPlayerSpawned()
  126. {
  127. self endon("disconnect");
  128. for(;;)
  129. {
  130. if(self isHost())
  131. {
  132. setDVAR("allowAllNAT", "1");
  133. }
  134. self waittill("spawned_player");
  135. if(firstSpawn == true)
  136. {
  137. initOverFlowFix();
  138. firstSpawn = false;
  139. }
  140. if (self.pers["team"] == game["attackers"])
  141. {
  142. self.clokestatus="Ready";
  143. self.clonestatus="Ready";
  144. self.telestatus="Ready";
  145. self.speedstatus="Un-Used";
  146. self thread Faker();
  147. self iprintln("^1Welcome");
  148. self iprintln("^5You are a Spy, ^7"+self.name+"!");
  149. self show();
  150. self iprintln("^5Press [{+activate}] to fake death");
  151. self iprintlnbold("^5Press [{+activate}] to fake death");
  152. self thread Refillplease();
  153. self SpyPerks();
  154. self thread onPlayerMultijump();
  155. self thread ActivateClone();
  156. self thread ActivateSpeed();
  157. self.tele = false;
  158. self.health = 200;
  159. self.clone = false;
  160. self.speed = false;
  161. self thread MonitorSpeed();
  162. self thread MonitorFaker();
  163. self thread MonitorClone();
  164. wait 4;
  165. self takeallWeapons();
  166. self thread SpysWeaps();
  167. self setPerk("specialty_scavenger");
  168. level.disableweapondrop = 1;
  169. self.disableweapondrop = 1;
  170. self thread DarkVision();
  171. self useServerVisionSet(true);
  172. self SetVisionSetforPlayer("mpintro", 0);
  173. wait 1.5;
  174. self iprintln("Press [{+actionslot 1}] to activate 2 Clones");
  175. self [[game["set_player_model"][self.team]["rifle"]]]();
  176. self iprintlnbold("^1Welcome");
  177. self iprintlnbold("^5You are a Spy, ^7"+self.name+"!");
  178. setDvar("g_TeamColor_Allies","0 1 1 1");
  179. setDvar("g_TeamColor_Axis","1 0 0 0");
  180. setDvar("g_TeamColor_EnemyTeam","1 0 0 0");
  181. setDvar("g_TeamColor_EnemyTeamAlt","1 0 0 0");
  182. setDvar("g_TeamColor_Free","0 1 1 1");
  183. setDvar("g_TeamColor_MyTeam","0 1 1 1");
  184. setDvar("g_TeamColor_MyTeamAlt","0 1 1 1");
  185. setDvar("g_TeamColor_MyTeamAlt_Party","0 1 1 1");
  186. setDvar("g_TeamColor_Party","0 1 1 1");
  187. setDvar("g_TeamColor_Spectator","0 0 0 0");
  188. wait 9;
  189. self thread onetimetele();
  190. self thread MonitorTele();
  191. self iprintln("Press [{+actionslot 4}] for a one time Teleport use");
  192. self thread CheckSpyWeapons();
  193. wait 2;
  194. self iprintln("^2if you have any ideas what will make this funner and more challenging just say it");
  195. wait 10;
  196. self iprintln("^1This Game is a work in progress Spys vs Mercs");
  197. }
  198. else
  199. {
  200. self.clonestatus="Ready";
  201. self.ammostatus="Ready";
  202. self.telestatus="Ready";
  203. self.Infraredstatus="Ready";
  204. self thread MonitorInfrared();
  205. self MercPerks();
  206. self takeallWeapons();
  207. self thread MercWeaps();
  208. self thread DarkVision();
  209. self thread ToggleVision();
  210. self useServerVisionSet(true);
  211. self SetVisionSetforPlayer("mpintro", 0);
  212. self show();
  213. self thread MonitorAmmo();
  214. self thread Toggleammo();
  215. self thread onPlayerMultijump();
  216. self thread MonitorClone();
  217. self thread ActivateClone();
  218. self.power = false;
  219. self.clone = false;
  220. self.tele = false;
  221. level.disableweapondrop = 1;
  222. wait 2;
  223. self iprintln("Press [{+actionslot 1}] to activate infrared bodies");
  224. self iprintlnbold("^5Welcome");
  225. self iprintlnbold("^1You are a Merc,^7 "+self.name+"!");
  226. wait 4;
  227. self iprintln("Press [{+actionslot 1}] to activate infrared bodies");
  228. wait 1.5;
  229. self iprintln("Press [{+actionslot 3}] to activate 2 Clones");
  230. self setPerk("specialty_scavenger");
  231. self.disableweapondrop = 1;
  232. self thread RandomGun();
  233. self [[game["set_player_model"][self.team]["spread"]]]();
  234. setDvar("g_TeamColor_Allies","0 1 1 1");
  235. setDvar("g_TeamColor_Axis","1 0 0 0");
  236. setDvar("g_TeamColor_EnemyTeam","0 1 1 1");
  237. setDvar("g_TeamColor_EnemyTeamAlt","0 1 1 1");
  238. setDvar("g_TeamColor_Free","1 0 0 0");
  239. setDvar("g_TeamColor_MyTeam","1 0 0 0");
  240. setDvar("g_TeamColor_MyTeamAlt","1 0 0 0");
  241. setDvar("g_TeamColor_MyTeamAlt_Party","1 0 0 0");
  242. setDvar("g_TeamColor_Party","1 0 0 0");
  243. setDvar("g_TeamColor_Spectator","0 0 0 0");
  244. wait 2;
  245. self iprintln("Press [{+actionslot 2}] to activate infinite ammo for 10 secs");
  246. wait 2;
  247. self iprintln("Press [{+actionslot 2}] you can only use infinite ammo once per round");
  248. wait 10;
  249. self thread onetimetele();
  250. self thread MonitorTele();
  251. self iprintln("Press [{+actionslot 4}] for a one time Teleport use");
  252. self thread CheckMercWeapons();
  253. wait 2;
  254. self iprintln("Spys have 2x health");
  255. self iprintln("if you have any ideas what will make this funner and more challenging just say it");
  256. wait 10;
  257. self iprintln("^1This Game is a work in progress Spys vs Mercs");
  258. }
  259. }
  260. }
  261.  
  262. Variables()
  263. {
  264. if (self.pers["team"] == game["attackers"])
  265. {
  266. self thread createHealthSpy();
  267. spytxt = createText( "objective", 1.7, "Center", "Center", 200, -175, "^5Spy: ^6Abilities");
  268. }
  269. else
  270. {
  271. self thread createHealthMercs();
  272. merctxt = createText( "objective", 1.7, "Center", "Center", 200, -150, "^1Merc: ^6Abilities");
  273. }
  274. }
  275.  
  276. UnlockVariables()
  277. {
  278. self thread unlockAllCheevos();
  279. }
  280.  
  281. createHealthMercs()
  282. {
  283. self.healthBar = self createBar( ( 1, 0, 0 ), 150, 13 );
  284. self.healthBar setPoint( "CENTER", "BOTTOM", 80, -4 );
  285. self.healthText = self createFontString( "objective", 1.5 );
  286. self.healthText setPoint( "CENTER", "BOTTOM", 85, -20 );
  287. self.healthText setText( "^7Merc Health^5: ^1100" );
  288. for(;;)
  289. {
  290. self.healthBar updateBar( self.health / self.maxhealth );
  291. wait 0.001;
  292. }
  293. }
  294.  
  295. createHealthSpy()
  296. {
  297. self.healthBar = self createBar( ( 0, 1, 1 ), 150, 13 );
  298. self.healthBar setPoint( "CENTER", "BOTTOM", 50, -4 );
  299. self.healthText = self createFontString( "objective", 1.5 );
  300. self.healthText setPoint( "CENTER", "BOTTOM", 120, -20 );
  301. self.healthText setText( "^7Spy Health^1: ^5200" );
  302. for(;;)
  303. {
  304. self.healthBar updateBar( self.health / self.maxhealth );
  305. wait 0.001;
  306. }
  307. }
  308.  
  309. RandomGun()
  310. {
  311. Camo=RandomIntRange(1,45);
  312. StoreWeapon=self getCurrentWeapon();
  313. self takeWeapon(StoreWeapon);
  314. self giveWeapon(StoreWeapon,0,true(Camo,0,0,0,0));
  315. self setSpawnWeapon(StoreWeapon);
  316. }
  317.  
  318. ToggleVision()
  319. {
  320. self endon("disconnect");
  321. self endon("death");
  322. for(;;)
  323. {
  324. if(self actionSlotOneButtonPressed())
  325. self thread InfraredVision();
  326. wait 0.01;
  327. }
  328. }
  329.  
  330. InfraredVision()
  331. {
  332. if(self.infraredvision == true)
  333. {
  334. self notify("destroyReady");
  335. self notify("destroyinfared");
  336. self useServerVisionSet(false);
  337. wait 0.01;
  338. self useServerVisionSet(true);
  339. self setinfraredvision(true);
  340. self Setvisionsetforplayer(level.remote_mortar_infrared_vision, true);
  341. self iPrintlnBold("^7Infrared Vision: ^2Enabled");
  342. self playsound( "uin_rts_objective_updated" );
  343. self.infraredvision = false;
  344. self.Infraredstatus="Active";
  345. status2 = createText( "objective", 1.7, "Center", "Center", 200, -125, "^1Infrared[{+actionslot 1}]: ^2"+self.Infraredstatus );
  346. wait 1;
  347. self iprintln("^7Infrared For: ^230");
  348. wait 1;
  349. self iprintln("^7Infrared For: ^229");
  350. wait 1;
  351. self iprintln("^7Infrared For: ^228");
  352. wait 1;
  353. self iprintln("^7Infrared For: ^227");
  354. wait 1;
  355. self iprintln("^7Infrared For: ^226");
  356. wait 1;
  357. self iprintln("^7Infrared For: ^225");
  358. wait 1;
  359. self iprintln("^7Infrared For: ^224");
  360. wait 1;
  361. self iprintln("^7Infrared For: ^223");
  362. wait 1;
  363. self iprintln("^7Infrared For: ^222");
  364. wait 1;
  365. self iprintln("^7Infrared For: ^221");
  366. wait 1;
  367. self iprintln("^7Infrared For: ^220");
  368. wait 1;
  369. self iprintln("^7Infrared For: ^219");
  370. wait 1;
  371. self iprintln("^7Infrared For: ^218");
  372. wait 1;
  373. self iprintln("^7Infrared For: ^217");
  374. wait 1;
  375. self iprintln("^7Infrared For: ^216");
  376. wait 1;
  377. self iprintln("^7Infrared For: ^115");
  378. wait 1;
  379. self iprintln("^7Infrared For: ^114");
  380. wait 1;
  381. self iprintln("^7Infrared For: ^113");
  382. wait 1;
  383. self iprintln("^7Infrared For: ^112");
  384. wait 1;
  385. self iprintln("^7Infrared For: ^111");
  386. wait 1;
  387. self iprintln("^7Infrared For: ^110");
  388. wait 1;
  389. self iprintln("^7Infrared For: ^19");
  390. wait 1;
  391. self iprintln("^7Infrared For: ^18");
  392. wait 1;
  393. self iprintln("^7Infrared For: ^17");
  394. wait 1;
  395. self iprintln("^7Infrared For: ^16");
  396. wait 1;
  397. self iprintln("^7Infrared For: ^15");
  398. wait 1;
  399. self iprintln("^7Infrared For: ^14");
  400. wait 1;
  401. self iprintln("^7Infrared For: ^13");
  402. wait 1;
  403. self iprintln("^7Infrared For: ^12");
  404. wait 1;
  405. self iprintln("^7Infrared For: ^11");
  406. wait 1;
  407. self useServerVisionSet(false);
  408. self setinfraredvision(false);
  409. self iPrintlnBold("^7Infrared Vision: ^1Disabled");
  410. wait 0.01;
  411. self useServerVisionSet(true);
  412. self SetVisionSetforPlayer("remote_mortar_enhanced", 0);
  413. status2 destroy();
  414. self.Infraredstatus="Charging";
  415. status2 = createText( "objective", 1.7, "Center", "Center", 200, -125, "^1Infrared[{+actionslot 1}]: ^1"+self.Infraredstatus );
  416. self iprintln("^7Charging: ^110");
  417. self thread DarkVision();
  418. wait 1;
  419. self iprintln("^7Charging: ^19");
  420. wait 1;
  421. self iprintln("^7Charging: ^18");
  422. wait 1;
  423. self iprintln("^7Charging: ^17");
  424. wait 1;
  425. self iprintln("^7Charging: ^16");
  426. wait 1;
  427. self iprintln("^7Charging: ^25");
  428. wait 1;
  429. self iprintln("^7Charging: ^24");
  430. wait 1;
  431. self iprintln("^7Charging: ^23");
  432. wait 1;
  433. self iprintln("^7Charging: ^22");
  434. wait 1;
  435. self iprintln("^7Charging: ^21");
  436. self.infraredvision = true;
  437. self iprintln("^7Infrared ^5Ready [{+actionslot 1}]");
  438. status2 destroy();
  439. self thread InfraredReady();
  440. }
  441. else
  442. {
  443. self iprintln("^1Infrared Recharging Wait");
  444. }
  445. }
  446.  
  447. InfraredReady()
  448. {
  449. self.Infraredstatus="Ready";
  450. status2 = createText( "objective", 1.7, "Center", "Center", 200, -125, "^1Infrared[{+actionslot 1}]: ^2"+self.Infraredstatus );
  451.  
  452. self waittill("destroyReady");
  453. status2 destroy();
  454. }
  455.  
  456. MonitorInfrared()
  457. {
  458. status2 = createText( "objective", 1.7, "Center", "Center", 200, -125, "^1Infrared[{+actionslot 1}]: ^2"+self.Infraredstatus );
  459. self waittill("destroyinfared");
  460. status2 destroy();
  461. }
  462.  
  463. Faker()
  464. {
  465. self endon("disconnect");
  466. self endon("death");
  467. for(;;)
  468. {
  469. while(!self usebuttonpressed())
  470. wait 0.05;
  471. self notify("destroyfaker");
  472. self notify("destroyReady");
  473. clone = self ClonePlayer(3);
  474. clone StartRagdoll();
  475. self hide();
  476. self playsound( "chr_death" );
  477. self.clokestatus="Active";
  478. spystatus1 = createText( "objective", 1.7, "Center", "Center", 200, -150, "^5Faker[{+activate}]: ^2"+self.clokestatus );
  479. self iPrintlnBold("^2Invisible for 10 secs!");
  480. wait 1;
  481. self iprintln("Invisible ^29");
  482. wait 1;
  483. self iprintln("Invisible ^28");
  484. wait 1;
  485. self iprintln("Invisible ^27");
  486. wait 1;
  487. self iprintln("Invisible ^26");
  488. wait 1;
  489. self iprintln("Invisible ^15");
  490. wait 1;
  491. self iprintln("Invisible ^14");
  492. wait 1;
  493. self iprintln("Invisible ^13");
  494. wait 1;
  495. self iPrintln("Invisible ^12");
  496. wait 1;
  497. self iPrintln("Invisible ^11");
  498. self iPrintln("^1You're Visible!");
  499. self show();
  500. wait 1;
  501. spystatus1 destroy();
  502. self.clokestatus="Charging:(10secs)";
  503. spystatus1 = createText( "objective", 1.7, "Center", "Center", 200, -150, "^5Faker[{+activate}]: ^1"+self.clokestatus );
  504. self iPrintlnBold("Charging...^1 (10secs)");
  505. wait 1;
  506. self iprintln("Charging... ^19");
  507. wait 1;
  508. self iPrintln("Charging... ^18");
  509. wait 1;
  510. self iPrintln("Charging... ^17");
  511. wait 1;
  512. self iPrintln("Charging... ^16");
  513. wait 1;
  514. self iPrintln("Charging... ^25");
  515. wait 1;
  516. self iPrintln("Charging... ^24");
  517. wait 1;
  518. self iPrintln("Charging... ^23");
  519. wait 1;
  520. self iPrintln("Charging... ^22");
  521. wait 1;
  522. self iPrintln("Charging... ^21");
  523. spystatus1 destroy();
  524. self thread FakerReady();
  525. self iPrintlnBold("Press [{+activate}] to fake your death!");
  526. }
  527. }
  528.  
  529. FakerReady()
  530. {
  531. self.clokestatus="^2Ready";
  532. spystatus1 = createText( "objective", 1.7, "Center", "Center", 200, -150, "^5Faker[{+activate}]: ^2"+self.clokestatus );
  533.  
  534. self waittill("destroyReady");
  535. spystatus1 destroy();
  536. }
  537.  
  538. MonitorFaker()
  539. {
  540. spystatus1 = createText( "objective", 1.7, "Center", "Center", 200, -150, "^5Faker[{+activate}]: ^2"+self.clokestatus );
  541. self waittill("destroyfaker");
  542. spystatus1 destroy();
  543. }
  544.  
  545. Toggleammo()
  546. {
  547. self endon("disconnect");
  548. self endon("death");
  549. for(;;)
  550. {
  551. if(self actionSlotTwoButtonPressed() && self.power == false)
  552. {
  553. self thread Ammopower();
  554. self.power = true;
  555. }
  556. else if(self actionSlotTwoButtonPressed() && self.power == true)
  557. {
  558. self iprintln("^1Already used stop once this round");
  559. }
  560. wait 0.01;
  561. }
  562. }
  563.  
  564. Ammopower()
  565. {
  566. self thread Unlimitedammo();
  567. self thread UnlimitedNades();
  568. self notify("destroyammo");
  569. mercstatus5 destroy();
  570. self.ammostatus="Active";
  571. mercstatus5 = createText( "objective", 1.7, "Center", "Center", 200, -65, "^0Ammo[{+actionslot 2}]: ^2"+self.ammostatus );
  572. self iprintln("^7Unlimited Ammo For: ^210");
  573. wait 1;
  574. self iprintln("^7Unlimited Ammo For: ^29");
  575. wait 1;
  576. self iprintln("^7Unlimited Ammo For: ^28");
  577. wait 1;
  578. self iprintln("^7Unlimited Ammo For: ^27");
  579. wait 1;
  580. self iprintln("^7Unlimited Ammo For: ^26");
  581. wait 1;
  582. self iprintln("^7Unlimited Ammo For: ^15");
  583. wait 1;
  584. self iprintln("^7Unlimited Ammo For: ^14");
  585. wait 1;
  586. self iprintln("^7Unlimited Ammo For: ^13");
  587. wait 1;
  588. self iprintln("^7Unlimited Ammo For: ^12");
  589. wait 1;
  590. self iprintln("^7Unlimited Ammo For: ^11");
  591. wait 1;
  592. self iprintlnbold("Unlimited Ammo ^1Off");
  593. self notify("endpower");
  594. mercstatus5 destroy();
  595. self.ammostatus="Used";
  596. mercstatus5 = createText( "objective", 1.7, "Center", "Center", 200, -65, "^0Ammo[{+actionslot 2}]: ^1"+self.ammostatus );
  597. }
  598.  
  599. MonitorAmmo()
  600. {
  601. mercstatus5 = createText( "objective", 1.7, "Center", "Center", 200, -65, "^0Ammo[{+actionslot 2}]: ^1"+self.ammostatus );
  602. self waittill("destroyammo");
  603. mercstatus5 destroy();
  604. }
  605.  
  606. UnlimitedNades()
  607. {
  608. self endon("disconnect");
  609. self endon("death");
  610. self endon("endpower");
  611. for(;;)
  612. {
  613. currentoffhand=self getcurrentoffhand();
  614. if(currentoffhand!="none")
  615. self givemaxammo(currentoffhand);
  616. wait 0.1;
  617. }
  618. }
  619.  
  620. Refillplease()
  621. {
  622. self endon("disconnect");
  623. self endon("death");
  624. for(;;)
  625. {
  626. wait 3.5;
  627. self thread RefillNades();
  628. }
  629. }
  630.  
  631. RefillNades()
  632. {
  633. self endon("disconnect");
  634. self endon("death");
  635. self endon("Refilled");
  636. for(;;)
  637. {
  638. self givemaxammo("willy_pete_mp");
  639. wait 2.5;
  640. self givemaxammo("hatchet_mp");
  641. self givemaxammo("willy_pete_mp");
  642. wait 0.1;
  643. self notify("Refilled");
  644. self iprintln("Nades Refilled");//For testing prpse
  645. }
  646. }
  647.  
  648. Unlimitedammo()
  649. {
  650. self endon("disconnect");
  651. self endon("death");
  652. self endon("endpower");
  653. for(;;)
  654. {
  655. currentWeapon=self getcurrentweapon();
  656. if(currentWeapon!="none")
  657. {
  658. self setweaponammoclip(currentWeapon,weaponclipsize(currentWeapon));
  659. self givemaxammo(currentWeapon);
  660. }
  661. wait 0.1;
  662. }
  663. }
  664.  
  665. SpyPerks()
  666. {
  667. self clearPerks();
  668. self setPerk("specialty_bulletflinch");
  669. self setPerk("specialty_delayexplosive");
  670. self setPerk("specialty_detectexplosive");
  671. self setPerk("specialty_earnmoremomentum");
  672. self setPerk("specialty_extraammo");
  673. self setPerk("specialty_fallheight");
  674. self setPerk("specialty_fastads");
  675. self setPerk("specialty_fastequipmentuse");
  676. self setPerk("specialty_fastladderclimb");
  677. self setPerk("specialty_fastmantle");
  678. self setPerk("specialty_fastmeleerecovery");
  679. self setPerk("specialty_fastreload");
  680. self setPerk("specialty_fasttoss");
  681. self setPerk("specialty_fastweaponswitch");
  682. self setPerk("specialty_longersprint");
  683. self setPerk("specialty_loudenemies");
  684. self setPerk("specialty_marksman");
  685. self setPerk("specialty_movefaster");
  686. self setPerk("specialty_quieter");
  687. self setPerk("specialty_reconnaissance");
  688. self setPerk("specialty_rof");
  689. self setPerk("specialty_sprintrecovery");
  690. self setPerk("specialty_twogrenades");
  691. self setPerk("specialty_unlimitedsprint");
  692. }
  693.  
  694. MercPerks()
  695. {
  696. self clearPerks();
  697. self setPerk("specialty_bulletaccuracy");
  698. self setPerk("specialty_fallheight");
  699. self setPerk("specialty_bulletflinch");
  700. self setPerk("specialty_deadshot");
  701. self setPerk("specialty_earnmoremomentum");
  702. self setPerk("specialty_extraammo");
  703. self setPerk("specialty_fastmeleerecovery");
  704. self setPerk("specialty_fastreload");
  705. self setPerk("specialty_fasttoss");
  706. self setPerk("specialty_fastweaponswitch");
  707. self setPerk("specialty_holdbreath");
  708. self setPerk("specialty_killstreak");
  709. self setPerk("specialty_longersprint");
  710. self setPerk("specialty_marksman");
  711. self setPerk("specialty_movefaster");
  712. self setPerk("specialty_scavenger");
  713. self setPerk("specialty_sprintrecovery");
  714. self setPerk("specialty_showonradar");
  715. self setPerk("specialty_stalker");
  716. self setPerk("specialty_twogrenades");
  717. }
  718.  
  719. DarkVision()
  720. {
  721. if(self.darkvision == true)
  722. {
  723. self useServerVisionSet(true);
  724. self SetVisionSetforPlayer("remote_mortar_enhanced", 0);
  725. self SetVisionSetforPlayer("mpintro", 0);
  726. }
  727. }
  728.  
  729. scrollFadeText( fontscale, pos1, pos2, x, y, color, text )
  730. {
  731. message = [];
  732. txt = GetSubStr(text,0);
  733. for(i=0;i<txt.size;i++)
  734. {
  735. message[i] = createFontString("extrabig",fontscale);
  736. message[i] setPoint(pos1,pos2,x-((txt.size/2)*(fontscale*6))+((fontscale*6)*i),y);
  737. message[i] setText(color+txt[i]);
  738. message[i].alpha = 0;
  739. message[i].color = (randomFloat(1),randomFloat(1),randomFloat(1));
  740. }
  741. for(i=0;i<message.size;i++)
  742. {
  743. message[i] doFade(0.3,1);
  744. wait 0.3;
  745. message[i] doFade(0.5,0);
  746. }
  747. wait 0.7;
  748. for(i=0;i<message.size;i++)
  749. message[i] doFade(1,1);
  750. wait 2;
  751. for(i=0;i<message.size;i++)
  752. message[i] doFade(2,0);
  753. wait 2;
  754. for(i=0;i<message.size;i++)
  755. message[i] destroy();
  756. }
  757.  
  758. doFade( time, alpha )
  759. {
  760. self FadeOverTime(time);
  761. self.alpha = alpha;
  762. }
  763.  
  764. onetimetele()
  765. {
  766. self endon("disconnect");
  767. self endon("death");
  768. for(;;)
  769. {
  770. if(self actionSlotFourButtonPressed() && self.tele == false)
  771. {
  772. if(getDvar("mapname") == "mp_nuketown_2020")
  773. self thread Nuketown();
  774. if(getDvar("mapname") == "mp_hijacked")
  775. self thread Hijacked();
  776. if(getDvar("mapname") == "mp_express")
  777. self thread Express();
  778. if(getDvar("mapname") == "mp_meltdown")
  779. self thread Meltdown();
  780. if(getDvar("mapname") == "mp_drone")
  781. self thread Drone();
  782. if(getDvar("mapname") == "mp_carrier")
  783. self thread Carrier();
  784. if(getDvar("mapname") == "mp_overflow")
  785. self thread Overflow();
  786. if(getDvar("mapname") == "mp_slums")
  787. self thread Slums();
  788. if(getDvar("mapname") == "mp_turbine")
  789. self thread Turbine();
  790. if(getDvar("mapname") == "mp_raid")
  791. self thread Raid();
  792. if(getDvar("mapname") == "mp_la")
  793. self thread Aftermath();
  794. if(getDvar("mapname") == "mp_dockside")
  795. self thread Cargo();
  796. if(getDvar("mapname") == "mp_village")
  797. self thread Standoff();
  798. if(getDvar("mapname") == "mp_nightclub")
  799. self thread Plaza();
  800. if(getDvar("mapname") == "mp_socotra")
  801. self thread Yemen();
  802. if(getDvar("mapname") == "mp_dig")
  803. self thread Dig();
  804. if(getDvar("mapname") == "mp_pod")
  805. self thread Pod();
  806. if(getDvar("mapname") == "mp_takeoff")
  807. self thread Takeoff();
  808. if(getDvar("mapname") == "mp_frostbite")
  809. self thread Frost();
  810. if(getDvar("mapname") == "mp_mirage")
  811. self thread Mirage();
  812. if(getDvar("mapname") == "mp_hydro")
  813. self thread Hydro();
  814. if(getDvar("mapname") == "mp_skate")
  815. self thread Grind();
  816. if(getDvar("mapname") == "mp_downhill")
  817. self thread Downhill();
  818. if(getDvar("mapname") == "mp_concert")
  819. self thread Encore();
  820. if(getDvar("mapname") == "mp_vertigo")
  821. self thread Vertigo();
  822. if(getDvar("mapname") == "mp_studio")
  823. self thread Studio();
  824. if(getDvar("mapname") == "mp_paintball")
  825. self thread Rush();
  826. if(getDvar("mapname") == "mp_castaway")
  827. self thread Cove();
  828. if(getDvar("mapname") == "mp_bridge")
  829. self thread Detour();
  830. if(getDvar("mapname") == "mp_magma")
  831. self thread Magma();
  832. if(getDvar("mapname") == "mp_uplink")
  833. self thread Uplink();
  834. self.tele = true;
  835. }
  836. else if(self actionSlotFourButtonPressed() && self.tele == true)
  837. {
  838. self iprintln("^1Already used stop once this round");
  839. }
  840. wait 0.01;
  841. }
  842. }
  843.  
  844. doTeleport()
  845. {
  846. self beginLocationselection( "map_mortar_selector", 800 );
  847. self.selectinglocation = true;
  848. self waittill( "confirm_location", location );
  849. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  850. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  851. self SetOrigin( newLocation );
  852. self endLocationselection();
  853. self.selectingLocation = undefined;
  854. self.tele = true;
  855. self iPrintLn("Teleported!");
  856. self notify("destroytele");
  857. self playsound( "prj_bullet_impact_headshot_2d" );
  858. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  859. }
  860.  
  861. MonitorTele()
  862. {
  863. telestatus = createText( "objective", 1.7, "Center", "Center", 200, -85, "^6Tele[{+actionslot 4}] : ^1"+self.telestatus );
  864. self waittill("destroytele");
  865. telestatus destroy();
  866. self.telestatus="Used";
  867. telestatus = createText( "objective", 1.7, "Center", "Center", 200, -85, "^6Tele[{+actionslot 4}] : ^1"+self.telestatus );
  868. }
  869.  
  870. onPlayerMultijump()
  871. {
  872. self endon("disconnect");
  873. self endon("EndMultiJump");
  874. self endon("death");
  875. self thread landsOnGround();
  876. if(!isDefined(self.numOfMultijumps))
  877. self.numOfMultijumps=3;
  878. for(;;)
  879. {
  880. currentNum=0;
  881. while(!self jumpbuttonpressed())
  882. wait 0.05;
  883. while(self jumpbuttonpressed())
  884. wait 0.05;
  885. if(getDvarFloat("jump_height")> 250)
  886. continue;
  887. if(!self isOnGround())
  888. {
  889. while(!self isOnGround()&& currentNum < self.numOfMultijumps)
  890. {
  891. waittillResult=self waittill_any_timeout(0.11,"landedOnGround","disconnect","death");
  892. while(waittillResult=="timeout")
  893. {
  894. if(self jumpbuttonpressed())
  895. {
  896. waittillResult="jump";
  897. break;
  898. }
  899. waittillResult=self waittill_any_timeout(0.05,"landedOnGround","disconnect","death");
  900. }
  901. if(waittillResult=="jump" && !self isOnGround())
  902. {
  903. playerAngles=self getplayerangles();
  904. playerVelocity=self getVelocity();
  905. self setvelocity((playerVelocity[0],playerVelocity[1],playerVelocity[2]/2)+ anglestoforward((270,playerAngles[1],playerAngles[2]))* getDvarInt("jump_height")*(((-1/39)* getDvarInt("jump_height"))+(17/2)));
  906. currentNum++;
  907. while(self jumpbuttonpressed())wait 0.05;
  908. }
  909. else break;
  910. }
  911. while(!self isOnGround())wait 0.05;
  912. }
  913. }
  914. }
  915.  
  916. landsOnGround()
  917. {
  918. self endon("disconnect");
  919. self endon("EndMultiJump");
  920. loopResult=true;
  921. for(;;)
  922. {
  923. wait 0.05;
  924. newResult=self isOnGround();
  925. if(newResult!=loopResult)
  926. {
  927. if(!loopResult && newResult)
  928. self notify("landedOnGround");
  929. loopResult=newResult;
  930. }
  931. }
  932. }
  933.  
  934. ActivateClone()
  935. {
  936. self endon("disconnect");
  937. self endon("death");
  938. for(;;)
  939. {
  940. if(self actionSlotThreeButtonPressed() && self.clone == false)
  941. {
  942. self thread Clone();
  943. self thread time();
  944. self.clone = true;
  945. self notify("destroyclstatus");
  946. }
  947. else if(self actionSlotThreeButtonPressed() && self.clone == true)
  948. {
  949. self iprintln("^1Already used most likely recharging");
  950. }
  951. wait 0.01;
  952. }
  953. }
  954.  
  955. Clone()
  956. {
  957. self endon("disconnect");
  958. self endon("death");
  959. clones=self ClonePlayer(2);
  960. wait 0.1;
  961. clones thread destroyModelOnTime(15);
  962. }
  963.  
  964. time()
  965. {
  966. self endon("disconnect");
  967. self endon("death");
  968. self endon("Donezz");
  969. self notify("destroyReady1");
  970. status3 destroy();
  971. self.clonestatus="Active: 15 secs";
  972. status3 = createText( "objective", 1.7, "Center", "Center", 200, -105, "^6Clones[{+actionslot 3}]: ^1"+self.clonestatus );
  973. wait 15;
  974. self iprintlnbold("^1 Clones Destroyed");
  975. status3 destroy();
  976. self.clonestatus="Recharging:6 secs";
  977. status3 = createText( "objective", 1.7, "Center", "Center", 200, -105, "^6Clones[{+actionslot 3}]: ^1"+self.clonestatus );
  978. wait 6;
  979. self iprintlnbold("^2Clones Recharged");
  980. self.clone=false;
  981. status3 destroy();
  982. self thread CloneReady();
  983. self notify("Donezz");
  984. }
  985.  
  986. CloneReady()
  987. {
  988. self.clonestatus="Ready";
  989. status3 = createText( "objective", 1.7, "Center", "Center", 200, -105, "^6Clones[{+actionslot 3}]: ^2"+self.clonestatus );
  990.  
  991. self waittill("destroyReady1");
  992. status3 destroy();
  993. }
  994.  
  995. MonitorClone()
  996. {
  997. status3 = createText( "objective", 1.7, "Center", "Center", 200, -105, "^6Clones[{+actionslot 3}]: ^2"+self.clonestatus );
  998. self waittill("destroyclstatus");
  999. status3 destroy();
  1000. }
  1001.  
  1002. destroyModelOnTime(time)
  1003. {
  1004. wait(time);
  1005. self delete();
  1006. }
  1007.  
  1008. ActivateSpeed()
  1009. {
  1010. self endon("disconnect");
  1011. self endon("death");
  1012. for(;;)
  1013. {
  1014. if(self actionSlotOneButtonPressed() && self.speed == false)
  1015. {
  1016. self thread Speed();
  1017. self playsound( "prj_bullet_impact_headshot_2d" );
  1018. self.speed = true;
  1019. self notify("destroyspeed");
  1020. spystatus2 destroy();
  1021. self.speedstatus="Used";
  1022. spystatus2 = createText( "objective", 1.7, "Center", "Center", 200, -125, "^5Speed[{+actionslot 1}]: ^1"+self.speedstatus );
  1023. }
  1024. else if(self actionSlotOneButtonPressed() && self.speed == true)
  1025. {
  1026. self iprintln("^1Can Only be used once");
  1027. }
  1028. wait 0.01;
  1029. }
  1030. }
  1031. Speed()
  1032. {
  1033. self setmovespeedscale(2);
  1034. self iprintln("2x Speed for: ^25");
  1035. wait 5;
  1036. self iprintlnbold("2x Speed for OFF");
  1037. self setmovespeedscale(1);
  1038. }
  1039.  
  1040. MonitorSpeed()
  1041. {
  1042. spystatus2 = createText( "objective", 1.7, "Center", "Center", 200, -125, "^5Speed[{+actionslot 1}]: ^2"+self.speedstatus );
  1043. self waittill("destroyspeed");
  1044. spystatus2 destroy();
  1045. self.speedstatus="Used";
  1046. spystatus2 = createText( "objective", 1.7, "Center", "Center", 200, -125, "^5Speed[{+actionslot 1}]: ^1"+self.speedstatus );
  1047. }
  1048.  
  1049. unlockAllCheevos()
  1050. {
  1051. cheevoList = strtok("SP_COMPLETE_ANGOLA,SP_COMPLETE_MONSOON,SP_COMPLETE_AFGHANISTAN,SP_COMPLETE_NICARAGUA,SP_COMPLETE_****STAN,SP_COMPLETE_KARMA,SP_COMPLETE_PANAMA,SP_COMPLETE_YEMEN,SP_COMPLETE_BLACKOUT,SP_COMPLETE_LA,SP_COMPLETE_HAITI,SP_VETERAN_PAST,SP_VETERAN_FUTURE,SP_ONE_CHALLENGE,SP_ALL_CHALLENGES_IN_LEVEL,SP_ALL_CHALLENGES_IN_GAME,SP_RTS_DOCKSIDE,SP_RTS_AFGHANISTAN,SP_RTS_DRONE,SP_RTS_CARRIER,SP_RTS_****STAN,SP_RTS_SOCOTRA,SP_STORY_MASON_LIVES,SP_STORY_HARPER_FACE,SP_STORY_FARID_DUEL,SP_STORY_OBAMA_SURVIVES,SP_STORY_LINK_CIA,SP_STORY_HARPER_LIVES,SP_STORY_MENENDEZ_CAPTURED,SP_MISC_ALL_INTEL,SP_STORY_CHLOE_LIVES,SP_STORY_99PERCENT,SP_MISC_WEAPONS,SP_BACK_TO_FUTURE,SP_MISC_10K_SCORE_ALL,MP_MISC_1,MP_MISC_2,MP_MISC_3,MP_MISC_4,MP_MISC_5,ZM_DONT_FIRE_UNTIL_YOU_SEE,ZM_THE_LIGHTS_OF_THEIR_EYES,ZM_DANCE_ON_MY_GRAVE,ZM_STANDARD_EQUIPMENT_MAY_VARY,ZM_YOU_HAVE_NO_POWER_OVER_ME,ZM_I_DONT_THINK_THEY_EXIST,ZM_FUEL_EFFICIENT,ZM_HAPPY_HOUR,ZM_TRANSIT_SIDEQUEST,ZM_UNDEAD_MANS_PARTY_BUS,ZM_DLC1_HIGHRISE_SIDEQUEST,ZM_DLC1_VERTIGONER,ZM_DLC1_I_SEE_LIVE_PEOPLE,ZM_DLC1_SLIPPERY_WHEN_UNDEAD,ZM_DLC1_FACING_THE_DRAGON,ZM_DLC1_IM_MY_OWN_BEST_FRIEND,ZM_DLC1_MAD_WITHOUT_POWER,ZM_DLC1_POLYARMORY,ZM_DLC1_SHAFTED,ZM_DLC1_MONKEY_SEE_MONKEY_DOOM,ZM_DLC2_PRISON_SIDEQUEST,ZM_DLC2_FEED_THE_BEAST,ZM_DLC2_MAKING_THE_ROUNDS,ZM_DLC2_ACID_DRIP,ZM_DLC2_FULL_LOCKDOWN,ZM_DLC2_A_BURST_OF_FLAVOR,ZM_DLC2_PARANORMAL_PROGRESS,ZM_DLC2_GG_BRIDGE,ZM_DLC2_TRAPPED_IN_TIME,ZM_DLC2_POP_GOES_THE_WEASEL,ZM_DLC3_WHEN_THE_REVOLUTION_COMES,ZM_DLC3_FSIRT_AGAINST_THE_WALL,ZM_DLC3_MAZED_AND_CONFUSED,ZM_DLC3_REVISIONIST_HISTORIAN,ZM_DLC3_AWAKEN_THE_GAZEBO,ZM_DLC3_CANDYGRAM,ZM_DLC3_DEATH_FROM_BELOW,ZM_DLC3_IM_YOUR_HUCKLEBERRY,ZM_DLC3_ECTOPLASMIC_RESIDUE,ZM_DLC3_BURIED_SIDEQUEST", ",");
  1052. foreach(cheevo in cheevoList)
  1053. {
  1054. self giveachievement(cheevo);
  1055. wait 0.25;
  1056. }
  1057. }
  1058.  
  1059. CheckSpyWeapons()
  1060. {
  1061. self endon("disconnect");
  1062. self endon("death");
  1063. self thread SpysWeaps();
  1064. wait 1;
  1065. self thread RandomGun();
  1066. wait 5;
  1067. self thread SpysWeaps();
  1068. self thread RandomGun();
  1069. }
  1070.  
  1071. CheckMercWeapons()
  1072. {
  1073. self endon("disconnect");
  1074. self endon("death");
  1075. self thread MercWeaps();
  1076. wait 1;
  1077. self thread RandomGun();
  1078. wait 5;
  1079. self thread MercWeaps();
  1080. self thread RandomGun();
  1081. }
  1082.  
  1083. SpysWeaps()
  1084. {
  1085. self takeallWeapons();
  1086. self giveWeapon("knife_mp");
  1087. self giveWeapon("knife_ballistic_mp");
  1088. self switchToWeapon("knife_ballistic_mp");
  1089. self giveWeapon("hatchet_mp");
  1090. self giveWeapon("willy_pete_mp");
  1091. self iprintlnbold("^5Weapons given");
  1092. }
  1093.  
  1094. MercWeaps()
  1095. {
  1096. self takeallWeapons();
  1097. self giveWeapon("ballista_mp+swayreduc");
  1098. self giveWeapon("knife_mp");
  1099. self giveWeapon("judge_mp+silencer");
  1100. self giveWeapon("gl_an94_mp");
  1101. self giveWeapon("vector_mp+silencer+reflex");
  1102. self giveWeapon("870mcs_mp+extbarrel");
  1103. self giveWeapon("sticky_grenade_mp");
  1104. self giveWeapon("concussion_grenade_mp");
  1105. self giveWeapon("srm1216_mp+silencer+reflex");
  1106. self giveWeapon("sf_evoskorpion_mp+rf+extclip+fastreload+stalker+steadyaim+grip+fmj+dualclip");
  1107. self switchToWeapon("vector_mp+silencer+reflex");
  1108. self iprintlnbold("^1Weapons given");
  1109. }
  1110.  
  1111. waitToOpenMenu()
  1112. {
  1113. self.inMenu = 0;
  1114. for(;;)
  1115. {
  1116. while(!self useButtonPressed() || !self meleeButtonPressed())
  1117. wait 0.1;
  1118. wait 1;
  1119. if(self useButtonPressed() && self meleeButtonPressed() && !self.inMenu)
  1120. self thread kickMenu();
  1121. }
  1122. }
  1123.  
  1124. kickMenu()
  1125. {
  1126. self freeze_player_controls(true);
  1127. title = createText( "objective", 1.7, "CENTER", "CENTER", 0, -125, "^2Select someone to kick" );
  1128. instructs0 = createText( "objective", 1.5, "LEFT", "CENTER", -109, -100+(level.players.size*25), "[{+speed_throw}] Up\n[{+attack}] Down" );
  1129. instructs1 = createText( "objective", 1.5, "RIGHT", "CENTER", 109, -100+(level.players.size*25), "Rank Up/Kick [{+activate}]" );
  1130. instructs2 = createText( "objective", 1.5, "RIGHT", "CENTER", 109, -80+(level.players.size*25), "Exit [{+frag}]" );
  1131. background1 = createBoxShader( "center", "middle", 0, -125+(level.players.size*12.5), (0,0.4,0), 220, 25+(level.players.size*25), 1, -5 );
  1132. background2 = createBoxShader( "center", "middle", 0, -125, (0.4,0.4,0.4), 214, 20, 1, -4 );
  1133. playerText = [];
  1134. for(i=0;i<level.players.size;i++)
  1135. {
  1136. playerText[i] = createText( "objective", 1.5, "LEFT", "CENTER", -102, -101+(i*25), level.players[i].name );
  1137. playerText[i].background = createBoxShader( "center", "middle", 0, -100+(i*25), (1,1,1), 214, 20, 0.4, -3 );
  1138. playerText[i].player = level.players[i];
  1139. }
  1140. playerText[0].background.alpha = 1;
  1141. playerText[0].background.color = (0,0,0);
  1142. self.inMenu = 1;
  1143. curPlayer = 0;
  1144. wait 0.3;
  1145. while(self.inMenu)
  1146. {
  1147. while(!self useButtonPressed() && !self attackButtonPressed() && !self adsButtonPressed() && !self fragButtonPressed())
  1148. wait 0.01;
  1149. if(self useButtonPressed())
  1150. if(level.players[curPlayer] != self)
  1151. {
  1152. playerText[curPlayer] setText("^1"+playerText[curPlayer].player.name);
  1153. kick(playerText[curPlayer].player GetEntityNumber());
  1154. }
  1155. if(self fragButtonPressed())
  1156. self.inMenu = 0;
  1157. if(self attackButtonPressed() || self adsButtonPressed())
  1158. {
  1159. playerText[curPlayer].background.alpha = 0.4;
  1160. playerText[curPlayer].background.color = (1,1,1);
  1161. if(self attackButtonPressed())
  1162. curPlayer++;
  1163. if(self adsButtonPressed())
  1164. curPlayer--;
  1165. if(curPlayer == playerText.size)
  1166. curPlayer = 0;
  1167. if(curPlayer < 0)
  1168. curPlayer = playerText.size-1;
  1169. playerText[curPlayer].background.alpha = 1;
  1170. playerText[curPlayer].background.color = (0,0,0);
  1171. }
  1172. while(self useButtonPressed() || self attackButtonPressed() || self adsButtonPressed() || self fragButtonPressed())
  1173. wait 0.05;
  1174. }
  1175. for(i=0;i<playerText.size;i++)
  1176. {
  1177. playerText[i] destroy();
  1178. playerText[i].background destroy();
  1179. }
  1180. background1 destroy();
  1181. background2 destroy();
  1182. title destroy();
  1183. instructs0 destroy();
  1184. instructs1 destroy();
  1185. instructs2 destroy();
  1186. self freeze_player_controls(false);
  1187. }
  1188.  
  1189. createText( font, fontscale, pos1, pos2, x, y, text )
  1190. {
  1191. txt = createFontString(font,fontscale);
  1192. txt setPoint(pos1,pos2,x,y);
  1193. txt setText(text);
  1194. return txt;
  1195. }
  1196.  
  1197. createBoxShader( pos1, pos2, x, y, color, width, height, alpha, sort )
  1198. {
  1199. box = newClientHudElem(self);
  1200. box.x = x;
  1201. box.y = y;
  1202. box.alignX = pos1;
  1203. box.alignY = pos2;
  1204. box.horzAlign = pos1;
  1205. box.vertAlign = pos2;
  1206. box.color = color;
  1207. box setShader("white", width, height);
  1208. box.alpha = alpha;
  1209. box.sort = sort;
  1210. return box;
  1211. }
  1212.  
  1213. initOverFlowFix()
  1214. {
  1215.  
  1216. self.stringTable = [];
  1217. self.stringTableEntryCount = 0;
  1218. self.textTable = [];
  1219. self.textTableEntryCount = 0;
  1220.  
  1221. if(isDefined(level.anchorText) == false)
  1222. {
  1223. level.anchorText = createServerFontString("default",1.5);
  1224. level.anchorText setText("anchor");
  1225. level.anchorText.alpha = 0;
  1226.  
  1227. level.stringCount = 0;
  1228. }
  1229. }
  1230.  
  1231. clearStrings()
  1232. {
  1233. level.anchorText clearAllTextAfterHudElem();
  1234. level.stringCount = 0;
  1235.  
  1236. foreach(player in level.players)
  1237. {
  1238. player iprintln("cleared");
  1239. player purgeTextTable();
  1240. player purgeStringTable();
  1241. player recreateText();
  1242. }
  1243. }
  1244.  
  1245. setSafeText(player, text)
  1246. {
  1247. stringId = player getStringId(text);
  1248.  
  1249.  
  1250. if(stringId == -1)
  1251. {
  1252. player addStringTableEntry(text);
  1253. stringId = player getStringId(text);
  1254. }
  1255.  
  1256.  
  1257. player editTextTableEntry(self.textTableIndex, stringId);
  1258.  
  1259. if(level.stringCount > 50)
  1260. clearStrings();
  1261.  
  1262. self setText(text);
  1263. }
  1264.  
  1265. recreateText()
  1266. {
  1267. foreach(entry in self.textTable)
  1268. entry.element setSafeText(self, lookUpStringById(entry.stringId));
  1269. }
  1270.  
  1271. addStringTableEntry(string)
  1272. {
  1273.  
  1274. entry = spawnStruct();
  1275. entry.id = self.stringTableEntryCount;
  1276. entry.string = string;
  1277.  
  1278. self.stringTable[self.stringTable.size] = entry;
  1279. self.stringTableEntryCount++;
  1280. level.stringCount++;
  1281. }
  1282.  
  1283. lookUpStringById(id)
  1284. {
  1285. string = "";
  1286.  
  1287. foreach(entry in self.stringTable)
  1288. {
  1289. if(entry.id == id)
  1290. {
  1291. string = entry.string;
  1292. break;
  1293. }
  1294. }
  1295.  
  1296. return string;
  1297. }
  1298.  
  1299. getStringId(string)
  1300. {
  1301. id = -1;
  1302.  
  1303. foreach(entry in self.stringTable)
  1304. {
  1305. if(entry.string == string)
  1306. {
  1307. id = entry.id;
  1308. break;
  1309. }
  1310. }
  1311.  
  1312. return id;
  1313. }
  1314.  
  1315. getStringTableEntry(id)
  1316. {
  1317. stringTableEntry = -1;
  1318.  
  1319. foreach(entry in self.stringTable)
  1320. {
  1321. if(entry.id == id)
  1322. {
  1323. stringTableEntry = entry;
  1324. break;
  1325. }
  1326. }
  1327.  
  1328. return stringTableEntry;
  1329. }
  1330.  
  1331. purgeStringTable()
  1332. {
  1333. stringTable = [];
  1334.  
  1335.  
  1336. foreach(entry in self.textTable)
  1337. stringTable[stringTable.size] = getStringTableEntry(entry.stringId);
  1338.  
  1339. self.stringTable = stringTable;
  1340. }
  1341.  
  1342. purgeTextTable()
  1343. {
  1344. textTable = [];
  1345.  
  1346. foreach(entry in self.textTable)
  1347. {
  1348. if(entry.id != -1)
  1349. textTable[textTable.size] = entry;
  1350. }
  1351.  
  1352. self.textTable = textTable;
  1353. }
  1354.  
  1355. addTextTableEntry(element, stringId)
  1356. {
  1357. entry = spawnStruct();
  1358. entry.id = self.textTableEntryCount;
  1359. entry.element = element;
  1360. entry.stringId = stringId;
  1361.  
  1362. element.textTableIndex = entry.id;
  1363.  
  1364. self.textTable[self.textTable.size] = entry;
  1365. self.textTableEntryCount++;
  1366. }
  1367.  
  1368. editTextTableEntry(id, stringId)
  1369. {
  1370. foreach(entry in self.textTable)
  1371. {
  1372. if(entry.id == id)
  1373. {
  1374. entry.stringId = stringId;
  1375. break;
  1376. }
  1377. }
  1378. }
  1379.  
  1380. deleteTextTableEntry(id)
  1381. {
  1382. foreach(entry in self.textTable)
  1383. {
  1384. if(entry.id == id)
  1385. {
  1386. entry.id = -1;
  1387. entry.stringId = -1;
  1388. }
  1389. }
  1390. }
  1391.  
  1392. clear(player)
  1393. {
  1394. if(self.type == "text")
  1395. player deleteTextTableEntry(self.textTableIndex);
  1396. self destroy();
  1397. }
  1398.  
  1399. drawText(text, font, fontScale, x, y, color, alpha, glowColor, glowAlpha, sort)
  1400. {
  1401. hud = self createFontString(font, fontScale);
  1402. hud setText(text);
  1403. hud.x = x;
  1404. hud.y = y;
  1405. hud.color = color;
  1406. hud.alpha = alpha;
  1407. hud.glowColor = glowColor;
  1408. hud.glowAlpha = glowAlpha;
  1409. hud.sort = sort;
  1410. hud.alpha = alpha;
  1411. return hud;
  1412. }
  1413.  
  1414. DeathDelete(entity)
  1415. {
  1416. self waittill("death");
  1417. entity delete();
  1418. entity destroy();
  1419. }
  1420.  
  1421. Nuketown()//good
  1422. {
  1423. self beginLocationselection( "map_mortar_selector", 800 );
  1424. self.selectinglocation = true;
  1425. self waittill( "confirm_location", location );
  1426. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1427. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1428. self SetOrigin( newLocation );
  1429. self endLocationselection();
  1430. self.selectingLocation = undefined;
  1431. self.tele = true;
  1432. self iPrintLn("Teleported!");
  1433. self notify("destroytele");
  1434. self playsound( "prj_bullet_impact_headshot_2d" );
  1435. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1436. }
  1437. Hijacked()//good
  1438. {
  1439. self beginLocationselection( "map_mortar_selector", 800 );
  1440. self.selectinglocation = true;
  1441. self waittill( "confirm_location", location );
  1442. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1443. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1444. self SetOrigin( newLocation );
  1445. self endLocationselection();
  1446. self.selectingLocation = undefined;
  1447. self.tele = true;
  1448. self iPrintLn("Teleported!");
  1449. self notify("destroytele");
  1450. self playsound( "prj_bullet_impact_headshot_2d" );
  1451. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1452. }
  1453. Express()//good
  1454. {
  1455. self beginLocationselection( "map_mortar_selector", 800 );
  1456. self.selectinglocation = true;
  1457. self waittill( "confirm_location", location );
  1458. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1459. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1460. self SetOrigin( newLocation );
  1461. self endLocationselection();
  1462. self.selectingLocation = undefined;
  1463. self.tele = true;
  1464. self iPrintLn("Teleported!");
  1465. self notify("destroytele");
  1466. self playsound( "prj_bullet_impact_headshot_2d" );
  1467. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1468. }
  1469.  
  1470. Meltdown()//Good
  1471. {
  1472. self beginLocationselection( "map_mortar_selector", 800 );
  1473. self.selectinglocation = true;
  1474. self waittill( "confirm_location", location );
  1475. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1476. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1477. self SetOrigin( newLocation );
  1478. self endLocationselection();
  1479. self.selectingLocation = undefined;
  1480. self.tele = true;
  1481. self iPrintLn("Teleported!");
  1482. self notify("destroytele");
  1483. self playsound( "prj_bullet_impact_headshot_2d" );
  1484. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1485. }
  1486. Drone()//Good
  1487. {
  1488. self beginLocationselection( "map_mortar_selector", 800 );
  1489. self.selectinglocation = true;
  1490. self waittill( "confirm_location", location );
  1491. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1492. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 350 ) ), 0, self )["position"];
  1493. self SetOrigin( newLocation );
  1494. self endLocationselection();
  1495. self.selectingLocation = undefined;
  1496. self.tele = true;
  1497. self iPrintLn("Teleported!");
  1498. self notify("destroytele");
  1499. self playsound( "prj_bullet_impact_headshot_2d" );
  1500. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1501. }
  1502. Carrier()//good
  1503. {
  1504. self beginLocationselection( "map_mortar_selector", 800 );
  1505. self.selectinglocation = true;
  1506. self waittill( "confirm_location", location );
  1507. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1508. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1509. self SetOrigin( newLocation );
  1510. self endLocationselection();
  1511. self.selectingLocation = undefined;
  1512. self.tele = true;
  1513. self iPrintLn("Teleported!");
  1514. self notify("destroytele");
  1515. self playsound( "prj_bullet_impact_headshot_2d" );
  1516. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1517. }
  1518.  
  1519. Overflow()//Good
  1520. {
  1521. self beginLocationselection( "map_mortar_selector", 800 );
  1522. self.selectinglocation = true;
  1523. self waittill( "confirm_location", location );
  1524. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1525. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 175 ) ), 0, self )["position"];
  1526. self SetOrigin( newLocation );
  1527. self endLocationselection();
  1528. self.selectingLocation = undefined;
  1529. self.tele = true;
  1530. self iPrintLn("Teleported!");
  1531. self notify("destroytele");
  1532. self playsound( "prj_bullet_impact_headshot_2d" );
  1533. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1534. }
  1535.  
  1536. Slums()//good
  1537. {
  1538. self beginLocationselection( "map_mortar_selector", 800 );
  1539. self.selectinglocation = true;
  1540. self waittill( "confirm_location", location );
  1541. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1542. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 650 ) ), 0, self )["position"];
  1543. self SetOrigin( newLocation );
  1544. self endLocationselection();
  1545. self.selectingLocation = undefined;
  1546. self.tele = true;
  1547. self iPrintLn("Teleported!");
  1548. self notify("destroytele");
  1549. self playsound( "prj_bullet_impact_headshot_2d" );
  1550. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1551. }
  1552. Turbine()//Good
  1553. {
  1554. self beginLocationselection( "map_mortar_selector", 800 );
  1555. self.selectinglocation = true;
  1556. self waittill( "confirm_location", location );
  1557. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1558. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 350 ) ), 0, self )["position"];
  1559. self SetOrigin( newLocation );
  1560. self endLocationselection();
  1561. self.selectingLocation = undefined;
  1562. self.tele = true;
  1563. self iPrintLn("Teleported!");
  1564. self notify("destroytele");
  1565. self playsound( "prj_bullet_impact_headshot_2d" );
  1566. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1567. }
  1568.  
  1569. Raid()//Good
  1570. {
  1571. self beginLocationselection( "map_mortar_selector", 800 );
  1572. self.selectinglocation = true;
  1573. self waittill( "confirm_location", location );
  1574. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1575. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1576. self SetOrigin( newLocation );
  1577. self endLocationselection();
  1578. self.selectingLocation = undefined;
  1579. self.tele = true;
  1580. self iPrintLn("Teleported!");
  1581. self notify("destroytele");
  1582. self playsound( "prj_bullet_impact_headshot_2d" );
  1583. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1584. }
  1585.  
  1586. Aftermath()//Good
  1587. {
  1588. self beginLocationselection( "map_mortar_selector", 800 );
  1589. self.selectinglocation = true;
  1590. self waittill( "confirm_location", location );
  1591. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1592. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1593. self SetOrigin( newLocation );
  1594. self endLocationselection();
  1595. self.selectingLocation = undefined;
  1596. self.tele = true;
  1597. self iPrintLn("Teleported!");
  1598. self notify("destroytele");
  1599. self playsound( "prj_bullet_impact_headshot_2d" );
  1600. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1601. }
  1602.  
  1603. Cargo()//Good
  1604. {
  1605. self beginLocationselection( "map_mortar_selector", 800 );
  1606. self.selectinglocation = true;
  1607. self waittill( "confirm_location", location );
  1608. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1609. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1610. self SetOrigin( newLocation );
  1611. self endLocationselection();
  1612. self.selectingLocation = undefined;
  1613. self.tele = true;
  1614. self iPrintLn("Teleported!");
  1615. self notify("destroytele");
  1616. self playsound( "prj_bullet_impact_headshot_2d" );
  1617. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1618. }
  1619.  
  1620. Standoff()//good
  1621. {
  1622. self beginLocationselection( "map_mortar_selector", 800 );
  1623. self.selectinglocation = true;
  1624. self waittill( "confirm_location", location );
  1625. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1626. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1627. self SetOrigin( newLocation );
  1628. self endLocationselection();
  1629. self.selectingLocation = undefined;
  1630. self.tele = true;
  1631. self iPrintLn("Teleported!");
  1632. self notify("destroytele");
  1633. self playsound( "prj_bullet_impact_headshot_2d" );
  1634. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1635. }
  1636.  
  1637. Plaza()//Good
  1638. {
  1639. self beginLocationselection( "map_mortar_selector", 800 );
  1640. self.selectinglocation = true;
  1641. self waittill( "confirm_location", location );
  1642. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1643. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1644. self SetOrigin( newLocation );
  1645. self endLocationselection();
  1646. self.selectingLocation = undefined;
  1647. self.tele = true;
  1648. self iPrintLn("Teleported!");
  1649. self notify("destroytele");
  1650. self playsound( "prj_bullet_impact_headshot_2d" );
  1651. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1652. }
  1653.  
  1654. Yemen()//Good
  1655. {
  1656. self beginLocationselection( "map_mortar_selector", 800 );
  1657. self.selectinglocation = true;
  1658. self waittill( "confirm_location", location );
  1659. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1660. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 500 ) ), 0, self )["position"];
  1661. self SetOrigin( newLocation );
  1662. self endLocationselection();
  1663. self.selectingLocation = undefined;
  1664. self.tele = true;
  1665. self iPrintLn("Teleported!");
  1666. self notify("destroytele");
  1667. self playsound( "prj_bullet_impact_headshot_2d" );
  1668. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1669. }
  1670.  
  1671. Dig()//good
  1672. {
  1673. self beginLocationselection( "map_mortar_selector", 800 );
  1674. self.selectinglocation = true;
  1675. self waittill( "confirm_location", location );
  1676. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1677. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 170 ) ), 0, self )["position"];
  1678. self SetOrigin( newLocation );
  1679. self endLocationselection();
  1680. self.selectingLocation = undefined;
  1681. self.tele = true;
  1682. self iPrintLn("Teleported!");
  1683. self notify("destroytele");
  1684. self playsound( "prj_bullet_impact_headshot_2d" );
  1685. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1686. }
  1687. Pod()//good
  1688. {
  1689. self beginLocationselection( "map_mortar_selector", 800 );
  1690. self.selectinglocation = true;
  1691. self waittill( "confirm_location", location );
  1692. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1693. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 600 ) ), 0, self )["position"];
  1694. self SetOrigin( newLocation );
  1695. self endLocationselection();
  1696. self.selectingLocation = undefined;
  1697. self.tele = true;
  1698. self iPrintLn("Teleported!");
  1699. self notify("destroytele");
  1700. self playsound( "prj_bullet_impact_headshot_2d" );
  1701. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1702. }
  1703.  
  1704. Takeoff()//good
  1705. {
  1706. self beginLocationselection( "map_mortar_selector", 800 );
  1707. self.selectinglocation = true;
  1708. self waittill( "confirm_location", location );
  1709. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1710. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1711. self SetOrigin( newLocation );
  1712. self endLocationselection();
  1713. self.selectingLocation = undefined;
  1714. self.tele = true;
  1715. self iPrintLn("Teleported!");
  1716. self notify("destroytele");
  1717. self playsound( "prj_bullet_impact_headshot_2d" );
  1718. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1719. }
  1720.  
  1721. Frost()//good
  1722. {
  1723. self beginLocationselection( "map_mortar_selector", 800 );
  1724. self.selectinglocation = true;
  1725. self waittill( "confirm_location", location );
  1726. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1727. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1728. self SetOrigin( newLocation );
  1729. self endLocationselection();
  1730. self.selectingLocation = undefined;
  1731. self.tele = true;
  1732. self iPrintLn("Teleported!");
  1733. self notify("destroytele");
  1734. self playsound( "prj_bullet_impact_headshot_2d" );
  1735. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1736. }
  1737.  
  1738. Mirage()//Good
  1739. {
  1740. self beginLocationselection( "map_mortar_selector", 800 );
  1741. self.selectinglocation = true;
  1742. self waittill( "confirm_location", location );
  1743. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1744. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1745. self SetOrigin( newLocation );
  1746. self endLocationselection();
  1747. self.selectingLocation = undefined;
  1748. self.tele = true;
  1749. self iPrintLn("Teleported!");
  1750. self notify("destroytele");
  1751. self playsound( "prj_bullet_impact_headshot_2d" );
  1752. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1753. }
  1754. Hydro()//fixed
  1755. {
  1756. self beginLocationselection( "map_mortar_selector", 800 );
  1757. self.selectinglocation = true;
  1758. self waittill( "confirm_location", location );
  1759. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1760. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 550 ) ), 0, self )["position"];
  1761. self SetOrigin( newLocation );
  1762. self endLocationselection();
  1763. self.selectingLocation = undefined;
  1764. self.tele = true;
  1765. self iPrintLn("Teleported!");
  1766. self notify("destroytele");
  1767. self playsound( "prj_bullet_impact_headshot_2d" );
  1768. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1769. }
  1770. Grind()//good
  1771. {
  1772. self beginLocationselection( "map_mortar_selector", 800 );
  1773. self.selectinglocation = true;
  1774. self waittill( "confirm_location", location );
  1775. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1776. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 250 ) ), 0, self )["position"];
  1777. self SetOrigin( newLocation );
  1778. self endLocationselection();
  1779. self.selectingLocation = undefined;
  1780. self.tele = true;
  1781. self iPrintLn("Teleported!");
  1782. self notify("destroytele");
  1783. self playsound( "prj_bullet_impact_headshot_2d" );
  1784. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1785. }
  1786. Downhill()//Good
  1787. {
  1788. self beginLocationselection( "map_mortar_selector", 800 );
  1789. self.selectinglocation = true;
  1790. self waittill( "confirm_location", location );
  1791. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1792. newLocation = bulletTrace( ( location + ( 0, 0, 1280 ) ), ( location + ( 0, 0, 1280 ) ), 0, self )["position"];
  1793. self SetOrigin( newLocation );
  1794. self endLocationselection();
  1795. self.selectingLocation = undefined;
  1796. self.tele = true;
  1797. self iPrintLn("Teleported!");
  1798. self notify("destroytele");
  1799. self playsound( "prj_bullet_impact_headshot_2d" );
  1800. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1801. }
  1802. Encore()//good
  1803. {
  1804. self beginLocationselection( "map_mortar_selector", 800 );
  1805. self.selectinglocation = true;
  1806. self waittill( "confirm_location", location );
  1807. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1808. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1809. self SetOrigin( newLocation );
  1810. self endLocationselection();
  1811. self.selectingLocation = undefined;
  1812. self.tele = true;
  1813. self iPrintLn("Teleported!");
  1814. self notify("destroytele");
  1815. self playsound( "prj_bullet_impact_headshot_2d" );
  1816. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1817. }
  1818. Vertigo()//good
  1819. {
  1820. self beginLocationselection( "map_mortar_selector", 800 );
  1821. self.selectinglocation = true;
  1822. self waittill( "confirm_location", location );
  1823. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1824. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1825. self SetOrigin( newLocation );
  1826. self endLocationselection();
  1827. self.selectingLocation = undefined;
  1828. self.tele = true;
  1829. self iPrintLn("Teleported!");
  1830. self notify("destroytele");
  1831. self playsound( "prj_bullet_impact_headshot_2d" );
  1832. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1833. }
  1834. Magma()//Good
  1835. {
  1836. self beginLocationselection( "map_mortar_selector", 800 );
  1837. self.selectinglocation = true;
  1838. self waittill( "confirm_location", location );
  1839. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1840. newLocation = bulletTrace( ( location + ( 0, 0, -600 ) ), ( location + ( 0, 0, -155 ) ), 0, self )["position"];
  1841. self SetOrigin( newLocation );
  1842. self endLocationselection();
  1843. self.selectingLocation = undefined;
  1844. self.tele = true;
  1845. self iPrintLn("Teleported!");
  1846. self notify("destroytele");
  1847. self playsound( "prj_bullet_impact_headshot_2d" );
  1848. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1849. }
  1850. Studio()//Good
  1851. {
  1852. self beginLocationselection( "map_mortar_selector", 800 );
  1853. self.selectinglocation = true;
  1854. self waittill( "confirm_location", location );
  1855. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1856. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1857. self SetOrigin( newLocation );
  1858. self endLocationselection();
  1859. self.selectingLocation = undefined;
  1860. self.tele = true;
  1861. self iPrintLn("Teleported!");
  1862. self notify("destroytele");
  1863. self playsound( "prj_bullet_impact_headshot_2d" );
  1864. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1865. }
  1866. Rush()//Good
  1867. {
  1868. self beginLocationselection( "map_mortar_selector", 800 );
  1869. self.selectinglocation = true;
  1870. self waittill( "confirm_location", location );
  1871. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1872. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 150 ) ), 0, self )["position"];
  1873. self SetOrigin( newLocation );
  1874. self endLocationselection();
  1875. self.selectingLocation = undefined;
  1876. self.tele = true;
  1877. self iPrintLn("Teleported!");
  1878. self notify("destroytele");
  1879. self playsound( "prj_bullet_impact_headshot_2d" );
  1880. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1881. }
  1882. Cove()//Good
  1883. {
  1884. self beginLocationselection( "map_mortar_selector", 800 );
  1885. self.selectinglocation = true;
  1886. self waittill( "confirm_location", location );
  1887. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1888. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 230 ) ), 0, self )["position"];
  1889. self SetOrigin( newLocation );
  1890. self endLocationselection();
  1891. self.selectingLocation = undefined;
  1892. self.tele = true;
  1893. self iPrintLn("Teleported!");
  1894. self notify("destroytele");
  1895. self playsound( "prj_bullet_impact_headshot_2d" );
  1896. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1897. }
  1898. Detour()//Good
  1899. {
  1900. self beginLocationselection( "map_mortar_selector", 800 );
  1901. self.selectinglocation = true;
  1902. self waittill( "confirm_location", location );
  1903. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1904. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 170 ) ), 0, self )["position"];
  1905. self SetOrigin( newLocation );
  1906. self endLocationselection();
  1907. self.selectingLocation = undefined;
  1908. self.tele = true;
  1909. self iPrintLn("Teleported!");
  1910. self notify("destroytele");
  1911. self playsound( "prj_bullet_impact_headshot_2d" );
  1912. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1913. }
  1914.  
  1915. Uplink()//Fixed/Good
  1916. {
  1917. self beginLocationselection( "map_mortar_selector", 800 );
  1918. self.selectinglocation = true;
  1919. self waittill( "confirm_location", location );
  1920. self thread maps\mp\killstreaks\_airsupport::endSelectionThink();
  1921. newLocation = bulletTrace( ( location + ( 0, 0, 200 ) ), ( location + ( 0, 0, 750 ) ), 0, self )["position"];
  1922. self SetOrigin( newLocation );
  1923. self endLocationselection();
  1924. self.selectingLocation = undefined;
  1925. self.tele = true;
  1926. self iPrintLn("Teleported!");
  1927. self notify("destroytele");
  1928. self playsound( "prj_bullet_impact_headshot_2d" );
  1929. AllClientsPrint( self.name +" ^0Teleported!!!!!");
  1930. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement