1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225 |
- //===== rAthena Script =======================================
- //= Morse Cave
- //===== Description: =========================================
- //= [Walkthrough Conversion]
- //= Morse Cave Instance
- //===== Changelogs: ==========================================
- //= 1.0 First version. [Capuche]
- //============================================================
- moro_cav,61,69,3 script Senior Tracker#a1 4_M_JOB_ASSASSIN,{
- if (ep14_3_isle == 0) {
- mes "[Senior Tracker]";
- mes "This is our advance base";
- mes "to stop Morroc.";
- mes "I'm a tracker";
- mes "charged with leading my army";
- mes "to Morroc's lair.";
- close;
- }
- switch( checkquest(9319,PLAYTIME) ) {
- case -1:
- break;
- case 0:
- case 1:
- mes "[Senior Tracker]";
- mes "We're nowhere near close";
- mes "to stopping Morroc's resurrection.";
- mes "I can't sleep at night,";
- mes "knowing Morroc is doing everything he can";
- mes "to recover his strength.";
- mes "Could you come back tomorrow?";
- close;
- case 2:
- break;
- }
- switch( isbegin_quest(9318) ) {
- case 0:
- mes "[Senior Tracker]";
- mes "This is our advance base";
- mes "to stop Morroc.";
- mes "I'm a tracker";
- mes "charged with leading my army";
- mes "to Morroc's lair.";
- next;
- mes "[Senior Tracker]";
- mes "After a painstaking search,";
- mes "I've located";
- mes "the place with the highest chance of";
- mes "hiding Morroc inside.";
- next;
- mes "[Senior Tracker]";
- mes "According to my intel,";
- mes "Morroc is hiding out in this place,";
- mes "trying to recover";
- mes "his full strength.";
- next;
- mes "[Senior Tracker]";
- mes "Even though I've located this place myself,";
- mes "I have to admit";
- mes "that I'm not equipped to";
- mes "explore it by myself.";
- mes "I'm a tracker after all, not a fighter.";
- next;
- mes "[Senior Tracker]";
- mes "You look like";
- mes "a warrior spoiling for";
- mes "a good fight with Morroc,";
- mes "and I think";
- mes "you have a chance at winning it.";
- next;
- mes "[Senior Tracker]";
- mes "How'd you like to";
- mes "enter Morroc's lair,";
- mes "defeat him,";
- mes "and become the hero";
- mes "who saved the world from evil?";
- next;
- if (getcharid(1) < 1 || is_party_leader() == false) {
- mes "[Senior Tracker]";
- mes "If you're interested in my proposition,";
- mes "let me talk to your party leader.";
- mes "We'll discuss more details together.";
- close;
- }
- mes "[Senior Tracker]";
- mes "Morroc may not have recovered his full strength, but fighting him still";
- break;
- case 1:
- mes "[Senior Tracker]";
- mes "Finally you're back!";
- mes "What happened in there?";
- next;
- mes "- You relay";
- mes "your experience in the Red Flower. -";
- next;
- mes "[Senior Tracker]";
- mes "So Morroc got away.";
- mes "That's a shame.";
- next;
- if (checkquest(9318,HUNTING) == 2) {
- mes "[Senior Tracker]";
- mes "At least";
- mes "you wiped out";
- mes "his army.";
- mes "That's an accomplishment in itself.";
- next;
- }
- mes "[Senior Tracker]";
- mes "At least we know";
- mes "where he is.";
- mes "Could you come back tomorrow";
- mes "and help me track";
- mes "him down again?";
- mes "I'll be waiting here.";
- if (checkquest(9318,HUNTING) == 2)
- getitem 6684,1; // TokenOfHero
- completequest 9318;// Pursuing Hiding Morroc
- setquest 9319;// Pursuing Hiding Morroc Continues
- close;
- case 2:
- mes "[Senior Tracker]";
- mes "I knew you'd return.";
- mes "You look well-rested.";
- next;
- mes "[Senior Tracker]";
- mes "According to my intel,";
- mes "Morroc is hiding out in this place,";
- mes "recovering his strength.";
- next;
- mes "[Senior Tracker]";
- mes "Fighting Morroc";
- break;
- }
- mes "takes more than a few warriors, no matter how strong they are.";
- mes "I recommend you join forces with";
- mes "as many comrades as you can find.";
- mes "Are you ready to enter the Red Flower";
- mes "where Morroc is believed to be hiding?";
- if (getcharid(1) > 0 && is_party_leader() == true) {
- next;
- if (select( "No.", "Yes." ) == 1) {
- mes "[Senior Tracker]";
- mes "Come back";
- mes "if you change your mind.";
- close;
- }
- mes "[Senior Tracker]";
- mes "The entrance to the Red Flower";
- mes "has opened.";
- mes "It will only stay open for a while.";
- mes "You'd better use it";
- mes "while you can.";
- if (instance_create("Morse's Cave") >= 0)
- 'party_id = getcharid(1);
- }
- close;
- }
- moro_cav,57,69,3 script Red Flower#a1 CLEAR_NPC,{
- if (ep14_3_isle == 0) {
- mes "[Senior Tracker]";
- mes "This is our advance base";
- mes "to stop Morroc.";
- mes "I'm a tracker";
- mes "charged with leading my army";
- mes "to Morroc's lair.";
- close;
- }
- if (isbegin_quest(9318) == 1) {
- mes "- The Red Flower is closed.";
- mes "You cannot enter it yet. -";
- close;
- }
- switch( checkquest(9319,PLAYTIME) ) {
- case -1:
- break;
- case 0:
- case 1:
- mes "- The Red Flower is closed.";
- mes "You cannot enter it yet. -";
- close;
- case 2:
- break;
- }
- if (select( "Do not enter the Red Flower.", "Enter the Red Flower." ) == 1) {
- mes "- You can sense some sinister energy. -";
- close;
- }
- switch( instance_enter("Morse's Cave") ) {
- case IE_OTHER:
- mes "An unknown error occurred.";
- close;
- case IE_NOINSTANCE:
- mes "The Memorial dungeon Morse's Cave does not exist.";
- mes "Your party leader has not yet created the Memorial dungeon.";
- close;
- case IE_NOMEMBER:
- mes "Only party members can enter this Memorial dungeon.";
- close;
- case IE_OK:
- mapannounce 'map_rev$, getpartyname( getcharid(1) ) + " party's " + strcharinfo(0) + " is entering Morse's Cave.", bc_map,0xFF99;
- if (isbegin_quest(9319) > 0)
- erasequest 9319;// Pursuing Hiding Morroc Continues
- if (isbegin_quest(9318) > 0)
- erasequest 9318;
- setquest 9318;// Pursuing Hiding Morroc
- // warp "1@rev",26,181;
- end;
- }
- end;
- OnInit:
- while(true) {
- sleep 15000;
- specialeffect 239;
- }
- end;
- }
- // Entrance
- 1@rev,27,181,0 script #RZ Memorial Start HIDDEN_WARP_NPC,4,4,{
- end;
- OnTouch:
- // note : party member can also trigger this event
- disablenpc instance_npcname("#RZ Memorial Start");
- 'soul_name$ = strcharinfo(0); // name displayed on soul is defined at entrance
- mes "";
- sleep2 500;
- mapannounce 'map_rev$, "Morroc: Who dares to disrupt my sleep?!", bc_map,0xEBFF;
- unittalk getcharid(3), "" + strcharinfo(0) + " : We came to the right place!";
- sleep2 3000;
- unittalk getcharid(3), "" + strcharinfo(0) + " : Wait! There's something ahead of us!";
- sleep2 3000;
- specialeffect2 EF_LOCKON;
- unittalk getcharid(3), "" + strcharinfo(0) + " : Are these hideous monsters Morroc's lackeys?";
- donpcevent instance_npcname("#RZ Event_1") + "::OnStart";
- end;
- }
- // 1@rev,31,181,0 script #RZ Event_1 HIDDEN_WARP_NPC,5,5,{
- 1@rev,1,1,0 script #RZ Event_1 HIDDEN_WARP_NPC,{
- end;
- OnStart:
- enablenpc instance_npcname("#RZ Event_1");
- .@label$ = instance_npcname("#RZ Event_1") + "::OnMobDead";
- monster 'map_rev$,38,180,"Morroc's Ghoul",3001,1, .@label$; // EP14_MORS_MOB1
- monster 'map_rev$,38,181,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,38,182,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,54,180,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,54,181,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,54,182,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,70,180,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,70,181,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,70,182,"Morroc's Ghoul",3001,1, .@label$;
- end;
- OnMobDead:
- if (mobcount( 'map_rev$, instance_npcname("#RZ Event_1") + "::OnMobDead" ) < 1) {
- donpcevent instance_npcname("Reaper Yanku#RZ Event_2") + "::OnStart";
- disablenpc instance_npcname("#RZ Event_1");
- }
- end;
- }
- 1@rev,64,181,4 script Reaper Yanku#RZ Event_2 3029,{
- end;
- OnStart:
- enablenpc instance_npcname("Reaper Yanku#RZ Event_2");
- npctalk "Reaper Yanku: *Chuckle* We meet again!";
- sleep 3000;
- npctalk "Reaper Yanku: You shouldn't have come. You're interrupting Lord Morroc from recovering his strength.";
- sleep 3000;
- npctalk "Reaper Yanku: This world resides in his mind.";
- sleep 3000;
- npctalk "Reaper Yanku: You can't do anything against his will. *Chuckle*";
- sleep 3000;
- npctalk "Reaper Yanku: Lord Morroc is expecting you. Let me take you to him. *Chuckle*";
- sleep 3000;
- disablenpc instance_npcname("Reaper Yanku#RZ Event_2");
- enablenpc instance_npcname("#RZ Event_3");
- sleep 3000;
- /* Officials scripts
- enablenpc instance_npcname("#RZ Move_30");
- enablenpc instance_npcname("#RZ Move_31");
- enablenpc instance_npcname("#RZ Move_32");
- */
- mapwarp 'map_rev$,'map_rev$,103,177; // note: officially players are warped when the next event start - player entering can't access to the current event
- end;
- }
- // Weakened Morroc Room
- 1@rev,104,176,0 script #RZ Event_3 HIDDEN_WARP_NPC,4,4,{
- end;
- OnTouch: // note : party member can also trigger this event
- mes ""; // fix me
- disablenpc instance_npcname("#RZ Event_3");
- enablenpc instance_npcname("Weakened Morroc#RZ1");
- unittalk getcharid(3), "" + strcharinfo(0) + " : Finally, here we are, Morroc.";
- sleep2 3000;
- unittalk getcharid(3), "" + strcharinfo(0) + " : It's been almost too easy to find you,";
- sleep2 3000;
- unittalk getcharid(3), "" + strcharinfo(0) + " : but it doesn't matter; you'll die today!";
- sleep2 3000;
- specialeffect2 EF_LOCKON;
- donpcevent instance_npcname("Weakened Morroc#RZ1") + "::OnTalk1";
- end;
- }
- 1@rev,111,178,4 script Weakened Morroc#RZ1 1916,{
- end;
- OnTalk1:
- npctalk "Weakened Morroc: I should punish you for disturbing my slumber.";
- sleep 3000;
- npctalk "Weakened Morroc: Do you really think you can stop me?";
- sleep 3000;
- npctalk "Weakened Morroc: I'll make you regret ever coming here.";
- sleep 3000;
- npctalk "Weakened Morroc: I may have not recovered my full strength,";
- specialeffect EF_ENERGYCOAT;
- sleep 3000;
- npctalk "Weakened Morroc: but I still can take down a bunch of you easily.";
- sleep 3000;
- npctalk "Weakened Morroc: Death is your only escape!";
- specialeffect EF_VOLCANO;
- sleep 3000;
- disablenpc instance_npcname("Weakened Morroc#RZ1");
- donpcevent instance_npcname("Weakened Morroc#control") + "::OnStart";
- end;
- OnTalk2:
- enablenpc instance_npcname("Weakened Morroc#RZ1");
- npctalk "Weakened Morroc: I'm sorry, but I haven't recovered my full strength.";
- sleep 3000;
- npctalk "Weakened Morroc: I'll have to leave you to my soldiers for now.";
- sleep 3000;
- npctalk "Weakened Morroc: Do your worst to get out of my world!";
- sleep 3000;
- npctalk "Weakened Morroc: In the end, you'll learn the meaning of helplessness in the most painful way!";
- sleep 3000;
- npctalk "Weakened Morroc: And your souls will be mine! Mwah hah hah!";
- sleep 3000;
- disablenpc instance_npcname("Weakened Morroc#RZ1");
- sleep 3000;
- /* Officials scripts use WARPNPC
- enablenpc instance_npcname("#RZ Move_1");
- enablenpc instance_npcname("#RZ Move_2");
- enablenpc instance_npcname("#RZ Move_3");
- enablenpc instance_npcname("#RZ Move_4");
- */
- enablenpc instance_npcname("#Battle_1RZ1");
- enablenpc instance_npcname("#Battle_1RZ2");
- for ( .@i = 1; .@i <= 12; .@i++ )
- enablenpc instance_npcname( "#Pause Effect RZ" + .@i );
- for ( .@i = 1; .@i <= 8; .@i++ )
- enablenpc instance_npcname( "#RZ Debuff_" + .@i );
- getpartymember 'party_id, 1, .@char_id;
- getpartymember 'party_id, 2, .@account_id;
- for ( .@i = 0; .@i < $@partymembercount; .@i++ ) {
- if (isloggedin(.@account_id[.@i],.@char_id[.@i]) == false)
- continue;
- if (strcharinfo(3,.@char_id[.@i]) == 'map_rev$) {
- if ((.@count % 2) == 0) // Right
- warp 'map_rev$, rand(33,36), rand(117,118), .@char_id[.@i];
- else // Left
- warp 'map_rev$, rand(112,114), rand(116,118), .@char_id[.@i];
- .@count++;
- }
- }
- end;
- }
- 1@rev,1,1,0 script Weakened Morroc#control HIDDEN_WARP_NPC,{
- end;
- OnStart:
- enablenpc instance_npcname("Weakened Morroc#control");
- monster 'map_rev$,111,178,"Weakened Morroc",2998,1, instance_npcname("Weakened Morroc#control") + "::OnMobDead"; // EP14_MORS_EVENT
- end;
- OnMobDead:
- donpcevent instance_npcname("Weakened Morroc#RZ1") + "::OnTalk2";
- disablenpc instance_npcname("Weakened Morroc#control");
- end;
- }
- 1@rev,34,126,4 script Reaper Yanku#RZ Event_3 3029,{ end; }
- 1@rev,112,126,4 duplicate(Reaper Yanku#RZ Event_3) Reaper Yanku#RZ Event_4 3029
- 1@rev,34,55,4 duplicate(Reaper Yanku#RZ Event_3) Reaper Yanku#RZ Event_5 3029
- 1@rev,112,48,4 duplicate(Reaper Yanku#RZ Event_3) Reaper Yanku#RZ Event_6 3029
- // Battle 1 - waves, event A - left side
- // 1@rev,35,119,0 script #Battle_1RZ1 HIDDEN_WARP_NPC,10,10,{
- 1@rev,35,119,0 script #Battle_1RZ1 HIDDEN_WARP_NPC,2,2,{
- end;
- OnTouch:
- pcblockmove 0, true;
- if ('status_battle[0] == 0) {
- 'status_battle[0] = 1;
- donpcevent instance_npcname("#RZ Memorial Effect 1") + "::OnStart";
- mapannounce 'map_rev$, "Morroc: How do you like to be separated from each other and have your bodies and minds bound?", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: You're trespassing! Riff-raff like you have no business in here!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: Your bodies are mine to control!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: Your souls are food for my resurrection!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: My soldiers, tear their bodies asunder and bring their souls to me!", bc_map,0xEBFF;
- donpcevent instance_npcname("#morse_cave_wave_1") + "::OnStart";
- }
- end;
- }
- // Event B - right side
- // 1@rev,112,126,0 script #Battle_1RZ2 HIDDEN_WARP_NPC,10,10
- 1@rev,112,116,0 script #Battle_1RZ2 HIDDEN_WARP_NPC,2,2,{
- end;
- OnTouch:
- pcblockmove 0, true;
- if ('status_battle[1] == 0) {
- 'status_battle[1] = 1;
- donpcevent instance_npcname("#RZ Memorial Effect 2") + "::OnStart";
- }
- end;
- }
- 1@rev,1,1,0 script #morse_cave_wave_1 HIDDEN_WARP_NPC,{
- end;
- OnStart:
- enablenpc instance_npcname("#morse_cave_wave_1");
- sleep 5000;
- callsub( S_Spawn,0 );
- sleep 20000;
- callsub( S_Spawn,0 );
- sleep 20000;
- callsub( S_Spawn,0 );
- mapannounce 'map_rev$, "Morroc: My soldiers, make them suffer! Feast on their bodies and souls!", bc_map,0xEBFF;
- sleep 20000;
- callsub( S_Spawn,0 );
- sleep 20000;
- callsub( S_Spawn,0 );
- mapannounce 'map_rev$, "Morroc: Not enough. Make them feel terror!", bc_map,0xEBFF;
- sleep 20000;
- callsub( S_Spawn,0 );
- sleep 20000;
- callsub( S_Spawn,0 );
- mapannounce 'map_rev$, "Morroc: Resist me! Fight to the death!", bc_map,0xEBFF;
- sleep 20000;
- callsub( S_Spawn,0 );
- sleep 15000;
- callsub( S_Spawn,1 );
- mapannounce 'map_rev$, "Morroc: Mwa hah hah, I can feel my power returning!", bc_map,0xEBFF;
- sleep 10000;
- callsub( S_Spawn,2 );
- sleep 12000;
- .@count[0] = mobcount( 'map_rev$, instance_npcname("#morse_cave_wave_1") + "::OnMobDead" );
- .@count[1] = mobcount( 'map_rev$, instance_npcname("#morse_cave_wave_1") + "::OnMobDead2" );
- killmonster 'map_rev$, instance_npcname("#morse_cave_wave_1") + "::OnMobDead";
- killmonster 'map_rev$, instance_npcname("#morse_cave_wave_1") + "::OnMobDead2";
- disablenpc instance_npcname("#Battle_1RZ1");
- disablenpc instance_npcname("#Battle_1RZ2");
- for ( .@i = 1; .@i <= 12; .@i++ )
- donpcevent instance_npcname( "#Pause Effect RZ" + .@i ) + "::OnStop";
- sleep 3000;
- if (.@count[0] > 19 || .@count[1] > 19) {
- .@reaper$[0] = instance_npcname("Reaper Yanku#RZ Event_3");
- .@reaper$[1] = instance_npcname("Reaper Yanku#RZ Event_4");
- enablenpc .@reaper$[0];
- enablenpc .@reaper$[1];
- npctalk "You're pathetic.", .@reaper$[0];
- npctalk "You're pathetic.", .@reaper$[1];
- sleep 3000;
- npctalk "Weaklings like you aren't enough food for Lord Morroc", .@reaper$[0];
- npctalk "Weaklings like you aren't enough food for Lord Morroc", .@reaper$[1];
- sleep 3000;
- npctalk "to get the energy he needs for a full recovery.", .@reaper$[0];
- npctalk "to get the energy he needs for a full recovery.", .@reaper$[1];
- sleep 3000;
- npctalk "I'll give you one chance to leave. NOW!", .@reaper$[0];
- npctalk "I'll give you one chance to leave. NOW!", .@reaper$[1];
- sleep 3000;
- disablenpc .@reaper$[0];
- disablenpc .@reaper$[1];
- sleep 5000;
- /* Officials scripts
- enablenpc instance_npcname("#RZ Move_5a");// warp to prontera,97,167
- enablenpc instance_npcname("#RZ Move_6a");
- enablenpc instance_npcname("#RZ Move_7a");
- enablenpc instance_npcname("#RZ Move_8a");
- enablenpc instance_npcname("#RZ Move_9a");
- enablenpc instance_npcname("#RZ Move_10a");
- enablenpc instance_npcname("#RZ Move_11a");
- enablenpc instance_npcname("#RZ Move_12a");
- */
- getpartymember 'party_id, 1, .@char_id;
- getpartymember 'party_id, 2, .@account_id;
- for ( .@i = 0; .@i < $@partymembercount; .@i++ ) {
- if (isloggedin(.@account_id[.@i],.@char_id[.@i]) == false)
- continue;
- if (strcharinfo(3,.@char_id[.@i]) == 'map_rev$)
- pcblockmove .@account_id[.@i], false;
- }
- mapwarp 'map_rev$,"prontera",97,167;
- }
- else {
- mapannounce 'map_rev$, "Morroc: You're more resilient than I thought.", bc_map,0xEBFF;
- sleep 2000;
- mapannounce 'map_rev$, "Morroc: But enough is enough.", bc_map,0xEBFF;
- sleep 5000;
- /* Officials scripts
- enablenpc instance_npcname("#RZ Move_5");// warp to 1@rev,31,50
- enablenpc instance_npcname("#RZ Move_6");
- enablenpc instance_npcname("#RZ Move_7");
- enablenpc instance_npcname("#RZ Move_8");
- enablenpc instance_npcname("#RZ Move_9");
- enablenpc instance_npcname("#RZ Move_10");
- enablenpc instance_npcname("#RZ Move_11");
- enablenpc instance_npcname("#RZ Move_12");
- */
- for ( .@i = 9; .@i <= 15; .@i++ )
- enablenpc instance_npcname( "#RZ Debuff_" + .@i );
- enablenpc instance_npcname("#Battle_2RZ1");
- for ( .@i = 1; .@i <= 12; .@i++ )
- enablenpc instance_npcname( "#Pause Effecto RZ" + .@i );
- warpparty 'map_rev$,31,50, 'party_id, 'map_rev$,1,1;
- }
- for ( .@i = 1; .@i <= 8; .@i++ )
- disablenpc instance_npcname( "#RZ Debuff_" + .@i );
- disablenpc instance_npcname("#morse_cave_wave_1");
- donpcevent instance_npcname("#RZ Memorial Effect 1") + "::OnStop";
- donpcevent instance_npcname("#RZ Memorial Effect 2") + "::OnStop";
- end;
- S_Spawn:
- .@additionnal_monster = getarg(0);
- .@label$ = instance_npcname("#morse_cave_wave_1") + "::OnMobDead";
- monster 'map_rev$,33,128,"Morroc's Ghoul",3001,1, .@label$;// EP14_MORS_MOB1
- monster 'map_rev$,42,120,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,34,111,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,25,119,"Morroc's Ghoul",3001,1, .@label$;
- if (.@additionnal_monster == 1)
- monster 'map_rev$,33,111,"Morroc's Archer Skeleton",3003,1, .@label$;// EP14_MORS_MOB3
- else if (.@additionnal_monster == 2)
- monster 'map_rev$,32,128,"Morroc's Archer Skeleton",3003,1, .@label$;
- if ('status_battle[1] == true) {
- .@label$ = instance_npcname("#morse_cave_wave_1") + "::OnMobDead2";
- monster 'map_rev$,112,126,"Morroc's Ghoul",3001,1, .@label$;// EP14_MORS_MOB1
- monster 'map_rev$,120,118,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,112,109,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,103,117,"Morroc's Ghoul",3001,1, .@label$;
- if (.@additionnal_monster == 1)
- monster 'map_rev$,103,118,"Morroc's Archer Skeleton",3003,1, .@label$;// EP14_MORS_MOB3
- else if (.@additionnal_monster == 2)
- monster 'map_rev$,120,117,"Morroc's Archer Skeleton",3003,1, .@label$;
- }
- return;
- OnMobDead:
- OnMobDead2:
- end;
- }
- // display icewall every 30s
- 1@rev,33,117,0 script #Pause Effect RZ1 HIDDEN_WARP_NPC,1,1,{
- end;
- OnTouch:
- if (countstr( strnpcinfo(0), "Effecto" ) == 0)
- .@num = atoi( replacestr( strnpcinfo(2), "Pause Effect RZ", "" ) );
- else
- .@num = atoi( replacestr( strnpcinfo(2), "Pause Effecto RZ", "" ) ) + 20;
- if ('pause_effect[.@num] == 0) {
- 'pause_effect[.@num] = 1;
- specialeffect EF_ICEWALL;
- initnpctimer;
- }
- pcblockmove 0, true;
- if (.@num < 7 && 'status_battle[0] == 0) {
- mes ""; // fix me
- 'status_battle[0] = 1;
- donpcevent instance_npcname("#RZ Memorial Effect 1") + "::OnStart";
- mapannounce 'map_rev$, "Morroc: How do you like to be separated from each other and have your bodies and minds bound?", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: You're trespassing! Riff-raff like you have no business in here!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: Your bodies are mine to control!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: Your souls are food for my resurrection!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: My soldiers, tear their bodies asunder and bring their souls to me!", bc_map,0xEBFF;
- donpcevent instance_npcname("#morse_cave_wave_1") + "::OnStart";
- }
- else if (.@num >= 7 && .@num < 13 && 'status_battle[1] == 0) {
- 'status_battle[1] = 1;
- donpcevent instance_npcname("#RZ Memorial Effect 2") + "::OnStart";
- }
- else if (.@num >= 21 && .@num < 33 && 'status_battle[2] == 0) {
- mes ""; // fix me
- 'status_battle[2] = 1;
- donpcevent instance_npcname("#RZ Memorial Effect 3") + "::OnStart";
- mapannounce 'map_rev$, "Morroc: This world of mine is evolving.", bc_map,0xEBFF;
- sleep2 2000;
- mapannounce 'map_rev$, "Morroc: My power is returning!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: Your bodies and souls are under my command!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: My soldiers, tear their bodies asunder and bring their souls to me!", bc_map,0xEBFF;
- donpcevent instance_npcname("#morse_cave_wave_2") + "::OnStart";
- }
- end;
- OnTimer30000:
- specialeffect EF_ICEWALL;
- initnpctimer;
- end;
- OnStop:
- stopnpctimer;
- disablenpc instance_npcname( strnpcinfo(0) );
- end;
- }
- 1@rev,36,118,0 duplicate(#Pause Effect RZ1) #Pause Effect RZ2 HIDDEN_WARP_NPC,1,1
- 1@rev,36,121,0 duplicate(#Pause Effect RZ1) #Pause Effect RZ3 HIDDEN_WARP_NPC,1,1
- 1@rev,34,122,0 duplicate(#Pause Effect RZ1) #Pause Effect RZ4 HIDDEN_WARP_NPC,1,1
- 1@rev,31,121,0 duplicate(#Pause Effect RZ1) #Pause Effect RZ5 HIDDEN_WARP_NPC,1,1
- 1@rev,31,118,0 duplicate(#Pause Effect RZ1) #Pause Effect RZ6 HIDDEN_WARP_NPC,1,1
- // Event B - right side
- 1@rev,112,116,0 duplicate(#Pause Effect RZ1) #Pause Effect RZ7 HIDDEN_WARP_NPC,1,1
- 1@rev,114,117,0 duplicate(#Pause Effect RZ1) #Pause Effect RZ8 HIDDEN_WARP_NPC,1,1
- 1@rev,114,120,0 duplicate(#Pause Effect RZ1) #Pause Effect RZ9 HIDDEN_WARP_NPC,1,1
- 1@rev,111,121,0 duplicate(#Pause Effect RZ1) #Pause Effect RZ10 HIDDEN_WARP_NPC,1,1
- 1@rev,109,120,0 duplicate(#Pause Effect RZ1) #Pause Effect RZ11 HIDDEN_WARP_NPC,1,1
- 1@rev,109,117,0 duplicate(#Pause Effect RZ1) #Pause Effect RZ12 HIDDEN_WARP_NPC,1,1
- // Battle 2 - waves
- 1@rev,31,50,0 duplicate(#Pause Effect RZ1) #Pause Effecto RZ1 HIDDEN_WARP_NPC,1,1
- 1@rev,36,49,0 duplicate(#Pause Effect RZ1) #Pause Effecto RZ2 HIDDEN_WARP_NPC,1,1
- 1@rev,37,45,0 duplicate(#Pause Effect RZ1) #Pause Effecto RZ3 HIDDEN_WARP_NPC,1,1
- 1@rev,30,45,0 duplicate(#Pause Effect RZ1) #Pause Effecto RZ4 HIDDEN_WARP_NPC,1,1
- 1@rev,29,47,0 duplicate(#Pause Effect RZ1) #Pause Effecto RZ5 HIDDEN_WARP_NPC,1,1
- 1@rev,33,51,0 duplicate(#Pause Effect RZ1) #Pause Effecto RZ6 HIDDEN_WARP_NPC,1,1
- 1@rev,38,49,0 duplicate(#Pause Effect RZ1) #Pause Effecto RZ7 HIDDEN_WARP_NPC,1,1
- 1@rev,34,44,0 duplicate(#Pause Effect RZ1) #Pause Effecto RZ8 HIDDEN_WARP_NPC,1,1
- 1@rev,32,44,0 duplicate(#Pause Effect RZ1) #Pause Effecto RZ9 HIDDEN_WARP_NPC,1,1
- 1@rev,29,49,0 duplicate(#Pause Effect RZ1) #Pause Effecto RZ10 HIDDEN_WARP_NPC,1,1
- 1@rev,35,51,0 duplicate(#Pause Effect RZ1) #Pause Effecto RZ11 HIDDEN_WARP_NPC,1,1
- 1@rev,37,47,0 duplicate(#Pause Effect RZ1) #Pause Effecto RZ12 HIDDEN_WARP_NPC,1,1
- // Event A - left side - debuff
- 1@rev,33,111,0 script #RZ Debuff_1 HIDDEN_WARP_NPC,12,4,{
- end;
- OnTouch:
- pcblockmove 0, true;
- .@num = atoi( replacestr( strnpcinfo(2), "RZ Debuff_", "" ) );
- if (.@num < 5 && 'status_battle[0] == 0) {
- mes ""; // fix me
- 'status_battle[0] = 1;
- donpcevent instance_npcname("#RZ Memorial Effect 1") + "::OnStart";
- mapannounce 'map_rev$, "Morroc: How do you like to be separated from each other and have your bodies and minds bound?", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: You're trespassing! Riff-raff like you have no business in here!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: Your bodies are mine to control!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: Your souls are food for my resurrection!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: My soldiers, tear their bodies asunder and bring their souls to me!", bc_map,0xEBFF;
- donpcevent instance_npcname("#morse_cave_wave_1") + "::OnStart";
- }
- else if (.@num >= 5 && .@num < 9 && 'status_battle[1] == 0) {
- 'status_battle[1] = 1;
- donpcevent instance_npcname("#RZ Memorial Effect 2") + "::OnStart";
- }
- else if (.@num >= 9 && .@num < 16 && 'status_battle[2] == 0) {
- mes ""; // fix me
- 'status_battle[2] = 1;
- donpcevent instance_npcname("#RZ Memorial Effect 3") + "::OnStart";
- mapannounce 'map_rev$, "Morroc: This world of mine is evolving.", bc_map,0xEBFF;
- sleep2 2000;
- mapannounce 'map_rev$, "Morroc: My power is returning!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: Your bodies and souls are under my command!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: My soldiers, tear their bodies asunder and bring their souls to me!", bc_map,0xEBFF;
- donpcevent instance_npcname("#morse_cave_wave_2") + "::OnStart";
- }
- end;
- }
- 1@rev,42,124,0 duplicate(#RZ Debuff_1) #RZ Debuff_2 HIDDEN_WARP_NPC,4,8
- 1@rev,25,124,0 duplicate(#RZ Debuff_1) #RZ Debuff_3 HIDDEN_WARP_NPC,4,8
- 1@rev,33,128,0 duplicate(#RZ Debuff_1) #RZ Debuff_4 HIDDEN_WARP_NPC,4,4
- // Event B - right side - debuff
- 1@rev,112,110,0 duplicate(#RZ Debuff_1) #RZ Debuff_5 HIDDEN_WARP_NPC,12,4
- 1@rev,103,122,0 duplicate(#RZ Debuff_1) #RZ Debuff_6 HIDDEN_WARP_NPC,4,7
- 1@rev,120,122,0 duplicate(#RZ Debuff_1) #RZ Debuff_7 HIDDEN_WARP_NPC,4,7
- 1@rev,112,126,0 duplicate(#RZ Debuff_1) #RZ Debuff_8 HIDDEN_WARP_NPC,4,3
- // Battle 2 - waves - debuff
- 1@rev,32,47,0 duplicate(#RZ Debuff_1) #RZ Debuff_9 HIDDEN_WARP_NPC,1,1
- 1@rev,24,48,0 duplicate(#RZ Debuff_1) #RZ Debuff_10 HIDDEN_WARP_NPC,3,5
- 1@rev,27,56,0 duplicate(#RZ Debuff_1) #RZ Debuff_11 HIDDEN_WARP_NPC,4,4
- 1@rev,43,47,0 duplicate(#RZ Debuff_1) #RZ Debuff_12 HIDDEN_WARP_NPC,3,4
- 1@rev,41,56,0 duplicate(#RZ Debuff_1) #RZ Debuff_13 HIDDEN_WARP_NPC,4,4
- 1@rev,34,56,0 duplicate(#RZ Debuff_1) #RZ Debuff_14 HIDDEN_WARP_NPC,2,3
- 1@rev,34,39,0 duplicate(#RZ Debuff_1) #RZ Debuff_15 HIDDEN_WARP_NPC,12,3
- // official npcs to block the player from moving
- // Event A - left side
- // 1@rev,28,125,0 script #RZ Debuff_1 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,28,114,0 script #RZ Debuff_2 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,39,114,0 script #RZ Debuff_3 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,39,125,0 script #RZ Debuff_4 HIDDEN_WARP_NPC,10,10,{
- // Event B - right side
- // 1@rev,106,123,0 script #RZ Debuff_5 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,106,112,0 script #RZ Debuff_6 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,117,112,0 script #RZ Debuff_7 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,117,123,0 script #RZ Debuff_8 HIDDEN_WARP_NPC,10,10,{
- // Battle 2 - waves
- // 1@rev,28,53,0 script #RZ Debuff_9 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,28,42,0 script #RZ Debuff_10 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,39,42,0 script #RZ Debuff_11 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,39,53,0 script #RZ Debuff_12 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,28,53,0 script #RZ Debuff Recovery_1 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,28,42,0 script #RZ Debuff Recovery_2 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,39,42,0 script #RZ Debuff Recovery_3 HIDDEN_WARP_NPC,10,10,{
- // 1@rev,39,53,0 script #RZ Debuff Recovery_4 HIDDEN_WARP_NPC,10,10,{
- // Battle 2 - waves
- // 1@rev,34,47,0 script #Battle_2RZ1 HIDDEN_WARP_NPC,10,10,{
- 1@rev,34,47,0 script #Battle_2RZ1 HIDDEN_WARP_NPC,3,3,{
- end;
- OnTouch:
- pcblockmove 0, true;
- if ('status_battle[2] == 0) {
- 'status_battle[2] = 1;
- donpcevent instance_npcname("#RZ Memorial Effect 3") + "::OnStart";
- mapannounce 'map_rev$, "Morroc: This world of mine is evolving.", bc_map,0xEBFF;
- sleep 2000;
- mapannounce 'map_rev$, "Morroc: My power is returning!", bc_map,0xEBFF;
- sleep 3000;
- mapannounce 'map_rev$, "Morroc: Your bodies and souls are under my command!", bc_map,0xEBFF;
- sleep 3000;
- mapannounce 'map_rev$, "Morroc: My soldiers, tear their bodies asunder and bring their souls to me!", bc_map,0xEBFF;
- donpcevent instance_npcname("#morse_cave_wave_2") + "::OnStart";
- }
- end;
- }
- 1@rev,1,1,0 script #morse_cave_wave_2 HIDDEN_WARP_NPC,{
- end;
- OnStart:
- enablenpc instance_npcname("#morse_cave_wave_2");
- .@label$ = instance_npcname("#morse_cave_wave_2") + "::OnMobDead";
- sleep 5000;
- callsub( S_Spawn );
- monster 'map_rev$,27,53,"Morroc's Archer Skeleton",3003,1, .@label$;// EP14_MORS_MOB3
- monster 'map_rev$,27,41,"Morroc's Archer Skeleton",3003,1, .@label$;
- mapannounce 'map_rev$, "Morroc: This power! It feels great! Mwah hah hah!", bc_map,0xEBFF;
- sleep 25000;
- callsub( S_Spawn );
- monster 'map_rev$,40,41,"Morroc's Archer Skeleton",3003,1, .@label$;// EP14_MORS_MOB3
- monster 'map_rev$,40,54,"Morroc's Archer Skeleton",3003,1, .@label$;
- mapannounce 'map_rev$, "Morroc: How do you like losing control of your own body? *Chuckle*", bc_map,0xEBFF;
- sleep 25000;
- callsub( S_Spawn );
- monster 'map_rev$,40,41,"Morroc's Archer Skeleton",3003,1, .@label$;// EP14_MORS_MOB3
- monster 'map_rev$,40,54,"Morroc's Archer Skeleton",3003,1, .@label$;
- monster 'map_rev$,27,53,"Morroc's Verit",3005,1, .@label$;// EP14_MORS_MOB5
- sleep 25000;
- callsub( S_Spawn );
- monster 'map_rev$,40,41,"Morroc's Archer Skeleton",3003,1, .@label$;// EP14_MORS_MOB3
- monster 'map_rev$,40,54,"Morroc's Archer Skeleton",3003,1, .@label$;
- monster 'map_rev$,27,53,"Morroc's Verit",3005,1, .@label$;// EP14_MORS_MOB5
- mapannounce 'map_rev$, "Morroc: More! I need more energy!", bc_map,0xEBFF;
- sleep 25000;
- callsub( S_Spawn );
- monster 'map_rev$,40,41,"Morroc's Archer Skeleton",3003,1, .@label$;// EP14_MORS_MOB3
- monster 'map_rev$,40,54,"Morroc's Archer Skeleton",3003,1, .@label$;
- monster 'map_rev$,27,53,"Morroc's Verit",3005,1, .@label$;// EP14_MORS_MOB5
- mapannounce 'map_rev$, "Morroc: Mwah hah hah! Fear my army! Struggle harder!", bc_map,0xEBFF;
- sleep 25000;
- monster 'map_rev$,34,57,"Morroc's Ghoul",3001,1, .@label$;// EP14_MORS_MOB1
- monster 'map_rev$,43,48,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,33,38,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,40,41,"Morroc's Archer Skeleton",3003,1, .@label$;// EP14_MORS_MOB3
- monster 'map_rev$,40,54,"Morroc's Archer Skeleton",3003,1, .@label$;
- monster 'map_rev$,27,53,"Morroc's Verit",3005,1, .@label$;// EP14_MORS_MOB5
- sleep 25000;
- callsub( S_Spawn );
- monster 'map_rev$,27,53,"Morroc's Archer Skeleton",3003,1, .@label$;// EP14_MORS_MOB3
- monster 'map_rev$,27,41,"Morroc's Archer Skeleton",3003,1, .@label$;
- monster 'map_rev$,40,41,"Morroc's Verit",3005,1, .@label$;// EP14_MORS_MOB5
- monster 'map_rev$,40,54,"Morroc's Verit",3005,1, .@label$;
- mapannounce 'map_rev$, "Morroc: You're pathetic, struggling to survive!", bc_map,0xEBFF;
- sleep 15000;
- callsub( S_Spawn );
- monster 'map_rev$,40,41,"Morroc's Archer Skeleton",3003,1, .@label$;// EP14_MORS_MOB3
- monster 'map_rev$,40,54,"Morroc's Archer Skeleton",3003,1, .@label$;
- monster 'map_rev$,27,53,"Morroc's Verit",3005,1, .@label$;// EP14_MORS_MOB5
- monster 'map_rev$,27,41,"Morroc's Verit",3005,1, .@label$;
- sleep 12000;
- .@count = mobcount( 'map_rev$, instance_npcname("#morse_cave_wave_2") + "::OnMobDead" );
- killmonster 'map_rev$, instance_npcname("#morse_cave_wave_2") + "::OnMobDead";
- disablenpc instance_npcname("#Battle_2RZ1");
- for ( .@i = 1; .@i <= 12; .@i++ )
- donpcevent instance_npcname( "#Pause Effecto RZ" + .@i ) + "::OnStop";
- sleep 3000;
- if (.@count > 19) {
- .@reaper$ = instance_npcname("Reaper Yanku#RZ Event_5");
- enablenpc .@reaper$;
- npctalk "You're pathetic.", .@reaper$;
- sleep 3000;
- npctalk "Weaklings like you aren't enough food for Lord Morroc", .@reaper$;
- sleep 3000;
- npctalk "to get the energy he needs for a full recovery.", .@reaper$;
- sleep 3000;
- npctalk "I'll give you one chance to leave. NOW!", .@reaper$;
- sleep 3000;
- disablenpc .@reaper$;
- sleep 5000;
- /* Officials scripts
- enablenpc instance_npcname("#Move_13a");// warp to prontera,97,167
- enablenpc instance_npcname("#Move_14a");
- enablenpc instance_npcname("#Move_15a");
- enablenpc instance_npcname("#Move_16a");
- */
- getpartymember 'party_id, 1, .@char_id;
- getpartymember 'party_id, 2, .@account_id;
- for ( .@i = 0; .@i < $@partymembercount; .@i++ ) {
- if (isloggedin(.@account_id[.@i],.@char_id[.@i]) == false)
- continue;
- if (strcharinfo(3,.@char_id[.@i]) == 'map_rev$)
- pcblockmove .@account_id[.@i], false;
- }
- mapwarp 'map_rev$,"prontera",97,167;
- }
- else {
- mapannounce 'map_rev$, "Morroc: I'm surprised you've lasted this long. Thank you for helping me recover most of my strength.", bc_map,0xEBFF;
- sleep 4000;
- mapannounce 'map_rev$, "Morroc: Good, I feel rejuvenated.", bc_map,0xEBFF;
- sleep 3000;
- for ( .@i = 9; .@i <= 15; .@i++ )
- disablenpc instance_npcname( "#RZ Debuff_" + .@i );
- getpartymember 'party_id, 1, .@char_id;
- getpartymember 'party_id, 2, .@account_id;
- for ( .@i = 0; .@i < $@partymembercount; .@i++ ) {
- if (isloggedin(.@account_id[.@i],.@char_id[.@i]) == false)
- continue;
- if (strcharinfo(3,.@char_id[.@i]) == 'map_rev$)
- pcblockmove .@account_id[.@i], false;
- }
- // enablenpc instance_npcname("#RZ Debuff Recovery_1");
- // enablenpc instance_npcname("#RZ Debuff Recovery_2");
- // enablenpc instance_npcname("#RZ Debuff Recovery_3");
- // enablenpc instance_npcname("#RZ Debuff Recovery_4");
- sleep 1000;
- // enablenpc instance_npcname("#RZ Move_13");// warp to 1@rev,104,48
- // enablenpc instance_npcname("#RZ Move_14");
- // enablenpc instance_npcname("#RZ Move_15");
- // enablenpc instance_npcname("#RZ Move_16");
- enablenpc instance_npcname("#Battle_3RZ1");
- mapwarp 'map_rev$,'map_rev$,104,48;
- }
- disablenpc instance_npcname("#morse_cave_wave_2");
- donpcevent instance_npcname("#RZ Memorial Effect 3") + "::OnStop";
- end;
- S_Spawn:
- .@label$ = instance_npcname("#morse_cave_wave_2") + "::OnMobDead";
- monster 'map_rev$,34,57,"Morroc's Ghoul",3001,1, .@label$;// EP14_MORS_MOB1
- monster 'map_rev$,43,48,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,33,38,"Morroc's Ghoul",3001,1, .@label$;
- monster 'map_rev$,24,48,"Morroc's Ghoul",3001,1, .@label$;
- return;
- OnMobDead:
- end;
- }
- // Display EF_CURSEATTACK effect overhead 'Soul' monster
- // Event A - left side
- 1@rev,34,120,0 script #RZ Memorial Effect 1 HIDDEN_WARP_NPC,{
- end;
- OnStart:
- .@npc_name$ = instance_npcname( strnpcinfo(0) );
- enablenpc .@npc_name$;
- getmapxy .@map$,.@x,.@y, UNITTYPE_NPC;
- monster 'map_rev$,.@x,.@y,('soul_name$ + "'s Soul"),3007,1, .@npc_name$ + "::OnStop"; // EP14_MORS_DUMMY
- initnpctimer;
- specialeffect EF_STORMGUST;
- specialeffect EF_CURSEATTACK;
- end;
- OnTimer2000:
- specialeffect EF_CURSEATTACK;
- initnpctimer;
- end;
- OnStop:
- stopnpctimer;
- killmonster 'map_rev$, instance_npcname( strnpcinfo(0) ) + "::OnStop";
- disablenpc instance_npcname( strnpcinfo(0) );
- end;
- }
- // Event B - right side
- 1@rev,112,118,0 duplicate(#RZ Memorial Effect 1) #RZ Memorial Effect 2 HIDDEN_WARP_NPC
- // Battle 2 - waves
- 1@rev,34,48,0 duplicate(#RZ Memorial Effect 1) #RZ Memorial Effect 3 HIDDEN_WARP_NPC
- // official range
- // 1@rev,34,120,0 script #RZ Memorial Effect 1 HIDDEN_WARP_NPC,4,4,{
- // 1@rev,112,118,0 duplicate(#RZ Memorial Effect 1) #RZ Memorial Effect 2 HIDDEN_WARP_NPC,4,4
- // 1@rev,34,48,0 duplicate(#RZ Memorial Effect 1) #RZ Memorial Effect 3 HIDDEN_WARP_NPC,4,4
- // Battle 3
- 1@rev,112,48,4 script Morocc Necromancer#RZ1 4_GHOST_STAND,{ end; }
- 1@rev,104,47,0 script #Battle_3RZ1 HIDDEN_WARP_NPC,5,5,{
- end;
- OnTouch:
- disablenpc instance_npcname("#Battle_3RZ1");
- mapannounce 'map_rev$, "Morroc: I can't let you go unscathed!", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: Hah hah, my Necromancer. I'll leave them to you.", bc_map,0xEBFF;
- sleep2 3000;
- mapannounce 'map_rev$, "Morroc: My loyal soldier, I'll trust you with their deaths!", bc_map,0xEBFF;
- sleep2 3000;
- .@necromancer$ = instance_npcname("Morocc Necromancer#RZ1");
- enablenpc .@necromancer$;
- sleep2 3000;
- specialeffect EF_TWOHANDQUICKEN,AREA, .@necromancer$;
- npctalk "Morocc Necromancer: As you wish, My Lord!", .@necromancer$;
- sleep2 3000;
- npctalk "Morocc Necromancer: *Chuckle* You still have no idea, do you?", .@necromancer$;
- sleep2 3000;
- npctalk "Morocc Necromancer: The energy you generated to protect me while I was hiding within your soul", .@necromancer$;
- sleep2 3000;
- npctalk "Morocc Necromancer: has been converted to healing energy for Lord Morroc the moment you entered this world of his!", .@necromancer$;
- sleep2 3000;
- npctalk "Morocc Necromancer: *Chuckle* Your stupidity was a blessing for us. We don't need you anymore. DIE!", .@necromancer$;
- specialeffect EF_BEGINSPELL2,AREA, .@necromancer$;
- sleep2 3000;
- disablenpc .@necromancer$;
- donpcevent instance_npcname("#morse_cave_3") + "::OnStart";
- end;
- }
- 1@rev,1,1,0 script #morse_cave_3 HIDDEN_WARP_NPC,{
- end;
- OnStart:
- enablenpc instance_npcname("#morse_cave_3");
- monster 'map_rev$,112,48,"Morocc Necromancer",2999,1, instance_npcname("#morse_cave_3") + "::OnMobDead";// EP14_MORS_BOSSA
- end;
- OnMobDead:
- .@necromancer$ = instance_npcname("Morocc Necromancer#RZ1");
- enablenpc .@necromancer$;
- sleep 3000;
- npctalk "Morocc Necromancer: You're stronger than you look.", .@necromancer$;
- sleep 3000;
- npctalk "Morocc Necromancer: *Giggle* I'll show you what I'm truly capable of.", .@necromancer$;
- sleep 3000;
- npctalk "Morocc Necromancer: Beg me for your lives!", .@necromancer$;
- sleep 3000;
- npctalk "Morocc Necromancer: *Giggle*", .@necromancer$;
- sleep 3000;
- disablenpc .@necromancer$;
- monster 'map_rev$,112,48,"Morocc Necromancer",3000,1, instance_npcname("#morse_cave_3") + "::OnMobDead2";// EP14_MORS_BOSSB
- 'boss_id = $@mobid[0];
- donpcevent instance_npcname("#morse_cave_wave_3") + "::OnStart";
- donpcevent instance_npcname("#morse_cave_boss_talk") + "::OnStart";
- end;
- OnMobDead2:
- donpcevent instance_npcname("#morse_cave_wave_3") + "::OnStop";
- donpcevent instance_npcname("#morse_cave_boss_talk") + "::OnStop";
- donpcevent instance_npcname("#morse_cave_wave_3_mobs") + "::OnStop";
- sleep 3000;
- .@reaper$ = instance_npcname("Reaper Yanku#RZ Event_6");
- enablenpc .@reaper$;
- sleep 1000;
- npctalk "Reaper Yanku: Sigh, Necromancer, why did you have to die so quickly?", .@reaper$;
- sleep 3000;
- npctalk "Reaper Yanku: Don't be so happy!", .@reaper$;
- sleep 3000;
- npctalk "Reaper Yanku: Now that Lord Morroc has fully recovered his strength, you're as good as dead!", .@reaper$;
- sleep 3000;
- npctalk "Reaper Yanku: We'll meet again. *Chuckle*", .@reaper$;
- sleep 2000;
- hideonnpc .@reaper$;
- enablenpc instance_npcname("#RZ Move_17a");
- specialeffect EF_THUNDERSTORM,AREA, .@reaper$; // officially Morocc Necromancer#RZ1 display the effects but they have the same coordinates
- sleep 1000;
- specialeffect EF_LORD,AREA, .@reaper$;
- specialeffect EF_THUNDERSTORM,AREA, .@reaper$;
- sleep 1000;
- specialeffect EF_LORD,AREA, .@reaper$;
- end;
- }
- 1@rev,1,1,0 script #morse_cave_wave_3 HIDDEN_WARP_NPC,{
- end;
- OnStart:
- enablenpc instance_npcname("#morse_cave_wave_3");
- initnpctimer;
- end;
- OnTimer7000:
- stopnpctimer;
- donpcevent instance_npcname("#morse_cave_wave_3_mobs") + "::OnStart";
- end;
- OnStop:
- disablenpc instance_npcname("#morse_cave_wave_3");
- stopnpctimer;
- end;
- }
- 1@rev,1,1,0 script #morse_cave_boss_talk HIDDEN_WARP_NPC,{
- end;
- OnStart:
- initnpctimer;
- end;
- OnTimer8000:
- .@r = rand(4);
- if (.@r == 0)
- unittalk 'boss_id, "Morocc Necromancer: We the soldiers of Morroc know no mercy!";
- else if (.@r == 1)
- unittalk 'boss_id, "Morocc Necromancer: You're doing good so far. *Giggle*";
- else if (.@r == 2)
- unittalk 'boss_id, "Morocc Necromancer: I see you're weakening, though.";
- else
- unittalk 'boss_id, "Morocc Necromancer: Feel the power of his army!";
- initnpctimer;
- end;
- OnTimer25000:
- initnpctimer;
- end;
- OnStop:
- disablenpc instance_npcname("#morse_cave_boss_talk");
- stopnpctimer;
- end;
- }
- 1@rev,1,1,0 script #morse_cave_wave_3_mobs HIDDEN_WARP_NPC,{
- end;
- OnStart:
- enablenpc instance_npcname("#morse_cave_wave_3_mobs");
- initnpctimer;
- setarray 'coord[0],
- 112,57,
- 121,47,
- 112,38,
- 120,54,
- 119,40,
- 104,40,
- 102,48;
- 'num_coord = getarraysize('coord) / 2;
- end;
- OnTimer25000:
- for ( .@i = 0; .@i < 'num_coord; .@i++ ) {
- .@last = ( 'num_coord - .@i - 1 ) * 2;
- .@r = rand( 'num_coord - .@i ) * 2;
- setarray .@xy[0], 'coord[.@r], 'coord[.@r+1];
- setarray 'coord[.@r], 'coord[.@last], 'coord[.@last+1];
- setarray 'coord[.@last], .@xy[0], .@xy[1];
- }
- .@label$ = instance_npcname("#morse_cave_wave_3_mobs") + "::OnMobDead";
- if (mobcount( 'map_rev$, .@label$ ) < 100) { // stop to 100 mobs for performance
- monster 'map_rev$,'coord[0],'coord[1], "Morroc's Ghoul", 3001,1, .@label$; // EP14_MORS_MOB1
- monster 'map_rev$,'coord[2],'coord[3], "Morroc's Ghoul", 3001,1, .@label$; // EP14_MORS_MOB1
- monster 'map_rev$,'coord[4],'coord[5], "Morroc's Ghoul", 3001,1, .@label$; // EP14_MORS_MOB1
- monster 'map_rev$,'coord[6],'coord[7], "Morroc's Osiris", 3002,1, .@label$; // EP14_MORS_MOB2
- monster 'map_rev$,'coord[8],'coord[9], "Morroc's Archer Skeleton", 3003,1, .@label$; // EP14_MORS_MOB3
- monster 'map_rev$,'coord[10],'coord[11], "Morroc's Wraith", 3004,1, .@label$; // EP14_MORS_MOB4
- if (rand(100) < 20)
- monster 'map_rev$,'coord[12],'coord[12], "Morroc's Archer Skeleton", 3003,1, .@label$; // EP14_MORS_MOB3
- else
- monster 'map_rev$,'coord[12],'coord[13], "Morroc's Verit", 3005,1, .@label$; // EP14_MORS_MOB5
- // inaccurate
- areamonster 'map_rev$,102,38,121,57, "#Poison", 3008,1, .@label$; // EP14_MORS_HIDDEN
- }
- initnpctimer;
- end;
- OnStop:
- stopnpctimer;
- killmonster 'map_rev$, instance_npcname("#morse_cave_wave_3_mobs") + "::OnMobDead";
- disablenpc instance_npcname("#morse_cave_wave_3_mobs");
- end;
- OnMobDead:
- end;
- }
- // 1@rev,106,57,0 script #Battle_3RZ2 HIDDEN_WARP_NPC,{
- // 1@rev,120,54,0 script #Battle_3RZ3 HIDDEN_WARP_NPC,{
- // 1@rev,120,55,0 script #Battle_3RZ4 HIDDEN_WARP_NPC,{
- // 1@rev,120,56,0 script #Battle_3RZ5 HIDDEN_WARP_NPC,{
- // 1@rev,120,57,0 script #Battle_3RZ6 HIDDEN_WARP_NPC,{
- // 1@rev,120,58,0 script #Battle_3RZ7 HIDDEN_WARP_NPC,{
- 1@rev,112,56,3 script #RZ Move_17a PORTAL,{
- mes "Do you want to exit through the portal?";
- next;
- if (select( "No.", "Yes." ) == 2) {
- mes "- Teleporting... -";
- close2;
- warp "moro_cav",59,63;
- end;
- }
- end;
- OnInstanceInit:
- 'map_rev$ = instance_mapname("1@rev");
- 'status_battle[0] = 0;
- 'status_battle[1] = 0;
- 'status_battle[2] = 0;
- // Entrance
- disablenpc instance_npcname("#RZ Event_1");
- disablenpc instance_npcname("Reaper Yanku#RZ Event_2");
- // Weakened Morroc
- disablenpc instance_npcname("#RZ Event_3");
- disablenpc instance_npcname("Weakened Morroc#RZ1");
- disablenpc instance_npcname("Weakened Morroc#control");
- // Battle 1
- disablenpc instance_npcname("Reaper Yanku#RZ Event_3");
- disablenpc instance_npcname("Reaper Yanku#RZ Event_4");
- disablenpc instance_npcname("#Battle_1RZ1");
- disablenpc instance_npcname("#Battle_1RZ2");
- disablenpc instance_npcname("#RZ Memorial Effect 1");
- disablenpc instance_npcname("#RZ Memorial Effect 2");
- disablenpc instance_npcname("#morse_cave_wave_1");
- for ( .@i = 1; .@i <= 12; .@i++ )
- disablenpc instance_npcname( "#Pause Effect RZ" + .@i );
- // Battle 2
- disablenpc instance_npcname("Reaper Yanku#RZ Event_5");
- disablenpc instance_npcname("#RZ Memorial Effect 3");
- disablenpc instance_npcname("#morse_cave_wave_2");
- disablenpc instance_npcname("#Battle_2RZ1");
- for ( .@i = 1; .@i <= 12; .@i++ )
- disablenpc instance_npcname( "#Pause Effecto RZ" + .@i );
- // Battle 3
- disablenpc instance_npcname("#morse_cave_3");
- disablenpc instance_npcname("#morse_cave_wave_3");
- disablenpc instance_npcname("Reaper Yanku#RZ Event_6");
- disablenpc instance_npcname("#Battle_3RZ1");
- disablenpc instance_npcname("Morocc Necromancer#RZ1");
- disablenpc instance_npcname("#RZ Move_17a");
- // Debuff - Battle 1 & 2
- for ( .@i = 1; .@i <= 15; .@i++ )
- disablenpc instance_npcname( "#RZ Debuff_" + .@i );
- // reload
- if ('party_id > 0) {
- getpartymember 'party_id, 1, .@char_id;
- getpartymember 'party_id, 2, .@account_id;
- for ( .@i = 0; .@i < $@partymembercount; .@i++ ) {
- if (isloggedin(.@account_id[.@i],.@char_id[.@i]) == false)
- continue;
- if (strcharinfo(3,.@char_id[.@i]) == 'map_rev$)
- pcblockmove .@account_id[.@i], false;
- }
- }
- end;
- }
- /*
- // Original warps
- // Entrance -> Weakened Morroc
- 1@rev,63,181,0 warp2 #RZ Move_30 10,10,1@rev,103,177
- 1@rev,47,181,0 warp2 #RZ Move_31 10,10,1@rev,103,177
- 1@rev,31,181,0 warp2 #RZ Move_32 10,10,1@rev,103,177
- // Weakened Morroc -> Battle Wave 1a
- 1@rev,106,172,0 warp2 #RZ Move_1 10,10,1@rev,33,117
- 1@rev,106,172,0 warp2 #RZ Move_2 10,10,1@rev,33,117
- 1@rev,117,172,0 warp2 #RZ Move_3 10,10,1@rev,33,117
- 1@rev,117,183,0 warp2 #RZ Move_4 10,10,1@rev,33,117
- // Weakened Morroc -> Battle Wave 1b
- 1@rev,106,172,0 warp2 #RZ Move_1 10,10,1@rev,112,116
- 1@rev,106,172,0 warp2 #RZ Move_2 10,10,1@rev,112,116
- 1@rev,117,172,0 warp2 #RZ Move_3 10,10,1@rev,112,116
- 1@rev,117,183,0 warp2 #RZ Move_4 10,10,1@rev,112,116
- // Battle Wave 1a -> Battle Wave 2
- 1@rev,28,125,0 warp2 #RZ Move_5 10,10,1@rev,31,50
- 1@rev,28,114,0 warp2 #RZ Move_6 10,10,1@rev,31,50
- 1@rev,39,114,0 warp2 #RZ Move_7 10,10,1@rev,31,50
- 1@rev,39,125,0 warp2 #RZ Move_8 10,10,1@rev,31,50
- // Battle Wave 1a -> Prontera
- 1@rev,28,125,0 warp2 #RZ Move_5a 10,10,prontera,97,167
- 1@rev,28,114,0 warp2 #RZ Move_6a 10,10,prontera,97,167
- 1@rev,39,114,0 warp2 #RZ Move_7a 10,10,prontera,97,167
- 1@rev,39,125,0 warp2 #RZ Move_8a 10,10,prontera,97,167
- // Battle Wave 1b -> Battle Wave 2
- 1@rev,106,123,0 warp2 #RZ Move_9 10,10,1@rev,31,50
- 1@rev,106,112,0 warp2 #RZ Move_10 10,10,1@rev,31,50
- 1@rev,117,112,0 warp2 #RZ Move_11 10,10,1@rev,31,50
- 1@rev,117,123,0 warp2 #RZ Move_12 10,10,1@rev,31,50
- // Battle Wave 1b -> Prontera
- 1@rev,106,123,0 warp2 #RZ Move_9a 10,10,prontera,97,167
- 1@rev,106,112,0 warp2 #RZ Move_10a 10,10,prontera,97,167
- 1@rev,117,112,0 warp2 #RZ Move_11a 10,10,prontera,97,167
- 1@rev,117,123,0 warp2 #RZ Move_12a 10,10,prontera,97,167
- // Battle Wave 2 -> Final Battle
- 1@rev,28,53,0 warp2 #RZ Move_13 10,10,1@rev,104,48
- 1@rev,28,42,0 warp2 #RZ Move_14 10,10,1@rev,104,48
- 1@rev,39,42,0 warp2 #RZ Move_15 10,10,1@rev,104,48
- 1@rev,39,53,0 warp2 #RZ Move_16 10,10,1@rev,104,48
- // Battle Wave 2 -> Prontera
- 1@rev,28,53,0 warp2 #RZ Move_13a 10,10,prontera,97,167
- 1@rev,28,42,0 warp2 #RZ Move_14a 10,10,prontera,97,167
- 1@rev,39,42,0 warp2 #RZ Move_15a 10,10,prontera,97,167
- 1@rev,39,53,0 warp2 #RZ Move_16a 10,10,prontera,97,167
- */
|