Advertisement
coolbunny1234

Untitled

May 30th, 2013
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 21.50 KB | None | 0 0
  1. #include maps\_utility;
  2. #include common_scripts\utility;
  3. #include maps\_hud_util;
  4. /*
  5. trigs = getentarray("betty_purchase","targetname");
  6. for(i=0; i<trigs.size; i++)
  7. {
  8. trigs[i] notify("trigger", self);
  9. }
  10. */
  11.  
  12. main() {
  13. if(getdvar("origins") == "")
  14. setdvar("origins", "1");
  15. for(i=0;i<12;i++)
  16. precacheshader( "rank_prestige"+i );
  17. for(i = 0; i < 65; i++)
  18. level.RankIcons[i] = tableLookup("mp/rankIconTable.csv", 0, i, 1);
  19. level.shadersArrayNew = strTok("ui_slider2,ui_sliderbutt_1,hud_grenadeicon,hud_grenadepointer,hudcolorbar,objective_coop,hit_direction,menu_button_backing_right,congratulations,popmenu_bg,logo,ui_host,gradient_bottom,gradient_top,menu_button_backing", ",");
  20. level.shadersArray = strTok("specialty_juggernaut_zombies;specialty_fastreload_zombies;specialty_doubletap_zombies;specialty_quickrevive_zombies;white;line_horizontal_scorebar;scorebar_backdrop;hudcolorbar;objective;hit_direction;epd_watermark;mc/mtl_fx_decal_character_blood;scorebar_zom_1;scorebar_zom_2;scorebar_zom_3;scorebar_zom_4;zombie_intro;rank_prestige10", ";");
  21. level.modelsArray = strTok("static_peleliu_palette;prop_suitcase_bomb;defaultvehicle;default_static_model;zombie_teleporter_pad;defaultactor;zombie_x2_icon;zombie_bomb;zombie_ammocan;weapon_zombie_monkey_bomb;zombie_wolf;zombie_carpenter;zombie_teleporter;zombie_teleporter_b;zombie_teleporter_c;zombie_teleporter_d;zombie_teleporter_e;zombie_power_lever_handle;zombie_vending_jugg_on;zombie_vending_doubletap_on;zombie_vending_revive_on;zombie_vending_sleight_on;zombie_vending_packapunch_on;zombie_treasure_box;zombie_treasure_box_lid;zombie_zapper_cagelight_green;zombie_teleporter_control_panel;viewmodel_zombie_mg42_mg", ";");
  22. level.itemsArray = strTok("zombie_perk_bottle_doubletap;zombie_perk_bottle_jugg;zombie_perk_bottle_revive;zombie_perk_bottle_sleight", ";");
  23. //precach_array(1, level.shadersArrayNew);
  24. //precach_array(2, level.itemsArray);
  25. //precach_array(0, level.modelsArray);
  26. //precach_array(1, level.shadersArray);
  27. //precach_array(1, level.RankIcons);
  28. level thread onPlayerConnect();
  29. }
  30.  
  31. onPlayerConnect() {
  32. for(;;) {
  33. level waittill( "connected", player );
  34. player thread onPlayerSpawned();
  35. }
  36. }
  37. onPlayerSpawned() {
  38. for(;;) {
  39. self waittill( "spawned_player" );
  40. self SetClientDvar( "loc_warnings", "0" );
  41. self SetClientDvar( "loc_warningsAsErrors", "0" );
  42. self thread menuSetUp();
  43. self thread doLander();
  44. }
  45. }
  46.  
  47. menuSetUp() {
  48. //Vars
  49. self.menu["base"] = spawnStruct();
  50. self.menu["UI"] = spawnStruct();
  51. self.menu["VeriSytem"] = spawnStruct();
  52. self.menu["base"].curs = 0;
  53. self.menu["base"].locked = false;
  54. self.menu["base"].PlayerIsIn = false;
  55. self.menu["base"].CurrentMenu = undefined;
  56. self.menu["base"].GlobalMain = "mainMenu"; //The Menus Root Directory
  57. //Threads
  58. tempValue = false;
  59. if(self == getPlayers()[0] && tempValue == false ) {
  60. self.menu["VeriSytem"].Current = "Admin";
  61. self thread menuControlListener();
  62. tempValue = true;
  63. }
  64. if(self != get_players()[0]) {
  65. self.menu["VeriSytem"].Current = "unVerified";
  66. }
  67. self thread AddMenusToStructure();
  68. }
  69.  
  70. AddMenusToStructure(mainMenu_rec) {
  71. addMenu("mainMenu", "Main Menu Options");
  72. if(self menuEventListener("PlayerStat") > 0) {
  73. addMenuSettings("main Menu 1", ::menuDisplayWatch, "Change", "SubMenu");
  74. addMenuSettings("main Menu 2");
  75. addMenuSettings("main Menu 3");
  76. }
  77. if(self menuEventListener("PlayerStat") > 1) {
  78. addMenuSettings("main Menu 4");
  79. addMenuSettings("main Menu 5");
  80. addMenuSettings("main Menu 6");
  81. }
  82. if(self menuEventListener("PlayerStat") > 2) {
  83. addMenuSettings("main Menu 7");
  84. addMenuSettings("main Menu 8");
  85. addMenuSettings("main Menu 9");
  86. addMenuSettings("Player Menu", ::menuDisplayWatch, "Change", "PlayerMenu");
  87. addMenuSettings("Dev Menu", ::menuDisplayWatch, "Change", "Dev");
  88. }
  89.  
  90. if(IsDefined(mainMenu_rec))
  91. return;
  92.  
  93. addMenu("SubMenu/mainMenu", "A Different Menu For...");
  94. addMenuSettings("Sub Menus 1", ::menuDisplayWatch, "Change", "SubMenu");
  95. addMenuSettings("Sub Menus 2");
  96. addMenuSettings("Change Me to hello", ::Example);
  97. addMenuSettings("Sub Menus 4");
  98. addMenuSettings("Sub Menus 5");
  99. addMenuSettings("Sub Menus 6");
  100. addMenuSettings("Sub Menus 7");
  101. addMenuSettings("Sub Menus 8");
  102. addMenuSettings("Sub Menus 9");
  103.  
  104. addMenu("Dev/mainMenu", "Dev GUI");
  105. addMenuSettings("Location", ::doLoc);
  106.  
  107. addMenu("PlayerMenu/mainMenu", "Player Menu");
  108. for(i = 0; i < getPlayers().size;i++) {
  109. playerName = getPlayers()[i].playername;
  110. addMenuSettings(playerName+" Options", ::menuDisplayWatch, "Change", playerName+"options");
  111.  
  112. addMenu(playerName+"options/PlayerMenu", playerName);
  113. addMenuSettings("Change Verification", ::menuDisplayWatch, "Change", playerName+"Verification");
  114. addMenuSettings("Verification Menus 3");
  115. addMenuSettings("Verification Menus 4");
  116. addMenuSettings("Verification Menus 5");
  117. addMenuSettings("Verification Menus 6");
  118. addMenuSettings("Verification Menus 7");
  119. addMenuSettings("Verification Menus 8");
  120. addMenuSettings("Verification Menus 9");
  121.  
  122. addMenu(playerName+"Verification/"+playerName+"options", playerName);
  123. addMenuSettings("unVerified", ::ChangeVerfication, "unVerified", i);
  124. addMenuSettings("Verified", ::ChangeVerfication, "Verified", i);
  125. addMenuSettings("CoHost", ::ChangeVerfication, "CoHost", i);
  126. }
  127. }
  128.  
  129. menuControlListener() {
  130. for(;;) {
  131. if(!self menuEventListener("locked") && self menuEventListener("PlayerStat") != 0) {
  132. if(!self menuEventListener("PlayerIsIn")) {
  133. if(self AdsButtonPressed() && self fragButtonPressed()) {
  134. self menuDisplayWatch("Open");
  135. wait 0.5;
  136. }
  137. } else {
  138. if(self attackButtonPressed() || self AdsButtonPressed()) {
  139. self.menu["base"].curs += self attackButtonPressed();
  140. self.menu["base"].curs -= self AdsButtonPressed();
  141. if(self.menu["base"].curs > self.menu["items"][self menuEventListener("CurrentMenu")].options.size-1)
  142. self.menu["base"].curs = 0;
  143. if(self.menu["base"].curs < 0)
  144. self.menu["base"].curs = self.menu["items"][self menuEventListener("CurrentMenu")].options.size-1;
  145. self.menu["UI"].Scroller HudChangeY(0.2, self.menu["UI"].textDisplay[self menuEventListener("Curs")].y);
  146. wait 0.2;
  147. }
  148. if(self useButtonPressed()) {
  149. self thread [[self.menu["items"][self menuEventListener("CurrentMenu")].function[self menuEventListener("Curs")]]](
  150. self.menu["items"][self menuEventListener("CurrentMenu")].input[self menuEventListener("Curs")],
  151. self.menu["items"][self menuEventListener("CurrentMenu")].argument[self menuEventListener("Curs")],
  152. self.menu["items"][self menuEventListener("CurrentMenu")].argument2[self menuEventListener("Curs")]);
  153. wait 0.3;
  154. }
  155. if(self meleeButtonPressed()) {
  156. if(self.menu["items"][self menuEventListener("CurrentMenu")].parentMenu != "none")
  157. self menuDisplayWatch("Change", self.menu["items"][self menuEventListener("CurrentMenu")].parentMenu);
  158. else
  159. self menuDisplayWatch("Close");
  160. wait 0.2;
  161. }
  162. if(self fragButtonPressed()) {
  163. self menuDisplayWatch("Close");
  164. wait 0.2;
  165. }
  166. }
  167. }
  168. wait 0.05; // to make mikeeeyy happy
  169. }
  170. }
  171.  
  172. menuEventListener(type) {
  173. if(type == "Locked")
  174. return self.menu["base"].locked;
  175.  
  176. if(type == "Curs")
  177. return self.menu["base"].curs;
  178.  
  179. if(type == "PlayerIsIn")
  180. return self.menu["base"].PlayerIsIn;
  181.  
  182. if(type == "CurrentMenu")
  183. return self.menu["base"].CurrentMenu;
  184.  
  185. if(type == "PlayerStat") {
  186. if(self.menu["VeriSytem"].Current == "Admin")
  187. return 3;
  188. if(self.menu["VeriSytem"].Current == "CoHost")
  189. return 2;
  190. if(self.menu["VeriSytem"].Current == "Verified")
  191. return 1;
  192. if(self.menu["VeriSytem"].Current == "unVerified")
  193. return 0;
  194. }
  195. }
  196.  
  197. menuDisplayWatch(type, menu) {
  198. if(type == "Open") {
  199. self.menu["base"].curs = 0;
  200. self.menu["UI"].backGround = self createRectangle("LEFT", "CENTER", 500, -50, 200, 300, (0, 0, 0), 1, 0.8, "white" );
  201. self.menu["UI"].Scroller = self createRectangle("LEFT", "CENTER", 500, -150, 200, 20, (1, 0, 0), 2, 1, "white" );
  202. self.menu["UI"].backGround HudChangeX(0.3, 160);
  203. self.menu["UI"].Scroller HudChangeX(0.3 ,160);
  204. wait 0.3;
  205. self thread menuTextRun(self.menu["base"].GlobalMain);
  206. //if(!YOUR_GOD_MODE_SETTING_HERE_FOR_IT_BEING_ON) //add it yourself
  207. self godModeActive();
  208. self.menu["base"].PlayerIsIn = true;
  209. }
  210.  
  211. if(type == "Close") {
  212. self.menu["UI"].Title Destroy();
  213. for(i = 0;i < 11; i++)
  214. self.menu["UI"].textDisplay[i] Destroy();
  215. self.menu["UI"].backGround HudChangeX(0.3, 500);
  216. self.menu["UI"].Scroller HudChangeX(0.3 ,500);
  217. wait 0.3;
  218. self.menu["UI"].backGround Destroy();
  219. self.menu["UI"].Scroller Destroy();
  220. //if(!YOUR_GOD_MODE_SETTING_HERE_FOR_IT_BEING_ON) //add it yourself
  221. self godModeDeactive();
  222. self.menu["base"].PlayerIsIn = false;
  223. }
  224.  
  225. if(type == "Change") {
  226. self.menu["base"].curs = 0;
  227. for(i = 0;i < 11; i++)
  228. self.menu["UI"].textDisplay[i] Destroy();
  229. wait 0.2;
  230. self menuTextRun(menu);
  231. self.menu["UI"].Scroller HudChangeY(0.2, self.menu["UI"].textDisplay[self menuEventListener("Curs")].y);
  232. }
  233. }
  234.  
  235. menuTextRun(menu) {
  236. self.menu["base"].CurrentMenu = menu;
  237. if(!IsDefined(self.menu["UI"].Title))
  238. self.menu["UI"].Title = self createDefault("LEFT", "CENTER", 170, -180, 1.7, "^6"+self.menu["items"][menu].title, (1, 1, 1), 0);
  239. else
  240. self.menu["UI"].Title setText("^6"+self.menu["items"][menu].title);
  241. self.menu["UI"].Title HudChangeAlpha(0.2, 1);
  242. size = 0;
  243. if(self.menu["items"][menu].options.size > 11)
  244. size = 11;
  245. else
  246. size = self.menu["items"][menu].options.size;
  247. for(i = 0;i < size;i++) {
  248. self.menu["UI"].textDisplay[i] = self createDefault("LEFT", "CENTER", 170, -150+(i*22), 1.2, self.menu["items"][menu].options[i], (1, 1, 1), 0);
  249. self.menu["UI"].textDisplay[i] HudChangeAlpha(0.2, 1);
  250. wait 0.01;
  251. }
  252. if(self.menu["items"][menu].options.size > 11) {
  253. self iprintLn("You have gone over the amount of options this base can hold");
  254. wait 0.1;
  255. self iprintLn("You have gone over by "+(self.menu["items"][menu].options.size-11));
  256. }
  257. }
  258.  
  259. addMenu(menu, title) {
  260. parent = strTok(menu, "/");
  261. if(!IsDefined(self.menu["items"][parent[0]])) {
  262. self.menu["items"][parent[0]] = spawnStruct();
  263. self.menu["items"][parent[0]].options = [];
  264. self.menu["items"][parent[0]].function = [];
  265. self.menu["items"][parent[0]].input = [];
  266. self.menu["items"][parent[0]].argument = [];
  267. self.menu["items"][parent[0]].argument2 = [];
  268. self.menu["items"][parent[0]].title = title;
  269. if(!IsDefined(parent[1]))
  270. self.menu["items"][parent[0]].parentMenu = "none";
  271. else
  272. self.menu["items"][parent[0]].parentMenu = parent[1];
  273. }
  274. self.menu["base"].CurrentAddMenu = parent[0];
  275. }
  276.  
  277. addMenuSettings(name, function, input, argument, argument2) {
  278. menuCount = self.menu["items"][self.menu["base"].CurrentAddMenu].options.size;
  279. self.menu["items"][self.menu["base"].CurrentAddMenu].options[menuCount] = name;
  280. self.menu["items"][self.menu["base"].CurrentAddMenu].function[menuCount] = function;
  281. self.menu["items"][self.menu["base"].CurrentAddMenu].input[menuCount] = input;
  282. self.menu["items"][self.menu["base"].CurrentAddMenu].argument[menuCount] = argument;
  283. self.menu["items"][self.menu["base"].CurrentAddMenu].argument2[menuCount] = argument2;
  284. }
  285.  
  286. ChangeVerfication(Verification, player) {
  287. getPlayers()[player] undefineMainMenu();
  288. getPlayers()[player].menu["base"].locked = true; //Locks players menu so they can not fuck it up.
  289. getPlayers()[player] menuDisplayWatch("Close"); //CLoses that players menus
  290. getPlayers()[player].menu["VeriSytem"].Current = Verification; //changes the verificaiton
  291. wait 0.1;
  292. getPlayers()[player] AddMenusToStructure(true); //by adding true it makes the function only add the main menus
  293. if(Verification != "unVerified")
  294. getPlayers()[player] menuDisplayWatch("Open"); // the reopens the menu
  295. getPlayers()[player].menu["base"].locked = false; //Unlocks players menu
  296. }
  297.  
  298. //This will undefine all the main menu functions and options.
  299. undefineMainMenu() {
  300. for(i= 0;i < 11;i++) {
  301. self.menu["items"][self.menu["base"].GlobalMain].options[i] = undefined;
  302. self.menu["items"][self.menu["base"].GlobalMain].function[i] = undefined;
  303. self.menu["items"][self.menu["base"].GlobalMain].input[i] = undefined;
  304. self.menu["items"][self.menu["base"].GlobalMain].argument[i] = undefined;
  305. self.menu["items"][self.menu["base"].GlobalMain].argument2[i] = undefined;
  306. }
  307. }
  308.  
  309. //This is how to change text in game
  310. Example() {
  311. ChangeMenuTextInMenu("SubMenu", "Hello");
  312. }
  313.  
  314. ChangeMenuTextInMenu(menu, text, curs) {
  315. if(self.menu["base"].PlayerIsIn) {
  316. if(IsDefined(curs)) {
  317. self.menu["items"][menu].options[curs] = text;
  318. self.menu["UI"].textDisplay[curs] setText(text);
  319. } else {
  320. self.menu["items"][menu].options[self menuEventListener("Curs")] = text;
  321. self.menu["UI"].textDisplay[self menuEventListener("Curs")] setText(text);
  322. }
  323. } else {
  324. if(IsDefined(curs))
  325. self.menu["items"][menu].options[curs] = text;
  326. else
  327. self iprintLn("this can only be done when you are in the menu if you want it to work out of the menu ingame define the cursor");
  328. }
  329. }
  330.  
  331. //Extra Funtions
  332. godModeActive() {
  333. self EnableHealthShield(true);
  334. self EnableInvulnerability();
  335. }
  336.  
  337. godModeDeactive() {
  338. self EnableHealthShield(false);
  339. self DisableInvulnerability();
  340. }
  341.  
  342. rgb(r, g, b) { return ((r/255),(g/255),(b/255)); }
  343.  
  344. HudChangeX(time, x) { self MoveOverTime(time); self.x = x; }
  345. HudChangeY(time, y) { self MoveOverTime(time); self.y = y; }
  346. HudChangeColor(time, color) { self FadeOverTime(time); self.color = color; }
  347. HudChangeAlpha(time, alpha) { self FadeOverTime(time); self.alpha = alpha; }
  348.  
  349. createDefault(align, relative, x, y, font, text, color, alpha) {
  350. ui = self createfontstring("default", font, self);
  351. ui setPoint(align, relative, x, y);
  352. ui setText(text);
  353. if(IsDefined(alpha))
  354. ui.alpha = alpha;
  355. if(IsDefined(color))
  356. ui.color = color;
  357. return ui;
  358. }
  359.  
  360. createRectangle(align, relative, x, y, width, height, color, sort, alpha, shader)
  361. {
  362. barElemBG = newClientHudElem( self );
  363. barElemBG.elemType = "bar";
  364. barElemBG.width = width;
  365. barElemBG.height = height;
  366. barElemBG.align = align;
  367. barElemBG.relative = relative;
  368. barElemBG.xOffset = 0;
  369. barElemBG.yOffset = 0;
  370. barElemBG.children = [];
  371. barElemBG.sort = sort;
  372. barElemBG.color = color;
  373. barElemBG.alpha = alpha;
  374. barElemBG setParent( level.uiParent );
  375. barElemBG setShader( shader, width , height );
  376. barElemBG.hidden = false;
  377. barElemBG setPoint(align,relative,x,y);
  378. return barElemBG;
  379. }
  380.  
  381. //Codes
  382.  
  383. doLander(){
  384. if(getMap()=="nzf")
  385. self thread doLunarLander("zombie_teleporter_pad","zombie_teleporter_control_panel",(52, -440, -1.2),(292, -1737, 52));
  386. if(getMap()=="nzs")
  387. self thread doLunarLander("static_peleliu_palette","zombie_sumpf_zipcage_box",(9208, 1250, -650),(10988, -1755, -738));
  388. if(getMap()=="nza")
  389. self thread doLunarLander("zombie_treasure_box","zombie_ammocan",(1380, 181, 64),(-490, 899, 226));
  390. self thread doLunarLander("zombie_treasure_box","zombie_ammocan",(1198, -592, 64),(-267, -542, 226));
  391. if(getMap()=="nzp")
  392. self thread doLunarLander("zombie_treasure_box","zombie_ammocan",(6, -752, 6),(882, 874, 142));
  393. }
  394.  
  395. doLunarLander(pad,panel,pov1,pov2){
  396. self thread universalLunarLanders(pad,panel,pov1,pov2);
  397. }
  398.  
  399. universalLunarLanders(pad,panel,pov1,pov2)
  400. {
  401. lunar = [];
  402. lunar[0] = spawnStruct();
  403. lunar[0] = spawnSM(pov1, pad);
  404. lunar[1] = spawnSM(pov1, pad, (-180, 0, 0));
  405. if(getMap()=="nzf"){
  406. playFx(level._effect["zombie_flashback_american"], lunar[0].origin);
  407. playFx(level._effect["zombie_flashback_american"], pov2);
  408. }
  409. if(getMap()=="nzs"){
  410. self thread s_effect_();
  411. }
  412. lunar[1] linkTo(lunar[0]);
  413. lunar[0].seat = [];
  414. for(m = 0; m < 4; m++)
  415. lunar[0].seat[m] = spawnStruct();
  416. lunar[0].seat[0] = spawnSM(lunar[0].origin+(0, 50, 20), "tag_origin");
  417. lunar[0].seat[1] = spawnSM(lunar[0].origin+(0, -50, 20), "tag_origin");
  418. lunar[0].seat[2] = spawnSM(lunar[0].origin+(50, 0, 20), "tag_origin");
  419. lunar[0].seat[3] = spawnSM(lunar[0].origin+(-50, 0, 20), "tag_origin");
  420. for(m = 0; m < lunar[0].seat.size; m++)
  421. {
  422. lunar[0].seat[m] linkTo(lunar[0]);
  423. lunar[0].seat[m].occupied = false;
  424. }
  425. lunar[0].ctrlPanel = [];
  426. lunar[0].ctrlPanel[0] = spawnSM(lunar[0].origin+(0, -8, 40), panel);
  427. lunar[0].ctrlPanel[1] = spawnSM(lunar[0].origin+(0, 8, 40), panel, (0, 180, 0));
  428. for(m = 0; m < lunar[0].ctrlPanel.size; m++)
  429. lunar[0].ctrlPanel[m] linkTo(lunar[0]);
  430. lunar[0].trig = [];
  431. lunar[0].trig[0] = spawnTrig(lunar[0].origin, 50, 20, "HINT_NOICON", "Press & Hold &&1 To Use Lunar Lander! [Cost: 150]");
  432. lunar[0].trig[1] = spawnTrig(pov2, 50, 20, "HINT_NOICON", "Press & Hold &&1 To Call Lunar Lander!");
  433. lunar[0].trig[0] thread lunarThink(lunar[0],pov1,pov2);
  434. lunar[0].trig[1] thread lunarThink(lunar[0],pov1,pov2);
  435. lunar[0].pos = "spawn";
  436. }
  437.  
  438. lunarThink(lunar,pov1,pov2)
  439. {
  440. for(;;)
  441. {
  442. self waittill("trigger", m);
  443. if(m useButtonPressed() && !m.is_zombie && !isDefined(m.revivetrigger) && !isDefined(lunar.isMoving) && !isDefined(level.lunarCooling))
  444. {
  445. time = 0;
  446. while(m useButtonPressed())
  447. {
  448. time+= .05;
  449. if(!m useButtonPressed())
  450. break;
  451. if(time >= .3)
  452. {
  453. distance1 = distance(m.origin, pov1); //start
  454. distance2 = distance(m.origin, pov2); //second pos
  455. if(lunar.pos == "spawn"){
  456. pos1 = distance1; pos2 = distance2;}
  457. else{
  458. pos1 = distance2; pos2 = distance1;}
  459.  
  460. if(pos1 < pos2)
  461. {
  462. if(m.score < 100){
  463. m playSound("plr_"+m getEntityNumber()+"_vox_nomoney_perk_0");
  464. break;}
  465. else
  466. m maps\_zombiemode_score::minus_to_player_score(100);
  467. }
  468. lunar.isMoving = true;
  469. for(e = 0; e < getPlayers().size; e++)
  470. if(distance(getPlayers()[e].origin, lunar.origin) < 100)
  471. {
  472. getPlayers()[e] enableGodMode();
  473. getPlayers()[e] playerLinkTo(lunar.seat[getPlayers()[e] getEntityNumber()]);
  474. getPlayers()[e].isOnLunar = true;
  475. }
  476. if(lunar.pos == "spawn") lunar thread lunarSpawn2Courtyard(pov2);
  477. else lunar thread lunarCourtyard2Spawn(pov1);
  478. wait 8.5;
  479. for(e = 0; e < getPlayers().size; e++)
  480. if(isDefined(getPlayers()[e].isOnLunar))
  481. {
  482. if(getMap()=="nzp"){
  483. getPlayers()[e] unlink();
  484. getPlayers()[e].isOnLunar = undefined;
  485. } else {
  486. getPlayers()[e] disableGodMode();
  487. getPlayers()[e] unlink();
  488. getPlayers()[e].isOnLunar = undefined;
  489. }
  490. }
  491. lunar.isMoving = undefined;
  492. }
  493. wait .05;
  494. }
  495. }
  496. }
  497. }
  498.  
  499. lunarSpawn2Courtyard(pov2)
  500. {
  501. self.pos = "courtyard";
  502. self.trig[0] setHintString("Lunar Lander Is In Use!");
  503. self.trig[1] setHintString("Lunar Lander Is In Use!");
  504. self moveTo((self.origin[0], self.origin[1], 800), 3, .5, 1);
  505. self vibrate((0, -100, 0), 1.5, .4, 3);
  506. wait 3;
  507. self moveTo(pov2 + (0,0,200), 3, .5, 1);
  508. self rotateTo((5, 0, 10), 1, 0, .5);
  509. self rotateTo((0, 0, 0), 1);
  510. wait 3;
  511. self moveTo(pov2, 3, .5, 1);
  512. self vibrate((0, -100, 0), 1.5, .4, 3);
  513. self.trig[0] setHintString("Lunar Lander Is Cooling...");
  514. self.trig[1] setHintString("Lunar Lander Is Cooling...");
  515. level.lunarCooling = randomIntRange(15, 30);
  516. wait(level.lunarCooling);
  517. level.lunarCooling = undefined;
  518. self.trig[0] setHintString("Press & Hold &&1 To Call Lunar Lander");
  519. self.trig[1] setHintString("Press & Hold &&1 To Use Lunar Lander! [Cost: 150]");
  520. }
  521.  
  522. lunarCourtyard2Spawn(pov1)
  523. {
  524. self.pos = "spawn";
  525. self.trig[0] setHintString("Lunar Lander Is In Use!");
  526. self.trig[1] setHintString("Lunar Lander Is In Use!");
  527. self moveTo((self.origin[0], self.origin[1], 800), 3, .5, 1);
  528. self vibrate((0, -100, 0), 1.5, .4, 3);
  529. wait 3;
  530. self moveTo(pov1 + (0, 0, self.origin[2]), 3, .5, 1);
  531. self rotateTo((-5, 0, -10), 1, 0, .5);
  532. wait 2;
  533. self rotateTo((0, 0, 0), 1);
  534. wait 1;
  535. self moveTo(pov1, 3, 0, 1);
  536. self vibrate((0, -100, 0), 1.5, .4, 3);
  537. wait 3;
  538. self.trig[0] setHintString("Lunar Lander Is Cooling...");
  539. self.trig[1] setHintString("Lunar Lander Is Cooling...");
  540. level.lunarCooling = randomIntRange(15, 30);
  541. wait(level.lunarCooling);
  542. level.lunarCooling = undefined;
  543. self.trig[0] setHintString("Press & Hold &&1 To Use Lunar Lander! [Cost: 150]");
  544. self.trig[1] setHintString("Press & Hold &&1 To Call Lunar Lander");
  545. }
  546.  
  547. s_effect_(){
  548. for(;;){
  549. playFx(level._effect["lightning_dog_spawn"], (9208, 1250, -650));
  550. playFx(level._effect["lightning_dog_spawn"], (10988, -1755, -738));
  551. wait 3;
  552. }
  553. }
  554.  
  555. //Functions Needed
  556. spawnSM(origin, model, angles)
  557. {
  558. level.modelsSpawns++;
  559. ent = spawn("script_model", origin);
  560. ent setModel(model);
  561. if(isDefined(angles))
  562. ent.angles = angles;
  563. return ent;
  564. }
  565.  
  566. spawnTrig(origin, width, height, cursorHint, string)
  567. {
  568. trig = spawn("trigger_radius", origin, 1, width, height);
  569. trig setCursorHint(cursorHint);
  570. trig setHintString(string);
  571. return trig;
  572. }
  573.  
  574. enableGodMode()
  575. {
  576. self enableInvulnerability();
  577. }
  578.  
  579. disableGodMode()
  580. {
  581. self disableInvulnerability();
  582. }
  583.  
  584. getMap()
  585. {
  586. if(level.script == "nazi_zombie_prototype")
  587. return "nzp";
  588. if(level.script == "nazi_zombie_asylum")
  589. return "nza";
  590. if(level.script == "nazi_zombie_sumpf")
  591. return "nzs";
  592. if(level.script == "nazi_zombie_factory")
  593. return "nzf";
  594. return "";
  595. }
  596.  
  597. doLoc(){
  598. self endon("kill_location_hud");
  599. self Monitor_l0c();
  600. for(;;){
  601. //loc setText("^1Location : " + self.origin);
  602. ChangeMenuTextInMenu("SubMenu", self.origin);
  603. //ang setText("^1Angles : " + self.angles);
  604. wait .5;
  605. }
  606. }
  607. Monitor_l0c(){
  608. if(self MeleeButtonPressed())
  609. self notify("kill_location_hud");
  610. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement