Guest User

Untitled

a guest
Mar 30th, 2012
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 1.
  2. /*
  3.  
  4. 2.
  5. Der Frost / Nazi Zombie Sniperbolt Tutorial Version 2.0
  6.  
  7. 3.
  8. Scripter: Sparks
  9.  
  10. 4.
  11. Tutorial: Sniperbolt
  12.  
  13. 5.
  14.  
  15.  
  16. 6.
  17. Version 1.0 (9/24/2009 7:51:18 PM)
  18.  
  19. 7.
  20. -- Initial Release Of Source Files
  21.  
  22. 8.
  23. */
  24.  
  25. 9.
  26.  
  27.  
  28. 10.
  29. // Tutorial From Sniperbolt!
  30.  
  31. 11.
  32.  
  33.  
  34. 12.
  35. // Utilities
  36.  
  37. 13.
  38. #include common_scripts\utility;
  39.  
  40. 14.
  41. #include maps\_utility;
  42.  
  43. 15.
  44. #include maps\_zombiemode_utility;
  45.  
  46. 16.
  47. #include maps\_zombiemode_zone_manager;
  48.  
  49. 17.
  50. #include maps\_music;
  51.  
  52. 18.
  53.  
  54.  
  55. 19.
  56. // DLC3 Utilities
  57.  
  58. 20.
  59. #include maps\dlc3_code;
  60.  
  61. 21.
  62. #include maps\dlc3_teleporter;
  63.  
  64. 22.
  65.  
  66.  
  67. 23.
  68. main()
  69.  
  70. 24.
  71. {
  72.  
  73. 25.
  74. level.DLC3 = spawnStruct(); // Leave This Line Or Else It Breaks Everything
  75.  
  76. 26.
  77.  
  78.  
  79. 27.
  80. // Must Change These To Your Maps
  81.  
  82. 28.
  83. level.DLC3.createArt = maps\createart\nazi_zombie_the_escape_art::main;
  84.  
  85. 29.
  86. level.DLC3.createFX = maps\createfx\nazi_zombie_the_escape_fx::main;
  87.  
  88. 30.
  89. // level.DLC3.myFX = ::preCacheMyFX;
  90.  
  91. 31.
  92.  
  93.  
  94. 32.
  95. /*--------------------
  96.  
  97. 33.
  98. FX
  99.  
  100. 34.
  101. ----------------------*/
  102.  
  103. 35.
  104. DLC3_FX();
  105.  
  106. 36.
  107.  
  108.  
  109. 37.
  110. /*--------------------
  111.  
  112. 38.
  113. LEVEL VARIABLES
  114.  
  115. 39.
  116. ----------------------*/
  117.  
  118. 40.
  119.  
  120.  
  121. 41.
  122. // Variable Containing Helpful Text For Modders -- Don't Remove
  123.  
  124. 42.
  125. level.modderHelpText = [];
  126.  
  127. 43.
  128.  
  129.  
  130. 44.
  131. //
  132.  
  133. 45.
  134. // Change Or Tweak All Of These LEVEL.DLC3 Variables Below For Your Level If You Wish
  135.  
  136. 46.
  137. //
  138.  
  139. 47.
  140.  
  141.  
  142. 48.
  143. // Edit The Value In Mod.STR For Your Level Introscreen Place
  144.  
  145. 49.
  146. level.DLC3.introString = &"nazi zombie tes";
  147.  
  148. 50.
  149.  
  150.  
  151. 51.
  152. // Weapons. Pointer function automatically loads weapons used in Der Riese.
  153.  
  154. 52.
  155. level.DLC3.weapons = maps\dlc3_code::include_weapons;
  156.  
  157. 53.
  158.  
  159.  
  160. 54.
  161. // Power Ups. Pointer function automatically loads power ups used in Der Riese.
  162.  
  163. 55.
  164. level.DLC3.powerUps = maps\dlc3_code::include_powerups;
  165.  
  166. 56.
  167.  
  168.  
  169. 57.
  170. // Adjusts how much melee damage a player with the perk will do, needs only be set once. Stock is 1000.
  171.  
  172. 58.
  173. level.DLC3.perk_altMeleeDamage = 1000;
  174.  
  175. 59.
  176.  
  177.  
  178. 60.
  179. // Adjusts barrier search override. Stock is 400.
  180.  
  181. 61.
  182. level.DLC3.barrierSearchOverride = 400;
  183.  
  184. 62.
  185.  
  186.  
  187. 63.
  188. // Adjusts power up drop max per round. Stock is 3.
  189.  
  190. 64.
  191. level.DLC3.powerUpDropMax = 3;
  192.  
  193. 65.
  194.  
  195.  
  196. 66.
  197. // _loadout Variables
  198.  
  199. 67.
  200. level.DLC3.useCoopHeroes = true;
  201.  
  202. 68.
  203.  
  204.  
  205. 69.
  206. // Bridge Feature
  207.  
  208. 70.
  209. level.DLC3.useBridge = false;
  210.  
  211. 71.
  212.  
  213.  
  214. 72.
  215. // Hell Hounds
  216.  
  217. 73.
  218. level.DLC3.useHellHounds = true;
  219.  
  220. 74.
  221.  
  222.  
  223. 75.
  224. // Mixed Rounds
  225.  
  226. 76.
  227. level.DLC3.useMixedRounds = true;
  228.  
  229. 77.
  230.  
  231.  
  232. 78.
  233. // Magic Boxes -- The Script_Noteworthy Value Names On Purchase Trigger In Radiant
  234.  
  235. 79.
  236. boxArray = [];
  237.  
  238. 80.
  239. boxArray[ boxArray.size ] = "start_chest";
  240.  
  241. 81.
  242. boxArray[ boxArray.size ] = "chest1";
  243.  
  244. 82.
  245. boxArray[ boxArray.size ] = "chest2";
  246.  
  247. 83.
  248. boxArray[ boxArray.size ] = "chest3";
  249.  
  250. 84.
  251. boxArray[ boxArray.size ] = "chest4";
  252.  
  253. 85.
  254. boxArray[ boxArray.size ] = "chest5";
  255.  
  256. 86.
  257. level.DLC3.PandoraBoxes = boxArray;
  258.  
  259. 87.
  260.  
  261.  
  262. 88.
  263. // Initial Zone(s) -- Zone(s) You Want Activated At Map Start
  264.  
  265. 89.
  266. zones = [];
  267.  
  268. 90.
  269. zones[ zones.size ] = "start_zone";
  270.  
  271. 91.
  272. level.DLC3.initialZones = zones;
  273.  
  274. 92.
  275.  
  276.  
  277. 93.
  278. // Electricity Switch -- If False Map Will Start With Power On
  279.  
  280. 94.
  281. level.DLC3.useElectricSwitch = true;
  282.  
  283. 95.
  284.  
  285.  
  286. 96.
  287. // Electric Traps
  288.  
  289. 97.
  290. level.DLC3.useElectricTraps = true;
  291.  
  292. 98.
  293.  
  294.  
  295. 99.
  296. // _zombiemode_weapons Variables
  297.  
  298. 100.
  299. level.DLC3.usePandoraBoxLight = true;
  300.  
  301. 101.
  302. level.DLC3.useChestPulls = true;
  303.  
  304. 102.
  305. level.DLC3.useChestMoves = true;
  306.  
  307. 103.
  308. level.DLC3.useWeaponSpawn = true;
  309.  
  310. 104.
  311. level.DLC3.useGiveWeapon = true;
  312.  
  313. 105.
  314.  
  315.  
  316. 106.
  317. // _zombiemode_spawner Varibles
  318.  
  319. 107.
  320. level.DLC3.riserZombiesGoToDoorsFirst = true;
  321.  
  322. 108.
  323. level.DLC3.riserZombiesInActiveZonesOnly = true;
  324.  
  325. 109.
  326. level.DLC3.assureNodes = true;
  327.  
  328. 110.
  329.  
  330.  
  331. 111.
  332. // _zombiemode_perks Variables
  333.  
  334. 112.
  335. level.DLC3.perksNeedPowerOn = true;
  336.  
  337. 113.
  338.  
  339.  
  340. 114.
  341. // _zombiemode_devgui Variables
  342.  
  343. 115.
  344. level.DLC3.powerSwitch = true;
  345.  
  346. 116.
  347.  
  348.  
  349. 117.
  350. /*--------------------
  351.  
  352. 118.
  353. FUNCTION CALLS - PRE _Load
  354.  
  355. 119.
  356. ----------------------*/
  357.  
  358. 120.
  359. level thread DLC3_threadCalls();
  360.  
  361. 121.
  362.  
  363.  
  364. 122.
  365. /*--------------------
  366.  
  367. 123.
  368. ZOMBIE MODE
  369.  
  370. 124.
  371. ----------------------*/
  372.  
  373. 125.
  374. [[level.DLC3.weapons]]();
  375.  
  376. 126.
  377. [[level.DLC3.powerUps]]();
  378.  
  379. 127.
  380. //////////////////////////////////////////////////
  381.  
  382. 128.
  383. //Music Player .gsc
  384.  
  385. 129.
  386. //////////////////////////////////////////////////
  387.  
  388. 130.
  389. preCacheModel ("zombie_zapper_cagelight_green");
  390.  
  391. 131.
  392. game["tom_music_player"] = "tom_music_player";
  393.  
  394. 132.
  395. PrecacheMenu( game["tom_music_player"] );
  396.  
  397. 133.
  398. level thread maps\tom_music_player_unl::main();
  399.  
  400. 134.
  401. preCacheFX();
  402.  
  403. 135.
  404. maps\_zombiemode::main();
  405.  
  406. 136.
  407. maps\planes::main();
  408.  
  409. 137.
  410.  
  411.  
  412. 138.
  413. /*--------------------
  414.  
  415. 139.
  416. FUNCTION CALLS - POST _Load
  417.  
  418. 140.
  419. ----------------------*/
  420.  
  421. 141.
  422. level.zone_manager_init_func = ::dlc3_zone_init;
  423.  
  424. 142.
  425. level thread DLC3_threadCalls2();
  426.  
  427. 143.
  428. thread para_egg();
  429.  
  430. 144.
  431. thread make_fx();
  432.  
  433. 145.
  434. thread maps\_kinostyle_teleporter::init();
  435.  
  436. 146.
  437. }
  438.  
  439. 147.
  440.  
  441.  
  442. 148.
  443. // Paragalor's easter egg function
  444.  
  445. 149.
  446. para_egg()
  447.  
  448. 150.
  449. {
  450.  
  451. 151.
  452. trig = getEnt("para_eggtrig", "targetname");
  453.  
  454. 152.
  455. trig UseTriggerRequireLookAt();
  456.  
  457. 153.
  458. trig SetCursorHint( "HINT_NOICON" );
  459.  
  460. 154.
  461. trig waittill ("trigger");
  462.  
  463. 155.
  464. trig delete();
  465.  
  466. 156.
  467. players = get_players();
  468.  
  469. 157.
  470. for( i = 0; i < players.size; i++ )
  471.  
  472. 158.
  473. players[i] playsound("para_egg");
  474.  
  475. 159.
  476. }
  477.  
  478. 160.
  479.  
  480.  
  481. 161.
  482. dlc3_zone_init()
  483.  
  484. 162.
  485. {
  486.  
  487. 163.
  488.  
  489.  
  490. 164.
  491. add_adjacent_zone( "start_zone", "zone1", "enter_zone1" );
  492.  
  493. add_adjacent_zone( "start_zone", "zone2", "enter_zone2" );
  494. 165.
  495. add_adjacent_zone( "zone1", "zone2", "enter_zone2" );
  496.  
  497. 166.
  498. add_adjacent_zone( "zone2", "zone3", "enter_zone3" );
  499.  
  500. 167.
  501. add_adjacent_zone( "zone3", "zone4", "enter_zone4" );
  502.  
  503. 168.
  504. /*
  505.  
  506. 169.
  507. =============
  508.  
  509. 170.
  510. ///ScriptDocBegin
  511.  
  512. 171.
  513. "Name: add_adjacent_zone( <zone_1>, <zone_2>, <flag>, <one_way> )"
  514.  
  515. 172.
  516. "Summary: Sets up adjacent zones."
  517.  
  518. 173.
  519. "MandatoryArg: <zone_1>: Name of first Info_Volume"
  520.  
  521. 174.
  522. "MandatoryArg: <zone_2>: Name of second Info_Volume"
  523.  
  524. 175.
  525. "MandatoryArg: <flag>: Flag to be set to initiate zones"
  526.  
  527. 176.
  528. "OptionalArg: <one_way>: Make <zone_1> adjacent to <zone_2>. Defaults to false."
  529.  
  530. 177.
  531. "Example: add_adjacent_zone( "receiver_zone", "outside_east_zone", "enter_outside_east" );"
  532.  
  533. 178.
  534. ///ScriptDocEnd
  535.  
  536. 179.
  537. =============
  538.  
  539. 180.
  540. */
  541.  
  542. 181.
  543.  
  544.  
  545. 182.
  546. // Outside East Door
  547.  
  548. 183.
  549. //add_adjacent_zone( "receiver_zone", "outside_east_zone", "enter_outside_east" );
  550.  
  551. 184.
  552. }
  553.  
  554. 185.
  555.  
  556.  
  557. 186.
  558. make_fx() {
  559.  
  560. 187.
  561.  
  562.  
  563. 188.
  564. setup_fx(false, (264, -1552, -56), "electrical1");
  565.  
  566. 189.
  567.  
  568.  
  569. 190.
  570. }
  571.  
  572. 191.
  573.  
  574.  
  575. 192.
  576. setup_fx(tag, loc, effect) {
  577.  
  578. 193.
  579. if(tag) {
  580.  
  581. 194.
  582. model = spawn("script_model", self.origin);
  583.  
  584. 195.
  585. model setmodel("tag_origin");
  586.  
  587. 196.
  588. play_fx(effect, undefined, model);
  589.  
  590. 197.
  591. } else
  592.  
  593. 198.
  594. play_fx(effect, loc, undefined);
  595.  
  596. 199.
  597. }
  598.  
  599. 200.
  600.  
  601.  
  602. 201.
  603. play_fx(effect, loc, model) {
  604.  
  605. 202.
  606. if(!isdefined(level._effect[effect])) {
  607.  
  608. 203.
  609. iPrintLn("Effect is undefined!");
  610.  
  611. 204.
  612. return;
  613.  
  614. 205.
  615. }
  616.  
  617. 206.
  618.  
  619.  
  620. 207.
  621. if(isdefined(model))
  622.  
  623. 208.
  624. playfxontag(level._effect[effect], self, "tag_origin");
  625.  
  626. 209.
  627. else
  628.  
  629. 210.
  630. playfx(level._effect[effect], loc);
  631.  
  632. 211.
  633. }
  634.  
  635. 212.
  636.  
  637.  
  638. 213.
  639. preCacheFX() {
  640.  
  641. 214.
  642. level._effect["electrical1"] = loadfx("env/electrical/fx_elec_sparks_looping");
  643.  
  644. 215.
  645. }
Advertisement
Add Comment
Please, Sign In to add comment