diff options
Diffstat (limited to 'npc')
-rw-r--r-- | npc/re/instances/BakonawaLake.txt | 652 | ||||
-rw-r--r-- | npc/re/instances/BuwayaCave.txt | 460 | ||||
-rw-r--r-- | npc/re/instances/EclageInterior.txt | 738 | ||||
-rw-r--r-- | npc/re/instances/HazyForest.txt | 1199 | ||||
-rw-r--r-- | npc/re/instances/MalangdoCulvert.txt | 1287 |
5 files changed, 2253 insertions, 2083 deletions
diff --git a/npc/re/instances/BakonawaLake.txt b/npc/re/instances/BakonawaLake.txt index 2868cc589..65622171b 100644 --- a/npc/re/instances/BakonawaLake.txt +++ b/npc/re/instances/BakonawaLake.txt @@ -34,223 +34,234 @@ //========================================================================= ma_scene01,174,179,4 script Taho 4_M_DEWZATIMAN,{ - disable_items; - if (checkweight(Knife,1) == 0) { - mes "You are carrying too many items. Come back after taking off some of them."; - close; + disable_items(); + if (checkweight(Knife, 1) == 0) { + mes("You are carrying too many items. Come back after taking off some of them."); + close(); } if (MaxWeight - Weight < 10000) { - mes "You are carrying too much weight. Come back after reducing the weight."; - close; + mes("You are carrying too much weight. Come back after reducing the weight."); + close(); } if (BaseLevel < 140) { - mes "[Taho]"; - mes "Hey. This is too dangerous a place for you. You cannot keep yourself safe. Get out of here and go to the village right now!"; - close; + mes("[Taho]"); + mes("Hey. This is too dangerous a place for you. You cannot keep yourself safe. Get out of here and go to the village right now!"); + close(); } if (malaya_bakona1 < 7 && malaya_bakona2 < 15) { - mes "[Taho]"; - mes "We are gonna be killed all by that Bakonawa. Ah, we must slay him but unfortunately we are not prepared."; - close; + mes("[Taho]"); + mes("We are gonna be killed all by that Bakonawa. Ah, we must slay him but unfortunately we are not prepared."); + close(); } .@party_id = getcharid(CHAR_ID_PARTY); - .@md_name$ = "Bakonawa Lake"; + .@md_name$ = _("Bakonawa Lake"); - .@baku_time = questprogress(12278,PLAYTIME); + .@baku_time = questprogress(12278, PLAYTIME); if (!.@baku_time) { - if (!questprogress(12279)) setquest 12279; + if (!questprogress(12279)) + setquest(12279); } if (!.@party_id) { - mes "[Taho]"; - mes "Isn't there any company who can go with you? Or even if you wanna go alone, come after organizing a party."; - close; + mes("[Taho]"); + mes("Isn't there any company who can go with you? Or even if you wanna go alone, come after organizing a party."); + close(); } if (!.@baku_time) { - if (getcharid(CHAR_ID_CHAR) == getpartyleader(.@party_id,2)) { - mes "[Taho]"; - mes "Are you the leader of the Bakonawa slayers? The road is not well so we have to go down the cliff with a rope, is that OK?"; - next; + if (getcharid(CHAR_ID_CHAR) == getpartyleader(.@party_id, 2)) { + mes("[Taho]"); + mes("Are you the leader of the Bakonawa slayers? The road is not well so we have to go down the cliff with a rope, is that OK?"); + next(); .@i = select("Please weave a rope.", "Now I will go down.", "Cancel."); } else { - mes "[Taho]"; - mes "You came for slaying Bakonawa. The leader of your party has to help me weaving the rope for going down."; - next; + mes("[Taho]"); + mes("You came for slaying Bakonawa. The leader of your party has to help me weaving the rope for going down."); + next(); .@i = select("", "Now I will go down.", "Cancel."); } - switch(.@i) { + switch (.@i) { case 1: - .@instance = instance_create(.@md_name$,.@party_id); + .@instance = instance_create(.@md_name$, .@party_id); if (.@instance < 0) { - mes "[Taho]"; - mes "Oh, the rope got dropped. I have to make a new one."; - close; + mes("[Taho]"); + mes("Oh, the rope got dropped. I have to make a new one."); + close(); } - if (instance_attachmap("1@ma_b",.@instance) == "") { - mes "^0000ff"+.@md_name$+"^000000 - Reservation Failed!"; + if (instance_attachmap("1@ma_b", .@instance) == "") { + mesf("^0000ff%s^000000 - Reservation Failed!", .@md_name$); instance_destroy(.@instance); - close; + close(); } - instance_set_timeout 7200,300,.@instance; + instance_set_timeout(7200, 300, .@instance); instance_init(.@instance); - mes "[Taho]"; - mes "Now I'm weaving, so you can go down when I'm done."; - close; + mes("[Taho]"); + mes("Now I'm weaving, so you can go down when I'm done."); + close(); case 2: - if( has_instance("1@ma_b") == "" ) { - mes "The memorial dungeon "+.@md_name$+" does not exist."; - mes "The party leader did not generate the dungeon yet."; - close; + if (has_instance("1@ma_b") == "") { + mesf("The memorial dungeon %s does not exist.", .@md_name$); + mes("The party leader did not generate the dungeon yet."); + close(); } else { - mapannounce "ma_scene01","A party member, "+strcharinfo(PC_NAME)+" of the party "+getpartyname(.@party_id)+" is entering the dungeon, "+.@md_name$+".",bc_map,"0x00ff99"; //FW_NORMAL 12 0 0 - setquest 12278; - warp "1@ma_b",64,51; + mapannounce("ma_scene01", sprintf(_$("A party member, %s of the party %s is entering the dungeon, %s."), strcharinfo(PC_NAME), getpartyname(.@party_id), .@md_name$), bc_map, C_SPRINGGREEN); //FW_NORMAL 12 0 0 + setquest(12278); + warp("1@ma_b", 64, 51); end; } case 3: - close; + close(); } } else if (.@baku_time == 1) { - mes "[Taho]"; - mes "The rope used for getting to the Lake is already broken. We are now cleaning up the surroundings so come back after some time."; - close; + mes("[Taho]"); + mes("The rope used for getting to the Lake is already broken. We are now cleaning up the surroundings so come back after some time."); + close(); } else if (.@baku_time == 2) { - mes "[Taho]"; - mes "It's all cleaned up around here. Now you can go down again after getting a rope."; - erasequest 12278; - close; + mes("[Taho]"); + mes("It's all cleaned up around here. Now you can go down again after getting a rope."); + erasequest(12278); + close(); } } sec_in02,26,26,4 script Bakonawa's Rage 4_M_DEWZATIMAN,{ - callfunc "F_GM_NPC"; - mes "[Taho]"; - mes "My name is Minky."; - if (callfunc("F_GM_NPC",1854,0) == 1) { - erasequest 12278; - erasequest 12279; + callfunc("F_GM_NPC"); + mes("[Taho]"); + mes("My name is Minky."); + if (callfunc("F_GM_NPC", 1854, 0) == 1) { + erasequest(12278); + erasequest(12279); malaya_bakona1 = 7; malaya_bakona2 = 15; } - close; + close(); } 1@ma_b,62,52,4 script Taho#nf 4_M_DEWZATIMAN,{ - mes "[Taho]"; - mes "Heehee, I could join the Bakonawa hunt, but I'd rather hide behind that rock and cheer you guys on."; - next; - mes "[Taho]"; - mes "Bakonawa becomes invincible at some point. When that time comes, listen to my guides carefully. Just trust me and all will be good."; - next; - if (getcharid(CHAR_ID_CHAR) == getpartyleader(getcharid(CHAR_ID_PARTY),2)) { - mes "[Taho]"; - mes "Now I will make Bakonawa spring out from the lake."; - next; - switch(select("Hold on! I'm not ready yet!", "Let's do it!")) { + mes("[Taho]"); + mes("Heehee, I could join the Bakonawa hunt, but I'd rather hide behind that rock and cheer you guys on."); + next(); + mes("[Taho]"); + mes("Bakonawa becomes invincible at some point. When that time comes, listen to my guides carefully. Just trust me and all will be good."); + next(); + if (getcharid(CHAR_ID_CHAR) == getpartyleader(getcharid(CHAR_ID_PARTY), 2)) { + mes("[Taho]"); + mes("Now I will make Bakonawa spring out from the lake."); + next(); + switch (select("Hold on! I'm not ready yet!", "Let's do it!")) { case 1: - mes "[Taho]"; - mes "Oh... alright... tell me when you are ready."; - close; + mes("[Taho]"); + mes("Oh... alright... tell me when you are ready."); + close(); case 2: - mes "[Taho]"; - mes "Then I will drop a drop of Albopal to this lake."; - next; - mes "[Taho]"; - mes "Once Bakonawa tastes this, he will surface..."; - donpcevent instance_npcname("#Bakonawan1")+"::OnStart"; - disablenpc instance_npcname("Taho#nf"); - close; + mes("[Taho]"); + mes("Then I will drop a drop of Albopal to this lake."); + next(); + mes("[Taho]"); + mes("Once Bakonawa tastes this, he will surface..."); + donpcevent(instance_npcname("#Bakonawan1")+"::OnStart"); + disablenpc(instance_npcname("Taho#nf")); + close(); } } else { - mes "[Taho]"; - mes "I am dropping the Alpopal to make Bakonawa mad. Bakonawa can be a good source of protein once we get him."; - close; + mes("[Taho]"); + mes("I am dropping the Alpopal to make Bakonawa mad. Bakonawa can be a good source of protein once we get him."); + close(); } } 1@ma_b,36,111,4 script #Bakonawan1 CLEAR_NPC,{ end; OnInstanceInit: - disablenpc instance_npcname("#Bakonawan1"); + disablenpc(instance_npcname("#Bakonawan1")); end; OnStart: - enablenpc instance_npcname("#Bakonawan1"); + enablenpc(instance_npcname("#Bakonawan1")); .@map$ = instance_mapname("1@ma_b"); - mapannounce .@map$,"Taho: I can see him there on the surface! ATTACK!!!",bc_map,"0x00ffff"; //FW_NORMAL 15 0 0 - monster .@map$,78,81,"Bakonawa",2320,1,instance_npcname("#Bakonawan1")+"::OnMyMobDead"; //original: (78,83) - initnpctimer; + mapannounce(.@map$, _("Taho: I can see him there on the surface! ATTACK!!!"), bc_map, C_AQUA); //FW_NORMAL 15 0 0 + monster(.@map$, 78, 81, _("Bakonawa"), BAKONAWA_1, 1, instance_npcname("#Bakonawan1")+"::OnMyMobDead"); //original: (78, 83) + initnpctimer(); end; OnFail: - killmonster instance_mapname("1@ma_b"),instance_npcname("#Bakonawan1")+"::OnMyMobDead"; + killmonster(instance_mapname("1@ma_b"), instance_npcname("#Bakonawan1")+"::OnMyMobDead"); end; OnMyMobDead: .@map$ = instance_mapname("1@ma_b"); - if (mobcount(.@map$,instance_npcname("#Bakonawan1")+"::OnMyMobDead") < 1) { - donpcevent instance_npcname("#BakonawaDeadn1")+"::OnStart"; - killmonster .@map$,instance_npcname("#Bakonawan1")+"::OnMyMobDead"; - stopnpctimer; - disablenpc instance_npcname("#Bakonawan1"); + if (mobcount(.@map$, instance_npcname("#Bakonawan1")+"::OnMyMobDead") < 1) { + donpcevent(instance_npcname("#BakonawaDeadn1")+"::OnStart"); + killmonster(.@map$, instance_npcname("#Bakonawan1")+"::OnMyMobDead"); + stopnpctimer(); + disablenpc(instance_npcname("#Bakonawan1")); } end; -OnTimer1000: callsub OnAnnounce,"10 minutes"; -OnTimer60000: callsub OnAnnounce,"9 minutes"; -OnTimer120000: callsub OnAnnounce,"8 minutes"; -OnTimer180000: callsub OnAnnounce,"7 minutes"; -OnTimer240000: callsub OnAnnounce,"6 minutes"; -OnTimer300000: callsub OnAnnounce,"5 minutes"; -OnTimer360000: callsub OnAnnounce,"4 minutes"; -OnTimer420000: callsub OnAnnounce,"3 minutes"; -OnTimer480000: callsub OnAnnounce,"2 minutes"; -OnTimer540000: callsub OnAnnounce,"1 minute"; +OnTimer1000: + callsub(OnAnnounce, _("10 minutes")); +OnTimer60000: + callsub(OnAnnounce, _("9 minutes")); +OnTimer120000: + callsub(OnAnnounce, _("8 minutes")); +OnTimer180000: + callsub(OnAnnounce, _("7 minutes")); +OnTimer240000: + callsub(OnAnnounce, _("6 minutes")); +OnTimer300000: + callsub(OnAnnounce, _("5 minutes")); +OnTimer360000: + callsub(OnAnnounce, _("4 minutes")); +OnTimer420000: + callsub(OnAnnounce, _("3 minutes")); +OnTimer480000: + callsub(OnAnnounce, _("2 minutes")); +OnTimer540000: + callsub(OnAnnounce, _("1 minute")); OnTimer570000: - mapannounce instance_mapname("1@ma_b"),"Time Limit: 30 seconds",bc_map,"0xff4400"; //FW_NORMAL 18 0 0 - donpcevent instance_npcname("#SummonPuppetsn1")+"::OnStart"; + mapannounce(instance_mapname("1@ma_b"), _("Time Limit: 30 seconds"), bc_map, "0xff4400"); //FW_NORMAL 18 0 0 + donpcevent(instance_npcname("#SummonPuppetsn1")+"::OnStart"); end; OnTimer600000: .@map$ = instance_mapname("1@ma_b"); - mapannounce .@map$,"Bakonawa has escaped deep into the lake.",bc_map,"0xffff00"; //FW_NORMAL 20 0 0 - donpcevent instance_npcname("Taho#Fail")+"::OnStart"; - donpcevent instance_npcname("#Bakonawan1")+"::OnFail"; - killmonster .@map$,instance_npcname("#Bakonawan1")+"::OnMyMobDead"; - stopnpctimer; - disablenpc instance_npcname("#Bakonawan1"); + mapannounce(.@map$, _("Bakonawa has escaped deep into the lake."), bc_map, C_YELLOW); //FW_NORMAL 20 0 0 + donpcevent(instance_npcname("Taho#Fail")+"::OnStart"); + donpcevent(instance_npcname("#Bakonawan1")+"::OnFail"); + killmonster(.@map$, instance_npcname("#Bakonawan1")+"::OnMyMobDead"); + stopnpctimer(); + disablenpc(instance_npcname("#Bakonawan1")); end; OnAnnounce: - mapannounce instance_mapname("1@ma_b"),"Time Limit: "+getarg(0),bc_map,"0xff4400"; //FW_NORMAL 15 0 0 - donpcevent instance_npcname("#SummonPuppetsn1")+"::OnStart"; + mapannounce(instance_mapname("1@ma_b"), sprintf(_$("Time Limit: %s"), getarg(0)), bc_map, "0xff4400"); //FW_NORMAL 15 0 0 + donpcevent(instance_npcname("#SummonPuppetsn1")+"::OnStart"); end; } 1@ma_b,78,81,0 script #SummonPuppetsn1 HIDDEN_WARP_NPC,4,5,{ end; OnInstanceInit: - disablenpc instance_npcname("#SummonPuppetsn1"); + disablenpc(instance_npcname("#SummonPuppetsn1")); end; OnStart: - stopnpctimer; - enablenpc instance_npcname("#SummonPuppetsn1"); - initnpctimer; + stopnpctimer(); + enablenpc(instance_npcname("#SummonPuppetsn1")); + initnpctimer(); end; OnTouch: - stopnpctimer; - disablenpc instance_npcname("#SummonPuppetsn1"); + stopnpctimer(); + disablenpc(instance_npcname("#SummonPuppetsn1")); end; OnTimer5000: - setarray .@x[0],79,71,60,61,57,89,95,96,99; - setarray .@y[0],71,72,80,90,99,73,82,90,99; + setarray(.@x[0], 79, 71, 60, 61, 57, 89, 95, 96, 99); + setarray(.@y[0], 71, 72, 80, 90, 99, 73, 82, 90, 99); .@map$ = instance_mapname("1@ma_b"); - for(.@i = 0; .@i<9; ++.@i) { - .@rand = rand(1,10); + for (.@i = 0; .@i < 9; ++.@i) { + .@rand = rand(1, 10); if (.@rand > 7) - monster .@map$,.@x[.@i],.@y[.@i],"Bakonawa's Will",2337,1,instance_npcname("#SummonPuppetsn1")+"::OnMyMobDead"; + monster(.@map$, .@x[.@i], .@y[.@i], _("Bakonawa's Will"), HIDDEN_MOB, 1, instance_npcname("#SummonPuppetsn1")+"::OnMyMobDead"); else if (.@rand < 4) - monster .@map$,.@x[.@i],.@y[.@i],"Bakonawa's Will",2343,1,instance_npcname("#SummonPuppetsn1")+"::OnMyMobDead"; + monster(.@map$, .@x[.@i], .@y[.@i], _("Bakonawa's Will"), HIDDEN_MOB_W, 1, instance_npcname("#SummonPuppetsn1")+"::OnMyMobDead"); } end; OnTimer50000: - killmonster instance_mapname("1@ma_b"),instance_npcname("#SummonPuppetsn1")+"::OnMyMobDead"; - stopnpctimer; - disablenpc instance_npcname("#SummonPuppetsn1"); + killmonster(instance_mapname("1@ma_b"), instance_npcname("#SummonPuppetsn1")+"::OnMyMobDead"); + stopnpctimer(); + disablenpc(instance_npcname("#SummonPuppetsn1")); end; OnMyMobDead: end; @@ -259,111 +270,126 @@ OnMyMobDead: 1@ma_b,1,5,4 script #BakonawaDeadn1 CLEAR_NPC,{ end; OnInstanceInit: - disablenpc instance_npcname("#BakonawaDeadn1"); + disablenpc(instance_npcname("#BakonawaDeadn1")); end; OnStart: - enablenpc instance_npcname("#BakonawaDeadn1"); - initnpctimer; + enablenpc(instance_npcname("#BakonawaDeadn1")); + initnpctimer(); end; OnTimer100: - mapannounce instance_mapname("1@ma_b"),"Taho: Good! Bakonawa is hidden under water. He will now try to swallow the moon.",bc_map,"0x00ffff"; //FW_NORMAL 15 0 0 + mapannounce(instance_mapname("1@ma_b"), _("Taho: Good! Bakonawa is hidden under water. He will now try to swallow the moon."), bc_map, C_AQUA); //FW_NORMAL 15 0 0 end; OnTimer5000: - mapannounce instance_mapname("1@ma_b"),"Taho: We must make loud noises with caldron and gong so he can never concentrate on the moon!",bc_map,"0x00ffff"; //FW_NORMAL 15 0 0 + mapannounce(instance_mapname("1@ma_b"), _("Taho: We must make loud noises with caldron and gong so he can never concentrate on the moon!"), bc_map, C_AQUA); //FW_NORMAL 15 0 0 end; OnTimer10000: - mapannounce instance_mapname("1@ma_b"),"Taho: Do not engage on him even if he come above the surface. Just make loud noises!",bc_map,"0x00ffff"; //FW_NORMAL 15 0 0 + mapannounce(instance_mapname("1@ma_b"), _("Taho: Do not engage on him even if he come above the surface. Just make loud noises!"), bc_map, C_AQUA); //FW_NORMAL 15 0 0 end; OnTimer15000: - mapannounce instance_mapname("1@ma_b"),"Mission - Destroy 2 caldrons and 2 gongs on left and right sides of the lake.",bc_map,"0xff3300"; //FW_NORMAL 15 0 0 - donpcevent instance_npcname("#Bakonawan2")+"::OnStart"; - stopnpctimer; - disablenpc instance_npcname("#BakonawaDeadn1"); + mapannounce(instance_mapname("1@ma_b"), _("Mission - Destroy 2 caldrons and 2 gongs on left and right sides of the lake."), bc_map, "0xff3300"); //FW_NORMAL 15 0 0 + donpcevent(instance_npcname("#Bakonawan2")+"::OnStart"); + stopnpctimer(); + disablenpc(instance_npcname("#BakonawaDeadn1")); end; } 1@ma_b,36,111,4 script #Bakonawan2 CLEAR_NPC,{ end; OnInstanceInit: - disablenpc instance_npcname("#Bakonawan2"); + disablenpc(instance_npcname("#Bakonawan2")); end; OnStart: - enablenpc instance_npcname("#Bakonawan2"); + enablenpc(instance_npcname("#Bakonawan2")); .@label$ = instance_npcname("#Bakonawan2")+"::OnMyMobDead"; .@map$ = instance_mapname("1@ma_b"); - monster .@map$,95,98,"Caldron",2328,1,.@label$; - monster .@map$,60,98,"Caldron",2328,1,.@label$; - monster .@map$,97,104,"Gong",2328,1,.@label$; - monster .@map$,58,104,"Gong",2328,1,.@label$; - donpcevent instance_npcname("#Bakonawan2-1")+"::OnStart"; - initnpctimer; + monster(.@map$, 95, 98, _("Caldron"), MA_DRUM, 1, .@label$); + monster(.@map$, 60, 98, _("Caldron"), MA_DRUM, 1, .@label$); + monster(.@map$, 97, 104, _("Gong"), MA_DRUM, 1, .@label$); + monster(.@map$, 58, 104, _("Gong"), MA_DRUM, 1, .@label$); + donpcevent(instance_npcname("#Bakonawan2-1")+"::OnStart"); + initnpctimer(); end; OnMyMobDead: .@map$ = instance_mapname("1@ma_b"); - .@mob_dead_num = mobcount(.@map$,instance_npcname("#Bakonawan2")+"::OnMyMobDead"); + .@mob_dead_num = mobcount(.@map$, instance_npcname("#Bakonawan2")+"::OnMyMobDead"); if (.@mob_dead_num < 1) { - donpcevent instance_npcname("#Bakonawan2-1")+"::OnEnd"; - stopnpctimer; - disablenpc instance_npcname("#Bakonawan2"); - } else - mapannounce .@map$,"Taho: Good! "+.@mob_dead_num+" left to go!",bc_map,"0x00ffff"; //FW_NORMAL 15 0 0 - end; -OnTimer1000: callsub OnAnnounce,"5 minutes",15,1; -OnTimer60000: callsub OnAnnounce,"4 minutes",15,1; -OnTimer120000: callsub OnAnnounce,"3 minutes",15,1; -OnTimer180000: callsub OnAnnounce,"2 minutes",15,1; -OnTimer240000: callsub OnAnnounce,"1 minute",15,1; -OnTimer270000: callsub OnAnnounce,"30 seconds",15,0; -OnTimer280000: callsub OnAnnounce,"20 seconds",15,0; -OnTimer290000: callsub OnAnnounce,"10 seconds",15,0; -OnTimer295000: callsub OnAnnounce,"5 seconds",16,0; -OnTimer296000: callsub OnAnnounce,"4 seconds",17,0; -OnTimer297000: callsub OnAnnounce,"3 seconds",18,0; -OnTimer298000: callsub OnAnnounce,"2 seconds",19,0; -OnTimer299000: callsub OnAnnounce,"1 second",20,0; + donpcevent(instance_npcname("#Bakonawan2-1")+"::OnEnd"); + stopnpctimer(); + disablenpc(instance_npcname("#Bakonawan2")); + } else { + mapannounce(.@map$, sprintf(_$("Taho: Good! %d left to go!"), .@mob_dead_num), bc_map, C_AQUA); //FW_NORMAL 15 0 0 + } + end; +OnTimer1000: + callsub(OnAnnounce, _("5 minutes"), 15, 1); +OnTimer60000: + callsub(OnAnnounce, _("4 minutes"), 15, 1); +OnTimer120000: + callsub(OnAnnounce, _("3 minutes"), 15, 1); +OnTimer180000: + callsub(OnAnnounce, _("2 minutes"), 15, 1); +OnTimer240000: + callsub(OnAnnounce, _("1 minute"), 15, 1); +OnTimer270000: + callsub(OnAnnounce, _("30 seconds"), 15, 0); +OnTimer280000: + callsub(OnAnnounce, _("20 seconds"), 15, 0); +OnTimer290000: + callsub(OnAnnounce, _("10 seconds"), 15, 0); +OnTimer295000: + callsub(OnAnnounce, _("5 seconds"), 16, 0); +OnTimer296000: + callsub(OnAnnounce, _("4 seconds"), 17, 0); +OnTimer297000: + callsub(OnAnnounce, _("3 seconds"), 18, 0); +OnTimer298000: + callsub(OnAnnounce, _("2 seconds"), 19, 0); +OnTimer299000: + callsub(OnAnnounce, _("1 second"), 20, 0); OnTimer300000: .@map$ = instance_mapname("1@ma_b"); - mapannounce .@map$,"Bakonawa has escaped deep into the lake.",bc_map,"0xffff00"; //FW_NORMAL 20 0 0 - donpcevent instance_npcname("Taho#Fail")+"::OnStart"; - donpcevent instance_npcname("#Bakonawan2-1")+"::OnFail"; - killmonster .@map$,instance_npcname("#Bakonawan2")+"::OnMyMobDead"; - stopnpctimer; - disablenpc instance_npcname("#Bakonawan2"); + mapannounce(.@map$, _("Bakonawa has escaped deep into the lake."), bc_map, C_YELLOW); //FW_NORMAL 20 0 0 + donpcevent(instance_npcname("Taho#Fail")+"::OnStart"); + donpcevent(instance_npcname("#Bakonawan2-1")+"::OnFail"); + killmonster(.@map$, instance_npcname("#Bakonawan2")+"::OnMyMobDead"); + stopnpctimer(); + disablenpc(instance_npcname("#Bakonawan2")); end; OnAnnounce: - mapannounce instance_mapname("1@ma_b"),"Time Limit: "+getarg(0),bc_map,"0xff4400"; //FW_NORMAL getarg(1) 0 0 - if (getarg(2)) donpcevent instance_npcname("#SummonPuppetsn1")+"::OnStart"; + mapannounce(instance_mapname("1@ma_b"), sprintf(_$("Time Limit: %s"), getarg(0)), bc_map, "0xff4400"); //FW_NORMAL getarg(1) 0 0 + if (getarg(2)) + donpcevent(instance_npcname("#SummonPuppetsn1")+"::OnStart"); end; } 1@ma_b,36,111,4 script #Bakonawan2-1 CLEAR_NPC,{ end; OnInstanceInit: - disablenpc instance_npcname("#Bakonawan2-1"); + disablenpc(instance_npcname("#Bakonawan2-1")); end; OnStart: - enablenpc instance_npcname("#Bakonawan2-1"); - monster instance_mapname("1@ma_b"),78,81,"Enraged Bakonawa",2321,1,instance_npcname("#Bakonawan2-1")+"::OnMyMobDead"; //original: (78,93) + enablenpc(instance_npcname("#Bakonawan2-1")); + monster(instance_mapname("1@ma_b"), 78, 81, _("Enraged Bakonawa"), BAKONAWA_2, 1, instance_npcname("#Bakonawan2-1")+"::OnMyMobDead"); //original: (78, 93) end; OnFail: - killmonster instance_mapname("1@ma_b"),instance_npcname("#Bakonawan2-1")+"::OnMyMobDead"; + killmonster(instance_mapname("1@ma_b"), instance_npcname("#Bakonawan2-1")+"::OnMyMobDead"); end; OnEnd: - enablenpc instance_npcname("#Bakonawan2-1"); - killmonster instance_mapname("1@ma_b"),instance_npcname("#Bakonawan2-1")+"::OnMyMobDead"; - initnpctimer; + enablenpc(instance_npcname("#Bakonawan2-1")); + killmonster(instance_mapname("1@ma_b"), instance_npcname("#Bakonawan2-1")+"::OnMyMobDead"); + initnpctimer(); end; OnTimer1000: - mapannounce instance_mapname("1@ma_b"),"Taho: He is back into the lake again. Is it over?",bc_map,"0x00ffff"; //FW_NORMAL 15 0 0 + mapannounce(instance_mapname("1@ma_b"), _("Taho: He is back into the lake again. Is it over?"), bc_map, C_AQUA); //FW_NORMAL 15 0 0 end; OnTimer5000: - mapannounce instance_mapname("1@ma_b"),"Taho: UHM! Something is moving up rapidly under the water! Ba... Bakonawa is coming!!",bc_map,"0x00ffff"; //FW_NORMAL 15 0 0 + mapannounce(instance_mapname("1@ma_b"), _("Taho: UHM! Something is moving up rapidly under the water! Ba... Bakonawa is coming!!"), bc_map, C_AQUA); //FW_NORMAL 15 0 0 end; OnTimer10000: - mapannounce instance_mapname("1@ma_b"),"Mission - Eliminate Bakonawa who became more fierce.",bc_map,"0xff3300"; //FW_NORMAL 15 0 0 - donpcevent instance_npcname("#Bakonawan3")+"::OnStart"; - stopnpctimer; - disablenpc instance_npcname("#Bakonawan2-1"); + mapannounce(instance_mapname("1@ma_b"), _("Mission - Eliminate Bakonawa who became more fierce."), bc_map, "0xff3300"); //FW_NORMAL 15 0 0 + donpcevent(instance_npcname("#Bakonawan3")+"::OnStart"); + stopnpctimer(); + disablenpc(instance_npcname("#Bakonawan2-1")); end; OnMyMobDead: end; @@ -372,190 +398,212 @@ OnMyMobDead: 1@ma_b,36,111,4 script #Bakonawan3 CLEAR_NPC,{ end; OnInstanceInit: - disablenpc instance_npcname("#Bakonawan3"); + disablenpc(instance_npcname("#Bakonawan3")); end; OnStart: - enablenpc instance_npcname("#Bakonawan3"); - initnpctimer; - monster instance_mapname("1@ma_b"),78,81,"Enraged Bakonawa",2322,1,instance_npcname("#Bakonawan3")+"::OnMyMobDead"; //original: (78,83) - donpcevent instance_npcname("#Bakonawan3-1")+"::OnStart"; + enablenpc(instance_npcname("#Bakonawan3")); + initnpctimer(); + monster(instance_mapname("1@ma_b"), 78, 81, _("Enraged Bakonawa"), BAKONAWA_3, 1, instance_npcname("#Bakonawan3")+"::OnMyMobDead"); //original: (78, 83) + donpcevent(instance_npcname("#Bakonawan3-1")+"::OnStart"); end; OnMyMobDead: .@map$ = instance_mapname("1@ma_b"); - .@mob_dead_num = mobcount(.@map$,instance_npcname("#Bakonawan3")+"::OnMyMobDead"); + .@mob_dead_num = mobcount(.@map$, instance_npcname("#Bakonawan3")+"::OnMyMobDead"); if (.@mob_dead_num < 1) { - mapannounce .@map$,"Taho: We got him! I can see he has threw up something that looks like a box.",bc_map,"0x00ffff"; //FW_NORMAL 15 0 0 - donpcevent instance_npcname("Taho#Completed")+"::OnStart"; - donpcevent instance_npcname("#Bakonawan3-1")+"::OnEnd"; - killmonster .@map$,instance_npcname("#Bakonawan3")+"::OnMyMobDead"; - stopnpctimer; - disablenpc instance_npcname("#Bakonawan3"); + mapannounce(.@map$, _("Taho: We got him! I can see he has threw up something that looks like a box."), bc_map, C_AQUA); //FW_NORMAL 15 0 0 + donpcevent(instance_npcname("Taho#Completed")+"::OnStart"); + donpcevent(instance_npcname("#Bakonawan3-1")+"::OnEnd"); + killmonster(.@map$, instance_npcname("#Bakonawan3")+"::OnMyMobDead"); + stopnpctimer(); + disablenpc(instance_npcname("#Bakonawan3")); } end; OnTimer1000: - callsub OnAnnounce,"10 minutes",15,1; + callsub(OnAnnounce, _("10 minutes"), 15, 1); end; OnTimer60000: OnTimer120000: OnTimer180000: OnTimer240000: - donpcevent instance_npcname("#SummonPuppetsn1")+"::OnStart"; - end; -OnTimer300000: callsub OnAnnounce,"5 minutes",15,1; -OnTimer360000: callsub OnAnnounce,"4 minutes",15,1; -OnTimer420000: callsub OnAnnounce,"3 minutes",15,1; -OnTimer480000: callsub OnAnnounce,"2 minutes",15,1; -OnTimer540000: callsub OnAnnounce,"1 minute",15,1; -OnTimer570000: callsub OnAnnounce,"30 seconds",15,0; -OnTimer580000: callsub OnAnnounce,"20 seconds",15,0; -OnTimer590000: callsub OnAnnounce,"10 seconds",15,0; -OnTimer595000: callsub OnAnnounce,"5 seconds",16,0; -OnTimer596000: callsub OnAnnounce,"4 seconds",17,0; -OnTimer597000: callsub OnAnnounce,"3 seconds",18,0; -OnTimer598000: callsub OnAnnounce,"2 seconds",19,0; -OnTimer599000: callsub OnAnnounce,"1 second",20,0; + donpcevent(instance_npcname("#SummonPuppetsn1")+"::OnStart"); + end; +OnTimer300000: + callsub(OnAnnounce, _("5 minutes"), 15, 1); +OnTimer360000: + callsub(OnAnnounce, _("4 minutes"), 15, 1); +OnTimer420000: + callsub(OnAnnounce, _("3 minutes"), 15, 1); +OnTimer480000: + callsub(OnAnnounce, _("2 minutes"), 15, 1); +OnTimer540000: + callsub(OnAnnounce, _("1 minute"), 15, 1); +OnTimer570000: + callsub(OnAnnounce, _("30 seconds"), 15, 0); +OnTimer580000: + callsub(OnAnnounce, _("20 seconds"), 15, 0); +OnTimer590000: + callsub(OnAnnounce, _("10 seconds"), 15, 0); +OnTimer595000: + callsub(OnAnnounce, _("5 seconds"), 16, 0); +OnTimer596000: + callsub(OnAnnounce, _("4 seconds"), 17, 0); +OnTimer597000: + callsub(OnAnnounce, _("3 seconds"), 18, 0); +OnTimer598000: + callsub(OnAnnounce, _("2 seconds"), 19, 0); +OnTimer599000: + callsub(OnAnnounce, _("1 second"), 20, 0); OnTimer600000: .@map$ = instance_mapname("1@ma_b"); - mapannounce .@map$,"Bakonawa has escaped deep into the lake.",bc_map,"0xffff00"; //FW_NORMAL 20 0 0 - donpcevent instance_npcname("Taho#Fail")+"::OnStart"; - killmonster .@map$,instance_npcname("#Bakonawan3")+"::OnMyMobDead"; - stopnpctimer; - disablenpc instance_npcname("#Bakonawan3"); + mapannounce(.@map$, _("Bakonawa has escaped deep into the lake."), bc_map, C_YELLOW); //FW_NORMAL 20 0 0 + donpcevent(instance_npcname("Taho#Fail")+"::OnStart"); + killmonster(.@map$, instance_npcname("#Bakonawan3")+"::OnMyMobDead"); + stopnpctimer(); + disablenpc(instance_npcname("#Bakonawan3")); end; OnAnnounce: - mapannounce instance_mapname("1@ma_b"),"Time Limit: "+getarg(0),bc_map,"0xff4400"; //FW_NORMAL getarg(1) 0 0 - if (getarg(2)) donpcevent instance_npcname("#SummonPuppetsn1")+"::OnStart"; + mapannounce(instance_mapname("1@ma_b"), sprintf(_$("Time Limit: %s"), getarg(0)), bc_map, "0xff4400"); //FW_NORMAL getarg(1) 0 0 + if (getarg(2)) + donpcevent(instance_npcname("#SummonPuppetsn1")+"::OnStart"); end; } 1@ma_b,36,111,4 script #Bakonawan3-1 CLEAR_NPC,{ end; OnInstanceInit: - disablenpc instance_npcname("#Bakonawan3-1"); + disablenpc(instance_npcname("#Bakonawan3-1")); end; OnStart: - initnpctimer; + initnpctimer(); end; OnEnd: - killmonster instance_mapname("1@ma_b"),instance_npcname("#Bakonawan3-1")+"::OnMyMobDead"; - //showdigit 0; - stopnpctimer; + killmonster(instance_mapname("1@ma_b"), instance_npcname("#Bakonawan3-1")+"::OnMyMobDead"); + //showdigit(0); + stopnpctimer(); end; OnMyMobDead: - showdigit mobcount(instance_mapname("1@ma_b"),instance_npcname("#Bakonawan3-1")+"::OnMyMobDead"); - end; -OnTimer120000: callsub OnMobSpawn,10; -OnTimer180000: callsub OnMobSpawn,15; -OnTimer240000: callsub OnMobSpawn,20; -//OnTimer300000: callsub OnMobSpawn,25; -OnTimer300000: callsub OnMobSpawn,30; -OnTimer360000: callsub OnMobSpawn,35; -OnTimer420000: callsub OnMobSpawn,40; -OnTimer480000: callsub OnMobSpawn,45; -OnTimer540000: callsub OnMobSpawn,50; + showdigit(mobcount(instance_mapname("1@ma_b"), instance_npcname("#Bakonawan3-1")+"::OnMyMobDead")); + end; +OnTimer120000: + callsub(OnMobSpawn, 10); +OnTimer180000: + callsub(OnMobSpawn, 15); +OnTimer240000: + callsub(OnMobSpawn, 20); +//OnTimer300000: +// callsub(OnMobSpawn, 25); +OnTimer300000: + callsub(OnMobSpawn, 30); +OnTimer360000: + callsub(OnMobSpawn, 35); +OnTimer420000: + callsub(OnMobSpawn, 40); +OnTimer480000: + callsub(OnMobSpawn, 45); +OnTimer540000: + callsub(OnMobSpawn, 50); OnTimer600000: - killmonster instance_mapname("1@ma_b"),instance_npcname("#Bakonawan3-1")+"::OnMyMobDead"; - stopnpctimer; + killmonster(instance_mapname("1@ma_b"), instance_npcname("#Bakonawan3-1")+"::OnMyMobDead"); + stopnpctimer(); end; OnMobSpawn: .@label$ = instance_npcname("#Bakonawan3-1")+"::OnMyMobDead"; .@map$ = instance_mapname("1@ma_b"); - killmonster .@map$,.@label$; - .@mob_dead_num = mobcount(.@map$,.@label$); + killmonster(.@map$, .@label$); + .@mob_dead_num = mobcount(.@map$, .@label$); if (.@mob_dead_num < 50) { .@mob_rg = 50 - .@mob_dead_num; if (.@mob_rg > getarg(0)) .@mob_rg = getarg(0); - while(1) { - areamonster .@map$,74,74,82,74,"Bakonawa's Puppet",2334,1,.@label$; - .@mob_dead_num = mobcount(.@map$,.@label$); - if (.@mob_dead_num >= .@mob_rg) { + while (true) { + areamonster(.@map$, 74, 74, 82, 74, _("Bakonawa's Puppet"), G_WAKWAK, 1, .@label$); + .@mob_dead_num = mobcount(.@map$, .@label$); + if (.@mob_dead_num >= .@mob_rg) break; - } } } end; } 1@ma_b,62,52,4 script Taho#Completed 4_M_DEWZATIMAN,{ - disable_items; - if (checkweight(Knife,1) == 0) { - mes "It seems you are carrying too many different kinds of items. Please try again after reducing it."; - close; + disable_items(); + if (checkweight(Knife, 1) == 0) { + mes("It seems you are carrying too many different kinds of items. Please try again after reducing it."); + close(); } if (MaxWeight - Weight < 10000) { - mes "It seems you are already carrying items of too much weight. Please try again after reducing the weight."; - close; - } - if (questprogress(12279,HUNTING) == 2) { - erasequest 12279; - mes "[Taho]"; - mes "This was found from Bakonawa's corpse. It would be better if you take this."; + mes("It seems you are already carrying items of too much weight. Please try again after reducing the weight."); + close(); + } + if (questprogress(12279, HUNTING) == 2) { + erasequest(12279); + mes("[Taho]"); + mes("This was found from Bakonawa's corpse. It would be better if you take this."); // if (IsPremiumPcCafe == 10) - getitem Ancient_Grudge,7; + getitem(Ancient_Grudge, 7); // else -// getitem Ancient_Grudge,5; - getexp 0,100000; - next; +// getitem(Ancient_Grudge, 5); + getexp(0, 100000); + next(); } - mes "[Taho]"; - mes "We better hurry and get out of this place. This place is still dangerous even without Bakonawa..."; - next; - mes "[Taho]"; - mes "Then let's use to the rope to go up!"; - close2; - warp "ma_scene01",175,176; + mes("[Taho]"); + mes("We better hurry and get out of this place. This place is still dangerous even without Bakonawa..."); + next(); + mes("[Taho]"); + mes("Then let's use to the rope to go up!"); + close2(); + warp("ma_scene01", 175, 176); end; OnInstanceInit: - disablenpc instance_npcname("Taho#Completed"); + disablenpc(instance_npcname("Taho#Completed")); end; OnStart: - enablenpc instance_npcname("Taho#Completed"); - initnpctimer; + enablenpc(instance_npcname("Taho#Completed")); + initnpctimer(); end; OnTimer1000: - monster instance_mapname("1@ma_b"),78,74,"Bakonawa Treasure Box",2335,1; + monster(instance_mapname("1@ma_b"), 78, 74, _("Bakonawa Treasure Box"), MA_TREASURE, 1); end; OnTimer10000: - mapannounce instance_mapname("1@ma_b"),"Taho: After opening the treasure box, please visit me at the top of the hill. I've got something to give to you.",bc_map,"0x00ffff"; //FW_NORMAL 15 0 0 - stopnpctimer; + mapannounce(instance_mapname("1@ma_b"), _("Taho: After opening the treasure box, please visit me at the top of the hill. I've got something to give to you."), bc_map, C_AQUA); //FW_NORMAL 15 0 0 + stopnpctimer(); end; } 1@ma_b,62,52,4 script Taho#Fail 4_M_DEWZATIMAN,{ - mes "[Taho]"; - mes "HMM. We almost got him but he is one fast creature..."; - next; - if (getcharid(CHAR_ID_CHAR) == getpartyleader(getcharid(CHAR_ID_PARTY),2)) { - mes "[Taho]"; - mes "Are we going to try again?"; - next; - switch(select("Hold on a sec!", "Of course! We cannot stand back now!")) { + mes("[Taho]"); + mes("HMM. We almost got him but he is one fast creature..."); + next(); + if (getcharid(CHAR_ID_CHAR) == getpartyleader(getcharid(CHAR_ID_PARTY), 2)) { + mes("[Taho]"); + mes("Are we going to try again?"); + next(); + switch (select("Hold on a sec!", "Of course! We cannot stand back now!")) { case 1: - mes "[Taho]"; - mes "AWW... I almost brought him out."; - close; + mes("[Taho]"); + mes("AWW... I almost brought him out."); + close(); case 2: - mes "[Taho]"; - mes "Then I will use Albopal once again to the lake."; - next; - mes "[Taho]"; - mes "We are about to see Bakonawa with intenser anger..."; - disablenpc instance_npcname("Taho#Fail"); - donpcevent instance_npcname("#Bakonawan1")+"::OnStart"; - close; + mes("[Taho]"); + mes("Then I will use Albopal once again to the lake."); + next(); + mes("[Taho]"); + mes("We are about to see Bakonawa with intenser anger..."); + disablenpc(instance_npcname("Taho#Fail")); + donpcevent(instance_npcname("#Bakonawan1")+"::OnStart"); + close(); } - close; + close(); } else { - mes "[Taho]"; - mes "I am dropping Albopal like I did a while ago. I hope it pisses him off..."; - close; + mes("[Taho]"); + mes("I am dropping Albopal like I did a while ago. I hope it pisses him off..."); + close(); } OnInstanceInit: - disablenpc instance_npcname("Taho#Fail"); + disablenpc(instance_npcname("Taho#Fail")); end; OnStart: - enablenpc instance_npcname("Taho#Fail"); + enablenpc(instance_npcname("Taho#Fail")); end; } diff --git a/npc/re/instances/BuwayaCave.txt b/npc/re/instances/BuwayaCave.txt index 094964867..393ac5d9e 100644 --- a/npc/re/instances/BuwayaCave.txt +++ b/npc/re/instances/BuwayaCave.txt @@ -35,95 +35,95 @@ ma_fild02,312,317,5 script Guard#buwaya_cave 4_MAL_SOLDIER,{ if (BaseLevel < 130) { - mes "[Guard]"; - mes "People under ^ff0000level 130^000000"; - mes "cannot enter this place."; - mes "This place is dangerous. Please go back."; - close; + mes("[Guard]"); + mes("People under ^ff0000level 130^000000"); + mes("cannot enter this place."); + mes("This place is dangerous. Please go back."); + close(); } .@party_id = getcharid(CHAR_ID_PARTY); - .@md_name$ = "Buwaya Cave"; + .@md_name$ = _("Buwaya Cave"); if (!.@party_id) { - mes "[Guard]"; - mes "Buwaya is dangerous."; - mes "Please come back after you form a"; - mes "team with other people."; - close; + mes("[Guard]"); + mes("Buwaya is dangerous."); + mes("Please come back after you form a"); + mes("team with other people."); + close(); } - if (getcharid(CHAR_ID_CHAR) == getpartyleader(.@party_id,2)) { - mes "[Guard]"; - mes "This place is dangerous. Please go back."; - mes "If you dont have any business here, please go back."; - next; - while(1) { - switch(select("Why is it so dangerous?", "I'm here to hunt down Buwaya.", "End conversation.")) { + if (getcharid(CHAR_ID_CHAR) == getpartyleader(.@party_id, 2)) { + mes("[Guard]"); + mes("This place is dangerous. Please go back."); + mes("If you dont have any business here, please go back."); + next(); + while (true) { + switch (select("Why is it so dangerous?", "I'm here to hunt down Buwaya.", "End conversation.")) { case 1: - mes "[Guard]"; - mes "Recently, there has been a case"; - mes "where villagers have disappeared."; - mes "After investigating the tracks, "; - mes "we found out the giant monster Buwaya"; - mes "was responsible."; - next; - mes "[Guard]"; - mes "Soldiers and mercenaries have been dispatched to "; - mes "hunt down Buwaya, but were never"; - mes "completely successful."; - next; - mes "[Guard]"; - mes "Buwaya is still kidnapping"; - mes "the villagers to this day."; - mes "Please gather some people to get rid of Buwaya."; - next; + mes("[Guard]"); + mes("Recently, there has been a case"); + mes("where villagers have disappeared."); + mes("After investigating the tracks, "); + mes("we found out the giant monster Buwaya"); + mes("was responsible."); + next(); + mes("[Guard]"); + mes("Soldiers and mercenaries have been dispatched to "); + mes("hunt down Buwaya, but were never"); + mes("completely successful."); + next(); + mes("[Guard]"); + mes("Buwaya is still kidnapping"); + mes("the villagers to this day."); + mes("Please gather some people to get rid of Buwaya."); + next(); break; case 2: - .@playtime = questprogress(4229,PLAYTIME); + .@playtime = questprogress(4229, PLAYTIME); if (!.@playtime) { // fall through } else if (.@playtime == 1) { - mes "[Guard]"; - mes "Buwaya is still hiding."; - mes "Even if you enter now, Buwaya will not come out. "; - mes "Please come back later."; - close; + mes("[Guard]"); + mes("Buwaya is still hiding."); + mes("Even if you enter now, Buwaya will not come out. "); + mes("Please come back later."); + close(); } else { - erasequest 4229; + erasequest(4229); // fall through } - .@instance = instance_create(.@md_name$,.@party_id); + .@instance = instance_create(.@md_name$, .@party_id); if (.@instance < 0) { - mes "[Guard]"; - mes "Party name is... "+getpartyname(.@party_id)+".";; - mes "Party leader is... "+strcharinfo(PC_NAME); - mes "^0000ff"+.@md_name$+"^000000 cannot be opened now."; - mes "Please try a moment later."; - close; + mes("[Guard]"); + mesf("Party name is... %s.", getpartyname(.@party_id)); + mesf("Party leader is... %s", strcharinfo(PC_NAME)); + mesf("^0000ff%s^000000 cannot be opened now.", .@md_name$); + mes("Please try a moment later."); + close(); } - if (instance_attachmap("1@ma_c",.@instance) == "") { - mes "^0000ff"+.@md_name$+"^000000 - Reservation Failed!"; + if (instance_attachmap("1@ma_c", .@instance) == "") { + mesf("^0000ff%s^000000 - Reservation Failed!", .@md_name$); instance_destroy(.@instance); - close; + close(); } - instance_set_timeout 3600,300,.@instance; + instance_set_timeout(3600, 300, .@instance); instance_init(.@instance); - mes "[Guard]"; - mes "I will open up the tunnel to ^0000ff"+.@md_name$+"^000000."; - mes "I wish you good luck."; - close; + mes("[Guard]"); + mesf("I will open up the tunnel to ^0000ff%s^000000.", .@md_name$); + mes("I wish you good luck."); + close(); case 3: - mes "[Guard]"; - mes "This place is dangerous. You cannot enter."; - close; + mes("[Guard]"); + mes("This place is dangerous. You cannot enter."); + close(); } } } else { - mes "[Guard]"; - mes "Let me talk with the party leader."; - mes "Please call forth the leader."; - close; + mes("[Guard]"); + mes("Let me talk with the party leader."); + mes("Please call forth the leader."); + close(); } } @@ -131,214 +131,214 @@ ma_fild02,315,323,0 script Cave Entrance#buwaya WARPNPC,2,2,{ end; OnTouch: if (BaseLevel < 130) { - mes "[Guard]"; - mes "People under ^ff0000level 130^000000"; - mes "cannot enter this place."; - mes "This place is dangerous. Please go back."; - close; + mes("[Guard]"); + mes("People under ^ff0000level 130^000000"); + mes("cannot enter this place."); + mes("This place is dangerous. Please go back."); + close(); } - .@playtime = questprogress(4229,PLAYTIME); + .@playtime = questprogress(4229, PLAYTIME); if (!.@playtime) { // fall through } else if (.@playtime == 1) { - mes "[Guard]"; - mes "Buwaya is still hiding."; - mes "Even if you enter now, Buwaya will not come out."; - mes "Please come back later."; - close; + mes("[Guard]"); + mes("Buwaya is still hiding."); + mes("Even if you enter now, Buwaya will not come out."); + mes("Please come back later."); + close(); } else { - erasequest 4229; + erasequest(4229); // fall through } - switch(select("Enter.", "Turn back.")) { + switch (select("Enter.", "Turn back.")) { case 1: - if( has_instance("1@ma_c") == "" ) { - mes "The memorial dungeon Buwaya Cave does not exist."; - mes "The party leader did not generate the dungeon yet."; - close; + if (has_instance("1@ma_c") == "") { + mes("The memorial dungeon Buwaya Cave does not exist."); + mes("The party leader did not generate the dungeon yet."); + close(); } else { - mapannounce "ma_fild02",getpartyname(getcharid(CHAR_ID_PARTY))+" party's "+strcharinfo(PC_NAME)+" member began hunting Buwaya in Buwaya Cave.",bc_map,"0x00ff99"; //FW_NORMAL 12 0 0 - setquest 4229; - warp "1@ma_c",35,57; + mapannounce("ma_fild02", sprintf(_$("%s party's %s member began hunting Buwaya in Buwaya Cave."), getpartyname(getcharid(CHAR_ID_PARTY)), strcharinfo(PC_NAME)), bc_map, C_SPRINGGREEN); //FW_NORMAL 12 0 0 + setquest(4229); + warp("1@ma_c", 35, 57); end; } case 2: - mes "[Guard]"; - mes "You must value your life."; - mes "It is better to think carefully before you act."; - close; + mes("[Guard]"); + mes("You must value your life."); + mes("It is better to think carefully before you act."); + close(); } } 1@ma_c,33,112,0 script #damage HIDDEN_WARP_NPC,7,7,{ end; OnInstanceInit: - initnpctimer; - disablenpc instance_npcname("#damage"); + initnpctimer(); + disablenpc(instance_npcname("#damage")); end; OnTimer1000: - enablenpc instance_npcname("#damage"); - specialeffect EF_POISONHIT; + enablenpc(instance_npcname("#damage")); + specialeffect(EF_POISONHIT); end; OnTimer2000: - stopnpctimer; - initnpctimer; - disablenpc instance_npcname("#damage"); + stopnpctimer(); + initnpctimer(); + disablenpc(instance_npcname("#damage")); end; OnTouch: - percentheal -10,-10; - sc_start SC_BLOODING,60000,0; - sc_start SC_POISON,60000,0; + percentheal(-10, -10); + sc_start(SC_BLOODING, 60000, 0); + sc_start(SC_POISON, 60000, 0); end; } 1@ma_c,29,110,5 script Kidnapped People#1 4_F_BARYO_OLD,{ - mes "[Kidnapped Residents]"; - mes "Buwaya was running around,"; - mes "and new people got caught."; - mes "We will be stuck in here for the rest of our lives."; - next; - switch(select("Get me outta here!!", "Ca...can't escape?")) { + mes("[Kidnapped Residents]"); + mes("Buwaya was running around,"); + mes("and new people got caught."); + mes("We will be stuck in here for the rest of our lives."); + next(); + switch (select("Get me outta here!!", "Ca...can't escape?")) { case 1: - mes "[Kidnapped Residents]"; - mes "We don't have enough power to destroy it but Buwaya has a weakness."; - mes "Look at the wall over there."; - mes "If you knock there, Buywaya will feel pain and spit you out."; - donpcevent instance_npcname("#box_mob_call")+"::OnEnable"; - close2; - disablenpc instance_npcname("Kidnapped People#1"); + mes("[Kidnapped Residents]"); + mes("We don't have enough power to destroy it but Buwaya has a weakness."); + mes("Look at the wall over there."); + mes("If you knock there, Buywaya will feel pain and spit you out."); + donpcevent(instance_npcname("#box_mob_call")+"::OnEnable"); + close2(); + disablenpc(instance_npcname("Kidnapped People#1")); end; case 2: - mes "[Kidnapped People]"; - mes "Somthing is wrong here..."; - mes "Have you experienced this before?"; - close; + mes("[Kidnapped People]"); + mes("Somthing is wrong here..."); + mes("Have you experienced this before?"); + close(); } end; OnInstanceInit: - disablenpc instance_npcname("Kidnapped People#1"); + disablenpc(instance_npcname("Kidnapped People#1")); end; OnEnable: - enablenpc instance_npcname("Kidnapped People#1"); - donpcevent instance_npcname("#box_mob_call")+"::OnDisable"; + enablenpc(instance_npcname("Kidnapped People#1")); + donpcevent(instance_npcname("#box_mob_call")+"::OnDisable"); end; } 1@ma_c,36,110,5 script Kidnapped People#2 4_M_BARYO_OLD,{ - mes "[Kidnapped Residents]"; - mes "Ahaa! I wish I had a little more power..."; - mes "I know its weakness..."; - next; - switch(select("Tell me.", "Do you really know?")) { + mes("[Kidnapped Residents]"); + mes("Ahaa! I wish I had a little more power..."); + mes("I know its weakness..."); + next(); + switch (select("Tell me.", "Do you really know?")) { case 1: - mes "[Kidnapped Residents]"; - mes "Are you sure you can do it...?"; - mes "Ok, listen carefully,"; - mes "its weakness is..."; - next; - mes "[Kidnapped Residents]"; - mes "...behind us on the walls."; - sc_start SC_ATKPOTION,60000,45; - sc_start SC_MATKPOTION,60000,45; - disablenpc instance_npcname("Kidnapped People#2"); - close; + mes("[Kidnapped Residents]"); + mes("Are you sure you can do it...?"); + mes("Ok, listen carefully,"); + mes("its weakness is..."); + next(); + mes("[Kidnapped Residents]"); + mes("...behind us on the walls."); + sc_start(SC_ATKPOTION, 60000, 45); + sc_start(SC_MATKPOTION, 60000, 45); + disablenpc(instance_npcname("Kidnapped People#2")); + close(); case 2: - mes "[Kidnapped Residents]"; - mes "WHAT?!"; - mes "Are you ignoring me"; - mes "because I'm captured in here?"; - close; + mes("[Kidnapped Residents]"); + mes("WHAT?!"); + mes("Are you ignoring me"); + mes("because I'm captured in here?"); + close(); } end; OnInstanceInit: - disablenpc instance_npcname("Kidnapped People#2"); + disablenpc(instance_npcname("Kidnapped People#2")); end; OnEnable: - enablenpc instance_npcname("Kidnapped People#2"); + enablenpc(instance_npcname("Kidnapped People#2")); end; } 1@ma_c,3,3,0 script #box_mob_call HIDDEN_WARP_NPC,1,1,{ end; OnInstanceInit: - setcell instance_mapname("1@ma_c"),30,118,35,118,cell_shootable,1; //custom - disablenpc instance_npcname("#box_mob_call"); + setcell(instance_mapname("1@ma_c"), 30, 118, 35, 118, cell_shootable, 1); //custom + disablenpc(instance_npcname("#box_mob_call")); end; OnEnable: - enablenpc instance_npcname("#box_mob_call"); + enablenpc(instance_npcname("#box_mob_call")); .@label$ = instance_npcname("#box_mob_call")+"::OnMyMobDead"; .@map$ = instance_mapname("1@ma_c"); - monster .@map$,30,118,"Buwaya's Weakness",2333,1,.@label$; - monster .@map$,35,118,"Buwaya's Weakness",2333,1,.@label$; + monster(.@map$, 30, 118, _("Buwaya's Weakness"), BUWAYA_WEAK, 1, .@label$); + monster(.@map$, 35, 118, _("Buwaya's Weakness"), BUWAYA_WEAK, 1, .@label$); end; OnDisable: - killmonster instance_mapname("1@ma_c"),instance_npcname("#box_mob_call")+"::OnMyMobDead"; - disablenpc instance_npcname("#box_mob_call"); + killmonster(instance_mapname("1@ma_c"), instance_npcname("#box_mob_call")+"::OnMyMobDead"); + disablenpc(instance_npcname("#box_mob_call")); end; OnMyMobDead: - if (mobcount(instance_mapname("1@ma_c"),instance_npcname("#box_mob_call")+"::OnMyMobDead") < 1) - donpcevent instance_npcname("#box_out")+"::OnEnable"; + if (mobcount(instance_mapname("1@ma_c"), instance_npcname("#box_mob_call")+"::OnMyMobDead") < 1) + donpcevent(instance_npcname("#box_out")+"::OnEnable"); end; } 1@ma_c,38,118,0 script #box_out WARPNPC,2,2,{ OnInstanceInit: OnDisable: - disablenpc instance_npcname("#box_out"); + disablenpc(instance_npcname("#box_out")); end; OnEnable: - enablenpc instance_npcname("#box_out"); + enablenpc(instance_npcname("#box_out")); end; OnTouch: - .@x = rand(1,20) + 97; - .@y = rand(1,20) + 74; - warp instance_mapname("1@ma_c"),.@x,.@y; + .@x = rand(1, 20) + 97; + .@y = rand(1, 20) + 74; + warp(instance_mapname("1@ma_c"), .@x, .@y); end; } 1@ma_c,97,74,0 script #box_call HIDDEN_WARP_NPC,50,50,{ end; OnInstanceInit: - disablenpc instance_npcname("#box_call"); - initnpctimer; + disablenpc(instance_npcname("#box_call")); + initnpctimer(); end; OnTimer30000: - mapannounce instance_mapname("1@ma_c"),"Buwaya : I will put you in my treasure box!",bc_map,"0x00ff99"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@ma_c"), _("Buwaya : I will put you in my treasure box!"), bc_map, C_SPRINGGREEN); //FW_NORMAL 12 0 0 // Should execute OnTimer33000, but client doesn't render the effect fast enough. - for(.@i = 1; .@i<=9; ++.@i) - donpcevent instance_npcname("#yunobi"+.@i)+"::OnEnable"; + for(.@i = 1; .@i <= 9; ++.@i) + donpcevent(instance_npcname("#yunobi"+.@i)+"::OnEnable"); end; OnTimer33000: - donpcevent instance_npcname("#box_out")+"::OnDisable"; - donpcevent instance_npcname("#box_mob_call")+"::OnDisable"; - donpcevent instance_npcname("Kidnapped People#1")+"::OnEnable"; - donpcevent instance_npcname("Kidnapped People#2")+"::OnEnable"; + donpcevent(instance_npcname("#box_out")+"::OnDisable"); + donpcevent(instance_npcname("#box_mob_call")+"::OnDisable"); + donpcevent(instance_npcname("Kidnapped People#1")+"::OnEnable"); + donpcevent(instance_npcname("Kidnapped People#2")+"::OnEnable"); end; OnTimer34000: - enablenpc instance_npcname("#box_call"); + enablenpc(instance_npcname("#box_call")); end; OnTimer35000: - stopnpctimer; - initnpctimer; - disablenpc instance_npcname("#box_call"); + stopnpctimer(); + initnpctimer(); + disablenpc(instance_npcname("#box_call")); end; OnTouch: specialeffect(EF_GUIDEDATTACK, AREA, playerattached()); - warp instance_mapname("1@ma_c"),33,112; + warp(instance_mapname("1@ma_c"), 33, 112); end; OnDisable: - stopnpctimer; - disablenpc instance_npcname("#box_call"); + stopnpctimer(); + disablenpc(instance_npcname("#box_call")); end; } 1@ma_c,97,74,0 script #yunobi1 HIDDEN_WARP_NPC,{ end; OnInstanceInit: - hideonnpc instance_npcname(strnpcinfo(NPC_NAME)); + hideonnpc(instance_npcname(strnpcinfo(NPC_NAME))); end; OnEnable: - specialeffect EF_MAPPILLAR2; + specialeffect(EF_MAPPILLAR2); end; } 1@ma_c,97,94,0 duplicate(#yunobi1) #yunobi2 HIDDEN_WARP_NPC @@ -353,65 +353,65 @@ OnEnable: 1@ma_c,1,1,0 script #bunshin HIDDEN_WARP_NPC,{ end; OnInstanceInit: - initnpctimer; + initnpctimer(); end; OnTimer58000: - mapannounce instance_mapname("1@ma_c"),"Buwaya : I had enough with this, let's go till the end!",bc_map,"0x00ff99"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@ma_c"), _("Buwaya : I had enough with this, let's go till the end!"), bc_map, C_SPRINGGREEN); //FW_NORMAL 12 0 0 end; OnTimer61000: - mapannounce instance_mapname("1@ma_c"),"Buwaya : This is!",bc_map,"0x00ff99"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@ma_c"), _("Buwaya : This is!"), bc_map, C_SPRINGGREEN); //FW_NORMAL 12 0 0 end; OnTimer62000: - mapannounce instance_mapname("1@ma_c"),"Buwaya : This is...MY!",bc_map,"0x00ff99"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@ma_c"), _("Buwaya : This is...MY!"), bc_map, C_SPRINGGREEN); //FW_NORMAL 12 0 0 end; OnTimer63000: - mapannounce instance_mapname("1@ma_c"),"Buwaya : This is...MY...Deadly!",bc_map,"0x00ff99"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@ma_c"), _("Buwaya : This is...MY...Deadly!"), bc_map, C_SPRINGGREEN); //FW_NORMAL 12 0 0 end; OnTimer64000: - mapannounce instance_mapname("1@ma_c"),"Buwaya : This is...MY...Deadly... ATTACK!",bc_map,"0x00ff99"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@ma_c"), _("Buwaya : This is...MY...Deadly... ATTACK!"), bc_map, C_SPRINGGREEN); //FW_NORMAL 12 0 0 end; OnTimer65000: .@label$ = instance_npcname("#bunshin")+"::OnMyMobDead"; .@map$ = instance_mapname("1@ma_c"); - areamonster .@map$,112,89,122,99,"Buwaya",2332,1,.@label$; - areamonster .@map$,112,49,122,59,"Buwaya",2332,1,.@label$; - areamonster .@map$,72,49,82,59,"Buwaya",2332,1,.@label$; - areamonster .@map$,72,89,82,99,"Buwaya",2332,1,.@label$; + areamonster(.@map$, 112, 89, 122, 99, _("Buwaya"), BUWAYA_GHOST, 1, .@label$); + areamonster(.@map$, 112, 49, 122, 59, _("Buwaya"), BUWAYA_GHOST, 1, .@label$); + areamonster(.@map$, 72, 49, 82, 59, _("Buwaya"), BUWAYA_GHOST, 1, .@label$); + areamonster(.@map$, 72, 89, 82, 99, _("Buwaya"), BUWAYA_GHOST, 1, .@label$); end; OnTimer66000: - mapannounce instance_mapname("1@ma_c"),"Buwaya : Are you scared?",bc_map,"0x00ff99"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@ma_c"), _("Buwaya : Are you scared?"), bc_map, C_SPRINGGREEN); //FW_NORMAL 12 0 0 end; OnTimer105000: - killmonster instance_mapname("1@ma_c"),instance_npcname("#bunshin")+"::OnMyMobDead"; - stopnpctimer; - initnpctimer; + killmonster(instance_mapname("1@ma_c"), instance_npcname("#bunshin")+"::OnMyMobDead"); + stopnpctimer(); + initnpctimer(); end; OnMyMobDead: - if (mobcount(instance_mapname("1@ma_c"),instance_npcname("#bunshin")+"::OnMyMobDead") < 1) { - stopnpctimer; - initnpctimer; + if (mobcount(instance_mapname("1@ma_c"), instance_npcname("#bunshin")+"::OnMyMobDead") < 1) { + stopnpctimer(); + initnpctimer(); } end; OnDisable: - stopnpctimer; - killmonster instance_mapname("1@ma_c"),instance_npcname("#bunshin")+"::OnMyMobDead"; - disablenpc instance_npcname("#bunshin"); + stopnpctimer(); + killmonster(instance_mapname("1@ma_c"), instance_npcname("#bunshin")+"::OnMyMobDead"); + disablenpc(instance_npcname("#bunshin")); end; } 1@ma_c,2,2,0 script #buwaya_con HIDDEN_WARP_NPC,{ end; OnInstanceInit: - areamonster instance_mapname("1@ma_c"),90,67,104,81,"Buwaya",2319,1,instance_npcname("#buwaya_con")+"::OnMyMobDead"; + areamonster(instance_mapname("1@ma_c"), 90, 67, 104, 81, _("Buwaya"), BUWAYA, 1, instance_npcname("#buwaya_con")+"::OnMyMobDead"); end; OnMyMobDead: .@map$ = instance_mapname("1@ma_c"); - if (mobcount(.@map$,instance_npcname("#buwaya_con")+"::OnMyMobDead") < 1) { - donpcevent instance_npcname("#box_call")+"::OnDisable"; - donpcevent instance_npcname("#bunshin")+"::OnDisable"; - donpcevent instance_npcname("#exit_mob")+"::OnDisable"; - donpcevent instance_npcname("#cave_out")+"::OnEnable"; - mapannounce .@map$,"Guard : You did great work. Please hurry up and escape to the way you came in!",bc_map,"0x00ff99"; //FW_NORMAL 12 0 0 + if (mobcount(.@map$, instance_npcname("#buwaya_con")+"::OnMyMobDead") < 1) { + donpcevent(instance_npcname("#box_call")+"::OnDisable"); + donpcevent(instance_npcname("#bunshin")+"::OnDisable"); + donpcevent(instance_npcname("#exit_mob")+"::OnDisable"); + donpcevent(instance_npcname("#cave_out")+"::OnEnable"); + mapannounce(.@map$, _("Guard : You did great work. Please hurry up and escape to the way you came in!"), bc_map, C_SPRINGGREEN); //FW_NORMAL 12 0 0 } end; } @@ -419,24 +419,24 @@ OnMyMobDead: 1@ma_c,3,3,0 script #exit_mob HIDDEN_WARP_NPC,{ end; OnInstanceInit: - initnpctimer; + initnpctimer(); end; OnTimer60000: .@label$ = instance_npcname("#exit_mob")+"::OnMyMobDead"; .@map$ = instance_mapname("1@ma_c"); - if (mobcount(.@map$,.@label$) < 30) + if (mobcount(.@map$, .@label$) < 30) .@amount = 10; else .@amount = 1; - areamonster .@map$,43,58,47,60,"Water Plant",2331,.@amount,.@label$; - areamonster .@map$,43,58,47,60,"Egg",2329,.@amount,.@label$; - stopnpctimer; - initnpctimer; + areamonster(.@map$, 43, 58, 47, 60, _("Water Plant"), MA_SEAW, .@amount, .@label$); + areamonster(.@map$, 43, 58, 47, 60, _("Egg"), BUWAYA_EGG, .@amount, .@label$); + stopnpctimer(); + initnpctimer(); end; OnDisable: - stopnpctimer; - killmonster instance_mapname("1@ma_c"),instance_npcname("#exit_mob")+"::OnMyMobDead"; - disablenpc instance_npcname("#exit_mob"); + stopnpctimer(); + killmonster(instance_mapname("1@ma_c"), instance_npcname("#exit_mob")+"::OnMyMobDead"); + disablenpc(instance_npcname("#exit_mob")); end; OnMyMobDead: end; @@ -444,35 +444,35 @@ OnMyMobDead: 1@ma_c,28,57,0 script #cave_out WARPNPC,2,2,{ OnInstanceInit: - disablenpc instance_npcname("#cave_out"); + disablenpc(instance_npcname("#cave_out")); end; OnEnable: - enablenpc instance_npcname("#cave_out"); + enablenpc(instance_npcname("#cave_out")); end; OnTouch: - mes "Would like to go out?"; - next; - if(select("Yes!", "No, I will stay.") == 1) - warp "ma_fild02",315,315; - close; + mes("Would like to go out?"); + next(); + if (select("Yes!", "No, I will stay.") == 1) + warp("ma_fild02", 315, 315); + close(); } 1@ma_c,1,1,0 script #buwaya_spawn_mobs FAKE_NPC,{ OnInstanceInit: .@map$ = instance_mapname("1@ma_c"); - areamonster .@map$,73,81,93,101,"Seaweed",2331,18; - areamonster .@map$,110,97,116,103,"Seaweed",2331,8; - areamonster .@map$,59,63,63,67,"Seaweed",2331,8; - areamonster .@map$,73,55,77,59,"Seaweed",2331,4; - areamonster .@map$,103,69,107,73,"Seaweed",2331,4; - areamonster .@map$,108,45,122,63,"Seaweed",2331,15; - areamonster .@map$,73,81,93,101,"Buwaya's Egg",2329,10; - areamonster .@map$,110,97,116,103,"Buwaya's Egg",2329,8; - areamonster .@map$,59,63,63,67,"Buwaya's Egg",2329,4; - areamonster .@map$,73,55,77,59,"Buwaya's Egg",2329,3; - areamonster .@map$,103,69,107,73,"Buwaya's Egg",2329,3; - areamonster .@map$,108,45,122,63,"Buwaya's Egg",2329,15; - monster .@map$,0,0,"Seaweed",2331,5; - monster .@map$,0,0,"Buwaya's Slave",2330,5; + areamonster(.@map$, 73, 81, 93, 101, _("Seaweed"), MA_SEAW, 18); + areamonster(.@map$, 110, 97, 116, 103, _("Seaweed"), MA_SEAW, 8); + areamonster(.@map$, 59, 63, 63, 67, _("Seaweed"), MA_SEAW, 8); + areamonster(.@map$, 73, 55, 77, 59, _("Seaweed"), MA_SEAW, 4); + areamonster(.@map$, 103, 69, 107, 73, _("Seaweed"), MA_SEAW, 4); + areamonster(.@map$, 108, 45, 122, 63, _("Seaweed"), MA_SEAW, 15); + areamonster(.@map$, 73, 81, 93, 101, _("Buwaya's Egg"), BUWAYA_EGG, 10); + areamonster(.@map$, 110, 97, 116, 103, _("Buwaya's Egg"), BUWAYA_EGG, 8); + areamonster(.@map$, 59, 63, 63, 67, _("Buwaya's Egg"), BUWAYA_EGG, 4); + areamonster(.@map$, 73, 55, 77, 59, _("Buwaya's Egg"), BUWAYA_EGG, 3); + areamonster(.@map$, 103, 69, 107, 73, _("Buwaya's Egg"), BUWAYA_EGG, 3); + areamonster(.@map$, 108, 45, 122, 63, _("Buwaya's Egg"), BUWAYA_EGG, 15); + monster(.@map$, 0, 0, _("Seaweed"), MA_SEAW, 5); + monster(.@map$, 0, 0, _("Buwaya's Slave"), BUWAYA_SLAVE, 5); end; } diff --git a/npc/re/instances/EclageInterior.txt b/npc/re/instances/EclageInterior.txt index b8aff0a81..6b2808e05 100644 --- a/npc/re/instances/EclageInterior.txt +++ b/npc/re/instances/EclageInterior.txt @@ -34,133 +34,132 @@ ecl_hub01,132,12,3 script Chief of Staff#tl01::EclInstance 4_F_FAIRY,{ .@party_id = getcharid(CHAR_ID_PARTY); - .@md_name$ = "Eclage Interior"; - if (!.@party_id){ - mes "-! Warning !-"; - mes "This current quest will be held at Memorial dungeon."; - mes "Only the party leader will enter. Please create your party."; - close; + .@md_name$ = _("Eclage Interior"); + if (!.@party_id) { + mes("-! Warning !-"); + mes("This current quest will be held at Memorial dungeon."); + mes("Only the party leader will enter. Please create your party."); + close(); } - - if (getpartyleader(.@party_id,2) != getcharid(CHAR_ID_CHAR)) { - mes "-! Warning !-"; - mes "This current quest will be held at Memorial dungeon."; - mes "Only the party leader will enter. Please create your party."; - close; + if (getpartyleader(.@party_id, 2) != getcharid(CHAR_ID_CHAR)) { + mes("-! Warning !-"); + mes("This current quest will be held at Memorial dungeon."); + mes("Only the party leader will enter. Please create your party."); + close(); } if (ep14_2_mylord == 29) { - mes "[Shenime]"; - mes "This place is set up with lighting for Orb."; - mes "If you favor Mayor, you should be cautious here."; - next; + mes("[Shenime]"); + mes("This place is set up with lighting for Orb."); + mes("If you favor Mayor, you should be cautious here."); + next(); switch (select("Enter it.", "Forget it.")) { - case 1: - .@instance = instance_create(.@md_name$,.@party_id); - if (.@instance < 0) { - mes "[Shenime]"; - mes "There are some soldiers dispatched by Mayor not too long ago."; - mes "I should sure hope that you aren't the disturbance they're looking for, right?"; - close; - } - if (instance_attachmap("1@ecl",.@instance) == "") { - mes "^0000ff"+.@md_name$+"^000000 - Reservation Failed!"; - instance_destroy(.@instance); - close; - } - ecl_interior_time = gettimetick(2)+20*60; - instance_set_timeout 1200,1200,.@instance; - instance_init(.@instance); - mes "[Shenime]"; - mes "Given the tight internal security, you should prepare yourself."; - mes "Wait here for a minute."; - close; - case 2: - mes "[Shenime]"; - mes "It's not an easy task."; - close; + case 1: + .@instance = instance_create(.@md_name$, .@party_id); + if (.@instance < 0) { + mes("[Shenime]"); + mes("There are some soldiers dispatched by Mayor not too long ago."); + mes("I should sure hope that you aren't the disturbance they're looking for, right?"); + close(); + } + if (instance_attachmap("1@ecl", .@instance) == "") { + mesf("^0000ff%s^000000 - Reservation Failed!", .@md_name$); + instance_destroy(.@instance); + close(); + } + ecl_interior_time = gettimetick(2) + 20 * 60; + instance_set_timeout(1200, 1200, .@instance); + instance_init(.@instance); + mes("[Shenime]"); + mes("Given the tight internal security, you should prepare yourself."); + mes("Wait here for a minute."); + close(); + case 2: + mes("[Shenime]"); + mes("It's not an easy task."); + close(); } } - mes "[High-level Laphine's]"; - mes "Hmm? This room?"; - mes "Never mind. Don't worry about it."; - close; + mes("[High-level Laphine's]"); + mes("Hmm? This room?"); + mes("Never mind. Don't worry about it."); + close(); } ecl_hub01,130,15,0 script It is closed shut. CLEAR_NPC,{ if (ep14_2_mylord == 29) { - mes "This door connects to the plaza's ceiling."; - mes "It's also a place where the lighting is set up to make Orb seem more beautiful."; - next; + mes("This door connects to the plaza's ceiling."); + mes("It's also a place where the lighting is set up to make Orb seem more beautiful."); + next(); switch (select("Enter it.", "Forget it.")) { - case 1: - .@party_id = getcharid(CHAR_ID_PARTY); + case 1: + .@party_id = getcharid(CHAR_ID_PARTY); - if (has_instance("1@ecl") == "") { - mes "It is closed shut."; - close; + if (has_instance("1@ecl") == "") { + mes("It is closed shut."); + close(); + } + if (.@party_id) { + .@md_name$ = _("Eclage Interior"); + if (getpartyleader(.@party_id, 2) != getcharid(CHAR_ID_CHAR)) { + mes("-! Warning !-"); + mes("This current quest will be held at Memorial dungeon."); + mes("Only the party leader will enter. Please create your party."); + close(); } - if (.@party_id) { - .@md_name$ = "Eclage Interior"; - if (getpartyleader(.@party_id,2) != getcharid(CHAR_ID_CHAR)){ - mes "-! Warning !-"; - mes "This current quest will be held at Memorial dungeon."; - mes "Only the party leader will enter. Please create your party."; - close; - } - if (gettimetick(2) >= ecl_interior_time){ - mes "[Shenime]"; - mes "Looks like the soldiers inside are really tense."; - mes "It is pretty difficult to guide an outsider like you."; - close; - } - close2; - mapannounce "ecl_hub01",getpartyname(.@party_id) + " Party leader " + strcharinfo(PC_NAME) + " is entering " + .@md_name$,bc_map,"0x00ff99"; - warp "1@ecl",60,50; - end; + if (gettimetick(2) >= ecl_interior_time) { + mes("[Shenime]"); + mes("Looks like the soldiers inside are really tense."); + mes("It is pretty difficult to guide an outsider like you."); + close(); } - mes "-! Warning !-"; - mes "This current quest will be held at Memorial dungeon."; - mes "Only the party leader will enter. Please create your party."; - close; - case 2: - close; + close2(); + mapannounce("ecl_hub01", sprintf(_$("%s Party leader %s is entering %s"), getpartyname(.@party_id), strcharinfo(PC_NAME), .@md_name$), bc_map, C_SPRINGGREEN); + warp("1@ecl", 60, 50); + end; + } + mes("-! Warning !-"); + mes("This current quest will be held at Memorial dungeon."); + mes("Only the party leader will enter. Please create your party."); + close(); + case 2: + close(); } } - mes "This door connects to the plaza's ceiling."; - mes "It's also a place where the lighting is set up to make Orb seem more beautiful."; - mes "It is closed shut."; - close; + mes("This door connects to the plaza's ceiling."); + mes("It's also a place where the lighting is set up to make Orb seem more beautiful."); + mes("It is closed shut."); + close(); } 1@ecl,58,69,3 script Shenime#ecl01 4_F_FAIRY,{ - mes "[Shenime]"; - mes "Oh, what's going on here?"; - mes "They destroyed additional troops that Mayor sent?"; - next; + mes("[Shenime]"); + mes("Oh, what's going on here?"); + mes("They destroyed additional troops that Mayor sent?"); + next(); select("What...?", "I fought monsters off!"); - mes "[Shenime]"; - mes "It doesn't matter."; - mes "Your job ends here."; - mes "Now you became a betrayer."; - mes "Farewell, then!"; - specialeffect EF_BEGINSPELL3; - next; - mes "[" + strcharinfo(PC_NAME) + "]"; - mes "No...way!!!"; + mes("[Shenime]"); + mes("It doesn't matter."); + mes("Your job ends here."); + mes("Now you became a betrayer."); + mes("Farewell, then!"); + specialeffect(EF_BEGINSPELL3); + next(); + mesf("[%s]", strcharinfo(PC_NAME)); + mes("No...way!!!"); specialeffect(EF_LORD, AREA, playerattached()); - percentheal -99,0; - soundeffect "wander_man_move.wav",1; - sc_start SC_BLIND,60000,0; - close2; - warp "1@ecl",146,95; + percentheal(-99, 0); + soundeffect("wander_man_move.wav", 1); + sc_start(SC_BLIND, 60000, 0); + close2(); + warp("1@ecl", 146, 95); end; OnInstanceInit: - hideonnpc instance_npcname(strnpcinfo(NPC_NAME)); + hideonnpc(instance_npcname(strnpcinfo(NPC_NAME))); end; OnEnable: - hideoffnpc instance_npcname(strnpcinfo(NPC_NAME)); + hideoffnpc(instance_npcname(strnpcinfo(NPC_NAME))); end; } @@ -174,8 +173,9 @@ OnEnable: 1@ecl,42,80,5 script Suspicious Creature#5 MOROCC_2_142,{ end; + OnInstanceInit: - hideonnpc instance_npcname(strnpcinfo(NPC_NAME)); + hideonnpc(instance_npcname(strnpcinfo(NPC_NAME))); end; } @@ -188,109 +188,113 @@ OnInstanceInit: OnInstanceInit: .mob_summoned = 0; - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); end; OnEnable: - initnpctimer; + initnpctimer(); end; OnReset: - killmonster instance_mapname("1@ecl"),instance_npcname("#sndmaster")+"::OnMyMobDead"; - stopnpctimer; + killmonster(instance_mapname("1@ecl"), instance_npcname("#sndmaster")+"::OnMyMobDead"); + stopnpctimer(); end; + OnTimer1000: - mapannounce instance_mapname("1@ecl"),"Warning: Abnormal occurrence in the lighting room. Abnormal occurrence in the lighting room.",bc_map,"0xffff00"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@ecl"), _("Warning: Abnormal occurrence in the lighting room. Abnormal occurrence in the lighting room."), bc_map, C_YELLOW); //FW_NORMAL 12 0 0 end; + OnTimer2000: - mapannounce instance_mapname("1@ecl"),"Suspicious Creature: Kerrrrr....krwahhhh!!",bc_map,"0xffff00"; //FW_NORMAL 12 0 0 - hideoffnpc instance_npcname("Suspicious Creature#5"); - hideoffnpc instance_npcname("Suspicious Creature#6"); - hideoffnpc instance_npcname("Suspicious Creature#7"); - hideoffnpc instance_npcname("Suspicious Creature#8"); + mapannounce(instance_mapname("1@ecl"), _("Suspicious Creature: Kerrrrr....krwahhhh!!"), bc_map, C_YELLOW); //FW_NORMAL 12 0 0 + hideoffnpc(instance_npcname("Suspicious Creature#5")); + hideoffnpc(instance_npcname("Suspicious Creature#6")); + hideoffnpc(instance_npcname("Suspicious Creature#7")); + hideoffnpc(instance_npcname("Suspicious Creature#8")); end; OnTimer3000: - hideonnpc instance_npcname("#sndmaster"); - stopnpctimer; + hideonnpc(instance_npcname("#sndmaster")); + stopnpctimer(); end; OnMyMobDead: - if (mobcount(instance_mapname("1@ecl"),instance_npcname("#sndmaster")+"::OnMyMobDead") == 0) { - donpcevent instance_npcname("Shenime#ecl01")+"::OnEnable"; - mapannounce instance_mapname("1@ecl"),"Shenime: Good, I got here just in time.",bc_map,"0xffff00"; //FW_NORMAL 12 0 0 + if (mobcount(instance_mapname("1@ecl"), instance_npcname("#sndmaster")+"::OnMyMobDead") == 0) { + donpcevent(instance_npcname("Shenime#ecl01")+"::OnEnable"); + mapannounce(instance_mapname("1@ecl"), _("Shenime: Good, I got here just in time."), bc_map, C_YELLOW); //FW_NORMAL 12 0 0 } end; OnTouch: - if (.mob_summoned) end; - mes "Upon eliminating the intruders near the Orb, another strange-looking creatures appeared."; - next; - mes "We couldn't communicate with them either, and one of them seemed furious after looking around and finding out that its fellows are defeated."; - next; - mes "[" + strcharinfo(PC_NAME) + "]"; - mes "They look as if they are incarnation of Morroc."; - mes "Is the King of Domons after the Orb?"; - mes "Or is it just a coincidence?"; - next; - mes "[Subordinate of the King of Demons]"; - mes "Kyaarr...Keraahhh!!!"; - mes "Kkwaaa!"; - next; - mes "A battle cannot be avoided!"; - mes "They will kill me!"; - hideonnpc instance_npcname("Suspicious Creature#5"); - hideonnpc instance_npcname("Suspicious Creature#6"); - hideonnpc instance_npcname("Suspicious Creature#7"); - hideonnpc instance_npcname("Suspicious Creature#8"); + if (.mob_summoned) + end; + mes("Upon eliminating the intruders near the Orb, another strange-looking creatures appeared."); + next(); + mes("We couldn't communicate with them either, and one of them seemed furious after looking around and finding out that its fellows are defeated."); + next(); + mesf("[%s]", strcharinfo(PC_NAME)); + mes("They look as if they are incarnation of Morroc."); + mes("Is the King of Domons after the Orb?"); + mes("Or is it just a coincidence?"); + next(); + mes("[Subordinate of the King of Demons]"); + mes("Kyaarr...Keraahhh!!!"); + mes("Kkwaaa!"); + next(); + mes("A battle cannot be avoided!"); + mes("They will kill me!"); + hideonnpc(instance_npcname("Suspicious Creature#5")); + hideonnpc(instance_npcname("Suspicious Creature#6")); + hideonnpc(instance_npcname("Suspicious Creature#7")); + hideonnpc(instance_npcname("Suspicious Creature#8")); .@eclmap$ = instance_mapname("1@ecl"); .@sndmaster$ = instance_npcname("#sndmaster"); - monster .@eclmap$,42,80,"Subordinate of the King of Demons",MOROCC_2_142,1,.@sndmaster$+"::OnMyMobDead"; - monster .@eclmap$,48,86,"Subordinate of the King of Demons",MOROCC_2_142,1,.@sndmaster$+"::OnMyMobDead"; - monster .@eclmap$,59,82,"Subordinate of the King of Demons",MOROCC_2_142,1,.@sndmaster$+"::OnMyMobDead"; - monster .@eclmap$,56,88,"Subordinate of the King of Demons",MOROCC_2_142,1,.@sndmaster$+"::OnMyMobDead"; - monster .@eclmap$,39,72,"Subordinate of the King of Demons",MOROCC_2_142,1,.@sndmaster$+"::OnMyMobDead"; - monster .@eclmap$,42,69,"Subordinate of the King of Demons",MOROCC_2_142,1,.@sndmaster$+"::OnMyMobDead"; - monster .@eclmap$,47,64,"Subordinate of the King of Demons",MOROCC_2_142,1,.@sndmaster$+"::OnMyMobDead"; - monster .@eclmap$,50,60,"Subordinate of the King of Demons",MOROCC_2_142,1,.@sndmaster$+"::OnMyMobDead"; + monster(.@eclmap$, 42, 80, _("Subordinate of the King of Demons"), MOROCC_2_142, 1, .@sndmaster$+"::OnMyMobDead"); + monster(.@eclmap$, 48, 86, _("Subordinate of the King of Demons"), MOROCC_2_142, 1, .@sndmaster$+"::OnMyMobDead"); + monster(.@eclmap$, 59, 82, _("Subordinate of the King of Demons"), MOROCC_2_142, 1, .@sndmaster$+"::OnMyMobDead"); + monster(.@eclmap$, 56, 88, _("Subordinate of the King of Demons"), MOROCC_2_142, 1, .@sndmaster$+"::OnMyMobDead"); + monster(.@eclmap$, 39, 72, _("Subordinate of the King of Demons"), MOROCC_2_142, 1, .@sndmaster$+"::OnMyMobDead"); + monster(.@eclmap$, 42, 69, _("Subordinate of the King of Demons"), MOROCC_2_142, 1, .@sndmaster$+"::OnMyMobDead"); + monster(.@eclmap$, 47, 64, _("Subordinate of the King of Demons"), MOROCC_2_142, 1, .@sndmaster$+"::OnMyMobDead"); + monster(.@eclmap$, 50, 60, _("Subordinate of the King of Demons"), MOROCC_2_142, 1, .@sndmaster$+"::OnMyMobDead"); .mob_summoned = 1; - close; + close(); } 1@ecl,57,65,0 script #event HIDDEN_WARP_NPC,5,5,{ end; OnTouch: - if (.mob_summoned) end; + if (.mob_summoned) + end; .@eclmap$ = instance_mapname("1@ecl"); .@eventname$ = instance_npcname("#event"); - mes "An empty room with nothing inside."; - mes "a light is coming out of a circular equipment in the middle of the room."; - next; - mes "[Suspicious Creature]"; - mes "Keheehehehe......"; - next; - mes "A group of unidentifiable creatures is approaching threateningly."; - mes "They seemed surprised, and although Bifrost's will still holds, it's hard to communicate."; - next; - mes "[Suspicious Creature]"; - mes "Kyaarr...Ke...Keryarya!!"; - next; - mes "It seems like they are going to start attacking any minute."; - mes "We cannot help fighting them!"; - hideonnpc instance_npcname("Suspicious Creature#1"); - hideonnpc instance_npcname("Suspicious Creature#2"); - hideonnpc instance_npcname("Suspicious Creature#3"); - hideonnpc instance_npcname("Suspicious Creature#4"); - monster .@eclmap$,51,64,"Suspicious Creature",MOROCC_4_142,1,.@eventname$+"::OnMyMobDead"; - monster .@eclmap$,43,67,"Suspicious Creature",MOROCC_4_142,1,.@eventname$+"::OnMyMobDead"; - monster .@eclmap$,55,80,"Suspicious Creature",MOROCC_4_142,1,.@eventname$+"::OnMyMobDead"; - monster .@eclmap$,60,75,"Suspicious Creature",MOROCC_4_142,1,.@eventname$+"::OnMyMobDead"; + mes("An empty room with nothing inside."); + mes("a light is coming out of a circular equipment in the middle of the room."); + next(); + mes("[Suspicious Creature]"); + mes("Keheehehehe......"); + next(); + mes("A group of unidentifiable creatures is approaching threateningly."); + mes("They seemed surprised, and although Bifrost's will still holds, it's hard to communicate."); + next(); + mes("[Suspicious Creature]"); + mes("Kyaarr...Ke...Keryarya!!"); + next(); + mes("It seems like they are going to start attacking any minute."); + mes("We cannot help fighting them!"); + hideonnpc(instance_npcname("Suspicious Creature#1")); + hideonnpc(instance_npcname("Suspicious Creature#2")); + hideonnpc(instance_npcname("Suspicious Creature#3")); + hideonnpc(instance_npcname("Suspicious Creature#4")); + monster(.@eclmap$, 51, 64, _("Suspicious Creature"), MOROCC_4_142, 1, .@eventname$+"::OnMyMobDead"); + monster(.@eclmap$, 43, 67, _("Suspicious Creature"), MOROCC_4_142, 1, .@eventname$+"::OnMyMobDead"); + monster(.@eclmap$, 55, 80, _("Suspicious Creature"), MOROCC_4_142, 1, .@eventname$+"::OnMyMobDead"); + monster(.@eclmap$, 60, 75, _("Suspicious Creature"), MOROCC_4_142, 1, .@eventname$+"::OnMyMobDead"); .mob_summoned = 1; - close; + close(); OnMyMobDead: - if (mobcount(instance_mapname("1@ecl"),instance_npcname("#event")+"::OnMyMobDead") == 0) { - enablenpc instance_npcname("#sndmaster"); - donpcevent instance_npcname("#sndmaster")+"::OnEnable"; + if (mobcount(instance_mapname("1@ecl"), instance_npcname("#event")+"::OnMyMobDead") == 0) { + enablenpc(instance_npcname("#sndmaster")); + donpcevent(instance_npcname("#sndmaster")+"::OnEnable"); } end; OnInstanceInit: @@ -299,218 +303,218 @@ OnInstanceInit: } 1@ecl,148,97,3 script Avant# 4_M_FAIRYAVANT,{ - mes "[Avant]"; - mes "Hey, look who's here!"; - mes "You're a friend of my son, right?"; - mes "What a strange chance it is that has brought us together here!"; - cutin "avant01",1; - next; - mes "[Avant]"; - mes "Did something happen to you?"; - mes "There was a subtle and magical echo to it."; - mes "Immidiately after that, you were thrown here."; - next; + mes("[Avant]"); + mes("Hey, look who's here!"); + mes("You're a friend of my son, right?"); + mes("What a strange chance it is that has brought us together here!"); + cutin("avant01", 1); + next(); + mes("[Avant]"); + mes("Did something happen to you?"); + mes("There was a subtle and magical echo to it."); + mes("Immidiately after that, you were thrown here."); + next(); if (select("It's all because of you!", "Shenime said...") == 1) { - mes "[Avant]"; - mes "I don't understand a word you're saying."; - mes "Can't you organize your story? Don't you know 'five W's and one H' rule?"; - next; + mes("[Avant]"); + mes("I don't understand a word you're saying."); + mes("Can't you organize your story? Don't you know 'five W's and one H' rule?"); + next(); } - mes "[Avant]"; - mes "Ooh...so that's what happened."; - mes "So you're saying that Shenime was after the Orb?"; - next; - mes "[Avant]"; - mes "hehehe...hahahhaha ahahahahha"; - mes "Well, well...did he get me, too?"; - mes "Me, Avant, of all the people?! Hahahaha!"; - cutin "avant02",1; - next; + mes("[Avant]"); + mes("Ooh...so that's what happened."); + mes("So you're saying that Shenime was after the Orb?"); + next(); + mes("[Avant]"); + mes("hehehe...hahahhaha ahahahahha"); + mes("Well, well...did he get me, too?"); + mes("Me, Avant, of all the people?! Hahahaha!"); + cutin("avant02", 1); + next(); select("What do you mean?"); - mes "[Avant]"; - mes "I was doing a research on the power of the Orb on my own."; - mes "But Shenime just urged me persistently."; - cutin "avant01",1; - next; - mes "[Avant]"; - mes "I started from thinking about the beauty of the Orb and went on to wondering what kind of power is accumulated inside the Orb..."; - mes "and I started questioning the principle of the Orb's power since we all benefit from it."; - next; - mes "[Avant]"; - mes "All Laphines think of the Orb as something natural as air and water, but he was the first one to make me perceive it differently and investigate its origin."; - mes "Right...Shenime. He excited my curiosity on purpose."; - next; - mes "[Avant]"; - mes "Stimulate a person who wasn't aware of air and water, and make him recognize and carry on investigating!"; - mes "Well, well...isn't that interesting!"; - cutin "avant02",1; - next; - mes "[Avant]"; - mes "Ha...hahaha..."; - mes "...I'm so angry about the fact that I just realized how he used me, but what's even worse is that I've done something horrible to our people."; - mes "I think I'm pretty irritated now."; - next; + mes("[Avant]"); + mes("I was doing a research on the power of the Orb on my own."); + mes("But Shenime just urged me persistently."); + cutin("avant01", 1); + next(); + mes("[Avant]"); + mes("I started from thinking about the beauty of the Orb and went on to wondering what kind of power is accumulated inside the Orb..."); + mes("and I started questioning the principle of the Orb's power since we all benefit from it."); + next(); + mes("[Avant]"); + mes("All Laphines think of the Orb as something natural as air and water, but he was the first one to make me perceive it differently and investigate its origin."); + mes("Right...Shenime. He excited my curiosity on purpose."); + next(); + mes("[Avant]"); + mes("Stimulate a person who wasn't aware of air and water, and make him recognize and carry on investigating!"); + mes("Well, well...isn't that interesting!"); + cutin("avant02", 1); + next(); + mes("[Avant]"); + mes("Ha...hahaha..."); + mes("...I'm so angry about the fact that I just realized how he used me, but what's even worse is that I've done something horrible to our people."); + mes("I think I'm pretty irritated now."); + next(); select("You had a conscience?"); - mes "[Avant]"; - mes "What kind of a person do you think I am, seriously!"; - mes "Is it because of my sons?"; - mes "Well, then, I can't blame you too much."; - cutin "avant01",1; - next; - mes "[Avant]"; - mes "...Bah."; - mes "It's no fun."; - mes "It's not fun anymore. I'm no longer interested in you."; - next; - mes "[Avant]"; - mes "......"; - mes "Seems like there's a visitor."; - next; - cutin "minuel01",4; - mes "[Minuel]"; - mes "" + strcharinfo(PC_NAME) + "Sir,"; - mes "Although you're detained on suspicion of being responsible for the recent incident in the lighting room,"; - mes "there are some witnesses to prove your innocence."; - next; - mes "[Minuel]"; - mes "I don't know the details,"; - mes "but I also believe you're not guilty."; - mes "I'll move you to the treatment room since this seems like a severe wound."; - next; - mes "[Minuel]"; - mes "I don't think it's a big deal."; - mes "...hopefully."; - mes "Let's go. I'll guide you."; - close2; - cutin "",255; - warp "1@ecl",146,29; + mes("[Avant]"); + mes("What kind of a person do you think I am, seriously!"); + mes("Is it because of my sons?"); + mes("Well, then, I can't blame you too much."); + cutin("avant01", 1); + next(); + mes("[Avant]"); + mes("...Bah."); + mes("It's no fun."); + mes("It's not fun anymore. I'm no longer interested in you."); + next(); + mes("[Avant]"); + mes("......"); + mes("Seems like there's a visitor."); + next(); + cutin("minuel01", 4); + mes("[Minuel]"); + mesf("%s Sir,", strcharinfo(PC_NAME)); + mes("Although you're detained on suspicion of being responsible for the recent incident in the lighting room,"); + mes("there are some witnesses to prove your innocence."); + next(); + mes("[Minuel]"); + mes("I don't know the details,"); + mes("but I also believe you're not guilty."); + mes("I'll move you to the treatment room since this seems like a severe wound."); + next(); + mes("[Minuel]"); + mes("I don't think it's a big deal."); + mes("...hopefully."); + mes("Let's go. I'll guide you."); + close2(); + cutin("", 255); + warp("1@ecl", 146, 29); end; } 1@ecl,148,29,3 script Loki#ecl01 4_M_ROKI2,{ - mes "[Loki]"; - mes "It seems like this guy next to me has a lot more to say than I do."; - mes "Why don't you explain to him first?"; - close; + mes("[Loki]"); + mes("It seems like this guy next to me has a lot more to say than I do."); + mes("Why don't you explain to him first?"); + close(); } 1@ecl,147,30,3 script Nydhog#ecl01 4_F_NYDHOG,{ - mes "[Guardian Nydhog]"; - mes "I think you should talk to Hisie first."; - close; + mes("[Guardian Nydhog]"); + mes("I think you should talk to Hisie first."); + close(); } 1@ecl,144,27,5 script Hisie#ecl01 4_M_FARIY_HISIE,{ - cutin "hisie01",0; - mes "[Hisie]"; - mes "Can you tell me exactly what happened?"; - next; + cutin("hisie01", 0); + mes("[Hisie]"); + mes("Can you tell me exactly what happened?"); + next(); select("I fought with monsters."); - cutin "hisie03",0; - mes "[Hisie]"; - mes "Monsters? Subordinates of Morroc?"; - mes "What you were trying to kill were our soldiers, the Laphines!!"; - mes "What on earth happened there?"; - npcskill AL_HEAL,9,99,80; - next; - cutin "",255; - mes "[Loki]"; - mes "It's because of this."; - mes "" + strcharinfo(PC_NAME) + "It was inside the body of -"; - mes "This is how powerful Shenime is."; - next; - mes "On Loki's palm, there rested a small, thin, and dried piece of thorn."; - next; - cutin "hisie03",0; - mes "[Hisie]"; - mes "Shenime, the Chief of Staff?"; - mes "Why is he related to this?"; - npcskill AL_HEAL,9,99,80; - next; - cutin "",255; - mes "[Loki]"; - mes "Shenime is one of the subordinates of Morroc."; - mes "His power enbales him to control another person directly or mentally influence that person indirectly through a part of his body."; - next; + cutin("hisie03", 0); + mes("[Hisie]"); + mes("Monsters? Subordinates of Morroc?"); + mes("What you were trying to kill were our soldiers, the Laphines!!"); + mes("What on earth happened there?"); + npcskill(AL_HEAL, 9, 99, 80); + next(); + cutin("", 255); + mes("[Loki]"); + mes("It's because of this."); + mesf("%s It was inside the body of -", strcharinfo(PC_NAME)); + mes("This is how powerful Shenime is."); + next(); + mes("On Loki's palm, there rested a small, thin, and dried piece of thorn."); + next(); + cutin("hisie03", 0); + mes("[Hisie]"); + mes("Shenime, the Chief of Staff?"); + mes("Why is he related to this?"); + npcskill(AL_HEAL, 9, 99, 80); + next(); + cutin("", 255); + mes("[Loki]"); + mes("Shenime is one of the subordinates of Morroc."); + mes("His power enbales him to control another person directly or mentally influence that person indirectly through a part of his body."); + next(); select("Now that I think about it..."); - mes "[" + strcharinfo(PC_NAME) + "]"; - mes "Right before coming here, Shenime reached his hand out to me and I felt a spark when I held his hand."; - mes "I thought it was just my imagination and ignored it...maybe that's when he..."; - next; - mes "[Nydhog]"; - mes "You're probably right."; - mes "They use wicked tricks."; - mes "This thorn here probably has clouded your judgement."; - next; - cutin "hisie03",0; - mes "[Hisie]"; - mes "So you're saying that he deceived us all?"; - mes "The Chief of Staff is a Laphine who stayed with us for a long time! He can't be..."; - npcskill AL_HEAL,9,99,80; - next; - cutin "",255; - mes "[Loki]"; - mes "He might have been under the influence for a good while."; - mes "Anyway, this guy is not guilty."; - mes "I can prove it."; - next; - mes "[Nydhog]"; - mes "I swear by the name of the guardian of Yggdrasil, too."; - mes "" + strcharinfo(PC_NAME) + "- will by no means do such a thing."; - next; - cutin "hisie02",0; - mes "[Hisie]"; - mes "Hah..."; - mes "But things got out of control."; - mes "I didn't expect this."; - next; + mesf("[%s]", strcharinfo(PC_NAME)); + mes("Right before coming here, Shenime reached his hand out to me and I felt a spark when I held his hand."); + mes("I thought it was just my imagination and ignored it...maybe that's when he..."); + next(); + mes("[Nydhog]"); + mes("You're probably right."); + mes("They use wicked tricks."); + mes("This thorn here probably has clouded your judgement."); + next(); + cutin("hisie03", 0); + mes("[Hisie]"); + mes("So you're saying that he deceived us all?"); + mes("The Chief of Staff is a Laphine who stayed with us for a long time! He can't be..."); + npcskill(AL_HEAL, 9, 99, 80); + next(); + cutin("", 255); + mes("[Loki]"); + mes("He might have been under the influence for a good while."); + mes("Anyway, this guy is not guilty."); + mes("I can prove it."); + next(); + mes("[Nydhog]"); + mes("I swear by the name of the guardian of Yggdrasil, too."); + mesf("%s - will by no means do such a thing.", strcharinfo(PC_NAME)); + next(); + cutin("hisie02", 0); + mes("[Hisie]"); + mes("Hah..."); + mes("But things got out of control."); + mes("I didn't expect this."); + next(); select("What happened to the Orb?"); - mes "[Hisie]"; - mes "The inner core is stolen."; - mes "Nobody knows that the Orb's inner core is gone,"; - mes "and that's why Karr didn't make it here."; - npcskill AL_HEAL,9,99,80; - next; - mes "[Hisie]"; - mes "And what's more, several soldiers are injured because of you."; - mes "None of them died fortunately, but most of them are wounded severely."; - mes "The situation is not very good right now."; - next; - cutin "",255; - mes "[Loki]"; - mes "Someone has to take the responsibility here then."; - mes "In all probablility," + strcharinfo(PC_NAME) + "it will be you."; - next; - cutin "hisie02",0; - mes "[Hisie]"; - mes "......these two gentlemen here cleared up all charges related to the Orb,"; - mes "but both you and Karr won't be able to avoid your responsibility."; - mes "you'll have to catch Shenime."; - npcskill AL_HEAL,9,99,80; - next; - cutin "hisie01",0; - mes "[Hisie]"; - mes "It seems like you've rested enough. Let's get going."; - mes "Karr is waiting for you."; - mes "What will you two do?"; - next; - cutin "",255; - mes "[Loki]"; - mes "Don't worry about us."; - mes "Our target is Morroc, the King of Demons."; - mes "It's good enough that we found an evidence here."; - next; - cutin "hisie01",0; - mes "[Hisie]"; - mes "Thank you for your help."; - mes "We will take off now."; - mes "Let's go." + strcharinfo(PC_NAME) + "."; + mes("[Hisie]"); + mes("The inner core is stolen."); + mes("Nobody knows that the Orb's inner core is gone,"); + mes("and that's why Karr didn't make it here."); + npcskill(AL_HEAL, 9, 99, 80); + next(); + mes("[Hisie]"); + mes("And what's more, several soldiers are injured because of you."); + mes("None of them died fortunately, but most of them are wounded severely."); + mes("The situation is not very good right now."); + next(); + cutin("", 255); + mes("[Loki]"); + mes("Someone has to take the responsibility here then."); + mesf("In all probablility, %s it will be you.", strcharinfo(PC_NAME)); + next(); + cutin("hisie02", 0); + mes("[Hisie]"); + mes("......these two gentlemen here cleared up all charges related to the Orb,"); + mes("but both you and Karr won't be able to avoid your responsibility."); + mes("you'll have to catch Shenime."); + npcskill(AL_HEAL, 9, 99, 80); + next(); + cutin("hisie01", 0); + mes("[Hisie]"); + mes("It seems like you've rested enough. Let's get going."); + mes("Karr is waiting for you."); + mes("What will you two do?"); + next(); + cutin("", 255); + mes("[Loki]"); + mes("Don't worry about us."); + mes("Our target is Morroc, the King of Demons."); + mes("It's good enough that we found an evidence here."); + next(); + cutin("hisie01", 0); + mes("[Hisie]"); + mes("Thank you for your help."); + mes("We will take off now."); + mesf("Let's go. %s.", strcharinfo(PC_NAME)); ep14_2_mylord = 30; - changequest 7450,7451; - erasequest 7450; - setquest 7451; - close2; - cutin "",255; - warp "ecl_in03",57,76; + changequest(7450, 7451); + erasequest(7450); + setquest(7451); + close2(); + cutin("", 255); + warp("ecl_in03", 57, 76); end; } diff --git a/npc/re/instances/HazyForest.txt b/npc/re/instances/HazyForest.txt index c649171f8..291ce54db 100644 --- a/npc/re/instances/HazyForest.txt +++ b/npc/re/instances/HazyForest.txt @@ -37,147 +37,149 @@ bif_fild01,158,340,5 script Laphine Soldier#mist 4_M_FAIRYSOLDIER,{ .@party_id = getcharid(CHAR_ID_PARTY); - .@md_name$ = "Mistwood Maze"; + .@md_name$ = _("Mistwood Maze"); - mes "[Laphine Soldier]"; - mes "Are you going into the forest?"; - next; + mes("[Laphine Soldier]"); + mes("Are you going into the forest?"); + next(); if (!.@party_id) { - mes "[Laphine Soldier]"; - mes "Well, well, well, aren't you being too rash?"; - mes "Why don't you at least organize a party?"; - close; + mes("[Laphine Soldier]"); + mes("Well, well, well, aren't you being too rash?"); + mes("Why don't you at least organize a party?"); + close(); } - .@playtime = questprogress(7211,PLAYTIME); - if (getcharid(CHAR_ID_CHAR) == getpartyleader(.@party_id,2)) { + .@playtime = questprogress(7211, PLAYTIME); + if (getcharid(CHAR_ID_CHAR) == getpartyleader(.@party_id, 2)) { if (.@playtime == 1) { - mes "[Laphine Soldier]"; - mes "...Are you sure you're not doing too much?"; - mes "I think you'd better get some rest."; - mes "You'll only wear yourself out by trying to do too much"; - next; - mes "[Laphine Soldier]"; - mes "I don't think the authority will give you permission, either."; - mes "...Even a Sapha would be stopped from entering the forest."; - next; + mes("[Laphine Soldier]"); + mes("...Are you sure you're not doing too much?"); + mes("I think you'd better get some rest."); + mes("You'll only wear yourself out by trying to do too much"); + next(); + mes("[Laphine Soldier]"); + mes("I don't think the authority will give you permission, either."); + mes("...Even a Sapha would be stopped from entering the forest."); + next(); select("You speak our language quite well, don't you?"); - mes "[Laphine Soldier]"; - mes "...Do I?"; - mes "Actually I'm not speaking your language."; - mes "I'm speaking Laphine language."; - next; - mes "[Laphine Soldier]"; - mes "But it's one of the mysteries of Bifrost."; - mes "That we can understand each other even if we speak different languages."; - next; - mes "[Laphine Soldier]"; - mes "To be able to talk with everybody..."; - mes "Perhaps that's the power of Bifrost."; - close; + mes("[Laphine Soldier]"); + mes("...Do I?"); + mes("Actually I'm not speaking your language."); + mes("I'm speaking Laphine language."); + next(); + mes("[Laphine Soldier]"); + mes("But it's one of the mysteries of Bifrost."); + mes("That we can understand each other even if we speak different languages."); + next(); + mes("[Laphine Soldier]"); + mes("To be able to talk with everybody..."); + mes("Perhaps that's the power of Bifrost."); + close(); } else if (.@playtime == 2) { - mes "[Laphine Soldier]"; - mes "Great, great."; - mes "Now the forest won't reject you."; - mes "What are you going to do now?"; - erasequest 7211; + mes("[Laphine Soldier]"); + mes("Great, great."); + mes("Now the forest won't reject you."); + mes("What are you going to do now?"); + erasequest(7211); } else { - mes "[Laphine Soldier]"; - mes "You human adventurers are incredible."; - mes "You're always going into the forest, where no one else dares to go."; - next; - mes "[Laphine Soldier]"; - mes "Phew. But I have to report to the authority"; - mes "everyone who goes into the forest, just in case."; - next; - mes "[Laphine Soldier]"; - mes "You'll get permission"; - mes "after you register."; - mes "Are you going to venture into the Hazy Forest?"; + mes("[Laphine Soldier]"); + mes("You human adventurers are incredible."); + mes("You're always going into the forest, where no one else dares to go."); + next(); + mes("[Laphine Soldier]"); + mes("Phew. But I have to report to the authority"); + mes("everyone who goes into the forest, just in case."); + next(); + mes("[Laphine Soldier]"); + mes("You'll get permission"); + mes("after you register."); + mes("Are you going to venture into the Hazy Forest?"); } - next; + next(); switch(select("Venture into the Hazy Forest.", "Give up.")) { case 1: - mes "[Laphine Soldier]"; - mes "Party Name "+getpartyname(.@party_id)+"..."; - mes "Party Leader "+strcharinfo(PC_NAME)+"..."; + mes("[Laphine Soldier]"); + mesf("Party Name %s...", getpartyname(.@party_id)); + mesf("Party Leader %s...", strcharinfo(PC_NAME)); .@instance = instance_create(.@md_name$, .@party_id); if (.@instance < 0) { - mes "Hmm..."; - next; - mes "[Laphine Soldier]"; + mes("Hmm..."); + next(); + mes("[Laphine Soldier]"); if (!.@playtime) - mes "It's dangerous in the forest."; + mes("It's dangerous in the forest."); else - mes "The atmosphere is somewhat tense in the forest."; - mes "...Why don't you just go back today?"; - close; + mes("The atmosphere is somewhat tense in the forest."); + mes("...Why don't you just go back today?"); + close(); } - if (instance_attachmap("1@mist",.@instance) != "") { - instance_set_timeout 7200,300,.@instance; + if (instance_attachmap("1@mist", .@instance) != "") { + instance_set_timeout(7200, 300, .@instance); instance_init(.@instance); - mes "I've got it. I've written them down on the report here."; - next; - mes "[Laphine Soldier]"; - mes "You'll get permission soon."; - mes "Now go to the log tunnel, the only way to get into the Hazy Forest."; - mes "You understand?"; - next; - mes "[Laphine Soldier]"; - mes "We can't go against the forest,"; - mes "but maybe you humans can."; - mes "Good luck!"; - close; + mes("I've got it. I've written them down on the report here."); + next(); + mes("[Laphine Soldier]"); + mes("You'll get permission soon."); + mes("Now go to the log tunnel, the only way to get into the Hazy Forest."); + mes("You understand?"); + next(); + mes("[Laphine Soldier]"); + mes("We can't go against the forest,"); + mes("but maybe you humans can."); + mes("Good luck!"); + close(); } else { instance_destroy(.@instance); } case 2: - mes "[Laphine Soldier]"; - mes "Well, you've made the right decision."; + mes("[Laphine Soldier]"); + mes("Well, you've made the right decision."); if (!.@playtime) - mes "That's what's good for you."; - close; + mes("That's what's good for you."); + close(); } } else { - mes "[Laphine Soldier]"; - mes "Where's your party leader?"; - mes "It's dangerous in there."; - next; + mes("[Laphine Soldier]"); + mes("Where's your party leader?"); + mes("It's dangerous in there."); + next(); if (.@playtime == 2) { - mes "[Laphine Soldier]"; - mes "I see you've been into the forest before."; - mes "Okay, at least the forest won't reject you."; - mes "However..."; - erasequest 7211; - next; + mes("[Laphine Soldier]"); + mes("I see you've been into the forest before."); + mes("Okay, at least the forest won't reject you."); + mes("However..."); + erasequest(7211); + next(); } - mes "[Laphine Soldier]"; - mes "Put yourself in my shoes, the entrance guard, and let me meet the representative of your party."; - mes "I have to discuss some things with him/her."; - close; + mes("[Laphine Soldier]"); + mes("Put yourself in my shoes, the entrance guard, and let me meet the representative of your party."); + mes("I have to discuss some things with him/her."); + close(); } } bif_fild01,161,355,0 script Log Tunnel CLEAR_NPC,{ - mes "I see the forest through the log tunnel."; - mes "It looks like I can enter the forest through the log tunnel."; - next; - if(select("Enter the tunnel.", "Give up.") == 2) - close; + mes("I see the forest through the log tunnel."); + mes("It looks like I can enter the forest through the log tunnel."); + next(); + if (select("Enter the tunnel.", "Give up.") == 2) + close(); if (has_instance("1@mist") == "") { - if (questprogress(7211,PLAYTIME) == 1) { - mes "You try to crawl into the log, but some mysterious power pushes you back with a gush of wind."; - mes "It seems like you can't force your way into the forest."; - close; + if (questprogress(7211, PLAYTIME) == 1) { + mes("You try to crawl into the log, but some mysterious power pushes you back with a gush of wind."); + mes("It seems like you can't force your way into the forest."); + close(); } - mes "The world beyond the log tunnel looks dark and suffocating."; - mes "Your instinct is screaming that this forest is dangerous."; - close; + mes("The world beyond the log tunnel looks dark and suffocating."); + mes("Your instinct is screaming that this forest is dangerous."); + close(); } else { - if (questprogress(7211,PLAYTIME) == 2) erasequest 7211; - if (!questprogress(7211,PLAYTIME)) setquest 7211; - mapannounce "bif_fild01",getpartyname(getcharid(CHAR_ID_PARTY))+" party's "+strcharinfo(PC_NAME)+" member is entering the Mistwood Maze.",bc_map,"0x00ff99"; //FW_NORMAL 12 0 0 - warp "1@mist",89,29; - close; + if (questprogress(7211, PLAYTIME) == 2) + erasequest(7211); + if (!questprogress(7211, PLAYTIME)) + setquest(7211); + mapannounce("bif_fild01", sprintf(_$("%s party's %s member is entering the Mistwood Maze."), getpartyname(getcharid(CHAR_ID_PARTY)), strcharinfo(PC_NAME)), bc_map, C_SPRINGGREEN); //FW_NORMAL 12 0 0 + warp("1@mist", 89, 29); + close(); } } @@ -185,284 +187,325 @@ bif_fild01,161,355,0 script Log Tunnel CLEAR_NPC,{ 1@mist,89,29,0 script #Whisper_mist CLEAR_NPC,1,1,{ end; OnInstanceInit: - enablenpc instance_npcname("#Whisper_mist"); + enablenpc(instance_npcname("#Whisper_mist")); end; OnTouch: - disablenpc instance_npcname("#Whisper_mist"); - initnpctimer; + disablenpc(instance_npcname("#Whisper_mist")); + initnpctimer(); end; OnTimer10000: OnTimer20000: - mapannounce instance_mapname("1@mist"),"Whisper: Who's this? Who's this!? The forest is open! Tom, Tomba, Tired Rem, Remi! Wake up!",bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@mist"), _("Whisper: Who's this? Who's this!? The forest is open! Tom, Tomba, Tired Rem, Remi! Wake up!"), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 end; OnTimer60000: - mapannounce instance_mapname("1@mist"),"Loud Whisper: What are the forest keepers doing? What are the gardeners doing??",bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@mist"), _("Loud Whisper: What are the forest keepers doing? What are the gardeners doing??"), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 end; OnTimer120000: - mapannounce instance_mapname("1@mist"),"Loud Whisper: Don't go out, wander around forever, and play with us!",bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@mist"), _("Loud Whisper: Don't go out, wander around forever, and play with us!"), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 end; OnTimer180000: - mapannounce instance_mapname("1@mist"),"Loud Whisper: Useless, useless. Wandering around and around, you'll meet your end!",bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 - stopnpctimer; + mapannounce(instance_mapname("1@mist"), _("Loud Whisper: Useless, useless. Wandering around and around, you'll meet your end!"), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 + stopnpctimer(); end; } -// callfunc "F_Mora_Mist",<warp to enable>,<success message>,<fail message>{,<end flag>} +// callfunc("F_Mora_Mist", <warp to enable>, <success message>, <fail message>{, <end flag>}) function script F_Mora_Mist { .@map$ = instance_mapname("1@mist"); - if (mobcount(.@map$,instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead") == 0) { - mes "Obviously no one is taking care of it."; - mes "It seems like you can chop down the garden tree."; - next; - if(select("Chop down the garden tree.", "Give up.") == 2) - close; - mes "You chop down the tree, which was blocking the path of the maze, "+((getarg(3,0))?"clearing the way out of the forest.":"so now you can continue."); - mapannounce .@map$,getarg(1),bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 - enablenpc instance_npcname(getarg(0)); - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); - close; - } else - mapannounce .@map$,((getarg(3,0))?getarg(2):getarg(2)+"'s Cry: Huh? Who's doing bad things to my tree?!"),bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 + if (mobcount(.@map$, instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead") == 0) { + mes("Obviously no one is taking care of it."); + mes("It seems like you can chop down the garden tree."); + next(); + if (select("Chop down the garden tree.", "Give up.") == 2) + close(); + mesf("You chop down the tree, which was blocking the path of the maze, %s", ((getarg(3, 0))?"clearing the way out of the forest.":"so now you can continue.")); + mapannounce(.@map$, getarg(1), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 + enablenpc(instance_npcname(getarg(0))); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); + close(); + } else { + mapannounce(.@map$, (getarg(3, 0) ? getarg(2) : sprintf(_$("%s's Cry: Huh? Who's doing bad things to my tree?!"), getarg(2))), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 + } + end; +} + +1@mist,251,121,3 script Tom's Garden 4_BULLETIN_BOARD2,{ end; } -1@mist,251,121,3 script Tom's Garden 4_BULLETIN_BOARD2,{ end; } 1@mist,247,123,0 script Tom's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "a25_a18-1", "Roaring Cry: Tom's bolt is broken! Watch out, Tomba! Watch out, Tomba!", - "Tom"; + "Tom"); end; OnInstanceInit: - monster instance_mapname("1@mist"),249,120,"Tom",2136,1,instance_npcname("Tom's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 249, 120, _("Tom"), LITTLE_FATUM, 1, instance_npcname("Tom's Garden Tree")+"::OnMyMobDead"); end; OnMyMobDead: end; } -1@mist,226,95,3 script Tomba's Garden 4_BULLETIN_BOARD2,{ end; } +1@mist,226,95,3 script Tomba's Garden 4_BULLETIN_BOARD2,{ + end; +} + 1@mist,225,98,0 script Tomba's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "a27-2_af1-2", "Roaring Cry: Tomba's Garden Tree is gone with Tomba. Remi, what are you going to do now?", - "Tomba"; + "Tomba"); end; OnInstanceInit: - monster instance_mapname("1@mist"),200,64,"Tomba",2136,1,instance_npcname("Tomba's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 200, 64, _("Tomba"), LITTLE_FATUM, 1, instance_npcname("Tomba's Garden Tree")+"::OnMyMobDead"); end; OnMyMobDead: end; } -1@mist,157,183,3 script Remi's Garden 4_BULLETIN_BOARD2,{ end; } +1@mist,157,183,3 script Remi's Garden 4_BULLETIN_BOARD2,{ + end; +} + 1@mist,159,184,0 script Remi's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "a15-2_a4-1", "Roaring Cry: Remi, Remi's Garden Tree was chopped down- Rem, it's your turn next. Poor Rem!", - "Remi"; + "Remi"); end; OnInstanceInit: - monster instance_mapname("1@mist"),154,184,"Remi the Tired",2137,1,instance_npcname("Remi's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 154, 184, _("Remi the Tired"), MIMING, 1, instance_npcname("Remi's Garden Tree")+"::OnMyMobDead"); end; OnMyMobDead: end; } -1@mist,58,39,3 script Tired Rem's Garden 4_BULLETIN_BOARD2,{ end; } +1@mist,58,39,3 script Tired Rem's Garden 4_BULLETIN_BOARD2,{ + end; +} + 1@mist,61,39,0 script Tired Rem's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "a4-2_a11", "Rem's Desperate Cry: Argh... Rem will sleep. Rem will sleep now, and won't wake up forever!", - "Rem"; + "Rem"); end; OnInstanceInit: - monster instance_mapname("1@mist"),101,107,"Rem the Gardener",2136,1,instance_npcname("Tired Rem's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 101, 107, _("Rem the Gardener"), LITTLE_FATUM, 1, instance_npcname("Tired Rem's Garden Tree")+"::OnMyMobDead"); end; OnTimer10000: - mapannounce instance_mapname("1@mist"),"Whisper of the Forest: So Tom's, Tomba's, Remi's, and Rem's garden trees were all chopped down?",bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@mist"), _("Whisper of the Forest: So Tom's, Tomba's, Remi's, and Rem's garden trees were all chopped down?"), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 end; OnTimer15000: - mapannounce instance_mapname("1@mist"),"Whisper of the Forest: Trouble, trouble, we're in big trouble.",bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@mist"), _("Whisper of the Forest: Trouble, trouble, we're in big trouble."), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 end; OnTimer20000: - mapannounce instance_mapname("1@mist"),"Loud Whisper: They've come to the second deepest forest. Gardeners of the deep forest, watch out!",bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 - stopnpctimer; + mapannounce(instance_mapname("1@mist"), _("Loud Whisper: They've come to the second deepest forest. Gardeners of the deep forest, watch out!"), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 + stopnpctimer(); end; OnMyMobDead: end; } -1@mist,227,179,3 script Ron's Garden 4_BULLETIN_BOARD2,{ end; } +1@mist,227,179,3 script Ron's Garden 4_BULLETIN_BOARD2,{ + end; +} + 1@mist,230,179,0 script Ron's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "b4-2_b2", "Ron the Gardener's Cry: I'm getting off work! Don't look for Ron, the second gardener, any more!!", - "Ron"; + "Ron"); end; OnInstanceInit: - monster instance_mapname("1@mist"),227,178,"Ron the Gardener",2134,1,instance_npcname("Ron's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 227, 178, _("Ron the Gardener"), PARUS, 1, instance_npcname("Ron's Garden Tree")+"::OnMyMobDead"); end; OnMyMobDead: end; } -1@mist,288,226,3 script Rover's Garden 4_BULLETIN_BOARD2,{ end; } +1@mist,288,226,3 script Rover's Garden 4_BULLETIN_BOARD2,{ + end; +} + 1@mist,285,225,0 script Rover's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "b7_bf1-2", "Roaring Whisper: Ron's, and Rover's trees were chopped down as well. Who is forcing his way into the forest? Who is it?", - "Rover"; + "Rover"); end; OnInstanceInit: - monster instance_mapname("1@mist"),304,237,"Rover the Strutter",2134,1,instance_npcname("Rover's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 304, 237, _("Rover the Strutter"), PARUS, 1, instance_npcname("Rover's Garden Tree")+"::OnMyMobDead"); end; OnMyMobDead: end; } -1@mist,159,318,3 script Mona's Garden 4_BULLETIN_BOARD2,{ end; } +1@mist,159,318,3 script Mona's Garden 4_BULLETIN_BOARD2,{ + end; +} + 1@mist,161,316,0 script Mona's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "b31_b16", "Clamoring Whisper: Mona the Seedseeker's garden tree is gone! Mona is gone too! Namon will be okay, because he is brave, right? Namon, are you okay?", - "Mona"; + "Mona"); end; OnInstanceInit: - monster instance_mapname("1@mist"),239,253,"Mona the Seedseeker",2133,1,instance_npcname("Mona's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 239, 253, _("Mona the Seedseeker"), ANGRA_MANTIS, 1, instance_npcname("Mona's Garden Tree")+"::OnMyMobDead"); end; OnMyMobDead: end; } -1@mist,205,300,3 script Namon's Garden 4_BULLETIN_BOARD2,{ end; } +1@mist,205,300,3 script Namon's Garden 4_BULLETIN_BOARD2,{ + end; +} + 1@mist,204,299,0 script Namon's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "b27-3_bN-1", "Clamoring Whisper: Brave Namon met his fate not so bravely... *giggle*", - "Namon"; + "Namon"); end; OnInstanceInit: - monster instance_mapname("1@mist"),89,173,"Brave Namon",2134,1,instance_npcname("Namon's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 89, 173, _("Brave Namon"), PARUS, 1, instance_npcname("Namon's Garden Tree")+"::OnMyMobDead"); end; OnMyMobDead: end; } -1@mist,219,232,3 script Sad Neoron's Garden 4_BULLETIN_BOARD2,{ end; } +1@mist,219,232,3 script Sad Neoron's Garden 4_BULLETIN_BOARD2,{ + end; +} + 1@mist,221,236,0 script Sad Neoron's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "b6-1_b33", "Lamenting Whisper: Sad Neoron has become cheerful! Spyder the Superior Spider, what are you going to do? What are you going to do now?", - "Neoron"; + "Neoron"); end; OnInstanceInit: - monster instance_mapname("1@mist"),143,265,"Sad Neoron",2137,1,instance_npcname("Sad Neoron's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 143, 265, _("Sad Neoron"), MIMING, 1, instance_npcname("Sad Neoron's Garden Tree")+"::OnMyMobDead"); end; OnMyMobDead: end; } -1@mist,206,202,3 script Spyder's Garden 4_BULLETIN_BOARD2,{ end; } +1@mist,206,202,3 script Spyder's Garden 4_BULLETIN_BOARD2,{ + end; +} + 1@mist,206,200,0 script Spyder's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "b5_b14", "Depressed Whisper: Now it's all over with the second deepest forest. Gardeners are dying out-", - "Spyder"; + "Spyder"); end; OnInstanceInit: - monster instance_mapname("1@mist"),209,200,"Spyder the Eight-Legged",2132,1,instance_npcname("Spyder's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 209, 200, _("Spyder the Eight-Legged"), POM_SPIDER, 1, instance_npcname("Spyder's Garden Tree")+"::OnMyMobDead"); end; OnTimer5000: - mapannounce instance_mapname("1@mist"),"Roaring Whisper: The path is about to open. The tight bolts have been removed!",bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@mist"), _("Roaring Whisper: The path is about to open. The tight bolts have been removed!"), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 end; OnTimer9000: - mapannounce instance_mapname("1@mist"),"Roaring Whisper: A forest opened, another opened, and the other is going to open as well. Tito and Pumba, they are heading your way!",bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@mist"), _("Roaring Whisper: A forest opened, another opened, and the other is going to open as well. Tito and Pumba, they are heading your way!"), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 end; OnTimer13000: - mapannounce instance_mapname("1@mist"),"Roaring Whisper: Where you get after wandering around, around and around, everybody you've met while wandering around, around and around,",bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 + mapannounce(instance_mapname("1@mist"), _("Roaring Whisper: Where you get after wandering around, around and around, everybody you've met while wandering around, around and around,"), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 end; OnTimer17000: - mapannounce instance_mapname("1@mist"),"Roaring Whisper: all the gardeners will be waiting for you, with their clippers in their hands-!",bc_map,"0xccffcc"; //FW_NORMAL 12 0 0 - stopnpctimer; + mapannounce(instance_mapname("1@mist"), _("Roaring Whisper: all the gardeners will be waiting for you, with their clippers in their hands-!"), bc_map, "0xccffcc"); //FW_NORMAL 12 0 0 + stopnpctimer(); end; OnMyMobDead: end; } -1@mist,96,288,3 script Tito's Garden 4_BULLETIN_BOARD2,{ end; } +1@mist,96,288,3 script Tito's Garden 4_BULLETIN_BOARD2,{ + end; +} + 1@mist,95,287,0 script Tito's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "c1_c13-1", "Tito's Cry: *sob* *sob* Tito's gone now! Tito's done for! Boo hoo!!", - "Tito"; + "Tito"); end; OnInstanceInit: - monster instance_mapname("1@mist"),264,291,"Tito the Flipper",2133,1,instance_npcname("Tito's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 264, 291, _("Tito the Flipper"), ANGRA_MANTIS, 1, instance_npcname("Tito's Garden Tree")+"::OnMyMobDead"); end; OnMyMobDead: end; } -1@mist,326,325,3 script Pumba's Garden 4_BULLETIN_BOARD2,{ end; } +1@mist,326,325,3 script Pumba's Garden 4_BULLETIN_BOARD2,{ + end; +} + 1@mist,324,325,0 script Pumba's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "c13-3_c4", "Roaring Whisper: Tito the Hard Worker was defeated! Stop playing and go to work, Tete! Start working!", - "Pumba"; + "Pumba"); end; OnInstanceInit: - monster instance_mapname("1@mist"),309,165,"Diligent Pumba",2134,1,instance_npcname("Pumba's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 309, 165, _("Diligent Pumba"), PARUS, 1, instance_npcname("Pumba's Garden Tree")+"::OnMyMobDead"); end; OnMyMobDead: end; } -1@mist,278,345,3 script Tete's Garden 4_BULLETIN_BOARD2,{ end; } +1@mist,278,345,3 script Tete's Garden 4_BULLETIN_BOARD2,{ + end; +} + 1@mist,280,344,0 script Tete's Garden Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "c19_c4", "Whisper: They are strong, strong indeed. What are we going to do now? Are there any gardeners left? Are there any?", - "Tete"; + "Tete"); end; OnInstanceInit: - monster instance_mapname("1@mist"),277,343,"Carefree Tete",2136,1,instance_npcname("Tete's Garden Tree")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 277, 343, _("Carefree Tete"), LITTLE_FATUM, 1, instance_npcname("Tete's Garden Tree")+"::OnMyMobDead"); end; OnMyMobDead: end; } 1@mist,345,186,0 script The Gardeners' Tree 4_CREEPER,{ - callfunc "F_Mora_Mist", + callfunc("F_Mora_Mist", "#to_bif02", "Roaring Whisper: The forest will remember you! It will remember you, the one who broke the clippers of all the gardeners!", - "Gardeners: We're not dead, yet!!!!",1; + "Gardeners: We're not dead, yet!!!!", 1); end; OnInstanceInit: .@map$ = instance_mapname("1@mist"); - monster .@map$,318,137,"Baby Tom",2136,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; - monster .@map$,321,137,"Tomba the Baby",2136,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; - monster .@map$,324,137,"Exhausted Remi",2137,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; - monster .@map$,319,135,"Rem the Exhausted",2136,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; - monster .@map$,323,135,"Ron the Ex-Gardener",2134,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; - monster .@map$,320,133,"Rover the Strutter",2134,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; - monster .@map$,323,133,"Mona the Seedpicker",2133,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; - monster .@map$,317,132,"Timid Namon",2134,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; - monster .@map$,326,132,"Indifferent Neoron",2137,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; - monster .@map$,317,129,"Spyder the Seven-Legged",2132,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; - monster .@map$,320,129,"Tito the Flapper",2133,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; - monster .@map$,324,129,"Lazy Pumba",2134,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; - monster .@map$,327,129,"Careless Tete",2136,1,instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"; + monster(.@map$, 318, 137, _("Baby Tom"), LITTLE_FATUM, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); + monster(.@map$, 321, 137, _("Tomba the Baby"), LITTLE_FATUM, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); + monster(.@map$, 324, 137, _("Exhausted Remi"), MIMING, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); + monster(.@map$, 319, 135, _("Rem the Exhausted"), LITTLE_FATUM, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); + monster(.@map$, 323, 135, _("Ron the Ex-Gardener"), PARUS, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); + monster(.@map$, 320, 133, _("Rover the Strutter"), PARUS, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); + monster(.@map$, 323, 133, _("Mona the Seedpicker"), ANGRA_MANTIS, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); + monster(.@map$, 317, 132, _("Timid Namon"), PARUS, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); + monster(.@map$, 326, 132, _("Indifferent Neoron"), MIMING, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); + monster(.@map$, 317, 129, _("Spyder the Seven-Legged"), POM_SPIDER, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); + monster(.@map$, 320, 129, _("Tito the Flapper"), ANGRA_MANTIS, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); + monster(.@map$, 324, 129, _("Lazy Pumba"), PARUS, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); + monster(.@map$, 327, 129, _("Careless Tete"), LITTLE_FATUM, 1, instance_npcname("The Gardeners' Tree")+"::OnMyMobDead"); end; OnMyMobDead: end; } 1@mist,73,290,0 script Mysterious Flower#1 CLEAR_NPC,{ - specialeffect EF_LEVEL99_4; - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); - getitem Mysterious_Seed,1; + specialeffect(EF_LEVEL99_4); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); + getitem(Mysterious_Seed, 1); end; } + 1@mist,69,295,0 duplicate(Mysterious Flower#1) Mysterious Flower#2 CLEAR_NPC 1@mist,62,291,0 duplicate(Mysterious Flower#1) Mysterious Flower#3 CLEAR_NPC 1@mist,54,293,0 duplicate(Mysterious Flower#1) Mysterious Flower#4 CLEAR_NPC @@ -516,420 +559,432 @@ OnMyMobDead: 1@mist,2,2,0 script #Dragon Herder CLEAR_NPC,{ end; OnInstanceInit: - switch(rand(1,6)) { - case 1: setarray .@c[0],77,240; break; - case 2: setarray .@c[0],147,261; break; - case 3: setarray .@c[0],182,263; break; - case 4: setarray .@c[0],194,350; break; - case 5: setarray .@c[0],268,183; break; - case 6: setarray .@c[0],65,278; break; + switch (rand(1, 6)) { + case 1: + setarray .@c[0], 77, 240; + break; + case 2: + setarray .@c[0], 147, 261; + break; + case 3: + setarray .@c[0], 182, 263; + break; + case 4: + setarray .@c[0], 194, 350; + break; + case 5: + setarray .@c[0], 268, 183; + break; + case 6: + setarray .@c[0], 65, 278; + break; } - monster instance_mapname("1@mist"),.@c[0],.@c[1],"Wandering Purple Dragon",2131,1,instance_npcname("#Dragon Herder")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), .@c[0], .@c[1], _("Wandering Purple Dragon"), LOST_DRAGON, 1, instance_npcname("#Dragon Herder")+"::OnMyMobDead"); end; OnMyMobDead: .@map$ = instance_mapname("1@mist"); - if (mobcount(.@map$,instance_npcname("#Dragon Herder")+"::OnMyMobDead") == 0) { - donpcevent instance_npcname("Collapsed Girl#mist")+"::OnEnable"; - donpcevent instance_npcname("Mysterious Young Man#mis")+"::OnEnable"; - donpcevent instance_npcname("Loki#mist")+"::OnEnable"; - mapannounce .@map$,"The Dragon's Cry: Am I being punished... for abandoning the way... of the guardian...?",bc_map,"0xffff00"; //FW_NORMAL 12 0 0 - disablenpc instance_npcname("#Dragon Herder"); - initnpctimer; + if (mobcount(.@map$, instance_npcname("#Dragon Herder")+"::OnMyMobDead") == 0) { + donpcevent(instance_npcname("Collapsed Girl#mist")+"::OnEnable"); + donpcevent(instance_npcname("Mysterious Young Man#mis")+"::OnEnable"); + donpcevent(instance_npcname("Loki#mist")+"::OnEnable"); + mapannounce(.@map$, _("The Dragon's Cry: Am I being punished... for abandoning the way... of the guardian...?"), bc_map, C_YELLOW); //FW_NORMAL 12 0 0 + disablenpc(instance_npcname("#Dragon Herder")); + initnpctimer(); } end; OnTimer3000: - stopnpctimer; - mapannounce instance_mapname("1@mist"),"Voice in your head: ...Will you... save... me... please......?",bc_map,"0xffff00"; //FW_NORMAL 12 0 0 + stopnpctimer(); + mapannounce(instance_mapname("1@mist"), _("Voice in your head: ...Will you... save... me... please......?"), bc_map, C_YELLOW); //FW_NORMAL 12 0 0 end; } 1@mist,97,30,3 script Mysterious Young Man#mis 4_M_ROKI2,{ if (BaseLevel < 98) { - mes "[Mysterious Young Man]"; - mes "Huh? Do you plan to pass through here?"; - mes ".....I'm afraid it's beyond your ability, but I won't meddle in your affairs."; - mes "We'll meet again, if you survive."; - close; + mes("[Mysterious Young Man]"); + mes("Huh? Do you plan to pass through here?"); + mes(".....I'm afraid it's beyond your ability, but I won't meddle in your affairs."); + mes("We'll meet again, if you survive."); + close(); } if (ep14_1_mistwoods == 0) { if (ep13_3_secret > 23) { - mes "[Mysterious Young Man]"; - mes "You... I remember seeing you at the camp."; - mes "The information you gave on Ahat was useful."; - mes "Thanks!"; - next; - mes "[Mysterious Young Man]"; - mes "But do you plan to pass through here?"; - mes "What good is it to go across Bifrost?"; - next; + mes("[Mysterious Young Man]"); + mes("You... I remember seeing you at the camp."); + mes("The information you gave on Ahat was useful."); + mes("Thanks!"); + next(); + mes("[Mysterious Young Man]"); + mes("But do you plan to pass through here?"); + mes("What good is it to go across Bifrost?"); + next(); } else { - mes "[Mysterious Young Man]"; - mes "Do you plan to pass through here?"; - mes "I will advise against it if you're just curious."; - mes "It will only bring about your untimely death..."; - next; + mes("[Mysterious Young Man]"); + mes("Do you plan to pass through here?"); + mes("I will advise against it if you're just curious."); + mes("It will only bring about your untimely death..."); + next(); } - mes "[Mysterious Young Man]"; - mes "If you are determined to pass through here,"; - mes "I will ask for your help with something."; - next; + mes("[Mysterious Young Man]"); + mes("If you are determined to pass through here,"); + mes("I will ask for your help with something."); + next(); select("Who are you?"); - mes "[Loki]"; - mes "Loki... from the Assassin's Guild."; - mes "That's my name."; - mes "And yours?"; - next; - mes "["+strcharinfo(PC_NAME)+"]"; - mes "...."; - mes "...."+strcharinfo(PC_NAME)+" sir."; - next; - mes "[Loki]"; - mes "I see. "+strcharinfo(PC_NAME)+"."; - mes "I'm asking you again."; - mes "Do you plan to pass through this forest?"; - next; + mes("[Loki]"); + mes("Loki... from the Assassin's Guild."); + mes("That's my name."); + mes("And yours?"); + next(); + mesf("[%s]", strcharinfo(PC_NAME)); + mes("...."); + mesf("....%s sir.", strcharinfo(PC_NAME)); + next(); + mes("[Loki]"); + mesf("I see. %s.", strcharinfo(PC_NAME)); + mes("I'm asking you again."); + mes("Do you plan to pass through this forest?"); + next(); switch(select("Yes, I do.", "No, I don't.")) { case 1: - mes "[Loki]"; - mes "Then I'll ask you a question."; - mes "Have you ever seen a guard... a girl with purple hair?"; - next; + mes("[Loki]"); + mes("Then I'll ask you a question."); + mes("Have you ever seen a guard... a girl with purple hair?"); + next(); switch(select("No, I haven't.", "Yes, I might have...")) { case 1: - mes "[Loki]"; - mes "So you haven't."; - mes "You're telling the truth."; - next; + mes("[Loki]"); + mes("So you haven't."); + mes("You're telling the truth."); + next(); break; case 2: - mes "[Loki]"; - mes "Wait."; - mes "(Loki comes closer.)"; - mes "... No."; - mes "You're telling the truth."; - next; + mes("[Loki]"); + mes("Wait."); + mes("(Loki comes closer.)"); + mes("... No."); + mes("You're telling the truth."); + next(); break; } - mes "[Loki]"; - mes "Now we have to say goodbye here."; - mes "If you survive this forest, of course."; + mes("[Loki]"); + mes("Now we have to say goodbye here."); + mes("If you survive this forest, of course."); ep14_1_mistwoods = 2; - setquest 7212; - close; + setquest(7212); + close(); case 2: - mes "[Loki]"; - mes "I understand."; - mes "Step back if you aren't ready."; - mes "This forest doesn't like strangers."; + mes("[Loki]"); + mes("I understand."); + mes("Step back if you aren't ready."); + mes("This forest doesn't like strangers."); ep14_1_mistwoods = 1; - close; + close(); } } else if (ep14_1_mistwoods == 1) { - mes "[Loki]"; - mes "I told you - step back if you don't want to die."; - mes "It's not easy going through the forest."; - mes "It may cost you your life."; - next; + mes("[Loki]"); + mes("I told you - step back if you don't want to die."); + mes("It's not easy going through the forest."); + mes("It may cost you your life."); + next(); switch(select("Okay.", "What do you want?")) { case 1: - mes "- When you step back,"; - mes "Loki nods slightly and then looks away. -"; - close; + mes("- When you step back,"); + mes("Loki nods slightly and then looks away. -"); + close(); case 2: - mes "[Loki]"; - mes "I'm looking for somebody."; - mes "Have you ever seen a guard... a girl with purple hair?"; - next; + mes("[Loki]"); + mes("I'm looking for somebody."); + mes("Have you ever seen a guard... a girl with purple hair?"); + next(); switch(select("No, I haven't.", "Yes, I might have...")) { case 1: - mes "[Loki]"; - mes "So you haven't."; - mes "You're telling the truth."; - next; + mes("[Loki]"); + mes("So you haven't."); + mes("You're telling the truth."); + next(); break; case 2: - mes "[Loki]"; - mes "Wait."; - mes "(Loki comes closer.)"; - mes "... No."; - mes "You're telling the truth."; - next; + mes("[Loki]"); + mes("Wait."); + mes("(Loki comes closer.)"); + mes("... No."); + mes("You're telling the truth."); + next(); break; } - mes "[Loki]"; - mes "Now we have to say goodbye here."; - mes "Hopefully, we will see each other again in Mora."; + mes("[Loki]"); + mes("Now we have to say goodbye here."); + mes("Hopefully, we will see each other again in Mora."); ep14_1_mistwoods = 2; - setquest 7212; - close; + setquest(7212); + close(); } } else if (ep14_1_mistwoods == 2) { - mes "[Loki]"; - mes "I don't want to go with you."; - mes "Hopefully, we will see each other again in Mora."; - close; + mes("[Loki]"); + mes("I don't want to go with you."); + mes("Hopefully, we will see each other again in Mora."); + close(); } else if (ep14_1_mistwoods == 3) { - mes "[Loki]"; - mes "So we meet again."; - mes "Are you used to this place?"; - mes "Come to the inn in Mora."; - mes "I have something to give to you."; - close; + mes("[Loki]"); + mes("So we meet again."); + mes("Are you used to this place?"); + mes("Come to the inn in Mora."); + mes("I have something to give to you."); + close(); } else { - mes "[Loki]"; - mes "We're seeing a lot of each other these days."; - mes "It seems you are completely comfortable with the place."; - mes "You'd better not be too proud of yourself."; - close; + mes("[Loki]"); + mes("We're seeing a lot of each other these days."); + mes("It seems you are completely comfortable with the place."); + mes("You'd better not be too proud of yourself."); + close(); } end; OnEnable: - enablenpc instance_npcname("Mysterious Young Man#mis"); + enablenpc(instance_npcname("Mysterious Young Man#mis")); end; OnDisable: - disablenpc instance_npcname("Mysterious Young Man#mis"); + disablenpc(instance_npcname("Mysterious Young Man#mis")); end; } 1@mist,183,304,3 script Loki#mist 4_M_ROKI2,{ if (ep14_1_mistwoods < 2) { - mes "[Loki]"; - mes "An adventurer in the forest."; - mes "....."; - mes "You can go to Mora through this forest."; - close; + mes("[Loki]"); + mes("An adventurer in the forest."); + mes("....."); + mes("You can go to Mora through this forest."); + close(); } else if (ep14_1_mistwoods == 2) { - mes "[Loki]"; - mes "Is it you that took care of this unruly girl?"; - mes "I guess I have to thank you."; - mes "You've calmed her down."; - next; + mes("[Loki]"); + mes("Is it you that took care of this unruly girl?"); + mes("I guess I have to thank you."); + mes("You've calmed her down."); + next(); select("What's happening?", "This girl...?"); - mes "[Loki]"; - mes "You might be able to change your appearance, but you cannot change your unique, innate light."; - mes "A scent strong enough to burn your nose."; - next; - mes "[Loki]"; - mes "This is Nydhogg, the Guardian of Yggdrasil,"; - mes "whom I was looking for."; - mes "Now she won't wander around crazy any more."; - next; + mes("[Loki]"); + mes("You might be able to change your appearance, but you cannot change your unique, innate light."); + mes("A scent strong enough to burn your nose."); + next(); + mes("[Loki]"); + mes("This is Nydhogg, the Guardian of Yggdrasil,"); + mes("whom I was looking for."); + mes("Now she won't wander around crazy any more."); + next(); select("What are you going to do now?"); - mes "[Loki]"; - mes "I'll wait for her to wake up and get out of this forest."; - mes "I can manage it on my own."; - mes "I'll see you in Mora."; + mes("[Loki]"); + mes("I'll wait for her to wake up and get out of this forest."); + mes("I can manage it on my own."); + mes("I'll see you in Mora."); ep14_1_mistwoods = 3; - erasequest 7212; - setquest 7213; - close; + erasequest(7212); + setquest(7213); + close(); } else if (ep14_1_mistwoods == 3) { - mes "[Loki]"; - mes "I don't want to go with you."; - mes "I can manage her on my own."; - mes "If you have something to say, say it after we get out of the forest."; - close; + mes("[Loki]"); + mes("I don't want to go with you."); + mes("I can manage her on my own."); + mes("If you have something to say, say it after we get out of the forest."); + close(); } else { - mes "[Loki]"; - mes "I don't want to go with you."; - mes "If you have something to say, say it after we get out of the forest."; - close; + mes("[Loki]"); + mes("I don't want to go with you."); + mes("If you have something to say, say it after we get out of the forest."); + close(); } end; OnInstanceInit: OnDisable: - disablenpc instance_npcname("Loki#mist"); + disablenpc(instance_npcname("Loki#mist")); end; OnEnable: - enablenpc instance_npcname("Loki#mist"); + enablenpc(instance_npcname("Loki#mist")); end; } 1@mist,181,303,3 script Collapsed Girl#mist 4_F_NYDHOG2,{ - mes "You see a girl with mysterious hair collapsed on the ground."; - mes "As you approach her, you smell the scent of flowers so strong that it makes you dizzy."; - close; + mes("You see a girl with mysterious hair collapsed on the ground."); + mes("As you approach her, you smell the scent of flowers so strong that it makes you dizzy."); + close(); OnInstanceInit: OnDisable: - disablenpc instance_npcname("Collapsed Girl#mist"); + disablenpc(instance_npcname("Collapsed Girl#mist")); end; OnEnable: - enablenpc instance_npcname("Collapsed Girl#mist"); + enablenpc(instance_npcname("Collapsed Girl#mist")); end; } mora,46,152,5 script Flower Smelling Lady 4_F_NYDHOG,{ if (ep14_1_mistwoods < 3) { - mes "[Flower Smell Lady]"; - mes "I need rest."; - mes "I'm too tired to talk to you."; - mes "I'm sorry."; - close; + mes("[Flower Smell Lady]"); + mes("I need rest."); + mes("I'm too tired to talk to you."); + mes("I'm sorry."); + close(); } else if (ep14_1_mistwoods == 3) { - mes "[Nydhogg the Guardian]"; - mes "I've been waiting for you."; - mes "I'm still confused, but I know what I did wrong."; - next; - mes "[Nydhogg the Guardian]"; - mes "If it weren't for you, I would still be wandering in the abyssal darkness."; - mes "I thank you, from the bottom of my heart."; - next; - mes "[Nydhogg the Guardian]"; - mes "I'm ashamed of myself, falling for the sweet but empty words that came to me in my loneliness."; - mes "...."; - next; - mes "[Nydhogg the Guardian]"; - mes "I don't deserve to be a guardian any more."; - mes "A dragon gone crazy is not a guardian any more."; - next; - mes "[Loki]"; - mes "Yggdrasil doesn't think so."; - mes "Nidi, don't forget your duties."; - next; - mes "[Nydhogg the Guardian]"; - mes "Are you...?"; - mes "I see..."; - mes "I thought I was forsaken..."; - next; - mes "The Guardian slowly looked away as if deep in thought."; + mes("[Nydhogg the Guardian]"); + mes("I've been waiting for you."); + mes("I'm still confused, but I know what I did wrong."); + next(); + mes("[Nydhogg the Guardian]"); + mes("If it weren't for you, I would still be wandering in the abyssal darkness."); + mes("I thank you, from the bottom of my heart."); + next(); + mes("[Nydhogg the Guardian]"); + mes("I'm ashamed of myself, falling for the sweet but empty words that came to me in my loneliness."); + mes("...."); + next(); + mes("[Nydhogg the Guardian]"); + mes("I don't deserve to be a guardian any more."); + mes("A dragon gone crazy is not a guardian any more."); + next(); + mes("[Loki]"); + mes("Yggdrasil doesn't think so."); + mes("Nidi, don't forget your duties."); + next(); + mes("[Nydhogg the Guardian]"); + mes("Are you...?"); + mes("I see..."); + mes("I thought I was forsaken..."); + next(); + mes("The Guardian slowly looked away as if deep in thought."); ep14_1_mistwoods = 4; - close2; + close2(); } else if (ep14_1_mistwoods == 4) { - mes "- He seems to be deep in thought. -"; - close; + mes("- He seems to be deep in thought. -"); + close(); } else { - mes "[Nydhogg the Guardian]"; - mes "I haven't gotten all of my powers back."; - mes "I'm sorry I can't protect you."; - next; - mes "[Nydhogg the Guardian]"; - mes "Loki said..."; - mes "that I won't cry from loneliness again,"; - mes "that I will always have new friends like you..."; - next; - mes "[Nydhogg the Guardian]"; - mes "...I've lost everything, but I'm happy now."; - close; + mes("[Nydhogg the Guardian]"); + mes("I haven't gotten all of my powers back."); + mes("I'm sorry I can't protect you."); + next(); + mes("[Nydhogg the Guardian]"); + mes("Loki said..."); + mes("that I won't cry from loneliness again,"); + mes("that I will always have new friends like you..."); + next(); + mes("[Nydhogg the Guardian]"); + mes("...I've lost everything, but I'm happy now."); + close(); } } mora,48,152,3 script Sharp Eyed Man 4_M_ROKI2,{ - if (checkweight(Knife,1) == 0 || MaxWeight - Weight < 1000) { - mes "- You have too many items to do this quest. -"; - close; + if (checkweight(Knife, 1) == 0 || MaxWeight - Weight < 1000) { + mes("- You have too many items to do this quest. -"); + close(); } if (ep14_1_mistwoods < 3) { - mes "He won't look at you. It's like he's not interested at all."; - close; + mes("He won't look at you. It's like he's not interested at all."); + close(); } else if (ep14_1_mistwoods == 3) { - mes "[Loki]"; - mes "So you've passed through the forest."; - mes "It seems Niddy has something to say to you."; - close; + mes("[Loki]"); + mes("So you've passed through the forest."); + mes("It seems Niddy has something to say to you."); + close(); } else if (ep14_1_mistwoods == 4) { - mes "[Loki]"; - mes "Nydhogg was one of the guardians of the World Tree."; - mes "But he abandoned his duties as a guardian when he gave in to Morroc's temptation."; - next; - mes "[Loki]"; - mes "Some fools performed a ritual to break the seal that held Morroc."; - mes "But the ritual didn't work right. The servant of Morroc failed to break the seal."; - next; - mes "[Loki]"; - mes "But the seal is so weak that it can break open any time."; - mes "It's Yggdrasil the World Tree's will that has kept the seal from breaking."; - next; - mes "[Nydhogg the Guardian]"; - mes "That's right. The power of the World Tree is linked to the whole world."; - mes "When the bond between the guardians and Yggdrasil broke, Yggdrasil became unstable."; - next; - mes "[Nydhogg the Guardian]"; - mes "That's why all those disasters happened to Yggdrasil."; - mes "As the World Tree became unstable, the influence it had on the seal grew weak."; - next; - mes "[Loki]"; - mes "And Morroc broke himself free from the seal."; - mes "Although it seems like he used most of his powers just to break the seal..."; - next; - mes "[Nydhogg the Guardian]"; - mes "It's all my fault."; - mes "I couldn't break free from Morroc's temptation."; - mes "For too... too long..."; - next; - mes "[Nydhogg the Guardian]"; - mes "...I wanted to be relieved of my thousands of years of loneliness."; - mes "I wasn't in my right mind then."; - mes "It was none other than I that broke my bond with Yggdrasil."; - next; - mes "[Nydhogg the Guardian]"; - mes "I lost control of myself, and did what I shouldn't have done."; - mes "The other side of me became a shadow and a reckless tyrant."; - next; - mes "[Nydhogg the Guardian]"; - mes "Facing the world, I realized..."; - mes "I felt too great a sense of loss... it was much more painful than the loneliness I had endured for thousands of years."; - next; - mes "[Nydhogg the Guardian]"; - mes "That's how I was left alone."; - mes "I felt too great a sense of loss... it was much more painful than the loneliness I had endured for thousands of years."; - next; - mes "[Nydhogg the Guardian]"; - mes "So I became a sinner, forgotten to the world."; - next; - mes "[Loki]"; - mes "It's not too late."; - mes "You're still a guardian."; - mes "You still have things to do."; - next; - mes "[Nydhogg the Guardian]"; - mes "...Oh, yes. It's late, but I have to fulfill my duties as a guardian."; - mes "Now I know. I'll destroy Morroc with my own hands."; - mes "I will fulfill my duties as a guardian."; - next; + mes("[Loki]"); + mes("Nydhogg was one of the guardians of the World Tree."); + mes("But he abandoned his duties as a guardian when he gave in to Morroc's temptation."); + next(); + mes("[Loki]"); + mes("Some fools performed a ritual to break the seal that held Morroc."); + mes("But the ritual didn't work right. The servant of Morroc failed to break the seal."); + next(); + mes("[Loki]"); + mes("But the seal is so weak that it can break open any time."); + mes("It's Yggdrasil the World Tree's will that has kept the seal from breaking."); + next(); + mes("[Nydhogg the Guardian]"); + mes("That's right. The power of the World Tree is linked to the whole world."); + mes("When the bond between the guardians and Yggdrasil broke, Yggdrasil became unstable."); + next(); + mes("[Nydhogg the Guardian]"); + mes("That's why all those disasters happened to Yggdrasil."); + mes("As the World Tree became unstable, the influence it had on the seal grew weak."); + next(); + mes("[Loki]"); + mes("And Morroc broke himself free from the seal."); + mes("Although it seems like he used most of his powers just to break the seal..."); + next(); + mes("[Nydhogg the Guardian]"); + mes("It's all my fault."); + mes("I couldn't break free from Morroc's temptation."); + mes("For too... too long..."); + next(); + mes("[Nydhogg the Guardian]"); + mes("...I wanted to be relieved of my thousands of years of loneliness."); + mes("I wasn't in my right mind then."); + mes("It was none other than I that broke my bond with Yggdrasil."); + next(); + mes("[Nydhogg the Guardian]"); + mes("I lost control of myself, and did what I shouldn't have done."); + mes("The other side of me became a shadow and a reckless tyrant."); + next(); + mes("[Nydhogg the Guardian]"); + mes("Facing the world, I realized..."); + mes("I felt too great a sense of loss... it was much more painful than the loneliness I had endured for thousands of years."); + next(); + mes("[Nydhogg the Guardian]"); + mes("That's how I was left alone."); + mes("I felt too great a sense of loss... it was much more painful than the loneliness I had endured for thousands of years."); + next(); + mes("[Nydhogg the Guardian]"); + mes("So I became a sinner, forgotten to the world."); + next(); + mes("[Loki]"); + mes("It's not too late."); + mes("You're still a guardian."); + mes("You still have things to do."); + next(); + mes("[Nydhogg the Guardian]"); + mes("...Oh, yes. It's late, but I have to fulfill my duties as a guardian."); + mes("Now I know. I'll destroy Morroc with my own hands."); + mes("I will fulfill my duties as a guardian."); + next(); switch(select("You're not alone.", "Those are very important duties.")) { case 1: - mes "[Nydhogg the Guardian]"; - mes "You're right."; - mes "It may be why I haven't been forsaken - to realize that I'm not alone."; - mes "You are a kind soul."; - next; + mes("[Nydhogg the Guardian]"); + mes("You're right."); + mes("It may be why I haven't been forsaken - to realize that I'm not alone."); + mes("You are a kind soul."); + next(); break; case 2: - mes "[Nydhogg the Guardian]"; - mes "But this is my atonement."; - mes "I'm happy, though."; - mes "I don't have to fight the loneliness any more."; - next; + mes("[Nydhogg the Guardian]"); + mes("But this is my atonement."); + mes("I'm happy, though."); + mes("I don't have to fight the loneliness any more."); + next(); break; } - mes "[Nydhogg the Guardian]"; - mes strcharinfo(PC_NAME)+"..."; - mes "Thanks for listening to my long story."; - next; - mes "[Nydhogg the Guardian]"; - mes "It's what I always have with me."; - mes "I'm sure it will protect you someday."; - next; - mes "[Loki]"; - mes "(Removes his scarf from around his neck and hands it to you.)"; - next; - mes "[Nydhogg the Guardian]"; - mes "May the blessing of Mother Yggdrasil be with you..."; + mes("[Nydhogg the Guardian]"); + mesf("%s...", strcharinfo(PC_NAME)); + mes("Thanks for listening to my long story."); + next(); + mes("[Nydhogg the Guardian]"); + mes("It's what I always have with me."); + mes("I'm sure it will protect you someday."); + next(); + mes("[Loki]"); + mes("(Removes his scarf from around his neck and hands it to you.)"); + next(); + mes("[Nydhogg the Guardian]"); + mes("May the blessing of Mother Yggdrasil be with you..."); ep14_1_mistwoods = 10; - completequest 7213; - getitem Muffler_Of_Roki,1; - getitem Pendant_Of_Guardian,1; - getexp 400000,400000; - close; + completequest(7213); + getitem(Muffler_Of_Roki, 1); + getitem(Pendant_Of_Guardian, 1); + getexp(400000, 400000); + close(); } else { - mes "[Loki]"; - mes "I'll be staying here for a while."; - mes "We may meet again."; - next; - mes "[Loki]"; - mes "The day when Morroc reveals his despicable nature..."; - mes "I will be waiting for him."; - close; + mes("[Loki]"); + mes("I'll be staying here for a while."); + mes("We may meet again."); + next(); + mes("[Loki]"); + mes("The day when Morroc reveals his despicable nature..."); + mes("I will be waiting for him."); + close(); } } @@ -937,98 +992,98 @@ mora,48,152,3 script Sharp Eyed Man 4_M_ROKI2,{ 1@mist,1,1,0 script #Mist Mobs Respawn1 CLEAR_NPC,{ end; OnInstanceInit: - monster instance_mapname("1@mist"),0,0,"Miming",2137,15,instance_npcname("#Mist Mobs Respawn1")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 0, 0, _("Miming"), MIMING, 15, instance_npcname("#Mist Mobs Respawn1")+"::OnMyMobDead"); end; OnMyMobDead: .@map$ = instance_mapname("1@mist"); - .@num_mobs = 15 - mobcount(.@map$,instance_npcname("#Mist Mobs Respawn1")+"::OnMyMobDead"); + .@num_mobs = 15 - mobcount(.@map$, instance_npcname("#Mist Mobs Respawn1")+"::OnMyMobDead"); if (.@num_mobs > 0) - monster .@map$,0,0,"Miming",2137,.@num_mobs,instance_npcname("#Mist Mobs Respawn1")+"::OnMyMobDead"; + monster(.@map$, 0, 0, _("Miming"), MIMING, .@num_mobs, instance_npcname("#Mist Mobs Respawn1")+"::OnMyMobDead"); end; } 1@mist,1,2,0 script #Mist Mobs Respawn2 CLEAR_NPC,{ end; OnInstanceInit: - monster instance_mapname("1@mist"),0,0,"Pom Spider",2132,35,instance_npcname("#Mist Mobs Respawn2")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 0, 0, _("Pom Spider"), POM_SPIDER, 35, instance_npcname("#Mist Mobs Respawn2")+"::OnMyMobDead"); end; OnMyMobDead: .@map$ = instance_mapname("1@mist"); - .@num_mobs = 35 - mobcount(.@map$,instance_npcname("#Mist Mobs Respawn2")+"::OnMyMobDead"); + .@num_mobs = 35 - mobcount(.@map$, instance_npcname("#Mist Mobs Respawn2")+"::OnMyMobDead"); if (.@num_mobs > 0) - monster .@map$,0,0,"Pom Spider",2132,.@num_mobs,instance_npcname("#Mist Mobs Respawn2")+"::OnMyMobDead"; + monster(.@map$, 0, 0, _("Pom Spider"), POM_SPIDER, .@num_mobs, instance_npcname("#Mist Mobs Respawn2")+"::OnMyMobDead"); end; } 1@mist,1,3,0 script #Mist Mobs Respawn3 CLEAR_NPC,{ end; OnInstanceInit: - monster instance_mapname("1@mist"),0,0,"Angra Mantis",2133,35,instance_npcname("#Mist Mobs Respawn3")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 0, 0, _("Angra Mantis"), ANGRA_MANTIS, 35, instance_npcname("#Mist Mobs Respawn3")+"::OnMyMobDead"); end; OnMyMobDead: .@map$ = instance_mapname("1@mist"); - .@num_mobs = 35 - mobcount(.@map$,instance_npcname("#Mist Mobs Respawn3")+"::OnMyMobDead"); + .@num_mobs = 35 - mobcount(.@map$, instance_npcname("#Mist Mobs Respawn3")+"::OnMyMobDead"); if (.@num_mobs > 0) - monster .@map$,0,0,"Angra Mantis",2133,.@num_mobs,instance_npcname("#Mist Mobs Respawn3")+"::OnMyMobDead"; + monster(.@map$, 0, 0, _("Angra Mantis"), ANGRA_MANTIS, .@num_mobs, instance_npcname("#Mist Mobs Respawn3")+"::OnMyMobDead"); end; } 1@mist,1,4,0 script #Mist Mobs Respawn4 CLEAR_NPC,{ end; OnInstanceInit: - monster instance_mapname("1@mist"),0,0,"Parus",2134,35,instance_npcname("#Mist Mobs Respawn4")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 0, 0, _("Parus"), PARUS, 35, instance_npcname("#Mist Mobs Respawn4")+"::OnMyMobDead"); end; OnMyMobDead: .@map$ = instance_mapname("1@mist"); - .@num_mobs = 35 - mobcount(.@map$,instance_npcname("#Mist Mobs Respawn4")+"::OnMyMobDead"); + .@num_mobs = 35 - mobcount(.@map$, instance_npcname("#Mist Mobs Respawn4")+"::OnMyMobDead"); if (.@num_mobs > 0) - monster .@map$,0,0,"Parus",2134,.@num_mobs,instance_npcname("#Mist Mobs Respawn4")+"::OnMyMobDead"; + monster(.@map$, 0, 0, _("Parus"), PARUS, .@num_mobs, instance_npcname("#Mist Mobs Respawn4")+"::OnMyMobDead"); end; } 1@mist,1,5,0 script #Mist Mobs Respawn5 CLEAR_NPC,{ end; OnInstanceInit: - monster instance_mapname("1@mist"),0,0,"Little Fatum",2136,15,instance_npcname("#Mist Mobs Respawn5")+"::OnMyMobDead"; + monster(instance_mapname("1@mist"), 0, 0, _("Little Fatum"), LITTLE_FATUM, 15, instance_npcname("#Mist Mobs Respawn5")+"::OnMyMobDead"); end; OnMyMobDead: .@map$ = instance_mapname("1@mist"); - .@num_mobs = 15 - mobcount(.@map$,instance_npcname("#Mist Mobs Respawn5")+"::OnMyMobDead"); + .@num_mobs = 15 - mobcount(.@map$, instance_npcname("#Mist Mobs Respawn5")+"::OnMyMobDead"); if (.@num_mobs > 0) - monster .@map$,0,0,"Little Fatum",2136,.@num_mobs,instance_npcname("#Mist Mobs Respawn5")+"::OnMyMobDead"; + monster(.@map$, 0, 0, _("Little Fatum"), LITTLE_FATUM, .@num_mobs, instance_npcname("#Mist Mobs Respawn5")+"::OnMyMobDead"); end; } 1@mist,1,6,0 script #Fragments of Memory CLEAR_NPC,{ end; OnInstanceInit: - disablenpc instance_npcname("#Fragments of Memory"); - monster instance_mapname("1@mist"),0,0,"Guardian's Fragments of Memory",2138,15; + disablenpc(instance_npcname("#Fragments of Memory")); + monster(instance_mapname("1@mist"), 0, 0, _("Guardian's Fragments of Memory"), NYDHOG_MEMORY1_1, 15); end; } //== Warp Portals ========================================== bif_fild01,38,374,0 script Mysterious Flower#ep14_1 CLEAR_NPC,{ - mes "It's a giant flower with mysterious energy."; + mes("It's a giant flower with mysterious energy."); if (countitem(Mysterious_Seed)) { - mes "It's reacting to the Mysterious Flower Seeds you have with you."; - next; + mes("It's reacting to the Mysterious Flower Seeds you have with you."); + next(); switch(select("Observe the reaction.", "Stop the reaction.")) { case 1: - mes "The flower started to shake violently"; - mes "and swing forward as if trying to send the seeds as far away as possible!!!"; - close2; - delitem Mysterious_Seed,1; - warp "bif_fild02",160,230; + mes("The flower started to shake violently"); + mes("and swing forward as if trying to send the seeds as far away as possible!!!"); + close2(); + delitem(Mysterious_Seed, 1); + warp("bif_fild02", 160, 230); end; case 2: - mes "As you hold onto the Mysterious Flower Seeds tightly,"; - mes "the flower shook violently and then became calm again."; - close; + mes("As you hold onto the Mysterious Flower Seeds tightly,"); + mes("the flower shook violently and then became calm again."); + close(); } } - mes "It looks like it has some special use, but you're not sure what."; - close; + mes("It looks like it has some special use, but you're not sure what."); + close(); } 1@mist,104,23,0 warp #to_bif01 1,1,bif_fild01,160,352 @@ -1036,9 +1091,9 @@ bif_fild01,38,374,0 script Mysterious Flower#ep14_1 CLEAR_NPC,{ 1@mist,109,70,0 script a1_a2 WARPNPC,1,1,{ end; OnTouch: - if (!questprogress(7211,PLAYTIME)) - setquest 7211; - warp instance_mapname("1@mist"),116,40; + if (!questprogress(7211, PLAYTIME)) + setquest(7211); + warp(instance_mapname("1@mist"), 116, 40); end; } @@ -1140,21 +1195,21 @@ OnTouch: 1@mist,1,1,0 script #mist_warp_init CLEAR_NPC,{ end; OnInstanceInit: - disablenpc instance_npcname("a25_a18-1"); - disablenpc instance_npcname("a27-2_af1-2"); - disablenpc instance_npcname("a15-2_a4-1"); - disablenpc instance_npcname("a4-2_a11"); - disablenpc instance_npcname("b4-2_b2"); - disablenpc instance_npcname("b7_bf1-2"); - disablenpc instance_npcname("b31_b16"); - disablenpc instance_npcname("b27-3_bN-1"); - disablenpc instance_npcname("b6-1_b33"); - disablenpc instance_npcname("b5_b14"); - disablenpc instance_npcname("c1_c13-1"); - disablenpc instance_npcname("c13-3_c4"); - disablenpc instance_npcname("c19_c4"); - disablenpc instance_npcname("#to_bif02"); - disablenpc instance_npcname("#mist_warp_init"); + disablenpc(instance_npcname("a25_a18-1")); + disablenpc(instance_npcname("a27-2_af1-2")); + disablenpc(instance_npcname("a15-2_a4-1")); + disablenpc(instance_npcname("a4-2_a11")); + disablenpc(instance_npcname("b4-2_b2")); + disablenpc(instance_npcname("b7_bf1-2")); + disablenpc(instance_npcname("b31_b16")); + disablenpc(instance_npcname("b27-3_bN-1")); + disablenpc(instance_npcname("b6-1_b33")); + disablenpc(instance_npcname("b5_b14")); + disablenpc(instance_npcname("c1_c13-1")); + disablenpc(instance_npcname("c13-3_c4")); + disablenpc(instance_npcname("c19_c4")); + disablenpc(instance_npcname("#to_bif02")); + disablenpc(instance_npcname("#mist_warp_init")); end; } 1@mist,247,123,0 warp a25_a18-1 1,1,1@mist,164,66 //Tom diff --git a/npc/re/instances/MalangdoCulvert.txt b/npc/re/instances/MalangdoCulvert.txt index e954c9b15..2e51f0fd5 100644 --- a/npc/re/instances/MalangdoCulvert.txt +++ b/npc/re/instances/MalangdoCulvert.txt @@ -37,245 +37,261 @@ //== Quest NPCs ============================================ mal_in01,172,28,2 script Albo#mal 4_CAT_SAILOR5,{ - if (checkweight(Knife,1) == 0) { - mes "You have too many kinds of objects. Try to continue after reducing those objects."; - close; + if (checkweight(Knife, 1) == 0) { + mes("You have too many kinds of objects. Try to continue after reducing those objects."); + close(); } if (MaxWeight - Weight < 1000) { - mes "You have too many heavy objects. Try to continue after reducing your weight."; - close; + mes("You have too many heavy objects. Try to continue after reducing your weight."); + close(); } if (BaseLevel < 90) { - mes "[Albo]"; - mes "Who are you?"; - mes "We don't need a weaking!!"; - close; + mes("[Albo]"); + mes("Who are you?"); + mes("We don't need a weaking!!"); + close(); } - setarray .@quests[0],12271,12272,12273,12274; - setarray .@names$[0], - "General Culvert Daily Service","^990000Hard Culvert Daily Service^000000", - "General Culvert Weekly Service","^990000Hard Culvert Weekly Service^000000"; - .@menu$ = "Why are doing this job?:"; + setarray(.@quests[0], 12271, 12272, 12273, 12274); + setarray(.@names$[0], + _("General Culvert Daily Service"), _("^990000Hard Culvert Daily Service^000000"), + _("General Culvert Weekly Service"), _("^990000Hard Culvert Weekly Service^000000")); + .@menu$ = _("Why are doing this job?:"); for(.@i = 0; .@i<4; ++.@i) { - if (questprogress(.@quests[.@i],PLAYTIME)) { + if (questprogress(.@quests[.@i], PLAYTIME)) { .@status[.@i] = 2; - .@menu$ += "^aaaaaa- There is no new task -^000000:"; + .@menu$ += _("^aaaaaa- There is no new task -^000000:"); } else if (.@i%2 && BaseLevel < 140) { .@status[.@i] = 0; - .@menu$ += "^aaaaaaCan't take this job because level is too low^000000:"; + .@menu$ += _("^aaaaaaCan't take this job because level is too low^000000:"); } else { .@status[.@i] = 1; .@menu$ += .@names$[.@i]+":"; } } - mes "[Albo]"; - mes "We crossed the sea!"; - mes "We are great heroes of Culvert! We do not forgive the seafood that aims at Culvert!"; - next; - .@i = select(.@menu$)-1; + mes("[Albo]"); + mes("We crossed the sea!"); + mes("We are great heroes of Culvert! We do not forgive the seafood that aims at Culvert!"); + next(); + .@i = select(.@menu$) - 1; if (.@i == 0) { - mes "[Albo]"; - mes "We used to be the henchmen of Mr. Missing! We almost became guards of such a historic site."; - next; - mes "[Albo]"; - mes "However, when sea water flooded all precious the resources, my dream... all my dreams melted away..."; - next; - mes "[Albo]"; - mes "We do not forgive the seafood that invaded our territory. I'll eat them with spicy paste!!!"; - next; - mes "^0000ffAlbo's voice shakes with anger. He smacked his lips when he mentioned spicy paste.^000000"; - close; + mes("[Albo]"); + mes("We used to be the henchmen of Mr. Missing! We almost became guards of such a historic site."); + next(); + mes("[Albo]"); + mes("However, when sea water flooded all precious the resources, my dream... all my dreams melted away..."); + next(); + mes("[Albo]"); + mes("We do not forgive the seafood that invaded our territory. I'll eat them with spicy paste!!!"); + next(); + mes("^0000ffAlbo's voice shakes with anger. He smacked his lips when he mentioned spicy paste.^000000"); + close(); } - switch(.@status[.@i-1]) { + switch (.@status[.@i - 1]) { case 0: - mes "[Albo]"; - mes "That task is really hard for you, so I can't tell you about it. Why don't you find another one?"; - close; + mes("[Albo]"); + mes("That task is really hard for you, so I can't tell you about it. Why don't you find another one?"); + close(); case 1: break; case 2: - mes "[Albo]"; - mes "I'm sorry. There is no new task yet! If I find any work, I'll tell you so!"; - close; + mes("[Albo]"); + mes("I'm sorry. There is no new task yet! If I find any work, I'll tell you so!"); + close(); } - switch(.@i) { + switch (.@i) { case 1: // General Culvert Daily Service - switch(rand(1,6)) { - case 1: callsub L_GiveQuest,.@i,12255,12271,"Deep Sea Crab"; - case 2: callsub L_GiveQuest,.@i,12256,12271,"Deep Sea Marse"; - case 3: callsub L_GiveQuest,.@i,12257,12271,"Deep Sea Vadon"; - case 4: callsub L_GiveQuest,.@i,12258,12271,"Deep Sea Shellfish"; - case 5: callsub L_GiveQuest,.@i,12259,12271,"Deep Sea Kukre"; - case 6: callsub L_GiveQuest,.@i,12260,12271,"Deep Sea Cornutus"; + switch (rand(1, 6)) { + case 1: + callsub(L_GiveQuest, .@i, 12255, 12271, _("Deep Sea Crab")); + case 2: + callsub(L_GiveQuest, .@i, 12256, 12271, _("Deep Sea Marse")); + case 3: + callsub(L_GiveQuest, .@i, 12257, 12271, _("Deep Sea Vadon")); + case 4: + callsub(L_GiveQuest, .@i, 12258, 12271, _("Deep Sea Shellfish")); + case 5: + callsub(L_GiveQuest, .@i, 12259, 12271, _("Deep Sea Kukre")); + case 6: + callsub(L_GiveQuest, .@i, 12260, 12271, _("Deep Sea Cornutus")); } case 2: // Hard Culvert Daily Service - switch(rand(1,6)) { - case 1: callsub L_GiveQuest,.@i,12261,12272,"Deep Sea Marc"; - case 2: callsub L_GiveQuest,.@i,12262,12272,"Deep Sea Sword Fish"; - case 3: callsub L_GiveQuest,.@i,12263,12272,"Deep Sea Strouf"; - case 4: callsub L_GiveQuest,.@i,12264,12272,"Deep Sea Anolian"; - case 5: callsub L_GiveQuest,.@i,12265,12272,"Deep Sea Obeanue"; - case 6: callsub L_GiveQuest,.@i,12266,12272,"Deep Sea Kapha"; + switch (rand(1, 6)) { + case 1: + callsub(L_GiveQuest, .@i, 12261, 12272, _("Deep Sea Marc")); + case 2: + callsub(L_GiveQuest, .@i, 12262, 12272, _("Deep Sea Sword Fish")); + case 3: + callsub(L_GiveQuest, .@i, 12263, 12272, _("Deep Sea Strouf")); + case 4: + callsub(L_GiveQuest, .@i, 12264, 12272, _("Deep Sea Anolian")); + case 5: + callsub(L_GiveQuest, .@i, 12265, 12272, _("Deep Sea Obeanue")); + case 6: + callsub(L_GiveQuest, .@i, 12266, 12272, _("Deep Sea Kapha")); } case 3: // General Culvert Weekly Service - switch(rand(1,2)) { - case 1: callsub L_GiveQuest,.@i,12267,12273,"Weird Coelacanth"; - case 2: callsub L_GiveQuest,.@i,12268,12273,"Gloomy Coelacanth"; + switch (rand(1, 2)) { + case 1: + callsub(L_GiveQuest, .@i, 12267, 12273, _("Weird Coelacanth")); + case 2: + callsub(L_GiveQuest, .@i, 12268, 12273, _("Gloomy Coelacanth")); } case 4: // Hard Culvert Weekly Service - switch(rand(1,2)) { - case 1: callsub L_GiveQuest,.@i,12269,12274,"Violent Coelacanth"; - case 2: callsub L_GiveQuest,.@i,12270,12274,"Mutant Coelacanth"; + switch (rand(1, 2)) { + case 1: + callsub(L_GiveQuest, .@i, 12269, 12274, _("Violent Coelacanth")); + case 2: + callsub(L_GiveQuest, .@i, 12270, 12274, _("Mutant Coelacanth")); } default: - mes "[Albo]"; - mes "Uh!? Where is the task? Let me find that quickly. You must speak with Madeca!"; - close; + mes("[Albo]"); + mes("Uh!? Where is the task? Let me find that quickly. You must speak with Madeca!"); + close(); } end; -// callsub L_GiveQuest,.@i,<quest 1>,<quest 2>,<monster>; +// callsub(L_GiveQuest, .@i, <quest 1>, <quest 2>, <monster>); L_GiveQuest: - setquest getarg(1); - setquest getarg(2); - mes "[Albo]"; - mes "Today, the heroes of Culvert!"; - mes "We raise our voices and set a date for the extermination of ^0000ff"+getarg(3)+"^000000!"; - next; - mes "[Albo]"; - switch(getarg(0)) { + setquest(getarg(1)); + setquest(getarg(2)); + mes("[Albo]"); + mes("Today, the heroes of Culvert!"); + mesf("We raise our voices and set a date for the extermination of ^0000ff%s^000000!", getarg(3)); + next(); + mes("[Albo]"); + switch (getarg(0)) { case 1: case 2: - mes "Come on, heroes! Don't be afraid of them! Just go on, since it's a one-day mission!"; + mes("Come on, heroes! Don't be afraid of them! Just go on, since it's a one-day mission!"); break; case 3: - mes "I'll give you one week to finish this job! Terminate all of them in Culvert Dungeon, Normal Mode!"; + mes("I'll give you one week to finish this job! Terminate all of them in Culvert Dungeon, Normal Mode!"); break; case 4: - mes "I'll give you one week to finish this job! Terminate all of them in Culvert Dungeon, Hard Mode!"; + mes("I'll give you one week to finish this job! Terminate all of them in Culvert Dungeon, Hard Mode!"); break; } - next; - mes "You received a request for the Extermination of ^005500"+getarg(3)+"^000000. If you need more details, please check the quest window."; - close; + next(); + mesf("You received a request for the Extermination of ^005500%s^000000. If you need more details, please check the quest window.", getarg(3)); + close(); } mal_in01,172,26,2 script Madeca#mal 4_CAT_SAILOR1,{ - if (checkweight(Knife,1) == 0) { - mes "You have too many kinds of objects. Try to continue after reducing those objects."; - close; + if (checkweight(Knife, 1) == 0) { + mes("You have too many kinds of objects. Try to continue after reducing those objects."); + close(); } if (MaxWeight - Weight < 1000) { - mes "You have too many heavy objects. Try to continue after reducing your weight."; - close; + mes("You have too many heavy objects. Try to continue after reducing your weight."); + close(); } if (BaseLevel < 90) { - mes "[Madeca]"; - mes "Karrrrrrr!!"; - mes "Let's have some bad seafood that can be boiled or grilled!"; - next; - mes "[Madeca]"; - mes "Who are you? You are such a totterer. Even seaweed could kill you!"; - close; + mes("[Madeca]"); + mes("Karrrrrrr!!"); + mes("Let's have some bad seafood that can be boiled or grilled!"); + next(); + mes("[Madeca]"); + mes("Who are you? You are such a totterer. Even seaweed could kill you!"); + close(); } - mes "[Madeca]"; - mes "Oh?"; - mes "You're the one who took care of my big brother Albo's request. It was a hard job!"; - next; - .@i = select("What are you doing here?", "General Culvert Daily Service Compensation", "Hard Culvert Daily Service Compensation", "General Culvert Weekly Service Compensation", "Hard Culvert Weekly Service Compensation")-1; + mes("[Madeca]"); + mes("Oh?"); + mes("You're the one who took care of my big brother Albo's request. It was a hard job!"); + next(); + .@i = select("What are you doing here?", "General Culvert Daily Service Compensation", "Hard Culvert Daily Service Compensation", "General Culvert Weekly Service Compensation", "Hard Culvert Weekly Service Compensation") - 1; if (.@i == 0) { - mes "[Madeca]"; - mes "I'm here to help my big brother Albo!"; - next; - mes "[Madeca]"; - mes "We provide precious materials to humans who make sludge out of the bad seafood in the Culverts!"; - next; - mes "[Madeca]"; - mes "We provide A~B Grade Coins as compensation for daily service, and the precious Sea God's Wrath as compensation for weekly service."; - next; - mes "[Madeca]"; - mes "If you take care of big brother Albo's request, I will see you very often. So, let's stay close!"; - close; + mes("[Madeca]"); + mes("I'm here to help my big brother Albo!"); + next(); + mes("[Madeca]"); + mes("We provide precious materials to humans who make sludge out of the bad seafood in the Culverts!"); + next(); + mes("[Madeca]"); + mes("We provide A~B Grade Coins as compensation for daily service, and the precious Sea God's Wrath as compensation for weekly service."); + next(); + mes("[Madeca]"); + mes("If you take care of big brother Albo's request, I will see you very often. So, let's stay close!"); + close(); } - mes "[Madeca]"; - mes "I can't give you compensation for an expired request, so let me check if any of yours have expired."; - next; + mes("[Madeca]"); + mes("I can't give you compensation for an expired request, so let me check if any of yours have expired."); + next(); specialeffect(EF_SPHERE, AREA, playerattached()); - progressbar "0xFFFF00",3; + progressbar(sprintf("0x%x", C_YELLOW), 3); specialeffect(EF_STEAL, AREA, playerattached()); - switch(.@i) { + switch (.@i) { case 1: // General Culvert Daily Service - if (questprogress(12271,PLAYTIME) == 2) - callsub L_EraseQuest,12255,12256,12257,12258,12259,12260,12271; - else { + if (questprogress(12271, PLAYTIME) == 2) { + callsub(L_EraseQuest, 12255, 12256, 12257, 12258, 12259, 12260, 12271); + } else { // Reward: 2x B Grade Coin - callsub L_CheckQuest,12255,"Deep Sea Crab",6419,2; - callsub L_CheckQuest,12256,"Deep Sea Marse",6419,2; - callsub L_CheckQuest,12257,"Deep Sea Vadon",6419,2; - callsub L_CheckQuest,12258,"Deep Sea Shellfish",6419,2; - callsub L_CheckQuest,12259,"Deep Sea Kukre",6419,2; - callsub L_CheckQuest,12260,"Deep Sea Cornutus",6419,2; + callsub(L_CheckQuest, 12255, _("Deep Sea Crab"), Bgrade_Coin, 2); + callsub(L_CheckQuest, 12256, _("Deep Sea Marse"), Bgrade_Coin, 2); + callsub(L_CheckQuest, 12257, _("Deep Sea Vadon"), Bgrade_Coin, 2); + callsub(L_CheckQuest, 12258, _("Deep Sea Shellfish"), Bgrade_Coin, 2); + callsub(L_CheckQuest, 12259, _("Deep Sea Kukre"), Bgrade_Coin, 2); + callsub(L_CheckQuest, 12260, _("Deep Sea Cornutus"), Bgrade_Coin, 2); } break; case 2: // Hard Culvert Daily Service - if (questprogress(12272,PLAYTIME) == 2) - callsub L_EraseQuest,12261,12262,12263,12264,12265,12266,12272; - else { + if (questprogress(12272, PLAYTIME) == 2) { + callsub(L_EraseQuest, 12261, 12262, 12263, 12264, 12265, 12266, 12272); + } else { // Reward: 1x A Grade Coin - callsub L_CheckQuest,12261,"Deep Sea Marc",6418,1; - callsub L_CheckQuest,12262,"Deep Sea Sword Fish",6418,1; - callsub L_CheckQuest,12263,"Deep Sea Strouf",6418,1; - callsub L_CheckQuest,12264,"Deep Sea Anolian",6418,1; - callsub L_CheckQuest,12265,"Deep Sea Obeaune",6418,1; - callsub L_CheckQuest,12266,"Deep Sea Kapha",6418,1; + callsub(L_CheckQuest, 12261, _("Deep Sea Marc"), Agrade_Coin, 1); + callsub(L_CheckQuest, 12262, _("Deep Sea Sword Fish"), Agrade_Coin, 1); + callsub(L_CheckQuest, 12263, _("Deep Sea Strouf"), Agrade_Coin, 1); + callsub(L_CheckQuest, 12264, _("Deep Sea Anolian"), Agrade_Coin, 1); + callsub(L_CheckQuest, 12265, _("Deep Sea Obeaune"), Agrade_Coin, 1); + callsub(L_CheckQuest, 12266, _("Deep Sea Kapha"), Agrade_Coin, 1); } break; case 3: // General Culvert Weekly Service - if (questprogress(12273,PLAYTIME) == 2) - callsub L_EraseQuest,12267,12268,12273; - else { + if (questprogress(12273, PLAYTIME) == 2) { + callsub(L_EraseQuest, 12267, 12268, 12273); + } else { // Reward: 1x Sea God's Wrath - callsub L_CheckQuest,12267,"Weird Coelacanth",6423,1; - callsub L_CheckQuest,12268,"Gloomy Coelacanth",6423,1; + callsub(L_CheckQuest, 12267, _("Weird Coelacanth"), Anger_Seagod, 1); + callsub(L_CheckQuest, 12268, _("Gloomy Coelacanth"), Anger_Seagod, 1); } break; case 4: // Hard Culvert Weekly Service - if (questprogress(12274,PLAYTIME) == 2) - callsub L_EraseQuest,12269,12270,12274; - else { + if (questprogress(12274, PLAYTIME) == 2) { + callsub(L_EraseQuest, 12269, 12270, 12274); + } else { // Reward: 5x Sea God's Wrath - callsub L_CheckQuest,12269,"Violent Coelacanth",6423,5; - callsub L_CheckQuest,12270,"Mutant Coelacanth",6423,5; + callsub(L_CheckQuest, 12269, _("Violent Coelacanth"), Anger_Seagod, 5); + callsub(L_CheckQuest, 12270, _("Mutant Coelacanth"), Anger_Seagod, 5); } break; default: - mes "[Madeca]"; - mes "Something is wrong. Please check this again!"; - close; + mes("[Madeca]"); + mes("Something is wrong. Please check this again!"); + close(); } - mes "[Madeca]"; - mes "I don't see any completed mission!"; - close; + mes("[Madeca]"); + mes("I don't see any completed mission!"); + close(); L_EraseQuest: for(.@j = 0; .@j<getargcount(); ++.@j) { if (questprogress(getarg(.@j))) - erasequest getarg(.@j); + erasequest(getarg(.@j)); } - mes "[Madeca]"; - mes "Um, I'm sorry. You exceeded the time limit, so I can't give you any payment."; - close; + mes("[Madeca]"); + mes("Um, I'm sorry. You exceeded the time limit, so I can't give you any payment."); + close(); -// callsub L_CheckQuest,<quest ID>,<monster>,<reward item ID>,<reward item amount>; +// callsub(L_CheckQuest, <quest ID>, <monster>, <reward item ID>, <reward item amount>); L_CheckQuest: - if (questprogress(getarg(0),HUNTING) == 2) { - mes "[Madeca]"; - mes "You've punished ^0000ff"+getarg(1)+"^000000!"; - mes "Here's your pay!"; - erasequest getarg(0); + if (questprogress(getarg(0), HUNTING) == 2) { + mes("[Madeca]"); + mesf("You've punished ^0000ff%s^000000!", getarg(1)); + mes("Here's your pay!"); + erasequest(getarg(0)); specialeffect(EF_STEAL, AREA, playerattached()); - getitem getarg(2),getarg(3); - close; + getitem(getarg(2), getarg(3)); + close(); } return; } @@ -283,248 +299,249 @@ L_CheckQuest: //== Instance Creation ===================================== mal_in01,160,34,4 script Missing, the Cleaner 4_CAT_SAILOR2,{ if (BaseLevel < 90) { - mes "[Missing, the Cleaner]"; - mes "Are you talking to me?!"; - next; - mes "[Missing, the Cleaner]"; - mes "I'm not sure what made you come here but you can't enter!"; - mes "Tomas' orders..."; - next; - mes "^770099You must be Base level 90 to enter.^000000"; - close; + mes("[Missing, the Cleaner]"); + mes("Are you talking to me?!"); + next(); + mes("[Missing, the Cleaner]"); + mes("I'm not sure what made you come here but you can't enter!"); + mes("Tomas' orders..."); + next(); + mes("^770099You must be Base level 90 to enter.^000000"); + close(); } if (in_canal_n == 0) { - mes "[Missing, the Cleaner]"; - mes "(trembling)"; - next; - mes "^660066This cat looks like it's in bad shape. It is slightly trembling.^000000"; - next; - if(select("Pet the cat", "Are you ok?") == 1) { - mes "[Missing, the Cleaner]"; - mes "Are you talking to me?!"; - next; - mes "^660066A trembling cat is looking up at you.^000000"; - close; + mes("[Missing, the Cleaner]"); + mes("(trembling)"); + next(); + mes("^660066This cat looks like it's in bad shape. It is slightly trembling.^000000"); + next(); + if (select("Pet the cat", "Are you ok?") == 1) { + mes("[Missing, the Cleaner]"); + mes("Are you talking to me?!"); + next(); + mes("^660066A trembling cat is looking up at you.^000000"); + close(); } - mes "[Missing, the Cleaner]"; - mes "Achoo!"; - next; - mes "[Missing, the Cleaner]"; - mes "We have had many issues during the"; - mes "cleaning of the culverts. But a"; - mes "cat's gotta do it..."; - next; + mes("[Missing, the Cleaner]"); + mes("Achoo!"); + next(); + mes("[Missing, the Cleaner]"); + mes("We have had many issues during the"); + mes("cleaning of the culverts. But a"); + mes("cat's gotta do it..."); + next(); select("What culvert are you cleaning?"); - mes "[Missing, the Cleaner]"; - mes "It might look unfamiliar for an"; - mes "outsider, but actually this place"; - mes "is made to keep souvenirs and"; - mes "luxurious things."; - next; - mes "[Missing, the Cleaner]"; - mes "After there was a big trembling on"; - mes "this island, things started leaking"; - mes "around here. So that's why I became"; - mes "a cleaner here, though I used"; - mes "to be a manager."; - next; - mes "^660066The cat looks like it's been crying...^000000"; - next; - mes "[Missing, the Cleaner]"; - mes "There is a culvert along this way"; - mes "to the basement. There are many bad"; - mes "guys who hurt me. I am tired of"; - mes "fighting with them so many times a"; - mes "day!"; - next; - mes "[Missing, the Cleaner]"; - mes "Ohh! You touched my fur!"; - mes "My fur is falling out... it's all"; - mes "those guys' fault~"; - next; - mes "^660066You just now notice that the cat's fur is missing in some places.^000000"; - next; + mes("[Missing, the Cleaner]"); + mes("It might look unfamiliar for an"); + mes("outsider, but actually this place"); + mes("is made to keep souvenirs and"); + mes("luxurious things."); + next(); + mes("[Missing, the Cleaner]"); + mes("After there was a big trembling on"); + mes("this island, things started leaking"); + mes("around here. So that's why I became"); + mes("a cleaner here, though I used"); + mes("to be a manager."); + next(); + mes("^660066The cat looks like it's been crying...^000000"); + next(); + mes("[Missing, the Cleaner]"); + mes("There is a culvert along this way"); + mes("to the basement. There are many bad"); + mes("guys who hurt me. I am tired of"); + mes("fighting with them so many times a"); + mes("day!"); + next(); + mes("[Missing, the Cleaner]"); + mes("Ohh! You touched my fur!"); + mes("My fur is falling out... it's all"); + mes("those guys' fault~"); + next(); + mes("^660066You just now notice that the cat's fur is missing in some places.^000000"); + next(); select("Why don't you just quit!"); - mes "[Missing, the Cleaner]"; - mes "I still have to make a living, don't I?"; - next; - mes "[Missing, the Cleaner]"; - mes "Sometimes I can get a lucky box,"; - mes "or even better, I can get cans..."; - next; - if(select("Okay, cheers!", "I will help if possible...") == 1) { - mes "[Missing, the Cleaner]"; - mes "Thank you. I am going back to pour the water!"; - close; + mes("[Missing, the Cleaner]"); + mes("I still have to make a living, don't I?"); + next(); + mes("[Missing, the Cleaner]"); + mes("Sometimes I can get a lucky box,"); + mes("or even better, I can get cans..."); + next(); + if (select("Okay, cheers!", "I will help if possible...") == 1) { + mes("[Missing, the Cleaner]"); + mes("Thank you. I am going back to pour the water!"); + close(); } - mes "[Missing, the Cleaner]"; - mes "(turns down his voice)"; - mes "If you really want to help, come closer!"; - next; + mes("[Missing, the Cleaner]"); + mes("(turns down his voice)"); + mes("If you really want to help, come closer!"); + next(); select("(get in closer)"); - mes "[Missing, the Cleaner]"; - mes "Not everyone can be an assistant"; - mes "here. But I can't help choosing"; - mes "anyone at the moment..."; - next; - mes "[Missing, the Cleaner]"; - mes "If you want to go down here, let me get this code."; - next; - mes "^660066The cat scribbles a memo for code to you.^000000"; - next; + mes("[Missing, the Cleaner]"); + mes("Not everyone can be an assistant"); + mes("here. But I can't help choosing"); + mes("anyone at the moment..."); + next(); + mes("[Missing, the Cleaner]"); + mes("If you want to go down here, let me get this code."); + next(); + mes("^660066The cat scribbles a memo for code to you.^000000"); + next(); select("Open the memo."); - mes "^660000Aragam insulted me.^000000"; - next; - mes "[Missing, the Cleaner]"; - mes "You must be here with friends"; - mes "because you can't go in alone! And"; - mes "the password code will be from the"; - mes "party leader!"; - next; - mes "[Missing, the Cleaner]"; - mes "What is also important is you must"; - mes "have a Seagod Protection with you."; - next; - mes "[Missing, the Cleaner]"; - mes "Don't forget! I will not open the"; - mes "door if you do not have Seagod Protection!"; + mes("^660000Aragam insulted me.^000000"); + next(); + mes("[Missing, the Cleaner]"); + mes("You must be here with friends"); + mes("because you can't go in alone! And"); + mes("the password code will be from the"); + mes("party leader!"); + next(); + mes("[Missing, the Cleaner]"); + mes("What is also important is you must"); + mes("have a Seagod Protection with you."); + next(); + mes("[Missing, the Cleaner]"); + mes("Don't forget! I will not open the"); + mes("door if you do not have Seagod Protection!"); in_canal_n = 1; - close; + close(); } if (countitem(Ptotection_Seagod) == 0) { - mes "[Missing, the Cleaner]"; - mes "You don't look like you have Seagod Protection. I can't open door at the moment!"; - close; + mes("[Missing, the Cleaner]"); + mes("You don't look like you have Seagod Protection. I can't open door at the moment!"); + close(); } .@party_id = getcharid(CHAR_ID_PARTY); - .@md_name$ = "Culvert"; + .@md_name$ = _("Culvert"); if (!.@party_id) { - mes "^0000ffYou have to organize a party of"; - mes "more than 1 member or be a member"; - mes "of the party and come back.^000000"; - close; + mes("^0000ffYou have to organize a party of"); + mes("more than 1 member or be a member"); + mes("of the party and come back.^000000"); + close(); } - .@playtime = questprogress(12254,PLAYTIME); + .@playtime = questprogress(12254, PLAYTIME); if (!.@playtime) { - if (getcharid(CHAR_ID_CHAR) == getpartyleader(.@party_id,2)) { - mes "[Missing, the Cleaner]"; - mes "Ummm? What's up? Tell me the password if you're the leader!"; - next; - switch(select("No... nothing.", "Aragam insulted me.", "Enter the Culvert.")) { + if (getcharid(CHAR_ID_CHAR) == getpartyleader(.@party_id, 2)) { + mes("[Missing, the Cleaner]"); + mes("Ummm? What's up? Tell me the password if you're the leader!"); + next(); + switch (select("No... nothing.", "Aragam insulted me.", "Enter the Culvert.")) { case 1: - mes "[Missing, the Cleaner]"; - mes "What a rookie."; - close; + mes("[Missing, the Cleaner]"); + mes("What a rookie."); + close(); case 2: - .@instance = instance_create(.@md_name$,.@party_id); + .@instance = instance_create(.@md_name$, .@party_id); if (.@instance < 0) { - mes "Party name: "+getpartyname(.@party_id); - mes "Party leader: "+strcharinfo(PC_NAME); - mes "^0000ff"+.@md_name$+"^000000 - Reservation Failed!"; - close; + mesf("Party name: %s", getpartyname(.@party_id)); + mesf("Party leader: %s", strcharinfo(PC_NAME)); + mesf("^0000ff%s^000000 - Reservation Failed!", .@md_name$); + close(); } - if (instance_attachmap("1@pump",.@instance) == "" || instance_attachmap("2@pump",.@instance) == "") { - mes "^0000ff"+.@md_name$+"^000000 - Reservation Failed!"; + if (instance_attachmap("1@pump", .@instance) == "" || instance_attachmap("2@pump", .@instance) == "") { + mesf("^0000ff%s^000000 - Reservation Failed!", .@md_name$); instance_destroy(.@instance); - close; + close(); } - instance_set_timeout 3600,300,.@instance; + instance_set_timeout(3600, 300, .@instance); instance_init(.@instance); - mes "^3333FF"+.@md_name$+"^000000 - Reserving"; - mes "After making the reservation, you"; - mes "have to select Enter the Culvert."; - close; + mesf("^3333FF%s^000000 - Reserving", .@md_name$); + mes("After making the reservation, you"); + mes("have to select Enter the Culvert."); + close(); case 3: - callsub L_Enter,0; + callsub(L_Enter, 0); } } - if(select("Enter Culvert", "Cancel") == 2) + if (select("Enter Culvert", "Cancel") == 2) end; - callsub L_Enter,1; + callsub(L_Enter, 1); } else if (.@playtime == 1) { - mes "You can enter the Culvert if the gate is open."; - next; - if(select("Enter Culvert", "Cancel") == 2) - close; - callsub L_Enter,0; + mes("You can enter the Culvert if the gate is open."); + next(); + if (select("Enter Culvert", "Cancel") == 2) + close(); + callsub(L_Enter, 0); } else if (.@playtime == 2) { - mes "^0000ffThe gate to the Culvert is open again.^000000"; - erasequest 12254; - close; + mes("^0000ffThe gate to the Culvert is open again.^000000"); + erasequest(12254); + close(); } end; L_Enter: if (has_instance("1@pump") == "") { - if (questprogress(12254,PLAYTIME) == 1) { - mes "The gate to the Culvert is still closed."; - mes "You must wait until you are able to enter or find a party leader who can create the instance."; - close; + if (questprogress(12254, PLAYTIME) == 1) { + mes("The gate to the Culvert is still closed."); + mes("You must wait until you are able to enter or find a party leader who can create the instance."); + close(); } - mes "The memorial dungeon Culvert does not exist."; - mes "The party leader has not reserved entrance to the dungeon yet."; - close; + mes("The memorial dungeon Culvert does not exist."); + mes("The party leader has not reserved entrance to the dungeon yet."); + close(); } - mapannounce "mal_in01", strcharinfo(PC_NAME)+" of the party "+getpartyname(.@party_id)+" is entering the Culvert.",bc_map,"0x00ff99"; - if (!questprogress(12254)) setquest 12254; - warp "1@pump",63,98; + mapannounce("mal_in01", sprintf(_$("%s of the party %s is entering the Culvert."), strcharinfo(PC_NAME), getpartyname(.@party_id)), bc_map, C_SPRINGGREEN); + if (!questprogress(12254)) + setquest(12254); + warp("1@pump", 63, 98); end; } //== Instance: Common Scripts ============================== 1@pump,63,100,4 script Missing, the Cleaner#0 4_CAT_SAILOR2,{ - if (getcharid(CHAR_ID_CHAR) != getpartyleader(getcharid(CHAR_ID_PARTY),2)) { - mes "[Missing, the Cleaner]"; - mes "I am trying to have a conversation with your leader now. Please don't disturb and wait!"; - close; + if (getcharid(CHAR_ID_CHAR) != getpartyleader(getcharid(CHAR_ID_PARTY), 2)) { + mes("[Missing, the Cleaner]"); + mes("I am trying to have a conversation with your leader now. Please don't disturb and wait!"); + close(); } - mes "[Missing, the Cleaner]"; - mes "This is the underground culvert where you will clean with your friends!"; - next; - mes "[Missing, the Cleaner]"; - mes "I'll open the door first. By the way, do you know how to fight?"; - next; - switch(select("I'm pretty good at delivering bread.", "I know how to fight.", "^ffffffGive me the diamond.^000000")) { + mes("[Missing, the Cleaner]"); + mes("This is the underground culvert where you will clean with your friends!"); + next(); + mes("[Missing, the Cleaner]"); + mes("I'll open the door first. By the way, do you know how to fight?"); + next(); + switch (select("I'm pretty good at delivering bread.", "I know how to fight.", "^ffffffGive me the diamond.^000000")) { case 1: - mes "[Missing, the Cleaner]"; - mes "Ok then, I'll let you clean the culverts here as usual! I will prepare at the right-hand corner, please follow me!"; - next; - if(select("Wait! I changed my mind!", "As you wish~") == 1) { - mes "[Missing, the Cleaner]"; - mes "Huh? Not ready yet? Talk to me again when you're ready."; - close; + mes("[Missing, the Cleaner]"); + mes("Ok then, I'll let you clean the culverts here as usual! I will prepare at the right-hand corner, please follow me!"); + next(); + if (select("Wait! I changed my mind!", "As you wish~") == 1) { + mes("[Missing, the Cleaner]"); + mes("Huh? Not ready yet? Talk to me again when you're ready."); + close(); } 'party_id = getcharid(CHAR_ID_PARTY); - mapannounce instance_mapname("1@pump"),"Missing: Move toward the 3 o'clock direction and wait for my next order!",bc_map,"0xff88ff",FW_NORMAL,15; - disablenpc instance_npcname("Missing, the Cleaner#0"); - enablenpc instance_npcname("Missing, the Cleaner#n"); - close; + mapannounce(instance_mapname("1@pump"), _("Missing: Move toward the 3 o'clock direction and wait for my next order!"), bc_map, "0xff88ff", FW_NORMAL, 15); + disablenpc(instance_npcname("Missing, the Cleaner#0")); + enablenpc(instance_npcname("Missing, the Cleaner#n")); + close(); case 2: if (BaseLevel < 140) { - mes "[Missing, the Cleaner]"; - mes "Hmmm... Missing thinks you're weak! Tell me the truth!!"; - close; + mes("[Missing, the Cleaner]"); + mes("Hmmm... Missing thinks you're weak! Tell me the truth!!"); + close(); } - mes "[Missing, the Cleaner]"; - mes "Huh? You have some fighting skills? Well, then, there is one place I wasn't able to clean... why don't you go there?!"; - next; - mes "[Missing, the Cleaner]"; - mes "I must tell you that it's been such a long~~ time since we've cleaned that place, so anyone under level 140 cannot even enter! Are you sure you still want to go?"; - next; - if(select("Wait! I changed my mind!", "Sure, I'm prepared already~") == 1) { - mes "[Missing, the Cleaner]"; - mes "Hmm? Talk to me again when you're ready."; - close; + mes("[Missing, the Cleaner]"); + mes("Huh? You have some fighting skills? Well, then, there is one place I wasn't able to clean... why don't you go there?!"); + next(); + mes("[Missing, the Cleaner]"); + mes("I must tell you that it's been such a long~~ time since we've cleaned that place, so anyone under level 140 cannot even enter! Are you sure you still want to go?"); + next(); + if (select("Wait! I changed my mind!", "Sure, I'm prepared already~") == 1) { + mes("[Missing, the Cleaner]"); + mes("Hmm? Talk to me again when you're ready."); + close(); } 'party_id = getcharid(CHAR_ID_PARTY); - mapannounce instance_mapname("1@pump"),"Missing: I'll go in first, so follow me! I'll open up a gate at the 3 o'clock direction!",bc_map,"0xff88ff",FW_NORMAL,15; - disablenpc instance_npcname("Missing, the Cleaner#0"); - enablenpc instance_npcname("Culvert Entrance#i"); - close; + mapannounce(instance_mapname("1@pump"), _("Missing: I'll go in first, so follow me! I'll open up a gate at the 3 o'clock direction!"), bc_map, "0xff88ff", FW_NORMAL, 15); + disablenpc(instance_npcname("Missing, the Cleaner#0")); + enablenpc(instance_npcname("Culvert Entrance#i")); + close(); case 3: - mes "[Missing, the Cleaner]"; - mes "I told you not to play with me~!"; - close; + mes("[Missing, the Cleaner]"); + mes("I told you not to play with me~!"); + close(); } end; } @@ -532,134 +549,134 @@ L_Enter: 1@pump,84,105,0 script Culvert Entrance#i WARPNPC,3,3,{ end; OnInstanceInit: - disablenpc instance_npcname("Culvert Entrance#i"); + disablenpc(instance_npcname("Culvert Entrance#i")); end; OnTouch: if (BaseLevel >= 140) - warp instance_mapname("2@pump"),38,88; + warp(instance_mapname("2@pump"), 38, 88); else - warp instance_mapname("1@pump"),74,105; + warp(instance_mapname("1@pump"), 74, 105); end; } function script F_mal_missing { - mes "[Missing, the Cleaner]"; - mes "I will tell you how to clean shortly. Can you see the culverts around you?"; - next; - if(select("What culverts??", "Yes, I see them.") == 1) { - mes "[Missing, the Cleaner]"; - mes "Huh? Is this your first time seeing culverts? You'll see many buried machines in the ground. You may look around and come back!"; - close; + mes("[Missing, the Cleaner]"); + mes("I will tell you how to clean shortly. Can you see the culverts around you?"); + next(); + if (select("What culverts??", "Yes, I see them.") == 1) { + mes("[Missing, the Cleaner]"); + mes("Huh? Is this your first time seeing culverts? You'll see many buried machines in the ground. You may look around and come back!"); + close(); } - mes "[Missing, the Cleaner]"; - mes "That's right! Those culverts are very important! We must clean the culverts to prevent seaweed from blocking them. This is what we, cleaners, do!"; - next; - mes "[Missing, the Cleaner]"; - mes "Watch out! Some monsters will be after you while you're cleaning the culverts! But do not yield to them!"; - next; - mes "[Missing, the Cleaner]"; - mes "And... NEVER let 6 seaweeds stack! Up to 5 is acceptable! If there are 6, I'll drag you out of here!!"; - next; - mes "[Missing, the Cleaner]"; - mes "I don't care if you get help from your friends or not. I want you to clean up all culverts! Don't forget! I will watch you and give you instructions. Just do what I said!!"; - next; - if (getcharid(CHAR_ID_CHAR) != getpartyleader(getcharid(CHAR_ID_PARTY),2)) { - mes "[Missing, the Cleaner]"; - mes "Once your leader finishes preparing, it will begin, so get your hearts ready for it!!"; - close; + mes("[Missing, the Cleaner]"); + mes("That's right! Those culverts are very important! We must clean the culverts to prevent seaweed from blocking them. This is what we, cleaners, do!"); + next(); + mes("[Missing, the Cleaner]"); + mes("Watch out! Some monsters will be after you while you're cleaning the culverts! But do not yield to them!"); + next(); + mes("[Missing, the Cleaner]"); + mes("And... NEVER let 6 seaweeds stack! Up to 5 is acceptable! If there are 6, I'll drag you out of here!!"); + next(); + mes("[Missing, the Cleaner]"); + mes("I don't care if you get help from your friends or not. I want you to clean up all culverts! Don't forget! I will watch you and give you instructions. Just do what I said!!"); + next(); + if (getcharid(CHAR_ID_CHAR) != getpartyleader(getcharid(CHAR_ID_PARTY), 2)) { + mes("[Missing, the Cleaner]"); + mes("Once your leader finishes preparing, it will begin, so get your hearts ready for it!!"); + close(); } - mes "[Missing, the Cleaner]"; - mes "So, are you ready to clean now?"; - next; - switch(select("Wait! Not yet!", "Let's start!")) { + mes("[Missing, the Cleaner]"); + mes("So, are you ready to clean now?"); + next(); + switch (select("Wait! Not yet!", "Let's start!")) { case 1: - mes "[Missing, the Cleaner]"; - mes "Huh? Not ready yet? Then talk to me when you're ready."; - close; + mes("[Missing, the Cleaner]"); + mes("Huh? Not ready yet? Then talk to me when you're ready."); + close(); case 2: - mes "[Missing, the Cleaner]"; - mes "OK! Now it begins!"; + mes("[Missing, the Cleaner]"); + mes("OK! Now it begins!"); return; } } //== Instance: Normal Mode ================================= 1@pump,84,105,4 script Missing, the Cleaner#nf 4_CAT_SAILOR2,{ - mes "[Missing, the Cleaner]"; - mes "I have the cleaning job for 40 years and I've never seen such a terrible team!!"; - next; - mes "[Missing, the Cleaner]"; - mes "I see seaweed everywhere because you're wiggling! All the culverts will be blocked with seaweed!"; - next; - if (getcharid(CHAR_ID_CHAR) != getpartyleader(getcharid(CHAR_ID_PARTY),2)) { - mes "[Missing, the Cleaner]"; - mes "Once your leader finishes preparing, settlement will be decided so get your hearts ready for it!!"; - close; + mes("[Missing, the Cleaner]"); + mes("I have the cleaning job for 40 years and I've never seen such a terrible team!!"); + next(); + mes("[Missing, the Cleaner]"); + mes("I see seaweed everywhere because you're wiggling! All the culverts will be blocked with seaweed!"); + next(); + if (getcharid(CHAR_ID_CHAR) != getpartyleader(getcharid(CHAR_ID_PARTY), 2)) { + mes("[Missing, the Cleaner]"); + mes("Once your leader finishes preparing, settlement will be decided so get your hearts ready for it!!"); + close(); } - mes "[Missing, the Cleaner]"; - mes "If you got some guts to challenge again, I'll give you another chance! What's your choice going to be!?"; - next; - switch(select("Wait! Not yet!", "Okay, let's start again!")) { + mes("[Missing, the Cleaner]"); + mes("If you got some guts to challenge again, I'll give you another chance! What's your choice going to be!?"); + next(); + switch (select("Wait! Not yet!", "Okay, let's start again!")) { case 1: - mes "[Missing, the Cleaner]"; - mes "You're still slow! Talk to me again whenever your're ready."; - close; + mes("[Missing, the Cleaner]"); + mes("You're still slow! Talk to me again whenever your're ready."); + close(); case 2: - mes "[Missing, the Cleaner]"; - mes "Ok! Let's start now!"; - .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN),0); - enablenpc instance_npcname("Missing, the Cleaner#"+.@i$); - donpcevent instance_npcname("Missing, the Cleaner#"+.@i$)+"::OnStart"; - disablenpc instance_npcname("Culvert Entrance#"+.@i$); - disablenpc instance_npcname("Missing, the Cleaner#"+.@i$+"o"); - donpcevent instance_npcname("Monster Hole#"+.@i$)+"::OnClear"; - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); - close; + mes("[Missing, the Cleaner]"); + mes("Ok! Let's start now!"); + .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN), 0); + enablenpc(instance_npcname("Missing, the Cleaner#"+.@i$)); + donpcevent(instance_npcname("Missing, the Cleaner#"+.@i$)+"::OnStart"); + disablenpc(instance_npcname("Culvert Entrance#"+.@i$)); + disablenpc(instance_npcname("Missing, the Cleaner#"+.@i$+"o")); + donpcevent(instance_npcname("Monster Hole#"+.@i$)+"::OnClear"); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); + close(); } - close; + close(); OnInstanceInit: - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); end; } 1@pump,84,105,4 script Missing, the Cleaner#n 4_CAT_SAILOR2,{ - callfunc "F_mal_missing"; - donpcevent instance_npcname("Missing, the Cleaner#n")+"::OnStart"; - close; + callfunc("F_mal_missing"); + donpcevent(instance_npcname("Missing, the Cleaner#n")+"::OnStart"); + close(); OnInstanceInit: - disablenpc instance_npcname("Missing, the Cleaner#n"); + disablenpc(instance_npcname("Missing, the Cleaner#n")); end; OnStart: - killmonster instance_mapname("1@pump"),instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"; - disablenpc instance_npcname("Missing, the Cleaner#n"); - initnpctimer; + killmonster(instance_mapname("1@pump"), instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"); + disablenpc(instance_npcname("Missing, the Cleaner#n")); + initnpctimer(); end; OnAddSeaweed: .@map$ = instance_mapname("1@pump"); - areamonster .@map$,55,99,61,105,"Contaminated Seaweed",2191,1,instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"; - .@mob_dead_num = mobcount(.@map$,instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"); + areamonster(.@map$, 55, 99, 61, 105, _("Contaminated Seaweed"), MD_SEAWEED, 1, instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"); + .@mob_dead_num = mobcount(.@map$, instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"); if (.@mob_dead_num >= 6) - donpcevent instance_npcname("Missing, the Cleaner#n")+"::OnFail"; + donpcevent(instance_npcname("Missing, the Cleaner#n")+"::OnFail"); else - mapannounce .@map$,"Contaminated Seaweed: "+.@mob_dead_num+" stem",bc_map,"0xff3333",FW_NORMAL,20; + mapannounce(.@map$, sprintf(_$("Contaminated Seaweed: %s stem"), .@mob_dead_num), bc_map, "0xff3333", FW_NORMAL, 20); end; OnMyMobDead: end; OnFail: - stopnpctimer; - donpcevent instance_npcname("Monster Hole#n")+"::OnClear"; + stopnpctimer(); + donpcevent(instance_npcname("Monster Hole#n")+"::OnClear"); .@map$ = instance_mapname("1@pump"); - killmonster .@map$,instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"; - enablenpc instance_npcname("Missing, the Cleaner#nf"); - mapannounce .@map$,"What is this!! Seaweed is all over the culverts! You're done with cleaning! Get out!!",bc_map,"0xff88ff",FW_NORMAL,15; - disablenpc instance_npcname("Missing, the Cleaner#n"); + killmonster(.@map$, instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"); + enablenpc(instance_npcname("Missing, the Cleaner#nf")); + mapannounce(.@map$, _("What is this!! Seaweed is all over the culverts! You're done with cleaning! Get out!!"), bc_map, "0xff88ff", FW_NORMAL, 15); + disablenpc(instance_npcname("Missing, the Cleaner#n")); end; OnTimer100: - mapannounce instance_mapname("1@pump"),"First culvert will be opened in 5 sec. Cleaner can find the opened drain and click to start cleaning.",bc_map,"0x00ffcc",FW_NORMAL,15; + mapannounce(instance_mapname("1@pump"), _("First culvert will be opened in 5 sec. Cleaner can find the opened drain and click to start cleaning."), bc_map, "0x00ffcc", FW_NORMAL, 15); end; OnTimer5500: - mapannounce instance_mapname("1@pump"),"The one who's in charge of cleaning the culvert cannot move or be attacked until the casting is over.",bc_map,"0x00ffcc",FW_NORMAL,15; - donpcevent instance_npcname("Monster Hole#n")+"::OnSpawn"; + mapannounce(instance_mapname("1@pump"), _("The one who's in charge of cleaning the culvert cannot move or be attacked until the casting is over."), bc_map, "0x00ffcc", FW_NORMAL, 15); + donpcevent(instance_npcname("Monster Hole#n")+"::OnSpawn"); end; OnTimer45000: OnTimer95000: @@ -670,12 +687,12 @@ OnTimer295000: OnTimer345000: OnTimer395000: OnTimer445000: - mapannounce instance_mapname("1@pump"),"Next culvert will be opened in 5 sec. Please hurry up and find the position of the next culvert.",bc_map,"0x00ffcc",FW_NORMAL,15; + mapannounce(instance_mapname("1@pump"), _("Next culvert will be opened in 5 sec. Please hurry up and find the position of the next culvert."), bc_map, "0x00ffcc", FW_NORMAL, 15); end; OnTimer50000: OnTimer100000: OnTimer150000: - donpcevent instance_npcname("Monster Hole#n")+"::OnSpawn"; + donpcevent(instance_npcname("Monster Hole#n")+"::OnSpawn"); end; OnTimer200000: OnTimer250000: @@ -683,103 +700,116 @@ OnTimer300000: OnTimer350000: OnTimer400000: OnTimer450000: - .@mob_dead_num = mobcount(instance_mapname("1@pump"),instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"); + .@mob_dead_num = mobcount(instance_mapname("1@pump"), instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"); if (.@mob_dead_num >= 6) - donpcevent instance_npcname("Missing, the Cleaner#n")+"::OnFail"; + donpcevent(instance_npcname("Missing, the Cleaner#n")+"::OnFail"); else - donpcevent instance_npcname("Monster Hole#n")+"::OnSpawn"; + donpcevent(instance_npcname("Monster Hole#n")+"::OnSpawn"); end; OnTimer515000: .@map$ = instance_mapname("1@pump"); - .@mob_dead_num = mobcount(.@map$,instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"); - mapannounce .@map$,"Contaminated Seaweed: "+.@mob_dead_num+" stem. Missing will come and inspect the results of the cleaning soon.",bc_map,"0xff3333",FW_NORMAL,20; + .@mob_dead_num = mobcount(.@map$, instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"); + mapannounce(.@map$, sprintf(_$("Contaminated Seaweed: %s stem. Missing will come and inspect the results of the cleaning soon."), .@mob_dead_num), bc_map, "0xff3333", FW_NORMAL, 20); end; OnTimer520000: - stopnpctimer; - .@mob_dead_num = mobcount(instance_mapname("1@pump"),instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"); + stopnpctimer(); + .@mob_dead_num = mobcount(instance_mapname("1@pump"), instance_npcname("Missing, the Cleaner#n")+"::OnMyMobDead"); if (.@mob_dead_num >= 6) - donpcevent instance_npcname("Missing, the Cleaner#n")+"::OnFail"; + donpcevent(instance_npcname("Missing, the Cleaner#n")+"::OnFail"); else - donpcevent instance_npcname("Boss Creation#n")+"::OnEnable"; + donpcevent(instance_npcname("Boss Creation#n")+"::OnEnable"); end; } 1@pump,1,1,4 script Monster Hole#n FAKE_NPC,{ end; OnSpawn: - .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN),0); + .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN), 0); if (.@i$ == "n") .@n = 6; else if (.@i$ == "h") .@n = 10; - donpcevent instance_npcname("#Culvert_"+.@i$+rand(1,.@n))+"::OnEnable"; + donpcevent(instance_npcname("#Culvert_"+.@i$+rand(1, .@n))+"::OnEnable"); end; OnClear: - .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN),0); + .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN), 0); if (.@i$ == "n") .@n = 6; else if (.@i$ == "h") .@n = 10; - for(.@i = 1; .@i<=.@n; ++.@i) - donpcevent instance_npcname("#Culvert_"+.@i$+.@n)+"::OnClear"; + for(.@i = 1; .@i <= .@n; ++.@i) + donpcevent(instance_npcname("#Culvert_"+.@i$+.@n)+"::OnClear"); end; } 1@pump,36,111,4 script #Culvert_n1 CLEAR_NPC,14,14,{ //temporary workaround for ALL_SAMEMAP - progressbar "0xFFFF00",10; - stopnpctimer; - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + progressbar(sprintf("0x%x", C_YELLOW), 10); + stopnpctimer(); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); end; OnInstanceInit: - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); end; OnEnable: - enablenpc instance_npcname(strnpcinfo(NPC_NAME)); + enablenpc(instance_npcname(strnpcinfo(NPC_NAME))); .@label$ = instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"; .@map$ = instance_mapname("1@pump"); - .@index = atoi(charat(strnpcinfo(NPC_NAME_HIDDEN),9)); - switch(.@index) { - case 1: setarray .@c[0],32,107,40,115; break; - case 2: setarray .@c[0],64,120,72,128; break; - case 3: setarray .@c[0],76,110,84,118; break; - case 4: setarray .@c[0],36,76,44,84; break; - case 5: setarray .@c[0],71,76,79,84; break; - case 6: setarray .@c[0],54,97,62,105; break; + .@index = atoi(charat(strnpcinfo(NPC_NAME_HIDDEN), 9)); + switch (.@index) { + case 1: + setarray(.@c[0], 32, 107, 40, 115); + break; + case 2: + setarray(.@c[0], 64, 120, 72, 128); + break; + case 3: + setarray(.@c[0], 76, 110, 84, 118); + break; + case 4: + setarray(.@c[0], 36, 76, 44, 84); + break; + case 5: + setarray(.@c[0], 71, 76, 79, 84); + break; + case 6: + setarray(.@c[0], 54, 97, 62, 105); + break; } - areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"Abysmal Crab",2176,rand(1,3),.@label$; - areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"Abysmal Marse",2175,rand(1,3),.@label$; - areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"Ancient Vadon",2174,rand(1,3),.@label$; - areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"Abysmal Shellfish",2178,rand(1,3),.@label$; - areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"Ancient Kukre",2179,rand(1,3),.@label$; - areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"Abysmal Cornutus",2177,rand(1,3),.@label$; - specialeffect EF_MAPPILLAR2,ALL_SAMEMAP; //currently broken + areamonster(.@map$, .@c[0], .@c[1], .@c[2], .@c[3], _("Abysmal Crab"), MD_CRAB, rand(1, 3), .@label$); + areamonster(.@map$, .@c[0], .@c[1], .@c[2], .@c[3], _("Abysmal Marse"), MD_MARSE, rand(1, 3), .@label$); + areamonster(.@map$, .@c[0], .@c[1], .@c[2], .@c[3], _("Ancient Vadon"), MD_VADON, rand(1, 3), .@label$); + areamonster(.@map$, .@c[0], .@c[1], .@c[2], .@c[3], _("Abysmal Shellfish"), MD_SHELLFISH, rand(1, 3), .@label$); + areamonster(.@map$, .@c[0], .@c[1], .@c[2], .@c[3], _("Ancient Kukre"), MD_KUKRE, rand(1, 3), .@label$); + areamonster(.@map$, .@c[0], .@c[1], .@c[2], .@c[3], _("Abysmal Cornutus"), MD_CORNUTUS, rand(1, 3), .@label$); + specialeffect(EF_MAPPILLAR2, ALL_SAMEMAP); //currently broken getmapxy(.@map$, .@x, .@y, UNITTYPE_NPC); - getpartymember 'party_id,2; - copyarray .@partymemberaid[0],$@partymemberaid[0],$@partymembercount; + getpartymember('party_id, 2); + copyarray(.@partymemberaid[0], $@partymemberaid[0], $@partymembercount); for(.@i = 0; .@i<$@partymembercount; ++.@i) { if (attachrid(.@partymemberaid[.@i])) { if (strcharinfo(PC_MAP) == .@map$) - viewpoint 0,.@x,.@y,.@index,0xFFFF00; - detachrid; + viewpoint(0, .@x, .@y, .@index, C_YELLOW); + detachrid(); } } - initnpctimer; + initnpctimer(); end; OnMyMobDead: end; OnClear: - stopnpctimer; - killmonster instance_mapname("1@pump"),instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"; + stopnpctimer(); + killmonster(instance_mapname("1@pump"), instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); end; OnTimer49500: //OnTimer50000 clashes with the timer in "Missing, the Cleaner#h". - donpcevent instance_npcname("Missing, the Cleaner#n")+"::OnAddSeaweed"; - donpcevent instance_npcname(strnpcinfo(NPC_NAME))+"::OnClear"; - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + donpcevent(instance_npcname("Missing, the Cleaner#n")+"::OnAddSeaweed"); + donpcevent(instance_npcname(strnpcinfo(NPC_NAME))+"::OnClear"); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); end; OnTouch: - specialeffect EF_MAPPILLAR2; + specialeffect(EF_MAPPILLAR2); end; } + 1@pump,68,124,4 duplicate(#Culvert_n1) #Culvert_n2 CLEAR_NPC,14,14 1@pump,80,114,4 duplicate(#Culvert_n1) #Culvert_n3 CLEAR_NPC,14,14 1@pump,40,80,4 duplicate(#Culvert_n1) #Culvert_n4 CLEAR_NPC,14,14 @@ -789,126 +819,139 @@ OnTouch: 1@pump,1,1,4 script Boss Creation#n FAKE_NPC,{ end; OnInstanceInit: - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); end; OnEnable: - enablenpc instance_npcname(strnpcinfo(NPC_NAME)); - initnpctimer; + enablenpc(instance_npcname(strnpcinfo(NPC_NAME))); + initnpctimer(); end; OnTimer100: - .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN),0); + .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN), 0); if (.@i$ == "n") - mapannounce instance_mapname("1@pump"),"Hmm! That wasn't so bad!",bc_map,"0xff88ff",FW_NORMAL,15; + mapannounce(instance_mapname("1@pump"), _("Hmm! That wasn't so bad!"), bc_map, "0xff88ff", FW_NORMAL, 15); else if (.@i$ == "h") - mapannounce instance_mapname("2@pump"),"Hmm! You guys are pretty good!!",bc_map,"0xff88ff",FW_NORMAL,15; + mapannounce(instance_mapname("2@pump"), _("Hmm! You guys are pretty good!!"), bc_map, "0xff88ff", FW_NORMAL, 15); end; OnTimer5000: - mapannounce strnpcinfo(NPC_MAP),"Let's pack up and go... WHAT!!?",bc_map,"0xff88ff",FW_NORMAL,15; + mapannounce(strnpcinfo(NPC_MAP), _("Let's pack up and go... WHAT!!?"), bc_map, "0xff88ff", FW_NORMAL, 15); end; OnTimer10000: - mapannounce strnpcinfo(NPC_MAP),"I sense something strange!! Don't loosen up-- prepare for a fight!!",bc_map,"0xff88ff",FW_NORMAL,15; + mapannounce(strnpcinfo(NPC_MAP), _("I sense something strange!! Don't loosen up-- prepare for a fight!!"), bc_map, "0xff88ff", FW_NORMAL, 15); end; OnTimer20000: - stopnpctimer; - .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN),0); + stopnpctimer(); + .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN), 0); .@label$ = instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"; - if (rand(1,100) > 50) { + if (rand(1, 100) > 50) { if (.@i$ == "n") - monster instance_mapname("1@pump"),0,0,"Weird Coelacanth",2188,1,.@label$; + monster(instance_mapname("1@pump"), 0, 0, _("Weird Coelacanth"), COELACANTH_N_M, 1, .@label$); else if (.@i$ == "h") - monster instance_mapname("2@pump"),0,0,"Mutant Coelacanth",2189,1,.@label$; - mapannounce strnpcinfo(NPC_MAP),"Something big inside the abyss appears with a huge noise.",bc_map,"0x00ffcc",FW_NORMAL,15; + monster(instance_mapname("2@pump"), 0, 0, _("Mutant Coelacanth"), COELACANTH_H_M, 1, .@label$); + mapannounce(strnpcinfo(NPC_MAP), _("Something big inside the abyss appears with a huge noise."), bc_map, "0x00ffcc", FW_NORMAL, 15); } else { if (.@i$ == "n") - monster instance_mapname("1@pump"),0,0,"Gloomy Coelacanth",2187,1,.@label$; + monster(instance_mapname("1@pump"), 0, 0, _("Gloomy Coelacanth"), COELACANTH_N_A, 1, .@label$); else if (.@i$ == "h") - monster instance_mapname("2@pump"),0,0,"Violent Coelacanth",2190,1,.@label$; - mapannounce strnpcinfo(NPC_MAP),"Something savage inside the abyss appears with a huge noise.",bc_map,"0x00ffcc",FW_NORMAL,15; + monster(instance_mapname("2@pump"), 0, 0, _("Violent Coelacanth"), COELACANTH_H_A, 1, .@label$); + mapannounce(strnpcinfo(NPC_MAP), _("Something savage inside the abyss appears with a huge noise."), bc_map, "0x00ffcc", FW_NORMAL, 15); } end; OnMyMobDead: - if (mobcount(strnpcinfo(NPC_MAP),instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead") < 1) { - mapannounce strnpcinfo(NPC_MAP),"You've destroyed all monsters in the culverts. There are trophies lying on the ground, please look for them.",bc_map,"0xffff00",FW_NORMAL,15; - .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN),0); + if (mobcount(strnpcinfo(NPC_MAP), instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead") < 1) { + mapannounce(strnpcinfo(NPC_MAP), _("You've destroyed all monsters in the culverts. There are trophies lying on the ground, please look for them."), bc_map, C_YELLOW, FW_NORMAL, 15); + .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN), 0); .@map$ = strnpcinfo(NPC_MAP); - enablenpc instance_npcname("Culvert Entrance#"+.@i$); - enablenpc instance_npcname("Missing, the Cleaner#"+.@i$+"o"); + enablenpc(instance_npcname("Culvert Entrance#"+.@i$)); + enablenpc(instance_npcname("Missing, the Cleaner#"+.@i$+"o")); if (.@i$ == "n") { - for(.@i = 0; .@i<10; ++.@i) { - .@j = rand(1,6401); - if (.@j < 5001) .@item = 12636; //Malang_Sp_Can - else if (.@j < 5501) .@item = 12615; //Low_Coin_Pocket - else if (.@j < 6001) .@item = 12621; //Egrade_Pocket - else if (.@j < 6201) .@item = 12620; //Dgrade_Pocket - else if (.@j < 6401) .@item = 12623; //High_Weapon_Box - else continue; - makeitem .@item,1,.@map$,rand(40,77),rand(87,120); + for(.@i = 0; .@i < 10; ++.@i) { + .@j = rand(1, 6401); + if (.@j < 5001) + .@item = Malang_Sp_Can; + else if (.@j < 5501) + .@item = Low_Coin_Pocket; + else if (.@j < 6001) + .@item = Egrade_Pocket; + else if (.@j < 6201) + .@item = Dgrade_Pocket; + else if (.@j < 6401) + .@item = High_Weapon_Box; + else + continue; + makeitem(.@item, 1, .@map$, rand(40, 77), rand(87, 120)); } } else if (.@i$ == "h") { - for(.@i = 0; .@i<10; ++.@i) { - .@j = rand(1,5001); - if (.@j < 2001) .@item = 12615; //Low_Coin_Pocket - else if (.@j < 3001) .@item = 12621; //Egrade_Pocket - else if (.@j < 4001) .@item = 12620; //Dgrade_Pocket - else if (.@j < 4501) .@item = 12619; //Cgrade_Pocket - else if (.@j < 5001) .@item = 12623; //High_Weapon_Box - else continue; - makeitem .@item,1,.@map$,rand(40,77),rand(87,120); + for(.@i = 0; .@i < 10; ++.@i) { + .@j = rand(1, 5001); + if (.@j < 2001) + .@item = Low_Coin_Pocket; + else if (.@j < 3001) + .@item = Egrade_Pocket; + else if (.@j < 4001) + .@item = Dgrade_Pocket; + else if (.@j < 4501) + .@item = Cgrade_Pocket; + else if (.@j < 5001) + .@item = High_Weapon_Box; + else + continue; + makeitem(.@item, 1, .@map$, rand(40, 77), rand(87, 120)); } } - } else - mapannounce strnpcinfo(NPC_MAP),"There are still monsters alive.",bc_map,"0x00ff99",FW_NORMAL,20; + } else { + mapannounce(strnpcinfo(NPC_MAP), _("There are still monsters alive."), bc_map, C_SPRINGGREEN, FW_NORMAL, 20); + } end; } 1@pump,84,105,4 script Missing, the Cleaner#no 4_CAT_SAILOR2,{ - .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN),0); + .@i$ = charat(strnpcinfo(NPC_NAME_HIDDEN), 0); if (.@i$ == "n") { - mes "[Missing, the Cleaner]"; - mes "I was very surprised!!"; - next; - mes "[Missing, the Cleaner]"; - mes "That funny-looking fish seems to be one of Coelacanths living around here. This is my first time seeing one coming here alone!"; - next; - mes "[Missing, the Cleaner]"; - mes "I'll clean up the remains. Go pack and leave! Enterance is located on the other side, look for it!"; - next; + mes("[Missing, the Cleaner]"); + mes("I was very surprised!!"); + next(); + mes("[Missing, the Cleaner]"); + mes("That funny-looking fish seems to be one of Coelacanths living around here. This is my first time seeing one coming here alone!"); + next(); + mes("[Missing, the Cleaner]"); + mes("I'll clean up the remains. Go pack and leave! Enterance is located on the other side, look for it!"); + next(); } else if (.@i$ == "h") { - mes "[Missing, the Cleaner]"; - mes "You've destroyed an immense monster!"; - next; - mes "[Missing, the Cleaner]"; - mes "The one you destroyed was among the variety of Coelacanths. Others have tried to destroy them but failed."; - next; - mes "[Missing, the Cleaner]"; - mes "I'll clean up the remains. You go ahead to get trophies and leave!"; - next; + mes("[Missing, the Cleaner]"); + mes("You've destroyed an immense monster!"); + next(); + mes("[Missing, the Cleaner]"); + mes("The one you destroyed was among the variety of Coelacanths. Others have tried to destroy them but failed."); + next(); + mes("[Missing, the Cleaner]"); + mes("I'll clean up the remains. You go ahead to get trophies and leave!"); + next(); } - mes "[Missing, the Cleaner]"; - mes "One more thing! DO NOT TALK to ANYONE about what you've seen here today!!"; - next; - mes "[Missing, the Cleaner]"; - mes "If Tomas closes this down, we will lose our jobs!"; - close; + mes("[Missing, the Cleaner]"); + mes("One more thing! DO NOT TALK to ANYONE about what you've seen here today!!"); + next(); + mes("[Missing, the Cleaner]"); + mes("If Tomas closes this down, we will lose our jobs!"); + close(); OnInstanceInit: - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); end; } 1@pump,32,100,0 script Culvert Entrance#n WARPNPC,3,3,{ end; OnInstanceInit: - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); end; OnTouch: - warp "mal_in01",161,32; + warp("mal_in01", 161, 32); end; } //MD_Putmob "1@pump" 0 0 0 0 20 HYDRA 0 0 2 1@pump,1,1,4 script Hydra#n FAKE_NPC,{ OnInstanceInit: - monster strnpcinfo(NPC_MAP),0,0,"Hydra",1068,20; + monster(strnpcinfo(NPC_MAP), 0, 0, _("Hydra"), HYDRA, 20); end; } @@ -916,40 +959,40 @@ OnInstanceInit: 2@pump,39,88,4 duplicate(Missing, the Cleaner#nf) Missing, the Cleaner#hf 4_CAT_SAILOR2 2@pump,39,88,4 script Missing, the Cleaner#h 4_CAT_SAILOR2,{ - callfunc "F_mal_missing"; - donpcevent instance_npcname("Missing, the Cleaner#h")+"::OnStart"; - close; + callfunc("F_mal_missing"); + donpcevent(instance_npcname("Missing, the Cleaner#h")+"::OnStart"); + close(); OnStart: - killmonster instance_mapname("2@pump"),instance_npcname("Missing, the Cleaner#h")+"::OnMyMobDead"; - disablenpc instance_npcname("Missing, the Cleaner#h"); - initnpctimer; + killmonster(instance_mapname("2@pump"), instance_npcname("Missing, the Cleaner#h")+"::OnMyMobDead"); + disablenpc(instance_npcname("Missing, the Cleaner#h")); + initnpctimer(); end; OnAddSeaweed: .@map$ = instance_mapname("2@pump"); - areamonster .@map$,75,78,85,88,"Contaminated Seaweed",2191,1,instance_npcname("Missing, the Cleaner#h")+"::OnMyMobDead"; - .@mob_dead_num = mobcount(.@map$,instance_npcname("Missing, the Cleaner#h")+"::OnMyMobDead"); + areamonster(.@map$, 75, 78, 85, 88, _("Contaminated Seaweed"), MD_SEAWEED, 1, instance_npcname("Missing, the Cleaner#h")+"::OnMyMobDead"); + .@mob_dead_num = mobcount(.@map$, instance_npcname("Missing, the Cleaner#h")+"::OnMyMobDead"); if (.@mob_dead_num >= 6) - donpcevent instance_npcname("Missing, the Cleaner#h")+"::OnFail"; + donpcevent(instance_npcname("Missing, the Cleaner#h")+"::OnFail"); else - mapannounce .@map$,"Proliferous Contaminated Seaweed: "+.@mob_dead_num+" stem",bc_map,"0xff3333",FW_NORMAL,20; + mapannounce(.@map$, sprintf(_$("Proliferous Contaminated Seaweed: %s stem"), .@mob_dead_num), bc_map, "0xff3333", FW_NORMAL, 20); end; OnMyMobDead: end; OnFail: - stopnpctimer; - donpcevent instance_npcname("Monster Hole#h")+"::OnClear"; + stopnpctimer(); + donpcevent(instance_npcname("Monster Hole#h")+"::OnClear"); .@map$ = instance_mapname("2@pump"); - killmonster .@map$, instance_npcname("Missing, the Cleaner#h")+"::OnMyMobDead"; - enablenpc instance_npcname("Missing, the Cleaner#hf"); - mapannounce .@map$,"What is this!! Seaweed is all over the culverts! You're done with cleaning! Get out!!",bc_map,"0xff88ff",FW_NORMAL,15; - disablenpc instance_npcname("Missing, the Cleaner#h"); + killmonster(.@map$, instance_npcname("Missing, the Cleaner#h")+"::OnMyMobDead"); + enablenpc(instance_npcname("Missing, the Cleaner#hf")); + mapannounce(.@map$, _("What is this!! Seaweed is all over the culverts! You're done with cleaning! Get out!!"), bc_map, "0xff88ff", FW_NORMAL, 15); + disablenpc(instance_npcname("Missing, the Cleaner#h")); end; OnTimer100: - mapannounce instance_mapname("2@pump"),"First culvert will be opened in 5 sec. Cleaner can find the opened drain and click to start cleaning.",bc_map,"0x00ffcc",FW_NORMAL,15; + mapannounce(instance_mapname("2@pump"), _("First culvert will be opened in 5 sec. Cleaner can find the opened drain and click to start cleaning."), bc_map, "0x00ffcc", FW_NORMAL, 15); end; OnTimer5500: - mapannounce instance_mapname("2@pump"),"The one who's in charge of cleaning the culvert cannot move or be attacked until the casting is over.",bc_map,"0x00ffcc",FW_NORMAL,15; - donpcevent instance_npcname("Monster Hole#h")+"::OnSpawn"; + mapannounce(instance_mapname("2@pump"), _("The one who's in charge of cleaning the culvert cannot move or be attacked until the casting is over."), bc_map, "0x00ffcc", FW_NORMAL, 15); + donpcevent(instance_npcname("Monster Hole#h")+"::OnSpawn"); end; OnTimer35000: OnTimer75000: @@ -960,12 +1003,12 @@ OnTimer235000: OnTimer275000: OnTimer315000: OnTimer355000: - mapannounce instance_mapname("2@pump"),"Next culvert will be opened in 5 sec. Please hurry up and find the position of the next culvert.",bc_map,"0x00ffcc",FW_NORMAL,15; + mapannounce(instance_mapname("2@pump"), _("Next culvert will be opened in 5 sec. Please hurry up and find the position of the next culvert."), bc_map, "0x00ffcc", FW_NORMAL, 15); end; OnTimer40000: OnTimer80000: OnTimer120000: - donpcevent instance_npcname("Monster Hole#h")+"::OnSpawn"; + donpcevent(instance_npcname("Monster Hole#h")+"::OnSpawn"); end; OnTimer160000: OnTimer200000: @@ -973,72 +1016,92 @@ OnTimer240000: OnTimer280000: OnTimer320000: OnTimer360000: - .@mob_dead_num = mobcount(instance_mapname("2@pump"),instance_npcname("Missing, the Cleaner#h")+"::OnMyMobDead"); + .@mob_dead_num = mobcount(instance_mapname("2@pump"), instance_npcname("Missing, the Cleaner#h")+"::OnMyMobDead"); if (.@mob_dead_num >= 6) - donpcevent instance_npcname("Missing, the Cleaner#h")+"::OnFail"; + donpcevent(instance_npcname("Missing, the Cleaner#h")+"::OnFail"); else - donpcevent instance_npcname("Monster Hole#h")+"::OnSpawn"; + donpcevent(instance_npcname("Monster Hole#h")+"::OnSpawn"); end; OnTimer420000: - mapannounce instance_mapname("2@pump"),"It seems Missing will come and inspect the results of the cleaning soon. Shall we clean up the mess around here?",bc_map,"0xff3333",FW_NORMAL,20; + mapannounce(instance_mapname("2@pump"), _("It seems Missing will come and inspect the results of the cleaning soon. Shall we clean up the mess around here?"), bc_map, "0xff3333", FW_NORMAL, 20); end; OnTimer425000: - stopnpctimer; - .@mob_dead_num = mobcount(instance_mapname("2@pump"),instance_npcname("Missing, the Cleaner#h")+"::OnMyMobDead"); + stopnpctimer(); + .@mob_dead_num = mobcount(instance_mapname("2@pump"), instance_npcname("Missing, the Cleaner#h")+"::OnMyMobDead"); if (.@mob_dead_num >= 6) - donpcevent instance_npcname("Missing, the Cleaner#h")+"::OnFail"; + donpcevent(instance_npcname("Missing, the Cleaner#h")+"::OnFail"); else - donpcevent instance_npcname("Boss Creation#h")+"::OnEnable"; + donpcevent(instance_npcname("Boss Creation#h")+"::OnEnable"); end; } 2@pump,53,114,4 script #Culvert_h1 CLEAR_NPC,14,14,{ //temporary workaround for ALL_SAMEMAP - progressbar "0xFFFF00",15; - stopnpctimer; - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + progressbar(sprintf("0x%x", C_YELLOW), 15); + stopnpctimer(); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); end; OnInstanceInit: - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); end; OnEnable: - enablenpc instance_npcname(strnpcinfo(NPC_NAME)); + enablenpc(instance_npcname(strnpcinfo(NPC_NAME))); .@label$ = instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"; .@map$ = instance_mapname("2@pump"); - .@index = atoi(substr(strnpcinfo(NPC_NAME_HIDDEN),9,getstrlen(strnpcinfo(NPC_NAME_HIDDEN))-1)); - switch(.@index) { - case 1: setarray .@c[0],49,110,57,118; break; - case 2: setarray .@c[0],75,105,83,113; break; - case 3: setarray .@c[0],110,110,118,118; break; - case 4: setarray .@c[0],94,94,102,102; break; - case 5: setarray .@c[0],58,92,66,100; break; - case 6: setarray .@c[0],53,66,61,74; break; - case 7: setarray .@c[0],43,45,51,53; break; - case 8: setarray .@c[0],77,59,85,67; break; - case 9: setarray .@c[0],96,70,104,78; break; - case 10: setarray .@c[0],111,46,119,54; break; + .@index = atoi(substr(strnpcinfo(NPC_NAME_HIDDEN), 9, getstrlen(strnpcinfo(NPC_NAME_HIDDEN))-1)); + switch (.@index) { + case 1: + setarray(.@c[0], 49, 110, 57, 118); + break; + case 2: + setarray(.@c[0], 75, 105, 83, 113); + break; + case 3: + setarray(.@c[0], 110, 110, 118, 118); + break; + case 4: + setarray(.@c[0], 94, 94, 102, 102); + break; + case 5: + setarray(.@c[0], 58, 92, 66, 100); + break; + case 6: + setarray(.@c[0], 53, 66, 61, 74); + break; + case 7: + setarray(.@c[0], 43, 45, 51, 53); + break; + case 8: + setarray(.@c[0], 77, 59, 85, 67); + break; + case 9: + setarray(.@c[0], 96, 70, 104, 78); + break; + case 10: + setarray(.@c[0], 111, 46, 119, 54); + break; } - areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"Ancient Marc",2182,rand(2,3),.@label$; - areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"Ancient Sword Fish",2181,rand(2,3),.@label$; - areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"Ancient Strouf",2180,rand(2,3),.@label$; - areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"Mutant Anolian",2183,rand(2,3),.@label$; - areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"Abysmal Obeaune",2184,rand(2,3),.@label$; - areamonster .@map$,.@c[0],.@c[1],.@c[2],.@c[3],"Metamorphous Kapha",2185,rand(2,3),.@label$; - specialeffect EF_MAPPILLAR2,ALL_SAMEMAP; //currently broken - initnpctimer; + areamonster(.@map$, .@c[0], .@c[1], .@c[2], .@c[3], _("Ancient Marc"), MD_MARC, rand(2, 3), .@label$); + areamonster(.@map$, .@c[0], .@c[1], .@c[2], .@c[3], _("Ancient Sword Fish"), MD_SWORD_FISH, rand(2, 3), .@label$); + areamonster(.@map$, .@c[0], .@c[1], .@c[2], .@c[3], _("Ancient Strouf"), MD_STROUF, rand(2, 3), .@label$); + areamonster(.@map$, .@c[0], .@c[1], .@c[2], .@c[3], _("Mutant Anolian"), MD_ANOLIAN, rand(2, 3), .@label$); + areamonster(.@map$, .@c[0], .@c[1], .@c[2], .@c[3], _("Abysmal Obeaune"), MD_OBEAUNE, rand(2, 3), .@label$); + areamonster(.@map$, .@c[0], .@c[1], .@c[2], .@c[3], _("Metamorphous Kapha"), MD_KAPHA, rand(2, 3), .@label$); + specialeffect(EF_MAPPILLAR2, ALL_SAMEMAP); //currently broken + initnpctimer(); end; OnMyMobDead: end; OnClear: - stopnpctimer; - killmonster instance_mapname("2@pump"),instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"; + stopnpctimer(); + killmonster(instance_mapname("2@pump"), instance_npcname(strnpcinfo(NPC_NAME))+"::OnMyMobDead"); end; OnTimer39500: //OnTimer40000 clashes with the timer in "Missing, the Cleaner#h". - donpcevent instance_npcname("Missing, the Cleaner#h")+"::OnAddSeaweed"; - donpcevent instance_npcname(strnpcinfo(NPC_NAME))+"::OnClear"; - disablenpc instance_npcname(strnpcinfo(NPC_NAME)); + donpcevent(instance_npcname("Missing, the Cleaner#h")+"::OnAddSeaweed"); + donpcevent(instance_npcname(strnpcinfo(NPC_NAME))+"::OnClear"); + disablenpc(instance_npcname(strnpcinfo(NPC_NAME))); end; OnTouch: - specialeffect EF_MAPPILLAR2; + specialeffect(EF_MAPPILLAR2); end; } 2@pump,79,109,4 duplicate(#Culvert_h1) #Culvert_h2 CLEAR_NPC,14,14 |