diff options
author | hemagx <ibrahem.h.basyone@gmail.com> | 2016-09-10 20:15:44 +0200 |
---|---|---|
committer | hemagx <ibrahem.h.basyone@gmail.com> | 2016-09-10 20:26:36 +0200 |
commit | b2d09f0b248fcacb6dab71fc3ff42ff42e6a27bd (patch) | |
tree | 0290ac5351b96307ab445ae974f869f72733297f | |
parent | 594d62e367e6e727b400157604e8959a1d706cb4 (diff) | |
parent | 09e7af4e47eb5bb4fbb736b5f5612fa6e87956ce (diff) | |
download | hercules-b2d09f0b248fcacb6dab71fc3ff42ff42e6a27bd.tar.gz hercules-b2d09f0b248fcacb6dab71fc3ff42ff42e6a27bd.tar.bz2 hercules-b2d09f0b248fcacb6dab71fc3ff42ff42e6a27bd.tar.xz hercules-b2d09f0b248fcacb6dab71fc3ff42ff42e6a27bd.zip |
Merge pull request #1385 from Asheraf/saras_memory
Cleanup Sara's memory instance
Closes #1385 as merged
-rw-r--r-- | npc/mapflag/nobranch.txt | 3 | ||||
-rw-r--r-- | npc/mapflag/noicewall.txt | 3 | ||||
-rw-r--r-- | npc/mapflag/nomemo.txt | 3 | ||||
-rw-r--r-- | npc/mapflag/nopvp.txt | 1 | ||||
-rw-r--r-- | npc/mapflag/nosave.txt | 3 | ||||
-rw-r--r-- | npc/mapflag/noteleport.txt | 4 | ||||
-rw-r--r-- | npc/mapflag/partylock.txt | 3 | ||||
-rw-r--r-- | npc/mapflag/zone.txt | 3 | ||||
-rw-r--r-- | npc/re/instances/OctopusCave.txt | 729 | ||||
-rw-r--r-- | npc/re/instances/octopus_cave.txt | 701 | ||||
-rw-r--r-- | npc/re/instances/saras_memory.txt | 557 | ||||
-rw-r--r-- | npc/re/scripts.conf | 2 |
12 files changed, 962 insertions, 1050 deletions
diff --git a/npc/mapflag/nobranch.txt b/npc/mapflag/nobranch.txt index 71672c1a1..6e584a7c3 100644 --- a/npc/mapflag/nobranch.txt +++ b/npc/mapflag/nobranch.txt @@ -408,6 +408,9 @@ ecl_hub01 mapflag nobranch // Ghost Palace =========== 1@spa mapflag nobranch +// Sara's Memory Instance =========== +1@sara mapflag nobranch + //evt_zombie mapflag nobranch // Poring War ================== diff --git a/npc/mapflag/noicewall.txt b/npc/mapflag/noicewall.txt index 9b6e3940a..6c1af1b09 100644 --- a/npc/mapflag/noicewall.txt +++ b/npc/mapflag/noicewall.txt @@ -203,6 +203,9 @@ nguild_prt mapflag noicewall // Ghost Palace =========== 1@spa mapflag noicewall +// Sara's Memory Instance =========== +1@sara mapflag noicewall + // Poring War ==================== poring_w01 mapflag noicewall poring_w02 mapflag noicewall diff --git a/npc/mapflag/nomemo.txt b/npc/mapflag/nomemo.txt index 4ac4837bc..d958694f9 100644 --- a/npc/mapflag/nomemo.txt +++ b/npc/mapflag/nomemo.txt @@ -795,6 +795,9 @@ moc_prydn2 mapflag nomemo // Ghost Palace =========== 1@spa mapflag nomemo +// Sara's Memory Instance =========== +1@sara mapflag nomemo + //evt_zombie mapflag nomemo // Poring War ==================== diff --git a/npc/mapflag/nopvp.txt b/npc/mapflag/nopvp.txt index ee2f8438d..8a396bf69 100644 --- a/npc/mapflag/nopvp.txt +++ b/npc/mapflag/nopvp.txt @@ -54,6 +54,7 @@ 1@ma_b mapflag pvp off 1@ecl mapflag pvp off 1@spa mapflag pvp off +1@sara mapflag pvp off bat_a01 mapflag pvp off bat_a02 mapflag pvp off diff --git a/npc/mapflag/nosave.txt b/npc/mapflag/nosave.txt index f53bf5a83..3465cc0c3 100644 --- a/npc/mapflag/nosave.txt +++ b/npc/mapflag/nosave.txt @@ -349,6 +349,9 @@ que_lhz mapflag nosave SavePoint // Ghost Palace =========== 1@spa mapflag nosave SavePoint +// Sara's Memory Instance =========== +1@sara mapflag nosave SavePoint + //evt_zombie mapflag nosave SavePoint // Poring War ==================== diff --git a/npc/mapflag/noteleport.txt b/npc/mapflag/noteleport.txt index e8693678a..1e1ffb739 100644 --- a/npc/mapflag/noteleport.txt +++ b/npc/mapflag/noteleport.txt @@ -471,6 +471,10 @@ nyd_dun02 mapflag noteleport 1@spa mapflag noteleport 1@spa mapflag monster_noteleport +// Sara's Memory Instance =========== +1@sara mapflag noteleport +1@sara mapflag monster_noteleport + //evt_zombie mapflag noteleport // Poring War ==================== diff --git a/npc/mapflag/partylock.txt b/npc/mapflag/partylock.txt index ee16cf798..9e604fedc 100644 --- a/npc/mapflag/partylock.txt +++ b/npc/mapflag/partylock.txt @@ -81,3 +81,6 @@ // Ghost Palace =========== 1@spa mapflag partylock + +// Sara's Memory Instance =========== +1@sara mapflag partylock diff --git a/npc/mapflag/zone.txt b/npc/mapflag/zone.txt index c14ef569f..d3b88c0c7 100644 --- a/npc/mapflag/zone.txt +++ b/npc/mapflag/zone.txt @@ -103,6 +103,9 @@ prt_are_in mapflag zone Izlude Battle Arena // Ghost Palace =========== 1@spa mapflag zone Memorial Dungeon +// Sara's Memory Instance =========== +1@sara mapflag zone Memorial Dungeon + //Towns alberta mapflag zone Towns aldebaran mapflag zone Towns diff --git a/npc/re/instances/OctopusCave.txt b/npc/re/instances/OctopusCave.txt deleted file mode 100644 index 84b323361..000000000 --- a/npc/re/instances/OctopusCave.txt +++ /dev/null @@ -1,729 +0,0 @@ -//================= Hercules Script ======================================= -//= _ _ _ -//= | | | | | | -//= | |_| | ___ _ __ ___ _ _| | ___ ___ -//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| -//= | | | | __/ | | (__| |_| | | __/\__ \ -//= \_| |_/\___|_| \___|\__,_|_|\___||___/ -//================= License =============================================== -//= This file is part of Hercules. -//= http://herc.ws - http://github.com/HerculesWS/Hercules -//= -//= Copyright (C) 2013-2015 Hercules Dev Team -//= Copyright (C) Euphy -//= Copyright (C) Muad_Dib -//= -//= Hercules is free software: you can redistribute it and/or modify -//= it under the terms of the GNU General Public License as published by -//= the Free Software Foundation, either version 3 of the License, or -//= (at your option) any later version. -//= -//= This program is distributed in the hope that it will be useful, -//= but WITHOUT ANY WARRANTY; without even the implied warranty of -//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -//= GNU General Public License for more details. -//= -//= You should have received a copy of the GNU General Public License -//= along with this program. If not, see <http://www.gnu.org/licenses/>. -//========================================================================= -//= Octopus Cave -//================= Description =========================================== -//= Defeat the Disgusting Octopus. -//================= Current Version ======================================= -//= 1.1 -//========================================================================= - -1@cash mapflag src4instance - -//== Instance Creation ===================================== -mal_dun01,151,235,5 script Starfish 4_ASTER,{ - - .@party_id = getcharid(1); - .@md_name$ = "Octopus Cave"; - - if (!.@party_id) { - mes "[Starfish]"; - mes "You alone is powerless, hehe!"; - mes "Better get someone to help you out."; - mes "Make a party, and come back later."; - close; - } - if (getcharid(0) != getpartyleader(.@party_id,2)) { - mes "[Starfish]"; - mes "Where is your leader, hehe."; - mes "I don't talk to some random people."; - mes "Bring your boss to me."; - close; - } - mes "[Starfish]"; - mes "I am guarding here, hehe!"; - mes "It is just roughly blocked for now."; - mes "But someday this cave must be sealed forever, hehe!"; - next; - while(1) { - switch(select("Ask what's going on.", "Ask to open the gate.", "Go to other location.")) { - case 1: - mes "[Starfish]"; - mes "Lately, our Starfish lady is"; - mes "suffering with some issues, ooh ooh."; - mes "Something bad happen in this"; - mes "peaceful place, hehe!"; - next; - mes "[Starfish]"; - mes "Weird looking limbs came out"; - mes "from the hole there,"; - mes "tried to kidnap our lady Starfish."; - mes "Ooh Ooh."; - next; - mes "[Starfish]"; - mes "It seems those limbs belong to"; - mes "that ugly octopus."; - mes "That monster should be taken care of,"; - mes "but it's hard for ourselves only to make it happen, hehe."; - next; - mes "[Starfish]"; - mes "I want to find someone special,"; - mes "and ask to punish this ugly octopus."; - mes "I hope this octopus won't ever"; - mes "harass our lady, hehe."; - next; - mes "[Starfish]"; - mes "Go catch that octopus and stick it to this pick."; - mes "If you bring back the pick, I will"; - mes "open this gate for a while."; - mes "You should challenge if you are interested, hehe."; - next; - break; - case 2: - .@playtime = questprogress(4197,PLAYTIME); - if (.@playtime == 1) { - mes "[Starfish]"; - mes "Octopus is not around now, hehe."; - mes "Please come back later."; - close; - } - if (.@playtime == 2) erasequest 4197; - if (countitem(Octopus_Hunt_Stick)) { - .@instance = instance_create(.@md_name$,.@party_id); - if (.@instance < 0) { - mes "[Starfish]"; - mes "Party name is... "+getpartyname(.@party_id)+"."; - mes "Party leader is... "+strcharinfo(PC_NAME)+"."; - mes "^0000ff"+.@md_name$+"^000000, I cannot open now, hehe."; - mes "Now is not the time, please wait."; - close; - } - if (instance_attachmap("1@cash",.@instance) == "") { - mes "^0000ff"+.@md_name$+"^000000 - Reservation Failed!"; - instance_destroy(.@instance); - close; - } - instance_set_timeout 3600,300,.@instance; - instance_init(.@instance); - - mes "[Starfish]"; - mes "I will open the gate for a while to ^0000ff"+.@md_name$+"^000000."; - mes "Please catch that pervert octopus,"; - mes "and come back with it sticked to the pick, hehe."; - close; - } - mes "[Starfish]"; - mes "Prepare a pick first,"; - mes "so you can thread that octopus"; - mes "with that pick."; - mes "Then, I will let you in for a while, hehe."; - close; - case 3: - mes "[Starfish]"; - mes "This is not a good location, check someplace else."; - close; - } - } -} - -mal_dun01,153,237,5 script Weird Entrance CLEAR_NPC,{ - mes "There is a strange entrance"; - mes "blocked roughly with some boards."; - next; - switch(select("Go in.", "Stop.")) { - case 1: - if (countitem(Octopus_Hunt_Stick)) { - if (has_instance("1@cash") == "") { - if (questprogress(4197,PLAYTIME) == 1) { - mes "[Starfish]"; - mes "Ah, now is not the time..."; - mes "Would you come back later? Hehe."; - close; - } - mes "[Starfish]"; - mes "Shhh... Weird aura is"; - mes "coming from that entrance."; - mes "Big trouble is waiting, if you go in now."; - close; - } - mapannounce "mal_dun01", getpartyname(getcharid(1))+" party's "+strcharinfo(PC_NAME)+" member started to hunt the Octopus!",bc_map,"0x00ff99"; - if (!questprogress(4197)) setquest 4197; - warp "1@cash",199,99; - end; - } - mes "[Starfish]"; - mes "You should definitely prepare"; - mes "hunting stick if you want to"; - mes "punish the Octopus."; - mes "Or I will not let you in! Hehe."; - close; - case 2: - mes "[Starfish]"; - mes "Yes Yes, you better quit."; - close; - } -} - -//== Instance Scripts ====================================== -1@cash,199,99,0 script oct_enter HIDDEN_WARP_NPC,4,4,{ - end; -OnTouch: - donpcevent instance_npcname("oct_enter_broad")+"::OnEnable"; - specialeffect EF_BASH; - disablenpc instance_npcname("oct_enter"); - end; -} - -1@cash,1,1,0 script oct_enter_broad FAKE_NPC,{ - end; -OnInstanceInit: - donpcevent instance_npcname("oct_enter_broad")+"::OnDisable"; - end; -OnEnable: - enablenpc instance_npcname("oct_enter_broad"); - donpcevent instance_npcname("oct_foot_4")+"::OnEnable"; - donpcevent instance_npcname("oct_mob_con")+"::OnEnable"; - initnpctimer; - end; -OnDisable: - disablenpc instance_npcname("oct_enter_broad"); - end; -OnTimer1000: - mapannounce instance_mapname("1@cash"),"Pervert Octopus : How dare you to come inside of my place!",bc_map,"0xFFFF00"; - end; -OnTimer4000: - mapannounce instance_mapname("1@cash"),"Pervert Octopus : But I blocked all the cave gates!! There is nothing you can do!",bc_map,"0xFFFF00"; - end; -OnTimer7000: - mapannounce instance_mapname("1@cash"),"Pervert Octopus : My juniors~ There is your toy! Play with it~ kakaka",bc_map,"0xFFFF00"; - stopnpctimer; - donpcevent instance_npcname("oct_enter_broad")+"::OnDisable"; - end; -} - -1@cash,3,3,0 script oct_foot_4 FAKE_NPC,{ - end; -OnInstanceInit: - donpcevent instance_npcname("oct_foot_4")+"::OnDisable"; - end; -OnEnable: - enablenpc instance_npcname("oct_foot_4"); - donpcevent instance_npcname("oct_foot1")+"::OnEnable"; - donpcevent instance_npcname("oct_foot2")+"::OnEnable"; - donpcevent instance_npcname("oct_foot3")+"::OnEnable"; - donpcevent instance_npcname("oct_foot4")+"::OnEnable"; - .@map$ = instance_mapname("1@cash"); - monster .@map$,20,114,"Octopus Leg#1",2193,1,instance_npcname("oct_foot_4")+"::OnMyMobDead"; - monster .@map$,88,190,"Octopus Leg#2",2193,1,instance_npcname("oct_foot_4")+"::OnMyMobDead"; - monster .@map$,307,215,"Octopus Leg#3",2193,1,instance_npcname("oct_foot_4")+"::OnMyMobDead"; - monster .@map$,372,131,"Octopus Leg#4",2193,1,instance_npcname("oct_foot_4")+"::OnMyMobDead"; - end; -OnDisable: - disablenpc instance_npcname("oct_foot_4"); - end; -OnMyMobDead: - .@map$ = instance_mapname("1@cash"); - if (mobcount(.@map$,instance_npcname("oct_foot_4")+"::OnMyMobDead") < 1) { - donpcevent instance_npcname("oct_boss_con")+"::OnEnable"; - mapannounce .@map$,"Hey you!! I'll personally take care of you all! Let's bring it on!",bc_map,"0x00ff99"; - enablenpc instance_npcname("oct_boss_warp"); - instance_warpall .@map$,199,99; - end; - } - mapannounce .@map$,"Arrgg!! That hurts!!! I need another strategy...",bc_map,"0x00ff99"; - end; -} - -1@cash,20,114,0 script oct_foot1 HIDDEN_WARP_NPC,6,6,{ - end; -OnInstanceInit: - donpcevent instance_npcname(strnpcinfo(NPC_NAME))+"::OnDisable"; - end; -OnEnable: - enablenpc instance_npcname(strnpcinfo(NPC_NAME)); - .@label$ = instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"; - .@i = atoi(charat(strnpcinfo(NPC_NAME),8)); - .@map$ = instance_mapname("1@cash"); - switch(.@i) { - case 1: - areamonster .@map$,34,96,38,100,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,39,90,41,92,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,38,76,40,78,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,39,58,41,60,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,50,38,56,44,"Octopus's Henchman",2192,5,.@label$; - areamonster .@map$,68,32,72,36,"Octopus's Henchman",2192,5,.@label$; - areamonster .@map$,83,26,85,28,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,107,28,109,30,"Octopus's Henchman",2192,1,.@label$; - areamonster .@map$,123,28,125,30,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,134,31,138,35,"Octopus's Henchman",2192,5,.@label$; - areamonster .@map$,142,39,146,43,"Octopus's Henchman",2192,2,.@label$; - break; - case 2: - areamonster .@map$,139,113,143,117,"Octopus's Henchman",2192,5,.@label$; - areamonster .@map$,135,104,137,106,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,123,93,127,97,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,113,90,115,92,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,103,89,105,91,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,89,90,91,92,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,74,104,76,106,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,74,120,76,122,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,83,131,87,135,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,92,142,94,144,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,98,159,100,161,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,94,180,98,184,"Octopus's Henchman",2192,5,.@label$; - break; - case 3: - areamonster .@map$,299,209,303,213,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,292,203,296,207,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,291,186,293,188,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,292,166,294,168,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,293,151,295,153,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,299,137,303,141,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,300,123,304,127,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,300,104,304,108,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,279,101,281,103,"Octopus's Henchman",2192,2,.@label$; - monster .@map$,260,103,"Octopus's Henchman",2192,1,.@label$; - break; - case 4: - areamonster .@map$,363,123,367,127,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,364,108,368,112,"Octopus's Henchman",2192,5,.@label$; - areamonster .@map$,363,93,367,97,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,364,72,366,74,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,364,58,366,60,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,355,44,359,48,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,346,36,350,40,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,319,28,325,34,"Octopus's Henchman",2192,5,.@label$; - areamonster .@map$,305,27,307,29,"Octopus's Henchman",2192,2,.@label$; - areamonster .@map$,276,29,280,33,"Octopus's Henchman",2192,5,.@label$; - areamonster .@map$,258,37,262,41,"Octopus's Henchman",2192,2,.@label$; - break; - } - end; -OnDisable: - killmonster instance_mapname("1@cash"),instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"; // Not in official script. - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); - end; -OnTouch: - if (getd("."+strnpcinfo(NPC_NAME)+instance_id())) end; - setd "."+strnpcinfo(NPC_NAME)+instance_id(),1; - hideonnpc instance_npcname(strnpcinfo(NPC_NAME)); - mapannounce instance_mapname("1@cash"),"Come out all my babies and help me out!",bc_map,"0xFFFF00"; - initnpctimer; - end; -OnTimer5000: - .@map$ = instance_mapname("1@cash"); - mapannounce .@map$,"Let's give them a lesson!",bc_map,"0xFFFF00"; - .@label$ = instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"; - .@i = atoi(charat(strnpcinfo(NPC_NAME),8)); - switch(.@i) { - case 1: - areamonster .@map$,18,112,22,116,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,18,112,22,116,"Octopus's Henchman",2192,3,.@label$; - break; - case 2: - areamonster .@map$,86,188,90,192,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,96,98,100,102,"Octopus's Henchman",2192,3,.@label$; - break; - case 3: - areamonster .@map$,305,213,309,217,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,305,213,309,217,"Octopus's Henchman",2192,3,.@label$; - break; - case 4: - areamonster .@map$,370,129,374,133,"Octopus's Henchman",2192,3,.@label$; - areamonster .@map$,370,129,374,133,"Octopus's Henchman",2192,3,.@label$; - break; - } - end; -OnTimer30000: - setd "."+strnpcinfo(NPC_NAME)+instance_id(),0; - stopnpctimer; - .@i = atoi(charat(strnpcinfo(NPC_NAME),8)); - donpcevent instance_npcname("oct_foot_exit"+.@i)+"::OnEnable"; - donpcevent instance_npcname(strnpcinfo(NPC_NAME))+"::OnDisable"; - end; -OnMyMobDead: - .@map$ = instance_mapname("1@cash"); - if (mobcount(.@map$,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead") < 1) { - mapannounce .@map$,"You hurt my babies!!? You'll have to pay for this!!!",bc_map,"0x00ff99"; - setd "."+strnpcinfo(NPC_NAME)+instance_id(),0; - stopnpctimer; - .@i = atoi(charat(strnpcinfo(NPC_NAME),8)); - donpcevent instance_npcname("oct_foot_exit"+.@i)+"::OnEnable"; - donpcevent instance_npcname(strnpcinfo(NPC_NAME))+"::OnDisable"; - end; - } - end; -} -1@cash,88,190,0 duplicate(oct_foot1) oct_foot2 HIDDEN_WARP_NPC,6,6 -1@cash,307,215,0 duplicate(oct_foot1) oct_foot3 HIDDEN_WARP_NPC,6,6 -1@cash,372,131,0 duplicate(oct_foot1) oct_foot4 HIDDEN_WARP_NPC,6,6 - -1@cash,16,117,0 script oct_foot_exit1 WARPNPC,2,2,{ - end; -OnInstanceInit: - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); - end; -OnEnable: - enablenpc instance_npcname(strnpcinfo(NPC_NAME)); - end; -OnTouch: - warp instance_mapname("1@cash"),198,99; - end; -} -1@cash,77,193,0 duplicate(oct_foot_exit1) oct_foot_exit2 WARPNPC,2,2 -1@cash,312,214,0 duplicate(oct_foot_exit1) oct_foot_exit3 WARPNPC,2,2 -1@cash,370,139,0 duplicate(oct_foot_exit1) oct_foot_exit4 WARPNPC,2,2 - -1@cash,15,15,0 script oct_mob_con FAKE_NPC,{ - end; -OnInstanceInit: - donpcevent instance_npcname("oct_mob_con")+"::OnDisable"; - end; -OnEnable: - .@map$ = instance_mapname("1@cash"); - enablenpc instance_npcname("oct_mob_con"); - monster .@map$,32,94,"Hydra",1068,1; - monster .@map$,41,101,"Hydra",1068,1; - monster .@map$,35,78,"Hydra",1068,1; - monster .@map$,35,62,"Hydra",1068,1; - monster .@map$,49,54,"Hydra",1068,1; - monster .@map$,70,28,"Hydra",1068,1; - monster .@map$,83,22,"Hydra",1068,1; - monster .@map$,99,23,"Hydra",1068,1; - monster .@map$,115,23,"Hydra",1068,1; - monster .@map$,132,25,"Hydra",1068,1; - monster .@map$,100,185,"Hydra",1068,1; - monster .@map$,92,178,"Hydra",1068,1; - monster .@map$,92,162,"Hydra",1068,1; - monster .@map$,70,121,"Hydra",1068,1; - monster .@map$,70,105,"Hydra",1068,1; - monster .@map$,105,85,"Hydra",1068,1; - monster .@map$,121,84,"Hydra",1068,1; - monster .@map$,292,209,"Hydra",1068,1; - monster .@map$,303,206,"Hydra",1068,1; - monster .@map$,290,163,"Hydra",1068,1; - monster .@map$,299,150,"Hydra",1068,1; - monster .@map$,308,141,"Hydra",1068,1; - monster .@map$,308,125,"Hydra",1068,1; - monster .@map$,295,97,"Hydra",1068,1; - monster .@map$,279,97,"Hydra",1068,1; - monster .@map$,370,111,"Hydra",1068,1; - monster .@map$,370,110,"Hydra",1068,1; - monster .@map$,371,96,"Hydra",1068,1; - monster .@map$,371,80,"Hydra",1068,1; - monster .@map$,367,55,"Hydra",1068,1; - monster .@map$,343,29,"Hydra",1068,1; - monster .@map$,327,24,"Hydra",1068,1; - monster .@map$,311,22,"Hydra",1068,1; - monster .@map$,295,22,"Hydra",1068,1; - monster .@map$,279,22,"Hydra",1068,1; - areamonster .@map$,30,67,50,87,"Stapo",1784,1; - areamonster .@map$,102,19,122,39,"Stapo",1784,1; - areamonster .@map$,89,138,109,158,"Stapo",1784,1; - areamonster .@map$,112,83,132,103,"Stapo",1784,1; - areamonster .@map$,283,168,303,188,"Stapo",1784,1; - areamonster .@map$,292,97,312,117,"Stapo",1784,1; - areamonster .@map$,355,64,375,84,"Stapo",1784,1; - areamonster .@map$,317,17,337,37,"Stapo",1784,1; - donpcevent instance_npcname("oct_backattack1")+"::OnEnable"; - donpcevent instance_npcname("oct_backattack2")+"::OnEnable"; - donpcevent instance_npcname("oct_backattack3")+"::OnEnable"; - donpcevent instance_npcname("oct_backattack4")+"::OnEnable"; - donpcevent instance_npcname("oct_mob_con")+"::OnDisable"; - end; -OnDisable: - disablenpc instance_npcname("oct_mob_con"); - end; -} - -1@cash,45,53,0 script oct_backattack1 HIDDEN_WARP_NPC,3,3,{ - end; -OnInstanceInit: - disablenpc instance_npcname("oct_backattack1"); - end; -OnTouch: - .@map$ = instance_mapname("1@cash"); - monster .@map$,39,59,"Hydra",1068,1; - monster .@map$,40,59,"Hydra",1068,1; - monster .@map$,41,59,"Hydra",1068,1; - monster .@map$,47,50,"Hydra",1068,1; - monster .@map$,48,50,"Hydra",1068,1; - monster .@map$,49,50,"Hydra",1068,1; - monster .@map$,41,53,"Octopus's Henchman",2192,1; - mapannounce .@map$,"Don't let them break through, stop them!!!",bc_map,"0x00ff99"; - specialeffect EF_BASH; - disablenpc instance_npcname("oct_backattack1"); - end; -OnEnable: - enablenpc instance_npcname("oct_backattack1"); - end; -} - -1@cash,78,99,0 script oct_backattack2 HIDDEN_WARP_NPC,3,3,{ - end; -OnInstanceInit: - disablenpc instance_npcname("oct_backattack2"); - end; -OnTouch: - if (getd("."+instance_id())) end; - setd "."+instance_id(),1; - initnpctimer; - .@map$ = instance_mapname("1@cash"); - monster .@map$,71,105,"Octopus's Henchman ",2192,1; - mapannounce .@map$,"Headquarters are empty, GO!!!",bc_map,"0x00ff99"; - hideonnpc instance_npcname("oct_backattack2"); - end; -OnTimer2000: - .@map$ = instance_mapname("1@cash"); - monster .@map$,71,105,"Octopus's Henchman ",2192,1; - mapannounce .@map$,"Run, RUN! Go, GO!!!",bc_map,"0x00ff99"; - end; -OnTimer4000: - .@map$ = instance_mapname("1@cash"); - monster .@map$,71,105,"Octopus's Henchman ",2192,1; - mapannounce .@map$,"No time, come out fast!",bc_map,"0x00ff99"; - end; -OnTimer6000: - .@map$ = instance_mapname("1@cash"); - monster .@map$,71,105,"Octopus's Henchman ",2192,3; - mapannounce .@map$,"Let's take over the headquarters!!!",bc_map,"0x00ff99"; - end; -OnTimer8000: - .@map$ = instance_mapname("1@cash"); - monster .@map$,71,105,"Octopus's Henchman ",2192,1; - mapannounce .@map$,"There is no time to lose, hurry up!!!",bc_map,"0x00ff99"; - stopnpctimer; - end; -OnEnable: - enablenpc instance_npcname("oct_backattack2"); - end; -} - -1@cash,299,144,0 script oct_backattack3 HIDDEN_WARP_NPC,3,3,{ - end; -OnInstanceInit: - disablenpc instance_npcname("oct_backattack3"); - end; -OnTouch: - if (getd("."+instance_id())) end; - setd "."+instance_id(),1; - .@map$ = instance_mapname("1@cash"); - monster .@map$,293,153,"Octopus's Henchman ",2192,1; - monster .@map$,294,152,"Octopus's Henchman ",2192,1; - monster .@map$,292,153,"Octopus's Henchman ",2192,1; - monster .@map$,293,151,"Octopus's Henchman ",2192,1; - monster .@map$,293,152,"Octopus's Henchman ?",2175,1; - mapannounce .@map$,"Kakaka! Suprised??!!",bc_map,"0x00ff99"; - initnpctimer; - hideonnpc instance_npcname("oct_backattack3"); - end; -OnTimer5000: - mapannounce instance_mapname("1@cash"),"... Looks like we have a spy among us.",bc_map,"0x00ff99"; - stopnpctimer; - end; -OnEnable: - enablenpc instance_npcname("oct_backattack3"); - end; -} - -1@cash,336,36,0 script oct_backattack4 HIDDEN_WARP_NPC,3,3,{ - end; -OnInstanceInit: - disablenpc instance_npcname("oct_backattack4"); - end; -OnTouch: - if (getd("."+instance_id())) end; - setd "."+instance_id(),1; - .@map$ = instance_mapname("1@cash"); - monster .@map$,332,37,"Octopus's Henchman ",2192,1; - monster .@map$,332,36,"Octopus's Henchman ",2192,1; - monster .@map$,332,35,"Octopus's Henchman ",2192,1; - monster .@map$,332,34,"Octopus's Henchman ",2192,1; - monster .@map$,341,37,"Octopus's Henchman ",2192,1; - monster .@map$,341,36,"Octopus's Henchman ",2192,1; - monster .@map$,341,35,"Octopus's Henchman ",2192,1; - monster .@map$,341,34,"Octopus's Henchman ",2192,1; - monster .@map$,260,40,"Mercenary Squid",2175,1; - monster .@map$,260,41,"Mercenary Squid",2175,1; - monster .@map$,260,39,"Mercenary Squid",2175,1; - monster .@map$,259,40,"Mercenary Squid",2175,1; - monster .@map$,261,40,"Mercenary Squid",2175,1; - mapannounce .@map$,"What a successful pincer tactic! The enemy is strong! Let's not lose yourselves! Anyway, where are all the mercenaries??",bc_map,"0x00ff99"; - initnpctimer; - hideonnpc instance_npcname("oct_backattack4"); - end; -OnTimer5000: - mapannounce instance_mapname("1@cash"),"Mercenary Squid : eh...eh... wrong direction. No enemies are shown in this direction.",bc_map,"0x00ff99"; - end; -OnTimer7000: - mapannounce instance_mapname("1@cash"),"Pervert Octopus : Fools! Can't you read the map??!! Useless!!",bc_map,"0x00ff99"; - stopnpctimer; - end; -OnEnable: - enablenpc instance_npcname("oct_backattack4"); - end; -} - -1@cash,2,2,0 script oct_boss_con FAKE_NPC,{ - end; -OnInstanceInit: - donpcevent instance_npcname("oct_boss_con")+"::OnDisable"; - end; -OnDisable: - disablenpc instance_npcname("oct_boss_con"); - end; -OnEnable: - enablenpc instance_npcname("oct_boss_con"); - donpcevent instance_npcname("oct_boss_foot")+"::OnEnable"; - monster instance_mapname("1@cash"),199,188,"Disgusting Octopus",2194,1,instance_npcname("oct_boss_con")+"::OnMyMobDead"; - initnpctimer; - end; -OnTimer7000: - callsub OnAnnounce, - "You won't attack the one man.", - "I got fired from ink manufacturer last week.", - "Disgusting Octopus : Arghhhhh, come on!"; - end; -OnTimer14000: - callsub OnAnnounce, - "Why... why can't you know my heart!", - "Do you know how hard it is to live these days because there are not many new adventurers?", - "You.. I'll destroy you all...!"; - end; -OnTimer21000: - callsub OnAnnounce, - "What? I'm a disgusting octopus? You're sadists.", - "Let's not do this and how about we look for the best solution, huh??", - "Even if I fail here, I will keep coming back, forever!!!"; - end; -OnTimer28000: - callsub OnAnnounce, - "Instinct of mating is for males, what did I do wrong?", - "Do you really want to solve the problem between humans by violence?? Ah, I'm an octopus...", - "That's enough! Back off!"; - end; -OnTimer35000: - callsub OnAnnounce, - "Do I have to spend Christmas alone again...", - "Youth unemployment became a big issue these days... You won't get a job if you keep playing with me here.", - "This is as far as I can go!"; - end; -OnTimer42000: - callsub OnAnnounce, - "Hand on your heart and think if you come onto anyone...", - "Let's not do this here and follow the law!", - "You'll keep on doing this til the end, is that it?"; - end; -OnTimer49000: - callsub OnAnnounce, - "errrrrrrrrrrrrrrrrrrrrrrrr... Cough! Cough!", - "Disgusting Octopus : Violence cannot be justified in any case.", - "This is my place!!!"; - stopnpctimer; - initnpctimer; - end; -OnAnnounce: - mapannounce instance_mapname("1@cash"),"Disgusting Octopus : "+getarg(rand(3)),bc_map,"0xFFFF00"; - return; -OnMyMobDead: - .@map$ = instance_mapname("1@cash"); - if (mobcount(.@map$,instance_npcname("oct_boss_con")+"::OnMyMobDead") < 1) { - mapannounce .@map$,"Disgusting Octopus : That's it for the today! Next time, I will play with you badly!",bc_map,"0xFFFF00"; - enablenpc instance_npcname("oct_exit_1"); - enablenpc instance_npcname("oct_exit_2"); - donpcevent instance_npcname("oct_boss_foot")+"::OnDisable"; - stopnpctimer; - donpcevent instance_npcname("oct_boss_con")+"::OnDisable"; - end; - } - end; -} - -1@cash,4,4,0 script oct_boss_foot FAKE_NPC,{ - end; -OnInstanceInit: - donpcevent instance_npcname("oct_boss_foot")+"::OnDisable"; - end; -OnEnable: - enablenpc instance_npcname("oct_boss_foot"); - initnpctimer; - end; -OnCall: - .@map$ = instance_mapname("1@cash"); - if (mobcount(.@map$,instance_npcname("oct_boss_foot")+"::OnMyMobDead") < 100) { - switch(rand(2)) { - case 0: - mapannounce .@map$,"Disgusting Octopus : Do you know how many legs octopus have? It doesn't matter, I have unlimited legs!!",bc_map,"0xFFFF00"; - areamonster .@map$,192,181,206,195,"Octopus Leg",2193,1,instance_npcname("oct_boss_foot")+"::OnMyMobDead"; - break; - case 1: - mapannounce .@map$,"Disgusting Octopus : I...cannot..hold anymore, my babies~ please come out and fight!",bc_map,"0xFFFF00"; - areamonster .@map$,192,181,206,195,"Octopus's Henchman ",2192,5,instance_npcname("oct_boss_foot")+"::OnMyMobDead"; - break; - } - } - initnpctimer; - end; -OnTimer10000: - stopnpctimer; - donpcevent instance_npcname("oct_boss_foot")+"::OnCall"; - end; -OnDisable: - stopnpctimer; - killmonster instance_mapname("1@cash"),instance_npcname("oct_boss_foot")+"::OnMyMobDead"; // Not in official script. - disablenpc instance_npcname("oct_boss_foot"); - end; -OnMyMobDead: - end; -} - -1@cash,198,116,0 script oct_boss_warp WARPNPC,2,2,{ - end; -OnInstanceInit: - disablenpc instance_npcname("oct_boss_warp"); - end; -OnTouch: - warp instance_mapname("1@cash"),210,172; - end; -} - -1@cash,190,208,0 script oct_exit_1 WARPNPC,2,2,{ - end; -OnInstanceInit: - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); - end; -OnTouch: - mes "Do you want to go out from the octopus dungeon?"; - next; - if(select("No!", "Yes!") == 2) - warp "mal_dun01",153,233; - close; -} -1@cash,198,82,0 duplicate(oct_exit_1) oct_exit_2 WARPNPC,2,2 -// This is never enabled in the official script. -//1@cash,200,161,0 duplicate(oct_exit_1) oct_exit_3 WARPNPC,2,2 - -//== Warp Portals ========================================== -1@cash,193,82,0 warp oct_door1 2,2,1@cash,151,48 -1@cash,154,53,0 warp oct_door2 2,2,1@cash,197,87 -1@cash,187,99,0 warp oct_door3 2,2,1@cash,148,128 -1@cash,153,133,0 warp oct_door4 2,2,1@cash,197,99 -1@cash,209,100,0 warp oct_door5 2,2,1@cash,250,111 -1@cash,244,118,0 warp oct_door6 2,2,1@cash,199,100 -1@cash,209,83,0 warp oct_door7 2,2,1@cash,252,46 -1@cash,246,53,0 warp oct_door8 2,2,1@cash,203,83 diff --git a/npc/re/instances/octopus_cave.txt b/npc/re/instances/octopus_cave.txt new file mode 100644 index 000000000..71f164ff7 --- /dev/null +++ b/npc/re/instances/octopus_cave.txt @@ -0,0 +1,701 @@ +//================= Hercules Script ======================================= +//= _ _ _ +//= | | | | | | +//= | |_| | ___ _ __ ___ _ _| | ___ ___ +//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __| +//= | | | | __/ | | (__| |_| | | __/\__ \ +//= \_| |_/\___|_| \___|\__,_|_|\___||___/ +//================= License =============================================== +//= This file is part of Hercules. +//= http://herc.ws - http://github.com/HerculesWS/Hercules +//= +//= Copyright (C) 2013-2016 Hercules Dev Team +//= Copyright (C) Euphy +//= Copyright (C) Muad_Dib +//= +//= Hercules is free software: you can redistribute it and/or modify +//= it under the terms of the GNU General Public License as published by +//= the Free Software Foundation, either version 3 of the License, or +//= (at your option) any later version. +//= +//= This program is distributed in the hope that it will be useful, +//= but WITHOUT ANY WARRANTY; without even the implied warranty of +//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +//= GNU General Public License for more details. +//= +//= You should have received a copy of the GNU General Public License +//= along with this program. If not, see <http://www.gnu.org/licenses/>. +//========================================================================= +//= Octopus Cave +//================= Description =========================================== +//= Defeat the Disgusting Octopus. +//================= Current Version ======================================= +//= 1.1 +//========================================================================= + +1@cash mapflag src4instance + +//== Instance Creation ===================================== +mal_dun01,151,235,5 script Starfish 4_ASTER,{ + + .@party_id = getcharid(1); + .@md_name$ = "Octopus Cave"; + + if (!.@party_id) { + mes("[Starfish]"); + mes("You alone is powerless, hehe! Better get someone to help you out. Make a party, and come back later."); + close; + } + if (getcharid(0) != getpartyleader(.@party_id, 2)) { + mes("[Starfish]"); + mes("Where is your leader, hehe. I don't talk to some random people. Bring your boss to me."); + close; + } + mes("[Starfish]"); + mes("I am guarding here, hehe! It is just roughly blocked for now. But someday this cave must be sealed forever, hehe!"); + next; + while(1) { + switch (select("Ask what's going on.", "Ask to open the gate.", "Go to other location.")) { + case 1: + mes("[Starfish]"); + mes("Lately, our Starfish lady is suffering with some issues, ooh ooh. Something bad happen in this peaceful place, hehe!"); + next; + mes("[Starfish]"); + mes("Weird looking limbs came out from the hole there, tried to kidnap our lady Starfish. Ooh Ooh."); + next; + mes("[Starfish]"); + mes("It seems those limbs belong to that ugly octopus. That monster should be taken care of,\r" + "but it's hard for ourselves only to make it happen, hehe."); + next; + mes("[Starfish]"); + mes("I want to find someone special, and ask to punish this ugly octopus.\r" + "I hope this octopus won't ever harass our lady, hehe."); + next; + mes("[Starfish]"); + mes("Go catch that octopus and stick it to this pick. If you bring back the pick,\r" + "I will open this gate for a while. You should challenge if you are interested, hehe."); + next; + break; + case 2: + .@playtime = questprogress(4197, PLAYTIME); + if (.@playtime == 1) { + mes("[Starfish]"); + mes("Octopus is not around now, hehe. Please come back later."); + close; + } + if (.@playtime == 2) erasequest 4197; + if (countitem(Octopus_Hunt_Stick)) { + .@instance = instance_create(.@md_name$, .@party_id); + if (.@instance < 0) { + mes("[Starfish]"); + mesf("Party name is... %s.", getpartyname(.@party_id)); + mesf("Party leader is... %s.", strcharinfo(PC_NAME)); + mesf("^0000FF%s^000000, I cannot open now, hehe.", .@md_name$); + mes("Now is not the time, please wait."); + close; + } + if (instance_attachmap("1@cash", .@instance) == "") { + mesf("^0000FF%s^000000 - Reservation Failed!", .@md_name$); + instance_destroy(.@instance); + close; + } + instance_set_timeout(3600, 300, .@instance); + instance_init(.@instance); + + mes("[Starfish]"); + mesf("I will open the gate for a while to ^0000FF%s^000000.", .@md_name$); + mes("Please catch that pervert octopus, and come back with it sticked to the pick, hehe."); + close; + } + mes("[Starfish]"); + mes("Prepare a pick first, so you can thread that octopus with that pick.\r" + "Then, I will let you in for a while, hehe."); + close; + case 3: + mes("[Starfish]"); + mes("This is not a good location, check someplace else."); + close; + } + } +} + +mal_dun01,153,237,5 script Weird Entrance CLEAR_NPC,{ + mes("There is a strange entrance blocked roughly with some boards."); + next; + switch (select("Go in.", "Stop.")) { + case 1: + if (countitem(Octopus_Hunt_Stick)) { + if (has_instance("1@cash") == "") { + if (questprogress(4197, PLAYTIME) == 1) { + mes("[Starfish]"); + mes("Ah, now is not the time... Would you come back later? Hehe."); + close; + } + mes("[Starfish]"); + mes("Shhh... Weird aura is coming from that entrance. Big trouble is waiting, if you go in now."); + close; + } + + mapannounce("mal_dun01", sprintf(_$("%s party's %s member started to hunt the Octopus!"), getpartyname(getcharid(1)), strcharinfo(PC_NAME)), bc_map, C_SPRINGGREEN); + if (!questprogress(4197)) setquest 4197; + warp "1@cash", 199, 99; + end; + } + mes("[Starfish]"); + mes("You should definitely prepare hunting stick if you want to punish the Octopus. Or I will not let you in! Hehe."); + close; + case 2: + mes("[Starfish]"); + mes("Yes Yes, you better quit."); + close; + } +} + +//== Instance Scripts ====================================== +1@cash,199,99,0 script oct_enter HIDDEN_WARP_NPC,4,4,{ + end; +OnTouch: + donpcevent instance_npcname("oct_enter_broad")+"::OnEnable"; + specialeffect EF_BASH; + disablenpc instance_npcname("oct_enter"); + end; +} + +1@cash,1,1,0 script oct_enter_broad FAKE_NPC,{ + end; +OnInstanceInit: + donpcevent instance_npcname("oct_enter_broad")+"::OnDisable"; + end; +OnEnable: + enablenpc instance_npcname("oct_enter_broad"); + donpcevent instance_npcname("oct_foot_4")+"::OnEnable"; + donpcevent instance_npcname("oct_mob_con")+"::OnEnable"; + initnpctimer; + end; +OnDisable: + disablenpc instance_npcname("oct_enter_broad"); + end; +OnTimer1000: + mapannounce(instance_mapname("1@cash"), _("Pervert Octopus : How dare you to come inside of my place!"), bc_map, C_YELLOW); + end; +OnTimer4000: + mapannounce(instance_mapname("1@cash"), _("Pervert Octopus : But I blocked all the cave gates!! There is nothing you can do!"), bc_map, C_YELLOW); + end; +OnTimer7000: + mapannounce(instance_mapname("1@cash"), _("Pervert Octopus : My juniors~ There is your toy! Play with it~ kakaka"), bc_map, C_YELLOW); + stopnpctimer; + donpcevent instance_npcname("oct_enter_broad")+"::OnDisable"; + end; +} + +1@cash,3,3,0 script oct_foot_4 FAKE_NPC,{ + end; +OnInstanceInit: + donpcevent instance_npcname("oct_foot_4")+"::OnDisable"; + end; +OnEnable: + enablenpc instance_npcname("oct_foot_4"); + donpcevent instance_npcname("oct_foot1")+"::OnEnable"; + donpcevent instance_npcname("oct_foot2")+"::OnEnable"; + donpcevent instance_npcname("oct_foot3")+"::OnEnable"; + donpcevent instance_npcname("oct_foot4")+"::OnEnable"; + .@map$ = instance_mapname("1@cash"); + monster(.@map$, 20, 114, _("Octopus Leg#1"), MD_OCTOPUS_LEG, 1, instance_npcname("oct_foot_4")+"::OnMyMobDead"); + monster(.@map$, 88, 190, _("Octopus Leg#2"), MD_OCTOPUS_LEG, 1, instance_npcname("oct_foot_4")+"::OnMyMobDead"); + monster(.@map$, 307, 215, _("Octopus Leg#3"), MD_OCTOPUS_LEG, 1, instance_npcname("oct_foot_4")+"::OnMyMobDead"); + monster(.@map$, 372, 131, _("Octopus Leg#4"), MD_OCTOPUS_LEG, 1, instance_npcname("oct_foot_4")+"::OnMyMobDead"); + end; +OnDisable: + disablenpc instance_npcname("oct_foot_4"); + end; +OnMyMobDead: + .@map$ = instance_mapname("1@cash"); + if (mobcount(.@map$,instance_npcname("oct_foot_4")+"::OnMyMobDead") < 1) { + donpcevent instance_npcname("oct_boss_con")+"::OnEnable"; + mapannounce(.@map$, _("Hey you!! I'll personally take care of you all! Let's bring it on!"), bc_map, C_SPRINGGREEN); + enablenpc instance_npcname("oct_boss_warp"); + instance_warpall .@map$, 199, 99; + end; + } + mapannounce(.@map$, _("Arrgg!! That hurts!!! I need another strategy..."), bc_map, C_SPRINGGREEN); + end; +} + +1@cash,20,114,0 script oct_foot1 HIDDEN_WARP_NPC,6,6,{ + end; +OnInstanceInit: + donpcevent instance_npcname(strnpcinfo(NPC_NAME))+"::OnDisable"; + end; +OnEnable: + enablenpc instance_npcname(strnpcinfo(NPC_NAME)); + .@label$ = instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"; + .@i = atoi(charat(strnpcinfo(NPC_NAME),8)); + .@map$ = instance_mapname("1@cash"); + switch (.@i) { + case 1: + areamonster(.@map$, 34, 96, 38, 100, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 39, 90, 41, 92, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 38, 76, 40, 78, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 39, 58, 41, 60, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 50, 38, 56, 44, _("Octopus's Henchman"), MD_OCTOPUS, 5, .@label$); + areamonster(.@map$, 68, 32, 72, 36, _("Octopus's Henchman"), MD_OCTOPUS, 5, .@label$); + areamonster(.@map$, 83, 26, 85, 28, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 107, 28, 109, 30, _("Octopus's Henchman"), MD_OCTOPUS, 1, .@label$); + areamonster(.@map$, 123, 28, 125, 30, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 134, 31, 138, 35, _("Octopus's Henchman"), MD_OCTOPUS, 5, .@label$); + areamonster(.@map$, 142, 39, 146, 43, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + break; + case 2: + areamonster(.@map$, 139, 113, 143, 117, _("Octopus's Henchman"), MD_OCTOPUS, 5, .@label$); + areamonster(.@map$, 135, 104, 137, 106, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 123, 93, 127, 97, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 113, 90, 115, 92, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 103, 89, 105, 91, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 89, 90, 91,92, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 74, 104, 76, 106, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 74, 120, 76, 122, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 83, 131, 87, 135, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 92, 142, 94, 144, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 98, 159, 100, 161, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 94, 180, 98, 184, _("Octopus's Henchman"), MD_OCTOPUS, 5, .@label$); + break; + case 3: + areamonster(.@map$, 299, 209, 303, 213, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 292, 203, 296, 207, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 291, 186, 293, 188, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 292, 166, 294, 168, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 293, 151, 295, 153, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 299, 137, 303, 141, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 300, 123, 304, 127, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 300, 104, 304, 108, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 279, 101, 281, 103, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + monster(.@map$, 260, 103, _("Octopus's Henchman"), MD_OCTOPUS, 1, .@label$); + break; + case 4: + areamonster(.@map$, 363, 123, 367, 127, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 364, 108, 368, 112, _("Octopus's Henchman"), MD_OCTOPUS, 5, .@label$); + areamonster(.@map$, 363, 93, 367, 97, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 364, 72, 366, 74, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 364, 58, 366, 60, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 355, 44, 359, 48, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 346, 36, 350, 40, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 319, 28, 325, 34, _("Octopus's Henchman"), MD_OCTOPUS, 5, .@label$); + areamonster(.@map$, 305, 27, 307, 29, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + areamonster(.@map$, 276, 29, 280, 33, _("Octopus's Henchman"), MD_OCTOPUS, 5, .@label$); + areamonster(.@map$, 258, 37, 262, 41, _("Octopus's Henchman"), MD_OCTOPUS, 2, .@label$); + break; + } + end; +OnDisable: + killmonster instance_mapname("1@cash"), instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"; // Not in official script. + disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + end; +OnTouch: + if (getd("."+strnpcinfo(NPC_NAME)+instance_id())) end; + setd "."+strnpcinfo(NPC_NAME)+instance_id(),1; + hideonnpc instance_npcname(strnpcinfo(NPC_NAME)); + mapannounce(instance_mapname("1@cash"), _("Come out all my babies and help me out!"), bc_map, C_YELLOW); + initnpctimer; + end; +OnTimer5000: + .@map$ = instance_mapname("1@cash"); + mapannounce(.@map$, _("Let's give them a lesson!"), bc_map, C_YELLOW); + .@label$ = instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"; + .@i = atoi(charat(strnpcinfo(NPC_NAME),8)); + switch (.@i) { + case 1: + areamonster(.@map$, 18, 112, 22,116, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 18, 112, 22,116, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + break; + case 2: + areamonster(.@map$, 86, 188, 90,192, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 96, 98, 100,102, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + break; + case 3: + areamonster(.@map$, 305, 213, 309,217, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 305, 213, 309,217, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + break; + case 4: + areamonster(.@map$, 370, 129, 374,133, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + areamonster(.@map$, 370, 129, 374,133, _("Octopus's Henchman"), MD_OCTOPUS, 3, .@label$); + break; + } + end; +OnTimer30000: + setd "."+strnpcinfo(NPC_NAME)+instance_id(),0; + stopnpctimer; + .@i = atoi(charat(strnpcinfo(NPC_NAME),8)); + donpcevent instance_npcname("oct_foot_exit"+.@i)+"::OnEnable"; + donpcevent instance_npcname(strnpcinfo(NPC_NAME))+"::OnDisable"; + end; +OnMyMobDead: + .@map$ = instance_mapname("1@cash"); + if (mobcount(.@map$,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead") < 1) { + mapannounce(.@map$, _("You hurt my babies!!? You'll have to pay for this!!!"), bc_map, C_SPRINGGREEN); + setd "."+strnpcinfo(NPC_NAME)+instance_id(),0; + stopnpctimer; + .@i = atoi(charat(strnpcinfo(NPC_NAME),8)); + donpcevent instance_npcname("oct_foot_exit"+.@i)+"::OnEnable"; + donpcevent instance_npcname(strnpcinfo(NPC_NAME))+"::OnDisable"; + end; + } + end; +} +1@cash,88,190,0 duplicate(oct_foot1) oct_foot2 HIDDEN_WARP_NPC,6,6 +1@cash,307,215,0 duplicate(oct_foot1) oct_foot3 HIDDEN_WARP_NPC,6,6 +1@cash,372,131,0 duplicate(oct_foot1) oct_foot4 HIDDEN_WARP_NPC,6,6 + +1@cash,16,117,0 script oct_foot_exit1 WARPNPC,2,2,{ + end; +OnInstanceInit: + disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + end; +OnEnable: + enablenpc instance_npcname(strnpcinfo(NPC_NAME)); + end; +OnTouch: + warp instance_mapname("1@cash"), 198, 99; + end; +} +1@cash,77,193,0 duplicate(oct_foot_exit1) oct_foot_exit2 WARPNPC,2,2 +1@cash,312,214,0 duplicate(oct_foot_exit1) oct_foot_exit3 WARPNPC,2,2 +1@cash,370,139,0 duplicate(oct_foot_exit1) oct_foot_exit4 WARPNPC,2,2 + +1@cash,15,15,0 script oct_mob_con FAKE_NPC,{ + end; +OnInstanceInit: + donpcevent instance_npcname("oct_mob_con")+"::OnDisable"; + end; +OnEnable: + .@map$ = instance_mapname("1@cash"); + enablenpc instance_npcname("oct_mob_con"); + monster(.@map$, 32, 94, _("Hydra"), HYDRA, 1); + monster(.@map$, 41, 101, _("Hydra"), HYDRA, 1); + monster(.@map$, 35, 78, _("Hydra"), HYDRA, 1); + monster(.@map$, 35, 62, _("Hydra"), HYDRA, 1); + monster(.@map$, 49, 54, _("Hydra"), HYDRA, 1); + monster(.@map$, 70, 28, _("Hydra"), HYDRA, 1); + monster(.@map$, 83, 22, _("Hydra"), HYDRA, 1); + monster(.@map$, 99, 23, _("Hydra"), HYDRA, 1); + monster(.@map$, 115, 23, _("Hydra"), HYDRA, 1); + monster(.@map$, 132, 25, _("Hydra"), HYDRA, 1); + monster(.@map$, 100, 185, _("Hydra"), HYDRA, 1); + monster(.@map$, 92, 178, _("Hydra"), HYDRA, 1); + monster(.@map$, 92, 162, _("Hydra"), HYDRA, 1); + monster(.@map$, 70, 121, _("Hydra"), HYDRA, 1); + monster(.@map$, 70, 105, _("Hydra"), HYDRA, 1); + monster(.@map$, 105, 85, _("Hydra"), HYDRA, 1); + monster(.@map$, 121, 84, _("Hydra"), HYDRA, 1); + monster(.@map$, 292, 209, _("Hydra"), HYDRA, 1); + monster(.@map$, 303, 206, _("Hydra"), HYDRA, 1); + monster(.@map$, 290, 163, _("Hydra"), HYDRA, 1); + monster(.@map$, 299, 150, _("Hydra"), HYDRA, 1); + monster(.@map$, 308, 141, _("Hydra"), HYDRA, 1); + monster(.@map$, 308, 125, _("Hydra"), HYDRA, 1); + monster(.@map$, 295, 97, _("Hydra"), HYDRA, 1); + monster(.@map$, 279, 97, _("Hydra"), HYDRA, 1); + monster(.@map$, 370, 111, _("Hydra"), HYDRA, 1); + monster(.@map$, 370, 110, _("Hydra"), HYDRA, 1); + monster(.@map$, 371, 96, _("Hydra"), HYDRA, 1); + monster(.@map$, 371, 80, _("Hydra"), HYDRA, 1); + monster(.@map$, 367, 55, _("Hydra"), HYDRA, 1); + monster(.@map$, 343, 29, _("Hydra"), HYDRA, 1); + monster(.@map$, 327, 24, _("Hydra"), HYDRA, 1); + monster(.@map$, 311, 22, _("Hydra"), HYDRA, 1); + monster(.@map$, 295, 22, _("Hydra"), HYDRA, 1); + monster(.@map$, 279, 22, _("Hydra"), HYDRA, 1); + areamonster(.@map$, 30, 67, 50, 87, _("Stapo"), STAPO, 1); + areamonster(.@map$, 102, 19, 122, 39, _("Stapo"), STAPO, 1); + areamonster(.@map$, 89, 138, 109, 158, _("Stapo"), STAPO, 1); + areamonster(.@map$, 112, 83, 132, 103, _("Stapo"), STAPO, 1); + areamonster(.@map$, 283, 168, 303, 188, _("Stapo"), STAPO, 1); + areamonster(.@map$, 292, 97, 312, 117, _("Stapo"), STAPO, 1); + areamonster(.@map$, 355, 64, 375, 84, _("Stapo"), STAPO, 1); + areamonster(.@map$, 317, 17, 337, 37, _("Stapo"), STAPO, 1); + donpcevent instance_npcname("oct_backattack1")+"::OnEnable"; + donpcevent instance_npcname("oct_backattack2")+"::OnEnable"; + donpcevent instance_npcname("oct_backattack3")+"::OnEnable"; + donpcevent instance_npcname("oct_backattack4")+"::OnEnable"; + donpcevent instance_npcname("oct_mob_con")+"::OnDisable"; + end; +OnDisable: + disablenpc instance_npcname("oct_mob_con"); + end; +} + +1@cash,45,53,0 script oct_backattack1 HIDDEN_WARP_NPC,3,3,{ + end; +OnInstanceInit: + disablenpc instance_npcname("oct_backattack1"); + end; +OnTouch: + .@map$ = instance_mapname("1@cash"); + monster(.@map$, 39, 59, _("Hydra"), HYDRA, 1); + monster(.@map$, 40, 59, _("Hydra"), HYDRA, 1); + monster(.@map$, 41, 59, _("Hydra"), HYDRA, 1); + monster(.@map$, 47, 50, _("Hydra"), HYDRA, 1); + monster(.@map$, 48, 50, _("Hydra"), HYDRA, 1); + monster(.@map$, 49, 50, _("Hydra"), HYDRA, 1); + monster(.@map$, 41, 53, _("Octopus's Henchman"), MD_OCTOPUS, 1); + mapannounce(.@map$, _("Don't let them break through, stop them!!!"), bc_map, C_SPRINGGREEN); + specialeffect EF_BASH; + disablenpc instance_npcname("oct_backattack1"); + end; +OnEnable: + enablenpc instance_npcname("oct_backattack1"); + end; +} + +1@cash,78,99,0 script oct_backattack2 HIDDEN_WARP_NPC,3,3,{ + end; +OnInstanceInit: + disablenpc instance_npcname("oct_backattack2"); + end; +OnTouch: + if (getd("."+instance_id())) end; + setd "."+instance_id(),1; + initnpctimer; + .@map$ = instance_mapname("1@cash"); + monster(.@map$, 71, 105, _("Octopus's Henchman"), MD_OCTOPUS, 1); + mapannounce(.@map$, _("Headquarters are empty, GO!!!"), bc_map, C_SPRINGGREEN); + hideonnpc instance_npcname("oct_backattack2"); + end; +OnTimer2000: + .@map$ = instance_mapname("1@cash"); + monster(.@map$, 71, 105, _("Octopus's Henchman"), MD_OCTOPUS, 1); + mapannounce(.@map$, _("Run, RUN! Go, GO!!!"), bc_map, C_SPRINGGREEN); + end; +OnTimer4000: + .@map$ = instance_mapname("1@cash"); + monster(.@map$, 71, 105, _("Octopus's Henchman"), MD_OCTOPUS, 1); + mapannounce(.@map$, _("No time, come out fast!"), bc_map, C_SPRINGGREEN); + end; +OnTimer6000: + .@map$ = instance_mapname("1@cash"); + monster(.@map$, 71, 105, _("Octopus's Henchman"), MD_OCTOPUS, 3); + mapannounce(.@map$, _("Let's take over the headquarters!!!"), bc_map, C_SPRINGGREEN); + end; +OnTimer8000: + .@map$ = instance_mapname("1@cash"); + monster(.@map$, 71, 105, _("Octopus's Henchman"), MD_OCTOPUS, 1); + mapannounce(.@map$, _("There is no time to lose, hurry up!!!"), bc_map, C_SPRINGGREEN); + stopnpctimer; + end; +OnEnable: + enablenpc instance_npcname("oct_backattack2"); + end; +} + +1@cash,299,144,0 script oct_backattack3 HIDDEN_WARP_NPC,3,3,{ + end; +OnInstanceInit: + disablenpc instance_npcname("oct_backattack3"); + end; +OnTouch: + if (getd("."+instance_id())) end; + setd "."+instance_id(),1; + .@map$ = instance_mapname("1@cash"); + monster(.@map$, 293, 153, _("Octopus's Henchman"), MD_OCTOPUS, 1); + monster(.@map$, 294, 152, _("Octopus's Henchman"), MD_OCTOPUS, 1); + monster(.@map$, 292, 153, _("Octopus's Henchman"), MD_OCTOPUS, 1); + monster(.@map$, 293, 151, _("Octopus's Henchman"), MD_OCTOPUS, 1); + monster(.@map$, 293, 152, _("Octopus's Henchman ?"), MD_MARSE, 1); + mapannounce(.@map$, _("Kakaka! Suprised??!!"), bc_map, C_SPRINGGREEN); + initnpctimer; + hideonnpc instance_npcname("oct_backattack3"); + end; +OnTimer5000: + mapannounce(instance_mapname("1@cash"), _("... Looks like we have a spy among us."), bc_map, C_SPRINGGREEN); + stopnpctimer; + end; +OnEnable: + enablenpc instance_npcname("oct_backattack3"); + end; +} + +1@cash,336,36,0 script oct_backattack4 HIDDEN_WARP_NPC,3,3,{ + end; +OnInstanceInit: + disablenpc instance_npcname("oct_backattack4"); + end; +OnTouch: + if (getd("."+instance_id())) end; + setd "."+instance_id(),1; + .@map$ = instance_mapname("1@cash"); + monster(.@map$, 332, 37, _("Octopus's Henchman"), MD_OCTOPUS, 1); + monster(.@map$, 332, 36, _("Octopus's Henchman"), MD_OCTOPUS, 1); + monster(.@map$, 332, 35, _("Octopus's Henchman"), MD_OCTOPUS, 1); + monster(.@map$, 332, 34, _("Octopus's Henchman"), MD_OCTOPUS, 1); + monster(.@map$, 341, 37, _("Octopus's Henchman"), MD_OCTOPUS, 1); + monster(.@map$, 341, 36, _("Octopus's Henchman"), MD_OCTOPUS, 1); + monster(.@map$, 341, 35, _("Octopus's Henchman"), MD_OCTOPUS, 1); + monster(.@map$, 341, 34, _("Octopus's Henchman"), MD_OCTOPUS, 1); + monster(.@map$, 260, 40, _("Mercenary Squid"), MD_MARSE, 1); + monster(.@map$, 260, 41, _("Mercenary Squid"), MD_MARSE, 1); + monster(.@map$, 260, 39, _("Mercenary Squid"), MD_MARSE, 1); + monster(.@map$, 259, 40, _("Mercenary Squid"), MD_MARSE, 1); + monster(.@map$, 261, 40, _("Mercenary Squid"), MD_MARSE, 1); + mapannounce(.@map$, _("What a successful pincer tactic! The enemy is strong! Let's not lose yourselves! Anyway, where are all the mercenaries??"), bc_map, C_SPRINGGREEN); + initnpctimer; + hideonnpc instance_npcname("oct_backattack4"); + end; +OnTimer5000: + mapannounce(instance_mapname("1@cash"), _("Mercenary Squid : eh...eh... wrong direction. No enemies are shown in this direction."), bc_map, C_SPRINGGREEN); + end; +OnTimer7000: + mapannounce(instance_mapname("1@cash"), _("Pervert Octopus : Fools! Can't you read the map??!! Useless!!"), bc_map, C_SPRINGGREEN); + stopnpctimer; + end; +OnEnable: + enablenpc instance_npcname("oct_backattack4"); + end; +} + +1@cash,2,2,0 script oct_boss_con FAKE_NPC,{ + end; +OnInstanceInit: + donpcevent instance_npcname("oct_boss_con")+"::OnDisable"; + end; +OnDisable: + disablenpc instance_npcname("oct_boss_con"); + end; +OnEnable: + enablenpc instance_npcname("oct_boss_con"); + donpcevent instance_npcname("oct_boss_foot")+"::OnEnable"; + monster(instance_mapname("1@cash"), 199, 188, _("Disgusting Octopus"), MD_GIANT_OCTOPUS, 1, instance_npcname("oct_boss_con")+"::OnMyMobDead"); + initnpctimer; + end; +OnTimer7000: + callsub OnAnnounce, + "You won't attack the one man.", + "I got fired from ink manufacturer last week.", + "Disgusting Octopus : Arghhhhh, come on!"; + end; +OnTimer14000: + callsub OnAnnounce, + "Why... why can't you know my heart!", + "Do you know how hard it is to live these days because there are not many new adventurers?", + "You.. I'll destroy you all...!"; + end; +OnTimer21000: + callsub OnAnnounce, + "What? I'm a disgusting octopus? You're sadists.", + "Let's not do this and how about we look for the best solution, huh??", + "Even if I fail here, I will keep coming back, forever!!!"; + end; +OnTimer28000: + callsub OnAnnounce, + "Instinct of mating is for males, what did I do wrong?", + "Do you really want to solve the problem between humans by violence?? Ah, I'm an octopus...", + "That's enough! Back off!"; + end; +OnTimer35000: + callsub OnAnnounce, + "Do I have to spend Christmas alone again...", + "Youth unemployment became a big issue these days... You won't get a job if you keep playing with me here.", + "This is as far as I can go!"; + end; +OnTimer42000: + callsub OnAnnounce, + "Hand on your heart and think if you come onto anyone...", + "Let's not do this here and follow the law!", + "You'll keep on doing this til the end, is that it?"; + end; +OnTimer49000: + callsub OnAnnounce, + "errrrrrrrrrrrrrrrrrrrrrrrr... Cough! Cough!", + "Disgusting Octopus : Violence cannot be justified in any case.", + "This is my place!!!"; + stopnpctimer; + initnpctimer; + end; +OnAnnounce: + mapannounce(instance_mapname("1@cash"), sprintf(_$("Disgusting Octopus : %s"), getarg(rand(3))), bc_map, C_YELLOW); + return; +OnMyMobDead: + .@map$ = instance_mapname("1@cash"); + if (mobcount(.@map$,instance_npcname("oct_boss_con")+"::OnMyMobDead") < 1) { + mapannounce(.@map$, _("Disgusting Octopus : That's it for the today! Next time, I will play with you badly!"), bc_map, C_YELLOW); + enablenpc instance_npcname("oct_exit_1"); + enablenpc instance_npcname("oct_exit_2"); + donpcevent instance_npcname("oct_boss_foot")+"::OnDisable"; + stopnpctimer; + donpcevent instance_npcname("oct_boss_con")+"::OnDisable"; + end; + } + end; +} + +1@cash,4,4,0 script oct_boss_foot FAKE_NPC,{ + end; +OnInstanceInit: + donpcevent instance_npcname("oct_boss_foot")+"::OnDisable"; + end; +OnEnable: + enablenpc instance_npcname("oct_boss_foot"); + initnpctimer; + end; +OnCall: + .@map$ = instance_mapname("1@cash"); + if (mobcount(.@map$,instance_npcname("oct_boss_foot")+"::OnMyMobDead") < 100) { + switch(rand(2)) { + case 0: + mapannounce(.@map$, _("Disgusting Octopus : Do you know how many legs octopus have? It doesn't matter, I have unlimited legs!!"), bc_map, C_YELLOW); + areamonster(.@map$, 192, 181, 206, 195, _("Octopus Leg"), MD_OCTOPUS_LEG, 1, instance_npcname("oct_boss_foot")+"::OnMyMobDead"); + break; + case 1: + mapannounce(.@map$, _("Disgusting Octopus : I...cannot..hold anymore, my babies~ please come out and fight!"), bc_map, C_YELLOW); + areamonster(.@map$, 192, 181, 206, 195, _("Octopus's Henchman"), MD_OCTOPUS, 5, instance_npcname("oct_boss_foot")+"::OnMyMobDead"); + break; + } + } + initnpctimer; + end; +OnTimer10000: + stopnpctimer; + donpcevent instance_npcname("oct_boss_foot")+"::OnCall"; + end; +OnDisable: + stopnpctimer; + killmonster instance_mapname("1@cash"), instance_npcname("oct_boss_foot")+"::OnMyMobDead"; // Not in official script. + disablenpc instance_npcname("oct_boss_foot"); + end; +OnMyMobDead: + end; +} + +1@cash,198,116,0 script oct_boss_warp WARPNPC,2,2,{ + end; +OnInstanceInit: + disablenpc instance_npcname("oct_boss_warp"); + end; +OnTouch: + warp instance_mapname("1@cash"), 210, 172; + end; +} + +1@cash,190,208,0 script oct_exit_1 WARPNPC,2,2,{ + end; +OnInstanceInit: + disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + end; +OnTouch: + mes("Do you want to go out from the octopus dungeon?"); + next; + if (select("No!", "Yes!") == 2) + warp "mal_dun01", 153, 233; + close; +} +1@cash,198,82,0 duplicate(oct_exit_1) oct_exit_2 WARPNPC,2,2 +// This is never enabled in the official script. +//1@cash,200,161,0 duplicate(oct_exit_1) oct_exit_3 WARPNPC,2,2 + +//== Warp Portals ========================================== +1@cash,193,82,0 warp oct_door1 2,2,1@cash,151,48 +1@cash,154,53,0 warp oct_door2 2,2,1@cash,197,87 +1@cash,187,99,0 warp oct_door3 2,2,1@cash,148,128 +1@cash,153,133,0 warp oct_door4 2,2,1@cash,197,99 +1@cash,209,100,0 warp oct_door5 2,2,1@cash,250,111 +1@cash,244,118,0 warp oct_door6 2,2,1@cash,199,100 +1@cash,209,83,0 warp oct_door7 2,2,1@cash,252,46 +1@cash,246,53,0 warp oct_door8 2,2,1@cash,203,83 diff --git a/npc/re/instances/saras_memory.txt b/npc/re/instances/saras_memory.txt index 17e075f0f..0c7f4a9cb 100644 --- a/npc/re/instances/saras_memory.txt +++ b/npc/re/instances/saras_memory.txt @@ -159,7 +159,7 @@ dali,138,118,0 script Dimensional Device#dimen PORTAL,{ close; } .@sara_time = questprogress(15002, PLAYTIME); - if ( .@sara_time == 1) { + if (.@sara_time == 1) { mes("[Leon the Adventurer]"); mes("I think that in about 20 hours after you last entered the rift will stable enough for you to\r" "transverse it again."); @@ -192,7 +192,7 @@ dali,138,118,0 script Dimensional Device#dimen PORTAL,{ mesf("^0000FF%s^000000 - Reservation Failed!", .@md_name$); close; } - if (instance_attachmap("1@sara", .@instance) == "" ) { + if (instance_attachmap("1@sara", .@instance) == "") { mesf("^0000FF%s^000000 - Reservation Failed!", .@md_name$); instance_destroy(.@instance); close; @@ -202,7 +202,7 @@ dali,138,118,0 script Dimensional Device#dimen PORTAL,{ mes("^FF0000The dimensional boots up cleanly. Use the device to enter the crack in space and time.^000000"); close; case 2: - if ( has_instance("1@sara") == "" ) { + if (has_instance("1@sara") == "") { mesf("The memorial dungeon ^0000FF%s^000000 does not exist.\r" "The party leader did not generate the dungeon yet.", .@md_name$); close; @@ -240,7 +240,7 @@ dali,138,118,0 script Dimensional Device#dimen PORTAL,{ next; mes("[Sara Irene]"); mes("My father is doyen of this village! I just take after my mother."); - donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat1"; + npctalk(_("My father is doyen of this village! I just take after my mother."), instance_npcname("Sara Irene#saratalk")); next; mesf("[%s]", strcharinfo(PC_NAME)); mes("Oh! I am sorry! Uh... Why are you standing out here all alone?"); @@ -248,39 +248,39 @@ dali,138,118,0 script Dimensional Device#dimen PORTAL,{ next; mes("[Sara Irene]"); mes("I am waiting for my father. He said that he will be here soon."); - donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat2"; + npctalk(_("I am waiting for my father. He said that he will be here soon."), instance_npcname("Sara Irene#saratalk")); next; mes("^FF0000An older man exits the house. Sara's face brightens at the sight of him.^000000"); donpcevent instance_npcname("Doyen Irene#sarains")+"::OnEnable"; next; mes("[Sara Irene]"); mes("Hi daddy!"); - donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat3"; + npctalk(_("Hi daddy!"), instance_npcname("Sara Irene#saratalk")); next; cutin "sara_elder_irine1.bmp", 2; mes("[Doyen Irene]"); mes("Sweetheart you look so happy."); - donpcevent instance_npcname("Doyen Irene#sarains")+"::OnChat1"; + npctalk(_("Sweetheart you look so happy."), instance_npcname("Doyen Irene#sarains")); next; cutin "sara_9sara1.bmp", 2; mes("[Sara Irene]"); mes("You said you would come back soon! I waited for you and you lied!"); - donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat4"; + npctalk(_("You said you would come back soon! I waited for you and you lied!"), instance_npcname("Sara Irene#saratalk")); next; cutin "sara_elder_irine1.bmp", 2; mes("[Doyen Irene]"); mes("Sweetheart, I am sorry I made you wait so long. The meeting with the village elders took longer than expected."); - donpcevent instance_npcname("Doyen Irene#sarains")+"::OnChat2"; + npctalk(_("Sweetheart, I am sorry I made you wait so long. The meeting with the village elders took longer than expected."), instance_npcname("Doyen Irene#sarains")); next; cutin "sara_9sara1.bmp", 2; mes("[Sara Irene]"); mes("I hate those old fogeys."); - donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat5"; + npctalk(_("I hate those old fogeys."), instance_npcname("Sara Irene#saratalk")); next; cutin "sara_elder_irine1.bmp", 2; mes("[Doyen Irene]"); mes("Don't say that sweetheart... Who is this with you?"); - donpcevent instance_npcname("Doyen Irene#sarains")+"::OnChat3"; + npctalk(_("Don't say that sweetheart... Who is this with you?"), instance_npcname("Doyen Irene#sarains")); next; mes("^FF0000Doyen Irene stares at you with fire in this eyes.^000000"); dispbottom(_("Doyen Irene stares at you with fire in this eyes.")); @@ -292,17 +292,17 @@ dali,138,118,0 script Dimensional Device#dimen PORTAL,{ cutin "sara_9sara1.bmp", 2; mes("[Sara Irene]"); mes("Here you go daddy!"); - donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat6"; + npctalk(_("Here you go daddy!"), instance_npcname("Sara Irene#saratalk")); next; cutin "sara_elder_irine1.bmp", 2; mes("[Doyen Irene]"); mes("Oh Sara, should I have them?"); - donpcevent instance_npcname("Doyen Irene#sarains")+"::OnChat4"; + npctalk(_("Oh Sara, should I have them?"), instance_npcname("Doyen Irene#sarains")); next; cutin "sara_9sara1.bmp", 2; mes("[Sara Irene]"); mes("Of course silly daddy!"); - donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat7"; + npctalk(_("Of course silly daddy!"), instance_npcname("Sara Irene#saratalk")); next; mes("^FF0000After being given the flowers the Doyen's mood seems to greatly improve.^000000"); dispbottom(_("After being given the flowers the Doyen's mood seems to greatly improve.")); @@ -310,17 +310,17 @@ dali,138,118,0 script Dimensional Device#dimen PORTAL,{ cutin "sara_elder_irine1.bmp", 2; mes("[Doyen Irene]"); mes("Alright my princess, where should we go now?"); - donpcevent instance_npcname("Doyen Irene#sarains")+"::OnChat5"; + npctalk(_("Alright my princess, where should we go now?"), instance_npcname("Doyen Irene#sarains")); next; cutin "sara_9sara1.bmp", 2; mes("[Sara Irene]"); mes("Oh daddy! Let's go to the top of that hill over there!"); - donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat8"; + npctalk(_("Oh daddy! Let's go to the top of that hill over there!"), instance_npcname("Sara Irene#saratalk")); next; cutin "sara_elder_irine1.bmp", 2; mes("[Doyen Irene]"); mes("Hah! Hold onto me tight!"); - donpcevent instance_npcname("Doyen Irene#sarains")+"::OnChat6"; + npctalk(_("Hah! Hold onto me tight!"), instance_npcname("Doyen Irene#sarains")); next; cutin "sara_elder_irine1.bmp", 255; mes("^FF0000As they wander off you hear strange voices from around the corner...^000000"); @@ -331,23 +331,23 @@ dali,138,118,0 script Dimensional Device#dimen PORTAL,{ next; mes("[Strange Old Man A]"); mes("I can feel Sara's power growing. We cannot just stand by and let her achieve her full potential!"); - donpcevent instance_npcname("Strange Old Man A#stalk")+"::OnChat1"; + npctalk(_("I can feel Sara's power growing. We cannot just stand by and let her achieve her full potential!"), instance_npcname("Strange Old Man A#stalk")); next; mes("[Strange Old Man B]"); mes("She was born under a bad sign and her mother isn't even one of us!"); - donpcevent instance_npcname("Strange Old Man B#stalk")+"::OnChat1"; + npctalk(_("She was born under a bad sign and her mother isn't even one of us!"), instance_npcname("Strange Old Man B#stalk")); next; mes("[Strange Old Man B]"); mes("Someday she will cause blood to flow in our streets."); - donpcevent instance_npcname("Strange Old Man B#stalk")+"::OnChat2"; + npctalk(_("Someday she will cause blood to flow in our streets."), instance_npcname("Strange Old Man B#stalk")); next; mes("[Strange Old Man A]"); mes("We have to do something before the Holy creatures select her. I asked HIM to take care of it."); - donpcevent instance_npcname("Strange Old Man A#stalk")+"::OnChat2"; + npctalk(_("We have to do something before the Holy creatures select her. I asked HIM to take care of it."), instance_npcname("Strange Old Man A#stalk")); next; mes("[Strange Old Man B]"); mes("We will see... I look forward to hearing the bad news that has befallen her..."); - donpcevent instance_npcname("Strange Old Man B#stalk")+"::OnChat3"; + npctalk(_("We will see... I look forward to hearing the bad news that has befallen her..."), instance_npcname("Strange Old Man B#stalk")); next; mes("^FF0000The old man wander off it seems Sara might be in danger. We have to do something!^000000"); dispbottom(_("The old man wander off it seems Sara might be in danger. We have to do something!")); @@ -382,24 +382,6 @@ OnEnable: OnDisable: hideonnpc instance_npcname("Doyen Irene#sarains"); end; -OnChat1: - npctalk(_("Sweetheart you look so happy.")); - end; -OnChat2: - npctalk(_("Sweetheart, I am sorry I made you wait so long. The meeting with the village elders took longer than expected.")); - end; -OnChat3: - npctalk(_("Don't say that sweetheart... Who is this with you?")); - end; -OnChat4: - npctalk(_("Oh Sara, should I have them?")); - end; -OnChat5: - npctalk(_("Alright my princess, where should we go now?")); - end; -OnChat6: - npctalk(_("Hah! Hold onto me tight!")); - end; } 1@sara,260,156,0 script Sara Irene#saratalk HIDDEN_NPC,{ @@ -413,30 +395,6 @@ OnEnable: OnDisable: hideonnpc instance_npcname("Sara Irene#saratalk"); end; -OnChat1: - npctalk(_("My father is doyen of this village! I just take after my mother.")); - end; -OnChat2: - npctalk(_("I am waiting for my father. He said that he will be here soon.")); - end; -OnChat3: - npctalk(_("Hi daddy!")); - end; -OnChat4: - npctalk(_("You said you would come back soon! I waited for you and you lied!")); - end; -OnChat5: - npctalk(_("I hate those old fogeys.")); - end; -OnChat6: - npctalk(_("Here you go daddy!")); - end; -OnChat7: - npctalk(_("Of course silly daddy!")); - end; -OnChat8: - npctalk(_("Oh daddy! Let's go to the top of that hill over there!")); - end; } @@ -451,12 +409,6 @@ OnEnable: OnDisable: hideonnpc instance_npcname("Strange Old Man A#stalk"); end; -OnChat1: - npctalk(_("I can feel Sara's power growing. We cannot just stand by and let her achieve her full potential!")); - end; -OnChat2: - npctalk(_("We have to do something before the Holy creatures select her. I asked HIM to take care of it.")); - end; } 1@sara,260,156,0 script Strange Old Man B#stalk FAKE_NPC,{ @@ -470,15 +422,6 @@ OnEnable: OnDisable: hideonnpc instance_npcname("Strange Old Man B#stalk"); end; -OnChat1: - npctalk(_("She was born under a bad sign and her mother isn't even one of us!")); - end; -OnChat2: - npctalk(_("Someday she will cause blood to flow in our streets.")); - end; -OnChat3: - npctalk(_("We will see... I look forward to hearing the bad news that has befallen her...")); - end; } 1@sara,240,145,0 script #sarawarp1 WARPNPC,1,2,{ @@ -655,7 +598,7 @@ OnTouch: cutin "sara_elder_irine4.bmp", 2; mes("[Doyen Irene]"); mes("Ahh Sara! I was just looking for you..."); - donpcevent instance_npcname("Doyen Irene#sarains1")+"::OnChat1"; + npctalk(_("Ahh Sara! I was just looking for you..."), instance_npcname("Doyen Irene#sarains1")); next; cutin "sara_9sara2.bmp", 2; mes("[Sara Irene]"); @@ -670,7 +613,7 @@ OnTouch: cutin "sara_elder_irine3.bmp", 2; mes("[Doyen Irene]"); mes("Guards! GUARDS! There is a murderer here! Catch him!"); - donpcevent instance_npcname("Doyen Irene#sarains1")+"::OnChat2"; + npctalk(_("Guards! GUARDS! There is a murderer here! Catch him!"), instance_npcname("Doyen Irene#sarains1")); next; mes("^FF0000The sound of many pairs of boots can be heard running outside!^000000"); dispbottom(_("The sound of many pairs of boots can be heard running outside!")); @@ -730,12 +673,6 @@ OnEnable: OnDisable: hideonnpc instance_npcname("Doyen Irene#sarains1"); end; -OnChat1: - npctalk(_("Ahh Sara! I was just looking for you...")); - end; -OnChat2: - npctalk(_("Guards! GUARDS! There is a murderer here! Catch him!")); - end; } 1@sara,107,327,0 script #controlsara CLEAR_NPC,{ @@ -763,72 +700,73 @@ OnTimer5000: end; OnRespawn: .@map$ = instance_mapname("1@sara"); - monster(.@map$, .@x, .@y, "Maggot", MG_ARCLOUSE, .@mobs, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,107,325,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,115,325,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,116,317,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,108,317,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,116,311,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,108,311,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,101,295,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,105,295,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,109,295,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,113,295,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,117,295,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,121,295,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,122,227,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,122,225,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,122,223,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,122,221,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,122,219,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,122,217,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,121,227,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,121,225,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,121,223,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,121,221,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,121,219,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,121,217,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,151,231,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,153,231,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,155,231,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,157,231,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,159,231,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,161,231,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,187,215,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,187,217,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,187,219,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,187,221,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,187,223,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,187,225,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,188,215,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,188,217,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,188,219,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,188,221,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,188,223,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,188,225,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,192,250,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,194,250,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,196,250,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,198,250,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,196,254,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,196,256,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,196,258,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,199,254,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,199,256,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,199,258,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,204,246,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,204,248,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,204,250,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,204,252,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,204,254,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,206,251,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, .@x, .@y, _("Maggot"), MG_ARCLOUSE, .@mobs, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 107, 325, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 115, 325, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 116, 317, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 108, 317, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 116, 311, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 108, 311, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 101, 295, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 105, 295, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 109, 295, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 113, 295, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 117, 295, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 121, 295, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 122, 227, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 122, 225, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 122, 223, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 122, 221, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 122, 219, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 122, 217, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 121, 227, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 121, 225, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 121, 223, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 121, 221, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 121, 219, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 121, 217, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 151, 231, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 153, 231, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 155, 231, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 157, 231, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 159, 231, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 161, 231, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 187, 215, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 187, 217, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 187, 219, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 187, 221, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 187, 223, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 187, 225, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 188, 215, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 188, 217, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 188, 219, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 188, 221, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 188, 223, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 188, 225, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 192, 250, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 194, 250, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 196, 250, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 198, 250, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 196, 254, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 196, 256, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 196, 258, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 199, 254, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 199, 256, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 199, 258, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 204, 246, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 204, 248, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 204, 250, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 204, 252, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 204, 254, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 206, 251, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); end; OnMyMobDead: .@callnum = 58; @@ -860,27 +798,27 @@ OnDisable: end; OnRespawn: .@map$ = instance_mapname("1@sara"); - monster(.@map$,228,312,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,227,312,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,229,315,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 228, 312, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 227, 312, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 229, 315, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,247,290,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,248,290,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,249,290,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 247, 290, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 248, 290, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 249, 290, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,223,264,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,230,248,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,227,248,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 223, 264, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 230, 248, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 227, 248, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,238,229,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,225,220,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,228,220,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 238, 229, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 225, 220, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 228, 220, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,220,212,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,223,212,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 220, 212, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 223, 212, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,219,203,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,222,203,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 219, 203, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 222, 203, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); end; OnMyMobDead: .@callnum = 16; @@ -912,59 +850,59 @@ OnDisable: end; OnRespawn: .@map$ = instance_mapname("1@sara"); - monster(.@map$, 255,91,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$, 255,92,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$, 255,93,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$, 255,94,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,254,91,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,254,92,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,254,93,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,254,94,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,228,65,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,228,64,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,228,63,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,228,62,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,198,62,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,195,56,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,195,60,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,195,62,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,192,56,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,192,60,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,192,62,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,187,68,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,188,63,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,120,39,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,121,39,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,121,39,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,93,64,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,93,68,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,93,72,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,93,76,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,90,64,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,90,68,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,90,72,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,90,76,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,87,67,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,87,63,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,87,59,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,87,55,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,84,67,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,84,63,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,84,59,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,84,55,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,81,67,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,81,63,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,81,59,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,81,55,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,81,51,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 255, 91, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 255, 92, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 255, 93, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 255, 94, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 254, 91, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 254, 92, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 254, 93, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 254, 94, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 228, 65, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 228, 64, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 228, 63, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 228, 62, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 198, 62, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 195, 56, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 195, 60, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 195, 62, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 192, 56, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 192, 60, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 192, 62, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 187, 68, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 188, 63, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 120, 39, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 121, 39, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 121, 39, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 93, 64, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 93, 68, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 93, 72, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 93, 76, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 90, 64, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 90, 68, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 90, 72, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 90, 76, _("A Gentle Guard Dog"), GUARDDOG, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 87, 67, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 87, 63, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 87, 59, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 87, 55, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 84, 67, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 84, 63, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 84, 59, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 84, 55, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 81, 67, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 81, 63, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 81, 59, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 81, 55, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 81, 51, _("A Fierce Guard Dog"), GUARDDOG2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); end; OnMyMobDead: .@callnum = 45; @@ -996,58 +934,58 @@ OnDisable: end; OnRespawn: .@map$ = instance_mapname("1@sara"); - monster(.@map$,155,97,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,157,97,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,159,97,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,161,97,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,201,113,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,204,113,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,207,113,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,210,113,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,213,113,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,201,117,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,204,117,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,207,117,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,210,117,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,213,117,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,223,152,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,223,148,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,223,144,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,221,152,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,221,148,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,221,144,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,151,174,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,153,174,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,155,174,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,157,174,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,159,174,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,151,177,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,153,177,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,155,177,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,157,177,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,159,177,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,151,180,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,153,180,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,155,180,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,157,180,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,159,180,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,173,139,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,170,139,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,167,139,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,164,139,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - - monster(.@map$,173,137,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,170,137,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,167,137,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - monster(.@map$,164,137,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 155, 97, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 157, 97, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 159, 97, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 161, 97, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 201, 113, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 204, 113, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 207, 113, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 210, 113, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 213, 113, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 201, 117, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 204, 117, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 207, 117, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 210, 117, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 213, 117, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 223, 152, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 223, 148, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 223, 144, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 221, 152, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 221, 148, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 221, 144, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 151, 174, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 153, 174, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 155, 174, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 157, 174, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 159, 174, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 151, 177, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 153, 177, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 155, 177, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 157, 177, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 159, 177, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 151, 180, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 153, 180, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 155, 180, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 157, 180, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 159, 180, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 173, 139, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 170, 139, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 167, 139, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 164, 139, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + + monster(.@map$, 173, 137, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 170, 137, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 167, 137, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + monster(.@map$, 164, 137, _("Payon Town Guard"), PAYONSOLDIER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); end; OnMyMobDead: .@callnum = 43; @@ -1079,7 +1017,7 @@ OnMyMobDead: cutin "sara_elder_irine4.bmp", 2; mes("[Doyen Irene]"); mes("Sara..."); - donpcevent instance_npcname("Doyen Irene#sarains2")+"::OnChat1"; + npctalk(_("Sara..."), instance_npcname("Doyen Irene#sarains2")); next; cutin "sara_9sara2.bmp", 2; mes("[Sara Irene]"); @@ -1089,7 +1027,7 @@ OnMyMobDead: cutin "sara_elder_irine4.bmp", 2; mes("[Doyen Irene]"); mes("I have been looking for you Sara. Please come with daddy it is very dangerous here!"); - donpcevent instance_npcname("Doyen Irene#sarains2")+"::OnChat2"; + npctalk(_("I have been looking for you Sara. Please come with daddy it is very dangerous here!"), instance_npcname("Doyen Irene#sarains2")); next; mesf("[%s]", strcharinfo(PC_NAME)); mes("I won't let you take Sara!"); @@ -1098,7 +1036,7 @@ OnMyMobDead: cutin "sara_elder_irine3.bmp", 2; mes("[Doyen Irene]"); mes("The murderer is here! Guards! We will finish him once and for all!"); - donpcevent instance_npcname("Doyen Irene#sarains2")+"::OnChat3"; + npctalk(_("The murderer is here! Guards! We will finish him once and for all!"), instance_npcname("Doyen Irene#sarains2")); next; mesf("[%s]", strcharinfo(PC_NAME)); mes("Sara... run! Save yourself!"); @@ -1136,15 +1074,6 @@ OnEnable: OnDisable: hideonnpc instance_npcname("Doyen Irene#sarains2"); end; -OnChat1: - npctalk(_("Sara...")); - end; -OnChat2: - npctalk(_("I have been looking for you Sara. Please come with daddy it is very dangerous here!")); - end; -OnChat3: - npctalk(_("The murderer is here! Guards! We will finish him once and for all!")); - end; } 1@sara,152,233,0 script #controlsara4 FAKE_NPC,{ @@ -1161,22 +1090,22 @@ OnDisable: end; OnRespawn: .@map$ = instance_mapname("1@sara"); - monster(.@map$,150,232,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - unittalk($@mobid[0], _("I am getting too old for this sh-")); - monster(.@map$,150,227,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - unittalk($@mobid[0], _("For Payon!!")); - monster(.@map$,150,222,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - unittalk($@mobid[0], _("For Payon!!")); - monster(.@map$,150,217,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - unittalk($@mobid[0], _("For Payon!!")); - monster(.@map$,161,232,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - unittalk($@mobid[0], _("For Payon!!")); - monster(.@map$,161,227,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - unittalk($@mobid[0], _("For Payon!!")); - monster(.@map$,161,222,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - unittalk($@mobid[0], _("For Payon!!")); - monster(.@map$,161,217,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - unittalk($@mobid[0], _("For Payon!!")); + .@mobid = monster(.@map$, 150, 232, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + unittalk(.@mobid, _("I am getting too old for this sh-")); + .@mobid = monster(.@map$, 150, 227, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + unittalk(.@mobid, _("For Payon!!")); + .@mobid = monster(.@map$, 150, 222, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + unittalk(.@mobid, _("For Payon!!")); + .@mobid = monster(.@map$, 150, 217, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + unittalk(.@mobid, _("For Payon!!")); + .@mobid = monster(.@map$, 161, 232, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + unittalk(.@mobid, _("For Payon!!")); + .@mobid = monster(.@map$, 161, 227, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + unittalk(.@mobid, _("For Payon!!")); + .@mobid = monster(.@map$, 161, 222, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + unittalk(.@mobid, _("For Payon!!")); + .@mobid = monster(.@map$, 161, 217, _("Payon Town Guard"), PAYONSOLDIER2, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + unittalk(.@mobid, _("For Payon!!")); end; OnMyMobDead: .@callnum = 8; @@ -1205,8 +1134,8 @@ OnDisable: end; OnRespawn: .@map$ = instance_mapname("1@sara"); - monster(.@map$,155,226,"Doyen Irene",2542,1,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); - unittalk($@mobid[0], _("I will have revenge for Sara's Mom!")); + .@mobid = monster(.@map$, 155, 226, _("Doyen Irene"), IRENE_ELDER, 1, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); + unittalk(.@mobid, _("I will have revenge for Sara's Mom!")); end; OnMyMobDead: .@callnum = 1; @@ -1312,18 +1241,18 @@ OnDisable: cutin "sara_beholder.bmp", 2; mes("[?????]"); mes("The time travellers cannot interfere any longer. You cannot stop us from meeting Sara."); - donpcevent instance_npcname("????-#saratalk")+"::OnChat1"; + npctalk(_("The time travellers cannot interfere any longer. You cannot stop us from meeting Sara."), instance_npcname("????-#saratalk")); next; mes("[?????]"); mes("You should go back to the time where you belong."); - donpcevent instance_npcname("????-#saratalk")+"::OnChat2"; + npctalk(_("You should go back to the time where you belong."), instance_npcname("????-#saratalk")); next; mes("^FF0000As you fall to the ground two dark figures approach Sara.^000000"); dispbottom(_("As you fall to the ground two dark figures approach Sara.")); next; mes("[?????]"); mes("A girl full of betrayal, despair, and hate. We will guide you to your ultimate fate."); - donpcevent instance_npcname("????-#saratalk")+"::OnChat3"; + npctalk(_("A girl full of betrayal, despair, and hate. We will guide you to your ultimate fate."), instance_npcname("????-#saratalk")); next; cutin "sara_9sara2.bmp", 2; mes("[Sara Irene]"); @@ -1333,7 +1262,7 @@ OnDisable: cutin "sara_beholder.bmp", 2; mes("[?????]"); mes("Sara Irene, he will make your dreams come true."); - donpcevent instance_npcname("????-#saratalk")+"::OnChat4"; + npctalk(_("Sara Irene, he will make your dreams come true."), instance_npcname("????-#saratalk")); next; cutin "sara_beholder.bmp", 255; mes("^FF0000One of the cloaked strangers covers Sara with their cloak and all three figures disappear.^000000"); @@ -1372,18 +1301,6 @@ OnEnable: OnDisable: hideonnpc instance_npcname("????-#saratalk"); end; -OnChat1: - npctalk(_("The time travellers cannot interfere any longer. You cannot stop us from meeting Sara.")); - end; -OnChat2: - npctalk(_("You should go back to the time where you belong.")); - end; -OnChat3: - npctalk(_("A girl full of betrayal, despair, and hate. We will guide you to your ultimate fate.")); - end; -OnChat4: - npctalk(_("Sara Irene, he will make your dreams come true.")); - end; } 1@sara,97,304,5 script Sara Irene#sarains4 4_F_SARAH_BABY,7,7,{ diff --git a/npc/re/scripts.conf b/npc/re/scripts.conf index 55b5066de..8529e7b31 100644 --- a/npc/re/scripts.conf +++ b/npc/re/scripts.conf @@ -91,7 +91,7 @@ "npc/re/instances/ghost_palace.txt", "npc/re/instances/HazyForest.txt", "npc/re/instances/MalangdoCulvert.txt", -"npc/re/instances/OctopusCave.txt", +"npc/re/instances/octopus_cave.txt", "npc/re/instances/OldGlastHeim.txt", "npc/re/instances/saras_memory.txt", "npc/re/instances/WolfchevLaboratory.txt", |