From 93f61040ac281b84c038af72e322a03f60bc6e03 Mon Sep 17 00:00:00 2001 From: shennetsind Date: Sat, 19 Oct 2013 16:22:04 -0300 Subject: Instance Dungeons Update As requested by the community in http://hercules.ws/board/topic/1702-implement-rathena-npc/ we're merging in the latest of rAthena's dungeons, this includes the rewriting of all instance dungeons and the addition of 4 dungeons that were not present previously (BakonawaLake, BangungotHospital, BuwayaCave and OldGlastHeim). Update also includes the ability for instances to reset (or be destroyed if instance files were disabled/removed) upon @reloadscript, instance scripts are able to control to what stage the instances are to be reset via the instance_set_respawn (reload spawn) script command, OnInstanceInit labels are now triggered when the instance starts via instance_init (and upon reload), they may be used alongside instance variables (which are persistent to @reloadscript) to save players' progress. - NPC Changelog: -- npc/instances/EndlessTower.txt --- 2.2 Instance system rewrite. [Euphy] --- 2.3 Added some missing announcements. [Euphy] --- 2.4 Added GM management function. [Euphy] -- npc/instances/NydhoggsNest.txt --- 1.5 Instance system rewrite. [Euphy] --- 1.6 Added GM management NPCs. [Euphy] -- npc/instances/OrcsMemory.txt --- 1.7 Instance system rewrite. [Euphy] -- npc/instances/SealedShrine.txt --- 2.3 Instance system rewrite. [Euphy] -- npc/other/gm_npcs.txt --- 1.0 First version. [Euphy] -- npc/re/instances/BakonawaLake.txt --- 1.0 First version. [Euphy] --- 1.1 Added GM management NPC. [Euphy] -- npc/re/instances/BangungotHospital.txt --- 1.0 First version. [Euphy] --- 1.1 Added GM management function. [Euphy] -- npc/re/instances/BuwayaCave.txt --- 1.0 First version. [Euphy] -- npc/re/instances/HazyForest.txt --- 1.1 Instance system rewrite. [Euphy] -- npc/re/instances/MalangdoCulvert.txt --- 1.0b Fixed incorrect use of 'close'. [Joseph] --- 1.1 Instance system rewrite. [Euphy] -- npc/re/instances/OctopusCave.txt --- 1.1 Instance system rewrite. [Euphy] -- npc/re/instances/OldGlastHeim.txt --- 1.0 First version. [Euphy] Special Thanks to Haru, Uziel for their contributions to this update, and ossi0110 for helping us debug it. Signed-off-by: shennetsind --- npc/instances/OrcsMemory.txt | 1004 ++++++++++++------------------------------ 1 file changed, 284 insertions(+), 720 deletions(-) (limited to 'npc/instances/OrcsMemory.txt') diff --git a/npc/instances/OrcsMemory.txt b/npc/instances/OrcsMemory.txt index 325b1a739..03fa2da05 100644 --- a/npc/instances/OrcsMemory.txt +++ b/npc/instances/OrcsMemory.txt @@ -3,11 +3,14 @@ //===== By: ================================================== //= L0ne_W0lf //===== Current Version: ===================================== -//= 1.6 +//= 1.7 //===== Description: ========================================= //= [Official Conversion] //= Relive the memory of an orc. -//===== Additional Comments: ================================= +//===== Description: ========================================= +//= [Official Conversion] +//= Relive the memory of an orc. +//===== Additional Comments: ================================= //= 1.0 First version. [L0ne_W0lf] //= 1.1 First round of bugfixes. (bugreport:3928) [L0ne_W0lf] //= Fixed some npcs calling wrong events. @@ -27,7 +30,12 @@ //= 1.4 Fixed donpcevent calling non-existant npc. (bugreport:4039) [L0ne_W0lf] //= 1.5 Fixed a checkquest condition never setting quest. [L0ne_W0lf] //= 1.6 Added 'instance_check_party' command to the script for proper checking if -//= the invoking party meets the requirements to join the Memorial Dungeon. +//= the invoking party meets the requirements to join the Memorial Dungeon. +//= 1.7 Instance system rewrite. [Euphy] +//============================================================ + +1@orcs mapflag src4instance +2@orcs mapflag src4instance //============================================================ // Entrance @@ -35,153 +43,77 @@ gef_fild10,242,202,0 script Dimensional Gorge Piece 406,{ set .@party_id,getcharid(1); - set .@ins_mas,getpartyleader(.@party_id,1); set .@p_name$,getpartyname(.@party_id); - set .@p_leader$,rid2name(.@ins_mas); set .@md_name$,"Orc's Memory"; - if(!instance_check_party(.@party_id,2,30,80)){ - mes "I'm sorry but your Party does not meet the requirements to join the Memorial Dungeon."; + if (!instance_check_party(.@party_id,2,30,80)) { + mes "Only users between Levels ^ff000030 ~ 80^000000 can enter this Dungeon."; close; } set .@orctime,checkquest(12059,PLAYTIME); if (.@orctime == -1) { - if (.@ins_mas == getcharid(3)) { + if (getcharid(0) == getpartyleader(.@party_id,2)) { mes "Party status confirmed. Would you like to book entrance to the "+.@md_name$+"?"; next; switch(select("Reserve the "+.@md_name$+":Enter the Dungeon:Cancel")) { case 1: set .@instance,instance_create(.@md_name$,.@party_id); if (.@instance < 0) { - mes "Party Name: "+.@p_name$+""; - mes "Party Leader: "+.@p_leader$+""; + mes "Party Name: "+.@p_name$; + mes "Party Leader: "+strcharinfo(0); mes "^0000ff"+.@md_name$+" ^000000 - Reservation Failed."; close; - } else { - mes "^0000ff"+.@md_name$+"^000000- Attempting to book an entrance"; - mes "After making a reservation, you have to select 'Enter the Dungeon' from the menu if you wish to enter the "+.@md_name$+"."; - for( set .@i, 1; .@i <= 2; set .@i, .@i + 1 ) { - if( instance_attachmap(.@i + "@orcs", .@instance) == "" ) - break; - } - if( .@i < 2 ) { - instance_destroy(.@instance); - close; - } - instance_attach(.@instance); - instance_set_timeout 7200,300,.@instance; - instance_init(.@instance); - - // First Floor - donpcevent instance_npcname("#Resurrect Monsters1", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("#Resurrect Monsters2", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("#Resurrect Monsters3", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("#Resurrect Monsters4", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("B1 Area 1", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("B1 Area 2", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("B1 Area 3", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("B1 Area 4", instance_id())+"::OnInstanceInit"; - disablenpc instance_npcname("Kurger#1-2", instance_id()); - - // Second Floor - donpcevent instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("Torch#1-1", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("Torch#1-2", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("Torch#1-3", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("Torch#1-4", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("Torch#2-2", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("Torch#2-3", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("Torch#2-4", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("Torch#3-2", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("Torch#3-3", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("Torch#3-4", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("#Warp2-1", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("#Warp2-2", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("#Warp2-3", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("#Boss Control", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("#Warp Outside Orc Dun", instance_id())+"::OnInstanceInit"; - donpcevent instance_npcname("Kruger#", instance_id())+"::OnInstanceInit"; - disablenpc instance_npcname("Kruger#2-2", instance_id()); - close; } - case 2: - if (has_instance("1@orcs") == "") { - mes "Memorial Dungeon "+.@md_name$+" does not exist."; - mes "The party leader has not reserved entrance to the dungeon yet."; - next; - mes "Once the reservation is complete, the dungeon will be generated."; - mes "If your dungeon has been destroyed you must wait 7 days before re-entering."; - close; + mes "^0000ff"+.@md_name$+"^000000- Attempting to book an entrance"; + for( set .@i, 1; .@i <= 2; set .@i, .@i + 1 ) { + if( instance_attachmap(.@i + "@orcs", .@instance) == "" ) + break; } - if((party_instance_id3 != 0) && (party_instance_id3 != getcharid(1))) { - mes "The Memorial Dungeon "+.@md_name$+" does not exist."; - mes "The Memorial Dungeon has been destroyed by the Party Leader or because of the time limit. Please try again after 2 hours."; + if( .@i < 2 ) { + instance_destroy(.@instance); close; } - mapannounce "gef_fild10", .@p_leader$ + " of the party, " + .@p_name$ + " is entering the "+.@md_name$+".",bc_map,"0x00ff99"; - if (checkquest(12059)== -1) setquest 12059; - set party_instance_id3,getcharid(1); - warp "1@orcs",179,15; - end; + instance_set_timeout 7200,300,.@instance; + instance_init(.@instance); + mes "After making a reservation, you have to select 'Enter the Dungeon' from the menu if you wish to enter the "+.@md_name$+"."; + close; + case 2: + callsub L_Enter,0; case 3: close; } } - switch(select(.@md_name$ + " Enter the Memorial Dungeon:Cancel")) { - case 1: - if (has_instance("1@orcs") == "") { - mes "The Memorial Dungeon "+.@md_name$+" does not exist."; - mes "The Memorial Dungeon has been destroyed by the Party Leader or because of the time limit. Please try again after 2 hours."; - close; - } - if((party_instance_id3 != 0) && (party_instance_id3 != getcharid(1))) { - mes "The Memorial Dungeon "+.@md_name$+" does not exist."; - mes "The Memorial Dungeon has been destroyed by the Party Leader or because of the time limit. Please try again after 2 hours."; - close; - } - mapannounce "gef_fild10",.@p_name$+" Party's member "+.@p_leader$+" has entered the "+.@md_name$+".",bc_map,"0x00ff99"; - set party_instance_id3,getcharid(1); - if (checkquest(12059)== -1) setquest 12059; - warp "1@orcs",179,15; + if(select(.@md_name$ + " Enter the Memorial Dungeon:Cancel") == 2) end; - case 2: - close; - } + callsub L_Enter,1; } else if (.@orctime == 0 || .@orctime == 1) { mes "You can enter the Dungeon if it has been generated."; next; - switch(select("Enter the Dungeon "+.@md_name$+":Cancel")) { - case 1: - if (has_instance("1@orcs") == "") { - mes "The Memorial Dungeon "+.@md_name$+" does not exist."; - mes "The Memorial Dungeon has been destroyed by the Party Leader or because of the time limit. Please try again after 2 hours."; - close; - } - if((party_instance_id3 != 0) && (party_instance_id3 != getcharid(1))) { - mes "The Memorial Dungeon "+.@md_name$+" does not exist."; - mes "The Memorial Dungeon has been destroyed by the Party Leader or because of the time limit. Please try again after 2 hours."; - close; - } - mapannounce "gef_fild10",.@p_name$+" Party's member "+.@p_leader$+" has entered the "+.@md_name$+".",bc_map,"0x00ff99"; - if (checkquest(12059)== -1) setquest 12059; - set party_instance_id3,getcharid(1); - warp "1@orcs",179,15; - end; - case 2: + if(select("Enter the Dungeon "+.@md_name$+":Cancel") == 2) close; - } - } - else if (.@orctime == 2) { + callsub L_Enter,0; + } else if (.@orctime == 2) { mes "^0000ffAll records and after-effects related to the Orc's Memory Dungeon are deleted. You can now regenerate or re-enter the dungeon.^000000"; - set party_instance_id3,0; erasequest 12059; close; } mes "In order to generate a dungeon you must be the Party Leader and have at least 2 members in the party."; close; +L_Enter: + if (has_instance("1@orcs") == "") { + mes "Memorial Dungeon "+.@md_name$+" does not exist."; + mes "The party leader has not reserved entrance to the dungeon yet."; + next; + mes "Once the reservation is complete, the dungeon will be generated."; + mes "If your dungeon has been destroyed you must wait 7 days before re-entering."; + close; + } else { + mapannounce "gef_fild10", .@p_leader$ + " of the party, " + .@p_name$ + " is entering the "+.@md_name$+".",bc_map,"0x00ff99"; + if (checkquest(12059)== -1) setquest 12059; + warp "1@orcs",179,15; + end; + } } gef_fild10,238,202,6 script Mad Scientist#orc 865,{ @@ -189,10 +121,7 @@ gef_fild10,238,202,6 script Mad Scientist#orc 865,{ mes "The Mad Scientist doesn't seem to notice you and keeps mumbling to himself..."; close; } - if (mad > 1) { - set mad,1; - } - else if (mad < 1) { + if (mad == 0) { mes "[Mad Scientist]"; mes "Haha, no Orcs are coming near me!"; mes "The power of the Dimensional Gorge is undefeatable!!"; @@ -211,43 +140,39 @@ gef_fild10,238,202,6 script Mad Scientist#orc 865,{ next; break; } - switch(select("Oh? Like what, travel to alternate space?")) { - case 1: - mes "[Mad Scientist]"; - mes "Very smart! I have actually just done that! See that statue over there? It's not your normal Monolith!"; - next; - mes "[Mad Scientist]"; - mes "I have created it with a combination of our technology and the unlimited energy I discovered from the Gorge! Want to try it?"; - next; - break; - } - switch(select("... Um, that doesn't sound legal?")) { - case 1: - mes "[Mad Scientist]"; - mes "Hey, since when did something so interesting have to be legal!? How about it! You can talk to the Orcs! C'mon!"; - next; - mes "[Mad Scientist]"; - mes "Chances are they'll just give you lots of instructions once they see you, so just wing it! They're always saying the same thing, to the point where I memorized them!"; - next; - break; - } + select("Oh? Like what, travel to alternate space?"); + mes "[Mad Scientist]"; + mes "Very smart! I have actually just done that! See that statue over there? It's not your normal Monolith!"; + next; + mes "[Mad Scientist]"; + mes "I have created it with a combination of our technology and the unlimited energy I discovered from the Gorge! Want to try it?"; + next; + select("...Um, that doesn't sound legal?"); + mes "[Mad Scientist]"; + mes "Hey, since when did something so interesting have to be legal!? How about it! You can talk to the Orcs! C'mon!"; + next; + mes "[Mad Scientist]"; + mes "Chances are they'll just give you lots of instructions once they see you, so just wing it! They're always saying the same thing, to the point where I memorized them!"; + next; switch(select("Alright... What do I do?:Umm, maybe not.")) { case 1: mes "[Mad Scientist]"; mes "Very good! Just sit in the hands of this statue! And try to act natural when you're in there!"; set mad,1; - break; + close; case 2: mes "[Mad Scientist]"; mes "Oh fine, be that way!"; - break; + close; } - } - else { + } else if (mad == 1) { mes "[Mad Scientist]"; mes "Hmm? Put your hand on that Monemus Statue if you want to experience traveling through dimensions!"; + close; + } else { + set mad,1; + end; } - close; } // Orc's Memory Floor 1 @@ -256,72 +181,43 @@ gef_fild10,238,202,6 script Mad Scientist#orc 865,{ end; OnInstanceInit: - disablenpc instance_npcname("#Resurrect Monsters1", instance_id()); + disablenpc instance_npcname("#Resurrect Monsters1"); end; OnDisable: - killmonster "1@orcs",instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + stopnpctimer; + killmonster instance_mapname("1@orcs"),instance_npcname("#Resurrect Monsters1")+"::OnMyMobDead"; end; OnEnable: - enablenpc instance_npcname("#Resurrect Monsters1", instance_id()); - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Warrior",1023,1,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + enablenpc instance_npcname("#Resurrect Monsters1"); + monster instance_mapname("1@orcs"),0,0,"Orc Warrior",1023,30,instance_npcname("#Resurrect Monsters1")+"::OnMyMobDead"; end; OnMyMobDead: - set .@callnum,30; - set .@c_mob_num,mobcount("1@orcs",instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"); - set .@mob_dead_num,.@callnum - .@c_mob_num; + set .@map$, instance_mapname("1@orcs"); + set .@mob_dead_num, 30 - mobcount(.@map$,instance_npcname("#Resurrect Monsters1")+"::OnMyMobDead"); if (.@mob_dead_num > 0) { set .@mob_ran,rand(1,30); if (.@mob_ran > 29) { - monster "1@orcs",0,0,"Orc Warrior",1023,.@mob_dead_num,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + monster .@map$,0,0,"Orc Warrior",1023,.@mob_dead_num,instance_npcname("#Resurrect Monsters1")+"::OnMyMobDead"; } else if ((.@mob_ran > 28) && (.@mob_ran < 30)) { - monster "1@orcs",0,0,"High Orc",1213,.@mob_dead_num,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + monster .@map$,0,0,"High Orc",1213,.@mob_dead_num,instance_npcname("#Resurrect Monsters1")+"::OnMyMobDead"; if (rand(1,10) == 9) { - instance_announce -1, "High Orc: We need more defenses! Get more people here!",bc_map,"0xff4444"; + mapannounce .@map$, "High Orc: We need more defenses! Get more people here!",bc_map,"0xff4444"; } } else if ((.@mob_ran > 26) && (.@mob_ran < 29)) { - areamonster "1@orcs",41,91,51,81,"High Orc",1213,.@mob_dead_num,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + areamonster .@map$,41,91,51,81,"High Orc",1213,.@mob_dead_num,instance_npcname("#Resurrect Monsters1")+"::OnMyMobDead"; if (rand(1,10) == 9) { - instance_announce -1, "Where are the High Orcs!? Get them to stop the enemies!",bc_map,"0xff4444"; + mapannounce .@map$, "Where are the High Orcs!? Get them to stop the enemies!",bc_map,"0xff4444"; } } else { - areamonster "1@orcs",17,187,27,177,"High Orc",1213,.@mob_dead_num,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + areamonster .@map$,17,187,27,177,"High Orc",1213,.@mob_dead_num,instance_npcname("#Resurrect Monsters1")+"::OnMyMobDead"; if (rand(1,5) == 3) { - instance_announce -1, "Caution: The army's starting to concentrate at Zone No. 4.",bc_map,"0x77ff77"; + mapannounce .@map$, "Caution: The army's starting to concentrate at Zone No. 4.",bc_map,"0x77ff77"; } if (rand(1,100) == 50) { initnpctimer; @@ -331,12 +227,13 @@ OnMyMobDead: end; OnTimer10: - instance_announce -1, "Shouts of the Chief Orc of Safeguards: Looks like this will take longer than expected. Summon the Stalactic Golems!",bc_map,"0xff4444"; + mapannounce instance_mapname("1@orcs"), "Shouts of the Chief Orc of Safeguards: Looks like this will take longer than expected. Summon the Stalactic Golems!",bc_map,"0xff4444"; end; OnTimer4010: - instance_announce -1, "Stalactic Golems are digging out of the deep underground.",bc_map,"0x77ff77"; - areamonster "1@orcs",17,187,27,177,"Stalactic Golem",1278,20,instance_npcname("#Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + set .@map$, instance_mapname("1@orcs"); + mapannounce .@map$, "Stalactic Golems are digging out of the deep underground.",bc_map,"0x77ff77"; + areamonster .@map$,17,187,27,177,"Stalactic Golem",1278,20,instance_npcname("#Resurrect Monsters1")+"::OnMyMobDead"; stopnpctimer; end; } @@ -345,44 +242,29 @@ OnTimer4010: end; OnInstanceInit: - disablenpc instance_npcname("#Resurrect Monsters2", instance_id()); + disablenpc instance_npcname("#Resurrect Monsters2"); end; OnDisable: - killmonster "1@orcs",instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; + killmonster instance_mapname("1@orcs"),instance_npcname("#Resurrect Monsters2")+"::OnMyMobDead"; end; OnEnable: - enablenpc instance_npcname("#Resurrect Monsters2", instance_id()); - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Trained Wolf",1106,1,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; + enablenpc instance_npcname("#Resurrect Monsters2"); + monster instance_mapname("1@orcs"),0,0,"Trained Wolf",1106,15,instance_npcname("#Resurrect Monsters2")+"::OnMyMobDead"; end; OnMyMobDead: - set .@callnum,15; - set .@c_mob_num,mobcount("1@orcs",instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"); - set .@mob_dead_num,.@callnum - .@c_mob_num; + set .@map$, instance_mapname("1@orcs"); + set .@mob_dead_num, 15 - mobcount(.@map$,instance_npcname("#Resurrect Monsters2")+"::OnMyMobDead"); if (rand(1,30) > 15) { if (.@mob_dead_num > 0) { - monster "1@orcs",0,0,"Trained Wolf",1106,.@mob_dead_num,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; + monster .@map$,0,0,"Trained Wolf",1106,.@mob_dead_num,instance_npcname("#Resurrect Monsters2")+"::OnMyMobDead"; } } else { if (.@mob_dead_num > 0) { - areamonster "1@orcs",17,187,27,177,"Trained Wolf",1106,.@mob_dead_num,instance_npcname("#Resurrect Monsters2", instance_id())+"::OnMyMobDead"; + areamonster .@map$,17,187,27,177,"Trained Wolf",1106,.@mob_dead_num,instance_npcname("#Resurrect Monsters2")+"::OnMyMobDead"; } } end; @@ -392,53 +274,38 @@ OnMyMobDead: end; OnInstanceInit: - disablenpc instance_npcname("#Resurrect Monsters3", instance_id()); + disablenpc instance_npcname("#Resurrect Monsters3"); end; OnDisable: - killmonster "1@orcs",instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; + killmonster instance_mapname("1@orcs"),instance_npcname("#Resurrect Monsters3")+"::OnMyMobDead"; end; OnEnable: - enablenpc instance_npcname("#Resurrect Monsters3", instance_id()); - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "1@orcs",0,0,"Orc Archer",1189,1,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; + enablenpc instance_npcname("#Resurrect Monsters3"); + monster instance_mapname("1@orcs"),0,0,"Orc Archer",1189,15,instance_npcname("#Resurrect Monsters3")+"::OnMyMobDead"; end; OnMyMobDead: - set .@callnum,15; - set .@c_mob_num,mobcount("1@orcs",instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"); - set .@mob_dead_num,.@callnum - .@c_mob_num; + set .@map$, instance_mapname("1@orcs"); + set .@mob_dead_num, 15 - mobcount(.@map$,instance_npcname("#Resurrect Monsters3")+"::OnMyMobDead"); set .@mob_ran,rand(1,30); if (.@mob_ran > 29) { if (.@mob_dead_num > 0) { - monster "1@orcs",0,0,"Orc Archer",1189,.@mob_dead_num,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; + monster .@map$,0,0,"Orc Archer",1189,.@mob_dead_num,instance_npcname("#Resurrect Monsters3")+"::OnMyMobDead"; } } else if ((.@mob_ran > 26) && (.@mob_ran < 30)) { if (.@mob_dead_num > 0) { - areamonster "1@orcs",43,155,47,159,"Orc Archer",1189,.@mob_dead_num,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; + areamonster .@map$,43,155,47,159,"Orc Archer",1189,.@mob_dead_num,instance_npcname("#Resurrect Monsters3")+"::OnMyMobDead"; if (rand(1,3) == 3) { - instance_announce -1, "High Orc: Attack them from behind! Cut off their support!",bc_map,"0xff4444"; + mapannounce .@map$, "High Orc: Attack them from behind! Cut off their support!",bc_map,"0xff4444"; } } } else { if (.@mob_dead_num > 0) { - areamonster "1@orcs",17,187,27,177,"Orc Archer",1189,.@mob_dead_num,instance_npcname("#Resurrect Monsters3", instance_id())+"::OnMyMobDead"; + areamonster .@map$,17,187,27,177,"Orc Archer",1189,.@mob_dead_num,instance_npcname("#Resurrect Monsters3")+"::OnMyMobDead"; } } end; @@ -448,89 +315,83 @@ OnMyMobDead: end; OnInstanceInit: - enablenpc instance_npcname("#Resurrect Monsters4", instance_id()); - areamonster "1@orcs",98,35,178,115,"Anopheles",1627,1,instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - areamonster "1@orcs",98,35,178,115,"Anopheles",1627,1,instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - areamonster "1@orcs",98,35,178,115,"Anopheles",1627,1,instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - areamonster "1@orcs",98,35,178,115,"Anopheles",1627,1,instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - areamonster "1@orcs",98,35,178,115,"Anopheles",1627,1,instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - areamonster "1@orcs",98,35,178,115,"Anopheles",1627,1,instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - areamonster "1@orcs",98,35,178,115,"Anopheles",1627,1,instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - areamonster "1@orcs",98,35,178,115,"Anopheles",1627,1,instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - areamonster "1@orcs",98,35,178,115,"Anopheles",1627,1,instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - areamonster "1@orcs",98,35,178,115,"Anopheles",1627,1,instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"; + enablenpc instance_npcname("#Resurrect Monsters4"); + areamonster instance_mapname("1@orcs"),98,35,178,115,"Anopheles",1627,10,instance_npcname("#Resurrect Monsters4")+"::OnMyMobDead"; end; OnMyMobDead: - set .@callnum,10; - set .@c_mob_num,mobcount("1@orcs",instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"); - set .@mob_dead_num,.@callnum - .@c_mob_num; + set .@map$, instance_mapname("1@orcs"); + set .@mob_dead_num, 10 - mobcount(.@map$,instance_npcname("#Resurrect Monsters4")+"::OnMyMobDead"); if (.@mob_dead_num > 0) { - monster "1@orcs",0,0,"Anopheles",1627,.@mob_dead_num,instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"; + monster .@map$,0,0,"Anopheles",1627,.@mob_dead_num,instance_npcname("#Resurrect Monsters4")+"::OnMyMobDead"; } end; OnDisable: - killmonster "1@orcs",instance_npcname("#Resurrect Monsters4", instance_id())+"::OnMyMobDead"; + killmonster instance_mapname("1@orcs"),instance_npcname("#Resurrect Monsters4")+"::OnMyMobDead"; end; } -1@orcs,180,29,4 script Kurger#1-1 433,{ - donpcevent instance_npcname("Kurger#1-2", instance_id())+"::OnEnable"; +1@orcs,180,29,4 script Kruger#1-1 433,{ + donpcevent instance_npcname("Kruger#1-2")+"::OnEnable"; end; } -1@orcs,180,29,4 script Kurger#1-2 433,{ +1@orcs,180,29,4 script Kruger#1-2 433,{ + end; + +OnInstanceInit: + disablenpc instance_npcname("Kruger#1-2"); end; OnEnable: - disablenpc instance_npcname("Kurger#1-1", instance_id()); - enablenpc instance_npcname("Kurger#1-2", instance_id()); + disablenpc instance_npcname("Kruger#1-1"); + enablenpc instance_npcname("Kruger#1-2"); initnpctimer; end; OnTimer10: - instance_announce -1, "Kruger: Damn... What took you so long!! I don't have all day!!",bc_map,"0xffff00"; + mapannounce instance_mapname("1@orcs"), "Kruger: Damn... What took you so long!! I don't have all day!!",bc_map,"0xffff00"; end; OnTimer5710: - instance_announce -1, "Kruger: My plan was to let our comrades open the gate, but it's all ruined since I got busted by the Orc Shaman.",bc_map,"0xffff00"; + mapannounce instance_mapname("1@orcs"), "Kruger: My plan was to let our comrades open the gate, but it's all ruined since I got busted by the Orc Shaman.",bc_map,"0xffff00"; end; OnTimer14610: - instance_announce -1, "Shouts of the Chief Orc of Safeguards: I smell a rat.. Send some patrols to the entrance!!",bc_map,"0xff4444"; + mapannounce instance_mapname("1@orcs"), "Shouts of the Chief Orc of Safeguards: I smell a rat.. Send some patrols to the entrance!!",bc_map,"0xff4444"; end; OnTimer20210: - instance_announce -1, "Kruger: Darn it.. They'll be here any minute. Ok. Listen to me now.",bc_map,"0xffff00"; + mapannounce instance_mapname("1@orcs"), "Kruger: Darn it.. They'll be here any minute. Ok. Listen to me now.",bc_map,"0xffff00"; end; OnTimer24910: - instance_announce -1, "Kruger: The Orc Shaman has sealed the 1st basement by dividing it into 4 zones. Each zone has one Enchanted Orc who has the power to unseal the next zone.",bc_map,"0xffff00"; + mapannounce instance_mapname("1@orcs"), "Kruger: The Orc Shaman has sealed the 1st basement by dividing it into 4 zones. Each zone has one Enchanted Orc who has the power to unseal the next zone.",bc_map,"0xffff00"; end; OnTimer34310: - instance_announce -1, "Kruger: Find those Enchanted Orcs and get rid of them to move to the next zone.",bc_map,"0xffff00"; + mapannounce instance_mapname("1@orcs"), "Kruger: Find those Enchanted Orcs and get rid of them to move to the next zone.",bc_map,"0xffff00"; end; OnTimer39710: - instance_announce -1, "Kruger: Try to avoid encountering Orcs other then the Enchanted ones. Everytime you kill a normal Orc, High Orcs will gather at the last path to the 2nd floor.",bc_map,"0xffff00"; + mapannounce instance_mapname("1@orcs"), "Kruger: Try to avoid encountering Orcs other then the Enchanted ones. Everytime you kill a normal Orc, High Orcs will gather at the last path to the 2nd floor.",bc_map,"0xffff00"; end; OnTimer49210: - instance_announce -1, "Kruger: In the worst case, the path to the 2nd floor could be completely blocked. For your own sake, you should be as sneaky as possible.",bc_map,"0xffff00"; + mapannounce instance_mapname("1@orcs"), "Kruger: In the worst case, the path to the 2nd floor could be completely blocked. For your own sake, you should be as sneaky as possible.",bc_map,"0xffff00"; end; OnTimer56310: - instance_announce -1, "Mission: Sneak in and get rid of the 'Enchanted Orcs'. Avoiding battles with other Orcs is the best way of getting into the 2nd floor.",bc_map,"0x44ffff"; - donpcevent instance_npcname("#Resurrect Monsters1", instance_id())+"::OnEnable"; - donpcevent instance_npcname("#Resurrect Monsters2", instance_id())+"::OnEnable"; - donpcevent instance_npcname("#Resurrect Monsters3", instance_id())+"::OnEnable"; - disablenpc instance_npcname("Kurger#1-2", instance_id()); + mapannounce instance_mapname("1@orcs"), "Mission: Sneak in and get rid of the 'Enchanted Orcs'. Avoiding battles with other Orcs is the best way of getting into the 2nd floor.",bc_map,"0x44ffff"; + donpcevent instance_npcname("#Resurrect Monsters1")+"::OnEnable"; + donpcevent instance_npcname("#Resurrect Monsters2")+"::OnEnable"; + donpcevent instance_npcname("#Resurrect Monsters3")+"::OnEnable"; + disablenpc instance_npcname("Kruger#1-2"); end; OnTimer60000: - areamonster "1@orcs",137,83,143,89,"Enchanted Orc",1023,1,instance_npcname("B1 Area Mobs", instance_id())+"::OnMyMobDead"; + areamonster instance_mapname("1@orcs"),137,83,143,89,"Enchanted Orc",1023,1,instance_npcname("B1 Area Mobs")+"::OnMyMobDead"; stopnpctimer; end; @@ -538,106 +399,106 @@ OnTimer60000: 1@orcs,168,125,0 script B1 Area 1 45,3,3,{ OnInstanceInit: - disablenpc instance_npcname("B1 Area 1", instance_id()); + disablenpc instance_npcname("B1 Area 1"); end; OnEnable: - enablenpc instance_npcname("B1 Area 1", instance_id()); - areamonster "1@orcs",103,105,109,111,"Enchanted Orc",1023,1,instance_npcname("B1 Area Mobs", instance_id())+"::OnMyMobDead1"; + enablenpc instance_npcname("B1 Area 1"); + areamonster instance_mapname("1@orcs"),103,105,109,111,"Enchanted Orc",1023,1,instance_npcname("B1 Area Mobs")+"::OnMyMobDead1"; end; OnTouch: - warp "1@orcs",168,130; + warp instance_mapname("1@orcs"),168,130; end; OnContinue: - donpcevent instance_npcname("B1 Area 2", instance_id())+"::OnEnable"; + donpcevent instance_npcname("B1 Area 2")+"::OnEnable"; initnpctimer; end; OnTimer10300: - instance_announce -1, "Kruger's Whisper: The Orcs here used to be my companions. They just lost their will ever since the Orc Shaman started to control them with her magic.",bc_map,"0xff4499"; + mapannounce instance_mapname("1@orcs"), "Kruger's Whisper: The Orcs here used to be my companions. They just lost their will ever since the Orc Shaman started to control them with her magic.",bc_map,"0xff4499"; end; OnTimer18700: - instance_announce -1, "Kruger's Whisper: There's nothing we can do but to defeat the Orc Shaman if we want to save the remaining tribes.",bc_map,"0xff4499"; + mapannounce instance_mapname("1@orcs"), "Kruger's Whisper: There's nothing we can do but to defeat the Orc Shaman if we want to save the remaining tribes.",bc_map,"0xff4499"; stopnpctimer; end; } 1@orcs,89,94,0 script B1 Area 2 45,3,3,{ OnInstanceInit: - disablenpc instance_npcname("B1 Area 2", instance_id()); + disablenpc instance_npcname("B1 Area 2"); end; OnEnable: - enablenpc instance_npcname("B1 Area 2", instance_id()); - areamonster "1@orcs",32,40,38,46,"Enchanted Orc",1023,1,instance_npcname("B1 Area Mobs", instance_id())+"::OnMyMobDead2"; + enablenpc instance_npcname("B1 Area 2"); + areamonster instance_mapname("1@orcs"),32,40,38,46,"Enchanted Orc",1023,1,instance_npcname("B1 Area Mobs")+"::OnMyMobDead2"; end; OnTouch: - warp "1@orcs",85,85; + warp instance_mapname("1@orcs"),85,85; end; OnContinue: - donpcevent instance_npcname("B1 Area 3", instance_id())+"::OnEnable"; + donpcevent instance_npcname("B1 Area 3")+"::OnEnable"; initnpctimer; end; OnTimer30300: - instance_announce -1, "Kruger's Whisper: I saw the bodies of our tribe. It seems that the Orc Shaman used those Orcs for her rituals.",bc_map,"0xff4499"; + mapannounce instance_mapname("1@orcs"), "Kruger's Whisper: I saw the bodies of our tribe. It seems that the Orc Shaman used those Orcs for her rituals.",bc_map,"0xff4499"; end; OnTimer37600: - instance_announce -1, "Kruger's Whisper: ... It all has to do with me. I am responsible for this evil.",bc_map,"0xff4499"; + mapannounce instance_mapname("1@orcs"), "Kruger's Whisper: ... It all has to do with me. I am responsible for this evil.",bc_map,"0xff4499"; stopnpctimer; end; } 1@orcs,38,105,0 script B1 Area 3 45,3,3,{ OnInstanceInit: - disablenpc instance_npcname("B1 Area 3", instance_id()); + disablenpc instance_npcname("B1 Area 3"); end; OnEnable: - enablenpc instance_npcname("B1 Area 3", instance_id()); - areamonster "1@orcs",19,177,25,183,"Enchanted Orc",1023,1,instance_npcname("B1 Area Mobs", instance_id())+"::OnMyMobDead3"; + enablenpc instance_npcname("B1 Area 3"); + areamonster instance_mapname("1@orcs"),19,177,25,183,"Enchanted Orc",1023,1,instance_npcname("B1 Area Mobs")+"::OnMyMobDead3"; end; OnTouch: - warp "1@orcs",38,110; + warp instance_mapname("1@orcs"),38,110; end; OnContinue: - donpcevent instance_npcname("B1 Area 4", instance_id())+"::OnEnable"; + donpcevent instance_npcname("B1 Area 4")+"::OnEnable"; initnpctimer; end; OnTimer30300: - instance_announce -1, "Please, hang in there!",bc_map,"0xff4499"; + mapannounce instance_mapname("1@orcs"), "Please, hang in there!",bc_map,"0xff4499"; end; OnTimer32700: - instance_announce -1, "We'll get some rest when we get to the 2nd basement after passing through here.",bc_map,"0xff4499"; + mapannounce instance_mapname("1@orcs"), "We'll get some rest when we get to the 2nd basement after passing through here.",bc_map,"0xff4499"; stopnpctimer; end; } 1@orcs,21,189,0 script B1 Area 4 45,3,3,{ OnInstanceInit: - disablenpc instance_npcname("B1 Area 4", instance_id()); + disablenpc instance_npcname("B1 Area 4"); end; OnEnable: - enablenpc instance_npcname("B1 Area 4", instance_id()); - donpcevent instance_npcname("#Resurrect Monsters1", instance_id())+"::OnDisable"; - donpcevent instance_npcname("#Resurrect Monsters2", instance_id())+"::OnDisable"; - donpcevent instance_npcname("#Resurrect Monsters3", instance_id())+"::OnDisable"; - donpcevent instance_npcname("#Resurrect Monsters4", instance_id())+"::OnDisable"; + enablenpc instance_npcname("B1 Area 4"); + donpcevent instance_npcname("#Resurrect Monsters1")+"::OnDisable"; + donpcevent instance_npcname("#Resurrect Monsters2")+"::OnDisable"; + donpcevent instance_npcname("#Resurrect Monsters3")+"::OnDisable"; + donpcevent instance_npcname("#Resurrect Monsters4")+"::OnDisable"; end; OnTouch: - warp "2@orcs",32,171; + warp instance_mapname("2@orcs"),32,171; end; } @@ -645,19 +506,19 @@ OnTouch: end; OnMyMobDead: - donpcevent instance_npcname("B1 Area 1", instance_id())+"::OnEnable"; + donpcevent instance_npcname("B1 Area 1")+"::OnEnable"; end; OnMyMobDead1: - donpcevent instance_npcname("B1 Area 1", instance_id())+"::OnContinue"; + donpcevent instance_npcname("B1 Area 1")+"::OnContinue"; end; OnMyMobDead2: - donpcevent instance_npcname("B1 Area 2", instance_id())+"::OnContinue"; + donpcevent instance_npcname("B1 Area 2")+"::OnContinue"; end; OnMyMobDead3: - donpcevent instance_npcname("B1 Area 3", instance_id())+"::OnContinue"; + donpcevent instance_npcname("B1 Area 3")+"::OnContinue"; end; } @@ -667,70 +528,40 @@ OnMyMobDead3: end; OnInstanceInit: - disablenpc instance_npcname("#2Resurrect Monsters1", instance_id()); + disablenpc instance_npcname("#2Resurrect Monsters1"); end; OnEnable: - enablenpc instance_npcname("#2Resurrect Monsters1", instance_id()); - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Vengeful Orc",1152,1,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + enablenpc instance_npcname("#2Resurrect Monsters1"); + monster instance_mapname("2@orcs"),0,0,"Vengeful Orc",1152,30,instance_npcname("#2Resurrect Monsters1")+"::OnMyMobDead"; end; OnDisable: - killmonster "2@orcs",instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + stopnpctimer; + killmonster instance_mapname("2@orcs"),instance_npcname("#2Resurrect Monsters1")+"::OnMyMobDead"; end; OnMyMobDead: - set .@callnum,30; - set .@c_mob_num,mobcount("2@orcs",instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"); - set .@mob_dead_num,.@callnum - .@c_mob_num; + set .@map$, instance_mapname("2@orcs"); + set .@mob_dead_num, 30 - mobcount(.@map$,instance_npcname("#2Resurrect Monsters1")+"::OnMyMobDead"); if (.@mob_dead_num > 0) { set .@mob_ran,rand(1,30); if (.@mob_ran > 29) { - monster "2@orcs",0,0,"Vengeful Orc",1152,.@mob_dead_num,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + monster .@map$,0,0,"Vengeful Orc",1152,.@mob_dead_num,instance_npcname("#2Resurrect Monsters1")+"::OnMyMobDead"; } else if ((.@mob_ran > 28) && (.@mob_ran < 30)) { - monster "2@orcs",0,0,"High Orc",1213,.@mob_dead_num,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; - set mob_ran2,rand(1,10); + monster .@map$,0,0,"High Orc",1213,.@mob_dead_num,instance_npcname("#2Resurrect Monsters1")+"::OnMyMobDead"; } else if ((.@mob_ran > 26) && (.@mob_ran < 29)) { - areamonster "2@orcs",157,112,167,122,"High Orc",1213,.@mob_dead_num,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + areamonster .@map$,157,112,167,122,"High Orc",1213,.@mob_dead_num,instance_npcname("#2Resurrect Monsters1")+"::OnMyMobDead"; if (rand(1,10) == 9) { - instance_announce -1, "Warning: High Orcs are gathering near area 3.",bc_map,"0xff4444"; + mapannounce .@map$, "Warning: High Orcs are gathering near area 3.",bc_map,"0xff4444"; } } else { - areamonster "2@orcs",173,13,183,23,"High Orc",1213,.@mob_dead_num,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + areamonster .@map$,173,13,183,23,"High Orc",1213,.@mob_dead_num,instance_npcname("#2Resurrect Monsters1")+"::OnMyMobDead"; if (rand(1,5) == 3) { - instance_announce -1, "Caution: The Forces have started to concentrate at the Shaman's Altar.",bc_map,"0x77ff77"; + mapannounce .@map$, "Caution: The Forces have started to concentrate at the Shaman's Altar.",bc_map,"0x77ff77"; } if (rand(1,70) == 50) { initnpctimer; @@ -740,12 +571,13 @@ OnMyMobDead: end; OnTimer10: - instance_announce -1, "Voice from somewhere: Foolish... Do you really think the altar would fall like that?",bc_map,"0xff4444"; + mapannounce instance_mapname("2@orcs"), "Voice from somewhere: Foolish... Do you really think the altar would fall like that?",bc_map,"0xff4444"; end; OnTimer4010: - instance_announce -1, "[ Wraiths were summoned by an unknown power ]",bc_map,"0x77ff77"; - areamonster "2@orcs",167,25,177,35,"Wraith",1475,30,instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnMyMobDead"; + set .@map$, instance_mapname("2@orcs"); + mapannounce .@map$, "[ Wraiths were summoned by an unknown power ]",bc_map,"0x77ff77"; + areamonster .@map$,167,25,177,35,"Wraith",1475,30,instance_npcname("#2Resurrect Monsters1")+"::OnMyMobDead"; stopnpctimer; end; } @@ -754,55 +586,40 @@ OnTimer4010: end; OnInstanceInit: - disablenpc instance_npcname("#2Resurrect Monsters3", instance_id()); + disablenpc instance_npcname("#2Resurrect Monsters3"); end; OnEnable: - enablenpc instance_npcname("#2Resurrect Monsters3", instance_id()); - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Orc Zombie",1153,1,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; + enablenpc instance_npcname("#2Resurrect Monsters3"); + monster instance_mapname("2@orcs"),0,0,"Orc Zombie",1153,15,instance_npcname("#2Resurrect Monsters3")+"::OnMyMobDead"; end; OnMyMobDead: - set .@callnum,15; - set .@c_mob_num,mobcount("2@orcs",instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"); - set .@mob_dead_num,.@callnum - .@c_mob_num; + set .@map$, instance_mapname("2@orcs"); + set .@mob_dead_num, 15 - mobcount(.@map$,instance_npcname("#2Resurrect Monsters3")+"::OnMyMobDead"); set .@mob_ran,rand(1,30); if (.@mob_ran > 29) { if (.@mob_dead_num > 0) { - monster "2@orcs",0,0,"Orc Archer",1189,.@mob_dead_num,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; + monster .@map$,0,0,"Orc Archer",1189,.@mob_dead_num,instance_npcname("#2Resurrect Monsters3")+"::OnMyMobDead"; } } else if ((.@mob_ran > 6) && (.@mob_ran < 30)) { if (.@mob_dead_num > 0) { - areamonster "2@orcs",168,10,184,26,"Orc Archer",1189,.@mob_dead_num,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; + areamonster .@map$,168,10,184,26,"Orc Archer",1189,.@mob_dead_num,instance_npcname("#2Resurrect Monsters3")+"::OnMyMobDead"; if (rand(1,15) == 3) { - instance_announce -1, "Warning: Orc Archer teams are gathering near the altar.",bc_map,"0xff4444"; + mapannounce .@map$, "Warning: Orc Archer teams are gathering near the altar.",bc_map,"0xff4444"; } } } else { if (.@mob_dead_num > 0) { - areamonster "2@orcs",168,21,184,21,"Orc Archer",1189,.@mob_dead_num,instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; + areamonster .@map$,168,21,184,21,"Orc Archer",1189,.@mob_dead_num,instance_npcname("#2Resurrect Monsters3")+"::OnMyMobDead"; } } end; OnDisable: - killmonster "2@orcs",instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnMyMobDead"; + killmonster instance_mapname("2@orcs"),instance_npcname("#2Resurrect Monsters3")+"::OnMyMobDead"; end; } @@ -810,164 +627,85 @@ OnDisable: end; OnInstanceInit: - enablenpc instance_npcname("#2Resurrect Monsters4", instance_id()); - monster "2@orcs",0,0,"Anopheles",1627,1,instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Anopheles",1627,1,instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Anopheles",1627,1,instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Anopheles",1627,1,instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Anopheles",1627,1,instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Anopheles",1627,1,instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Anopheles",1627,1,instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Anopheles",1627,1,instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Anopheles",1627,1,instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnMyMobDead"; - monster "2@orcs",0,0,"Anopheles",1627,1,instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnMyMobDead"; + enablenpc instance_npcname("#2Resurrect Monsters4"); + monster instance_mapname("2@orcs"),0,0,"Anopheles",1627,10,instance_npcname("#2Resurrect Monsters4")+"::OnMyMobDead"; end; OnMyMobDead: - set .@callnum,10; - set .@c_mob_num,mobcount("2@orcs",instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnMyMobDead"); - set .@mob_dead_num,.@callnum - .@c_mob_num; + set .@map$, instance_mapname("2@orcs"); + set .@mob_dead_num, 10 - mobcount(.@map$,instance_npcname("#2Resurrect Monsters4")+"::OnMyMobDead"); if (.@mob_dead_num > 0) { - monster "2@orcs",0,0,"Anopheles",1627,1,instance_npcname("#2Resurrect Monsters4", instance_id())+"::OnMyMobDead"; + monster .@map$,0,0,"Anopheles",1627,1,instance_npcname("#2Resurrect Monsters4")+"::OnMyMobDead"; } end; } 2@orcs,35,169,4 script Kruger#2-1 433,{ - donpcevent instance_npcname("Kruger#2-2", instance_id())+"::OnEnable"; + donpcevent instance_npcname("Kruger#2-2")+"::OnEnable"; end; } 2@orcs,35,169,4 script Kruger#2-2 433,{ end; +OnInstanceInit: + disablenpc instance_npcname("Kruger#2-2"); + end; + OnEnable: - disablenpc instance_npcname("Kruger#2-1", instance_id()); - enablenpc instance_npcname("Kruger#2-2", instance_id()); + disablenpc instance_npcname("Kruger#2-1"); + enablenpc instance_npcname("Kruger#2-2"); initnpctimer; end; OnTimer10: - instance_announce -1, "Kruger's Whisper: I'll tell you how to get to the Shaman's altar.",bc_map,"0xffff00"; + mapannounce instance_mapname("2@orcs"), "Kruger's Whisper: I'll tell you how to get to the Shaman's altar.",bc_map,"0xffff00"; end; OnTimer3510: - instance_announce -1, "Kruger's Whisper: Do you see the braziers that light the path? Unseal the next zone by strengthening their flames.",bc_map,"0xffff00"; + mapannounce instance_mapname("2@orcs"), "Kruger's Whisper: Do you see the braziers that light the path? Unseal the next zone by strengthening their flames.",bc_map,"0xffff00"; end; OnTimer10710: - instance_announce -1, "Kruger's Whisper: Of course those monsters won't let you touch the braziers that easily.",bc_map,"0xffff00"; + mapannounce instance_mapname("2@orcs"), "Kruger's Whisper: Of course those monsters won't let you touch the braziers that easily.",bc_map,"0xffff00"; end; OnTimer16310: - instance_announce -1, "Kruger's Whisper: But still, try keep the battles not too noticable so the Shaman won't guard the altar with her army squad.",bc_map,"0xffff00"; + mapannounce instance_mapname("2@orcs"), "Kruger's Whisper: But still, try keep the battles not too noticable so the Shaman won't guard the altar with her army squad.",bc_map,"0xffff00"; end; OnTimer21910: - instance_announce -1, "Kruger's Whisper: Only the Party Leader can strengthen the flames, so protect your leader.",bc_map,"0xffff00"; + mapannounce instance_mapname("2@orcs"), "Kruger's Whisper: Only the Party Leader can strengthen the flames, so protect your leader.",bc_map,"0xffff00"; end; OnTimer23910: - instance_announce -1, "Mission: Unseal the zone by lighting the braziers. They can only be lit in a certain order, so be careful.",bc_map,"0x4444ff"; - donpcevent instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnEnable"; - donpcevent instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnEnable"; - donpcevent instance_npcname("Torch#1-1", instance_id())+"::OnEnable"; - disablenpc instance_npcname("Kruger#2-2", instance_id()); + mapannounce instance_mapname("2@orcs"), "Mission: Unseal the zone by lighting the braziers. They can only be lit in a certain order, so be careful.",bc_map,"0x4444ff"; + donpcevent instance_npcname("#2Resurrect Monsters1")+"::OnEnable"; + donpcevent instance_npcname("#2Resurrect Monsters3")+"::OnEnable"; + donpcevent instance_npcname("Torch#1-1")+"::OnEnable"; + disablenpc instance_npcname("Kruger#2-2"); end; } 2@orcs,26,164,0 script Torch#1-1 844,{ if(getpartyleader(getcharid(1),2) != getcharid(0)) end; progressbar "ffff00",5; - donpcevent instance_npcname("Torch#1-2", instance_id())+"::OnEnable"; - initnpctimer; - disablenpc instance_npcname("Torch#1-1", instance_id()); - end; - -OnInstanceInit: - disablenpc instance_npcname("Torch#1-1", instance_id()); - end; - -OnEnable: - enablenpc instance_npcname("Torch#1-1", instance_id()); - end; - -OnTimer100: - specialeffect EF_FIREPILLAR; - end; - -OnTimer2000: - specialeffect EF_FIREPILLARBOMB; - stopnpctimer; - end; -} - -2@orcs,55,155,0 script Torch#1-2 844,{ - if(getpartyleader(getcharid(1),2) != getcharid(0)) end; - progressbar "ffff00",5; - donpcevent instance_npcname("Torch#1-3", instance_id())+"::OnEnable"; - initnpctimer; - disablenpc instance_npcname("Torch#1-2", instance_id()); - end; - -OnInstanceInit: - disablenpc instance_npcname("Torch#1-2", instance_id()); - end; - -OnEnable: - enablenpc instance_npcname("Torch#1-2", instance_id()); - end; - -OnTimer100: - specialeffect EF_FIREPILLAR; - end; - -OnTimer2000: - specialeffect EF_FIREPILLARBOMB; - stopnpctimer; - end; -} - -2@orcs,108,146,0 script Torch#1-3 844,{ - if(getpartyleader(getcharid(1),2) != getcharid(0)) end; - progressbar "ffff00",5; - donpcevent instance_npcname("Torch#1-4", instance_id())+"::OnEnable"; - initnpctimer; - disablenpc instance_npcname("Torch#1-3", instance_id()); - end; - -OnInstanceInit: - disablenpc instance_npcname("Torch#1-3", instance_id()); - end; - -OnEnable: - enablenpc instance_npcname("Torch#1-3", instance_id()); - end; - -OnTimer100: - specialeffect EF_FIREPILLAR; - end; - -OnTimer2000: - specialeffect EF_FIREPILLARBOMB; - stopnpctimer; - end; -} - -2@orcs,98,171,0 script Torch#1-4 844,{ - if(getpartyleader(getcharid(1),2) != getcharid(0)) end; - progressbar "ffff00",5; - donpcevent instance_npcname("#Warp2-1", instance_id())+"::OnEnable"; + setarray .@id[0], atoi(charat(strnpcinfo(2),0)), atoi(charat(strnpcinfo(2),2)); + if (.@id[1] == 4) + donpcevent instance_npcname("#Warp2-"+.@id[0])+"::OnEnable"; + else + donpcevent instance_npcname("Torch#"+.@id[0]+"-"+(.@id[1]+1))+"::OnEnable"; initnpctimer; - disablenpc instance_npcname("Torch#1-4", instance_id()); + disablenpc instance_npcname(strnpcinfo(0)); end; OnInstanceInit: - disablenpc instance_npcname("Torch#1-4", instance_id()); + if (strnpcinfo(0) != "Torch#2-1" && strnpcinfo(0) != "Torch#3-1") + disablenpc instance_npcname(strnpcinfo(0)); end; OnEnable: - enablenpc instance_npcname("Torch#1-4", instance_id()); + enablenpc instance_npcname(strnpcinfo(0)); end; OnTimer100: @@ -979,285 +717,109 @@ OnTimer2000: stopnpctimer; end; } +2@orcs,55,155,0 duplicate(Torch#1-1) Torch#1-2 844 +2@orcs,108,146,0 duplicate(Torch#1-1) Torch#1-3 844 +2@orcs,98,171,0 duplicate(Torch#1-1) Torch#1-4 844 2@orcs,48,100,0 script #Warp2-1 45,3,3,{ OnInstanceInit: - disablenpc instance_npcname("#Warp2-1", instance_id()); + disablenpc instance_npcname("#Warp2-1"); end; OnEnable: - monster "2@orcs",109,156,"Safeguard Chief",1981,1,instance_npcname("#Mobs Control", instance_id())+"::OnMyMobDead1"; - instance_announce -1, "The Chief Orc of Safeguards: Oh!! Looks like I have company. Defeat me if you can!!",bc_map,"0xff8888"; + set .@map$, instance_mapname("2@orcs"); + monster .@map$,109,156,"Safeguard Chief",1981,1,instance_npcname("#Mobs Control")+"::OnMyMobDead1"; + mapannounce .@map$, "The Chief Orc of Safeguards: Oh!! Looks like I have company. Defeat me if you can!!",bc_map,"0xff8888"; end; OnContinue: - enablenpc instance_npcname("#Warp2-1", instance_id()); + enablenpc instance_npcname("#Warp2-1"); initnpctimer; end; OnTimer10000: - areamonster "2@orcs",28,158,40,170,"Safeguard Chief",1981,1,instance_npcname("#Mobs Control", instance_id())+"::OnMyMobDead1"; + areamonster instance_mapname("2@orcs"),28,158,40,170,"Safeguard Chief",1981,1,instance_npcname("#Mobs Control")+"::OnMyMobDead1"; stopnpctimer; end; OnTouch: - warp "2@orcs",47,93; + warp instance_mapname("2@orcs"),47,93; end; } -2@orcs,35,92,0 script Torch#2-1 844,{ - if(getpartyleader(getcharid(1),2) != getcharid(0)) end; - progressbar "ffff00",5; - donpcevent instance_npcname("Torch#2-2", instance_id())+"::OnEnable"; - initnpctimer; - disablenpc instance_npcname("Torch#2-1", instance_id()); - end; - -OnTimer100: - specialeffect EF_FIREPILLAR; - end; - -OnTimer2000: - specialeffect EF_FIREPILLARBOMB; - stopnpctimer; - end; -} - -2@orcs,32,70,0 script Torch#2-2 844,{ - if(getpartyleader(getcharid(1),2) != getcharid(0)) end; - progressbar "ffff00",5; - donpcevent instance_npcname("Torch#2-3", instance_id())+"::OnEnable"; - initnpctimer; - disablenpc instance_npcname("Torch#2-2", instance_id()); - end; - -OnInstanceInit: - disablenpc instance_npcname("Torch#2-2", instance_id()); - end; - -OnEnable: - enablenpc instance_npcname("Torch#2-2", instance_id()); - end; - -OnTimer100: - specialeffect EF_FIREPILLAR; - end; - -OnTimer2000: - specialeffect EF_FIREPILLARBOMB; - stopnpctimer; - end; -} - -2@orcs,70,31,0 script Torch#2-3 844,{ - if(getpartyleader(getcharid(1),2) != getcharid(0)) end; - progressbar "ffff00",5; - donpcevent instance_npcname("Torch#2-4", instance_id())+"::OnEnable"; - initnpctimer; - disablenpc instance_npcname("Torch#2-3", instance_id()); - end; - -OnInstanceInit: - disablenpc instance_npcname("Torch#2-3", instance_id()); - end; - -OnEnable: - enablenpc instance_npcname("Torch#2-3", instance_id()); - end; - -OnTimer100: - specialeffect EF_FIREPILLAR; - end; - -OnTimer2000: - specialeffect EF_FIREPILLARBOMB; - stopnpctimer; - end; -} - -2@orcs,84,51,0 script Torch#2-4 844,{ - if(getpartyleader(getcharid(1),2) != getcharid(0)) end; - progressbar "ffff00",5; - donpcevent instance_npcname("#Warp2-2", instance_id())+"::OnEnable"; - initnpctimer; - disablenpc instance_npcname("Torch#2-4", instance_id()); - end; - -OnInstanceInit: - disablenpc instance_npcname("Torch#2-4", instance_id()); - end; - -OnEnable: - enablenpc instance_npcname("Torch#2-4", instance_id()); - end; - -OnTimer100: - specialeffect EF_FIREPILLAR; - end; - -OnTimer2000: - specialeffect EF_FIREPILLARBOMB; - stopnpctimer; - end; -} +2@orcs,35,92,0 duplicate(Torch#1-1) Torch#2-1 844 +2@orcs,32,70,0 duplicate(Torch#1-1) Torch#2-2 844 +2@orcs,70,31,0 duplicate(Torch#1-1) Torch#2-3 844 +2@orcs,84,51,0 duplicate(Torch#1-1) Torch#2-4 844 2@orcs,101,55,0 script #Warp2-2 45,3,3,{ OnInstanceInit: - disablenpc instance_npcname("#Warp2-2", instance_id()); + disablenpc instance_npcname("#Warp2-2"); end; OnEnable: - monster "2@orcs",67,64,"Orc Sniper",1982,1,instance_npcname("#Mobs Control", instance_id())+"::OnMyMobDead2"; - instance_announce -1, "Orc Sniper: Hah! Pretty impressive that you made it this far, but your foolish little trip ends here...",bc_map,"0xff8888"; + set .@map$, instance_mapname("2@orcs"); + monster .@map$,67,64,"Orc Sniper",1982,1,instance_npcname("#Mobs Control")+"::OnMyMobDead2"; + mapannounce .@map$, "Orc Sniper: Hah! Pretty impressive that you made it this far, but your foolish little trip ends here...",bc_map,"0xff8888"; end; OnContinue: - enablenpc instance_npcname("#Warp2-2", instance_id()); + enablenpc instance_npcname("#Warp2-2"); initnpctimer; end; OnTimer10000: - areamonster "2@orcs",40,91,52,103,"Orc Sniper",1982,1,instance_npcname("#Mobs Control", instance_id())+"::OnMyMobDead2"; + areamonster instance_mapname("2@orcs"),40,91,52,103,"Orc Sniper",1982,1,instance_npcname("#Mobs Control")+"::OnMyMobDead2"; stopnpctimer; end; OnTouch: - warp "2@orcs",107,55; + warp instance_mapname("2@orcs"),107,55; end; } -2@orcs,142,145,0 script Torch#3-1 844,{ - if(getpartyleader(getcharid(1),2) != getcharid(0)) end; - progressbar "ffff00",5; - donpcevent instance_npcname("Torch#3-2", instance_id())+"::OnEnable"; - initnpctimer; - disablenpc instance_npcname("Torch#3-1", instance_id()); - end; - -OnTimer100: - specialeffect EF_FIREPILLAR; - end; - -OnTimer2000: - specialeffect EF_FIREPILLARBOMB; - stopnpctimer; - end; -} - -2@orcs,162,134,0 script Torch#3-2 844,{ - if(getpartyleader(getcharid(1),2) != getcharid(0)) end; - progressbar "ffff00",5; - donpcevent instance_npcname("Torch#3-3", instance_id())+"::OnEnable"; - initnpctimer; - disablenpc instance_npcname("Torch#3-2", instance_id()); - end; - -OnInstanceInit: - disablenpc instance_npcname("Torch#3-2", instance_id()); - end; - -OnEnable: - enablenpc instance_npcname("Torch#3-2", instance_id()); - end; - -OnTimer100: - specialeffect EF_FIREPILLAR; - end; - -OnTimer2000: - specialeffect EF_FIREPILLARBOMB; - stopnpctimer; - end; -} - -2@orcs,144,117,0 script Torch#3-3 844,{ - if(getpartyleader(getcharid(1),2) != getcharid(0)) end; - progressbar "ffff00",5; - donpcevent instance_npcname("Torch#3-4", instance_id())+"::OnEnable"; - initnpctimer; - disablenpc instance_npcname("Torch#3-3", instance_id()); - end; - -OnInstanceInit: - disablenpc instance_npcname("Torch#3-3", instance_id()); - end; - -OnEnable: - enablenpc instance_npcname("Torch#3-3", instance_id()); - end; - -OnTimer100: - specialeffect EF_FIREPILLAR; - end; - -OnTimer2000: - specialeffect EF_FIREPILLARBOMB; - stopnpctimer; - end; -} - -2@orcs,136,98,0 script Torch#3-4 844,{ - if(getpartyleader(getcharid(1),2) != getcharid(0)) end; - progressbar "ffff00",5; - donpcevent instance_npcname("#Warp2-3", instance_id())+"::OnEnable"; - initnpctimer; - disablenpc instance_npcname("Torch#3-4", instance_id()); - end; - -OnInstanceInit: - disablenpc instance_npcname("Torch#3-4", instance_id()); - end; - -OnEnable: - enablenpc instance_npcname("Torch#3-4", instance_id()); - end; - -OnTimer100: - specialeffect EF_FIREPILLAR; - end; - -OnTimer2000: - specialeffect EF_FIREPILLARBOMB; - stopnpctimer; - end; -} +2@orcs,142,145,0 duplicate(Torch#1-1) Torch#3-1 844 +2@orcs,162,134,0 duplicate(Torch#1-1) Torch#3-2 844 +2@orcs,144,117,0 duplicate(Torch#1-1) Torch#3-3 844 +2@orcs,136,98,0 duplicate(Torch#1-1) Torch#3-4 844 2@orcs,167,104,0 script #Warp2-3 45,3,3,{ OnInstanceInit: - disablenpc instance_npcname("#Warp2-3", instance_id()); + disablenpc instance_npcname("#Warp2-3"); end; OnEnable: - monster "2@orcs",152,147,"Depraved Orc Spirit",1983,1,instance_npcname("#Mobs Control", instance_id())+"::OnMyMobDead3"; - instance_announce -1, "Depraved Orc Spirit: I smell flesh! Hungry! Wanna try some human meat!!",bc_map,"0xff8888"; + set .@map$, instance_mapname("2@orcs"); + monster .@map$,152,147,"Depraved Orc Spirit",1983,1,instance_npcname("#Mobs Control")+"::OnMyMobDead3"; + mapannounce .@map$, "Depraved Orc Spirit: I smell flesh! Hungry! Wanna try some human meat!!",bc_map,"0xff8888"; end; OnContinue: - //areamonster "2@orcs",117,61,129,73,"Depraved Orc Spirit",1983,1,instance_npcname("#Mobs Control", instance_id())+"::OnMyMobDead3"; - donpcevent instance_npcname("#Boss Control", instance_id())+"::OnEnable"; - enablenpc instance_npcname("#Warp2-3", instance_id()); + areamonster instance_mapname("2@orcs"),117,61,129,73,"Depraved Orc Spirit",1983,1; + donpcevent instance_npcname("#Boss Control")+"::OnEnable"; + enablenpc instance_npcname("#Warp2-3"); initnpctimer; end; OnTimer10: - instance_announce -1, "Shaman Cargalache: Hahaha!! So, you finally made it here. The assassin you sent was just terrible. That stupid Orc is getting cold under my feet.",bc_map,"0xffff00"; + mapannounce instance_mapname("2@orcs"), "Shaman Cargalache: Hahaha!! So, you finally made it here. The assassin you sent was just terrible. That stupid Orc is getting cold under my feet.",bc_map,"0xffff00"; end; OnTimer6810: - instance_announce -1, "Shaman Cargalache: My loyal slave, go get those intruders!",bc_map,"0xffff00"; + mapannounce instance_mapname("2@orcs"), "Shaman Cargalache: My loyal slave, go get those intruders!",bc_map,"0xffff00"; end; OnTimer10310: - instance_announce -1, "Depraved Orc Hero: Whatever you say, my lord.",bc_map,"0xff7777"; + mapannounce instance_mapname("2@orcs"), "Depraved Orc Hero: Whatever you say, my lord.",bc_map,"0xff7777"; end; OnTimer13110: - instance_announce -1, "Caution: You have been discovered by Shaman Cargalache. Kruger's plan to assassinate the Shaman has failed. You must defeat Cargalache and find traces of Kruger.",bc_map,"0x8888ff"; + mapannounce instance_mapname("2@orcs"), "Caution: You have been discovered by Shaman Cargalache. Kruger's plan to assassinate the Shaman has failed. You must defeat Cargalache and find traces of Kruger.",bc_map,"0x8888ff"; stopnpctimer; end; OnTouch: - warp "2@orcs",167,95; + warp instance_mapname("2@orcs"),167,95; end; } @@ -1265,46 +827,48 @@ OnTouch: end; OnInstanceInit: - disablenpc instance_npcname("#Boss Control", instance_id()); + disablenpc instance_npcname("#Boss Control"); end; OnEnable: - monster "2@orcs",185,8,"Shaman Cargalache",1984,1,instance_npcname("#Boss Control", instance_id())+"::OnMyMobDead"; - monster "2@orcs",179,15,"Depraved Orc Hero",1087,1; - enablenpc instance_npcname("#Boss Control", instance_id()); + set .@map$, instance_mapname("2@orcs"); + monster .@map$,185,8,"Shaman Cargalache",1984,1,instance_npcname("#Boss Control")+"::OnMyMobDead"; + monster .@map$,179,15,"Depraved Orc Hero",1087,1; + enablenpc instance_npcname("#Boss Control"); end; OnMyMobDead: - donpcevent instance_npcname("Kruger#", instance_id())+"::OnEnable"; + donpcevent instance_npcname("Kruger#")+"::OnEnable"; + set .@map$, instance_mapname("2@orcs"); set .@mob_ran,rand(1,5); if (.@mob_ran == 1) { - instance_announce -1, "Shaman Cargalache: How... How could this be... How could someone like you...!!",bc_map,"0xffff00"; + mapannounce .@map$, "Shaman Cargalache: How... How could this be... How could someone like you...!!",bc_map,"0xffff00"; } else if (.@mob_ran == 2) { - instance_announce -1, "Shaman Cargalache: How is it that I've been overpowered by mere humans!",bc_map,"0xffff00"; + mapannounce .@map$, "Shaman Cargalache: How is it that I've been overpowered by mere humans!",bc_map,"0xffff00"; } else if (.@mob_ran == 3) { - instance_announce -1, "Shaman Cargalache: This... This can't be the end...",bc_map,"0xffff00"; + mapannounce .@map$, "Shaman Cargalache: This... This can't be the end...",bc_map,"0xffff00"; } else if (.@mob_ran == 4) { - instance_announce -1, "Shaman Cargalache: I... Can't die... Yet...!",bc_map,"0xffff00"; + mapannounce .@map$, "Shaman Cargalache: I... Can't die... Yet...!",bc_map,"0xffff00"; } else { - instance_announce -1, "Shaman Cargalache: Defeated by these fools... It can't be happening...!",bc_map,"0xffff00"; + mapannounce .@map$, "Shaman Cargalache: Defeated by these fools... It can't be happening...!",bc_map,"0xffff00"; } - donpcevent instance_npcname("#2Resurrect Monsters1", instance_id())+"::OnDisable"; - donpcevent instance_npcname("#2Resurrect Monsters3", instance_id())+"::OnDisable"; - donpcevent instance_npcname("#Warp Outside Orc Dun", instance_id())+"::OnEnable"; + donpcevent instance_npcname("#2Resurrect Monsters1")+"::OnDisable"; + donpcevent instance_npcname("#2Resurrect Monsters3")+"::OnDisable"; + donpcevent instance_npcname("#Warp Outside Orc Dun")+"::OnEnable"; end; } 2@orcs,182,8,0 script #Warp Outside Orc Dun 45,3,3,{ OnInstanceInit: - disablenpc instance_npcname("#Warp Outside Orc Dun", instance_id()); + disablenpc instance_npcname("#Warp Outside Orc Dun"); end; OnEnable: - enablenpc instance_npcname("#Warp Outside Orc Dun", instance_id()); + enablenpc instance_npcname("#Warp Outside Orc Dun"); end; OnTouch: @@ -1345,11 +909,11 @@ OnTouch: } OnInstanceInit: - disablenpc instance_npcname("Kruger#", instance_id()); + disablenpc instance_npcname("Kruger#"); end; OnEnable: - enablenpc instance_npcname("Kruger#", instance_id()); + enablenpc instance_npcname("Kruger#"); end; } @@ -1357,14 +921,14 @@ OnEnable: end; OnMyMobDead1: - donpcevent instance_npcname("#Warp2-1", instance_id())+"::OnContinue"; + donpcevent instance_npcname("#Warp2-1")+"::OnContinue"; end; OnMyMobDead2: - donpcevent instance_npcname("#Warp2-2", instance_id())+"::OnContinue"; + donpcevent instance_npcname("#Warp2-2")+"::OnContinue"; end; OnMyMobDead3: - donpcevent instance_npcname("#Warp2-3", instance_id())+"::OnContinue"; + donpcevent instance_npcname("#Warp2-3")+"::OnContinue"; end; -} +} \ No newline at end of file -- cgit v1.2.3-70-g09d2