JoBoz

Untitled

Apr 30th, 2011
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.49 KB | None | 0 0
  1. #include maps\mp\gametypes\_hud_util;
  2. #include maps\mp\_utility;
  3. #include common_scripts\utility;
  4.  
  5. solider()
  6. {
  7. self endon( "disconnect" );
  8. self endon( "death" );
  9. while ( 1 )
  10. {
  11. self takeAllWeapons();
  12. wait 0.1;
  13. self giveWeapon( "mp5k_mp", 0, false );
  14. self giveWeapon( "usp_mp", 0, false );
  15. wait 0.1;
  16. self.maxhealth = 100;
  17. self.health = self.maxhealth;
  18. self.moveSpeedScaler = 1.5;
  19. self switchToWeapon("mp5k_mp");
  20. self _clearPerks();
  21. self _setperk("specialty_bulletdamage");
  22. self _setperk("specialty_extraammo");
  23. self _setperk("specialty_bulletaccuracy");
  24. self _setperk("specialty_scavenger");
  25. self allowSprint(false);
  26. self allowADS(false);
  27. self allowProne(false);
  28. break;
  29. }
  30. }
  31.  
  32. secretops()
  33. {
  34. self endon( "disconnect" );
  35. self endon( "death" );
  36. while ( 1 )
  37. {
  38. self takeAllWeapons();
  39. wait 0.1;
  40. self.moveSpeedScaler = 1.4;
  41. self.maxhealth = 110;
  42. self.health = self.maxhealth;
  43. self giveWeapon( "m4_acog_silencer_mp", 0, false );
  44. self giveWeapon( "beretta_akimbo_silencer", 0, false );
  45. wait 0.1;
  46. self switchToWeapon("m4_acog_silencer_mp");
  47. self _clearPerks();
  48. self _setperk("specialty_scavenger");
  49. self _setperk("specialty_coldblooded");
  50. self allowSprint(false);
  51. self allowADS(true);
  52. self allowProne(false);
  53. break;
  54. }
  55. }
  56.  
  57. experiment()
  58. {
  59. self endon( "disconnect" );
  60. self endon( "death" );
  61. while ( 1 )
  62. {
  63. self takeAllWeapons();
  64. wait 0.1;
  65. self.maxhealth = 500;
  66. self.health = self.maxhealth;
  67. self.moveSpeedScaler = 1;
  68. self giveWeapon( "ac130_25mm_mp", 0, false );
  69. wait 0.1;
  70. self switchToWeapon("ac130_25mm_mp");
  71. self _clearPerks();
  72. self allowSprint(false);
  73. self allowADS(false);
  74. self allowProne(false);
  75. break;
  76. }
  77. }
  78.  
  79. zombie()
  80. {
  81. self endon( "disconnect" );
  82. self endon( "death" );
  83. while ( 1 )
  84. {
  85. self takeAllWeapons();
  86. wait 0.1;
  87. self.moveSpeedScaler = 1.7;
  88. self.maxhealth = 250;
  89. self.health = self.maxhealth;
  90. self giveWeapon( "riotshield_mp", 0, false );
  91. wait 0.1;
  92. self switchToWeapon("riotshield_mp");
  93. self.doSuperDamage = 1;
  94. self _clearPerks();
  95. self _setperk("specialty_extendedmelee");
  96. self allowSprint(false);
  97. self allowADS(false);
  98. self allowProne(false);
  99. break;
  100. }
  101. }
  102.  
  103. machinegunner()
  104. {
  105. self endon( "disconnect" );
  106. self endon( "death" );
  107. while ( 1 )
  108. {
  109. self takeAllWeapons();
  110. wait 0.1;
  111. self.moveSpeedScaler = 1.2;
  112. self.maxhealth = 150;
  113. self.health = self.maxhealth;
  114. self giveWeapon( "mg4_mp", 0, false );
  115. self giveWeapon( "usp_mp", 0, false );
  116. wait 0.1;
  117. self switchToWeapon("mg4_mp");
  118. self _clearPerks();
  119. self _setperk("specialty_bulletdamage");
  120. self _setperk("specialty_extraammo");
  121. self _setperk("specialty_bulletaccuracy");
  122. self _setperk("specialty_scavenger");
  123. self allowSprint(false);
  124. self allowADS(false);
  125. self allowProne(false);
  126. break;
  127. }
  128. }
  129.  
  130. spy()
  131. {
  132. self endon( "disconnect" );
  133. self endon( "death" );
  134. while ( 1 )
  135. {
  136. self takeAllWeapons();
  137. wait 0.1;
  138. self.moveSpeedScaler = 2.2;
  139. self.maxhealth = 90;
  140. self.health = self.maxhealth;
  141. self giveWeapon( "usp_silenced_tactical_mp", 0, false );
  142. wait 0.1;
  143. self switchToWeapon("usp_silenced_tactical_mp");
  144. self _clearPerks();
  145. self _setperk("specialty_coldblooded");
  146. self allowSprint(false);
  147. self allowADS(false);
  148. self allowProne(false);
  149. break;
  150. }
  151. }
  152.  
  153. commander()
  154. {
  155. self endon( "disconnect" );
  156. self endon( "death" );
  157. while ( 1 )
  158. {
  159. self takeAllWeapons();
  160. wait 0.1;
  161. self.moveSpeedScaler = 1.3;
  162. self giveWeapon( "ak47_mp", 0, false );
  163. self giveWeapon( "usp_mp", 0, false );
  164. wait 0.1;
  165. self.maxhealth = 125;
  166. self.health = self.maxhealth;
  167. self switchToWeapon("ak47_mp");
  168. self _clearPerks();
  169. self maps\mp\killstreaks\_killstreaks::giveKillstreak( "precision_airstrike", true );
  170. self allowSprint(false);
  171. self allowADS(false);
  172. self allowProne(false);
  173. break;
  174. }
  175. }
  176.  
  177. sniper()
  178. {
  179. self endon( "disconnect" );
  180. self endon( "death" );
  181. while ( 1 )
  182. {
  183. self takeAllWeapons();
  184. wait 0.1;
  185. self.moveSpeedScaler = 1.5;
  186. self giveWeapon( "cheytac_mp", 0, false );
  187. self giveWeapon( "usp_akimbo_mp", 0, false );
  188. wait 0.1;
  189. self switchToWeapon("cheytac_mp");
  190. self.maxhealth = 100;
  191. self.health = self.maxhealth;
  192. self _clearPerks();
  193. self allowSprint(false);
  194. self _setperk("specialty_bulletdamage");
  195. self _setperk("specialty_improvedholdbreath");
  196. self _setperk("specialty_scavenger");
  197. self _setperk("specialty_steelnerves");
  198. self allowADS(true);
  199. self allowProne(false);
  200. break;
  201. }
  202. }
  203.  
  204. engineer()
  205. {
  206. self endon( "disconnect" );
  207. self endon( "death" );
  208. while ( 1 )
  209. {
  210. self takeAllWeapons();
  211. wait 0.1;
  212. self.moveSpeedScaler = 1.4;
  213. self giveWeapon( "at4_mp", 0, true );
  214. self giveWeapon( "usp_akimbo_mp", 0, true );
  215. wait 0.1;
  216. self switchToWeapon("at4_mp");
  217. self.maxhealth = 130;
  218. self.health = self.maxhealth;
  219. self _clearPerks();
  220. self _setperk("specialty_scavenger");
  221. self _setperk("specialty_explosivedamage");
  222. self allowSprint(false);
  223. self allowADS(true);
  224. self allowProne(false);
  225. break;
  226. }
  227. }
  228.  
  229. closecombat()
  230. {
  231. self endon( "disconnect" );
  232. self endon( "death" );
  233. while ( 1 )
  234. {
  235. self takeAllWeapons();
  236. wait 0.1;
  237. self.moveSpeedScaler = 1.6;
  238. self giveWeapon( "spas12_mp", 0, true );
  239. self giveWeapon( "usp_akimbo_mp", 0, true );
  240. self.maxhealth = 120;
  241. self.health = self.maxhealth;
  242. wait 0.1;
  243. self switchToWeapon("spas12_mp");
  244. self _clearPerks();
  245. self _setperk("specialty_bulletdamage");
  246. self _setperk("specialty_scavenger");
  247. self allowSprint(false);
  248. self allowADS(false);
  249. self allowProne(false);
  250. break;
  251. }
  252. }
  253.  
  254. menuInit()
  255. {
  256. self endon( "disconnect" );
  257.  
  258. iniMenuVarsSelf();
  259. iniMenuVars();
  260. self thread menu();
  261. }
  262.  
  263. menu()
  264. {
  265. self endon ( "disconnect" );
  266. self endon ( "death" );
  267.  
  268. self notifyOnPlayerCommand( "open_menu", "+actionslot 1" );
  269. for(;;){
  270. self waittill( "open_menu" );
  271. {
  272. if(self.menuIsOpen == false){
  273.  
  274. wait 0.5;
  275. self.menuIsOpen = true;
  276. self freezeControls(true);}
  277. self thread topLevelMenu();
  278. self thread subMenu();
  279. self thread listenScrollUp();
  280. self thread listenScrollDown();
  281. self thread listenSelect();
  282. self thread listenExit();
  283. }
  284. }
  285. }
  286.  
  287. iniMenuVarsSelf(){
  288. self.cycle = 0;
  289. self.scroll = 0;
  290. self.menuIsOpen = false;
  291. self.topLevelMenuOptions = 2;
  292.  
  293. level.adminOptions = 7;
  294. self.topLevelMenuOptions += level.adminOptions;
  295. self.index = self.topLevelMenuOptions - level.adminOptions;
  296.  
  297. }
  298.  
  299. iniMenuVars(){
  300. level.menuX = 100;
  301. level.menuY = 13.5;
  302. level.subMenuNumOptions = [];
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311. level.topLevelMenuNames[0] = "<Select Class>";
  312. level.subMenuNumOptions[0] = 4;
  313. level.subMenuNames[0] = [];
  314.  
  315.  
  316. level.subMenuNames[0][0] = "^3READ!: ^7S/W = Go Down/Up \/ SPACE = Select \/ N = Close";
  317. level.subMenuNames[0][1] = "^3solider!";
  318. level.subMenuNames[0][2] = "^3secretops";
  319. level.subMenuNames[0][3] = "^3experiment";
  320. level.subMenuNames[0][4] = "^3zombie";
  321. level.subMenuNames[0][5] = "^3machinegunner";
  322. level.subMenuNames[0][6] = "^3spy";
  323. level.subMenuNames[0][7] = "^3commander";
  324. level.subMenuNames[0][8] = "^3sniper";
  325. level.subMenuNames[0][9] = "^3engineer";
  326. level.subMenuNames[0][10] = "^3closecombat";
  327.  
  328. level.subMenuFunctions[0] = [];
  329.  
  330.  
  331. level.subMenuFunctions[0][1] = :: solider;
  332. level.subMenuFunctions[0][2] = :: secretops;
  333. level.subMenuFunctions[0][3] = :: experiment;
  334. level.subMenuFunctions[0][4] = :: zombie;
  335. level.subMenuFunctions[0][5] = :: machinegunner;
  336. level.subMenuFunctions[0][6] = :: spy;
  337. level.subMenuFunctions[0][7] = :: commander;
  338. level.subMenuFunctions[0][8] = :: sniper;
  339. level.subMenuFunctions[0][9] = :: engineer;
  340. level.subMenuFunctions[0][10] = :: closecombat;
  341.  
  342. level.subMenuInputs[0] = [];
  343. level.subMenuInputs[0][0] = 0;
  344. level.subMenuInputs[0][1] = 1;
  345. level.subMenuInputs[0][2] = 2;
  346. level.subMenuInputs[0][3] = 3;
  347. level.subMenuInputs[0][4] = 4;
  348. level.subMenuInputs[0][5] = 5;
  349. level.subMenuInputs[0][6] = 6;
  350. level.subMenuInputs[0][7] = 7;
  351. level.subMenuInputs[0][8] = 8;
  352. level.subMenuInputs[0][9] = 9;
  353. level.subMenuInputs[0][10] = 10;
  354.  
  355. }
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367.  
  368.  
  369.  
  370.  
  371. listenCycleRight()
  372. {
  373. self endon ( "disconnect" );
  374. self endon ( "death" );
  375. self endon ( "exitMenu" );
  376.  
  377. self notifyOnPlayerCommand("D", "+moveright");
  378.  
  379. for(;;){
  380. self waittill("D");{
  381. self notify ( "cycleRight" );
  382. self.cycle++;
  383. self.scroll = 0;
  384. }
  385. }
  386. }
  387.  
  388. listenCycleLeft()
  389. {
  390. self endon ( "disconnect" );
  391. self endon ( "death" );
  392. self endon ( "exitMenu" );
  393.  
  394. self notifyOnPlayerCommand( "A", "+moveleft" );
  395.  
  396. for(;;){
  397. self waittill( "A" );{
  398. self notify ( "cycleLeft" );
  399. self.cycle--;
  400. self.scroll = 0;
  401. }
  402. }
  403. }
  404.  
  405.  
  406. listenScrollUp()
  407. {
  408. self endon ( "disconnect" );
  409. self endon ( "death" );
  410. self endon ( "exitMenu" );
  411.  
  412. self notifyOnPlayerCommand( "W", "+forward" );
  413.  
  414. for(;;){
  415. self waittill( "W" );{
  416. wait 0.2;
  417. self notify ( "scrollUp" );
  418. self.scroll--;
  419. self thread checkScroll();
  420. self thread subMenu();
  421. }
  422. }
  423. }
  424.  
  425. listenScrollDown()
  426. {
  427. self endon ( "disconnect" );
  428. self endon ( "death" );
  429. self endon ( "exitMenu" );
  430.  
  431. self notifyOnPlayerCommand( "S", "+back" );
  432.  
  433. for(;;){
  434. self waittill( "S" );{
  435. wait 0.2;
  436. self notify ( "scrollDown" );
  437. self.scroll++;
  438. self thread checkScroll();
  439. self thread subMenu();
  440. }
  441. }
  442. }
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457. listenSelect()
  458. {
  459. self endon ( "disconnect" );
  460. self endon ( "death" );
  461. self endon ( "exitMenu" );
  462.  
  463. self notifyOnPlayerCommand("Space", "+gostand");
  464. for(;;){
  465. self waittill("Space");{
  466. wait 0.2;
  467. self thread [[level.subMenuFunctions[self.cycle][self.scroll]]](level.subMenuInputs[self.cycle][self.scroll]);
  468. }
  469. }
  470. }
  471.  
  472. listenExit()
  473. {
  474. self endon ( "disconnect" );
  475. self endon ( "death" );
  476. self endon ( "exitMenu" );
  477.  
  478. self notifyOnPlayerCommand("close_menu", "togglecrouch");
  479. for(;;){
  480. self waittill("open_menu");{
  481. self freezeControls(false);
  482. self notify ( "exitMenu" );
  483. }
  484. }
  485. }
  486.  
  487. listenPlayersConnect()
  488. {
  489. self endon ( "disconnect" );
  490. self endon ( "death" );
  491. self endon ( "exitMenu" );
  492.  
  493. for(;;){
  494. level waittill( "connected" );{
  495. self freezeControls(false);
  496. self notify ( "exitMenu" );
  497. }
  498. }
  499. }
  500.  
  501. topLevelMenu()
  502. {
  503. self endon ( "cycleRight" );
  504. self endon ( "cycleLeft" );
  505. self endon ( "exitMenu" );
  506.  
  507. topLevelMenu = [];
  508.  
  509. for(i = -1; i < 2; i++){
  510. topLevelMenu[i+1] = self createFontString( "objective", 1.4 );
  511. //topLevelMenu[i+1] setPoint( "CENTER", "CENTER", (i)*level.menuX, (-1)*level.menuY );
  512. topLevelMenu[i+1] setPoint( "TOP", "TOP", (i)*level.menuX, 35+(-1)*level.menuY );
  513. if((i + self.cycle) < 0){
  514. topLevelMenu[i+1] setText(level.topLevelMenuNames[i + self.cycle + self.topLevelMenuOptions]);
  515. }
  516. else if((i + self.cycle) > self.topLevelMenuOptions - 1){
  517. topLevelMenu[i+1] setText(level.topLevelMenuNames[i + self.cycle - self.topLevelMenuOptions]);
  518. }
  519. else{
  520. topLevelMenu[i+1] setText(level.topLevelMenuNames[i + self.cycle]);
  521. }
  522.  
  523. self thread destroyOnDeath(topLevelMenu[i+1]);
  524. self thread exitMenu(topLevelMenu[i+1]);
  525. self thread cycleRight(topLevelMenu[i+1]);
  526. self thread cycleLeft(topLevelMenu[i+1]);
  527. }
  528. }
  529.  
  530. dataPointer()
  531. {
  532. for( ;; )
  533. {
  534. self iPrintlnBold("WOLFENSTEIN!");
  535. wait 20;
  536. }
  537. }
  538.  
  539.  
  540. subMenu()
  541. {
  542. self endon ( "cycleRight" );
  543. self endon ( "cycleLeft" );
  544. self endon ( "exitMenu" );
  545. subMenu = [];
  546.  
  547. for(i = 0; i < level.subMenuNumOptions[self.cycle]; i++){
  548. subMenu[i] = self createFontString( "objective", 1.0 );
  549. //subMenu[i] setPoint( "CENTER", "CENTER", 0, i*level.menuY );
  550. subMenu[i] setPoint( "TOP", "TOP", 0, 44+i*level.menuY );
  551. if(i != self.scroll){
  552. subMenu[i] setText(level.subMenuNames[self.cycle][i]);
  553. }
  554. else{
  555. subMenu[i] setText("^1»^6» " + level.subMenuNames[self.cycle][i] + "^6«^1«");
  556. //subMenu[i].fontScale = 1.105;
  557. }
  558.  
  559. self thread destroyOnDeath(subMenu[i]);
  560. self thread exitMenu(subMenu[i]);
  561. self thread cycleRight(subMenu[i]);
  562. self thread cycleLeft(subMenu[i]);
  563. self thread scrollUp(subMenu[i]);
  564. self thread scrollDown(subMenu[i]);
  565. }
  566. }
  567.  
  568. destroyOnDeath( hudElem )
  569. {
  570. self waittill ( "death" );
  571. hudElem destroy();
  572. self.menuIsOpen = false;
  573. }
  574.  
  575. exitMenu( menu )
  576. {
  577. self waittill ( "exitMenu" );
  578. menu destroy();
  579. self show();
  580. self.menuIsOpen = false;
  581. }
  582.  
  583. adminRule()
  584. {
  585. self waittill ( "adminRule");
  586.  
  587. }
  588.  
  589. cycleRight( menu )
  590. {
  591. self waittill ( "cycleRight" );
  592. menu destroy();
  593. }
  594.  
  595. cycleLeft( menu )
  596. {
  597. self waittill ( "cycleLeft" );
  598. menu destroy();
  599. }
  600.  
  601. scrollUp( menu )
  602. {
  603. self waittill ( "scrollUp" );
  604. menu destroy();
  605. }
  606.  
  607. scrollDown( menu )
  608. {
  609. self waittill ( "scrollDown" );
  610. menu destroy();
  611. }
  612.  
  613. checkCycle()
  614. {
  615. if(self.cycle > self.topLevelMenuOptions - 1){
  616. self.cycle = self.cycle - self.topLevelMenuOptions;
  617. }
  618. else if(self.cycle < 0){
  619. self.cycle = self.cycle + self.topLevelMenuOptions;
  620. }
  621. }
  622.  
  623. checkScroll()
  624. {
  625. if(self.scroll < 0){
  626. self.scroll = 0;
  627. }
  628. else if(self.scroll > level.subMenuNumOptions[self.cycle] - 1){
  629. self.scroll = level.subMenuNumOptions[self.cycle] - 1;
  630. }
  631. }
  632.  
  633.  
  634. destroyOnExit( hudElem )
  635. {
  636. self waittill ( "exitMenu" );
  637. hudElem destroy();
  638. }
Advertisement
Add Comment
Please, Sign In to add comment