summaryrefslogtreecommitdiff
path: root/npc
diff options
context:
space:
mode:
Diffstat (limited to 'npc')
-rw-r--r--npc/airports/airships.txt1502
-rw-r--r--npc/airports/einbroch.txt108
-rw-r--r--npc/airports/hugel.txt12
-rw-r--r--npc/airports/izlude.txt40
-rw-r--r--npc/airports/lighthalzen.txt68
-rw-r--r--npc/airports/rachel.txt12
-rw-r--r--npc/airports/yuno.txt164
-rw-r--r--npc/battleground/bg_common.txt341
-rw-r--r--npc/battleground/flavius/flavius01.txt230
-rw-r--r--npc/battleground/flavius/flavius02.txt230
-rw-r--r--npc/battleground/flavius/flavius_enter.txt314
-rw-r--r--npc/battleground/kvm/kvm01.txt108
-rw-r--r--npc/battleground/kvm/kvm02.txt108
-rw-r--r--npc/battleground/kvm/kvm03.txt108
-rw-r--r--npc/battleground/kvm/kvm_enter.txt190
-rw-r--r--npc/battleground/kvm/kvm_item_pay.txt258
-rw-r--r--npc/battleground/tierra/tierra01.txt374
-rw-r--r--npc/battleground/tierra/tierra02.txt374
-rw-r--r--npc/battleground/tierra/tierra_enter.txt330
-rw-r--r--npc/cities/splendide.txt2
-rw-r--r--npc/custom/etc/airplane.txt6
-rw-r--r--npc/custom/etc/quest_warper.txt2
-rw-r--r--npc/custom/events/uneasy_cemetery.txt6
-rw-r--r--npc/custom/quests/berzebub.txt2
-rw-r--r--npc/dev/test.txt18
-rw-r--r--npc/events/halloween_2006.txt2
-rw-r--r--npc/jobs/2-2/alchemist.txt1561
-rw-r--r--npc/quests/bard_quest.txt4
-rw-r--r--npc/quests/newgears/2010_headgears.txt12
-rw-r--r--npc/quests/quests_rachel.txt5
-rw-r--r--npc/quests/skills/assassin_skills.txt10
-rw-r--r--npc/re/cities/dicastes.txt258
-rw-r--r--npc/re/events/halloween_2013.txt2
-rw-r--r--npc/re/events/halloween_2014.txt8
-rw-r--r--npc/re/instances/OldGlastHeim.txt2923
-rw-r--r--npc/re/instances/WolfchevLaboratory.txt17
-rw-r--r--npc/re/instances/saras_memory.txt1867
-rw-r--r--npc/re/jobs/novice/academy.txt8
-rw-r--r--npc/re/kafras/kafras.txt8
-rw-r--r--npc/re/merchants/ninja_craftsman.txt131
-rw-r--r--npc/re/mobs/dungeons/glastheim.txt19
-rw-r--r--npc/re/quests/eden/100-110.txt2
-rw-r--r--npc/re/quests/eden/111-120.txt2
-rw-r--r--npc/re/quests/quests_dicastes.txt183
-rw-r--r--npc/re/quests/quests_eclage.txt4
-rw-r--r--npc/re/quests/quests_lighthalzen.txt39
-rw-r--r--npc/re/quests/quests_malangdo.txt7
-rw-r--r--npc/re/quests/quests_mora.txt3
-rw-r--r--npc/re/scripts.conf2
-rw-r--r--npc/re/warps/cities/dicastes.txt2
50 files changed, 7481 insertions, 4505 deletions
diff --git a/npc/airports/airships.txt b/npc/airports/airships.txt
index afec61992..8d840a456 100644
--- a/npc/airports/airships.txt
+++ b/npc/airports/airships.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -64,124 +64,124 @@ OnInit:
initnpctimer;
end;
OnTimer20000:
- mapannounce "airplane","We are heading to Einbroch.",bc_map,"0x00ff00";
+ mapannounce("airplane", _("We are heading to Einbroch."), bc_map, "0x00ff00");
end;
OnTimer50000:
- mapannounce "airplane","We will arrive in Einbroch shortly.",bc_map,"0x00ff00";
+ mapannounce("airplane", _("We will arrive in Einbroch shortly."), bc_map, "0x00ff00");
end;
OnTimer60000:
$@airplanelocation = 1;
donpcevent "#AirshipWarp-1::OnUnhide";
donpcevent "#AirshipWarp-2::OnUnhide";
- mapannounce "airplane","Welcome to Einbroch. Have a safe trip.",bc_map,"0x00ff00";
+ mapannounce("airplane", _("Welcome to Einbroch. Have a safe trip."), bc_map, "0x00ff00");
end;
OnTimer70000:
- mapannounce "airplane","Currently we are in Einbroch. The Airship will take off shortly.",bc_map,"0x00ff00";
+ mapannounce("airplane", _("Currently we are in Einbroch. The Airship will take off shortly."), bc_map, "0x00ff00");
end;
OnTimer80000:
donpcevent "#AirshipWarp-1::OnHide";
donpcevent "#AirshipWarp-2::OnHide";
- mapannounce "airplane","The Airship is now taking off. Our next destination is Lighthalzen.",bc_map,"0x70dbdb";
+ mapannounce("airplane", _("The Airship is now taking off. Our next destination is Lighthalzen."), bc_map, "0x70dbdb");
end;
OnTimer100000:
- mapannounce "airplane","We are heading to Lighthalzen.",bc_map,"0x70dbdb";
+ mapannounce("airplane", _("We are heading to Lighthalzen."), bc_map, "0x70dbdb");
end;
OnTimer130000:
- mapannounce "airplane","We will arrive in Lighthalzen shortly.",bc_map,"0x70dbdb";
+ mapannounce("airplane", _("We will arrive in Lighthalzen shortly."), bc_map, "0x70dbdb");
end;
OnTimer140000:
$@airplanelocation = 2;
donpcevent "#AirshipWarp-1::OnUnhide";
donpcevent "#AirshipWarp-2::OnUnhide";
- mapannounce "airplane","Welcome to Lighthalzen. Have a safe trip.",bc_map,"0x70dbdb";
+ mapannounce("airplane", _("Welcome to Lighthalzen. Have a safe trip."), bc_map, "0x70dbdb");
end;
OnTimer150000:
- mapannounce "airplane","Currently we are in Lighthalzen. The Airship will leave shortly.",bc_map,"0x70dbdb";
+ mapannounce("airplane", _("Currently we are in Lighthalzen. The Airship will leave shortly."), bc_map, "0x70dbdb");
end;
OnTimer160000:
donpcevent "#AirshipWarp-1::OnHide";
donpcevent "#AirshipWarp-2::OnHide";
- mapannounce "airplane","The Airship is leaving the ground. Our next destination is Einbroch.",bc_map,"0x00ff00";
+ mapannounce("airplane", _("The Airship is leaving the ground. Our next destination is Einbroch."), bc_map, "0x00ff00");
end;
OnTimer180000:
- mapannounce "airplane","We are heading to Einbroch.",bc_map,"0x00ff00";
+ mapannounce("airplane", _("We are heading to Einbroch."), bc_map, "0x00ff00");
end;
OnTimer210000:
- mapannounce "airplane","We will arrive in Einbroch shortly.",bc_map,"0x00FF00";
+ mapannounce("airplane", _("We will arrive in Einbroch shortly."), bc_map, "0x00FF00");
end;
OnTimer220000:
$@airplanelocation = 1;
donpcevent "#AirshipWarp-1::OnUnhide";
donpcevent "#AirshipWarp-2::OnUnhide";
- mapannounce "airplane","Welcome to Einbroch. Have a safe trip.",bc_map,"0x00ff00";
+ mapannounce("airplane", _("Welcome to Einbroch. Have a safe trip."), bc_map, "0x00ff00");
end;
OnTimer230000:
- mapannounce "airplane","Currently we are in Einbroch. The Airship will take off shortly.",bc_map,"0x00ff00";
+ mapannounce("airplane", _("Currently we are in Einbroch. The Airship will take off shortly."), bc_map, "0x00ff00");
end;
OnTimer240000:
donpcevent "#AirshipWarp-1::OnHide";
donpcevent "#AirshipWarp-2::OnHide";
- mapannounce "airplane","The Airship is now taking off. Our next destination is Juno.",bc_map,"0xff8200";
+ mapannounce("airplane", _("The Airship is now taking off. Our next destination is Juno."), bc_map, "0xff8200");
end;
OnTimer260000:
- mapannounce "airplane","We are heading to Juno.",bc_map,"0xff8200";
+ mapannounce("airplane", _("We are heading to Juno."), bc_map, "0xff8200");
end;
OnTimer290000:
- mapannounce "airplane","We will arrive in Juno shortly.",bc_map,"0xff8200";
+ mapannounce("airplane", _("We will arrive in Juno shortly."), bc_map, "0xff8200");
end;
OnTimer300000:
$@airplanelocation = 0;
donpcevent "#AirshipWarp-1::OnUnhide";
donpcevent "#AirshipWarp-2::OnUnhide";
- mapannounce "airplane","Welcome to Juno. Have a safe trip.",bc_map,"0xff8200";
+ mapannounce("airplane", _("Welcome to Juno. Have a safe trip."), bc_map, "0xff8200");
end;
OnTimer310000:
- mapannounce "airplane","Currently we are in Juno. The Airship will leave shortly.",bc_map,"0xff8200";
+ mapannounce("airplane", _("Currently we are in Juno. The Airship will leave shortly."), bc_map, "0xff8200");
end;
OnTimer320000:
donpcevent "#AirshipWarp-1::OnHide";
donpcevent "#AirshipWarp-2::OnHide";
- mapannounce "airplane","The Airship is leaving the ground. Our next destination is Hugel.",bc_map,"0xca4bf3";
+ mapannounce("airplane", _("The Airship is leaving the ground. Our next destination is Hugel."), bc_map, "0xca4bf3");
end;
OnTimer340000:
- mapannounce "airplane","We are heading to Hugel.",bc_map,"0xca4bf3";
+ mapannounce("airplane", _("We are heading to Hugel."), bc_map, "0xca4bf3");
end;
OnTimer370000:
- mapannounce "airplane","We will arrive in Hugel shortly.",bc_map,"0xca4bf3";
+ mapannounce("airplane", _("We will arrive in Hugel shortly."), bc_map, "0xca4bf3");
end;
OnTimer380000:
$@airplanelocation = 3;
donpcevent "#AirshipWarp-1::OnUnhide";
donpcevent "#AirshipWarp-2::OnUnhide";
- mapannounce "airplane","Welcome to Hugel. Have a safe trip.",bc_map,"0xca4bf3";
+ mapannounce("airplane", _("Welcome to Hugel. Have a safe trip."), bc_map, "0xca4bf3");
end;
OnTimer390000:
- mapannounce "airplane","Currently we are in Hugel. The Airship will leave shortly.",bc_map,"0xca4bf3";
+ mapannounce("airplane", _("Currently we are in Hugel. The Airship will leave shortly."), bc_map, "0xca4bf3");
end;
OnTimer400000:
donpcevent "#AirshipWarp-1::OnHide";
donpcevent "#AirshipWarp-2::OnHide";
- mapannounce "airplane","The Airship is leaving the ground. Our next destination is Juno.",bc_map,"0xff8200";
+ mapannounce("airplane", _("The Airship is leaving the ground. Our next destination is Juno."), bc_map, "0xff8200");
end;
OnTimer420000:
- mapannounce "airplane","We are heading to Juno.",bc_map,"0xff8200";
+ mapannounce("airplane", _("We are heading to Juno."), bc_map, "0xff8200");
end;
OnTimer450000:
- mapannounce "airplane","We will arrive in Juno shortly.",bc_map,"0xff8200";
+ mapannounce("airplane", _("We will arrive in Juno shortly."), bc_map, "0xff8200");
end;
OnTimer460000:
$@airplanelocation = 0;
donpcevent "#AirshipWarp-1::OnUnhide";
donpcevent "#AirshipWarp-2::OnUnhide";
- mapannounce "airplane","Welcome to Juno. Have a safe trip.",bc_map,"0xff8200";
+ mapannounce("airplane", _("Welcome to Juno. Have a safe trip."), bc_map, "0xff8200");
end;
OnTimer470000:
- mapannounce "airplane","Currently we are in Juno. The Airship will leave shortly.",bc_map,"0xff8200";
+ mapannounce("airplane", _("Currently we are in Juno. The Airship will leave shortly."), bc_map, "0xff8200");
end;
OnTimer480000:
donpcevent "#AirshipWarp-1::OnHide";
donpcevent "#AirshipWarp-2::OnHide";
- mapannounce "airplane","The Airship is leaving the ground. Our next destination is Einbroch.",bc_map,"0x00ff00";
+ mapannounce("airplane", _("The Airship is leaving the ground. Our next destination is Einbroch."), bc_map, "0x00ff00");
stopnpctimer;
initnpctimer;
}
@@ -194,92 +194,89 @@ airplane,240,40,1 duplicate(ExitAirplane) Exit#airplane2a 4_BOARD3
airplane,247,40,1 duplicate(ExitAirplane) Exit#airplane2b 4_BOARD3
airplane,100,69,3 script Airship Crew#ein-1 4_M_EIN_SOLDIER,{
- mes "[Airship Crew]";
- mes "If we've landed at";
- mes "your destination and";
- mes "you'd like to leave the";
- mes "Airship, please use the";
- mes "stairs up ahead. Thank";
- mes "you for your patronage.";
+ mes("[Airship Crew]");
+ mes("If we've landed at\r"
+ "your destination and\r"
+ "you'd like to leave the\r"
+ "Airship, please use the\r"
+ "stairs up ahead. Thank\r"
+ "you for your patronage.");
close;
}
airplane,64,94,1 script Umbala Kid#ein_p 4_M_UMKID,{
emotion e_swt2;
- mes "[Kid]";
+ mes("[Kid]");
if (event_umbala >= 3) {
- mes "Wow, mom!";
- mes "L-look at this!";
- mes "We're flying! W-we're...";
- mes "We're in the freakin' sky!";
- }
- else {
- mes "Makumalagu!";
- mes "Saampa joojimbo";
- mes "kaku na jedi Solo.";
- mes "Bwahahahahahahaah!";
+ mes("Wow, mom!");
+ mes("L-look at this!");
+ mes("We're flying! W-we're...");
+ mes("We're in the freakin' sky!");
+ } else {
+ mes("Makumalagu!");
+ mes("Saampa joojimbo");
+ mes("kaku na jedi Solo.");
+ mes("Bwahahahahahahaah!");
}
close;
}
airplane,66,93,3 script Umbala Lady#ein_p 4_F_UMWOMAN,{
emotion e_dots;
- mes "[Lady]";
+ mes("[Lady]");
if (event_umbala >= 3) {
- mes "Shush...";
- mes "Honey, behave~";
- mes "Don't act so excited";
- mes "when we're out in a";
- mes "public place like this!";
- }
- else {
- mes "Chooktu!";
- mes "Sacraup matii!";
- mes "Shaka gurftalfi";
- mes "huntiki manjoo!";
+ mes("Shush...");
+ mes("Honey, behave~");
+ mes("Don't act so excited\r"
+ "when we're out in a\r"
+ "public place like this!");
+ } else {
+ mes("Chooktu!");
+ mes("Sacraup matii!");
+ mes("Shaka gurftalfi\r"
+ "huntiki manjoo!");
}
close;
}
airplane,71,91,7 script Umbala Man#ein_p 4_M_UMSOLDIER,{
if (event_umbala >= 3) {
- mes "[Chrmlim]";
- mes "Hey there~";
- mes "From that look on";
- mes "your face, I see that";
- mes "you can understand";
- mes "me. ^333333*Whew...!*^000000";
+ mes("[Chrmlim]");
+ mes("Hey there~");
+ mes("From that look on\r"
+ "your face, I see that\r"
+ "you can understand\r"
+ "me. ^333333*Whew...!*^000000");
next;
emotion e_pif;
- mes "[Chrmlim]";
- mes "I've been helping the";
- mes "Airship enterprise by";
- mes "having the Airship Crewmen";
- mes "train in Umbala to overcome";
- mes "any acrophobia they might have through bungee jumping. Neat, eh?";
+ mes("[Chrmlim]");
+ mes("I've been helping the\r"
+ "Airship enterprise by\r"
+ "having the Airship Crewmen\r"
+ "train in Umbala to overcome\r"
+ "any acrophobia they might have through bungee jumping. Neat, eh?");
next;
- mes "[Chrmlim]";
- mes "But...";
- mes "Some of them couldn't";
- mes "overcome their fear of";
- mes "heights. And a few even";
- mes "ended up, um, ^333333in Nifflheim^000000.";
- }
- else {
- mes "[Chrmlim]";
- mes "Bajoo ga";
- mes "nukta Airship.";
+ mes("[Chrmlim]");
+ mes("But...");
+ mes("Some of them couldn't\r"
+ "overcome their fear of\r"
+ "heights. And a few even\r"
+ "ended up, um, ^333333in Nifflheim^000000.");
+ } else {
+ mes("[Chrmlim]");
+ mes("Bajoo ga\r"
+ "nukta Airship.");
next;
- mes "[Chrmlim]";
- mes "...";
- mes "......";
+ mes("[Chrmlim]");
+ mes("...");
+ mes("......");
next;
emotion e_pif;
- mes "[Chrmlim]";
- mes "Shabala moow bajama";
- mes "Airship kulaha googoona ";
- mes "salu. Dama, kookoo na nu";
- mes "yukuta. Um, fashuku na ret!";
+ mes("[Chrmlim]");
+ mes("Shabala moow bajama\r"
+ "Airship kulaha googoona\r"
+ "salu. Dama, kookoo na nu\r"
+ "yukuta. Um, fashuku na ret!");
}
close;
}
@@ -287,377 +284,378 @@ airplane,71,91,7 script Umbala Man#ein_p 4_M_UMSOLDIER,{
airplane,250,58,2 script Airship Staff#airplane 1_F_02,{
// Hugel quest addition
if (hg_ma1 == 3) {
- mes "[Airship Staff]";
- mes "Welcome";
- mes "to the Airship.";
- mes "How may I help you?";
+ mes("[Airship Staff]");
+ mes("Welcome\r"
+ "to the Airship.");
+ mes("How may I help you?");
next;
select("Do you have a passenger named Thierry?");
- mes "[Airship Staff]";
- mes "I am sorry, but I do not think that we have a passenger by that name.";
+ mes("[Airship Staff]");
+ mes("I am sorry, but I do not think that we have a passenger by that name.");
close;
}
// Hugel quest end
- mes "[Airship Staff]";
- mes "Welcome";
- mes "to the Airship.";
- mes "How may I help you?";
+ mes("[Airship Staff]");
+ mes("Welcome\r"
+ "to the Airship.");
+ mes("How may I help you?");
next;
switch (select("Using the Airship", "Captain's Cabin", "Facilities", "Cancel")) {
case 1:
- mes "[Airship Staff]";
- mes "When you see a broadcast";
- mes "announcing that we have";
- mes "arrived at your destination,";
- mes "please use one of the exits";
- mes "located at the north and";
- mes "south ends of the Airship.";
+ mes("[Airship Staff]");
+ mes("When you see a broadcast\r"
+ "announcing that we have\r"
+ "arrived at your destination,\r"
+ "please use one of the exits\r"
+ "located at the north and\r"
+ "south ends of the Airship.");
next;
- mes "[Airship Staff]";
- mes "If you happen to miss";
- mes "your stop, don't worry.";
- mes "The Airship is constantly";
- mes "en route and you'll get";
- mes "another chance to arrive";
- mes "to your intended destination.";
+ mes("[Airship Staff]");
+ mes("If you happen to miss\r"
+ "your stop, don't worry.\r"
+ "The Airship is constantly\r"
+ "en route and you'll get\r"
+ "another chance to arrive\r"
+ "to your intended destination.");
close;
case 2:
- mes "[Airship Staff]";
- mes "The Captain's Cabin";
- mes "is located at the front";
- mes "of the Airship. There, you";
- mes "can meet the captain and";
- mes "the pilot of the Airship.";
+ mes("[Airship Staff]");
+ mes("The Captain's Cabin\r"
+ "is located at the front\r"
+ "of the Airship. There, you\r"
+ "can meet the captain and\r"
+ "the pilot of the Airship.");
close;
case 3:
- mes "[Airship Staff]";
- mes "The Airship provides";
- mes "various Mini Games for";
- mes "the entertainment of all";
- mes "our passengers. We invite";
- mes "you to try your luck and skills";
- mes "in the Airship's Mini Games~";
+ mes("[Airship Staff]");
+ mes("The Airship provides\r"
+ "various Mini Games for\r"
+ "the entertainment of all\r"
+ "our passengers. We invite\r"
+ "you to try your luck and skills\r"
+ "in the Airship's Mini Games~");
close;
case 4:
- mes "[Airship Staff]";
- mes "Well, I hope you";
- mes "your flight aboard";
- mes "our Airships. Thank";
- mes "you and have a good day.";
+ mes("[Airship Staff]");
+ mes("Well, I hope you\r"
+ "your flight aboard\r"
+ "our Airships. Thank\r"
+ "you and have a good day.");
close;
}
}
airplane,80,71,2 script Zerta#01airplane 4_M_BUDDHIST,{
- mes "[Zerta]";
- mes "Oh, hello adventurer.";
- mes "I am currently on a";
- mes "sacred journey, offering";
- mes "prayer for the sake of the";
- mes "Rune-Midgard continent.";
+ mes("[Zerta]");
+ mes("Oh, hello adventurer.\r"
+ "I am currently on a\r"
+ "sacred journey, offering\r"
+ "prayer for the sake of the\r"
+ "Rune-Midgard continent.");
close;
}
airplane,65,63,4 script Maelin#01airplane 4_F_06,{
- mes "[Maelin]";
- mes "Um, this Airship is";
- mes "to Lutie, isn't it? I've";
- mes "waiting so long,";
- mes "but I haven't heard any";
- mes "broadcast about Lutie.";
+ mes("[Maelin]");
+ mes("Um, this Airship is\r"
+ "to Lutie, isn't it? I've\r"
+ "waiting so long,\r"
+ "but I haven't heard any\r"
+ "broadcast about Lutie.");
close;
}
airplane,72,34,6 script Aanos#01airplane 4_F_GON,{
- mes "[Aanos]";
- mes "Oh wooow~";
- mes "The sky looks";
- mes "so different and";
- mes "pretty from up there!";
+ mes("[Aanos]");
+ mes("Oh wooow~");
+ mes("The sky looks\r"
+ "so different and\r"
+ "pretty from up there!\r");
close;
}
airplane,221,158,2 script Pilot#airplane 4_M_EIN_SOLDIER,{
// Hugel quest addition
if (hg_ma1 == 3) {
- mes "[Pilot]";
- mes "I wish that I could go drink a cold fresh beer.";
- mes "Drinking is the goal of my life! Drinking gives me energy!";
- mes "I am nothing without drinks!";
+ mes("[Pilot]");
+ mes("I wish that I could go drink a cold fresh beer.");
+ mes("Drinking is the goal of my life! Drinking gives me energy!");
+ mes("I am nothing without drinks!");
next;
- mes "[Pilot]";
- mes "But! Driving under the influence is not good.";
- mes "But! That makes me want to drink more and more!";
+ mes("[Pilot]");
+ mes("But! Driving under the influence is not good.");
+ mes("But! That makes me want to drink more and more!");
emotion e_sob;
next;
select("Do you know a passenger named Thierry?");
- mes "[Pilot]";
- mes "This uniform is";
- mes "really dapper, but";
- mes "it's way too thick to";
- mes "wear around the Airship.";
+ mes("[Pilot]");
+ mes("This uniform is\r"
+ "really dapper, but\r"
+ "it's way too thick to\r"
+ "wear around the Airship.");
next;
- mes "[Pilot]";
- mes "...";
- mes "......";
- mes "No one ever really";
- mes "comes into this room.";
- mes "And the captain IS a reindeer. I could just strip to my boxers.";
+ mes("[Pilot]");
+ mes("...");
+ mes("......");
+ mes("No one ever really\r"
+ "comes into this room.");
+ mes("And the captain IS a reindeer. I could just strip to my boxers.");
next;
emotion e_omg;
- mes "[Pilot]";
- mes "Wah!? Who is it!";
+ mes("[Pilot]");
+ mes("Wah!? Who is it!");
next;
- mes "- ...He is not listening to you, at all. -";
+ mes("- ...He is not listening to you, at all. -");
close;
}
// Hugel quest end
switch (rand(1,4)) {
case 1:
- mes "[Pilot]";
- mes "It's been sooo";
- mes "long since I've";
- mes "enjoyed a nice, cold";
- mes "alcoholic brew. But the";
- mes "job requires me to be as";
- mes "clear headed as I can!";
+ mes("[Pilot]");
+ mes("It's been sooo\r"
+ "long since I've\r"
+ "enjoyed a nice, cold\r"
+ "alcoholic brew. But the\r"
+ "job requires me to be as\r"
+ "clear headed as I can!");
next;
- mes "[Pilot]";
- mes "Always drink responsibly!";
- mes "Still, I can't remember the";
- mes "last time I had a real vacation";
- mes "or even a day off. Yeap, some";
- mes "booze, some chips, some TV";
- mes "and serius R&R is in order.";
+ mes("[Pilot]");
+ mes("Always drink responsibly!");
+ mes("Still, I can't remember the\r"
+ "last time I had a real vacation\r"
+ "or even a day off. Yeap, some\r"
+ "booze, some chips, some TV\r"
+ "and serius R&R is in order.");
emotion e_sob;
close;
case 2:
- mes "[Pilot]";
- mes "Man, the weather";
- mes "is really nice today.";
- mes "Bright, open skies make";
- mes "for some good visibility";
- mes "and safe, carefree flying.";
+ mes("[Pilot]");
+ mes("Man, the weather\r"
+ "is really nice today.");
+ mes("Bright, open skies make\r"
+ "for some good visibility\r"
+ "and safe, carefree flying.");
close;
case 3:
- mes "[Pilot]";
- mes "You know, our captain's a";
- mes "respectable guy. Him and";
- mes "his brother are actually well";
- mes "known in the aircraft industry.";
- mes "Who knew reindeer made";
- mes "such good captains?";
+ mes("[Pilot]");
+ mes("You know, our captain's a\r"
+ "respectable guy. Him and\r"
+ "his brother are actually well\r"
+ "known in the aircraft industry.");
+ mes("Who knew reindeer made\r"
+ "such good captains?");
next;
- mes "[Pilot]";
- mes "Just between you";
- mes "and me, I gotta tell";
- mes "you, that Santa was onto";
- mes "something, getting reindeers";
- mes "and elves to work for him.";
- mes "The man must be a genius!";
+ mes("[Pilot]");
+ mes("Just between you\r"
+ "and me, I gotta tell\r"
+ "you, that Santa was onto\r"
+ "something, getting reindeers\r"
+ "and elves to work for him.");
+ mes("The man must be a genius!");
close;
default:
- mes "[Pilot]";
- mes "You know, this whole";
- mes "piloting thing in the air,";
- mes "it's rather new, you know?";
- mes "Yeah, they got this Airship";
- mes "operation in a hurry.";
+ mes("[Pilot]");
+ mes("You know, this whole\r"
+ "piloting thing in the air,\r"
+ "it's rather new, you know?");
+ mes("Yeah, they got this Airship\r"
+ "operation in a hurry.");
next;
emotion e_omg;
- mes "[Pilot]";
- mes "Still, they where real";
- mes "serius, really thought";
- mes "ahead. I mean, they had us";
- mes "training while the Airships";
- mes "were still being invented.";
- mes "Isn't that freakin' crazy?!";
+ mes("[Pilot]");
+ mes("Still, they where real\r"
+ "serius, really thought\r"
+ "ahead. I mean, they had us\r"
+ "training while the Airships\r"
+ "were still being invented.");
+ mes("Isn't that freakin' crazy?!");
close;
}
}
airplane,50,66,5 script Apple Merchant#airplane 4_M_04,{
- mes "[Fruitz]";
- mes "Welcome to Fruitz's";
- mes "Shop where you can";
- mes "purchase Apples or grind";
- mes "them to make Apple Juice.";
+ mes("[Fruitz]");
+ mes("Welcome to Fruitz's\r"
+ "Shop where you can\r"
+ "purchase Apples or grind\r"
+ "them to make Apple Juice.");
next;
switch (select("Buy Apples.", "Make Apple Juice.", "Why are you here?", "Cancel.")) {
case 1:
- mes "[Fruitz]";
- mes "Please enter the amount";
- mes "of Apples that you wish to";
- mes "buy. Each Apple is 15 zeny";
- mes "and you can buy a maximum";
- mes "of 500 at a time. Please enter";
- mes " '0' to cancel your order.";
+ mes("[Fruitz]");
+ mes("Please enter the amount\r"
+ "of Apples that you wish to\r"
+ "buy. Each Apple is 15 zeny\r"
+ "and you can buy a maximum\r"
+ "of 500 at a time. Please enter\r"
+ " '0' to cancel your order.");
next;
while (1) {
input .@input;
.@pay = .@input * 15;
if (.@input == 0) {
- mes "[Fruitz]";
- mes "Thanks for stopping";
- mes "by my shop. Farewell!";
- mes "Come by anytime when";
- mes "you feel like having an";
- mes "Apple to snack on~";
+ mes("[Fruitz]");
+ mes("Thanks for stopping\r"
+ "by my shop. Farewell!");
+ mes("Come by anytime when\r"
+ "you feel like having an\r"
+ "Apple to snack on~");
close;
}
else if (.@input < 1 || .@input > 500) {
- mes "[Fruitz]";
- mes "You've entered a number";
- mes "higher than the maximum";
- mes "value of 500. Please enter";
- mes "the number of Apples you";
- mes "wish to purchase again.";
+ mes("[Fruitz]");
+ mes("You've entered a number\r"
+ "higher than the maximum\r"
+ "value of 500. Please enter\r"
+ "the number of Apples you\r"
+ "wish to purchase again.");
next;
}
else {
- mes "[Fruitz]";
- mes "A total of ^FF0000" + .@input + "^000000 Apples";
- mes "will cost you ^FF0000" + .@pay + " Zeny^000000 zeny.";
- mes "Would you like to continue?";
+ mes("[Fruitz]");
+ mesf("A total of ^FF0000%d^000000 Apples\r"
+ "will cost you ^FF0000%d Zeny^000000.",
+ .@input, .@pay);
+ mes("Would you like to continue?");
next;
if (select("Yes", "No") == 2) {
- mes "[Fruitz]";
- mes "Thanks for stopping";
- mes "by my shop. Farewell!";
- mes "Come by anytime when";
- mes "you feel like having an";
- mes "Apple to snack on~";
+ mes("[Fruitz]");
+ mes("Thanks for stopping\r"
+ "by my shop. Farewell!");
+ mes("Come by anytime when\r"
+ "you feel like having an\r"
+ "Apple to snack on~");
close;
}
break;
}
}
if (Zeny < .@pay) {
- mes "[Fruitz]";
- mes "I'm sorry, but you don't";
- mes "have enough money to";
- mes "purchase that many Apples.";
- mes "Please check your zeny or";
- mes "purchase fewer Apples.";
+ mes("[Fruitz]");
+ mes("I'm sorry, but you don't\r"
+ "have enough money to\r"
+ "purchase that many Apples.");
+ mes("Please check your zeny or\r"
+ "purchase fewer Apples.");
close;
}
else if (checkweight(Apple,.@input) == 0) {
- mes "[Fruitz]";
- mes "Hmmm, I don't think";
- mes "you've got enough room in";
- mes "your inventory to carry this";
- mes "many Apples. Why don't you free up some of your inventory space?";
+ mes("[Fruitz]");
+ mes("Hmmm, I don't think\r"
+ "you've got enough room in\r"
+ "your inventory to carry this\r"
+ "many Apples. Why don't you free up some of your inventory space?");
close;
}
else {
Zeny -= .@pay;
getitem Apple,.@input;
- mes "[Fruitz]";
- mes "Thanks for stopping by";
- mes "my shop. I hope you enjoy";
- mes "the flavor of these Apples~!";
+ mes("[Fruitz]");
+ mes("Thanks for stopping by\r"
+ "my shop. I hope you enjoy\r"
+ "the flavor of these Apples~!");
close;
}
case 2:
- mes "[Fruitz]";
- mes "Okay, I'll need";
- mes "^FF00003 Apples and 1 Empty Bottle^000000";
- mes "to make 1 Apple Juice for you.";
- mes "Would you like to proceed?";
+ mes("[Fruitz]");
+ mes("Okay, I'll need\r"
+ "^FF00003 Apples and 1 Empty Bottle^000000\r"
+ "to make 1 Apple Juice for you.");
+ mes("Would you like to proceed?");
next;
switch (select("Yes", "No")) {
case 1:
if (countitem(Apple) < 3 || countitem(Empty_Bottle) < 1) {
- mes "[Fruitz]";
- mes "I'm sorry, but you don't";
- mes "have enough materials to";
- mes "create a bottle of Apple Juice.";
- mes "Remember, I need 3 Apples";
- mes "and 1 Empty Bottle to do it.";
+ mes("[Fruitz]");
+ mes("I'm sorry, but you don't\r"
+ "have enough materials to\r"
+ "create a bottle of Apple Juice.");
+ mes("Remember, I need 3 Apples\r"
+ "and 1 Empty Bottle to do it.");
close;
}
else {
- mes "[Fruitz]";
- mes "Thank you,";
- mes "please wait";
- mes "just a moment.";
+ mes("[Fruitz]");
+ mes("Thank you,\r"
+ "please wait\r"
+ "just a moment.");
next;
- mes "^3355FF*Grind grind*";
- mes "*Grind grind*";
- mes "*Clang...!*^000000";
+ mes("^3355FF*Grind grind*");
+ mes("*Grind grind*");
+ mes("*Clang...!*^000000");
next;
delitem Apple,3;
delitem Empty_Bottle,1;
getitem Apple_Juice,1;
- mes "[Fruitz]";
- mes "There you go~";
- mes "I hope you enjoy!";
- mes "Please feel free to";
- mes "stop by for your Apple";
- mes "and Apple Juice needs";
- mes "at anytime, adventurer~";
+ mes("[Fruitz]");
+ mes("There you go~");
+ mes("I hope you enjoy!");
+ mes("Please feel free to\r"
+ "stop by for your Apple\r"
+ "and Apple Juice needs\r"
+ "at anytime, adventurer~");
close;
}
case 2:
- mes "[Fruitz]";
- mes "Thanks for stopping";
- mes "by my shop. Farewell!";
- mes "Come by anytime when";
- mes "you feel like having an";
- mes "Apple to snack on~";
+ mes("[Fruitz]");
+ mes("Thanks for stopping\r"
+ "by my shop. Farewell!");
+ mes("Come by anytime when\r"
+ "you feel like having an\r"
+ "Apple to snack on~");
close;
}
case 3:
- mes "[Fruitz]";
- mes "I used to be a wandering";
- mes "vagabond when, one day,";
- mes "I took a nap and something";
- mes "struck my head and awoke";
- mes "me from my restful slumber.";
+ mes("[Fruitz]");
+ mes("I used to be a wandering\r"
+ "vagabond when, one day,\r"
+ "I took a nap and something\r"
+ "struck my head and awoke\r"
+ "me from my restful slumber.");
next;
- mes "[Fruitz]";
- mes "It turns out that I was";
- mes "sleeping beneath an apple";
- mes "tree and that an apple fell";
- mes "and hit me on the head.";
- mes "I was dying of hunger and";
- mes "was about to eat that Apple...";
+ mes("[Fruitz]");
+ mes("It turns out that I was\r"
+ "sleeping beneath an apple\r"
+ "tree and that an apple fell\r"
+ "and hit me on the head.");
+ mes("I was dying of hunger and\r"
+ "was about to eat that Apple...");
next;
- mes "[Fruitz]";
- mes "But suddenly, Kain, my old";
- mes "friend from the mining days,";
- mes "asked me to help him around";
- mes "on the Airship. So I did, and";
- mes "it was there where I found some";
- mes "people playing the Dice game.";
+ mes("[Fruitz]");
+ mes("But suddenly, Kain, my old\r"
+ "friend from the mining days,\r"
+ "asked me to help him around\r"
+ "on the Airship. So I did, and\r"
+ "it was there where I found some\r"
+ "people playing the Dice game.");
next;
- mes "[Fruitz]";
- mes "I was bored and curious";
- mes "and ended up wagering that";
- mes "single Apple in a game of";
- mes "dice. But for some reason,";
- mes "I had this incredible lucky";
- mes "streak. One apple became two... ";
+ mes("[Fruitz]");
+ mes("I was bored and curious\r"
+ "and ended up wagering that\r"
+ "single Apple in a game of\r"
+ "dice. But for some reason,\r"
+ "I had this incredible lucky\r"
+ "streak. One apple became two...");
next;
- mes "[Fruitz]";
- mes "Two became four and";
- mes "before I knew it, I had";
- mes "cornered the Apple market!";
- mes "I won so many Apples, I just";
- mes "started my own business here";
- mes "on the Airship. Weird, huh?";
+ mes("[Fruitz]");
+ mes("Two became four and\r"
+ "before I knew it, I had\r"
+ "cornered the Apple market!");
+ mes("I won so many Apples, I just\r"
+ "started my own business here\r"
+ "on the Airship. Weird, huh?");
next;
- mes "[Fruitz]";
- mes "So Apples are good";
- mes "for you. They were";
- mes "certainly very good";
- mes "to me. Hahahahaah~!";
+ mes("[Fruitz]");
+ mes("So Apples are good\r"
+ "for you. They were\r"
+ "certainly very good\r"
+ "to me. Hahahahaah~!");
close;
case 4:
- mes "[Fruitz]";
- mes "Thank you for";
- mes "using my shop.";
- mes "Farewell~";
+ mes("[Fruitz]");
+ mes("Thank you for\r"
+ "using my shop.");
+ mes("Farewell~");
close;
}
}
@@ -700,64 +698,64 @@ OnEnable:
initnpctimer;
end;
OnTimer25000:
- mapannounce "airplane_01","We are heading to Izlude.",bc_map,"0x00ff00";
+ mapannounce("airplane_01", _("We are heading to Izlude."), bc_map, "0x00ff00");
end;
OnTimer50000:
- mapannounce "airplane_01","We will arrive in Izlude shortly.",bc_map,"0x00ff00";
+ mapannounce("airplane_01", _("We will arrive in Izlude shortly."), bc_map, "0x00ff00");
end;
OnTimer60000:
$@airplanelocation2 = 1;
donpcevent "#AirshipWarp-3::OnUnhide";
donpcevent "#AirshipWarp-4::OnUnhide";
- mapannounce "airplane_01","Welcome to Izlude. Have a safe trip.",bc_map,"0x00ff00";
+ mapannounce("airplane_01", _("Welcome to Izlude. Have a safe trip."), bc_map, "0x00ff00");
end;
OnTimer70000:
- mapannounce "airplane_01","We are currently in Izlude. The Airship will take off shortly.",bc_map,"0x00ff00";
+ mapannounce("airplane_01", _("We are currently in Izlude. The Airship will take off shortly."), bc_map, "0x00ff00");
end;
OnTimer80000:
donpcevent "#AirshipWarp-3::OnHide";
donpcevent "#AirshipWarp-4::OnHide";
- mapannounce "airplane_01","The Airship is now taking off. Our next destination is Juno.",bc_map,"0x70dbdb";
+ mapannounce("airplane_01", _("The Airship is now taking off. Our next destination is Juno."), bc_map, "0x70dbdb");
end;
OnTimer105000:
- mapannounce "airplane_01","We are heading to Juno.",bc_map,"0x70dbdb";
+ mapannounce("airplane_01", _("We are heading to Juno."), bc_map, "0x70dbdb");
end;
OnTimer130000:
- mapannounce "airplane_01","We will arrive in Juno shortly.",bc_map,"0x70dbdb";
+ mapannounce("airplane_01", _("We will arrive in Juno shortly."), bc_map, "0x70dbdb");
end;
OnTimer140000:
$@airplanelocation2 = 2;
donpcevent "#AirshipWarp-3::OnUnhide";
donpcevent "#AirshipWarp-4::OnUnhide";
- mapannounce "airplane_01","Welcome to Juno. Have a safe trip.",bc_map,"0x70dbdb";
+ mapannounce("airplane_01", _("Welcome to Juno. Have a safe trip."), bc_map, "0x70dbdb");
end;
OnTimer150000:
- mapannounce "airplane_01","We are currently in Juno. The Airship will leave shortly.",bc_map,"0x70dbdb";
+ mapannounce("airplane_01", _("We are currently in Juno. The Airship will leave shortly."), bc_map, "0x70dbdb");
end;
OnTimer160000:
donpcevent "#AirshipWarp-3::OnHide";
donpcevent "#AirshipWarp-4::OnHide";
- mapannounce "airplane_01","The Airship is leaving the ground. Our next destination is Rachel.",bc_map,"0xFF8200";
+ mapannounce("airplane_01", _("The Airship is leaving the ground. Our next destination is Rachel."), bc_map, "0xFF8200");
end;
OnTimer185000:
- mapannounce "airplane_01","We are heading to Rachel.",bc_map,"0xFF8200";
+ mapannounce("airplane_01", _("We are heading to Rachel."), bc_map, "0xFF8200");
end;
OnTimer210000:
- mapannounce "airplane_01","We will arrive in Rachel shortly.",bc_map,"0xFF8200";
+ mapannounce("airplane_01", _("We will arrive in Rachel shortly."), bc_map, "0xFF8200");
end;
OnTimer220000:
$@airplanelocation2 = 0;
donpcevent "#AirshipWarp-3::OnUnhide";
donpcevent "#AirshipWarp-4::OnUnhide";
- mapannounce "airplane_01","Welcome to Rachel. Have a safe trip.",bc_map,"0xFF8200";
+ mapannounce("airplane_01", _("Welcome to Rachel. Have a safe trip."), bc_map, "0xFF8200");
end;
OnTimer230000:
- mapannounce "airplane_01","We are currently in Rachel. The Airship will take off shortly.",bc_map,"0xFF8200";
+ mapannounce("airplane_01", _("We are currently in Rachel. The Airship will take off shortly."), bc_map, "0xFF8200");
end;
OnTimer240000:
donpcevent "#AirshipWarp-3::OnHide";
donpcevent "#AirshipWarp-4::OnHide";
- mapannounce "airplane_01","The Airship is now taking off. Our next destination is Izlude.",bc_map,"0x00ff00";
+ mapannounce("airplane_01", _("The Airship is now taking off. Our next destination is Izlude."), bc_map, "0x00ff00");
stopnpctimer;
++.moninv;
if (.moninv == 7) {
@@ -779,196 +777,197 @@ airplane_01,240,40,1 duplicate(ExitAirplane01) Exit#airplane_012a 4_BOARD3
airplane_01,247,40,1 duplicate(ExitAirplane01) Exit#airplane_012b 4_BOARD3
airplane_01,250,58,2 script Airship Staff#airplane01 1_F_02,{
- mes "[Airship Staff]";
- mes "Welcome";
- mes "to the Airship.";
- mes "How may I help you?";
+ mes("[Airship Staff]");
+ mes("Welcome\r"
+ "to the Airship.");
+ mes("How may I help you?");
next;
switch (select("Using the Airship", "Captain's Cabin", "Facilities", "Cancel")) {
case 1:
- mes "[Airship Staff]";
- mes "When you see a broadcast";
- mes "announcing that we have";
- mes "arrived at your destination,";
- mes "please use one of the exits";
- mes "located at the north and";
- mes "south ends of the Airship.";
+ mes("[Airship Staff]");
+ mes("When you see a broadcast\r"
+ "announcing that we have\r"
+ "arrived at your destination,\r"
+ "please use one of the exits\r"
+ "located at the north and\r"
+ "south ends of the Airship.");
next;
- mes "[Airship Staff]";
- mes "If you happen to miss";
- mes "your stop, don't worry.";
- mes "The Airship is constantly";
- mes "en route and you'll get";
- mes "another chance to arrive";
- mes "to your intended destination.";
+ mes("[Airship Staff]");
+ mes("If you happen to miss\r"
+ "your stop, don't worry.");
+ mes("The Airship is constantly\r"
+ "en route and you'll get\r"
+ "another chance to arrive\r"
+ "to your intended destination.");
close;
case 2:
- mes "[Airship Staff]";
- mes "The Captain's Cabin";
- mes "is located at the front";
- mes "of the Airship. There, you";
- mes "can meet the captain and";
- mes "the pilot of the Airship.";
+ mes("[Airship Staff]");
+ mes("The Captain's Cabin\r"
+ "is located at the front\r"
+ "of the Airship. There, you\r"
+ "can meet the captain and\r"
+ "the pilot of the Airship.");
close;
case 3:
- mes "[Airship Staff]";
- mes "The Airship provides";
- mes "various Mini Games for";
- mes "the entertainment of all";
- mes "our passengers. We invite";
- mes "you to try your luck and skills";
- mes "in the Airship's Mini Games~";
+ mes("[Airship Staff]");
+ mes("The Airship provides\r"
+ "various Mini Games for\r"
+ "the entertainment of all\r"
+ "our passengers. We invite\r"
+ "you to try your luck and skills\r"
+ "in the Airship's Mini Games~");
close;
case 4:
- mes "[Airship Staff]";
- mes "Well, I hope you";
- mes "your flight aboard";
- mes "our Airships. Thank";
- mes "you and have a good day.";
+ mes("[Airship Staff]");
+ mes("Well, I hope you\r"
+ "your flight aboard\r"
+ "our Airships. Thank\r"
+ "you and have a good day.");
close;
}
}
airplane_01,50,66,5 script Apple Merchant#air01 4_M_04,{
if (checkweight(Knife,1) == 0) {
- mes "- Wait a minute !! -";
- mes "- Currently you're carrying -";
- mes "- too many items with you. -";
- mes "- Please try again -";
- mes "- after you loose some weight. -";
+ mes("- Wait a minute !! -");
+ mes("- Currently you're carrying -");
+ mes("- too many items with you. -");
+ mes("- Please try again -");
+ mes("- after you loose some weight. -");
close;
}
- mes "[Meltz]";
- mes "Welcome to Meltz's";
- mes "Shop where you can";
- mes "purchase Apples or grind";
- mes "them to make Apple Juice.";
+ mes("[Meltz]");
+ mes("Welcome to Meltz's\r"
+ "Shop where you can\r"
+ "purchase Apples or grind\r"
+ "them to make Apple Juice.");
next;
switch (select("Buy Apples.", "Make Apple Juice.", "Cancel.")) {
case 1:
- mes "[Meltz]";
- mes "Please enter the amount";
- mes "of Apples that you wish to";
- mes "buy. Each Apple is 15 zeny";
- mes "and you can buy a maximum";
- mes "of 500 at a time. Please enter";
- mes "'0' to cancel your order.";
+ mes("[Meltz]");
+ mes("Please enter the amount\r"
+ "of Apples that you wish to\r"
+ "buy. Each Apple is 15 zeny\r"
+ "and you can buy a maximum\r"
+ "of 500 at a time. Please enter\r"
+ "'0' to cancel your order.");
next;
while (1) {
input .@input;
.@pay = .@input * 15;
if (.@input == 0) {
- mes "[Meltz]";
- mes "Thanks for stopping";
- mes "by my shop. Farewell!";
- mes "Come by anytime when";
- mes "you feel like having an";
- mes "Apple to snack on~";
+ mes("[Meltz]");
+ mes("Thanks for stopping\r"
+ "by my shop. Farewell!");
+ mes("Come by anytime when\r"
+ "you feel like having an\r"
+ "Apple to snack on~");
close;
}
else if (.@input < 1 || .@input > 500) {
- mes "[Meltz]";
- mes "You've entered a number";
- mes "higher than the maximum";
- mes "value of 500. Please enter";
- mes "the number of Apples you";
- mes "wish to purchase again.";
+ mes("[Meltz]");
+ mes("You've entered a number\r"
+ "higher than the maximum\r"
+ "value of 500. Please enter\r"
+ "the number of Apples you\r"
+ "wish to purchase again.");
next;
}
else {
- mes "[Meltz]";
- mes "A total of ^FF0000" + .@input + "^000000 Apples";
- mes "will cost you ^FF0000" + .@pay + "^000000 zeny.";
- mes "Would you like to continue?";
+ mes("[Meltz]");
+ mesf("A total of ^FF0000%d^000000 Apples\r"
+ "will cost you ^FF0000%d Zeny^000000.",
+ .@input, .@pay);
+ mes("Would you like to continue?");
next;
if (select("Yes", "No") == 2) {
- mes "[Meltz]";
- mes "Thanks for stopping";
- mes "by my shop. Farewell!";
- mes "Come by anytime when";
- mes "you feel like having an";
- mes "Apple to snack on~";
+ mes("[Meltz]");
+ mes("Thanks for stopping\r"
+ "by my shop. Farewell!");
+ mes("Come by anytime when\r"
+ "you feel like having an\r"
+ "Apple to snack on~");
close;
}
break;
}
}
if (Zeny < .@pay) {
- mes "[Meltz]";
- mes "I'm sorry, you don't have";
- mes "enough money with you.";
- mes "Please check your funds or";
- mes "purchase less Apples.";
+ mes("[Meltz]");
+ mes("I'm sorry, you don't have\r"
+ "enough money with you.");
+ mes("Please check your funds or\r"
+ "purchase less Apples.");
close;
}
else if (checkweight(Apple,.@input) == 0) {
- mes "[Meltz]";
- mes "Hmm, I don't think you've";
- mes "got enough room to carry";
- mes "this many Apples. You might";
- mes "want to free up your inventory";
- mes "space.";
+ mes("[Meltz]");
+ mes("Hmm, I don't think you've\r"
+ "got enough room to carry\r"
+ "this many Apples. You might\r"
+ "want to free up your inventory\r"
+ "space.");
close;
}
else {
Zeny -= .@pay;
getitem Apple,.@input;
- mes "[Meltz]";
- mes "Thanks for stopping by";
- mes "my shop. I hope you enjoy";
- mes "the flavor of these Apples~!";
+ mes("[Meltz]");
+ mes("Thanks for stopping by\r"
+ "my shop. I hope you enjoy\r"
+ "the flavor of these Apples~!");
close;
}
case 2:
- mes "[Meltz]";
- mes "Okay, I'll need";
- mes "^FF00003 Apples and 1 Empty Bottle^000000";
- mes "to make 1 Apple Juice for you.";
- mes "Would you like to proceed?";
+ mes("[Meltz]");
+ mes("Okay, I'll need\r"
+ "^FF00003 Apples and 1 Empty Bottle^000000\r"
+ "to make 1 Apple Juice for you.");
+ mes("Would you like to proceed?");
next;
switch (select("Yes", "No")) {
case 1:
if (countitem(Apple) < 3 || countitem(Empty_Bottle) < 1) {
- mes "[Meltz]";
- mes "I'm sorry, but you don't";
- mes "have enough materials to";
- mes "create a bottle of Apple Juice.";
- mes "Remember, I need 3 Apples";
- mes "and 1 Empty Bottle to do it.";
+ mes("[Meltz]");
+ mes("I'm sorry, but you don't\r"
+ "have enough materials to\r"
+ "create a bottle of Apple Juice.");
+ mes("Remember, I need 3 Apples\r"
+ "and 1 Empty Bottle to do it.");
close;
}
else {
- mes "[Meltz]";
- mes "Thank you, please wait.";
+ mes("[Meltz]");
+ mes("Thank you, please wait.");
next;
- mes "^3355FF*Grind* *Grind*";
- mes "*Grind* *Grind*";
- mes "*Clang...!*^000000";
+ mes("^3355FF*Grind* *Grind*");
+ mes("*Grind* *Grind*");
+ mes("*Clang...!*^000000");
next;
delitem Apple,3;
delitem Empty_Bottle,1;
getitem Apple_Juice,1;
- mes "[Meltz]";
- mes "There you go~";
- mes "Please come again.";
+ mes("[Meltz]");
+ mes("There you go~");
+ mes("Please come again.");
close;
}
case 2:
- mes "[Meltz]";
- mes "Thanks for stopping";
- mes "by my shop. Farewell!";
- mes "Come by anytime when";
- mes "you feel like having an";
- mes "Apple to snack on~";
+ mes("[Meltz]");
+ mes("Thanks for stopping\r"
+ "by my shop. Farewell!");
+ mes("Come by anytime when\r"
+ "you feel like having an\r"
+ "Apple to snack on~");
close;
}
case 3:
- mes "[Meltz]";
- mes "Thanks for stopping";
- mes "by my shop. Farewell!";
- mes "Come by anytime when";
- mes "you feel like having an";
- mes "Apple to snack on~";
+ mes("[Meltz]");
+ mes("Thanks for stopping\r"
+ "by my shop. Farewell!");
+ mes("Come by anytime when\r"
+ "you feel like having an\r"
+ "Apple to snack on~");
close;
}
}
@@ -976,67 +975,67 @@ airplane_01,50,66,5 script Apple Merchant#air01 4_M_04,{
airplane_01,221,158,2 script Pilot#airplane_01 4_M_EIN_SOLDIER,{
switch (rand(1,4)) {
case 1:
- mes "[Pilot]";
- mes "Longitude, 131 degrees east.";
- mes "Latitude, 37 degrees north.";
- mes "We're right on course, captain.";
+ mes("[Pilot]");
+ mes("Longitude, 131 degrees east.");
+ mes("Latitude, 37 degrees north.");
+ mes("We're right on course, captain.");
close;
case 2:
- mes "[Pilot]";
- mes "Looks like a really";
- mes "cloudy day. Always hard";
- mes "to navigate when the skies";
- mes "aren't clear. Guess we'll";
- mes "need to amp the radar.";
+ mes("[Pilot]");
+ mes("Looks like a really\r"
+ "cloudy day. Always hard\r"
+ "to navigate when the skies\r"
+ "aren't clear. Guess we'll\r"
+ "need to amp the radar.");
close;
case 3:
- mes "[Pilot]";
- mes "The Captain is a good";
- mes "man and I can't think of";
- mes "a finer person to command";
- mes "this ship. Still, he's pretty";
- mes "tough, a real slave driver.";
+ mes("[Pilot]");
+ mes("The Captain is a good\r"
+ "man and I can't think of\r"
+ "a finer person to command\r"
+ "this ship. Still, he's pretty\r"
+ "tough, a real slave driver.");
next;
- mes "[^ff0000Tarlock^000000]";
- mes "^ff0000Hey...!^000000";
- mes "^ff0000Less chit-chat^000000";
- mes "^ff0000and more piloting!^000000";
+ mes("[^ff0000Tarlock^000000]");
+ mes("^ff0000Hey...!^000000");
+ mes("^ff0000Less chit-chat^000000");
+ mes("^ff0000and more piloting!^000000");
next;
- mes "[Pilot]";
- mes "R-right away, sir!";
- mes "(See what I mean?)";
+ mes("[Pilot]");
+ mes("R-right away, sir!");
+ mes("(See what I mean?)");
close;
default:
- mes "[Pilot]";
- mes "This uniform is";
- mes "really dapper, but";
- mes "it's way too thick to";
- mes "wear around the Airship.";
+ mes("[Pilot]");
+ mes("This uniform is\r"
+ "really dapper, but\r"
+ "it's way too thick to\r"
+ "wear around the Airship.");
next;
- mes "[Pilot]";
- mes "...";
- mes "......";
- mes "No one ever really";
- mes "comes into this room.";
- mes "And the captain IS a reindeer.";
- mes "I could just strip to my boxers.";
+ mes("[Pilot]");
+ mes("...");
+ mes("......");
+ mes("No one ever really\r"
+ "comes into this room.");
+ mes("And the captain IS a reindeer.");
+ mes("I could just strip to my boxers.");
next;
emotion e_omg;
- mes "[Pilot]";
- mes "Oh...! Hello there!";
- mes "E-e-enjoying your flight?!";
+ mes("[Pilot]");
+ mes("Oh...! Hello there!");
+ mes("E-e-enjoying your flight?!");
close;
}
}
airplane_01,83,61,2 script Dianne#01airplane_01 1_F_MARIA,2,2,{
- mes "[Dianne]";
- mes "It's so weird!";
- mes "I went to visit the";
- mes "Airship Captain and";
- mes "all I saw was this";
- mes "weird reindeer. Oh!";
- mes "Do you think that...";
+ mes("[Dianne]");
+ mes("It's so weird!");
+ mes("I went to visit the\r"
+ "Airship Captain and\r"
+ "all I saw was this\r"
+ "weird reindeer. Oh!");
+ mes("Do you think that...");
close;
OnTouch:
@@ -1045,48 +1044,48 @@ OnTouch:
}
airplane_01,69,63,2 script Mendel#01airplane_01 1_M_JOBTESTER,{
- mes "[Mendel]";
- mes "As I expected, the";
- mes "in-flight meals are";
- mes "three star quality at best.";
- mes "*Harrrumph* I really should";
- mes "have brought my chef so that";
- mes "I could enjoy a real meal.";
+ mes("[Mendel]");
+ mes("As I expected, the\r"
+ "in-flight meals are\r"
+ "three star quality at best.");
+ mes("*Harrrumph* I really should\r"
+ "have brought my chef so that\r"
+ "I could enjoy a real meal.");
close;
}
airplane_01,71,31,2 script Swordsman Shimizu#air_01 1_M_MOC_LORD,{
- mes "[Swordsman Shimizu]";
- mes "Finally, after five";
- mes "years of waiting...";
- mes "I can have my revenge!";
+ mes("[Swordsman Shimizu]");
+ mes("Finally, after five\r"
+ "years of waiting...");
+ mes("I can have my revenge!");
next;
- mes "[Swordsman Shimizu]";
- mes "I just...";
- mes "Have to make sure that";
- mes "I don't keep missing my";
- mes "stop. But soon, very soon,";
- mes "vengeance will be mine!";
+ mes("[Swordsman Shimizu]");
+ mes("I just...");
+ mes("Have to make sure that\r"
+ "I don't keep missing my\r"
+ "stop. But soon, very soon,\r"
+ "vengeance will be mine!");
close;
}
//=== Typing Challenge =====================================
airplane_01,32,61,4 script Nils#ein 1_M_03,1,1,{
- mes "[Nils]";
- mes "Welcome to the";
- mes "^ff0000RO Typing Challenge^000000.";
- mes "Would you like to play";
- mes "a quick typing game?";
+ mes("[Nils]");
+ mes("Welcome to the\r"
+ "^ff0000RO Typing Challenge^000000.");
+ mes("Would you like to play\r"
+ "a quick typing game?");
next;
switch (select("Play ^ff0000RO Typing Challenge^000000", "Information", "View Top Records", "Cancel")) {
case 1:
- mes "[Nils]";
- mes "Okay, we have";
- mes "a new challenger!";
- mes "Enter the following";
- mes "text as quickly as you";
- mes "can without making any";
- mes "mistakes! Let's start~!";
+ mes("[Nils]");
+ mes("Okay, we have\r"
+ "a new challenger!");
+ mes("Enter the following\r"
+ "text as quickly as you\r"
+ "can without making any\r"
+ "mistakes! Let's start~!");
setarray .@line1_1$[0], "^3cbcbccallipygian salacius lascivious^000000",
"^3cbcbcBy the power of^000000",
"^0000ffthkelfkskeldmsiejdlslehfndkelsheidl^000000",
@@ -1145,18 +1144,18 @@ airplane_01,32,61,4 script Nils#ein 1_M_03,1,1,{
1450;
.@wordtest = rand(7);
next;
- mes "[Nils]";
- mes .@line1_1$[.@wordtest];
- mes .@line1_2$[.@wordtest];
- mes .@line1_3$[.@wordtest];
+ mes("[Nils]");
+ mes(.@line1_1$[.@wordtest]);
+ mes(.@line1_2$[.@wordtest]);
+ mes(.@line1_3$[.@wordtest]);
.@start_time = gettime(GETTIME_HOUR)*60*60 + gettime(GETTIME_MINUTE)*60 + gettime(GETTIME_SECOND);
next;
input .@save1$;
.@end_time = gettime(GETTIME_HOUR)*60*60 + gettime(GETTIME_MINUTE)*60 + gettime(GETTIME_SECOND);
.@total_time = .@end_time - .@start_time;
- mes "[Nils]";
- mes .@line2_1$[.@wordtest];
- mes .@line2_2$[.@wordtest];
+ mes("[Nils]");
+ mes(.@line2_1$[.@wordtest]);
+ mes(.@line2_2$[.@wordtest]);
.@start_time = gettime(GETTIME_HOUR)*60*60 + gettime(GETTIME_MINUTE)*60 + gettime(GETTIME_SECOND);
next;
input .@save2$;
@@ -1164,229 +1163,236 @@ airplane_01,32,61,4 script Nils#ein 1_M_03,1,1,{
.@total_time = .@total_time + (.@start_time - .@end_time);
.@tasoo = (.@letters[.@wordtest] / .@total_time) * 6;
if ((.@save1$ == .@word1$[.@wordtest]) && (.@save2$ == .@word2$[.@wordtest])) {
- mes "[Nils]";
- mes "Your record is ^ff0000" + .@total_time + " seconds^000000 and";
- mes "the total letters are " + .@tasoo + ".";
+ mes("[Nils]");
+ mesf("Your record is ^ff0000%d seconds^000000 and\r"
+ "the total letters are %d.",
+ .@total_time, .@tasoo);
next;
if (.@tasoo >= 1300) {
- mes "[Nils]";
- mes "Hmmm, this record isn't";
- mes "humanly possible unless you";
- mes "copy and paste the whole";
- mes "sentence. Please play fairly";
- mes "next time.";
+ mes("[Nils]");
+ mes("Hmmm, this record isn't\r"
+ "humanly possible unless you\r"
+ "copy and paste the whole\r"
+ "sentence. Please play fairly\r"
+ "next time.");
close;
}
if (.@tasoo >= $050320_ein_typing) {
- mes "[Nils]";
- mes "The previous top record was";
- mes "made by ^0000ff" + $050320_minus1_typing$ + "^000000";
- mes "with the total ^0000ff" + $050320_ein_typing + "^000000 letters.";
- mes "However, ^ff0000" + strcharinfo(0) + "^000000,";
- mes "you made the new top record";
- mes "this time. Congratulations!";
+ mes("[Nils]");
+ mesf("The previous top record was\r"
+ "made by ^0000ff%s^000000\r"
+ "with the total ^0000ff%d^000000 letters.",
+ $050320_minus1_typing$, $050320_ein_typing);
+ mesf("However, ^ff0000%s^000000,\r"
+ "you made the new top record\r"
+ "this time. Congratulations!",
+ strcharinfo(0));
$050320_minus1_typing$ = strcharinfo(0);
$050320_ein_typing = .@tasoo;
close;
}
else {
- mes "[Nils]";
- mes "^0000ff" + $050320_minus1_typing$ + "^000000";
- mes "is the current";
- mes "record holder with";
- mes "a letter total of ^0000ff" + $050320_ein_typing + "^000000";
- mes "characters. Try to beat";
- mes "that record next time~";
+ mes("[Nils]");
+ mesf("^0000ff%s^000000\r"
+ "is the current\r"
+ "record holder with\r"
+ "a letter total of ^0000ff%d^000000\r"
+ "characters. Try to beat\r"
+ "that record next time~",
+ $050320_minus1_typing$, $050320_ein_typing);
close;
}
}
else {
- mes "[Nils]";
- mes "Oooh...";
- mes "I'm sorry, but";
- mes "you entered the";
- mes "text incorrectly...";
+ mes("[Nils]");
+ mes("Oooh...");
+ mes("I'm sorry, but\r"
+ "you entered the\r"
+ "text incorrectly...");
close;
}
case 2:
- mes "[Nils]";
- mes "The ^ff0000RO Typing Challenge^000000";
- mes "is a game where you enter";
- mes "the given text as quickly as you";
- mes "can. The name of the top player";
- mes "is recorded for posterity. If you";
- mes "want fame, here's your chance!";
+ mes("[Nils]");
+ mes("The ^ff0000RO Typing Challenge^000000\r"
+ "is a game where you enter\r"
+ "the given text as quickly as you\r"
+ "can. The name of the top player\r"
+ "is recorded for posterity. If you\r"
+ "want fame, here's your chance!");
next;
- mes "[Nils]";
- mes "I'd just like to let";
- mes "you know that you type";
- mes "all the text that you see";
- mes "in the single input line that";
- mes "you're given. So don't press";
- mes "the enter key, just click 'OK.'";
+ mes("[Nils]");
+ mes("I'd just like to let\r"
+ "you know that you type\r"
+ "all the text that you see\r"
+ "in the single input line that\r"
+ "you're given. So don't press\r"
+ "the enter key, just click 'OK.'");
close;
case 3:
- mes "[Nils]";
- mes "^0000ff" + $050320_minus1_typing$ + "^000000";
- mes "is the current";
- mes "record holder with";
- mes "a letter total of ^0000ff" + $050320_ein_typing + "^000000";
- mes "characters. Try to beat";
- mes "that record next time~";
+ mes("[Nils]");
+ mesf("^0000ff%s^000000\r"
+ "is the current\r"
+ "record holder with\r"
+ "a letter total of ^0000ff%d^000000\r"
+ "characters. Try to beat\r"
+ "that record next time~",
+ $050320_minus1_typing$, $050320_ein_typing);
close;
case 4:
- mes "[Nils]";
- mes "Feel free to take on the";
- mes "^ff0000RO Typing Challenge^000000";
- mes "anytime. I'll be here~";
+ mes("[Nils]");
+ mes("Feel free to take on the\r"
+ "^ff0000RO Typing Challenge^000000\r"
+ "anytime. I'll be here~");
close;
}
}
//== Apple Gambling ========================================
airplane_01,33,68,4 script Clarice 1_F_MERCHANT_02,{
- mes "[Clarice]";
- mes "Hi, I'm Clarice~";
- mes "How would you like";
- mes "to wager some Apples";
- mes "in a friendly game of Dice?";
+ mes("[Clarice]");
+ mes("Hi, I'm Clarice~");
+ mes("How would you like\r"
+ "to wager some Apples\r"
+ "in a friendly game of Dice?");
next;
- callfunc "applegamble","Clarice";
+ callfunc("applegamble", _("Clarice"));
end;
}
function script applegamble {
-
+ .@n$ = sprintf(_$("[%s]"), getarg(0));
switch (select("Play Dice Game", "Learn Dice Game Rules", "Cancel")) {
case 3:
- mes "["+getarg(0)+"]";
- mes "I'm up for a game of";
- mes "dice whenever you feel";
- mes "like it. Just talk to me if";
- mes "you ever get hit with the";
- mes "sudden urge to gamble, kay?";
+ mes(.@n$);
+ mes("I'm up for a game of\r"
+ "dice whenever you feel\r"
+ "like it. Just talk to me if\r"
+ "you ever get hit with the\r"
+ "sudden urge to gamble, kay?");
close;
case 2:
- mes "["+getarg(0)+"]";
- mes "The rules for the Dice game";
- mes "are pretty simple. First, you";
- mes "place a bet by wagering Apples.";
- mes "You can bet a maximum of 50";
- mes "Apples at a time. To keep things";
- mes "legal, I can only accept Apples.";
+ mes(.@n$);
+ mes("The rules for the Dice game\r"
+ "are pretty simple. First, you\r"
+ "place a bet by wagering Apples.");
+ mes("You can bet a maximum of 50\r"
+ "Apples at a time. To keep things\r"
+ "legal, I can only accept Apples.");
next;
- mes "["+getarg(0)+"]";
- mes "But hey, if all that zeny";
- mes "is burning a hole in your";
- mes "pocket, head over to Fruitz";
- mes "and you can buy as many";
- mes "Apples as you want, playah~";
+ mes(.@n$);
+ mes("But hey, if all that zeny\r"
+ "is burning a hole in your\r"
+ "pocket, head over to Fruitz\r"
+ "and you can buy as many\r"
+ "Apples as you want, playah~");
next;
- mes "["+getarg(0)+"]";
- mes "Now, we begin with me";
- mes "rolling two 6-sided dice.";
- mes "When it's your turn, you'll";
- mes "roll two 6-sided dice. After";
- mes "that, both of us will have the";
- mes "option of rolling a third die.";
+ mes(.@n$);
+ mes("Now, we begin with me\r"
+ "rolling two 6-sided dice.");
+ mes("When it's your turn, you'll\r"
+ "roll two 6-sided dice. After\r"
+ "that, both of us will have the\r"
+ "option of rolling a third die.");
next;
- mes "["+getarg(0)+"]";
- mes "Now here's the important";
- mes "thing. If your total is higher";
- mes "than 12, you'll bust, meaning";
- mes "that you lose. Otherwise, the";
- mes "person with the higher total";
- mes "is the winner. Got it?";
+ mes(.@n$);
+ mes("Now here's the important\r"
+ "thing. If your total is higher\r"
+ "than 12, you'll bust, meaning\r"
+ "that you lose. Otherwise, the\r"
+ "person with the higher total\r"
+ "is the winner. Got it?");
next;
- mes "["+getarg(0)+"]";
- mes "Now, you'll be the first";
- mes "to decide whether or not";
- mes "you'll roll the third die. Then,";
- mes "depending on your result, I'll";
- mes "roll my third die... Or maybe not.";
+ mes(.@n$);
+ mes("Now, you'll be the first\r"
+ "to decide whether or not\r"
+ "you'll roll the third die. Then,\r"
+ "depending on your result, I'll\r"
+ "roll my third die... Or maybe not.");
next;
- mes "["+getarg(0)+"]";
- mes "When you win, you'll";
- mes "receive twice as many";
- mes "Apples as you wagered.";
- mes "But if we happen to tie, you";
- mes "get the Apples that you bet";
- mes "returned to you. Fair, right?";
+ mes(.@n$);
+ mes("When you win, you'll\r"
+ "receive twice as many\r"
+ "Apples as you wagered.");
+ mes("But if we happen to tie, you\r"
+ "get the Apples that you bet\r"
+ "returned to you. Fair, right?");
close;
case 1:
break;
}
- mes "["+getarg(0)+"]";
- mes "Ooh, so you'll play with";
- mes "me? Great! How many";
- mes "Apples would you like to bet?";
- mes "Remember, you can wager";
- mes "up to 50 Apples. If you'd like";
- mes "to cancel, please enter '0'.";
+ mes(.@n$);
+ mes("Ooh, so you'll play with\r"
+ "me? Great! How many\r"
+ "Apples would you like to bet?");
+ mes("Remember, you can wager\r"
+ "up to 50 Apples. If you'd like\r"
+ "to cancel, please enter '0'.");
next;
while(1) {
input .@amount;
if (.@amount == 0) {
- mes "["+getarg(0)+"]";
- mes "Changed your mind?";
- mes "I understand. Well then,";
- mes "I hope we can play sometime.";
+ mes(.@n$);
+ mes("Changed your mind?");
+ mes("I understand. Well then,\r"
+ "I hope we can play sometime.");
close;
}
else if (.@amount < 1 || .@amount > 50) {
- mes "["+getarg(0)+"]";
- mes "You can't bet more than";
- mes "50 Apples. Remember, we";
- mes "need to keep these stakes";
- mes "reasonable. Please enter";
- mes "a value no greater than 50.";
+ mes(.@n$);
+ mes("You can't bet more than\r"
+ "50 Apples. Remember, we\r"
+ "need to keep these stakes\r"
+ "reasonable. Please enter\r"
+ "a value no greater than 50.");
next;
continue;
}
- mes "["+getarg(0)+"]";
- mes "So you'll be";
- mes "betting ^FF0000"+.@amount+"^000000 Apples.";
- mes "Is that right?";
+ mes(.@n$);
+ mesf("So you'll be\r"
+ "betting ^FF0000%d^000000 Apples.",
+ .@amount);
+ mes("Is that right?");
next;
if (select("Yes", "No") == 2) {
- mes "["+getarg(0)+"]";
- mes "Mm, made a mistake?";
- mes "Alright, please enter the";
- mes "number of Apples you";
- mes "wish to place in this bet";
+ mes(.@n$);
+ mes("Mm, made a mistake?");
+ mes("Alright, please enter the\r"
+ "number of Apples you\r"
+ "wish to place in this bet");
next;
continue;
}
if (countitem(Apple) <.@amount) {
- mes "I'm sorry, but you";
- mes "don't seem to have";
- mes "enough Apples for this";
- mes "bet... You can't gamble";
- mes "if you can't play, you know.";
+ mes(.@n$);
+ mes("I'm sorry, but you\r"
+ "don't seem to have\r"
+ "enough Apples for this\r"
+ "bet... You can't gamble\r"
+ "if you can't play, you know.");
next;
continue;
}
delitem 512,.@amount;
- mes "["+getarg(0)+"]";
- mes "Good!";
- mes "Now we can start";
- mes "this game! I'll roll first~";
+ mes(.@n$);
+ mes("Good!");
+ mes("Now we can start\r"
+ "this game! I'll roll first~");
break;
}
- mes "^3355FF*Rolling and rumbling*^000000";
+ mes("^3355FF*Rolling and rumbling*^000000");
next;
.@giveapple = .@amount*2;
.@table1 = rand(1,6);
.@table2 = rand(1,6);
.@tablesub = .@table1 + .@table2;
.@tabletotal = .@tablesub;
- mes "["+getarg(0)+"]";
- mes "I got a ^0000FF" + .@table1 + "^000000 and a ^0000FF" + .@table2 + "^000000.";
- mes "That's a total of ^0000FF" + .@tablesub + "^000000.";
- mes "^FF0000" + strcharinfo(0) + "^000000, now it's your turn.";
+ mes(.@n$);
+ mesf("I got a ^0000FF%d^000000 and a ^0000FF%d^000000.", .@table1, .@table2);
+ mesf("That's a total of ^0000FF%d^000000.", .@tablesub);
+ mesf("^FF0000%s^000000, now it's your turn.", strcharinfo(0));
next;
select("Cast Dice.");
- mes "^3355FF*Rolling and rumbling*^000000";
+ mes("^3355FF*Rolling and rumbling*^000000");
.@player1 = rand(1,6);
.@player2 = rand(1,6);
.@playersub = .@player1 + .@player2;
@@ -1397,95 +1403,125 @@ function script applegamble {
}
.@playertotal = .@playersub;
next;
- mes "["+getarg(0)+"]";
- mes "^FF0000" + strcharinfo(0) + "^000000, you have ^FF0000" + .@player1 + "^000000 and ^FF0000" + .@player2 + "^000000. The total is ^FF0000" + .@playersub + "^000000 .";
+ mes(.@n$);
+ mesf("^FF0000%s^000000, you have ^FF0000%d^000000 and ^FF0000%d^000000. The total is ^FF0000%d^000000.",
+ strcharinfo(0), .@player1, .@player2, .@playersub);
next;
- mes "["+getarg(0)+"]";
+ mes(.@n$);
if(.@playersub == .@tablesub) {
- mes "Currently my total is ^0000FF" + .@tablesub + "^000000 and ^FF0000" + strcharinfo(0) + "^000000, your total is ^FF0000" + .@playersub + "^000000. We are making an even game. Would you like to cast dice again?";
+ mesf("Currently my total is ^0000FF%d^000000 and ^FF0000%s^000000, your total is ^FF0000%d^000000. "
+ "We are making an even game. Would you like to cast dice again?",
+ .@tablesub, strcharinfo(0), .@playersub);
} else if (.@playersub > .@tablesub) {
- mes "Currently my total is ^0000FF" + .@tablesub + "^000000 and ^FF0000" + strcharinfo(0) + "^000000, your total is ^FF0000" + .@playersub + "^000000. ^FF0000" + strcharinfo(0) + "^000000, you are currently winning this game. Would you like to cast dice again?";
+ mesf("Currently my total is ^0000FF%d^000000 and ^FF0000%s^000000, your total is ^FF0000%d^000000. "
+ "^FF0000%s^000000, you are currently winning this game. Would you like to cast dice again?",
+ .@tablesub, strcharinfo(0), .@playersub, strcharinfo(0));
} else if(.@tablesub > .@playersub) {
- mes "Currently my total is ^0000FF" + .@tablesub + "^000000 and ^FF0000" + strcharinfo(0) + "^000000, your total is ^FF0000" + .@playersub + "^000000. I am winning this game. Would you like to cast dice again?";
+ mesf("Currently my total is ^0000FF%d^000000 and ^FF0000%s^000000, your total is ^FF0000%d^000000. "
+ "I am winning this game. Would you like to cast dice again?",
+ .@tablesub, strcharinfo(0), .@playersub);
}
next;
switch (select("Cast dice.", "Cancel.")) {
case 1:
- mes "^3355FF*Rolling and rumbling*^000000";
+ mes("^3355FF*Rolling and rumbling*^000000");
.@player3 = rand(1,6);
.@playertotal += .@player3;
next;
- mes "["+getarg(0)+"]";
+ mes(.@n$);
if (.@playertotal > 12) {
- mes "^FF0000" + strcharinfo(0) + "^000000, you got ^FF0000" + .@player3 + "^000000 and the total is now ^FF0000" + .@playertotal + "^000000. You lost this game. I am sorry but please try again.";
+ mesf("^FF0000%s^000000, you got ^FF0000%d^000000 and the total is now ^FF0000%d^000000. "
+ "You lost this game. I am sorry but please try again.",
+ strcharinfo(0), .@player3, .@playertotal);
close;
}
else if (.@playertotal < .@tablesub) {
- mes "^FF0000" + strcharinfo(0) + "^000000, you got ^FF0000" + .@player3 + "^000000 and the total is now ^FF0000" + .@playertotal + "^000000. Even though you casted dice again, still your total is smaller than mine. You lost the game. I am sorry and please try again.";
+ mesf("^FF0000%s^000000, you got ^FF0000%d^000000 and the total is now ^FF0000%d^000000. "
+ "Even though you casted dice again, still your total is smaller than mine. "
+ "You lost the game. I am sorry and please try again.",
+ strcharinfo(0), .@player3, .@playertotal);
close;
}
else if (.@playertotal == .@tablesub) {
if (.@tablesub > 8) {
- mes "^FF0000" + strcharinfo(0) + "^000000, you got ^FF0000" + .@player3 + "^000000 and the total is now ^FF0000" + .@playertotal + "^000000. I don't want to take any risk, let's end this game in a draw. Let's play again some other time~";
+ mesf("^FF0000%s^000000, you got ^FF0000%d^000000 and the total is now ^FF0000%d^000000. "
+ "I don't want to take any risk, let's end this game in a draw. "
+ "Let's play again some other time~",
+ strcharinfo(0), .@player3, .@playertotal);
close2;
getitem Apple,.@amount;
end;
}
}
else {
- mes "^FF0000" + strcharinfo(0) + "^000000, you got ^FF0000" + .@player3 + "^000000 and the total is now ^FF0000" + .@playertotal + "^000000. Now it is my turn.";
+ mesf("^FF0000%s^000000, you got ^FF0000%d^000000 and the total is now ^FF0000%d^000000. "
+ "Now it is my turn.",
+ strcharinfo(0), .@player3, .@playertotal);
}
break;
case 2:
- mes "["+getarg(0)+"]";
+ mes(.@n$);
if (.@playersub > .@tablesub) {
- mes "I see, you don't want to take risk of losing the game. Okay, let me cast dice again.";
+ mes("I see, you don't want to take risk of losing the game. Okay, let me cast dice again.");
}
else if (.@playersub == .@tablesub) {
if (.@tablesub > 8) {
- mes "I see, you don't want to take risk of losing this game. Neither do I, let's end this game in a draw. Let's play again some other time~";
+ mes("I see, you don't want to take risk of losing this game. "
+ "Neither do I, let's end this game in a draw. "
+ "Let's play again some other time~");
close2;
getitem Apple,.@amount;
end;
}
- mes "Alright.";
- mes "Let me cast the dice again.";
+ mes("Alright.");
+ mes("Let me cast the dice again.");
}
else {
- mes "It couldn't hurt to try.";
- mes "Well, I win this time.";
- mes "I'm sorry, let's try play";
- mes "again sometime.";
+ mes("It couldn't hurt to try.");
+ mes("Well, I win this time.");
+ mes("I'm sorry, let's try play\r"
+ "again sometime.");
close;
}
break;
}
next;
- mes "^3355FF*Rolling and rumbling*^000000";
+ mes("^3355FF*Rolling and rumbling*^000000");
.@table3 = rand(1,6);
.@tabletotal += .@table3;
next;
- mes "["+getarg(0)+"]";
+ mes(.@n$);
if (.@tabletotal > 12) {
- mes "I got ^0000FF" + .@table3 + "^000000 and the total is now ^0000FF" + .@tabletotal + "^000000. I lost this game since my total exceeded 12. Let me give you my apples. Congratulations, that was a great game.";
+ mesf("I got ^0000FF%d^000000 and the total is now ^0000FF%d^000000. "
+ "I lost this game since my total exceeded 12. Let me give you my apples. "
+ "Congratulations, that was a great game.",
+ .@table3, .@tabletotal);
close2;
getitem Apple,.@giveapple;
end;
}
else if (.@playertotal > .@tabletotal) {
- mes "I got ^0000FF" + .@table3 + "^000000 and the total is now ^0000FF" + .@tabletotal + "^000000. With total ^FF0000" + .@playertotal + "^000000 you won this game, ^FF0000" + strcharinfo(0) + "^000000. Let me give you my apples. It was a great game and I hope we will play again some other time.";
+ mesf("I got ^0000FF%d^000000 and the total is now ^0000FF%d^000000. "
+ "With total ^FF0000%d^000000 you won this game, ^FF0000%s^000000. Let me give you my apples. "
+ "It was a great game and I hope we will play again some other time.",
+ .@table3, .@tabletotal, .@playertotal, strcharinfo(0));
close2;
getitem Apple,.@giveapple;
end;
}
else if (.@playertotal == .@tabletotal) {
- mes "I got ^0000FF" + .@table3 + "^000000 and the total is now ^0000FF" + .@tabletotal + "^000000. With total ^FF0000" + .@playertotal + "^000000 this game came out even, ^FF0000" + strcharinfo(0) + "^000000. Let me give you your apple back. It was a great game and I hope we will play again some other time.";
+ mesf("I got ^0000FF%d^000000 and the total is now ^0000FF%d^000000. "
+ "With total ^FF0000%d^000000 this game came out even, ^FF0000%s^000000. "
+ "Let me give you your apple back. It was a great game and I hope we will play again some other time.",
+ .@table3, .@tabletotal, .@playertotal, strcharinfo(0));
close2;
getitem Apple,.@amount;
end;
}
else if (.@playertotal < .@tabletotal) {
- mes "I got ^0000FF" + .@table3 + "^000000 and the total is now ^0000FF" + .@tabletotal + "^000000. With total ^FF0000" + .@playertotal + "^000000 you lost this game, ^FF0000" + strcharinfo(0) + "^000000. I am sorry but please try again.";
+ mesf("I got ^0000FF%d^000000 and the total is now ^0000FF%d^000000. "
+ "With total ^FF0000%d^000000 you lost this game, ^FF0000%s^000000. I am sorry but please try again.",
+ .@table3, .@tabletotal, .@playertotal, strcharinfo(0));
close;
}
}
diff --git a/npc/airports/einbroch.txt b/npc/airports/einbroch.txt
index 8840ef121..62ba62b8e 100644
--- a/npc/airports/einbroch.txt
+++ b/npc/airports/einbroch.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Muad_Dib
//= Copyright (C) L0ne_W0lf
//=
@@ -30,20 +30,20 @@
//=========================================================================
airport,143,43,5 script Airport Staff#airport1a::airport1 4_F_01,{
- mes "[Airport Staff]";
- mes "Welcome to the";
- mes "Einbroch Airport,";
- mes "where we offer nonstop";
- mes "flights to the cities of";
- mes "Juno, Lighthalzen and Hugel.";
+ mes("[Airport Staff]");
+ mes("Welcome to the\r"
+ "Einbroch Airport,\r"
+ "where we offer nonstop\r"
+ "flights to the cities of\r"
+ "Juno, Lighthalzen and Hugel.");
next;
if (select("Board the Airship", "Cancel") == 1) {
- mes "[Airport Staff]";
- mes "The Airship boarding fee";
- mes "is 1,200 zeny, but if you've";
- mes "got a Free Ticket for Airship,";
- mes "the fee will be waived. Will";
- mes "you board the Airship?";
+ mes("[Airport Staff]");
+ mes("The Airship boarding fee\r"
+ "is 1,200 zeny, but if you've\r"
+ "got a Free Ticket for Airship,\r"
+ "the fee will be waived. Will\r"
+ "you board the Airship?");
next;
if (select("Yes", "No") == 1) {
if (countitem(Free_Flying_Ship_Ticket) > 0) {
@@ -56,19 +56,19 @@ airport,143,43,5 script Airport Staff#airport1a::airport1 4_F_01,{
warp "airport",148,51;
end;
}
- mes "[Airport Staff]";
- mes "I'm sorry, but you don't";
- mes "have a Free Ticket for";
- mes "Airship and you don't have";
- mes "enough zeny for boarding";
- mes "the Airship. Remember, the";
- mes "boarding fee is 1,200 zeny.";
+ mes("[Airport Staff]");
+ mes("I'm sorry, but you don't\r"
+ "have a Free Ticket for\r"
+ "Airship and you don't have\r"
+ "enough zeny for boarding\r"
+ "the Airship. Remember, the\r"
+ "boarding fee is 1,200 zeny.");
close;
}
}
- mes "[Airport Staff]";
- mes "Thank you and";
- mes "have a nice day.";
+ mes("[Airport Staff]");
+ mes("Thank you and\r"
+ "have a nice day.");
close;
}
@@ -76,31 +76,31 @@ airport,158,43,5 duplicate(airport1) Airport Staff#airport1b 4_F_01
airport,126,43,5 duplicate(airport1) Airport Staff#airport1c 4_F_01
airport,143,49,3 script Arrival Staff#airport2a::airport2 4_F_01,{
- mes "[Arrival Staff]";
- mes "Welcome to Einbroch Airport.";
- mes "If you are arriving from your";
- mes "flight, let me guide you to the";
- mes "main terminal. Otherwise, please board the Airship to depart to";
- mes "Juno, Lighthalzen and Hugel.";
+ mes("[Arrival Staff]");
+ mes("Welcome to Einbroch Airport.");
+ mes("If you are arriving from your\r"
+ "flight, let me guide you to the\r"
+ "main terminal. Otherwise, please board the Airship to depart to\r"
+ "Juno, Lighthalzen and Hugel.");
next;
if (select("Exit to main terminal.", "Cancel.") == 1) {
- mes "[Arrival Staff]";
- mes "Once you're in the main terminal, you will need to pay the fee again";
- mes "to board an Airship. You should";
- mes "only exit if the city of Einbroch";
- mes "is your intended destination.";
- mes "Proceed to the main terminal?";
+ mes("[Arrival Staff]");
+ mes("Once you're in the main terminal, you will need to pay the fee again\r"
+ "to board an Airship. You should\r"
+ "only exit if the city of Einbroch\r"
+ "is your intended destination.");
+ mes("Proceed to the main terminal?");
next;
if (select("Yes", "No") == 1) {
warp "airport",142,40;
end;
}
}
- mes "[Arrival Staff]";
- mes "Alright, thank you";
- mes "for your patronage";
- mes "and I hope you have";
- mes "a pleasant flight~";
+ mes("[Arrival Staff]");
+ mes("Alright, thank you\r"
+ "for your patronage\r"
+ "and I hope you have\r"
+ "a pleasant flight~");
close;
}
@@ -108,20 +108,20 @@ airport,126,51,3 duplicate(airport2) Arrival Staff#airport2b 4_F_01
airport,158,50,3 duplicate(airport2) Arrival Staff#airport2c 4_F_01
einbroch,94,267,3 script Airship Staff#ein01 4_F_02,{
- mes "[Airship Staff]";
- mes "Welcome to the";
- mes "Einbroch Airport.";
- mes "Please use this door to";
- mes "board the Airship which stops";
- mes "over Juno, Lighthalzen and";
- mes "Hugel in the Schwaltzvalt Republic.";
+ mes("[Airship Staff]");
+ mes("Welcome to the\r"
+ "Einbroch Airport.");
+ mes("Please use this door to\r"
+ "board the Airship which stops\r"
+ "over Juno, Lighthalzen and\r"
+ "Hugel in the Schwaltzvalt Republic.");
next;
- mes "[Airship Staff]";
- mes "Otherwise, if Einbroch is";
- mes "your intended destination,";
- mes "please head down the stairs";
- mes "and ask the Arrival Staff to lead";
- mes "you to the main terminal. Thank";
- mes "you, and enjoy your travels.";
+ mes("[Airship Staff]");
+ mes("Otherwise, if Einbroch is\r"
+ "your intended destination,\r"
+ "please head down the stairs\r"
+ "and ask the Arrival Staff to lead\r"
+ "you to the main terminal. Thank\r"
+ "you, and enjoy your travels.");
close;
}
diff --git a/npc/airports/hugel.txt b/npc/airports/hugel.txt
index 238bfb8a6..9be356836 100644
--- a/npc/airports/hugel.txt
+++ b/npc/airports/hugel.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//=
//= Hercules is free software: you can redistribute it and/or modify
//= it under the terms of the GNU General Public License as published by
@@ -32,8 +32,8 @@
hugel,178,142,0 script toairplane#hugel WARPNPC,1,1,{
end;
OnTouch:
- mes "To use the airship, you are required to pay 1,200 zeny or a Free Airship Ticket.";
- mes "Would you like to use the service?";
+ mes("To use the airship, you are required to pay 1,200 zeny or a Free Airship Ticket.");
+ mes("Would you like to use the service?");
next;
if (select("Yes", "No") == 1) {
if (countitem(Free_Flying_Ship_Ticket) > 0) {
@@ -46,10 +46,10 @@ OnTouch:
warp "airplane",244,58;
end;
}
- mes "I am sorry, but you do not have enough money.";
- mes "Please remember, you are required to pay 1,200 zeny to use the service.";
+ mes("I am sorry, but you do not have enough money.");
+ mes("Please remember, you are required to pay 1,200 zeny to use the service.");
close;
}
- mes "Thank you, please come again.";
+ mes("Thank you, please come again.");
close;
}
diff --git a/npc/airports/izlude.txt b/npc/airports/izlude.txt
index 9cae6a912..ddcc4541c 100644
--- a/npc/airports/izlude.txt
+++ b/npc/airports/izlude.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) rAthena Dev Team
//= Copyright (C) eAthena Dev Team
//=
@@ -32,19 +32,19 @@
//=========================================================================
- script ::Airship_Staff_izlude FAKE_NPC,{
- mes "[Airship Staff]";
- mes "Welcome! Would you like";
- mes "to board the Airship that";
- mes "departs on the flight wich stops";
- mes "in Juno and Rachel?";
+ mes("[Airship Staff]");
+ mes("Welcome! Would you like\r"
+ "to board the Airship that\r"
+ "departs on the flight wich stops\r"
+ "in Juno and Rachel?");
next;
if (select("Board the Airship to Juno/Rachel.", "Cancel.") == 1) {
- mes "[Airship Staff]";
- mes "The boarding fee is";
- mes "1,200 zeny. However, this";
- mes "charged is waived if you use";
- mes "a Free Ticket for Airship. Now,";
- mes "would you still like to board?";
+ mes("[Airship Staff]");
+ mes("The boarding fee is\r"
+ "1,200 zeny. However, this\r"
+ "charged is waived if you use\r"
+ "a Free Ticket for Airship. Now,\r"
+ "would you still like to board?");
next;
if (select("Yes", "No") == 1) {
if (countitem(Free_Flying_Ship_Ticket) > 0) {
@@ -57,16 +57,16 @@
warp "airplane_01",244,58;
end;
}
- mes "[Airship Staff]";
- mes "I'm sorry, but you don't";
- mes "have 1,200 zeny to pay";
- mes "for the boarding fee.";
+ mes("[Airship Staff]");
+ mes("I'm sorry, but you don't\r"
+ "have 1,200 zeny to pay\r"
+ "for the boarding fee.");
close;
}
}
- mes "[Airship Staff]";
- mes "Thank you and";
- mes "please come again.";
- mes "Have a good day~";
+ mes("[Airship Staff]");
+ mes("Thank you and\r"
+ "please come again.");
+ mes("Have a good day~");
close;
}
diff --git a/npc/airports/lighthalzen.txt b/npc/airports/lighthalzen.txt
index 89935a24a..80842aa9d 100644
--- a/npc/airports/lighthalzen.txt
+++ b/npc/airports/lighthalzen.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Muad_Dib
//= Copyright (C) L0ne_W0lf
//=
@@ -32,18 +32,18 @@
//=========================================================================
lhz_airport,143,43,5 script Airport Staff#lhz_air1a::lhz_airport1 4_F_01,{
- mes "[Airport Staff]";
- mes "Welcome to the";
- mes "Lighthalzen Airport,";
- mes "where we offer nonstop";
- mes "flights to Einbroch, Juno and Hugel.";
+ mes("[Airport Staff]");
+ mes("Welcome to the\r"
+ "Lighthalzen Airport,\r"
+ "where we offer nonstop\r"
+ "flights to Einbroch, Juno and Hugel.");
next;
if (select("Board the Airship.", "Cancel.") == 1) {
- mes "[Airport Staff]";
- mes "The boarding fee is";
- mes "1,200 zeny, but you can";
- mes "waive the fee if you redeem";
- mes "a Free Ticket for Airship.";
+ mes("[Airport Staff]");
+ mes("The boarding fee is\r"
+ "1,200 zeny, but you can\r"
+ "waive the fee if you redeem\r"
+ "a Free Ticket for Airship.");
next;
if (select("Yes", "No") == 1) {
if (countitem(Free_Flying_Ship_Ticket) > 0) {
@@ -56,17 +56,17 @@ lhz_airport,143,43,5 script Airport Staff#lhz_air1a::lhz_airport1 4_F_01,{
warp "lhz_airport",148,51;
end;
}
- mes "[Airship Staff]";
- mes "I'm sorry, but you don't";
- mes "have 1,200 zeny to pay";
- mes "for the boarding fee.";
+ mes("[Airship Staff]");
+ mes("I'm sorry, but you don't\r"
+ "have 1,200 zeny to pay\r"
+ "for the boarding fee.");
close;
}
}
- mes "[Airport Staff]";
- mes "Thank you and";
- mes "please come again.";
- mes "Have a good day~";
+ mes("[Airport Staff]");
+ mes("Thank you and\r"
+ "please come again.");
+ mes("Have a good day~");
close;
}
@@ -74,29 +74,29 @@ lhz_airport,158,43,5 duplicate(lhz_airport1) Airship Staff#lhz_air1b 4_F_01
lhz_airport,126,43,5 duplicate(lhz_airport1) Airship Staff#lhz_air1c 4_F_01
lhz_airport,143,49,3 script Arrival Staff#lhz_air2a::lhz_airport2 4_F_01,{
- mes "[Arrival Staff]";
- mes "Welcome to Lighthalzen Airport.";
- mes "Please let me guide you to the";
- mes "main terminal if you are arriving from your flight. Otherwise, please";
- mes "board the departing Airship to reach your intended destination.";
+ mes("[Arrival Staff]");
+ mes("Welcome to Lighthalzen Airport.");
+ mes("Please let me guide you to the\r"
+ "main terminal if you are arriving from your flight. Otherwise, please\r"
+ "board the departing Airship to reach your intended destination.");
next;
if (select("Exit to main terminal.", "Cancel.") == 1) {
- mes "[Arrival Staff]";
- mes "Once you're in the main terminal, you will need to pay the fee again";
- mes "to board an Airship. You should";
- mes "only exit if Lighthalzen is your intended destination. Shall we";
- mes "proceed to the main terminal?";
+ mes("[Arrival Staff]");
+ mes("Once you're in the main terminal, you will need to pay the fee again\r"
+ "to board an Airship. You should\r"
+ "only exit if Lighthalzen is your intended destination. Shall we\r"
+ "proceed to the main terminal?");
next;
if (select("Yes", "No") == 1) {
warp "lhz_airport",142,40;
end;
}
}
- mes "[Arrival Staff]";
- mes "Alright, thank you";
- mes "for your patronage";
- mes "and I hope you have";
- mes "a pleasant flight~";
+ mes("[Arrival Staff]");
+ mes("Alright, thank you\r"
+ "for your patronage\r"
+ "and I hope you have\r"
+ "a pleasant flight~");
close;
}
diff --git a/npc/airports/rachel.txt b/npc/airports/rachel.txt
index e3a1f7067..91db25d7e 100644
--- a/npc/airports/rachel.txt
+++ b/npc/airports/rachel.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) rAthena Dev Team
//= Copyright (C) eAthena Dev Team
//=
@@ -34,8 +34,8 @@
ra_fild12,295,208,0 script toairplane#rachel WARPNPC,1,1,{
end;
OnTouch:
- mes "To use the airship, you are required to pay 1,200 zeny or a Free Airship Ticket.";
- mes "Would you like to use the service?";
+ mes("To use the airship, you are required to pay 1,200 zeny or a Free Airship Ticket.");
+ mes("Would you like to use the service?");
next;
if (select("Yes", "No") == 1) {
if (countitem(Free_Flying_Ship_Ticket) > 0) {
@@ -48,10 +48,10 @@ OnTouch:
warp "airplane_01",245,60;
end;
}
- mes "I am sorry, but you do not have enough money.";
- mes "Please remember, you are required to pay 1,200 zeny to use the service.";
+ mes("I am sorry, but you do not have enough money.");
+ mes("Please remember, you are required to pay 1,200 zeny to use the service.");
close;
}
- mes "Thank you, please come again.";
+ mes("Thank you, please come again.");
close;
}
diff --git a/npc/airports/yuno.txt b/npc/airports/yuno.txt
index 56e5bc97e..6ae5b1657 100644
--- a/npc/airports/yuno.txt
+++ b/npc/airports/yuno.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Muad_Dib
//= Copyright (C) L0ne_W0lf
//=
@@ -32,17 +32,17 @@
//=========================================================================
y_airport,143,43,5 script Airport Staff#y_air1a::y_airport1 4_F_01,{
- mes "[Airport Staff]";
- mes "Welcome to Juno Airport where we offer domestic flights to Einbroch, Lighthalzen and Hugel,";
- mes "and international flights to Izlude and Rachel.";
- mes "How may I be of service?";
+ mes("[Airport Staff]");
+ mes("Welcome to Juno Airport where we offer domestic flights to Einbroch, Lighthalzen and Hugel,\r"
+ "and international flights to Izlude and Rachel.");
+ mes("How may I be of service?");
next;
if (select("Board the Airship.", "Cancel.") == 1) {
- mes "[Airport Staff]";
- mes "The boarding fee for all";
- mes "flights is 1,200 zeny. If you";
- mes "use a Free Ticket for Airship,";
- mes "the boarding fee will be waived.So would you like to depart?";
+ mes("[Airport Staff]");
+ mes("The boarding fee for all\r"
+ "flights is 1,200 zeny. If you\r"
+ "use a Free Ticket for Airship,\r"
+ "the boarding fee will be waived.So would you like to depart?");
next;
if (select("Yes", "No") == 1) {
if (countitem(Free_Flying_Ship_Ticket) > 0) {
@@ -55,16 +55,16 @@ y_airport,143,43,5 script Airport Staff#y_air1a::y_airport1 4_F_01,{
warp "y_airport",148,51;
end;
}
- mes "[Airport Staff]";
- mes "I'm sorry, but you don't";
- mes "have 1,200 zeny to pay";
- mes "for the boarding fee.";
+ mes("[Airport Staff]");
+ mes("I'm sorry, but you don't\r"
+ "have 1,200 zeny to pay\r"
+ "for the boarding fee.");
close;
}
}
- mes "[Airport Staff]";
- mes "Thank you and";
- mes "have a nice day.";
+ mes("[Airport Staff]");
+ mes("Thank you and\r"
+ "have a nice day.");
close;
}
@@ -72,28 +72,28 @@ y_airport,158,43,5 duplicate(y_airport1) Airport Staff#y_air1b 4_F_01
y_airport,126,43,5 duplicate(y_airport1) Airport Staff#y_air1c 4_F_01
y_airport,143,49,3 script Arrival Staff#y_air2a::y_airport2 4_F_01,{
- mes "[Airport Staff]";
- mes "Welcome to Juno Airport. If you've just arrived from your";
- mes "flight, let me guide you to the main terminal. Otherwise, please";
- mes "board the departing Airship to reach your intended destination.";
+ mes("[Airport Staff]");
+ mes("Welcome to Juno Airport. If you've just arrived from your\r"
+ "flight, let me guide you to the main terminal. Otherwise, please\r"
+ "board the departing Airship to reach your intended destination.");
next;
if (select("Exit to main terminal", "Cancel") == 1) {
- mes "[Airport Staff]";
- mes "Once you're in the main terminal, you must pay the fee once again";
- mes "to board a departing Airship. You should only exit if your intended";
- mes "destination is Juno. Proceed to";
- mes "exit to the main terminal?";
+ mes("[Airport Staff]");
+ mes("Once you're in the main terminal, you must pay the fee once again\r"
+ "to board a departing Airship. You should only exit if your intended\r"
+ "destination is Juno. Proceed to\r"
+ "exit to the main terminal?");
next;
if (select("Yes", "No") == 1) {
warp "y_airport",142,40;
end;
}
}
- mes "[Airport Staff]";
- mes "Alright, thank you";
- mes "for your patronage";
- mes "and I hope you have";
- mes "a pleasant flight~";
+ mes("[Airport Staff]");
+ mes("Alright, thank you\r"
+ "for your patronage\r"
+ "and I hope you have\r"
+ "a pleasant flight~");
close;
}
@@ -101,80 +101,80 @@ y_airport,126,51,3 duplicate(y_airport2) Arrival Staff#y_air2b 4_F_01
y_airport,158,50,3 duplicate(y_airport2) Arrival Staff#y_air2c 4_F_01
y_airport,145,63,5 script Domestic Boarding 4_F_02,{
- mes "[Boarding Staff]";
- mes "Would you like to board the";
- mes "Airship that flies to Einbroch,";
- mes "Lighthalzen and Hugel? If so,";
- mes "please let me guide you to that";
- mes "Airship's boarding area.";
+ mes("[Boarding Staff]");
+ mes("Would you like to board the\r"
+ "Airship that flies to Einbroch,\r"
+ "Lighthalzen and Hugel? If so,\r"
+ "please let me guide you to that\r"
+ "Airship's boarding area.");
next;
if (select("Yes", "No") == 1) {
warp "yuno",59,244;
end;
}
- mes "[Boarding Staff]";
- mes "Very well, then.";
- mes "Thank you for your";
- mes "patronage, and I hope";
- mes "you enjoy your travels~";
+ mes("[Boarding Staff]");
+ mes("Very well, then.");
+ mes("Thank you for your\r"
+ "patronage, and I hope\r"
+ "you enjoy your travels~");
close;
}
y_airport,140,63,5 script International Boarding 4_F_02,{
- mes "[Boarding Staff]";
- mes "Would you like to board";
- mes "the Airship which flies to";
- mes "Juno, Izlude and Rachel?";
- mes "If so, let me guide";
- mes "you to the boarding area.";
+ mes("[Boarding Staff]");
+ mes("Would you like to board\r"
+ "the Airship which flies to\r"
+ "Juno, Izlude and Rachel?");
+ mes("If so, let me guide\r"
+ "you to the boarding area.");
next;
if (select("Yes", "No") == 1) {
warp "yuno",47,244;
end;
}
- mes "[Boarding Staff]";
- mes "Alright, then.";
- mes "Thank you for flying";
- mes "with us, and I hope you";
- mes "enjoy your travels on our";
- mes "state of the art Airships.";
+ mes("[Boarding Staff]");
+ mes("Alright, then.");
+ mes("Thank you for flying\r"
+ "with us, and I hope you\r"
+ "enjoy your travels on our\r"
+ "state of the art Airships.");
close;
}
yuno,14,262,5 script Airship Staff#yuno01 4_F_02,{
- mes "[Airship Staff]";
- mes "Welcome to Juno Airport.";
- mes "Please use this door to";
- mes "board the Airship that will";
- mes "be flying all the way to Izlude";
- mes "in the Rune-Midgarts Kingdom,";
- mes "and to Rachel in the Arunafeltz";
- mes "Republic.";
+ mes("[Airship Staff]");
+ mes("Welcome to Juno Airport.");
+ mes("Please use this door to\r"
+ "board the Airship that will\r"
+ "be flying all the way to Izlude\r"
+ "in the Rune-Midgarts Kingdom,\r"
+ "and to Rachel in the Arunafeltz\r"
+ "Republic.");
next;
- mes "[Airship Staff]";
- mes "Otherwise, if Juno is";
- mes "your intended destination,";
- mes "please head down the stairs";
- mes "and ask the Arrival Staff to lead";
- mes "you to the main terminal. Thank";
- mes "you, and enjoy your travels.";
+ mes("[Airship Staff]");
+ mes("Otherwise, if Juno is\r"
+ "your intended destination,\r"
+ "please head down the stairs\r"
+ "and ask the Arrival Staff to lead\r"
+ "you to the main terminal. Thank\r"
+ "you, and enjoy your travels.");
close;
}
yuno,88,263,3 script Airship Staff#yuno02 4_F_02,{
- mes "[Airship Staff]";
- mes "Welcome to Juno Airport.";
- mes "Please use this door to";
- mes "board the Airship which stops";
- mes "over Einbroch, Lighthalzen and";
- mes "Hugel in the Schwaltzvalt Republic.";
+ mes("[Airship Staff]");
+ mes("Welcome to Juno Airport.");
+ mes("Please use this door to\r"
+ "board the Airship which stops\r"
+ "over Einbroch, Lighthalzen and\r"
+ "Hugel in the Schwaltzvalt Republic.");
next;
- mes "[Airship Staff]";
- mes "Otherwise, if Juno is";
- mes "your intended destination,";
- mes "please head down the stairs";
- mes "and ask the Arrival Staff to lead";
- mes "you to the main terminal. Thank";
- mes "you, and enjoy your travels.";
+ mes("[Airship Staff]");
+ mes("Otherwise, if Juno is\r"
+ "your intended destination,\r"
+ "please head down the stairs\r"
+ "and ask the Arrival Staff to lead\r"
+ "you to the main terminal. Thank\r"
+ "you, and enjoy your travels.");
close;
}
diff --git a/npc/battleground/bg_common.txt b/npc/battleground/bg_common.txt
index 9b6aa3228..4c9f3c307 100644
--- a/npc/battleground/bg_common.txt
+++ b/npc/battleground/bg_common.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Euphy
//= Copyright (C) L0ne_W0lf
//=
@@ -44,58 +44,58 @@ bat_room,161,160,3 script Gen. Guillaume's Aide#03 4_M_KY_HEAD,{ end; }
bat_room,160,141,3 script Prince Croix 4_M_CRU_CRUA,{
cutin "bat_crua1",2;
- mes "[Prince Croix]";
- mes "Wise adventurer, why don't you lend us your power for victory?";
+ mes("[Prince Croix]");
+ mes("Wise adventurer, why don't you lend us your power for victory?");
next;
switch(select("What's the reason for the Battle?", "Tell me about General Guillaume")) {
case 1:
cutin "bat_crua2",2;
- mes "[Prince Croix]";
- mes "Maroll's great king, Marcel Marollo VII, is very sick lately.";
- mes "His Majesty has declared that he will be leaving the future of Maroll to me or the 3rd prince, General Guillaume.";
+ mes("[Prince Croix]");
+ mes("Maroll's great king, Marcel Marollo VII, is very sick lately.");
+ mes("His Majesty has declared that he will be leaving the future of Maroll to me or the 3rd prince, General Guillaume.");
next;
- mes "[Prince Croix]";
- mes "General Guillaume may have an advantage in this battle as he is the great general of Maroll, but that doesn't automatically mean he'll win.";
- mes "I want to win this battle so that I can bring prosperity to the people of Maroll. They've suffered enough from war...";
+ mes("[Prince Croix]");
+ mes("General Guillaume may have an advantage in this battle as he is the great general of Maroll, but that doesn't automatically mean he'll win.");
+ mes("I want to win this battle so that I can bring prosperity to the people of Maroll. They've suffered enough from war...");
next;
switch(select("Yes, I want to join you.", "End Conversation")) {
case 1:
cutin "bat_crua1",2;
- mes "[Prince Croix]";
- mes "Thank you so much. I feel like I can win with the help of adventurers like you.";
- mes "Now, please go downstairs and join your comrades in sharpening their skills to fight the enemy!";
+ mes("[Prince Croix]");
+ mes("Thank you so much. I feel like I can win with the help of adventurers like you.");
+ mes("Now, please go downstairs and join your comrades in sharpening their skills to fight the enemy!");
break;
case 2:
- mes "[Prince Croix]";
- mes "For Maroll!";
+ mes("[Prince Croix]");
+ mes("For Maroll!");
break;
}
break;
case 2:
cutin "bat_crua2",2;
- mes "[Prince Croix]";
- mes "The 3rd Prince Guillaume is the great general of Maroll.";
- mes "It's a waste of time to explain to you how great a leader or warlord he is, since he commands the great military power of Maroll.";
+ mes("[Prince Croix]");
+ mes("The 3rd Prince Guillaume is the great general of Maroll.");
+ mes("It's a waste of time to explain to you how great a leader or warlord he is, since he commands the great military power of Maroll.");
next;
- mes "[Prince Croix]";
- mes "Unfortunately, there's something he and his followers are unaware of:";
- mes "Do the people of Maroll really want them to spend so much money on military power?";
- mes "We have suffered enough from wars.";
- mes "I believe weapons aren't the best way to bring prosperity to a nation.";
+ mes("[Prince Croix]");
+ mes("Unfortunately, there's something he and his followers are unaware of:");
+ mes("Do the people of Maroll really want them to spend so much money on military power?");
+ mes("We have suffered enough from wars.");
+ mes("I believe weapons aren't the best way to bring prosperity to a nation.");
next;
- mes "[Prince Croix]";
- mes "I do not wish to shed blood, but I have no choice but to fight for the possibility of peace and for the sake of my people.";
+ mes("[Prince Croix]");
+ mes("I do not wish to shed blood, but I have no choice but to fight for the possibility of peace and for the sake of my people.");
next;
switch(select("Yes, I want to join you.", "End Conversation")) {
case 1:
cutin "bat_crua1",2;
- mes "[Prince Croix]";
- mes "Thank you so much. I feel like I can win with the help of adventurers like you.";
- mes "Now, please go downstairs and join your comrades in sharpening their skills to fight the enemy!";
+ mes("[Prince Croix]");
+ mes("Thank you so much. I feel like I can win with the help of adventurers like you.");
+ mes("Now, please go downstairs and join your comrades in sharpening their skills to fight the enemy!");
break;
case 2:
- mes "[Prince Croix]";
- mes "For Maroll!";
+ mes("[Prince Croix]");
+ mes("For Maroll!");
break;
}
break;
@@ -111,72 +111,74 @@ bat_room,161,142,3 script Prince Croix's Aide#02 4_M_CRU_HEAD,{ end; }
bat_room,160,159,3 script General Guillaume 4_M_KY_KIYOM,{
cutin "bat_kiyom2",2;
- mes "[General Guillaume]";
- mes "Hot-blooded adventurer, we need your ability to win this battle.";
+ mes("[General Guillaume]");
+ mes("Hot-blooded adventurer, we need your ability to win this battle.");
next;
switch(select("What's the reason for the Battle?", "Tell me about Prince Croix")) {
case 1:
cutin "bat_kiyom1",2;
- mes "[General Guillaume]";
- mes "Our great king, Marcel Marollo VII, is very sick lately.";
- mes "His Majesty has declared that he has chosen either me or Prince Croix as the next king amongst his 9 sons.";
+ mes("[General Guillaume]");
+ mes("Our great king, Marcel Marollo VII, is very sick lately.");
+ mes("His Majesty has declared that he has chosen either me or Prince Croix as the next king amongst his 9 sons.");
next;
- mes "[General Guillaume]";
- mes "Two kings can't share a nation! Only the one victorious from His Majesty's appointed battle will be enthroned.";
+ mes("[General Guillaume]");
+ mes("Two kings can't share a nation! Only the one victorious from His Majesty's appointed battle will be enthroned.");
next;
- mes "[General Guillaume]";
- mes "This is, however, not just a battle between us. This battle will determine the future of this country.";
- mes "I pledge on my honor to prove that I'm the one who can protect this Maroll from outside threats.";
+ mes("[General Guillaume]");
+ mes("This is, however, not just a battle between us. This battle will determine the future of this country.");
+ mes("I pledge on my honor to prove that I'm the one who can protect this Maroll from outside threats.");
next;
switch(select("Yes, I want to join you.", "End Conversation")) {
case 1:
cutin "bat_kiyom2",2;
- mes "[General Guillaume]";
- mes "Welcome to my army, comrade.";
- mes "Your eyes tell me that you're a soldier that I can trust.";
+ mes("[General Guillaume]");
+ mes("Welcome to my army, comrade.");
+ mes("Your eyes tell me that you're a soldier that I can trust.");
next;
- mes "[General Guillaume]";
- mes "Now, go upstairs and apply for battle with your comrades.";
- mes "I'm sure they'll welcome you whole-heartedly!";
+ mes("[General Guillaume]");
+ mes("Now, go upstairs and apply for battle with your comrades.");
+ mes("I'm sure they'll welcome you whole-heartedly!");
break;
case 2:
- mes "[General Guillaume]";
- mes "I'll be the one who will capture the flag!";
+ mes("[General Guillaume]");
+ mes("I'll be the one who will capture the flag!");
break;
}
break;
case 2:
cutin "bat_kiyom1",2;
- mes "[General Guillaume]";
- mes "The 5th Prince Croix is currently titled as the Prime Minister of Maroll.";
- mes "He thinks all national matters of a nation can be discussed and determined on a desk,";
- mes "and believes in peaceful co-existence with other countries.";
+ mes("[General Guillaume]");
+ mes("The 5th Prince Croix is currently titled as the Prime Minister of Maroll.");
+ mes("He thinks all national matters of a nation can be discussed and determined on a desk,\r"
+ "and believes in peaceful co-existence with other countries.");
next;
- mes "[General Guillaume]";
- mes "He's too ignorant to admit that so-called peace is built on countless lives that are sacrificed in wars while normal citizens and upper classes can live, oblivious to the horrors that allow them to live that way.";
+ mes("[General Guillaume]");
+ mes("He's too ignorant to admit that so-called peace is built on countless lives that are sacrificed in "
+ "wars while normal citizens and upper classes can live, oblivious to the horrors that allow them to live that way.");
next;
- mes "[General Guillaume]";
- mes "He's too naive to understand the reality....";
- mes "I can't leave Maroll to someone like him who lives in a dream!";
+ mes("[General Guillaume]");
+ mes("He's too naive to understand the reality....");
+ mes("I can't leave Maroll to someone like him who lives in a dream!");
next;
- mes "[General Guillaume]";
- mes "His unrealistic beliefs will drown this country in poverty and make the people weak. If he becomes the king, Maroll will never rest from the onslaughts of other countries.";
- mes "I want to teach him what makes this small country so powerful and prosperous. It's military power!";
+ mes("[General Guillaume]");
+ mes("His unrealistic beliefs will drown this country in poverty and make the people weak. If he becomes the king, "
+ "Maroll will never rest from the onslaughts of other countries.");
+ mes("I want to teach him what makes this small country so powerful and prosperous. It's military power!");
next;
switch(select("I want to join your army!", "End Conversation")) {
case 1:
cutin "bat_kiyom2",2;
- mes "[General Guillaume]";
- mes "Welcome to my army, comrade.";
- mes "Your eyes tell me that you're a soldier that I can trust.";
+ mes("[General Guillaume]");
+ mes("Welcome to my army, comrade.");
+ mes("Your eyes tell me that you're a soldier that I can trust.");
next;
- mes "[General Guillaume]";
- mes "Now, go upstairs and apply for battle from your comrades.";
- mes "I'm sure they'll welcome you whole-heartedly!";
+ mes("[General Guillaume]");
+ mes("Now, go upstairs and apply for battle from your comrades.");
+ mes("I'm sure they'll welcome you whole-heartedly!");
break;
case 2:
- mes "[General Guillaume]";
- mes "I'll be the one who will capture the flag!";
+ mes("[General Guillaume]");
+ mes("I'll be the one who will capture the flag!");
break;
}
break;
@@ -195,68 +197,68 @@ bat_room,160,159,3 script General Guillaume 4_M_KY_KIYOM,{
//== BattleGround Warper ===================================
bat_room,148,150,5 script Teleporter#Battlefield 4_F_TELEPORTER,{
- mes "[Teleporter]";
- mes "Do you wish to leave the battlefield? Use my services to return to town.";
+ mes("[Teleporter]");
+ mes("Do you wish to leave the battlefield? Use my services to return to town.");
next;
switch(select("Leave", "Don't Leave")) {
case 1:
- mes "[Teleporter]";
+ mes("[Teleporter]");
switch(bat_return) {
default:
case 1:
- setarray .@mapname$[0],"Prontera.","prontera";
+ setarray .@mapname$[0], _("Prontera"), "prontera";
setarray .@xy[0],116,72;
break;
case 2:
- setarray .@mapname$[0],"Morroc","moc_ruins";
+ setarray .@mapname$[0], _("Morroc"), "moc_ruins";
setarray .@xy[0],152,48;
break;
case 3:
- setarray .@mapname$[0],"Al De Baran.","aldebaran";
+ setarray .@mapname$[0], _("Al De Baran"), "aldebaran";
setarray .@xy[0],168,112;
break;
case 4:
- setarray .@mapname$[0],"Geffen.","geffen";
+ setarray .@mapname$[0], _("Geffen"), "geffen";
setarray .@xy[0],120,39;
break;
case 5:
- setarray .@mapname$[0],"Payon.","payon";
+ setarray .@mapname$[0], _("Payon"), "payon";
setarray .@xy[0],161,58;
break;
case 6:
- setarray .@mapname$[0],"Lighthalzen.","lighthalzen";
+ setarray .@mapname$[0], _("Lighthalzen"), "lighthalzen";
setarray .@xy[0],159,93;
break;
case 7:
- setarray .@mapname$[0],"Rachel.","rachel";
+ setarray .@mapname$[0], _("Rachel"), "rachel";
setarray .@xy[0],115,124;
break;
}
- mes "You will be sent back to "+.@mapname$[0]+".";
+ mesf("You will be sent back to %s.", .@mapname$[0]);
close2;
warp .@mapname$[1],.@xy[0],.@xy[1];
break;
case 2:
- mes "[Teleporter]";
- mes "I'll be here whenever you're in need of my services.";
+ mes("[Teleporter]");
+ mes("I'll be here whenever you're in need of my services.");
close;
}
end;
}
- script Maroll Battle Recruiter::BatRecruit 4_F_JOB_KNIGHT,{
- mes "[Maroll Battle Recruiter]";
- mes "Good day, adventurer.";
- mes "I'm a knight from a far country called Maroll Kingdom.";
+ mes("[Maroll Battle Recruiter]");
+ mes("Good day, adventurer.");
+ mes("I'm a knight from a far country called Maroll Kingdom.");
next;
- mes "[Maroll Battle Recruiter]";
- mes "The two princes of the kingdom are now battling for the throne of Maroll, and are in need of experienced soldiers like you.";
- mes "How would you like to lend your power to one of the princes in the Maroll Kingdom?";
+ mes("[Maroll Battle Recruiter]");
+ mes("The two princes of the kingdom are now battling for the throne of Maroll, and are in need of experienced soldiers like you.");
+ mes("How would you like to lend your power to one of the princes in the Maroll Kingdom?");
next;
switch(select("Join", "Don't Join")) {
case 1:
- mes "[Maroll Battle Recruiter]";
- mes "May the war god bless you.";
+ mes("[Maroll Battle Recruiter]");
+ mes("May the war god bless you.");
close2;
getmapxy(.@mapname$, .@x, .@y, UNITTYPE_NPC);
if (.@mapname$ == "prontera")
@@ -278,8 +280,8 @@ bat_room,148,150,5 script Teleporter#Battlefield 4_F_TELEPORTER,{
warp "bat_room",154,150;
break;
case 2:
- mes "[Maroll Battle Recruiter]";
- mes "I'll always be stationed here for more soldiers. Feel free to come back whenever you're interested.";
+ mes("[Maroll Battle Recruiter]");
+ mes("I'll always be stationed here for more soldiers. Feel free to come back whenever you're interested.");
close;
}
end;
@@ -330,7 +332,7 @@ bat_room,148,147,4 script Kafra Staff::kaf_bat 4_F_KAFRA9,{
//== Repairman =============================================
bat_room,138,144,4 script Repairman#bg 4_M_04,{
- callfunc "repairmain","Repairman";
+ callfunc("repairmain", _("Repairman"));
end;
}
@@ -338,12 +340,12 @@ bat_room,138,144,4 script Repairman#bg 4_M_04,{
bat_room,1,151,3 script Switch#batgnd 4_DOG01,{
.@i = callfunc("F_GM_NPC",1854,0);
if (.@i == -1) {
- mes "The command has been cancelled.";
+ mes("The command has been cancelled.");
close;
} else if (.@i == 0) {
end;
} else {
- mes "May I help you?";
+ mes("May I help you?");
next;
switch(select("Close Battlefield", "Open Battlefield", "Reset a01", "Reset b01", "Reset a02", "Reset b02")) {
case 1:
@@ -379,7 +381,7 @@ bat_room,1,151,3 script Switch#batgnd 4_DOG01,{
donpcevent "start#bat_b02::OnEnable";
break;
}
- mes "Complete";
+ mes("Complete");
close;
}
}
@@ -387,104 +389,105 @@ bat_room,1,151,3 script Switch#batgnd 4_DOG01,{
//== Badges Exchange =======================================
bat_room,160,150,3 script Erundek 4_M_MANAGER,{
if (checkweight(Knife,1) == 0) {
- mes "- Wait a minute !! -";
- mes "- Currently you're carrying -";
- mes "- too many items with you. -";
- mes "- Please try again -";
- mes "- after you loose some weight. -";
+ mes("- Wait a minute !! -");
+ mes("- Currently you're carrying -");
+ mes("- too many items with you. -");
+ mes("- Please try again -");
+ mes("- after you loose some weight. -");
close;
}
- mes "[Erundek]";
- mes "Do you have the battlefield badges?";
- mes "I can exchange Bravery Badges and Valor Badges for reward items.";
+ mes("[Erundek]");
+ mes("Do you have the battlefield badges?");
+ mes("I can exchange Bravery Badges and Valor Badges for reward items.");
next;
switch(select("Exchange Badges", "Check the Catalog")) {
case 1:
- mes "[Erundek]";
- mes "Which type of items would you like to exchange?";
- mes "To check more information about the reward items, please use our ^3131FFCatalog^000000.";
+ mes("[Erundek]");
+ mes("Which type of items would you like to exchange?");
+ mes("To check more information about the reward items, please use our ^3131FFCatalog^000000.");
next;
switch(select("Weapon", "Armor", "Accessory", "Consumable")) {
case 1:
- mes "[Erundek]";
- mes "You chose ^3131FFWeapon^000000.";
- mes "The following weapons are available for exchange with the battlefield badges.";
- mes "Please note that items for ^3131FFBravery Badges are indicated as (BB)^000000, and ^3131FFValor Badges as (VB)^000000.";
+ mes("[Erundek]");
+ mes("You chose ^3131FFWeapon^000000.");
+ mes("The following weapons are available for exchange with the battlefield badges.");
+ mes("Please note that items for ^3131FFBravery Badges are indicated as (BB)^000000, and ^3131FFValor Badges as (VB)^000000.");
next;
switch(select("Dagger/OneSword/TwoSword/TwoSpear", "Staff/Mace/TwoAxe/Shuriken", "Bow/Katar/Music/Whip", "Book/Knuckle", "Revolver/Rifle/Gatling/Shotgun/Launcher")) {
case 1:
- mes "[Erundek]";
- mes "The following items are available in the ^3131FFDagger, One-Handed Sword, Two-Handed Sword, and Two-Handed Spear^000000 category.";
+ mes("[Erundek]");
+ mes("The following items are available in the ^3131FFDagger, One-Handed Sword, Two-Handed Sword, and Two-Handed Spear^000000 category.");
next;
setarray .@Weapons[0],13036,7828,13037,7829,13411,7828,13410,7829,1183,7828,1184,7829,1425,7828,1482,7829;
break;
case 2:
- mes "[Erundek]";
- mes "The following items are available in the ^3131FFStaff / Mace / Two-Handed Axe / Huuma Shuriken^000000 category.";
+ mes("[Erundek]");
+ mes("The following items are available in the ^3131FFStaff / Mace / Two-Handed Axe / Huuma Shuriken^000000 category.");
next;
setarray .@Weapons[0],1632,7828,1633,7829,1634,7828,1635,7829,1543,7828,1542,7829,1380,7828,1379,7829,13305,7828,13306,7829;
break;
case 3:
- mes "[Erundek]";
- mes "The following weapons are available in the ^3131FFBow / Katar / Musical Instrument / Whip^000000 category.";
+ mes("[Erundek]");
+ mes("The following weapons are available in the ^3131FFBow / Katar / Musical Instrument / Whip^000000 category.");
next;
setarray .@Weapons[0],1739,7828,1738,7829,1279,7828,1280,7829,1924,7828,1923,7829,1978,7828,1977,7829;
break;
case 4:
- mes "[Erundek]";
- mes "The following weapons are available in the ^3131FFBook / Knuckle^000000 category.";
+ mes("[Erundek]");
+ mes("The following weapons are available in the ^3131FFBook / Knuckle^000000 category.");
next;
setarray .@Weapons[0],1574,7828,1575,7829,1824,7828,1823,7829;
break;
case 5:
- mes "[Erundek]";
- mes "The following weapons are available in the ^3131FFRevolver / Rifle / Gatling Gun / Shotgun / Grenade Launcher^000000 category.";
+ mes("[Erundek]");
+ mes("The following weapons are available in the ^3131FFRevolver / Rifle / Gatling Gun / Shotgun / Grenade Launcher^000000 category.");
next;
setarray .@Weapons[0],13108,7828,13171,7829,13172,7828,13173,7829,13174,7829;
break;
}
.@menu$ = "";
for (.@i = 0; .@i < getarraysize(.@Weapons); .@i += 2)
- .@menu$ += getitemname(.@Weapons[.@i])+((.@Weapons[.@i+1]==7828)?"(BB)":"(VB)")+":";
+ .@menu$ += getitemname(.@Weapons[.@i]) + ((.@Weapons[.@i+1]==7828) ? _("(BB)") : _("(VB)")) + ":";
.@i = (select(.@menu$)-1)*2;
- .@type$ = ((.@Weapons[.@i+1]==7828)?"(BB)":"(VB)");
- mes "[Erundek]";
- mes "You chose ^3131FF"+getitemname(.@Weapons[.@i])+.@type$+"^000000.";
- mes "You can exchange for this item with ^FF0000100 "+getitemname(.@Weapons[.@i+1])+"^000000.";
- mes "Would you like to exchange?";
+ .@type$ = ((.@Weapons[.@i+1]==7828) ? _("(BB)") : _("(VB)"));
+ mes("[Erundek]");
+ mesf("You chose ^3131FF%s%s^000000.", getitemname(.@Weapons[.@i]), .@type$);
+ mesf("You can exchange for this item with ^FF0000100 %s^000000.", getitemname(.@Weapons[.@i+1]));
+ mes("Would you like to exchange?");
next;
switch(select("Do not exchange", "Exchange")) {
case 1:
break;
case 2:
- mes "[Erundek]";
- mes "Would you like to spend ^FF0000100 "+getitemname(.@Weapons[.@i+1])+"^000000 and receive a ^3131FF"+getitemname(.@Weapons[.@i])+.@type$+"^000000?";
+ mes("[Erundek]");
+ mesf("Would you like to spend ^FF0000100 %s^000000 and receive a ^3131FF%s%s^000000?",
+ getitemname(.@Weapons[.@i+1]), getitemname(.@Weapons[.@i]), .@type$);
next;
- mes "[Erundek]";
- mes "Remember, Battleground Reward Items are ^FF0000Character Bound^000000. Are you sure you want this item?";
+ mes("[Erundek]");
+ mes("Remember, Battleground Reward Items are ^FF0000Character Bound^000000. Are you sure you want this item?");
next;
switch(select("Yes", "No")) {
case 1:
- mes "[Erundek]";
+ mes("[Erundek]");
if (countitem(.@Weapons[.@i+1]) >= 100) {
- mes "Thank you for exchanging.";
+ mes("Thank you for exchanging.");
delitem .@Weapons[.@i+1],100;
getitem .@Weapons[.@i],1;
}
- else mes "I'm sorry, but you don't have enough badges to exchange.";
+ else mes("I'm sorry, but you don't have enough badges to exchange.");
close;
case 2:
break;
}
break;
}
- mes "[Erundek]";
- mes "Do you need more time to check the items?";
+ mes("[Erundek]");
+ mes("Do you need more time to check the items?");
close;
case 2:
- mes "[Erundek]";
- mes "You chose ^3131FFArmor^000000.";
- mes "The following armors are available for exchange with the battlefield badges.";
+ mes("[Erundek]");
+ mes("You chose ^3131FFArmor^000000.");
+ mes("The following armors are available for exchange with the battlefield badges.");
next;
switch(select("Garments / Shoes", "Armor")) {
case 1:
@@ -496,25 +499,27 @@ bat_room,160,150,3 script Erundek 4_M_MANAGER,{
}
break;
case 3:
- mes "[Erundek]";
- mes "You chose ^3131FFAccessory^000000.";
- mes "You can exchange the Medal of Honors with your Badges according to the job classes, as follows:";
+ mes("[Erundek]");
+ mes("You chose ^3131FFAccessory^000000.");
+ mes("You can exchange the Medal of Honors with your Badges according to the job classes, as follows:");
next;
setarray .@items[0],2733,500,2720,500,2721,500,2722,500,2723,500,2724,500,2725,500;
- .@menu1$ = "Gunslinger:Swordman/Taekwon Master:Thief:Acolyte:Magician:Archer:Merchant";
+ .@menu1$ = sprintf("%s:%s/%s:%s:%s:%s:%s:%s",
+ jobname(Job_Gunslinger), jobname(Job_Swordman), jobname(Job_Star_Gladiator), jobname(Job_Thief),
+ jobname(Job_Acolyte), jobname(Job_Mage), jobname(Job_Archer), jobname(Job_Merchant));
break;
case 4:
- mes "[Erundek]";
- mes "You chose ^3131FFConsumable^000000.";
- mes "The following consumable items are available for exchange with the battlefield badges:";
+ mes("[Erundek]");
+ mes("You chose ^3131FFConsumable^000000.");
+ mes("The following consumable items are available for exchange with the battlefield badges:");
next;
setarray .@items[0],12269,10,12270,10,12271,5,12272,10,12273,10;
break;
}
break;
case 2:
- mes "[Erundek]";
- mes "We have many items, so please take a look and purchase deliberately.";
+ mes("[Erundek]");
+ mes("We have many items, so please take a look and purchase deliberately.");
close2;
readbook 11010,1;
end;
@@ -524,49 +529,49 @@ bat_room,160,150,3 script Erundek 4_M_MANAGER,{
else for (.@i = 0; .@i < getarraysize(.@items); .@i += 2)
.@menu$ += getitemname(.@items[.@i])+":";
.@i = (select(.@menu$)-1)*2;
- mes "[Erundek]";
- mes "You chose ^3131FF"+getitemname(.@items[.@i])+"^000000.";
+ mes("[Erundek]");
+ mesf("You chose ^3131FF%s^000000.", getitemname(.@items[.@i]));
switch(.@items[.@i]) {
- case 2720: mes "This item is for Swordman and Taekwon Master Class only."; break;
- case 2721: mes "This item is for Thief Class only."; break;
- case 2722: mes "This item is for Acolyte Class only."; break;
- case 2723: mes "This item is for Magician Class only."; break;
- case 2724: mes "This item is for Archer Class only."; break;
- case 2725: mes "This item is for Merchant Class only."; break;
- case 2733: mes "This item is for Gunslinger only."; break;
+ case 2720: mes("This item is for Swordman and Taekwon Master Class only."); break;
+ case 2721: mes("This item is for Thief Class only."); break;
+ case 2722: mes("This item is for Acolyte Class only."); break;
+ case 2723: mes("This item is for Magician Class only."); break;
+ case 2724: mes("This item is for Archer Class only."); break;
+ case 2725: mes("This item is for Merchant Class only."); break;
+ case 2733: mes("This item is for Gunslinger only."); break;
default: break;
}
- mes "You can exchange for this item with ^FF0000"+.@items[.@i+1]+" "+getitemname(7828)+" or "+.@items[.@i+1]+" "+getitemname(7829)+"^000000.";
- mes "Would you like to exchange?";
+ mesf("You can exchange for this item with ^FF0000%d %s or %d %s^000000.", .@items[.@i+1], getitemname(7828), .@items[.@i+1], getitemname(7829));
+ mes("Would you like to exchange?");
next;
switch(select("Do not exchange", "Exchange")) {
case 1:
- mes "[Erundek]";
- mes "Do you need more time to check the items?";
+ mes("[Erundek]");
+ mes("Do you need more time to check the items?");
break;
case 2:
- mes "[Erundek]";
- mes "Which Badge do you want to exchange?";
- mes "You need ^3131FF"+.@items[.@i+1]+" Badges^000000 to exchange.";
+ mes("[Erundek]");
+ mes("Which Badge do you want to exchange?");
+ mesf("You need ^3131FF%d Badges^000000 to exchange.", .@items[.@i+1]);
next;
if (.@item[0] < 12269 || .@item[0] > 12273 ) {
- mes "[Erundek]";
- mes "Remember, Battleground Reward Items are ^FF0000Character Bound^000000. Are you sure you want this item?";
+ mes("[Erundek]");
+ mes("Remember, Battleground Reward Items are ^FF0000Character Bound^000000. Are you sure you want this item?");
next;
}
.@j = select("Bravery Badge", "Valor Badge", "Cancel");
- mes "[Erundek]";
+ mes("[Erundek]");
if (.@j == 3) {
- mes "You cancelled the exchange.";
+ mes("You cancelled the exchange.");
break;
}
.@cost = ((.@j==1)?7828:7829);
if (countitem(.@cost) >= .@items[.@i+1]) {
- mes "Thank you for exchanging.";
+ mes("Thank you for exchanging.");
delitem .@cost, .@items[.@i+1];
getitem .@items[.@i],1;
}
- else mes "You do not have enough "+getitemname(.@cost)+"s.";
+ else mesf("You do not have enough %ss.", getitemname(.@cost));
break;
}
close;
diff --git a/npc/battleground/flavius/flavius01.txt b/npc/battleground/flavius/flavius01.txt
index c0c034a6a..62c11135f 100644
--- a/npc/battleground/flavius/flavius01.txt
+++ b/npc/battleground/flavius/flavius01.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Euphy
//= Copyright (C) Kisuka
//= Copyright (C) L0ne_W0lf
@@ -40,7 +40,7 @@
bat_room,86,227,4 script Lieutenant Ator 4_M_KY_KNT,{
end;
OnInit:
- waitingroom "Battle Station",11,"start#bat_b01::OnReadyCheck",1,0,80;
+ waitingroom(_("Battle Station"), 11, "start#bat_b01::OnReadyCheck", 1, 0, 80);
end;
OnEnterBG:
$@FlaviusBG1_id1 = waitingroom2bg("bat_b01",10,290,"start#bat_b01::OnGuillaumeQuit","");
@@ -50,7 +50,7 @@ OnEnterBG:
bat_room,85,204,0 script Lieutenant Thelokus 4_M_CRU_KNT,{
end;
OnInit:
- waitingroom "Battle Station",11,"start#bat_b01::OnReadyCheck",1,0,80;
+ waitingroom(_("Battle Station"), 11, "start#bat_b01::OnReadyCheck", 1, 0, 80);
end;
OnEnterBG:
$@FlaviusBG1_id2 = waitingroom2bg("bat_b01",390,10,"start#bat_b01::OnCroixQuit","");
@@ -173,7 +173,7 @@ OnKill:
OnMyMobDead:
if (mobcount("bat_b01","OBJ#bat_b01_a::OnMyMobDead") < 1) {
- mapannounce "bat_b01", "Guillaume's Crystal has been destroyed.",bc_map,"0xFFCE00";
+ mapannounce("bat_b01", _("Guillaume's Crystal has been destroyed."), bc_map, "0xFFCE00");
if ($@Croix_ScoreBG1 > 0) {
$@FlaviusBG1_Victory = 2;
++$@Croix_ScoreBG1;
@@ -197,7 +197,7 @@ OnMyMobDead:
bat_b01,1,2,3 script OBJ#bat_b01_b CLEAR_NPC,{
OnEnable:
- bg_monster $@FlaviusBG1_id2,"bat_b01",328,150,"Blue Crystal",1914,"OBJ#bat_b01_b::OnMyMobDead";
+ bg_monster($@FlaviusBG1_id2, "bat_b01", 328, 150, _("Blue Crystal"), 1914, "OBJ#bat_b01_b::OnMyMobDead");
end;
OnKill:
@@ -206,7 +206,7 @@ OnKill:
OnMyMobDead:
if (mobcount("bat_b01","OBJ#bat_b01_b::OnMyMobDead") < 1) {
- mapannounce "bat_b01", "Croix's Crystal has been destroyed.",bc_map,"0xFFCE00";
+ mapannounce("bat_b01", _("Croix's Crystal has been destroyed."), bc_map, "0xFFCE00");
if ($@Guill_ScoreBG1 > 0) {
$@FlaviusBG1_Victory = 1;
++$@Guill_ScoreBG1;
@@ -230,8 +230,8 @@ OnMyMobDead:
bat_b01,1,3,3 script guardian#bat_b01_a CLEAR_NPC,{
OnEnable:
- bg_monster $@FlaviusBG1_id1,"bat_b01",108,159,"Guillaume Camp Guardian",1949,"guardian#bat_b01_a::OnMyMobDead";
- bg_monster $@FlaviusBG1_id1,"bat_b01",108,141,"Guillaume Camp Guardian",1949,"guardian#bat_b01_a::OnMyMobDead";
+ bg_monster($@FlaviusBG1_id1, "bat_b01", 108, 159, _("Guillaume Camp Guardian"), 1949, "guardian#bat_b01_a::OnMyMobDead");
+ bg_monster($@FlaviusBG1_id1, "bat_b01", 108, 141, _("Guillaume Camp Guardian"), 1949, "guardian#bat_b01_a::OnMyMobDead");
end;
OnKill:
@@ -241,15 +241,15 @@ OnKill:
OnMyMobDead:
if (mobcount("bat_b01","guardian#bat_b01_a::OnMyMobDead") < 1) {
donpcevent "cell#bat_b01_a::OnGreen";
- mapannounce "bat_b01", "The Guardian protecting Guillaume's Crystal has been slain.",bc_map,"0xFFCE00";
+ mapannounce("bat_b01", _("The Guardian protecting Guillaume's Crystal has been slain."), bc_map, "0xFFCE00");
}
end;
}
bat_b01,1,3,3 script guardian#bat_b01_b CLEAR_NPC,{
OnEnable:
- bg_monster $@FlaviusBG1_id2,"bat_b01",307,160,"Croix Camp Guardian",1949,"guardian#bat_b01_b::OnMyMobDead";
- bg_monster $@FlaviusBG1_id2,"bat_b01",307,138,"Croix Camp Guardian",1949,"guardian#bat_b01_b::OnMyMobDead";
+ bg_monster($@FlaviusBG1_id2, "bat_b01", 307, 160, _("Croix Camp Guardian"), 1949, "guardian#bat_b01_b::OnMyMobDead");
+ bg_monster($@FlaviusBG1_id2, "bat_b01", 307, 138, _("Croix Camp Guardian"), 1949, "guardian#bat_b01_b::OnMyMobDead");
end;
OnKill:
@@ -259,7 +259,7 @@ OnKill:
OnMyMobDead:
if (mobcount("bat_b01","guardian#bat_b01_b::OnMyMobDead") < 1) {
donpcevent "cell#bat_b01_b::OnGreen";
- mapannounce "bat_b01", "The Guardian protecting Croix's Crystal has been slain.",bc_map,"0xFFCE00";
+ mapannounce("bat_b01", _("The Guardian protecting Croix's Crystal has been slain."), bc_map, "0xFFCE00");
}
end;
}
@@ -302,10 +302,10 @@ OnStop:
bat_b01,10,294,3 script Battle Therapist#b01_a 4_F_SISTER,{
specialeffect2 EF_HEAL;
- mes "[Battle Therapist]";
- mes "Just close your eyes,";
- mes "and take a deep breath.";
- mes "You can be free from pain.";
+ mes("[Battle Therapist]");
+ mes("Just close your eyes,\r"
+ "and take a deep breath.");
+ mes("You can be free from pain.");
close;
OnTimer25000:
@@ -347,10 +347,10 @@ OnTouch:
bat_b01,389,14,3 script Battle Therapist#b01_b 4_F_SISTER,{
specialeffect2 EF_HEAL;
- mes "[Battle Therapist]";
- mes "Just close your eyes,";
- mes "and take a deep breath.";
- mes "You can be free from pain.";
+ mes("[Battle Therapist]");
+ mes("Just close your eyes,\r"
+ "and take a deep breath.");
+ mes("You can be free from pain.");
close;
OnTimer25000:
@@ -410,18 +410,18 @@ bat_b01,10,294,3 script Guillaume Vintenar#b01_a 4_M_RASWORD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 8) {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,9;
}
else {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -430,18 +430,18 @@ bat_b01,10,294,3 script Guillaume Vintenar#b01_a 4_M_RASWORD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, next time you will definitely win.");
close2;
getitem BF_Badge2,3;
}
else {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, next time you will definitely win.");
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -462,18 +462,18 @@ bat_b01,389,14,3 script Croix Vintenar#b01_b 4_M_RASWORD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 8) {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,9;
}
else {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -482,18 +482,18 @@ bat_b01,389,14,3 script Croix Vintenar#b01_b 4_M_RASWORD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+". Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s. Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge2,3;
}
else {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+". Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s. Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -523,31 +523,31 @@ OnStop:
end;
OnTimer7000:
- mapannounce "bat_b01", "Guillaume Vintenar Axl Rose : Let's attack to destroy that Crystal!",bc_map,"0xFF9900";
+ mapannounce("bat_b01", _("Guillaume Vintenar Axl Rose : Let's attack to destroy that Crystal!"), bc_map, "0xFF9900");
end;
OnTimer8000:
- mapannounce "bat_b01", "Croix Vintenar Swandery : Even though Guillaume is struggling to win against us, the victory is ours. Let's show them our power.",bc_map,"0xFF99CC";
+ mapannounce("bat_b01", _("Croix Vintenar Swandery : Even though Guillaume is struggling to win against us, the victory is ours. Let's show them our power."), bc_map, "0xFF99CC");
end;
OnTimer1800000:
- mapannounce "bat_b01", "Marollo VII : Guillaume Marollo, Croix Marollo! And their followers!",bc_map,"0x99CC00";
+ mapannounce("bat_b01", _("Marollo VII : Guillaume Marollo, Croix Marollo! And their followers!"), bc_map, "0x99CC00");
end;
OnTimer1803000:
- mapannounce "bat_b01", "Marollo VII : Both camps are competitive, so it's hard to judge which team is superior.",bc_map,"0x99CC00";
+ mapannounce("bat_b01", _("Marollo VII : Both camps are competitive, so it's hard to judge which team is superior."), bc_map, "0x99CC00");
end;
OnTimer1808000:
- mapannounce "bat_b01", "Marollo VII : This battle of Flavian is such a waste of time. I will decide victory and defeat by your progress.",bc_map,"0x99CC00";
+ mapannounce("bat_b01", _("Marollo VII : This battle of Flavian is such a waste of time. I will decide victory and defeat by your progress."), bc_map, "0x99CC00");
end;
OnTimer1822000:
- mapannounce "bat_b01", "Marollo VII : If you can't accept the results, try again in another valley battle!",bc_map,"0x99CC00";
+ mapannounce("bat_b01", _("Marollo VII : If you can't accept the results, try again in another valley battle!"), bc_map, "0x99CC00");
end;
OnTimer1825000:
- mapannounce "bat_b01", "Axl Rose, Swandery : Yes, sir.",bc_map,"0x99CC00";
+ mapannounce("bat_b01", _("Axl Rose, Swandery : Yes, sir."), bc_map, "0x99CC00");
end;
OnTimer1830000:
@@ -595,18 +595,18 @@ bat_b01,10,294,3 script Vintenar#bat_b01_aover 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 8) {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,9;
}
else {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -615,18 +615,18 @@ bat_b01,10,294,3 script Vintenar#bat_b01_aover 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, next time you will definitely win.");
close2;
getitem BF_Badge2,3;
}
else {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, next time you will definitely win.");
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -635,26 +635,26 @@ bat_b01,10,294,3 script Vintenar#bat_b01_aover 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, next time you will definitely win.");
close2;
getitem BF_Badge2,3;
}
else {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, next time you will definitely win.");
close2;
getitem BF_Badge2,.@medal_gap;
}
}
}
else {
- mes "[Axl Rose]";
- mes "Why are you here, Croix mercenary? I am definitely sure of victory against foolish Croix such as you. Ha!";
+ mes("[Axl Rose]");
+ mes("Why are you here, Croix mercenary? I am definitely sure of victory against foolish Croix such as you. Ha!");
close;
}
bg_leave;
@@ -673,18 +673,18 @@ bat_b01,389,14,3 script Vintenar#bat_b01_bover 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+". Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s. Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge2,3;
}
else {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+". Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s. Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -693,18 +693,18 @@ bat_b01,389,14,3 script Vintenar#bat_b01_bover 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+". Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s. Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge2,3;
}
else {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+". Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s. Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -713,26 +713,26 @@ bat_b01,389,14,3 script Vintenar#bat_b01_bover 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 8) {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,9;
}
else {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,.@medal_gap;
}
}
}
else {
- mes "[Swandery]";
- mes "Why do you come here as a Guillaume? You will be sent to where you should be!";
+ mes("[Swandery]");
+ mes("Why do you come here as a Guillaume? You will be sent to where you should be!");
close;
}
bg_leave;
@@ -747,21 +747,21 @@ OnInit:
bat_b01,1,10,3 script Release all#b01 4_DOG01,{
.@i = callfunc("F_GM_NPC",1854,0);
if (.@i == -1) {
- mes "Cancelled.";
+ mes("Cancelled.");
close;
} else if (.@i == 0) {
end;
} else {
- mes "May I help you?";
+ mes("May I help you?");
next;
switch(select("Release all.", "Cancel.")) {
case 1:
- mes "Bye.";
+ mes("Bye.");
close2;
mapwarp "bat_b01","bat_room",154,150;
end;
case 2:
- mes "Cancelled.";
+ mes("Cancelled.");
close;
}
}
diff --git a/npc/battleground/flavius/flavius02.txt b/npc/battleground/flavius/flavius02.txt
index 314aeeeba..0686d7957 100644
--- a/npc/battleground/flavius/flavius02.txt
+++ b/npc/battleground/flavius/flavius02.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Euphy
//= Copyright (C) Kisuka
//= Copyright (C) L0ne_W0lf
@@ -40,7 +40,7 @@
bat_room,142,227,4 script Lieutenant Huvas 4_M_KY_KNT,{
end;
OnInit:
- waitingroom "Battle Station",11,"start#bat_b02::OnReadyCheck",1,0,80;
+ waitingroom(_("Battle Station"), 11, "start#bat_b02::OnReadyCheck", 1, 0, 80);
end;
OnEnterBG:
$@FlaviusBG2_id1 = waitingroom2bg("bat_b02",10,290,"start#bat_b02::OnGuillaumeQuit","");
@@ -50,7 +50,7 @@ OnEnterBG:
bat_room,142,204,0 script Lieutenant Yukon 4_M_CRU_KNT,{
end;
OnInit:
- waitingroom "Battle Station",11,"start#bat_b02::OnReadyCheck",1,0,80;
+ waitingroom(_("Battle Station"), 11, "start#bat_b02::OnReadyCheck", 1, 0, 80);
end;
OnEnterBG:
$@FlaviusBG2_id2 = waitingroom2bg("bat_b02",390,10,"start#bat_b02::OnCroixQuit","");
@@ -173,7 +173,7 @@ OnKill:
OnMyMobDead:
if (mobcount("bat_b02","OBJ#bat_b02_a::OnMyMobDead") < 1) {
- mapannounce "bat_b02", "Guillaume's Crystal has been destroyed.",bc_map,"0xFFCE00";
+ mapannounce("bat_b02", _("Guillaume's Crystal has been destroyed."), bc_map, "0xFFCE00");
if ($@Croix_ScoreBG2 > 0) {
$@FlaviusBG2_Victory = 2;
$@Croix_ScoreBG2 = $@Croix_ScoreBG2+1;
@@ -197,7 +197,7 @@ OnMyMobDead:
bat_b02,1,2,3 script OBJ#bat_b02_b CLEAR_NPC,{
OnEnable:
- bg_monster $@FlaviusBG2_id2,"bat_b02",328,150,"Blue Crystal",1914,"OBJ#bat_b02_b::OnMyMobDead";
+ bg_monster($@FlaviusBG2_id2, "bat_b02", 328, 150, _("Blue Crystal"), 1914, "OBJ#bat_b02_b::OnMyMobDead");
end;
OnKill:
@@ -206,7 +206,7 @@ OnKill:
OnMyMobDead:
if (mobcount("bat_b02","OBJ#bat_b02_b::OnMyMobDead") < 1) {
- mapannounce "bat_b02", "Croix's Crystal has been destroyed.",bc_map,"0xFFCE00";
+ mapannounce("bat_b02", _("Croix's Crystal has been destroyed."), bc_map, "0xFFCE00");
if ($@Guill_ScoreBG2 > 0) {
$@FlaviusBG2_Victory = 1;
++$@Guill_ScoreBG2;
@@ -230,8 +230,8 @@ OnMyMobDead:
bat_b02,1,3,3 script guardian#bat_b02_a CLEAR_NPC,{
OnEnable:
- bg_monster $@FlaviusBG2_id1,"bat_b02",108,159,"Guillaume Camp Guardian",1949,"guardian#bat_b02_a::OnMyMobDead";
- bg_monster $@FlaviusBG2_id1,"bat_b02",108,141,"Guillaume Camp Guardian",1949,"guardian#bat_b02_a::OnMyMobDead";
+ bg_monster($@FlaviusBG2_id1, "bat_b02", 108, 159, _("Guillaume Camp Guardian"), 1949, "guardian#bat_b02_a::OnMyMobDead");
+ bg_monster($@FlaviusBG2_id1, "bat_b02", 108, 141, _("Guillaume Camp Guardian"), 1949, "guardian#bat_b02_a::OnMyMobDead");
end;
OnKill:
@@ -241,15 +241,15 @@ OnKill:
OnMyMobDead:
if (mobcount("bat_b02","guardian#bat_b02_a::OnMyMobDead") < 1) {
donpcevent "cell#bat_b02_a::OnGreen";
- mapannounce "bat_b02", "The Guardian protecting Guillaume's Crystal has been slain.",bc_map,"0xFFCE00";
+ mapannounce("bat_b02", _("The Guardian protecting Guillaume's Crystal has been slain."), bc_map, "0xFFCE00");
}
end;
}
bat_b02,1,3,3 script guardian#bat_b02_b CLEAR_NPC,{
OnEnable:
- bg_monster $@FlaviusBG2_id2,"bat_b02",307,160,"Croix Camp Guardian",1949,"guardian#bat_b02_b::OnMyMobDead";
- bg_monster $@FlaviusBG2_id2,"bat_b02",307,138,"Croix Camp Guardian",1949,"guardian#bat_b02_b::OnMyMobDead";
+ bg_monster($@FlaviusBG2_id2, "bat_b02", 307, 160, _("Croix Camp Guardian"), 1949, "guardian#bat_b02_b::OnMyMobDead");
+ bg_monster($@FlaviusBG2_id2, "bat_b02", 307, 138, _("Croix Camp Guardian"), 1949, "guardian#bat_b02_b::OnMyMobDead");
end;
OnKill:
@@ -259,7 +259,7 @@ OnKill:
OnMyMobDead:
if (mobcount("bat_b02","guardian#bat_b02_b::OnMyMobDead") < 1) {
donpcevent "cell#bat_b02_b::OnGreen";
- mapannounce "bat_b02", "The Guardian protecting Croix's Crystal has been slain.",bc_map,"0xFFCE00";
+ mapannounce("bat_b02", _("The Guardian protecting Croix's Crystal has been slain."), bc_map, "0xFFCE00");
}
end;
}
@@ -302,10 +302,10 @@ OnStop:
bat_b02,10,294,3 script Battle Therapist#b02_a 4_F_SISTER,{
specialeffect2 EF_HEAL;
- mes "[Battle Therapist]";
- mes "Just close your eyes,";
- mes "and take a deep breath.";
- mes "You can be free from pain.";
+ mes("[Battle Therapist]");
+ mes("Just close your eyes,\r"
+ "and take a deep breath.");
+ mes("You can be free from pain.");
close;
OnTimer25000:
@@ -347,10 +347,10 @@ OnTouch:
bat_b02,389,14,3 script Battle Therapist#b02_b 4_F_SISTER,{
specialeffect2 EF_HEAL;
- mes "[Battle Therapist]";
- mes "Just close your eyes,";
- mes "and take a deep breath.";
- mes "You can be free from pain.";
+ mes("[Battle Therapist]");
+ mes("Just close your eyes,\r"
+ "and take a deep breath.");
+ mes("You can be free from pain.");
close;
OnTimer25000:
@@ -410,18 +410,18 @@ bat_b02,10,294,3 script Guillaume Vintenar#b02_a 4_M_RASWORD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 8) {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,9;
}
else {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -430,18 +430,18 @@ bat_b02,10,294,3 script Guillaume Vintenar#b02_a 4_M_RASWORD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, next time you will definitely win.");
close2;
getitem BF_Badge2,3;
}
else {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, next time you will definitely win.");
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -462,18 +462,18 @@ bat_b02,389,14,3 script Croix Vintenar#b02_b 4_M_RASWORD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 8) {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,9;
}
else {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -482,18 +482,18 @@ bat_b02,389,14,3 script Croix Vintenar#b02_b 4_M_RASWORD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+". Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s. Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge2,3;
}
else {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+". Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s. Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -523,31 +523,31 @@ OnStop:
end;
OnTimer7000:
- mapannounce "bat_b02", "Guillaume Vintenar Axl Rose : Let's attack to destroy that Crystal!",bc_map,"0xFF9900";
+ mapannounce("bat_b02", _("Guillaume Vintenar Axl Rose : Let's attack to destroy that Crystal!"), bc_map, "0xFF9900");
end;
OnTimer8000:
- mapannounce "bat_b02", "Croix Vintenar Swandery : Even though Guillaume is struggling to win against us, the victory is ours. Let's show them our power.",bc_map,"0xFF99CC";
+ mapannounce("bat_b02", _("Croix Vintenar Swandery : Even though Guillaume is struggling to win against us, the victory is ours. Let's show them our power."), bc_map, "0xFF99CC");
end;
OnTimer1800000:
- mapannounce "bat_b02", "Marollo VII : Guillaume Marollo, Croix Marollo! And their followers!",bc_map,"0x99CC00";
+ mapannounce("bat_b02", _("Marollo VII : Guillaume Marollo, Croix Marollo! And their followers!"), bc_map, "0x99CC00");
end;
OnTimer1803000:
- mapannounce "bat_b02", "Marollo VII : Both camps are competitive, so it's hard to judge which team is superior.",bc_map,"0x99CC00";
+ mapannounce("bat_b02", _("Marollo VII : Both camps are competitive, so it's hard to judge which team is superior."), bc_map, "0x99CC00");
end;
OnTimer1808000:
- mapannounce "bat_b02", "Marollo VII : This battle of Flavian is such a waste of time. I will decide victory and defeat by your progress.",bc_map,"0x99CC00";
+ mapannounce("bat_b02", _("Marollo VII : This battle of Flavian is such a waste of time. I will decide victory and defeat by your progress."), bc_map, "0x99CC00");
end;
OnTimer1822000:
- mapannounce "bat_b02", "Marollo VII : If you can't accept the results, try again in another valley battle!",bc_map,"0x99CC00";
+ mapannounce("bat_b02", _("Marollo VII : If you can't accept the results, try again in another valley battle!"), bc_map, "0x99CC00");
end;
OnTimer1825000:
- mapannounce "bat_b02", "Axl Rose, Swandery : Yes, sir.",bc_map,"0x99CC00";
+ mapannounce("bat_b02", _("Axl Rose, Swandery : Yes, sir."), bc_map, "0x99CC00");
end;
OnTimer1830000:
@@ -595,18 +595,18 @@ bat_b02,10,294,3 script Vintenar#bat_b02_aover 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 8) {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,9;
}
else {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -615,18 +615,18 @@ bat_b02,10,294,3 script Vintenar#bat_b02_aover 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, next time you will definitely win.");
close2;
getitem BF_Badge2,3;
}
else {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, next time you will definitely win.");
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -635,26 +635,26 @@ bat_b02,10,294,3 script Vintenar#bat_b02_aover 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, next time you will definitely win.");
close2;
getitem BF_Badge2,3;
}
else {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, next time you will definitely win.");
close2;
getitem BF_Badge2,.@medal_gap;
}
}
}
else {
- mes "[Axl Rose]";
- mes "Why are you here, Croix mercenary? I am definitely sure of victory against foolish Croix such as you. Ha!";
+ mes("[Axl Rose]");
+ mes("Why are you here, Croix mercenary? I am definitely sure of victory against foolish Croix such as you. Ha!");
close;
}
bg_leave;
@@ -673,18 +673,18 @@ bat_b02,389,14,3 script Vintenar#bat_b02_bover 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+". Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s. Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge2,3;
}
else {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+". Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s. Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -693,18 +693,18 @@ bat_b02,389,14,3 script Vintenar#bat_b02_bover 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+". Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s. Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge2,3;
}
else {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+". Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s. Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge2,.@medal_gap;
}
@@ -713,26 +713,26 @@ bat_b02,389,14,3 script Vintenar#bat_b02_bover 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge2);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 8) {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,9;
}
else {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge2,.@medal_gap;
}
}
}
else {
- mes "[Swandery]";
- mes "Why do you come here as a Guillaume? You will be sent to where you should be!";
+ mes("[Swandery]");
+ mes("Why do you come here as a Guillaume? You will be sent to where you should be!");
close;
}
bg_leave;
@@ -747,21 +747,21 @@ OnInit:
bat_b02,1,10,3 script Release all#b02 4_DOG01,{
.@i = callfunc("F_GM_NPC",1854,0);
if (.@i == -1) {
- mes "Cancelled.";
+ mes("Cancelled.");
close;
} else if (.@i == 0) {
end;
} else {
- mes "May I help you?";
+ mes("May I help you?");
next;
switch(select("Release all.", "Cancel.")) {
case 1:
- mes "Bye.";
+ mes("Bye.");
close2;
mapwarp "bat_b02","bat_room",154,150;
end;
case 2:
- mes "Cancelled.";
+ mes("Cancelled.");
close;
}
}
diff --git a/npc/battleground/flavius/flavius_enter.txt b/npc/battleground/flavius/flavius_enter.txt
index 9643ded2c..974a0dab0 100644
--- a/npc/battleground/flavius/flavius_enter.txt
+++ b/npc/battleground/flavius/flavius_enter.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) L0ne_W0lf
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -35,59 +35,59 @@
//== Flavius Officer - Guillaume ===========================
bat_room,133,178,5 script Flavius Officer#01a 4_M_KY_KNT,{
if (checkweight(Knife,1) == 0) {
- mes "- Wait a minute !! -";
- mes "- Currently you're carrying -";
- mes "- too many items with you. -";
- mes "- Please try again -";
- mes "- after you loose some weight. -";
+ mes("- Wait a minute !! -");
+ mes("- Currently you're carrying -");
+ mes("- too many items with you. -");
+ mes("- Please try again -");
+ mes("- after you loose some weight. -");
close;
}
- mes "[Guillaume Army Officer]";
- mes "Let's show the power of the Guillaume Army to those stinky Croixs!";
+ mes("[Guillaume Army Officer]");
+ mes("Let's show the power of the Guillaume Army to those stinky Croixs!");
next;
switch(select("I want to join your army!", "End Conversation")) {
case 1:
if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes "[Guillaume Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Guillaume Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
if (BaseLevel < 80) {
- mes "[Guillaume Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Guillaume Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
.@chk_urtime = questprogress(2070, PLAYTIME);
if (.@chk_urtime == 1) {
- mes "[Guillaume Army Officer]";
- mes "You seem to have just returned from the battlefield.";
- mes "It's too early for you to go back. Go rest, and leave the enemies to us!";
+ mes("[Guillaume Army Officer]");
+ mes("You seem to have just returned from the battlefield.");
+ mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
break;
}
if (.@chk_urtime == 2)
erasequest 2070;
if (getmapusers("bat_b01") > 0) {
- mes "[Guillaume Army Officer]";
- mes "I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Croixs already.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Guillaume Army Officer]");
+ mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Croixs already.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
if ($@FlaviusBG1 > 0) {
- mes "[Guillaume Army Officer]";
- mes "An elite corps is already standing by to be dispatched to the battlefield.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Guillaume Army Officer]");
+ mes("An elite corps is already standing by to be dispatched to the battlefield.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
- mes "[Guillaume Army Officer]";
- mes "You definitely seem to be ready for battle!";
- mes "Go show the Croixs what fear truly means!";
- mes "Today, our cry of victory shall echo all over the battlefield!";
+ mes("[Guillaume Army Officer]");
+ mes("You definitely seem to be ready for battle!");
+ mes("Go show the Croixs what fear truly means!");
+ mes("Today, our cry of victory shall echo all over the battlefield!");
close2;
warp "bat_room",85,223;
end;
case 2:
- mes "[Guillaume Army Officer]";
- mes "Today, we shall be victorious!";
+ mes("[Guillaume Army Officer]");
+ mes("Today, we shall be victorious!");
break;
}
close;
@@ -95,208 +95,208 @@ bat_room,133,178,5 script Flavius Officer#01a 4_M_KY_KNT,{
bat_room,133,121,1 script Flavius Officer#01b 4_M_CRU_KNT,{
if (checkweight(Knife,1) == 0) {
- mes "- Wait a minute !! -";
- mes "- Currently you're carrying -";
- mes "- too many items with you. -";
- mes "- Please try again -";
- mes "- after you loose some weight. -";
+ mes("- Wait a minute !! -");
+ mes("- Currently you're carrying -");
+ mes("- too many items with you. -");
+ mes("- Please try again -");
+ mes("- after you loose some weight. -");
close;
}
- mes "[Croix Army Officer]";
- mes "Let's show the Guillaumes the power of the Croix Army!";
+ mes("[Croix Army Officer]");
+ mes("Let's show the Guillaumes the power of the Croix Army!");
next;
switch(select("I want to join your army!", "End Conversation")) {
case 1:
if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes "[Croix Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Croix Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
if (BaseLevel < 80) {
- mes "[Croix Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Croix Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
.@chk_urtime = questprogress(2070,PLAYTIME);
if (.@chk_urtime == 1) {
- mes "[Croix Army Officer]";
- mes "You seem to have just returned from the battlefield.";
- mes "It's too early for you to go back. Go rest, and leave the enemies to us!";
+ mes("[Croix Army Officer]");
+ mes("You seem to have just returned from the battlefield.");
+ mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
break;
}
if (.@chk_urtime == 2)
erasequest 2070;
if (getmapusers("bat_b01") > 0) {
- mes "[Croix Army Officer]";
- mes "I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Guillaume already.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Croix Army Officer]");
+ mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Guillaume already.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
if ($@FlaviusBG1 > 0) {
- mes "[Croix Army Officer]";
- mes "An elite corps is already standing by to be dispatched to the battlefield.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Croix Army Officer]");
+ mes("An elite corps is already standing by to be dispatched to the battlefield.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
- mes "[Croix Army Officer]";
- mes "You definitely seem to be ready for battle!";
- mes "Go show the Guillaumes what fear truly means!";
- mes "Today, our cry of victory shall echo all over the battlefield!";
+ mes("[Croix Army Officer]");
+ mes("You definitely seem to be ready for battle!");
+ mes("Go show the Guillaumes what fear truly means!");
+ mes("Today, our cry of victory shall echo all over the battlefield!");
close2;
warp "bat_room",85,207;
end;
case 2:
- mes "[Croix Army Officer]";
- mes "Today, we shall be victorious!";
+ mes("[Croix Army Officer]");
+ mes("Today, we shall be victorious!");
break;
}
close;
}
bat_room,135,178,5 script Guillaume Knight#3 4_M_KY_SOLD,{
- mes "[Guillaume Knight]";
- mes "The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal.";
+ mes("[Guillaume Knight]");
+ mes("The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal.");
next;
- mes "[Guillaume Knight]";
- mes "The crystals for both armies are protected by special barricades that cannot be destroyed by direct attacks.";
+ mes("[Guillaume Knight]");
+ mes("The crystals for both armies are protected by special barricades that cannot be destroyed by direct attacks.");
next;
- mes "[Guillaume Knight]";
- mes "But they can be removed by destroying the Guardians that protect the enemy army base.";
+ mes("[Guillaume Knight]");
+ mes("But they can be removed by destroying the Guardians that protect the enemy army base.");
next;
- mes "[Guillaume Knight]";
- mes "The crystals are immune to every type of skill; your physical attacks are the only choice for destroying your enemy's crystal.";
+ mes("[Guillaume Knight]");
+ mes("The crystals are immune to every type of skill; your physical attacks are the only choice for destroying your enemy's crystal.");
next;
- mes "[Guillaume Knight]";
- mes "Please remember: when you join a battle, you will be receiving a token which indicates the set duration for which you cannot participate in the same type of battle.";
- mes "You may check the duration by pressing the Alt+U keys.";
+ mes("[Guillaume Knight]");
+ mes("Please remember: when you join a battle, you will be receiving a token which indicates the set duration for which you cannot participate in the same type of battle.");
+ mes("You may check the duration by pressing the Alt+U keys.");
next;
- mes "[Guillaume Knight]";
- mes "Are you ready for battle? Then apply with the recruiter next to me!";
+ mes("[Guillaume Knight]");
+ mes("Are you ready for battle? Then apply with the recruiter next to me!");
close;
}
bat_room,151,178,5 script Guillaume Knight#4 4_M_KY_SOLD,{
- mes "[Guillaume Knight]";
- mes "The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal.";
+ mes("[Guillaume Knight]");
+ mes("The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal.");
next;
- mes "[Guillaume Knight]";
- mes "The crystals for both armies are protected by special barricades that cannot be destroyed by direct attacks.";
+ mes("[Guillaume Knight]");
+ mes("The crystals for both armies are protected by special barricades that cannot be destroyed by direct attacks.");
next;
- mes "[Guillaume Knight]";
- mes "But they can be removed by destroying the Guardians that protect the enemy army base.";
+ mes("[Guillaume Knight]");
+ mes("But they can be removed by destroying the Guardians that protect the enemy army base.");
next;
- mes "[Guillaume Knight]";
- mes "The crystals are immune to every type of skill; your physical attacks are the only choice for destroying your enemy's crystal.";
+ mes("[Guillaume Knight]");
+ mes("The crystals are immune to every type of skill; your physical attacks are the only choice for destroying your enemy's crystal.");
next;
- mes "[Guillaume Knight]";
- mes "Please remember: when you join a battle, you will be receiving a token which indicates the set duration for which you cannot participate in the same type of battle.";
- mes "You may check the duration by pressing the Alt+U keys.";
+ mes("[Guillaume Knight]");
+ mes("Please remember: when you join a battle, you will be receiving a token which indicates the set duration for which you cannot participate in the same type of battle.");
+ mes("You may check the duration by pressing the Alt+U keys.");
next;
- mes "[Guillaume Knight]";
- mes "Are you ready for battle? Then apply with the recruiter next to me!";
+ mes("[Guillaume Knight]");
+ mes("Are you ready for battle? Then apply with the recruiter next to me!");
close;
}
bat_room,135,121,1 script Croix Knight#3 4_M_CRU_SOLD,{
- mes "[Croix Knight]";
- mes "The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal.";
+ mes("[Croix Knight]");
+ mes("The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal.");
next;
- mes "[Croix Knight]";
- mes "The crystals for both armies are protected by special barricades that cannot be destroyed by direct attacks.";
+ mes("[Croix Knight]");
+ mes("The crystals for both armies are protected by special barricades that cannot be destroyed by direct attacks.");
next;
- mes "[Croix Knight]";
- mes "But they can be removed by destroying the Guardians that protect the enemy army base.";
+ mes("[Croix Knight]");
+ mes("But they can be removed by destroying the Guardians that protect the enemy army base.");
next;
- mes "[Croix Knight]";
- mes "The crystals are immune to every type of skill; your physical attacks are the only choice for destroying your enemy's crystal.";
+ mes("[Croix Knight]");
+ mes("The crystals are immune to every type of skill; your physical attacks are the only choice for destroying your enemy's crystal.");
next;
- mes "[Croix Knight]";
- mes "Please remember: when you join a battle, you will be receiving a token which indicates the set duration for which you cannot participate in the same type of battle.";
- mes "You may check the duration by pressing the Alt+U keys.";
+ mes("[Croix Knight]");
+ mes("Please remember: when you join a battle, you will be receiving a token which indicates the set duration for which you cannot participate in the same type of battle.");
+ mes("You may check the duration by pressing the Alt+U keys.");
next;
- mes "[Croix Knight]";
- mes "Are you ready for battle? Then apply with the recruiter next to me!";
+ mes("[Croix Knight]");
+ mes("Are you ready for battle? Then apply with the recruiter next to me!");
close;
}
bat_room,151,121,1 script Croix Knight#4 4_M_CRU_SOLD,{
- mes "[Croix Knight]";
- mes "The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal.";
+ mes("[Croix Knight]");
+ mes("The objective of the Flavius Battle is to score 2 points before your enemy by destroying their crystal.");
next;
- mes "[Croix Knight]";
- mes "The crystals for both armies are protected by special barricades that cannot be destroyed by direct attacks.";
+ mes("[Croix Knight]");
+ mes("The crystals for both armies are protected by special barricades that cannot be destroyed by direct attacks.");
next;
- mes "[Croix Knight]";
- mes "But they can be removed by destroying the Guardians that protect the enemy army base.";
+ mes("[Croix Knight]");
+ mes("But they can be removed by destroying the Guardians that protect the enemy army base.");
next;
- mes "[Croix Knight]";
- mes "The crystals are immune to every type of skill; your physical attacks are the only choice for destroying your enemy's crystal.";
+ mes("[Croix Knight]");
+ mes("The crystals are immune to every type of skill; your physical attacks are the only choice for destroying your enemy's crystal.");
next;
- mes "[Croix Knight]";
- mes "Please remember: when you join a battle, you will be receiving a token which indicates the set duration for which you cannot participate in the same type of battle.";
- mes "You may check the duration by pressing the Alt+U keys.";
+ mes("[Croix Knight]");
+ mes("Please remember: when you join a battle, you will be receiving a token which indicates the set duration for which you cannot participate in the same type of battle.");
+ mes("You may check the duration by pressing the Alt+U keys.");
next;
- mes "[Croix Knight]";
- mes "Are you ready for battle? Then apply with the recruiter next to me!";
+ mes("[Croix Knight]");
+ mes("Are you ready for battle? Then apply with the recruiter next to me!");
close;
}
//== Flavius Officer - Croix ===============================
bat_room,148,178,5 script Flavius Officer#02a 4_M_KY_KNT,{
if (checkweight(Knife,1) == 0) {
- mes "- Wait a minute !! -";
- mes "- Currently you're carrying -";
- mes "- too many items with you. -";
- mes "- Please try again -";
- mes "- after you loose some weight. -";
+ mes("- Wait a minute !! -");
+ mes("- Currently you're carrying -");
+ mes("- too many items with you. -");
+ mes("- Please try again -");
+ mes("- after you loose some weight. -");
close;
}
- mes "[Guillaume Army Officer]";
- mes "Let's show the power of the Guillaume Army to those stinky Croixs!";
+ mes("[Guillaume Army Officer]");
+ mes("Let's show the power of the Guillaume Army to those stinky Croixs!");
next;
switch(select("I want to join your army!", "End Conversation")) {
case 1:
if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes "[Guillaume Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Guillaume Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
if (BaseLevel < 80) {
- mes "[Guillaume Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Guillaume Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
.@chk_urtime = questprogress(2070, PLAYTIME);
if (.@chk_urtime == 1) {
- mes "[Guillaume Army Officer]";
- mes "You seem to have just returned from the battlefield.";
- mes "It's too early for you to go back. Go rest, and leave the enemies to us!";
+ mes("[Guillaume Army Officer]");
+ mes("You seem to have just returned from the battlefield.");
+ mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
break;
}
if (.@chk_urtime == 2)
erasequest 2070;
if (getmapusers("bat_b02") > 0) {
- mes "[Guillaume Army Officer]";
- mes "I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Croixs already.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Guillaume Army Officer]");
+ mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Croixs already.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
if ($@FlaviusBG2 > 0) {
- mes "[Guillaume Army Officer]";
- mes "An elite corps is already standing by to be dispatched to the battlefield.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Guillaume Army Officer]");
+ mes("An elite corps is already standing by to be dispatched to the battlefield.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
- mes "[Guillaume Army Officer]";
- mes "You definitely seem to be ready for battle!";
- mes "Go show the Croixs what fear truly means!";
- mes "Today, our cry of victory shall echo all over the battlefield!";
+ mes("[Guillaume Army Officer]");
+ mes("You definitely seem to be ready for battle!");
+ mes("Go show the Croixs what fear truly means!");
+ mes("Today, our cry of victory shall echo all over the battlefield!");
close2;
warp "bat_room",141,224;
end;
case 2:
- mes "[Guillaume Army Officer]";
- mes "Today, we shall be victorious!";
+ mes("[Guillaume Army Officer]");
+ mes("Today, we shall be victorious!");
break;
}
close;
@@ -304,59 +304,59 @@ bat_room,148,178,5 script Flavius Officer#02a 4_M_KY_KNT,{
bat_room,148,121,1 script Flavius Officer#02b 4_M_CRU_KNT,{
if (checkweight(Knife,1) == 0) {
- mes "- Wait a minute !! -";
- mes "- Currently you're carrying -";
- mes "- too many items with you. -";
- mes "- Please try again -";
- mes "- after you loose some weight. -";
+ mes("- Wait a minute !! -");
+ mes("- Currently you're carrying -");
+ mes("- too many items with you. -");
+ mes("- Please try again -");
+ mes("- after you loose some weight. -");
close;
}
- mes "[Croix Army Officer]";
- mes "Let's show the power of the Croix Army to those stinky Guillaumes!";
+ mes("[Croix Army Officer]");
+ mes("Let's show the power of the Croix Army to those stinky Guillaumes!");
next;
switch(select("I want to join your army!", "End Conversation")) {
case 1:
if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes "[Croix Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Croix Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
if (BaseLevel < 80) {
- mes "[Croix Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Croix Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
.@chk_urtime = questprogress(2070,PLAYTIME);
if (.@chk_urtime == 1) {
- mes "[Croix Army Officer]";
- mes "You seem to have just returned from the battlefield.";
- mes "It's too early for you to go back. Go rest, and leave the enemies to us!";
+ mes("[Croix Army Officer]");
+ mes("You seem to have just returned from the battlefield.");
+ mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
break;
}
if (.@chk_urtime == 2)
erasequest 2070;
if (getmapusers("bat_b02") > 0) {
- mes "[Croix Army Officer]";
- mes "I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Guillaume already.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Croix Army Officer]");
+ mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Guillaume already.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
if ($@FlaviusBG2 > 0) {
- mes "[Croix Army Officer]";
- mes "An elite corps is already standing by to be dispatched to the battlefield.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Croix Army Officer]");
+ mes("An elite corps is already standing by to be dispatched to the battlefield.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
- mes "[Croix Army Officer]";
- mes "You definitely seem to be ready for battle!";
- mes "Go show the Guillaumes what fear truly means!";
- mes "Today, our cry of victory shall echo all over the battlefield!";
+ mes("[Croix Army Officer]");
+ mes("You definitely seem to be ready for battle!");
+ mes("Go show the Guillaumes what fear truly means!");
+ mes("Today, our cry of victory shall echo all over the battlefield!");
close2;
warp "bat_room",141,207;
end;
case 2:
- mes "[Croix Army Officer]";
- mes "Today, we shall be victorious!";
+ mes("[Croix Army Officer]");
+ mes("Today, we shall be victorious!");
break;
}
close;
diff --git a/npc/battleground/kvm/kvm01.txt b/npc/battleground/kvm/kvm01.txt
index 0e737d0c0..d0b3d16be 100644
--- a/npc/battleground/kvm/kvm01.txt
+++ b/npc/battleground/kvm/kvm01.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) L0ne_W0lf
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -39,7 +39,7 @@ bat_room,169,226,5 script KVM Waiting Room#a::KvM01R_Guillaume 4_M_KY_KNT,{
end;
OnInit:
- waitingroom "Battle Station 5 Players",6,"KvM01_BG::OnGuillaumeJoin",1;
+ waitingroom(_("Battle Station 5 Players"), 6, "KvM01_BG::OnGuillaumeJoin", 1);
end;
OnEnterBG:
@@ -53,7 +53,7 @@ bat_room,169,205,3 script KVM Waiting Room#b::KvM01R_Croix 4_M_CRU_KNT,{
end;
OnInit:
- waitingroom "Battle Station 5 Players",6,"KvM01_BG::OnCroixJoin",1;
+ waitingroom(_("Battle Station 5 Players"), 6, "KvM01_BG::OnCroixJoin", 1);
end;
OnEnterBG:
@@ -160,8 +160,8 @@ OnGuillaumeDie:
bg_updatescore "bat_c01",.Guillaume_Count,.Croix_Count;
if( .Guillaume_Count < 1 ) donpcevent "KvM01_BG::OnCroixWin";
else {
- mapannounce "bat_c01", "The number of Guillaumes is "+.Guillaume_Count+".",bc_map,"0x00ff00";
- mapannounce "bat_c01", "The number of Croixes is "+.Croix_Count+".",bc_map,"0x00ff00";
+ mapannounce("bat_c01", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
+ mapannounce("bat_c01", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
}
}
end;
@@ -174,8 +174,8 @@ OnCroixDie:
bg_updatescore "bat_c01",.Guillaume_Count,.Croix_Count;
if( .Croix_Count < 1 ) donpcevent "KvM01_BG::OnGuillaumeWin";
else {
- mapannounce "bat_c01", "The number of Guillaumes is "+.Guillaume_Count+".",bc_map,"0x00ff00";
- mapannounce "bat_c01", "The number of Croixes is "+.Croix_Count+".",bc_map,"0x00ff00";
+ mapannounce("bat_c01", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
+ mapannounce("bat_c01", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
}
}
end;
@@ -206,16 +206,16 @@ OnStart:
end;
OnTimer1000:
- mapannounce "bat_c01", "In 1 minute, KVM will start.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("In 1 minute, KVM will start."), bc_map, "0x00ff00");
end;
OnTimer3000:
- mapannounce "bat_c01", "The maximum time for a KVM battle is 5 minutes.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("The maximum time for a KVM battle is 5 minutes."), bc_map, "0x00ff00");
end;
OnTimer6000:
- mapannounce "bat_c01", "Please prepare for the KVM battle.",bc_map,"0x00ff00";
- mapannounce "bat_c01", "You can buff your people.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("Please prepare for the KVM battle."), bc_map, "0x00ff00");
+ mapannounce("bat_c01", _("You can buff your people."), bc_map, "0x00ff00");
donpcevent "#A_camp_start01::OnEnable";
donpcevent "#B_camp_start01::OnEnable";
end;
@@ -226,26 +226,26 @@ OnTimer13000:
end;
OnTimer30000:
- mapannounce "bat_c01", "30 seconds remaining to start KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("30 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
end;
OnTimer45000:
- mapannounce "bat_c01", "15 seconds remaining to start KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("15 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
donpcevent "::OnKvM01One";
end;
OnTimer50000:
- mapannounce "bat_c01", "10 seconds remaining to start KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("10 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
donpcevent "::OnKvM01Two";
end;
OnTimer55000:
- mapannounce "bat_c01", "5 seconds remaining to start KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("5 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
donpcevent "::OnKvM01One";
end;
OnTimer59000:
- mapannounce "bat_c01", "KVM is now commencing.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("KVM is now commencing."), bc_map, "0x00ff00");
donpcevent "::OnKvM01Two";
end;
@@ -257,7 +257,7 @@ OnTimer61000:
{
$@KvM01BG_Victory = 3;
$@KvM01BG = 3;
- mapannounce "bat_c01","There are not enough players to start the battle",1,0x696969;
+ mapannounce("bat_c01", _("There are not enough players to start the battle"), bc_map, "0x696969");
stopnpctimer;
donpcevent "KvM01_BG::OnStop";
end;
@@ -268,27 +268,27 @@ OnTimer61000:
end;
OnTimer300000:
- mapannounce "bat_c01", "1 minute remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("1 minute remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer330000:
- mapannounce "bat_c01", "30 seconds remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("30 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer345000:
- mapannounce "bat_c01", "15 seconds remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("15 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer350000:
- mapannounce "bat_c01", "10 seconds remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("10 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer355000:
- mapannounce "bat_c01", "5 seconds remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("5 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer360000:
- mapannounce "bat_c01", "The KVM battle is over.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("The KVM battle is over."), bc_map, "0x00ff00");
if( .Croix_Count > .Guillaume_Count )
donpcevent "KvM01_BG::OnCroixWin";
else if( .Croix_Count < .Guillaume_Count )
@@ -297,9 +297,9 @@ OnTimer360000:
{ // Draw Game
$@KvM01BG = 3;
$@KvM01BG_Victory = 3;
- mapannounce "bat_c01", "The number of Guillaumes is "+.Guillaume_Count+".",bc_map,"0x00ff00";
- mapannounce "bat_c01", "The number of Croixes is "+.Croix_Count+".",bc_map,"0x00ff00";
- mapannounce "bat_c01", "This battle has ended in a draw.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
+ mapannounce("bat_c01", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
+ mapannounce("bat_c01", _("This battle has ended in a draw."), bc_map, "0x00ff00");
donpcevent "KvM01_BG::OnStop";
}
end;
@@ -307,18 +307,18 @@ OnTimer360000:
OnGuillaumeWin:
$@KvM01BG = 3;
$@KvM01BG_Victory = 1;
- mapannounce "bat_c01", "Guillaume wins!",bc_map,"0x00ff00";
- mapannounce "bat_c01", "Congratulations to Guillaume members.",bc_map,"0x00ff00";
- mapannounce "bat_c01", "Everyone will be moved to the start point.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("Guillaume wins!"), bc_map, "0x00ff00");
+ mapannounce("bat_c01", _("Congratulations to Guillaume members."), bc_map, "0x00ff00");
+ mapannounce("bat_c01", _("Everyone will be moved to the start point."), bc_map, "0x00ff00");
donpcevent "KvM01_BG::OnStop";
end;
OnCroixWin:
$@KvM01BG = 3;
$@KvM01BG_Victory = 2;
- mapannounce "bat_c01", "Croix wins!",bc_map,"0x00ff00";
- mapannounce "bat_c01", "Congratulations to Croix members.",bc_map,"0x00ff00";
- mapannounce "bat_c01", "Everyone will be moved to the start point.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("Croix wins!"), bc_map, "0x00ff00");
+ mapannounce("bat_c01", _("Congratulations to Croix members."), bc_map, "0x00ff00");
+ mapannounce("bat_c01", _("Everyone will be moved to the start point."), bc_map, "0x00ff00");
donpcevent "KvM01_BG::OnStop";
end;
@@ -356,21 +356,21 @@ OnBegin:
end;
OnTimer1000:
- mapannounce "bat_c01", "Please apply with the Officer to acquire KVM points.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("Please apply with the Officer to acquire KVM points."), bc_map, "0x00ff00");
end;
OnTimer3000:
- mapannounce "bat_c01", "The Officer will grant you the points for 30 seconds.",bc_map,"0x00ff00";
- mapannounce "bat_c01", "In 30 seconds, the Officer will be sent away.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("The Officer will grant you the points for 30 seconds."), bc_map, "0x00ff00");
+ mapannounce("bat_c01", _("In 30 seconds, the Officer will be sent away."), bc_map, "0x00ff00");
end;
OnTimer5000:
- mapannounce "bat_c01", "Unless you talk to the Officer, you cannot gain the points.",bc_map,"0x00ff00";
- mapannounce "bat_c01", "Please be careful.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("Unless you talk to the Officer, you cannot gain the points."), bc_map, "0x00ff00");
+ mapannounce("bat_c01", _("Please be careful."), bc_map, "0x00ff00");
end;
OnTimer55000:
- mapannounce "bat_c01", "You will be sent back.",bc_map,"0x00ff00";
+ mapannounce("bat_c01", _("You will be sent back."), bc_map, "0x00ff00");
end;
OnTimer60000:
@@ -386,17 +386,17 @@ bat_c01,51,130,5 script KVM Officer#KVM01A 4_M_KY_HEAD,{
if( $@KvM01BG_Victory == Bat_Team )
{ // Victory
kvm_point += 5;
- mes "[KVM Officer]";
- mes "Good Game.";
- mes "May the glory of KVM be with you.";
- mes "You aquire the winning points: 5";
+ mes("[KVM Officer]");
+ mes("Good Game.");
+ mes("May the glory of KVM be with you.");
+ mes("You aquire the winning points: 5");
close2;
} else {
++kvm_point;
- mes "[KVM Officer]";
- mes "I am so sorry.";
- mes "I wish you better luck next time.";
- mes "You aquire the losing points: 1";
+ mes("[KVM Officer]");
+ mes("I am so sorry.");
+ mes("I wish you better luck next time.");
+ mes("You aquire the losing points: 1");
close2;
}
bg_leave;
@@ -413,17 +413,17 @@ bat_c01,148,53,1 script KVM Officer#KVM01B 4_M_CRU_HEAD,{
if( $@KvM01BG_Victory == Bat_Team )
{ // Victory
kvm_point += 5;
- mes "[KVM Officer]";
- mes "Good Game.";
- mes "May the glory of KVM be with you.";
- mes "You aquire the winning points: 5";
+ mes("[KVM Officer]");
+ mes("Good Game.");
+ mes("May the glory of KVM be with you.");
+ mes("You aquire the winning points: 5");
close2;
} else {
++kvm_point;
- mes "[KVM Officer]";
- mes "I am so sorry.";
- mes "I wish you better luck next time.";
- mes "You aquire the losing points: 1";
+ mes("[KVM Officer]");
+ mes("I am so sorry.");
+ mes("I wish you better luck next time.");
+ mes("You aquire the losing points: 1");
close2;
}
bg_leave;
diff --git a/npc/battleground/kvm/kvm02.txt b/npc/battleground/kvm/kvm02.txt
index 02f684a1d..a64dbf536 100644
--- a/npc/battleground/kvm/kvm02.txt
+++ b/npc/battleground/kvm/kvm02.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Ai4rei
//= Copyright (C) L0ne_W0lf
//=
@@ -40,7 +40,7 @@ bat_room,197,226,5 script KVM Waiting Room#a2::KvM02R_Guillaume 4_M_KY_KNT,{
end;
OnInit:
- waitingroom "Battle Station 5 Players",6,"KvM02_BG::OnGuillaumeJoin",1;
+ waitingroom(_("Battle Station 5 Players"), 6, "KvM02_BG::OnGuillaumeJoin", 1);
end;
OnEnterBG:
@@ -54,7 +54,7 @@ bat_room,197,205,3 script KVM Waiting Room#b2::KvM02R_Croix 4_M_CRU_KNT,{
end;
OnInit:
- waitingroom "Battle Station 5 Players",6,"KvM02_BG::OnCroixJoin",1;
+ waitingroom(_("Battle Station 5 Players"), 6, "KvM02_BG::OnCroixJoin", 1);
end;
OnEnterBG:
@@ -161,8 +161,8 @@ OnGuillaumeDie:
bg_updatescore "bat_c02",.Guillaume_Count,.Croix_Count;
if( .Guillaume_Count < 1 ) donpcevent "KvM02_BG::OnCroixWin";
else {
- mapannounce "bat_c02", "The number of Guillaumes is "+.Guillaume_Count+".",bc_map,"0x00ff00";
- mapannounce "bat_c02", "The number of Croixes is "+.Croix_Count+".",bc_map,"0x00ff00";
+ mapannounce("bat_c02", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
+ mapannounce("bat_c02", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
}
}
end;
@@ -175,8 +175,8 @@ OnCroixDie:
bg_updatescore "bat_c02",.Guillaume_Count,.Croix_Count;
if( .Croix_Count < 1 ) donpcevent "KvM02_BG::OnGuillaumeWin";
else {
- mapannounce "bat_c02", "The number of Guillaumes is "+.Guillaume_Count+".",bc_map,"0x00ff00";
- mapannounce "bat_c02", "The number of Croixes is "+.Croix_Count+".",bc_map,"0x00ff00";
+ mapannounce("bat_c02", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
+ mapannounce("bat_c02", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
}
}
end;
@@ -207,16 +207,16 @@ OnStart:
end;
OnTimer1000:
- mapannounce "bat_c02", "In 1 minute, KVM will start.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("In 1 minute, KVM will start."), bc_map, "0x00ff00");
end;
OnTimer3000:
- mapannounce "bat_c02", "The maximum time for a KVM battle is 5 minutes.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("The maximum time for a KVM battle is 5 minutes."), bc_map, "0x00ff00");
end;
OnTimer6000:
- mapannounce "bat_c02", "Please prepare for the KVM battle.",bc_map,"0x00ff00";
- mapannounce "bat_c02", "You can buff your people.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("Please prepare for the KVM battle."), bc_map, "0x00ff00");
+ mapannounce("bat_c02", _("You can buff your people."), bc_map, "0x00ff00");
donpcevent "#A_camp_start02::OnEnable";
donpcevent "#B_camp_start02::OnEnable";
end;
@@ -227,26 +227,26 @@ OnTimer13000:
end;
OnTimer30000:
- mapannounce "bat_c02", "30 seconds remaining to start KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("30 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
end;
OnTimer45000:
- mapannounce "bat_c02", "15 seconds remaining to start KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("15 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
donpcevent "::OnKvM01One";
end;
OnTimer50000:
- mapannounce "bat_c02", "10 seconds remaining to start KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("10 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
donpcevent "::OnKvM01Two";
end;
OnTimer55000:
- mapannounce "bat_c02", "5 seconds remaining to start KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("5 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
donpcevent "::OnKvM01One";
end;
OnTimer59000:
- mapannounce "bat_c02", "KVM is now commencing.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("KVM is now commencing."), bc_map, "0x00ff00");
donpcevent "::OnKvM01Two";
end;
@@ -258,7 +258,7 @@ OnTimer61000:
{
$@KvM02BG_Victory = 3;
$@KvM02BG = 3;
- mapannounce "bat_c02","There are not enough players to start the battle",1,0x808080;
+ mapannounce("bat_c02", _("There are not enough players to start the battle"), bc_map, "0x808080");
stopnpctimer;
donpcevent "KvM02_BG::OnStop";
end;
@@ -269,27 +269,27 @@ OnTimer61000:
end;
OnTimer300000:
- mapannounce "bat_c02", "1 minute remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("1 minute remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer330000:
- mapannounce "bat_c02", "30 seconds remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("30 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer345000:
- mapannounce "bat_c02", "15 seconds remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("15 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer350000:
- mapannounce "bat_c02", "10 seconds remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("10 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer355000:
- mapannounce "bat_c02", "5 seconds remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("5 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer360000:
- mapannounce "bat_c02", "The KVM battle is over.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("The KVM battle is over."), bc_map, "0x00ff00");
if( .Croix_Count > .Guillaume_Count )
donpcevent "KvM02_BG::OnCroixWin";
else if( .Croix_Count < .Guillaume_Count )
@@ -298,9 +298,9 @@ OnTimer360000:
{ // Draw Game
$@KvM02BG = 3;
$@KvM02BG_Victory = 3;
- mapannounce "bat_c02", "The number of Guillaumes is "+.Guillaume_Count+".",bc_map,"0x00ff00";
- mapannounce "bat_c02", "The number of Croixes is "+.Croix_Count+".",bc_map,"0x00ff00";
- mapannounce "bat_c02", "This battle has ended in a draw.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
+ mapannounce("bat_c02", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
+ mapannounce("bat_c02", _("This battle has ended in a draw."), bc_map, "0x00ff00");
donpcevent "KvM02_BG::OnStop";
}
end;
@@ -308,18 +308,18 @@ OnTimer360000:
OnGuillaumeWin:
$@KvM02BG = 3;
$@KvM02BG_Victory = 1;
- mapannounce "bat_c02", "Guillaume wins!",bc_map,"0x00ff00";
- mapannounce "bat_c02", "Congratulations to Guillaume members.",bc_map,"0x00ff00";
- mapannounce "bat_c02", "Everyone will be moved to the start point.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("Guillaume wins!"), bc_map, "0x00ff00");
+ mapannounce("bat_c02", _("Congratulations to Guillaume members."), bc_map, "0x00ff00");
+ mapannounce("bat_c02", _("Everyone will be moved to the start point."), bc_map, "0x00ff00");
donpcevent "KvM02_BG::OnStop";
end;
OnCroixWin:
$@KvM02BG = 3;
$@KvM02BG_Victory = 2;
- mapannounce "bat_c02", "Croix wins!",bc_map,"0x00ff00";
- mapannounce "bat_c02", "Congratulations to Croix members.",bc_map,"0x00ff00";
- mapannounce "bat_c02", "Everyone will be moved to the start point.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("Croix wins!"), bc_map, "0x00ff00");
+ mapannounce("bat_c02", _("Congratulations to Croix members."), bc_map, "0x00ff00");
+ mapannounce("bat_c02", _("Everyone will be moved to the start point."), bc_map, "0x00ff00");
donpcevent "KvM02_BG::OnStop";
end;
@@ -357,21 +357,21 @@ OnBegin:
end;
OnTimer1000:
- mapannounce "bat_c02", "Please apply with the Officer to acquire KVM points.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("Please apply with the Officer to acquire KVM points."), bc_map, "0x00ff00");
end;
OnTimer3000:
- mapannounce "bat_c02", "The Officer will grant you the points for 30 seconds.",bc_map,"0x00ff00";
- mapannounce "bat_c02", "In 30 seconds, the Officer will be sent away.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("The Officer will grant you the points for 30 seconds."), bc_map, "0x00ff00");
+ mapannounce("bat_c02", _("In 30 seconds, the Officer will be sent away."), bc_map, "0x00ff00");
end;
OnTimer5000:
- mapannounce "bat_c02", "Unless you talk to the Officer, you cannot gain the points.",bc_map,"0x00ff00";
- mapannounce "bat_c02", "Please be careful.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("Unless you talk to the Officer, you cannot gain the points."), bc_map, "0x00ff00");
+ mapannounce("bat_c02", _("Please be careful."), bc_map, "0x00ff00");
end;
OnTimer55000:
- mapannounce "bat_c02", "You will be sent back.",bc_map,"0x00ff00";
+ mapannounce("bat_c02", _("You will be sent back."), bc_map, "0x00ff00");
end;
OnTimer60000:
@@ -387,16 +387,16 @@ bat_c02,51,130,5 script KVM Officer#KVM02A 4_M_KY_HEAD,{
if( $@KvM02BG_Victory == Bat_Team )
{ // Victory
++kvm_point;
- mes "[KVM Officer]";
- mes "Good Game.";
- mes "May the glory of KVM be with you.";
- mes "You aquire the winning points: 1";
+ mes("[KVM Officer]");
+ mes("Good Game.");
+ mes("May the glory of KVM be with you.");
+ mes("You aquire the winning points: 1");
close2;
} else {
- mes "[KVM Officer]";
- mes "I am so sorry.";
- mes "I wish you better luck next time.";
- mes "You aquire the losing points: 0";
+ mes("[KVM Officer]");
+ mes("I am so sorry.");
+ mes("I wish you better luck next time.");
+ mes("You aquire the losing points: 0");
close2;
}
bg_leave;
@@ -413,16 +413,16 @@ bat_c02,148,53,1 script KVM Officer#KVM02B 4_M_CRU_HEAD,{
if( $@KvM02BG_Victory == Bat_Team )
{ // Victory
++kvm_point;
- mes "[KVM Officer]";
- mes "Good Game.";
- mes "May the glory of KVM be with you.";
- mes "You aquire the winning points: 1";
+ mes("[KVM Officer]");
+ mes("Good Game.");
+ mes("May the glory of KVM be with you.");
+ mes("You aquire the winning points: 1");
close2;
} else {
- mes "[KVM Officer]";
- mes "I am so sorry.";
- mes "I wish you better luck next time.";
- mes "You aquire the losing points: 0";
+ mes("[KVM Officer]");
+ mes("I am so sorry.");
+ mes("I wish you better luck next time.");
+ mes("You aquire the losing points: 0");
close2;
}
bg_leave;
diff --git a/npc/battleground/kvm/kvm03.txt b/npc/battleground/kvm/kvm03.txt
index d99f78a34..954fd7b49 100644
--- a/npc/battleground/kvm/kvm03.txt
+++ b/npc/battleground/kvm/kvm03.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Ai4rei
//= Copyright (C) L0ne_W0lf
//=
@@ -40,7 +40,7 @@ bat_room,225,226,5 script KVM Waiting Room#a3::KvM03R_Guillaume 4_M_KY_KNT,{
end;
OnInit:
- waitingroom "Battle Station 5 Players",6,"KvM03_BG::OnGuillaumeJoin",1;
+ waitingroom(_("Battle Station 5 Players"), 6, "KvM03_BG::OnGuillaumeJoin", 1);
end;
OnEnterBG:
@@ -54,7 +54,7 @@ bat_room,225,205,3 script KVM Waiting Room#b3::KvM03R_Croix 4_M_CRU_KNT,{
end;
OnInit:
- waitingroom "Battle Station 5 Players",6,"KvM03_BG::OnCroixJoin",1;
+ waitingroom(_("Battle Station 5 Players"), 6, "KvM03_BG::OnCroixJoin", 1);
end;
OnEnterBG:
@@ -161,8 +161,8 @@ OnGuillaumeDie:
bg_updatescore "bat_c03",.Guillaume_Count,.Croix_Count;
if( .Guillaume_Count < 1 ) donpcevent "KvM03_BG::OnCroixWin";
else {
- mapannounce "bat_c03", "The number of Guillaumes is "+.Guillaume_Count+".",bc_map,"0x00ff00";
- mapannounce "bat_c03", "The number of Croixes is "+.Croix_Count+".",bc_map,"0x00ff00";
+ mapannounce("bat_c03", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
+ mapannounce("bat_c03", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
}
}
end;
@@ -175,8 +175,8 @@ OnCroixDie:
bg_updatescore "bat_c03",.Guillaume_Count,.Croix_Count;
if( .Croix_Count < 1 ) donpcevent "KvM03_BG::OnGuillaumeWin";
else {
- mapannounce "bat_c03", "The number of Guillaumes is "+.Guillaume_Count+".",bc_map,"0x00ff00";
- mapannounce "bat_c03", "The number of Croixes is "+.Croix_Count+".",bc_map,"0x00ff00";
+ mapannounce("bat_c03", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
+ mapannounce("bat_c03", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
}
}
end;
@@ -207,16 +207,16 @@ OnStart:
end;
OnTimer1000:
- mapannounce "bat_c03", "In 1 minute, KVM will start.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("In 1 minute, KVM will start."), bc_map, "0x00ff00");
end;
OnTimer3000:
- mapannounce "bat_c03", "The maximum time for a KVM battle is 5 minutes.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("The maximum time for a KVM battle is 5 minutes."), bc_map, "0x00ff00");
end;
OnTimer6000:
- mapannounce "bat_c03", "Please prepare for the KVM battle.",bc_map,"0x00ff00";
- mapannounce "bat_c03", "You can buff your people.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("Please prepare for the KVM battle."), bc_map, "0x00ff00");
+ mapannounce("bat_c03", _("You can buff your people."), bc_map, "0x00ff00");
donpcevent "#A_camp_start03::OnEnable";
donpcevent "#B_camp_start03::OnEnable";
end;
@@ -227,26 +227,26 @@ OnTimer13000:
end;
OnTimer30000:
- mapannounce "bat_c03", "30 seconds remaining to start KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("30 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
end;
OnTimer45000:
- mapannounce "bat_c03", "15 seconds remaining to start KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("15 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
donpcevent "::OnKvM01One";
end;
OnTimer50000:
- mapannounce "bat_c03", "10 seconds remaining to start KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("10 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
donpcevent "::OnKvM01Two";
end;
OnTimer55000:
- mapannounce "bat_c03", "5 seconds remaining to start KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("5 seconds remaining to start KVM battle."), bc_map, "0x00ff00");
donpcevent "::OnKvM01One";
end;
OnTimer59000:
- mapannounce "bat_c03", "KVM is now commencing.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("KVM is now commencing."), bc_map, "0x00ff00");
donpcevent "::OnKvM01Two";
end;
@@ -258,7 +258,7 @@ OnTimer61000:
{
$@KvM03BG_Victory = 3;
$@KvM03BG = 3;
- mapannounce "bat_c03","There are not enough players to start the battle",1,0xC0C0C0;
+ mapannounce("bat_c03", _("There are not enough players to start the battle"), bc_map, "0xC0C0C0");
stopnpctimer;
donpcevent "KvM03_BG::OnStop";
end;
@@ -269,27 +269,27 @@ OnTimer61000:
end;
OnTimer300000:
- mapannounce "bat_c03", "1 minute remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("1 minute remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer330000:
- mapannounce "bat_c03", "30 seconds remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("30 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer345000:
- mapannounce "bat_c03", "15 seconds remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("15 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer350000:
- mapannounce "bat_c03", "10 seconds remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("10 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer355000:
- mapannounce "bat_c03", "5 seconds remaining to finish the KVM battle.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("5 seconds remaining to finish the KVM battle."), bc_map, "0x00ff00");
end;
OnTimer360000:
- mapannounce "bat_c03", "KVM has ended.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("KVM has ended."), bc_map, "0x00ff00");
if( .Croix_Count > .Guillaume_Count )
donpcevent "KvM03_BG::OnCroixWin";
else if( .Croix_Count < .Guillaume_Count )
@@ -298,9 +298,9 @@ OnTimer360000:
{ // Draw Game
$@KvM03BG = 3;
$@KvM03BG_Victory = 3;
- mapannounce "bat_c03", "The number of Guillaumes is "+.Guillaume_Count+".",bc_map,"0x00ff00";
- mapannounce "bat_c03", "The number of Croixes is "+.Croix_Count+".",bc_map,"0x00ff00";
- mapannounce "bat_c03", "This battle has ended in a draw.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", sprintf(_$("The number of Guillaumes is %d."), .Guillaume_Count), bc_map, "0x00ff00");
+ mapannounce("bat_c03", sprintf(_$("The number of Croixes is %d."), .Croix_Count), bc_map, "0x00ff00");
+ mapannounce("bat_c03", _("This battle has ended in a draw."), bc_map, "0x00ff00");
donpcevent "KvM03_BG::OnStop";
}
end;
@@ -308,18 +308,18 @@ OnTimer360000:
OnGuillaumeWin:
$@KvM03BG = 3;
$@KvM03BG_Victory = 1;
- mapannounce "bat_c03", "Guillaume wins!",bc_map,"0x00ff00";
- mapannounce "bat_c03", "Congratulations to Guillaume members.",bc_map,"0x00ff00";
- mapannounce "bat_c03", "Everyone will be moved to the start point.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("Guillaume wins!"), bc_map, "0x00ff00");
+ mapannounce("bat_c03", _("Congratulations to Guillaume members."), bc_map, "0x00ff00");
+ mapannounce("bat_c03", _("Everyone will be moved to the start point."), bc_map, "0x00ff00");
donpcevent "KvM03_BG::OnStop";
end;
OnCroixWin:
$@KvM03BG = 3;
$@KvM03BG_Victory = 2;
- mapannounce "bat_c03", "Croix wins!",bc_map,"0x00ff00";
- mapannounce "bat_c03", "Congratulations to Croix members.",bc_map,"0x00ff00";
- mapannounce "bat_c03", "Everyone will be moved to the start point.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("Croix wins!"), bc_map, "0x00ff00");
+ mapannounce("bat_c03", _("Congratulations to Croix members."), bc_map, "0x00ff00");
+ mapannounce("bat_c03", _("Everyone will be moved to the start point."), bc_map, "0x00ff00");
donpcevent "KvM03_BG::OnStop";
end;
@@ -357,21 +357,21 @@ OnBegin:
end;
OnTimer1000:
- mapannounce "bat_c03", "Please apply with the Officer to acquire KVM points.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("Please apply with the Officer to acquire KVM points."), bc_map, "0x00ff00");
end;
OnTimer3000:
- mapannounce "bat_c03", "The Officer will grant you the points for 30 seconds.",bc_map,"0x00ff00";
- mapannounce "bat_c03", "In 30 seconds, the Officer will be sent away.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("The Officer will grant you the points for 30 seconds."), bc_map, "0x00ff00");
+ mapannounce("bat_c03", _("In 30 seconds, the Officer will be sent away."), bc_map, "0x00ff00");
end;
OnTimer5000:
- mapannounce "bat_c03", "Unless you talk to the Officer, you cannot gain the points.",bc_map,"0x00ff00";
- mapannounce "bat_c03", "Please be careful.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("Unless you talk to the Officer, you cannot gain the points."), bc_map, "0x00ff00");
+ mapannounce("bat_c03", _("Please be careful."), bc_map, "0x00ff00");
end;
OnTimer55000:
- mapannounce "bat_c03", "You will be sent back.",bc_map,"0x00ff00";
+ mapannounce("bat_c03", _("You will be sent back."), bc_map, "0x00ff00");
end;
OnTimer60000:
@@ -387,17 +387,17 @@ bat_c03,51,130,5 script KVM Officer#KVM03A 4_M_KY_HEAD,{
if( $@KvM03BG_Victory == Bat_Team )
{ // Victory
kvm_point += 2;
- mes "[KVM Officer]";
- mes "Good Game.";
- mes "May the glory of KVM be with you.";
- mes "You aquire the winning points: 2";
+ mes("[KVM Officer]");
+ mes("Good Game.");
+ mes("May the glory of KVM be with you.");
+ mes("You aquire the winning points: 2");
close2;
} else {
++kvm_point;
- mes "[KVM Officer]";
- mes "I am so sorry.";
- mes "I wish you better luck next time.";
- mes "You aquire the losing points: 1";
+ mes("[KVM Officer]");
+ mes("I am so sorry.");
+ mes("I wish you better luck next time.");
+ mes("You aquire the losing points: 1");
close2;
}
bg_leave;
@@ -414,17 +414,17 @@ bat_c03,148,53,1 script KVM Officer#KVM03B 4_M_CRU_HEAD,{
if( $@KvM03BG_Victory == Bat_Team )
{ // Victory
kvm_point +=2;
- mes "[KVM Officer]";
- mes "Good Game.";
- mes "May the glory of KVM be with you.";
- mes "You aquire the winning points: 2";
+ mes("[KVM Officer]");
+ mes("Good Game.");
+ mes("May the glory of KVM be with you.");
+ mes("You aquire the winning points: 2");
close2;
} else {
++kvm_point;
- mes "[KVM Officer]";
- mes "I am so sorry.";
- mes "I wish you better luck next time.";
- mes "You aquire the losing points: 1";
+ mes("[KVM Officer]");
+ mes("I am so sorry.");
+ mes("I wish you better luck next time.");
+ mes("You aquire the losing points: 1");
close2;
}
bg_leave;
diff --git a/npc/battleground/kvm/kvm_enter.txt b/npc/battleground/kvm/kvm_enter.txt
index 82d9580fa..2ee4a7c5d 100644
--- a/npc/battleground/kvm/kvm_enter.txt
+++ b/npc/battleground/kvm/kvm_enter.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) L0ne_W0lf
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -38,27 +38,27 @@ bat_room,164,178,5 script KVM Mercenary Officer#1 4_M_KY_KNT,{
/*
.@kvm = questprogress(6026,PLAYTIME);
if (.@kvm == 1) {
- mes "[Croix Mercenary Officer]";
- mes "I know that you've already signed with the Croix. Go back and join their team. We will not accept traitors to fight for us.";
+ mes("[Croix Mercenary Officer]");
+ mes("I know that you've already signed with the Croix. Go back and join their team. We will not accept traitors to fight for us.");
close;
}
else if (.@kvm == 2) erasequest 6026;
*/
.@permit = questprogress(6025,PLAYTIME);
if (.@permit == 1) {
- mes "[Guillaume Mercenary Officer]";
- mes "It seems you have recently participated in a KVM battle. You must wait 5 minutes before signing up again.";
+ mes("[Guillaume Mercenary Officer]");
+ mes("It seems you have recently participated in a KVM battle. You must wait 5 minutes before signing up again.");
close;
}
else if (.@permit == 2) erasequest 6025;
- mes "[Guillaume Mercenary Officer]";
- mes "Let them know the real might of Guillaume!";
+ mes("[Guillaume Mercenary Officer]");
+ mes("Let them know the real might of Guillaume!");
next;
switch(select("I will fight with you.", "End Conversation.")) {
case 1:
- mes "[Guillaume Mercenary Officer]";
- mes "Show them how strong we are.";
- mes "Today, everyone will hear the shout of triumph from Guillaume!";
+ mes("[Guillaume Mercenary Officer]");
+ mes("Show them how strong we are.");
+ mes("Today, everyone will hear the shout of triumph from Guillaume!");
close2;
//setquest 6025;
if (BaseLevel > 79) warp "bat_room",169,223;
@@ -66,67 +66,67 @@ bat_room,164,178,5 script KVM Mercenary Officer#1 4_M_KY_KNT,{
else warp "bat_room",225,223;
end;
case 2:
- mes "[Guillaume Mercenary Officer]";
- mes "We will win!";
+ mes("[Guillaume Mercenary Officer]");
+ mes("We will win!");
close;
}
}
//== Guillaume Knight - KvM ================================
bat_room,167,178,5 script Guillaume Knight#kvm 4_M_KY_SOLD,{
- mes "[Guillaume Knight]";
- mes "Hello.";
- mes "What do you want to know?";
+ mes("[Guillaume Knight]");
+ mes("Hello.");
+ mes("What do you want to know?");
next;
switch(select("Apply for KVM.", "What is KVM?", "How do I participate in KVM?", "I want to know my Kreiger Points.")) {
case 1:
- mes "[Guillaume Knight]";
- mes "Applications are not available yet.";
- mes "To apply, you need to go to a KVM Mercenary Officer.";
+ mes("[Guillaume Knight]");
+ mes("Applications are not available yet.");
+ mes("To apply, you need to go to a KVM Mercenary Officer.");
close;
case 2:
- mes "[Guillaume Knight]";
- mes "KVM is the abbreviation of Kreiger Von Midgard.";
- mes "Adventurer, are you aware that the way to the new world has been opened?";
+ mes("[Guillaume Knight]");
+ mes("KVM is the abbreviation of Kreiger Von Midgard.");
+ mes("Adventurer, are you aware that the way to the new world has been opened?");
next;
- mes "[Guillaume Knight]";
- mes "We, the Guillaume Administration, have several plans to advance to the new world.";
- mes "And KVM is one of them.";
+ mes("[Guillaume Knight]");
+ mes("We, the Guillaume Administration, have several plans to advance to the new world.");
+ mes("And KVM is one of them.");
next;
- mes "[Guillaume Knight]";
- mes "It means that we, one of many countries in the Midgard continent,";
- mes "have decided to employ many adventurers for the immediate advance to the new world.";
+ mes("[Guillaume Knight]");
+ mes("It means that we, one of many countries in the Midgard continent,");
+ mes("have decided to employ many adventurers for the immediate advance to the new world.");
next;
- mes "[Guillaume Knight]";
- mes "Therefore, to select the best adventurers, we are holding the KVM.";
- mes "We exspect responses from many adventurers.";
+ mes("[Guillaume Knight]");
+ mes("Therefore, to select the best adventurers, we are holding the KVM.");
+ mes("We exspect responses from many adventurers.");
next;
- mes "[Guillaume Knight]";
- mes "And we will give them rewards for their participation!";
- mes "As for the rewards, please contact a KVM Logistic Officer.";
+ mes("[Guillaume Knight]");
+ mes("And we will give them rewards for their participation!");
+ mes("As for the rewards, please contact a KVM Logistic Officer.");
close;
case 3:
- mes "[Guillaume Knight]";
- mes "Basically, KVM is a 5 on 5 battle.";
- mes "First, you apply with a KVM receptionist, in a group or individually.";
+ mes("[Guillaume Knight]");
+ mes("Basically, KVM is a 5 on 5 battle.");
+ mes("First, you apply with a KVM receptionist, in a group or individually.");
next;
- mes "[Guillaume Knight]";
- mes "Group applications are for when you intend to enter the KVM with your party members,";
- mes "and a personal application is for when you intend to enter the KVM individually.";
+ mes("[Guillaume Knight]");
+ mes("Group applications are for when you intend to enter the KVM with your party members,");
+ mes("and a personal application is for when you intend to enter the KVM individually.");
next;
- mes "[Guillaume Knight]";
- mes "Please apply with a KVM officer, and he will contact you later when you are in Prontera.";
+ mes("[Guillaume Knight]");
+ mes("Please apply with a KVM officer, and he will contact you later when you are in Prontera.");
next;
- mes "[Guillaume Knight]";
- mes "Then you enter and follow the instructions in the battlefield.";
+ mes("[Guillaume Knight]");
+ mes("Then you enter and follow the instructions in the battlefield.");
next;
- mes "[Guillaume Knight]";
- mes "However, please be advised that unless you are in the KVM office, he cannot contact you.";
+ mes("[Guillaume Knight]");
+ mes("However, please be advised that unless you are in the KVM office, he cannot contact you.");
close;
case 4:
- mes "[Guillaume Knight]";
- mes "Your Kreiger Points are:";
- mes ""+kvm_point+".";
+ mes("[Guillaume Knight]");
+ mes("Your Kreiger Points are:");
+ mesf("%d.", kvm_point);
close;
}
}
@@ -136,27 +136,27 @@ bat_room,164,121,1 script KVM Mercenary Officer#2 4_M_CRU_KNT,{
/*
.@kvm = questprogress(6025,PLAYTIME);
if (.@kvm == 1) {
- mes "[Croix Mercenary Officer]";
- mes "I know that you've already signed with the Guillaume. Go back and join their team. We will not accept traitors to fight for us.";
+ mes("[Croix Mercenary Officer]");
+ mes("I know that you've already signed with the Guillaume. Go back and join their team. We will not accept traitors to fight for us.");
close;
}
else if (.@kvm == 2) erasequest 6025;
*/
.@permit = questprogress(6025,PLAYTIME);
if (.@permit == 1) {
- mes "[Croix Mercenary Officer]";
- mes "It seems you have recently participated in a KVM battle. You must wait 5 minutes before signing up again.";
+ mes("[Croix Mercenary Officer]");
+ mes("It seems you have recently participated in a KVM battle. You must wait 5 minutes before signing up again.");
close;
}
else if (.@permit == 2) erasequest 6025;
- mes "[Croix Mercenary Officer]";
- mes "Let them know the real might of Croix!";
+ mes("[Croix Mercenary Officer]");
+ mes("Let them know the real might of Croix!");
next;
switch(select("I will fight with you.", "End Conversation.")) {
case 1:
- mes "[Croix Mercenary Officer]";
- mes "Show them how strong we are.";
- mes "Today, everyone will hear the shout of triumph from Croix!";
+ mes("[Croix Mercenary Officer]");
+ mes("Show them how strong we are.");
+ mes("Today, everyone will hear the shout of triumph from Croix!");
close2;
//setquest 6026;
if (BaseLevel > 79) warp "bat_room",169,207;
@@ -164,67 +164,67 @@ bat_room,164,121,1 script KVM Mercenary Officer#2 4_M_CRU_KNT,{
else warp "bat_room",225,207;
end;
case 2:
- mes "[Croix Mercenary Officer]";
- mes "We will win!";
+ mes("[Croix Mercenary Officer]");
+ mes("We will win!");
close;
}
}
//== Croix Knight - KvM ====================================
bat_room,167,121,1 script Croix Knight#kvm 4_M_CRU_SOLD,{
- mes "[Croix Knight]";
- mes "Hello.";
- mes "What do you want to know?";
+ mes("[Croix Knight]");
+ mes("Hello.");
+ mes("What do you want to know?");
next;
switch(select("Apply for KVM.", "What is KVM?", "How do I participate in KVM?", "I want to know my Kreiger Points.")) {
case 1:
- mes "[Croix Knight]";
- mes "Applications are not available yet.";
- mes "To apply, you need to go to a KVM Mercenary Officer.";
+ mes("[Croix Knight]");
+ mes("Applications are not available yet.");
+ mes("To apply, you need to go to a KVM Mercenary Officer.");
close;
case 2:
- mes "[Croix Knight]";
- mes "KVM is the abbreviation of Kreiger Von Midgard.";
- mes "Adventurer, are you aware that the way to the new world has been opened?";
+ mes("[Croix Knight]");
+ mes("KVM is the abbreviation of Kreiger Von Midgard.");
+ mes("Adventurer, are you aware that the way to the new world has been opened?");
next;
- mes "[Croix Knight]";
- mes "We, the Croix Administration, have several plans to advance to the new world.";
- mes "And KVM is one of them.";
+ mes("[Croix Knight]");
+ mes("We, the Croix Administration, have several plans to advance to the new world.");
+ mes("And KVM is one of them.");
next;
- mes "[Croix Knight]";
- mes "It means that we, one of many countries in the Midgard continent,";
- mes "have decided to employ many adventurers for the immediate advance to the new world.";
+ mes("[Croix Knight]");
+ mes("It means that we, one of many countries in the Midgard continent,");
+ mes("have decided to employ many adventurers for the immediate advance to the new world.");
next;
- mes "[Croix Knight]";
- mes "Therefore, to select the best adventurers, we are holding the KVM.";
- mes "We exspect responses from many adventurers.";
+ mes("[Croix Knight]");
+ mes("Therefore, to select the best adventurers, we are holding the KVM.");
+ mes("We exspect responses from many adventurers.");
next;
- mes "[Croix Knight]";
- mes "And we will give them rewards for their participation!";
- mes "As for the rewards, please contact a KVM Logistic Officer.";
+ mes("[Croix Knight]");
+ mes("And we will give them rewards for their participation!");
+ mes("As for the rewards, please contact a KVM Logistic Officer.");
close;
case 3:
- mes "[Croix Knight]";
- mes "Basically, KVM is a 5 on 5 battle.";
- mes "First, you apply with a KVM receptionist, in a group or individually.";
+ mes("[Croix Knight]");
+ mes("Basically, KVM is a 5 on 5 battle.");
+ mes("First, you apply with a KVM receptionist, in a group or individually.");
next;
- mes "[Croix Knight]";
- mes "Group applications are for when you intend to enter the KVM with your party members,";
- mes "and a personal application is for when you intend to enter the KVM individually.";
+ mes("[Croix Knight]");
+ mes("Group applications are for when you intend to enter the KVM with your party members,");
+ mes("and a personal application is for when you intend to enter the KVM individually.");
next;
- mes "[Croix Knight]";
- mes "Please apply with a KVM officer, and he will contact you later when you are in Prontera.";
+ mes("[Croix Knight]");
+ mes("Please apply with a KVM officer, and he will contact you later when you are in Prontera.");
next;
- mes "[Croix Knight]";
- mes "Then you enter and follow the instructions in the battlefield.";
+ mes("[Croix Knight]");
+ mes("Then you enter and follow the instructions in the battlefield.");
next;
- mes "[Croix Knight]";
- mes "However, please be advised that unless you are in the KVM office, he cannot contact you.";
+ mes("[Croix Knight]");
+ mes("However, please be advised that unless you are in the KVM office, he cannot contact you.");
close;
case 4:
- mes "[Croix Knight]";
- mes "Your Kreiger Points are:";
- mes ""+kvm_point+".";
+ mes("[Croix Knight]");
+ mes("Your Kreiger Points are:");
+ mesf("%d.", kvm_point);
close;
}
}
diff --git a/npc/battleground/kvm/kvm_item_pay.txt b/npc/battleground/kvm/kvm_item_pay.txt
index d3bf777ab..92771f14b 100644
--- a/npc/battleground/kvm/kvm_item_pay.txt
+++ b/npc/battleground/kvm/kvm_item_pay.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) L0ne_W0lf
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -41,69 +41,69 @@ bat_room,151,144,3 script KVM Logistic Officer#a 4_M_JOB_KNIGHT2,{
.@pointstoadd = countitem(War_Badge);
delitem 7773,.@pointstoadd;
kvm_point += .@pointstoadd;
- mes "[Logistics]";
- mes "Are those "+getitemname(7773)+"s I see?";
- mes "We no longer accept that currency,";
- mes "but I can exchange those for you,";
- mes "So you have "+.@pointstoadd+" "+getitemname(7773)+"s?";
- mes "Alright, all set, you now have ^580080"+ kvm_point +"^000000 KVM Points.";
+ mes("[Logistics]");
+ mesf("Are those %ss I see?", getitemname(7773));
+ mes("We no longer accept that currency,\r"
+ "but I can exchange those for you.");
+ mesf("So you have %d %ss?", .@pointstoadd, getitemname(7773));
+ mesf("Alright, all set, you now have ^580080%d^000000 KVM Points.", kvm_point);
next;
}
if (checkweight(Knife,1) == 0) {
- mes "- Wait a minute !! -";
- mes "- Currently you're carrying -";
- mes "- too many items with you. -";
- mes "- Please try again -";
- mes "- after you loose some weight. -";
+ mes("- Wait a minute !! -");
+ mes("- Currently you're carrying -");
+ mes("- too many items with you. -");
+ mes("- Please try again -");
+ mes("- after you loose some weight. -");
close;
}
- mes "[Logistics]";
- mes "Hello?";
- mes "I am in charge of distributing";
- mes "reward items for KVM points. Any";
- mes "wrong selection of items will not";
- mes "be reversed. Please be carefull.";
- mes "Select the next step please.";
+ mes("[Logistics]");
+ mes("Hello?");
+ mes("I am in charge of distributing\r"
+ "reward items for KVM points. Any\r"
+ "wrong selection of items will not\r"
+ "be reversed. Please be carefull.");
+ mes("Select the next step please.");
next;
.@name$ = strcharinfo(0);
switch(select("Read the KVM Catalogue.", "Purchase KVM Items.", "Confirm KVM Points.", "Explanation of KVM Rewards.", "Explanation of KVM Points.")) {
case 1:
- mes "[Logistics]";
- mes "Here is the catalogue of KVM items.";
- mes "Each weapon requires 2,000 points";
- mes "and each armor from 10 to 1,200";
- mes "points. So, be carefull when";
- mes "selecting a reward.";
+ mes("[Logistics]");
+ mes("Here is the catalogue of KVM items.");
+ mes("Each weapon requires 2,000 points\r"
+ "and each armor from 10 to 1,200\r"
+ "points. So, be carefull when\r"
+ "selecting a reward.");
close2;
readbook 11017,1;
end;
case 2:
- mes "[Logistics]";
- mes "Wich items do you want to see? As";
- mes "for the detailed specification of";
- mes "the items, please refer to the";
- mes "^3131FFCatalogue^000000.";
+ mes("[Logistics]");
+ mes("Wich items do you want to see? As\r"
+ "for the detailed specification of\r"
+ "the items, please refer to the\r"
+ "^3131FFCatalogue^000000.");
next;
switch(select("Weapon", "Armor/Accessory", "Mass-Production Armor/Accessory", "Popularized Armor/Accessory")) {
case 1:
- mes "[Logistics]";
- mes "You have selected the Weapon Category.";
- mes "Please select a sub-category.";
+ mes("[Logistics]");
+ mes("You have selected the Weapon Category.");
+ mes("Please select a sub-category.");
next;
switch(select("Dagger/Sword/Spear", "Staff/Mace/Axe/Shuriken", "Bow/Katar/Instrument/Whip", "Book/Knuckle", "Revolver/Rifle/Gun/Grenade Launcher")) {
case 1:
- mes "[Logistics]";
- mes "You have selected the Dagger/Sword/Spear category.";
- mes "Please select a sub-category.";
+ mes("[Logistics]");
+ mes("You have selected the Dagger/Sword/Spear category.");
+ mes("Please select a sub-category.");
next;
switch(select("Dagger", "One-handed Sword", "Two-handed Sword", "One-handed Spear", "Two-handed Spear")) {
case 1: callsub PurchaseItem,13042,0,1; //Krieger_Dagger1
case 2:
- mes "[Logistics]";
- mes "You have selected the 'One-handed Sword' category.";
- mes "There are 3 One-handed Swords: Glorious Flamberge, Glorious Rapier and Glorious Holy Avenger.";
- mes "If you want their details, please refer to the KVM Catalogue.";
- mes "Please select one of them.";
+ mes("[Logistics]");
+ mes("You have selected the 'One-handed Sword' category.");
+ mes("There are 3 One-handed Swords: Glorious Flamberge, Glorious Rapier and Glorious Holy Avenger.");
+ mes("If you want their details, please refer to the KVM Catalogue.");
+ mes("Please select one of them.");
next;
switch(select("Glorious Flamberge", "Glorious Rapier", "Glorious Holy Avenger")) {
case 1: callsub PurchaseItem,13416,0,0; //Krieger_Onehand_Sword1
@@ -115,17 +115,17 @@ bat_room,151,144,3 script KVM Logistic Officer#a 4_M_JOB_KNIGHT2,{
case 5: callsub PurchaseItem,1486,0,1; //Krieger_Twohand_Spear1
}
case 2:
- mes "[Logistics]";
- mes "You have selected the 'Staff/Mace/Axe/Shuriken' category.";
- mes "Please select a sub-category.";
+ mes("[Logistics]");
+ mes("You have selected the 'Staff/Mace/Axe/Shuriken' category.");
+ mes("Please select a sub-category.");
next;
switch(select("Staff", "Mace", "One-handed Axe", "Two-handed Axe", "Shuriken")) {
case 1:
- mes "[Logistics]";
- mes "You have selected the 'Staff' category.";
- mes "There are 3 Staffs: a Two-handed Weapon Glorious Destruction Staff, a One-handed Glorious Arc Wand and a Glorious Healing Staff.";
- mes "If you want their details, please refer to the KVM Catalogue.";
- mes "Please select one of them.";
+ mes("[Logistics]");
+ mes("You have selected the 'Staff' category.");
+ mes("There are 3 Staffs: a Two-handed Weapon Glorious Destruction Staff, a One-handed Glorious Arc Wand and a Glorious Healing Staff.");
+ mes("If you want their details, please refer to the KVM Catalogue.");
+ mes("Please select one of them.");
next;
switch(select("Glorious Destruction Staff", "Glorious Arc Wand", "Glorious Healing Staff")) {
case 1: callsub PurchaseItem,2002,0,0; //Krieger_Twohand_Staff1
@@ -138,18 +138,18 @@ bat_room,151,144,3 script KVM Logistic Officer#a 4_M_JOB_KNIGHT2,{
case 5: callsub PurchaseItem,13307,0,1; //Krieger_Huuma_Shuriken1
}
case 3:
- mes "[Logistics]";
- mes "You have selected the Bow/Katar/Instrument/Whip category.";
- mes "Please select a sub-category.";
+ mes("[Logistics]");
+ mes("You have selected the Bow/Katar/Instrument/Whip category.");
+ mes("Please select a sub-category.");
next;
switch(select("Bow", "Katar", "Instrument", "Whip")) {
case 1: callsub PurchaseItem,1743,0,1; //Krieger_Bow1
case 2:
- mes "[Logistics]";
- mes "You have selected the 'Katar' category.";
- mes "There are 2 Katars: Glorious Bloody Roar and Glorious Jamadhar.";
- mes "If you want their details, please refer to the KVM Catalogue.";
- mes "Please select one of them.";
+ mes("[Logistics]");
+ mes("You have selected the 'Katar' category.");
+ mes("There are 2 Katars: Glorious Bloody Roar and Glorious Jamadhar.");
+ mes("If you want their details, please refer to the KVM Catalogue.");
+ mes("Please select one of them.");
next;
switch(select("Glorious Bloody Roar", "Glorious Jamadhar")) {
case 1: callsub PurchaseItem,1281,0,0; //Krieger_Katar1
@@ -159,28 +159,28 @@ bat_room,151,144,3 script KVM Logistic Officer#a 4_M_JOB_KNIGHT2,{
case 4: callsub PurchaseItem,1981,0,1; //Krieger_Whip1
}
case 4:
- mes "[Logistics]";
- mes "You have selected the Book/Knuckle category.";
- mes "Please select a sub-category.";
+ mes("[Logistics]");
+ mes("You have selected the Book/Knuckle category.");
+ mes("Please select a sub-category.");
next;
switch(select("Book", "Knuckle")) {
case 1:
- mes "[Logistics]";
- mes "You have selected 'Book'.";
- mes "There are 2 Books: Glorious Tablet and Glorious Apocalypse.";
- mes "If you want their details, please refer to the KVM Catalogue.";
- mes "Please select one of them.";
+ mes("[Logistics]");
+ mes("You have selected 'Book'.");
+ mes("There are 2 Books: Glorious Tablet and Glorious Apocalypse.");
+ mes("If you want their details, please refer to the KVM Catalogue.");
+ mes("Please select one of them.");
next;
switch(select("Glorious Tablet", "Glorious Apocalypse")) {
case 1: callsub PurchaseItem,1576,0,0; //Krieger_Book1
case 2: callsub PurchaseItem,1577,0,0; //Krieger_Book2
}
case 2:
- mes "[Logistics]";
- mes "You have selected the 'Knuckle' category.";
- mes "There are 2 Knuckles: Glorious Claw and Glorious Fist.";
- mes "If you want their details, please refer to the KVM Catalogue.";
- mes "Please select one of them.";
+ mes("[Logistics]");
+ mes("You have selected the 'Knuckle' category.");
+ mes("There are 2 Knuckles: Glorious Claw and Glorious Fist.");
+ mes("If you want their details, please refer to the KVM Catalogue.");
+ mes("Please select one of them.");
next;
switch(select("Glorious Claw", "Glorious Fist")) {
case 1: callsub PurchaseItem,1826,0,0; //Krieger_Knuckle1
@@ -188,9 +188,9 @@ bat_room,151,144,3 script KVM Logistic Officer#a 4_M_JOB_KNIGHT2,{
}
}
case 5:
- mes "[Logistics]";
- mes "You have selected the 'Revolver/Rifle/Gun/Grenade Launcher' category.";
- mes "Please select a sub-category.";
+ mes("[Logistics]");
+ mes("You have selected the 'Revolver/Rifle/Gun/Grenade Launcher' category.");
+ mes("Please select a sub-category.");
next;
switch(select("Revolver", "Rifle", "Gatling Gun", "Shotgun", "Grenade Launcher")) {
case 1: callsub PurchaseItem,13110,0,1; //Krieger_Pistol1
@@ -201,9 +201,9 @@ bat_room,151,144,3 script KVM Logistic Officer#a 4_M_JOB_KNIGHT2,{
}
}
case 2:
- mes "[Logistics]";
- mes "You have selected the 'Armor/Accessory' category.";
- mes "Please select a sub-category.";
+ mes("[Logistics]");
+ mes("You have selected the 'Armor/Accessory' category.");
+ mes("Please select a sub-category.");
next;
switch(select("Armor", "Cloak", "Shoes", "Accessory")) {
case 1: callsub PurchaseItem,2394,1,2; //Krieger_Suit1
@@ -212,9 +212,9 @@ bat_room,151,144,3 script KVM Logistic Officer#a 4_M_JOB_KNIGHT2,{
case 4: callsub PurchaseItem,2772,4,2; //Krieger_Ring1
}
case 3:
- mes "[Logistics]";
- mes "You have selected the 'Mass-Production Armor/Accessory' category.";
- mes "Please select a sub-category.";
+ mes("[Logistics]");
+ mes("You have selected the 'Mass-Production Armor/Accessory' category.");
+ mes("Please select a sub-category.");
next;
switch(select("Mass-Production Armor", "Mass-Production Shoes", "Mass-Production Accessory")) {
case 1: callsub PurchaseItem,2395,5,3; //Krieger_Suit2
@@ -222,9 +222,9 @@ bat_room,151,144,3 script KVM Logistic Officer#a 4_M_JOB_KNIGHT2,{
case 3: callsub PurchaseItem,2773,7,3; //Krieger_Ring2
}
case 4:
- mes "[Logistics]";
- mes "You have selected the 'Popularized Armor/Accessory' category.";
- mes "Please select a sub-category.";
+ mes("[Logistics]");
+ mes("You have selected the 'Popularized Armor/Accessory' category.");
+ mes("Please select a sub-category.");
next;
switch(select("Popularized Armor", "Popularized Shoes", "Popularized Accessory")) {
case 1: callsub PurchaseItem,2396,8,4; //Krieger_Suit3
@@ -233,33 +233,33 @@ bat_room,151,144,3 script KVM Logistic Officer#a 4_M_JOB_KNIGHT2,{
}
}
case 3:
- mes "[Logistics]";
- mes ""+ .@name$ +", your current points are ^580080"+ kvm_point +"^000000 KVM Points.";
+ mes("[Logistics]");
+ mesf("%s, your current points are ^580080%d^000000 KVM Points.", .@name$, kvm_point);
close;
case 4:
- mes "[Logistics]";
- mes "There are 3 categories in KVM Rewards: Weapon/Armor.Accessory.";
+ mes("[Logistics]");
+ mes("There are 3 categories in KVM Rewards: Weapon/Armor.Accessory.");
next;
- mes "[Logistics]";
- mes "Weapon rewards require 2,000 KVM points for each.";
- mes "There are 3 types of Armor rewards and they require 840/630/580 KVM points fo each.";
- mes "Accessory rewards require 1,200 KVM points for each.";
+ mes("[Logistics]");
+ mes("Weapon rewards require 2,000 KVM points for each.");
+ mes("There are 3 types of Armor rewards and they require 840/630/580 KVM points fo each.");
+ mes("Accessory rewards require 1,200 KVM points for each.");
next;
- mes "[Logistics]";
- mes "Kreiger Weapons are LV 4 Weapons, they can be upgraded and will have special effects: Slaughter, Destruction and Blessing.";
+ mes("[Logistics]");
+ mes("Kreiger Weapons are LV 4 Weapons, they can be upgraded and will have special effects: Slaughter, Destruction and Blessing.");
next;
- mes "[Logistics]";
- mes "When you can wear all 3 armors, you can have a special set of options.";
- mes "Also, when Kreiger Accessory rewards are worn with medalsm it will bring you special set rewards.";
+ mes("[Logistics]");
+ mes("When you can wear all 3 armors, you can have a special set of options.");
+ mes("Also, when Kreiger Accessory rewards are worn with medalsm it will bring you special set rewards.");
next;
- mes "[Logistics]";
- mes "Finally, there are Mass-Production Armor and Accessory rewards.";
- mes "Players whose Lvl is higher than 60 can equip Mass-Production Armors and there is a Lvl limit for Popularized Armor as well.";
+ mes("[Logistics]");
+ mes("Finally, there are Mass-Production Armor and Accessory rewards.");
+ mes("Players whose Lvl is higher than 60 can equip Mass-Production Armors and there is a Lvl limit for Popularized Armor as well.");
close;
case 5:
- mes "[Logistics]";
- mes "KVM Points are rewarded when you win, lose or draw in Kreiger Von Midgard (KVM).";
- mes "You can have special Rewards by using these points.";
+ mes("[Logistics]");
+ mes("KVM Points are rewarded when you win, lose or draw in Kreiger Von Midgard (KVM).");
+ mes("You can have special Rewards by using these points.");
close;
}
@@ -267,64 +267,64 @@ PurchaseItem:
// Pricing for Weapon, Suit1, Muffler1, Shoes1, Ring1m Suit2, Shoes2, Ring2, Suit3, Shoes3, Ring3
setarray .@prices[0],2000,840,630,580,1200,120,70,200,15,10,30;
- mes "[Logistics]";
+ mes("[Logistics]");
if (!getarg(2))
- mes "You have selected ^ff0000"+getitemname(getarg(0))+"^000000.";
+ mesf("You have selected ^ff0000%s^000000.", getitemname(getarg(0)));
else if (getarg(2) == 1)
- mes "There is only one "+callfunc("F_GetWeaponType",getarg(0))+": "+getitemname(getarg(0))+".";
+ mesf("There is only one %s: %s.", callfunc("F_GetWeaponType",getarg(0)), getitemname(getarg(0)));
else if (getarg(2) == 2) {
- mes "You have selected '"+callfunc("F_GetArmorType",getarg(0))+"'.";
- mes "The armor for one whose Lvl is more than 80 is: ^ff0000"+getitemname(getarg(0))+"^000000.";
+ mesf("You have selected '%s'.", callfunc("F_GetArmorType",getarg(0)));
+ mesf("The armor for one whose Lvl is more than 80 is: ^ff0000%s^000000.", getitemname(getarg(0)));
}
else if (getarg(2) == 3) {
- mes "You have selected 'Mass-Production "+callfunc("F_GetArmorType",getarg(0))+"'.";
- mes "There is only one Mass-Production "+callfunc("F_GetArmorType",getarg(0))+": ^ff0000"+getitemname(getarg(0))+"^000000.";
+ mesf("You have selected 'Mass-Production %s'.", callfunc("F_GetArmorType",getarg(0)));
+ mesf("There is only one Mass-Production %s: ^ff0000%s^000000.", callfunc("F_GetArmorType",getarg(0)), getitemname(getarg(0)));
}
else if (getarg(2) == 4) {
- mes "You have selected 'Popularized "+callfunc("F_GetArmorType",getarg(0))+"'.";
- mes "There is only one Popularized "+callfunc("F_GetArmorType",getarg(0))+": ^ff0000"+getitemname(getarg(0))+"^000000.";
+ mesf("You have selected 'Popularized %s'.", callfunc("F_GetArmorType",getarg(0)));
+ mesf("There is only one Popularized %s: ^ff0000%s^000000.", callfunc("F_GetArmorType",getarg(0)), getitemname(getarg(0)));
}
if (!getarg(1))
- mes "It requires ^0000ff2,000^000000 KVM Points, and "+ .@name$ +", your points are: ^580080"+ kvm_point +"^000000.";
+ mesf("It requires ^0000ff2,000^000000 KVM Points, and %s, your points are: ^580080%d^000000.", .@name$, kvm_point);
else if (getarg(1) == 4)
- mes "It requires ^0000ff1,200^000000 KVM Points, and "+ .@name$ +", your points are: ^580080"+ kvm_point +"^000000.";
+ mesf("It requires ^0000ff1,200^000000 KVM Points, and %s, your points are: ^580080%d^000000.", .@name$, kvm_point);
else
- mes "It requires ^0000ff"+.@prices[getarg(1)]+"^000000 KVM Points, and "+ .@name$ +", your points are: ^580080"+ kvm_point +"^000000.";
+ mesf("It requires ^0000ff%d^000000 KVM Points, and %s, your points are: ^580080%d^000000.", .@prices[getarg(1)], .@name$, kvm_point);
- mes "Are you sure you want this item?";
+ mes("Are you sure you want this item?");
next;
switch(select("No, I won't purchase it.", "Yes, I will purchase it.")) {
case 1:
- mes "[Logistics]";
- mes "You have selected 'I won't purchase it'.";
- mes "When purchasing an item, please be careful there are no refunds.";
+ mes("[Logistics]");
+ mes("You have selected 'I won't purchase it'.");
+ mes("When purchasing an item, please be careful there are no refunds.");
break;
case 2:
if (kvm_point >= .@prices[getarg(1)]) {
kvm_point -= .@prices[getarg(1)];
getitem getarg(0),1;
- mes "[Logistics]";
- mes "You have purchased a "+getitemname(getarg(0))+".";
+ mes("[Logistics]");
+ mesf("You have purchased a %s.", getitemname(getarg(0)));
if (!getarg(1))
- mes "Your KVM Points are reduced by ^0000ff"+getarg(1)+"^000000 points, your KVM Points are now ^580080"+kvm_point+"^000000.";
+ mesf("Your KVM Points are reduced by ^0000ff%d^000000 points, your KVM Points are now ^580080%d^000000.", getarg(1), kvm_point);
if (getarg(1) == 4)
- mes "Your KVM Points are reduced by ^0000ff1,200^000000 points, your KVM Points are now ^580080"+kvm_point+"^000000.";
+ mesf("Your KVM Points are reduced by ^0000ff1,200^000000 points, your KVM Points are now ^580080%d^000000.", kvm_point);
else
- mes "Your KVM Points are reduced by ^0000ff"+.@prices[getarg(1)]+"^000000 points, your KVM Points are now ^580080"+kvm_point+"^000000.";
+ mesf("Your KVM Points are reduced by ^0000ff%d^000000 points, your KVM Points are now ^580080%d^000000.", .@prices[getarg(1)], kvm_point);
}
else {
- mes "[Logistics]";
+ mes("[Logistics]");
if (!getarg(1))
- mes "You need ^0000ff2,000^000000 KVM Points to purchase this item.";
+ mes("You need ^0000ff2,000^000000 KVM Points to purchase this item.");
else if (getarg(1) == 4)
- mes "You need ^0000ff1,200^000000 KVM Points to purchase this item.";
+ mes("You need ^0000ff1,200^000000 KVM Points to purchase this item.");
else
- mes "You need ^0000ff"+.@prices[getarg(1)]+"^000000 KVM Points to purchase this item.";
- mes "However, your KVM Points are now ^580080"+ kvm_point +"^000000.";
- mes "Which are not enough to buy it.";
- mes "When you get enough points, please come back again.";
+ mesf("You need ^0000ff%d^000000 KVM Points to purchase this item.", .@prices[getarg(1)]);
+ mesf("However, your KVM Points are now ^580080%d^000000.", kvm_point);
+ mes("Which are not enough to buy it.");
+ mes("When you get enough points, please come back again.");
}
}
close;
diff --git a/npc/battleground/tierra/tierra01.txt b/npc/battleground/tierra/tierra01.txt
index b94d2dd03..ff5c578ef 100644
--- a/npc/battleground/tierra/tierra01.txt
+++ b/npc/battleground/tierra/tierra01.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Euphy
//= Copyright (C) Kisuka
//= Copyright (C) L0ne_W0lf
@@ -41,7 +41,7 @@ bat_room,57,227,5 script Lieutenant Kalos 4_M_KY_KNT,{
end;
OnInit:
- waitingroom "Battle Station",11,"start#bat_a01::OnReadyCheck",1,0,80;
+ waitingroom("Battle Station", 11, "start#bat_a01::OnReadyCheck", 1, 0, 80);
end;
OnEnterBG:
@@ -53,7 +53,7 @@ bat_room,58,204,1 script Lieutenant Eyor 4_M_CRU_KNT,{
end;
OnInit:
- waitingroom "Battle Station",11,"start#bat_a01::OnReadyCheck",1,0,80;
+ waitingroom("Battle Station", 11, "start#bat_a01::OnReadyCheck", 1, 0, 80);
end;
OnEnterBG:
@@ -168,7 +168,7 @@ OnTimer10000:
bat_a01,15,16,3 script OBJ#bat_a01_a CLEAR_NPC,{
OnEnable:
- bg_monster $@TierraBG1_id1,"bat_a01",177,345,"Food Storage",1909,"OBJ#bat_a01_a::OnMyMobDead";
+ bg_monster($@TierraBG1_id1, "bat_a01", 177, 345, _("Food Storage"), 1909, "OBJ#bat_a01_a::OnMyMobDead");
end;
OnKill:
@@ -182,7 +182,7 @@ OnMyMobDead:
$@TierraBG1_Victory = 2;
enablenpc "Guillaume Vintenar#a01_a";
enablenpc "Croix Vintenar#a01_b";
- mapannounce "bat_a01", "Croix Vintenar Swandery: We destroyed Guillaume's Food Storage. We won that! Wow!",bc_map,"0xFFCE00";
+ mapannounce("bat_a01", _("Croix Vintenar Swandery: We destroyed Guillaume's Food Storage. We won that! Wow!"), bc_map, "0xFFCE00");
bg_warp $@TierraBG1_id1,"bat_a01",50,374;
bg_warp $@TierraBG1_id2,"bat_a01",42,16;
}
@@ -191,7 +191,7 @@ OnMyMobDead:
bat_a01,15,17,3 script OBJ#bat_a01_b CLEAR_NPC,{
OnEnable:
- bg_monster $@TierraBG1_id2,"bat_a01",167,50,"Food Depot",1910,"OBJ#bat_a01_b::OnMyMobDead";
+ bg_monster($@TierraBG1_id2, "bat_a01", 167, 50, _("Food Depot"), 1910, "OBJ#bat_a01_b::OnMyMobDead");
end;
OnKill:
@@ -205,7 +205,7 @@ OnMyMobDead:
$@TierraBG1_Victory = 1;
enablenpc "Guillaume Vintenar#a01_a";
enablenpc "Croix Vintenar#a01_b";
- mapannounce "bat_a01", "Guillaume Vintenar Axl Rose : We destroyed Croix's Food Storage. We won that! Wow!",bc_map,"0xFFCE00";
+ mapannounce("bat_a01", _("Guillaume Vintenar Axl Rose : We destroyed Croix's Food Storage. We won that! Wow!"), bc_map, "0xFFCE00");
bg_warp $@TierraBG1_id1,"bat_a01",50,374;
bg_warp $@TierraBG1_id2,"bat_a01",42,16;
}
@@ -215,7 +215,7 @@ OnMyMobDead:
bat_a01,15,18,3 script barricade#bat_a01_a CLEAR_NPC,{
OnEnable:
for (.@i = 185; .@i < 202; ++.@i)
- bg_monster $@TierraBG1_id1,"bat_a01",.@i,266,"Barricade",1906,"barricade#bat_a01_a::OnMyMobDead";
+ bg_monster($@TierraBG1_id1, "bat_a01", .@i, 266, _("Barricade"), 1906, "barricade#bat_a01_a::OnMyMobDead");
setwall "bat_a01",186,266,16,6,1,"bat_a01_c1";
end;
@@ -229,7 +229,7 @@ OnMyMobDead:
killmonster "bat_a01","barricade#bat_a01_a::OnMyMobDead";
delwall "bat_a01_c1";
enablenpc "Guillaume Blacksmith#a01";
- mapannounce "bat_a01", "Guillaume Vintenar Axl Rose : The Barricade in the valley has been destroyed! Where's the Blacksmith? We need to rebuild the Barricade!",bc_map,"0xFFCE00";
+ mapannounce("bat_a01", _("Guillaume Vintenar Axl Rose : The Barricade in the valley has been destroyed! Where's the Blacksmith? We need to rebuild the Barricade!"), bc_map, "0xFFCE00");
}
end;
}
@@ -237,7 +237,7 @@ OnMyMobDead:
bat_a01,15,19,3 script barricade#bat_a01_b CLEAR_NPC,{
OnEnable:
for (.@i = 169; .@i < 186; ++.@i)
- bg_monster $@TierraBG1_id2,"bat_a01",.@i,129,"Barricade",1906,"barricade#bat_a01_b::OnMyMobDead";
+ bg_monster($@TierraBG1_id2, "bat_a01", .@i, 129, _("Barricade"), 1906, "barricade#bat_a01_b::OnMyMobDead");
setwall "bat_a01",170,129,16,6,1,"bat_a01_g1";
end;
@@ -251,14 +251,14 @@ OnMyMobDead:
killmonster "bat_a01","barricade#bat_a01_b::OnMyMobDead";
delwall "bat_a01_g1";
enablenpc "Croix Blacksmith#bat_a01";
- mapannounce "bat_a01", "Croix Vintenar Swandery : The Barricade in the valley has been destroyed! Where's the Blacksmith? We need to rebuild the Barricade!",bc_map,"0xFFCE00";
+ mapannounce("bat_a01", _("Croix Vintenar Swandery : The Barricade in the valley has been destroyed! Where's the Blacksmith? We need to rebuild the Barricade!"), bc_map, "0xFFCE00");
}
end;
}
bat_a01,15,20,3 script OBJ#bat_a01_n CLEAR_NPC,{
OnEnable:
- monster "bat_a01",273,203,"Neutrality Flag",1911,1,"OBJ#bat_a01_n::OnMyMobDead";
+ monster("bat_a01", 273, 203, _("Neutrality Flag"), 1911, 1, "OBJ#bat_a01_n::OnMyMobDead");
end;
OnKill:
@@ -270,11 +270,11 @@ OnMyMobDead:
bg_team_setxy getcharid(4),56,212;
if (getcharid(4) == $@TierraBG1_id1) {
donpcevent "NOBJ_mob#bat_a01_a::OnEnable";
- mapannounce "bat_a01", "Guillaume captured a Neutrality Flag, so they have an advantage.",bc_map,"0xFFCE00";
+ mapannounce("bat_a01", _("Guillaume captured a Neutrality Flag, so they have an advantage."), bc_map, "0xFFCE00");
}
else {
donpcevent "NOBJ_mob#bat_a01_b::OnEnable";
- mapannounce "bat_a01", "Croix captured a Neutrality Flag, so they have an advantage.",bc_map,"0xFFCE00";
+ mapannounce("bat_a01", _("Croix captured a Neutrality Flag, so they have an advantage."), bc_map, "0xFFCE00");
}
}
end;
@@ -283,9 +283,9 @@ OnMyMobDead:
bat_a01,15,21,3 script NOBJ_mob#bat_a01_a CLEAR_NPC,{
OnEnable:
donpcevent "NOBJ_mob#bat_a01_b::OnKill";
- bg_monster $@TierraBG1_id1,"bat_a01",272,204,"Guillaume Camp Guardian",1949,"NOBJ_mob#bat_a01_a::OnMyMobDead";
- bg_monster $@TierraBG1_id1,"bat_a01",272,213,"Guillaume Camp Guardian",1949,"NOBJ_mob#bat_a01_a::OnMyMobDead";
- bg_monster $@TierraBG1_id1,"bat_a01",273,197,"Guillaume Camp Guardian",1950,"NOBJ_mob#bat_a01_a::OnMyMobDead";
+ bg_monster($@TierraBG1_id1, "bat_a01", 272, 204, _("Guillaume Camp Guardian"), 1949, "NOBJ_mob#bat_a01_a::OnMyMobDead");
+ bg_monster($@TierraBG1_id1, "bat_a01", 272, 213, _("Guillaume Camp Guardian"), 1949, "NOBJ_mob#bat_a01_a::OnMyMobDead");
+ bg_monster($@TierraBG1_id1, "bat_a01", 273, 197, _("Guillaume Camp Guardian"), 1950, "NOBJ_mob#bat_a01_a::OnMyMobDead");
end;
OnKill:
@@ -299,9 +299,9 @@ OnMyMobDead:
bat_a01,15,22,3 script NOBJ_mob#bat_a01_b CLEAR_NPC,{
OnEnable:
donpcevent "NOBJ_mob#bat_a01_a::OnKill";
- bg_monster $@TierraBG1_id2,"bat_a01",272,204,"Croix Camp Guardian",1949,"NOBJ_mob#bat_a01_a::OnMyMobDead";
- bg_monster $@TierraBG1_id2,"bat_a01",272,213,"Croix Camp Guardian",1949,"NOBJ_mob#bat_a01_a::OnMyMobDead";
- bg_monster $@TierraBG1_id2,"bat_a01",273,197,"Croix Camp Guardian",1950,"NOBJ_mob#bat_a01_a::OnMyMobDead";
+ bg_monster($@TierraBG1_id2, "bat_a01", 272, 204, _("Croix Camp Guardian"), 1949, "NOBJ_mob#bat_a01_a::OnMyMobDead");
+ bg_monster($@TierraBG1_id2, "bat_a01", 272, 213, _("Croix Camp Guardian"), 1949, "NOBJ_mob#bat_a01_a::OnMyMobDead");
+ bg_monster($@TierraBG1_id2, "bat_a01", 273, 197, _("Croix Camp Guardian"), 1950, "NOBJ_mob#bat_a01_a::OnMyMobDead");
end;
OnKill:
@@ -314,56 +314,56 @@ OnMyMobDead:
bat_a01,185,270,1 script Guillaume Blacksmith#a01 4_M_REPAIR,{
if (getcharid(4) == $@TierraBG1_id1) {
- mes "[Guillaume Blacksmith]";
- mes "We are in urgency! The Barricade has been destroyed!";
- mes "We can repair the Barricade with ^3131FF50 Stones, 3 Sinew of Bear, 500 Metal Fragments, 30 Rough Elunium and 100 Gold.^000000";
- mes "We have it all except for the 50 Stones!";
+ mes("[Guillaume Blacksmith]");
+ mes("We are in urgency! The Barricade has been destroyed!");
+ mes("We can repair the Barricade with ^3131FF50 Stones, 3 Sinew of Bear, 500 Metal Fragments, 30 Rough Elunium and 100 Gold.^000000");
+ mes("We have it all except for the 50 Stones!");
next;
switch(select("Repair.", "Leave it.")) {
case 1:
if (countitem(Stone) > 49) {
- mes "[Guillaume Blacksmith]";
- mes "You brought enough stones! Let's go and repair.";
+ mes("[Guillaume Blacksmith]");
+ mes("You brought enough stones! Let's go and repair.");
next;
- mes "..";
+ mes("..");
next;
- mes "....";
+ mes("....");
next;
- mes "......";
+ mes("......");
next;
- mes "........";
+ mes("........");
next;
- mes "..........";
+ mes("..........");
next;
- mes "............";
+ mes("............");
next;
- mes "..............";
+ mes("..............");
next;
- mes "[Guillaume Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage.";
+ mes("[Guillaume Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage.");
next;
- mes "[Guillaume Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade.";
+ mes("[Guillaume Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade.");
next;
- mes "[Guillaume Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger.";
+ mes("[Guillaume Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger.");
next;
- mes "[Guillaume Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Now decorate with Metal Fragments.";
+ mes("[Guillaume Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Now decorate with Metal Fragments.");
next;
- mes "[Guillaume Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Decorate with Metal Fragments, and plait stones with Sinew of Bear!";
+ mes("[Guillaume Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Decorate with Metal Fragments, and plait stones with Sinew of Bear!");
next;
- mes "..............";
- mes "..............";
- mes "..............";
- mes "..............";
- mes "..............";
+ mes("..............");
+ mes("..............");
+ mes("..............");
+ mes("..............");
+ mes("..............");
next;
specialeffect EF_REPAIRWEAPON;
- mes "[Guillaume Blacksmith]";
- mes "Wow! It's done.";
- mes "We are relieved.";
+ mes("[Guillaume Blacksmith]");
+ mes("Wow! It's done.");
+ mes("We are relieved.");
delitem Stone,50;
donpcevent "barricade#bat_a01_a::OnEnable";
close2;
@@ -371,23 +371,23 @@ bat_a01,185,270,1 script Guillaume Blacksmith#a01 4_M_REPAIR,{
end;
}
else {
- mes "[Guillaume Blacksmith]";
- mes "You don't have enough Stones!";
+ mes("[Guillaume Blacksmith]");
+ mes("You don't have enough Stones!");
next;
- mes "[Guillaume Blacksmith]";
- mes "^3131FFWe need 50 Stones.^000000";
- mes "We are busy, so please hurry.";
+ mes("[Guillaume Blacksmith]");
+ mes("^3131FFWe need 50 Stones.^000000");
+ mes("We are busy, so please hurry.");
close;
}
case 2:
- mes "[Guillaume Blacksmith]";
- mes "There are enemies coming! Let's evacuate from here!";
+ mes("[Guillaume Blacksmith]");
+ mes("There are enemies coming! Let's evacuate from here!");
close;
}
}
else {
- mes "[Guillaume Blacksmith]";
- mes "There the enemy is coming!";
+ mes("[Guillaume Blacksmith]");
+ mes("There the enemy is coming!");
close;
}
@@ -398,56 +398,56 @@ OnInit:
bat_a01,170,121,5 script Croix Blacksmith#bat_a01 4_M_REPAIR,{
if (getcharid(4) == $@TierraBG1_id2) {
- mes "[Croix Blacksmith]";
- mes "We are in urgency! The Barricade has been destroyed!";
- mes "We can repair the Barricade with ^3131FF50 Stones, 3 Sinew of Bear, 500 Metal Fragments, 30 Rough Elunium and 100 Gold.^000000";
- mes "We have it all except for the 50 Stones!";
+ mes("[Croix Blacksmith]");
+ mes("We are in urgency! The Barricade has been destroyed!");
+ mes("We can repair the Barricade with ^3131FF50 Stones, 3 Sinew of Bear, 500 Metal Fragments, 30 Rough Elunium and 100 Gold.^000000");
+ mes("We have it all except for the 50 Stones!");
next;
switch(select("Repair.", "Leave it.")) {
case 1:
if (countitem(Stone) > 49) {
- mes "[Croix Blacksmith]";
- mes "You brought enough stones! Let's go and repair.";
+ mes("[Croix Blacksmith]");
+ mes("You brought enough stones! Let's go and repair.");
next;
- mes "..";
+ mes("..");
next;
- mes "....";
+ mes("....");
next;
- mes "......";
+ mes("......");
next;
- mes "........";
+ mes("........");
next;
- mes "..........";
+ mes("..........");
next;
- mes "............";
+ mes("............");
next;
- mes "..............";
+ mes("..............");
next;
- mes "[Croix Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage.";
+ mes("[Croix Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage.");
next;
- mes "[Croix Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade.";
+ mes("[Croix Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade.");
next;
- mes "[Croix Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger.";
+ mes("[Croix Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger.");
next;
- mes "[Croix Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Now decorate with Metal Fragments.";
+ mes("[Croix Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Now decorate with Metal Fragments.");
next;
- mes "[Croix Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Decorate with Metal Fragments, and plait stones with Sinew of Bear!";
+ mes("[Croix Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Decorate with Metal Fragments, and plait stones with Sinew of Bear!");
next;
- mes "..............";
- mes "..............";
- mes "..............";
- mes "..............";
- mes "..............";
+ mes("..............");
+ mes("..............");
+ mes("..............");
+ mes("..............");
+ mes("..............");
next;
specialeffect EF_REPAIRWEAPON;
- mes "[Croix Blacksmith]";
- mes "Wow! It's done.";
- mes "We are relieved.";
+ mes("[Croix Blacksmith]");
+ mes("Wow! It's done.");
+ mes("We are relieved.");
delitem Stone,50;
donpcevent "barricade#bat_a01_b::OnEnable";
close2;
@@ -455,23 +455,23 @@ bat_a01,170,121,5 script Croix Blacksmith#bat_a01 4_M_REPAIR,{
end;
}
else {
- mes "[Croix Blacksmith]";
- mes "You don't have enough Stones!";
+ mes("[Croix Blacksmith]");
+ mes("You don't have enough Stones!");
next;
- mes "[Croix Blacksmith]";
- mes "^3131FFWe need 50 Stone.^000000";
- mes "We are busy, so please hurry.";
+ mes("[Croix Blacksmith]");
+ mes("^3131FFWe need 50 Stone.^000000");
+ mes("We are busy, so please hurry.");
close;
}
case 2:
- mes "[Croix Blacksmith]";
- mes "There are enemies coming! Let's evacuate from here!";
+ mes("[Croix Blacksmith]");
+ mes("There are enemies coming! Let's evacuate from here!");
close;
}
}
else {
- mes "[Croix Blacksmith]";
- mes "There, the enemy is coming!";
+ mes("[Croix Blacksmith]");
+ mes("There, the enemy is coming!");
close;
}
@@ -482,10 +482,10 @@ OnInit:
bat_a01,53,377,3 script Battle Therapist#a01_a 4_F_SISTER,{
specialeffect2 EF_HEAL;
- mes "[Battle Therapist]";
- mes "Just close your eyes,";
- mes "and take a deep breath.";
- mes "You can be free from pain.";
+ mes("[Battle Therapist]");
+ mes("Just close your eyes,\r"
+ "and take a deep breath.");
+ mes("You can be free from pain.");
close;
end;
@@ -532,10 +532,10 @@ OnTouch_:
bat_a01,45,19,3 script Battle Therapist#a01_b 4_F_SISTER,{
specialeffect2 EF_HEAL;
- mes "[Battle Therapist]";
- mes "Just close your eyes,";
- mes "and take a deep breath.";
- mes "You can be free from pain.";
+ mes("[Battle Therapist]");
+ mes("Just close your eyes,\r"
+ "and take a deep breath.");
+ mes("You can be free from pain.");
close;
end;
@@ -582,8 +582,8 @@ OnTouch:
bat_a01,60,216,3 script Valley Ghost#bat_a01_n 4_GHOSTRING,{
specialeffect2 EF_HEAL;
- mes "[Valley Ghost]";
- mes "Boo...Boo...";
+ mes("[Valley Ghost]");
+ mes("Boo...Boo...");
close;
OnInit:
@@ -700,18 +700,18 @@ bat_a01,53,377,3 script Guillaume Vintenar#a01_a 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,3;
}
else {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -720,18 +720,18 @@ bat_a01,53,377,3 script Guillaume Vintenar#a01_a 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 0) {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, and next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, and next time you will definitely win.");
close2;
getitem BF_Badge1,1;
}
else {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, and next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, and next time you will definitely win.");
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -742,18 +742,18 @@ bat_a01,53,377,3 script Guillaume Vintenar#a01_a 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 0) {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, and next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, and next time you will definitely win.");
close2;
getitem BF_Badge1,1;
}
else {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, and next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, and next time you will definitely win.");
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -762,18 +762,18 @@ bat_a01,53,377,3 script Guillaume Vintenar#a01_a 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,3;
}
else {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign of victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign of victory.", strcharinfo(0));
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -794,18 +794,18 @@ bat_a01,45,19,3 script Croix Vintenar#a01_b 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,3;
}
else {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -814,18 +814,18 @@ bat_a01,45,19,3 script Croix Vintenar#a01_b 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 0) {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+" Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge1,1;
}
else {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+" Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -836,18 +836,18 @@ bat_a01,45,19,3 script Croix Vintenar#a01_b 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 0) {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+" Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge1,1;
}
else {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+" Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -856,18 +856,18 @@ bat_a01,45,19,3 script Croix Vintenar#a01_b 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,3;
}
else {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -892,31 +892,31 @@ OnStop:
end;
OnTimer7000:
- mapannounce "bat_a01", "Guillaume Vintenar Axl Rose : Let's attack to burn down Croix's Food Depot!",bc_map,"0xFF9900";
+ mapannounce("bat_a01", _("Guillaume Vintenar Axl Rose : Let's attack to burn down Croix's Food Depot!"), bc_map, "0xFF9900");
end;
OnTimer8000:
- mapannounce "bat_a01", "Croix Vintenar Swandery : Master of Valhalla! Let us be gifted with unfailing faith and courage!",bc_map,"0xFF99CC";
+ mapannounce("bat_a01", _("Croix Vintenar Swandery : Master of Valhalla! Let us be gifted with unfailing faith and courage!"), bc_map, "0xFF99CC");
end;
OnTimer1800000:
- mapannounce "bat_a01", "Marollo VII : Guillaume Marollo, Croix Marollo! Marollo followers!",bc_map,"0x99CC00";
+ mapannounce("bat_a01", _("Marollo VII : Guillaume Marollo, Croix Marollo! Marollo followers!"), bc_map, "0x99CC00");
end;
OnTimer1803000:
- mapannounce "bat_a01", "Marollo VII : Both camps are competitive, so no camp would be destroyed easily. That means the Marollo kingdoms will never be defeated!",bc_map,"0x99CC00";
+ mapannounce("bat_a01", _("Marollo VII : Both camps are competitive, so no camp would be destroyed easily. That means the Marollo kingdoms will never be defeated!"), bc_map, "0x99CC00");
end;
OnTimer1808000:
- mapannounce "bat_a01", "Marollo VII : I think we'd better terminate the battle, and call it a draw.",bc_map,"0x99CC00";
+ mapannounce("bat_a01", _("Marollo VII : I think we'd better terminate the battle, and call it a draw."), bc_map, "0x99CC00");
end;
OnTimer1822000:
- mapannounce "bat_a01", "Marollo VII : Hold your royalty and faith for a moment, and let's settle up the battle of Tierra Gorge.",bc_map,"0x99CC00";
+ mapannounce("bat_a01", _("Marollo VII : Hold your royalty and faith for a moment, and let's settle up the battle of Tierra Gorge."), bc_map, "0x99CC00");
end;
OnTimer1825000:
- mapannounce "bat_a01", "Axl Rose, Swandery : Yes sir.",bc_map,"0x99CC00";
+ mapannounce("bat_a01", _("Axl Rose, Swandery : Yes sir."), bc_map, "0x99CC00");
end;
OnTimer1830000:
@@ -927,12 +927,12 @@ OnTimer1830000:
/*
bat_a01,351,75,3 script Croix Camp Soldier#bat_a01_guide 4_M_RASWORD,{
- mes "Loading...";
+ mes("Loading...");
close;
}
bat_a01,356,326,3 script Guillaume Camp Soldier#bat_a01_guide 4_M_RASWORD,{
- mes "Loading...";
+ mes("Loading...");
close;
}
*/
@@ -940,21 +940,21 @@ bat_a01,356,326,3 script Guillaume Camp Soldier#bat_a01_guide 4_M_RASWORD,{
bat_a01,1,1,3 script Release all#a01 4_DOG01,{
.@i = callfunc("F_GM_NPC",1854,0);
if (.@i == -1) {
- mes "Cancelled.";
+ mes("Cancelled.");
close;
} else if (.@i == 0) {
end;
} else {
- mes "May I help you?";
+ mes("May I help you?");
next;
switch(select("Release all.", "Cancel.")) {
case 1:
- mes "Bye.";
+ mes("Bye.");
close2;
mapwarp "bat_a01","bat_room",154,150;
end;
case 2:
- mes "Cancelled.";
+ mes("Cancelled.");
close;
}
}
diff --git a/npc/battleground/tierra/tierra02.txt b/npc/battleground/tierra/tierra02.txt
index b8eb4619a..04d7c69e7 100644
--- a/npc/battleground/tierra/tierra02.txt
+++ b/npc/battleground/tierra/tierra02.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Euphy
//= Copyright (C) Kisuka
//= Copyright (C) L0ne_W0lf
@@ -41,7 +41,7 @@ bat_room,114,227,5 script Lieutenant Rundel 4_M_KY_KNT,{
end;
OnInit:
- waitingroom "Battle Station",11,"start#bat_a02::OnReadyCheck",1,0,80;
+ waitingroom("Battle Station", 11, "start#bat_a02::OnReadyCheck", 1, 0, 80);
end;
OnEnterBG:
@@ -53,7 +53,7 @@ bat_room,114,204,1 script Lieutenant Guerrit 4_M_CRU_KNT,{
end;
OnInit:
- waitingroom "Battle Station",11,"start#bat_a02::OnReadyCheck",1,0,80;
+ waitingroom("Battle Station", 11, "start#bat_a02::OnReadyCheck", 1, 0, 80);
end;
OnEnterBG:
@@ -168,7 +168,7 @@ OnTimer10000:
bat_a02,15,16,3 script OBJ#bat_a02_a CLEAR_NPC,{
OnEnable:
- bg_monster $@TierraBG2_id1,"bat_a02",177,345,"Food Storage",1909,"OBJ#bat_a02_a::OnMyMobDead";
+ bg_monster($@TierraBG2_id1, "bat_a02", 177, 345, _("Food Storage"), 1909, "OBJ#bat_a02_a::OnMyMobDead");
end;
OnKill:
@@ -182,7 +182,7 @@ OnMyMobDead:
$@TierraBG2_Victory = 2;
enablenpc "Guillaume Vintenar#a02_a";
enablenpc "Croix Vintenar#a02_b";
- mapannounce "bat_a02", "Croix Vintenar Swandery: We destroyed Guillaume's Food Storage. We won that! Wow!",bc_map,"0xFFCE00";
+ mapannounce("bat_a02", _("Croix Vintenar Swandery: We destroyed Guillaume's Food Storage. We won that! Wow!"), bc_map, "0xFFCE00");
bg_warp $@TierraBG2_id1,"bat_a02",50,374;
bg_warp $@TierraBG2_id2,"bat_a02",42,16;
}
@@ -191,7 +191,7 @@ OnMyMobDead:
bat_a02,15,17,3 script OBJ#bat_a02_b CLEAR_NPC,{
OnEnable:
- bg_monster $@TierraBG2_id2,"bat_a02",167,50,"Food Depot",1910,"OBJ#bat_a02_b::OnMyMobDead";
+ bg_monster($@TierraBG2_id2, "bat_a02", 167, 50, _("Food Depot"), 1910, "OBJ#bat_a02_b::OnMyMobDead");
end;
OnKill:
@@ -205,7 +205,7 @@ OnMyMobDead:
$@TierraBG2_Victory = 1;
enablenpc "Guillaume Vintenar#a02_a";
enablenpc "Croix Vintenar#a02_b";
- mapannounce "bat_a02", "Guillaume Vintenar Axl Rose : We destroyed Croix's Food Storage. We won that! Wow!",bc_map,"0xFFCE00";
+ mapannounce("bat_a02", _("Guillaume Vintenar Axl Rose : We destroyed Croix's Food Storage. We won that! Wow!"), bc_map, "0xFFCE00");
bg_warp $@TierraBG2_id1,"bat_a02",50,374;
bg_warp $@TierraBG2_id2,"bat_a02",42,16;
}
@@ -215,7 +215,7 @@ OnMyMobDead:
bat_a02,15,18,3 script barricade#bat_a02_a CLEAR_NPC,{
OnEnable:
for (.@i = 185; .@i < 202; ++.@i)
- bg_monster $@TierraBG2_id1,"bat_a02",.@i,266,"Barricade",1906,"barricade#bat_a02_a::OnMyMobDead";
+ bg_monster($@TierraBG2_id1, "bat_a02", .@i, 266, _("Barricade"), 1906, "barricade#bat_a02_a::OnMyMobDead");
setwall "bat_a02",186,266,16,6,1,"bat_a02_c1";
end;
@@ -229,7 +229,7 @@ OnMyMobDead:
killmonster "bat_a02","barricade#bat_a02_a::OnMyMobDead";
delwall "bat_a02_c1";
enablenpc "Guillaume Blacksmith#a02";
- mapannounce "bat_a02", "Guillaume Vintenar Axl Rose : The Barricade in the valley has been destroyed! Where's the Blacksmith? We need to rebuild the Barricade!",bc_map,"0xFFCE00";
+ mapannounce("bat_a02", _("Guillaume Vintenar Axl Rose : The Barricade in the valley has been destroyed! Where's the Blacksmith? We need to rebuild the Barricade!"), bc_map, "0xFFCE00");
}
end;
}
@@ -237,7 +237,7 @@ OnMyMobDead:
bat_a02,15,19,3 script barricade#bat_a02_b CLEAR_NPC,{
OnEnable:
for (.@i = 169; .@i < 186; ++.@i)
- bg_monster $@TierraBG2_id2,"bat_a02",.@i,129,"Barricade",1906,"barricade#bat_a02_b::OnMyMobDead";
+ bg_monster($@TierraBG2_id2, "bat_a02", .@i, 129, _("Barricade"), 1906, "barricade#bat_a02_b::OnMyMobDead");
setwall "bat_a02",170,129,16,6,1,"bat_a02_g1";
end;
@@ -251,14 +251,14 @@ OnMyMobDead:
killmonster "bat_a02","barricade#bat_a02_b::OnMyMobDead";
delwall "bat_a02_g1";
enablenpc "Croix Blacksmith#bat_a02";
- mapannounce "bat_a02", "Croix Vintenar Swandery : The Barricade in the valley has been destroyed! Where's the Blacksmith? We need to rebuild the Barricade!",bc_map,"0xFFCE00";
+ mapannounce("bat_a02", _("Croix Vintenar Swandery : The Barricade in the valley has been destroyed! Where's the Blacksmith? We need to rebuild the Barricade!"), bc_map, "0xFFCE00");
}
end;
}
bat_a02,15,20,3 script OBJ#bat_a02_n CLEAR_NPC,{
OnEnable:
- monster "bat_a02",273,203,"Neutrality Flag",1911,1,"OBJ#bat_a02_n::OnMyMobDead";
+ monster("bat_a02", 273, 203, _("Neutrality Flag"), 1911, 1, "OBJ#bat_a02_n::OnMyMobDead");
end;
OnKill:
@@ -270,11 +270,11 @@ OnMyMobDead:
bg_team_setxy getcharid(4),56,212;
if (getcharid(4) == $@TierraBG2_id1) {
donpcevent "NOBJ_mob#bat_a02_a::OnEnable";
- mapannounce "bat_a02", "Guillaume captured a Neutrality Flag, so they have an advantage.",bc_map,"0xFFCE00";
+ mapannounce("bat_a02", _("Guillaume captured a Neutrality Flag, so they have an advantage."), bc_map, "0xFFCE00");
}
else {
donpcevent "NOBJ_mob#bat_a02_b::OnEnable";
- mapannounce "bat_a02", "Croix captured a Neutrality Flag, so they have an advantage.",bc_map,"0xFFCE00";
+ mapannounce("bat_a02", _("Croix captured a Neutrality Flag, so they have an advantage."), bc_map, "0xFFCE00");
}
}
end;
@@ -283,9 +283,9 @@ OnMyMobDead:
bat_a02,15,21,3 script NOBJ_mob#bat_a02_a CLEAR_NPC,{
OnEnable:
donpcevent "NOBJ_mob#bat_a02_b::OnKill";
- bg_monster $@TierraBG2_id1,"bat_a02",272,204,"Guillaume Camp Guardian",1949,"NOBJ_mob#bat_a02_a::OnMyMobDead";
- bg_monster $@TierraBG2_id1,"bat_a02",272,213,"Guillaume Camp Guardian",1949,"NOBJ_mob#bat_a02_a::OnMyMobDead";
- bg_monster $@TierraBG2_id1,"bat_a02",273,197,"Guillaume Camp Guardian",1950,"NOBJ_mob#bat_a02_a::OnMyMobDead";
+ bg_monster($@TierraBG2_id1, "bat_a02", 272, 204, _("Guillaume Camp Guardian"), 1949, "NOBJ_mob#bat_a02_a::OnMyMobDead");
+ bg_monster($@TierraBG2_id1, "bat_a02", 272, 213, _("Guillaume Camp Guardian"), 1949, "NOBJ_mob#bat_a02_a::OnMyMobDead");
+ bg_monster($@TierraBG2_id1, "bat_a02", 273, 197, _("Guillaume Camp Guardian"), 1950, "NOBJ_mob#bat_a02_a::OnMyMobDead");
end;
OnKill:
@@ -299,9 +299,9 @@ OnMyMobDead:
bat_a02,15,22,3 script NOBJ_mob#bat_a02_b CLEAR_NPC,{
OnEnable:
donpcevent "NOBJ_mob#bat_a02_a::OnKill";
- bg_monster $@TierraBG2_id2,"bat_a02",272,204,"Croix Camp Guardian",1949,"NOBJ_mob#bat_a02_a::OnMyMobDead";
- bg_monster $@TierraBG2_id2,"bat_a02",272,213,"Croix Camp Guardian",1949,"NOBJ_mob#bat_a02_a::OnMyMobDead";
- bg_monster $@TierraBG2_id2,"bat_a02",273,197,"Croix Camp Guardian",1950,"NOBJ_mob#bat_a02_a::OnMyMobDead";
+ bg_monster($@TierraBG2_id2, "bat_a02", 272, 204, _("Croix Camp Guardian"), 1949, "NOBJ_mob#bat_a02_a::OnMyMobDead");
+ bg_monster($@TierraBG2_id2, "bat_a02", 272, 213, _("Croix Camp Guardian"), 1949, "NOBJ_mob#bat_a02_a::OnMyMobDead");
+ bg_monster($@TierraBG2_id2, "bat_a02", 273, 197, _("Croix Camp Guardian"), 1950, "NOBJ_mob#bat_a02_a::OnMyMobDead");
end;
OnKill:
@@ -314,56 +314,56 @@ OnMyMobDead:
bat_a02,185,270,1 script Guillaume Blacksmith#a02 4_M_REPAIR,{
if (getcharid(4) == $@TierraBG2_id1) {
- mes "[Guillaume Blacksmith]";
- mes "We are in urgency! The Barricade has been destroyed!";
- mes "We can repair the Barricade with ^3131FF50 Stones, 3 Sinew of Bear, 500 Metal Fragments, 30 Rough Elunium and 100 Gold.^000000";
- mes "We have it all except for the 50 Stones!";
+ mes("[Guillaume Blacksmith]");
+ mes("We are in urgency! The Barricade has been destroyed!");
+ mes("We can repair the Barricade with ^3131FF50 Stones, 3 Sinew of Bear, 500 Metal Fragments, 30 Rough Elunium and 100 Gold.^000000");
+ mes("We have it all except for the 50 Stones!");
next;
switch(select("Repair.", "Leave it.")) {
case 1:
if (countitem(Stone) > 49) {
- mes "[Guillaume Blacksmith]";
- mes "You brought enough stones! Let's go and repair.";
+ mes("[Guillaume Blacksmith]");
+ mes("You brought enough stones! Let's go and repair.");
next;
- mes "..";
+ mes("..");
next;
- mes "....";
+ mes("....");
next;
- mes "......";
+ mes("......");
next;
- mes "........";
+ mes("........");
next;
- mes "..........";
+ mes("..........");
next;
- mes "............";
+ mes("............");
next;
- mes "..............";
+ mes("..............");
next;
- mes "[Guillaume Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage.";
+ mes("[Guillaume Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage.");
next;
- mes "[Guillaume Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade.";
+ mes("[Guillaume Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade.");
next;
- mes "[Guillaume Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger.";
+ mes("[Guillaume Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger.");
next;
- mes "[Guillaume Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Now decorate with Metal Fragments.";
+ mes("[Guillaume Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Now decorate with Metal Fragments.");
next;
- mes "[Guillaume Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Decorate with Metal Fragments, and plait stones with Sinew of Bear!";
+ mes("[Guillaume Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Decorate with Metal Fragments, and plait stones with Sinew of Bear!");
next;
- mes "..............";
- mes "..............";
- mes "..............";
- mes "..............";
- mes "..............";
+ mes("..............");
+ mes("..............");
+ mes("..............");
+ mes("..............");
+ mes("..............");
next;
specialeffect EF_REPAIRWEAPON;
- mes "[Guillaume Blacksmith]";
- mes "Wow! It's done.";
- mes "We are relieved.";
+ mes("[Guillaume Blacksmith]");
+ mes("Wow! It's done.");
+ mes("We are relieved.");
delitem Stone,50;
donpcevent "barricade#bat_a02_a::OnEnable";
close2;
@@ -371,23 +371,23 @@ bat_a02,185,270,1 script Guillaume Blacksmith#a02 4_M_REPAIR,{
end;
}
else {
- mes "[Guillaume Blacksmith]";
- mes "You don't have enough Stones!";
+ mes("[Guillaume Blacksmith]");
+ mes("You don't have enough Stones!");
next;
- mes "[Guillaume Blacksmith]";
- mes "^3131FFWe need 50 Stones.^000000";
- mes "We are busy, so please hurry.";
+ mes("[Guillaume Blacksmith]");
+ mes("^3131FFWe need 50 Stones.^000000");
+ mes("We are busy, so please hurry.");
close;
}
case 2:
- mes "[Guillaume Blacksmith]";
- mes "There are enemies coming! Let's evacuate from here!";
+ mes("[Guillaume Blacksmith]");
+ mes("There are enemies coming! Let's evacuate from here!");
close;
}
}
else {
- mes "[Guillaume Blacksmith]";
- mes "There the enemy is coming!";
+ mes("[Guillaume Blacksmith]");
+ mes("There the enemy is coming!");
close;
}
@@ -398,56 +398,56 @@ OnInit:
bat_a02,170,121,5 script Croix Blacksmith#bat_a02 4_M_REPAIR,{
if (getcharid(4) == $@TierraBG2_id2) {
- mes "[Croix Blacksmith]";
- mes "We are in urgency! The Barricade has been destroyed!";
- mes "We can repair the Barricade with ^3131FF50 Stones, 3 Sinew of Bear, 500 Metal Fragments, 30 Rough Elunium and 100 Gold.^000000";
- mes "We have it all except for the 50 Stones!";
+ mes("[Croix Blacksmith]");
+ mes("We are in urgency! The Barricade has been destroyed!");
+ mes("We can repair the Barricade with ^3131FF50 Stones, 3 Sinew of Bear, 500 Metal Fragments, 30 Rough Elunium and 100 Gold.^000000");
+ mes("We have it all except for the 50 Stones!");
next;
switch(select("Repair.", "Leave it.")) {
case 1:
if (countitem(Stone) > 49) {
- mes "[Croix Blacksmith]";
- mes "You brought enough stones! Let's go and repair.";
+ mes("[Croix Blacksmith]");
+ mes("You brought enough stones! Let's go and repair.");
next;
- mes "..";
+ mes("..");
next;
- mes "....";
+ mes("....");
next;
- mes "......";
+ mes("......");
next;
- mes "........";
+ mes("........");
next;
- mes "..........";
+ mes("..........");
next;
- mes "............";
+ mes("............");
next;
- mes "..............";
+ mes("..............");
next;
- mes "[Croix Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage.";
+ mes("[Croix Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage.");
next;
- mes "[Croix Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade.";
+ mes("[Croix Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade.");
next;
- mes "[Croix Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger.";
+ mes("[Croix Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger.");
next;
- mes "[Croix Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Now decorate with Metal Fragments.";
+ mes("[Croix Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Now decorate with Metal Fragments.");
next;
- mes "[Croix Blacksmith]";
- mes "Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Decorate with Metal Fragments, and plait stones with Sinew of Bear!";
+ mes("[Croix Blacksmith]");
+ mes("Combine Stones and Gold in the proper percentage and shape the Barricade, then add Rough Elunium to make it stronger. Decorate with Metal Fragments, and plait stones with Sinew of Bear!");
next;
- mes "..............";
- mes "..............";
- mes "..............";
- mes "..............";
- mes "..............";
+ mes("..............");
+ mes("..............");
+ mes("..............");
+ mes("..............");
+ mes("..............");
next;
specialeffect EF_REPAIRWEAPON;
- mes "[Croix Blacksmith]";
- mes "Wow! It's done.";
- mes "We are relieved.";
+ mes("[Croix Blacksmith]");
+ mes("Wow! It's done.");
+ mes("We are relieved.");
delitem Stone,50;
donpcevent "barricade#bat_a02_b::OnEnable";
close2;
@@ -455,23 +455,23 @@ bat_a02,170,121,5 script Croix Blacksmith#bat_a02 4_M_REPAIR,{
end;
}
else {
- mes "[Croix Blacksmith]";
- mes "You don't have enough Stones!";
+ mes("[Croix Blacksmith]");
+ mes("You don't have enough Stones!");
next;
- mes "[Croix Blacksmith]";
- mes "^3131FFWe need 50 Stone.^000000";
- mes "We are busy, so please hurry.";
+ mes("[Croix Blacksmith]");
+ mes("^3131FFWe need 50 Stone.^000000");
+ mes("We are busy, so please hurry.");
close;
}
case 2:
- mes "[Croix Blacksmith]";
- mes "There are enemies coming! Let's evacuate from here!";
+ mes("[Croix Blacksmith]");
+ mes("There are enemies coming! Let's evacuate from here!");
close;
}
}
else {
- mes "[Croix Blacksmith]";
- mes "There, the enemy is coming!";
+ mes("[Croix Blacksmith]");
+ mes("There, the enemy is coming!");
close;
}
@@ -482,10 +482,10 @@ OnInit:
bat_a02,53,377,3 script Battle Therapist#a02_a 4_F_SISTER,{
specialeffect2 EF_HEAL;
- mes "[Battle Therapist]";
- mes "Just close your eyes,";
- mes "and take a deep breath.";
- mes "You can be free from pain.";
+ mes("[Battle Therapist]");
+ mes("Just close your eyes,\r"
+ "and take a deep breath.");
+ mes("You can be free from pain.");
close;
end;
@@ -532,10 +532,10 @@ OnTouch_:
bat_a02,45,19,3 script Battle Therapist#a02_b 4_F_SISTER,{
specialeffect2 EF_HEAL;
- mes "[Battle Therapist]";
- mes "Just close your eyes,";
- mes "and take a deep breath.";
- mes "You can be free from pain.";
+ mes("[Battle Therapist]");
+ mes("Just close your eyes,\r"
+ "and take a deep breath.");
+ mes("You can be free from pain.");
close;
end;
@@ -582,8 +582,8 @@ OnTouch:
bat_a02,60,216,3 script Valley Ghost#bat_a02_n 4_GHOSTRING,{
specialeffect2 EF_HEAL;
- mes "[Valley Ghost]";
- mes "Boo...Boo...";
+ mes("[Valley Ghost]");
+ mes("Boo...Boo...");
close;
OnInit:
@@ -700,18 +700,18 @@ bat_a02,53,377,3 script Guillaume Vintenar#a02_a 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,3;
}
else {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -720,18 +720,18 @@ bat_a02,53,377,3 script Guillaume Vintenar#a02_a 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 0) {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, and next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, and next time you will definitely win.");
close2;
getitem BF_Badge1,1;
}
else {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, and next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, and next time you will definitely win.");
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -742,18 +742,18 @@ bat_a02,53,377,3 script Guillaume Vintenar#a02_a 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 0) {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, and next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, and next time you will definitely win.");
close2;
getitem BF_Badge1,1;
}
else {
- mes "[Axl Rose]";
- mes "You lost, but you're dedicated to this battle.";
- mes "This is a reward for your great dedication by Guillaume Marollo!";
- mes "Just take this defeat as a lesson, and next time you will definitely win.";
+ mes("[Axl Rose]");
+ mes("You lost, but you're dedicated to this battle.");
+ mes("This is a reward for your great dedication by Guillaume Marollo!");
+ mes("Just take this defeat as a lesson, and next time you will definitely win.");
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -762,18 +762,18 @@ bat_a02,53,377,3 script Guillaume Vintenar#a02_a 4_M_KY_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,3;
}
else {
- mes "[Axl Rose]";
- mes "Blessed Guillaume!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign of victory.";
+ mes("[Axl Rose]");
+ mes("Blessed Guillaume!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign of victory.", strcharinfo(0));
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -794,18 +794,18 @@ bat_a02,45,19,3 script Croix Vintenar#a02_b 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,3;
}
else {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -814,18 +814,18 @@ bat_a02,45,19,3 script Croix Vintenar#a02_b 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 0) {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+" Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge1,1;
}
else {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+" Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -836,18 +836,18 @@ bat_a02,45,19,3 script Croix Vintenar#a02_b 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 0) {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+" Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge1,1;
}
else {
- mes "[Swandery]";
- mes "Oh, "+strcharinfo(0)+" Don't be sad.";
- mes "Even though we didn't win, we did our best.";
- mes "This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.";
+ mes("[Swandery]");
+ mesf("Oh, %s Don't be sad.", strcharinfo(0));
+ mes("Even though we didn't win, we did our best.");
+ mes("This is a Royal gift from Croix, and please don't forget this battle. We will win the next one.");
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -856,18 +856,18 @@ bat_a02,45,19,3 script Croix Vintenar#a02_b 4_M_CRU_HEAD,{
.@your_medal = countitem(BF_Badge1);
.@medal_gap = 500 - .@your_medal;
if (.@medal_gap > 2) {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,3;
}
else {
- mes "[Swandery]";
- mes "Blessed Croix!";
- mes "Let's enjoy our glorious victory!";
- mes ""+strcharinfo(0)+", it's a sign reflecting victory.";
+ mes("[Swandery]");
+ mes("Blessed Croix!");
+ mes("Let's enjoy our glorious victory!");
+ mesf("%s, it's a sign reflecting victory.", strcharinfo(0));
close2;
getitem BF_Badge1,.@medal_gap;
}
@@ -892,31 +892,31 @@ OnStop:
end;
OnTimer7000:
- mapannounce "bat_a02", "Guillaume Vintenar Axl Rose : Let's attack to burn down Croix's Food Depot!",bc_map,"0xFF9900";
+ mapannounce("bat_a02", _("Guillaume Vintenar Axl Rose : Let's attack to burn down Croix's Food Depot!"), bc_map, "0xFF9900");
end;
OnTimer8000:
- mapannounce "bat_a02", "Croix Vintenar Swandery : Master of Valhalla! Let us be gifted with unfailing faith and courage!",bc_map,"0xFF99CC";
+ mapannounce("bat_a02", _("Croix Vintenar Swandery : Master of Valhalla! Let us be gifted with unfailing faith and courage!"), bc_map, "0xFF99CC");
end;
OnTimer1800000:
- mapannounce "bat_a02", "Marollo VII : Guillaume Marollo, Croix Marollo! Marollo followers!",bc_map,"0x99CC00";
+ mapannounce("bat_a02", _("Marollo VII : Guillaume Marollo, Croix Marollo! Marollo followers!"), bc_map, "0x99CC00");
end;
OnTimer1803000:
- mapannounce "bat_a02", "Marollo VII : Both camps are competitive, so no camp would be destroyed easily. That means the Marollo kingdoms will never be defeated!",bc_map,"0x99CC00";
+ mapannounce("bat_a02", _("Marollo VII : Both camps are competitive, so no camp would be destroyed easily. That means the Marollo kingdoms will never be defeated!"), bc_map, "0x99CC00");
end;
OnTimer1808000:
- mapannounce "bat_a02", "Marollo VII : I think we'd better terminate the battle, and call it a draw.",bc_map,"0x99CC00";
+ mapannounce("bat_a02", _("Marollo VII : I think we'd better terminate the battle, and call it a draw."), bc_map, "0x99CC00");
end;
OnTimer1822000:
- mapannounce "bat_a02", "Marollo VII : Hold your royalty and faith for a moment, and let's settle up the battle of Tierra Gorge.",bc_map,"0x99CC00";
+ mapannounce("bat_a02", _("Marollo VII : Hold your royalty and faith for a moment, and let's settle up the battle of Tierra Gorge."), bc_map, "0x99CC00");
end;
OnTimer1825000:
- mapannounce "bat_a02", "Axl Rose, Swandery : Yes sir.",bc_map,"0x99CC00";
+ mapannounce("bat_a02", _("Axl Rose, Swandery : Yes sir."), bc_map, "0x99CC00");
end;
OnTimer1830000:
@@ -927,12 +927,12 @@ OnTimer1830000:
/*
bat_a02,351,75,3 script Croix Camp Soldier#bat_a02_guide 4_M_RASWORD,{
- mes "Loading...";
+ mes("Loading...");
close;
}
bat_a02,356,326,3 script Guillaume Camp Soldier#bat_a02_guide 4_M_RASWORD,{
- mes "Loading...";
+ mes("Loading...");
close;
}
*/
@@ -940,21 +940,21 @@ bat_a02,356,326,3 script Guillaume Camp Soldier#bat_a02_guide 4_M_RASWORD,{
bat_a02,1,1,3 script Release all#a02 4_DOG01,{
.@i = callfunc("F_GM_NPC",1854,0);
if (.@i == -1) {
- mes "Cancelled.";
+ mes("Cancelled.");
close;
} else if (.@i == 0) {
end;
} else {
- mes "May I help you?";
+ mes("May I help you?");
next;
switch(select("Release all.", "Cancel.")) {
case 1:
- mes "Bye.";
+ mes("Bye.");
close2;
mapwarp "bat_a02","bat_room",154,150;
end;
case 2:
- mes "Cancelled.";
+ mes("Cancelled.");
close;
}
}
diff --git a/npc/battleground/tierra/tierra_enter.txt b/npc/battleground/tierra/tierra_enter.txt
index 43b28eb5b..c3a04719f 100644
--- a/npc/battleground/tierra/tierra_enter.txt
+++ b/npc/battleground/tierra/tierra_enter.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) L0ne_W0lf
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -35,59 +35,59 @@
//== First Tierra Gorge Officers - Guillaume ===============
bat_room,124,178,5 script Tierra Gorge Officer#01a 4_M_KY_KNT,{
if (checkweight(Knife,1) == 0) {
- mes "- Wait a minute !! -";
- mes "- Currently you're carrying -";
- mes "- too many items with you. -";
- mes "- Please try again -";
- mes "- after you loose some weight. -";
+ mes("- Wait a minute !! -");
+ mes("- Currently you're carrying -");
+ mes("- too many items with you. -");
+ mes("- Please try again -");
+ mes("- after you loose some weight. -");
close;
}
- mes "[Guillaume Army Officer]";
- mes "Let's show the power of the Guillaume Army to those stinky Croixs!";
+ mes("[Guillaume Army Officer]");
+ mes("Let's show the power of the Guillaume Army to those stinky Croixs!");
next;
switch(select("I want to join your army!", "End Conversation")) {
case 1:
if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes "[Guillaume Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Guillaume Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
if (BaseLevel < 80) {
- mes "[Guillaume Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Guillaume Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
.@chk_urtime = questprogress(2069,PLAYTIME);
if (.@chk_urtime == 1) {
- mes "[Guillaume Army Officer]";
- mes "You seem to have just returned from the battlefield.";
- mes "It's too early for you to go back. Go rest, and leave the enemies to us!";
+ mes("[Guillaume Army Officer]");
+ mes("You seem to have just returned from the battlefield.");
+ mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
break;
}
if (.@chk_urtime == 2)
erasequest 2069;
if (getmapusers("bat_a01") > 0) {
- mes "[Guillaume Army Officer]";
- mes "I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Croixs already.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Guillaume Army Officer]");
+ mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Croixs already.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
if ($@TierraBG1) {
- mes "[Guillaume Army Officer]";
- mes "An elite corps is already standing by to be dispatched to the battlefield.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Guillaume Army Officer]");
+ mes("An elite corps is already standing by to be dispatched to the battlefield.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
- mes "[Guillaume Army Officer]";
- mes "You definitely seem to be ready for battle!";
- mes "Go show the Croixs what fear truly means!";
- mes "Today, our cry of victory shall echo all over the battlefield!";
+ mes("[Guillaume Army Officer]");
+ mes("You definitely seem to be ready for battle!");
+ mes("Go show the Croixs what fear truly means!");
+ mes("Today, our cry of victory shall echo all over the battlefield!");
close2;
warp "bat_room",57,223;
end;
case 2:
- mes "[Guillaume Army Officer]";
- mes "Today, we shall be victorious!";
+ mes("[Guillaume Army Officer]");
+ mes("Today, we shall be victorious!");
break;
}
close;
@@ -95,216 +95,216 @@ bat_room,124,178,5 script Tierra Gorge Officer#01a 4_M_KY_KNT,{
bat_room,140,178,5 script Tierra Gorge Officer#02a 4_M_KY_KNT,{
if (checkweight(Knife,1) == 0) {
- mes "- Wait a minute !! -";
- mes "- Currently you're carrying -";
- mes "- too many items with you. -";
- mes "- Please try again -";
- mes "- after you loose some weight. -";
+ mes("- Wait a minute !! -");
+ mes("- Currently you're carrying -");
+ mes("- too many items with you. -");
+ mes("- Please try again -");
+ mes("- after you loose some weight. -");
close;
}
- mes "[Guillaume Army Officer]";
- mes "Let's show the power of the Guillaume Army to those stinky Croixs!";
+ mes("[Guillaume Army Officer]");
+ mes("Let's show the power of the Guillaume Army to those stinky Croixs!");
next;
switch(select("I want to join your army!", "End Conversation")) {
case 1:
if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes "[Guillaume Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Guillaume Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
if (BaseLevel < 80) {
- mes "[Guillaume Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Guillaume Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Croix Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
.@chk_urtime = questprogress(2069,PLAYTIME);
if (.@chk_urtime == 1) {
- mes "[Guillaume Army Officer]";
- mes "You seem to have just returned from the battlefield.";
- mes "It's too early for you to go back. Go rest, and leave the enemies to us!";
+ mes("[Guillaume Army Officer]");
+ mes("You seem to have just returned from the battlefield.");
+ mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
break;
}
if (.@chk_urtime == 2)
erasequest 2069;
if (getmapusers("bat_a02") > 0) {
- mes "[Guillaume Army Officer]";
- mes "I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Croixs already.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Guillaume Army Officer]");
+ mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Croixs already.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
if ($@TierraBG2) {
- mes "[Guillaume Army Officer]";
- mes "An elite corps is already standing by to be dispatched to the battlefield.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Guillaume Army Officer]");
+ mes("An elite corps is already standing by to be dispatched to the battlefield.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
- mes "[Guillaume Army Officer]";
- mes "You definitely seem to be ready for battle!";
- mes "Go show the Croixs what fear truly means!";
- mes "Today, our cry of victory shall echo all over the battlefield!";
+ mes("[Guillaume Army Officer]");
+ mes("You definitely seem to be ready for battle!");
+ mes("Go show the Croixs what fear truly means!");
+ mes("Today, our cry of victory shall echo all over the battlefield!");
close2;
warp "bat_room",114,223;
end;
case 2:
- mes "[Guillaume Army Officer]";
- mes "Today, we shall be victorious!";
+ mes("[Guillaume Army Officer]");
+ mes("Today, we shall be victorious!");
break;
}
close;
}
bat_room,127,178,5 script Guillaume Knight#1 4_M_KY_SOLD,{
- mes "[Guillaume Knight]";
- mes "Tierra Gorge consists of two steep sides placed vertically, and has ration depots for the Guillaume and Croix Armies at the 11 and 7 o'clock directions.";
+ mes("[Guillaume Knight]");
+ mes("Tierra Gorge consists of two steep sides placed vertically, and has ration depots for the Guillaume and Croix Armies at the 11 and 7 o'clock directions.");
next;
- mes "[Guillaume Knight]";
- mes "The battle starts at your army's ship, and the goal is to advance and destroy your enemy's rations depot faster than they can destroy yours.";
+ mes("[Guillaume Knight]");
+ mes("The battle starts at your army's ship, and the goal is to advance and destroy your enemy's rations depot faster than they can destroy yours.");
next;
- mes "[Guillaume Knight]";
- mes "The healer of the battlefield will resurrect soldiers once every 25 seconds so that they can rejoin the battle.";
- mes "The army that captures the neutral flag in the center of the battlefield will be rewarded with extra regeneration points, meaning their soldiers will resurrect more than the other side, giving them an advantage.";
+ mes("[Guillaume Knight]");
+ mes("The healer of the battlefield will resurrect soldiers once every 25 seconds so that they can rejoin the battle.");
+ mes("The army that captures the neutral flag in the center of the battlefield will be rewarded with extra regeneration points, meaning their soldiers will resurrect more than the other side, giving them an advantage.");
next;
- mes "[Guillaume Knight]";
- mes "Those two rations depots are connected to each other through short and narrow paths, but the gates are blocked with barricades.";
- mes "Think and move as quickly as you can. The victory of your army relies on your contribution.";
+ mes("[Guillaume Knight]");
+ mes("Those two rations depots are connected to each other through short and narrow paths, but the gates are blocked with barricades.");
+ mes("Think and move as quickly as you can. The victory of your army relies on your contribution.");
next;
- mes "[Guillaume Knight]";
- mes "Please remember: when you join a battle, you will receive a token which indicates the set duration for which you cannot participate in the same type of battle.";
- mes "You may check the duration by pressing the Alt+U keys.";
+ mes("[Guillaume Knight]");
+ mes("Please remember: when you join a battle, you will receive a token which indicates the set duration for which you cannot participate in the same type of battle.");
+ mes("You may check the duration by pressing the Alt+U keys.");
next;
- mes "[Guillaume Knight]";
- mes "Are you ready to battle? Then apply with the recruiter next to me!";
+ mes("[Guillaume Knight]");
+ mes("Are you ready to battle? Then apply with the recruiter next to me!");
close;
}
bat_room,143,178,5 script Guillaume Knight#2 4_M_KY_SOLD,{
- mes "[Guillaume Knight]";
- mes "Tierra Gorge consists of two steep sides placed vertically, and has ration depots for the Guillaume and Croix Armies at the 11 and 7 o'clock directions.";
+ mes("[Guillaume Knight]");
+ mes("Tierra Gorge consists of two steep sides placed vertically, and has ration depots for the Guillaume and Croix Armies at the 11 and 7 o'clock directions.");
next;
- mes "[Guillaume Knight]";
- mes "The battle starts at your army's ship, and the goal is to advance and destroy your enemy's rations depot faster than they can destroy yours.";
+ mes("[Guillaume Knight]");
+ mes("The battle starts at your army's ship, and the goal is to advance and destroy your enemy's rations depot faster than they can destroy yours.");
next;
- mes "[Guillaume Knight]";
- mes "The healer of the battlefield will resurrect soldiers once every 25 seconds so that they can rejoin the battle.";
- mes "The army that captures the neutral flag in the center of the battlefield will be rewarded with extra regeneration points, meaning their soldiers will resurrect more than the other side, giving them an advantage.";
+ mes("[Guillaume Knight]");
+ mes("The healer of the battlefield will resurrect soldiers once every 25 seconds so that they can rejoin the battle.");
+ mes("The army that captures the neutral flag in the center of the battlefield will be rewarded with extra regeneration points, meaning their soldiers will resurrect more than the other side, giving them an advantage.");
next;
- mes "[Guillaume Knight]";
- mes "Those two rations depots are connected to each other through short and narrow paths, but the gates are blocked with barricades.";
- mes "Think and move as quickly as you can. The victory of your army relies on your contribution.";
+ mes("[Guillaume Knight]");
+ mes("Those two rations depots are connected to each other through short and narrow paths, but the gates are blocked with barricades.");
+ mes("Think and move as quickly as you can. The victory of your army relies on your contribution.");
next;
- mes "[Guillaume Knight]";
- mes "Please remember: when you join a battle, you will receive a token which indicates the set duration for which you cannot participate in the same type of battle.";
- mes "You may check the duration by pressing the Alt+U keys.";
+ mes("[Guillaume Knight]");
+ mes("Please remember: when you join a battle, you will receive a token which indicates the set duration for which you cannot participate in the same type of battle.");
+ mes("You may check the duration by pressing the Alt+U keys.");
next;
- mes "[Guillaume Knight]";
- mes "Are you ready to battle? Then apply with the recruiter next to me!";
+ mes("[Guillaume Knight]");
+ mes("Are you ready to battle? Then apply with the recruiter next to me!");
close;
}
bat_room,127,121,1 script Croix Knight#1 4_M_CRU_SOLD,{
- mes "[Croix Knight]";
- mes "Tierra Gorge consists of two steep sides placed vertically, and has ration depots for the Guillaume and Croix Armies at the 11 and 7 o'clock directions.";
+ mes("[Croix Knight]");
+ mes("Tierra Gorge consists of two steep sides placed vertically, and has ration depots for the Guillaume and Croix Armies at the 11 and 7 o'clock directions.");
next;
- mes "[Croix Knight]";
- mes "The battle starts at your army's ship, and the goal is to advance and destroy your enemy's rations depot faster than they can destroy yours.";
+ mes("[Croix Knight]");
+ mes("The battle starts at your army's ship, and the goal is to advance and destroy your enemy's rations depot faster than they can destroy yours.");
next;
- mes "[Croix Knight]";
- mes "The healer of the battlefield will resurrect soldiers once every 25 seconds so that they can rejoin the battle.";
- mes "The army that captures the neutral flag in the center of the battlefield will be rewarded with extra regeneration points, meaning their soldiers will resurrect more than the other side, giving them an advantage.";
+ mes("[Croix Knight]");
+ mes("The healer of the battlefield will resurrect soldiers once every 25 seconds so that they can rejoin the battle.");
+ mes("The army that captures the neutral flag in the center of the battlefield will be rewarded with extra regeneration points, meaning their soldiers will resurrect more than the other side, giving them an advantage.");
next;
- mes "[Croix Knight]";
- mes "Those two rations depots are connected to each other through short and narrow paths, but the gates are blocked with barricades.";
- mes "Think and move as quickly as you can. The victory of your army relies on your contribution.";
+ mes("[Croix Knight]");
+ mes("Those two rations depots are connected to each other through short and narrow paths, but the gates are blocked with barricades.");
+ mes("Think and move as quickly as you can. The victory of your army relies on your contribution.");
next;
- mes "[Croix Knight]";
- mes "Please remember: when you join a battle, you will receive a token which indicates the set duration for which you cannot participate in the same type of battle.";
- mes "You may check the duration by pressing the Alt+U keys.";
+ mes("[Croix Knight]");
+ mes("Please remember: when you join a battle, you will receive a token which indicates the set duration for which you cannot participate in the same type of battle.");
+ mes("You may check the duration by pressing the Alt+U keys.");
next;
- mes "[Croix Knight]";
- mes "Are you ready to battle? Then apply with the recruiter next to me!";
+ mes("[Croix Knight]");
+ mes("Are you ready to battle? Then apply with the recruiter next to me!");
close;
}
bat_room,143,121,1 script Croix Knight#2 4_M_CRU_SOLD,{
- mes "[Croix Knight]";
- mes "Tierra Gorge consists of two steep sides placed vertically, and has ration depots for the Guillaume and Croix Armies at the 11 and 7 o'clock directions.";
+ mes("[Croix Knight]");
+ mes("Tierra Gorge consists of two steep sides placed vertically, and has ration depots for the Guillaume and Croix Armies at the 11 and 7 o'clock directions.");
next;
- mes "[Croix Knight]";
- mes "The battle starts at your army's ship, and the goal is to advance and destroy your enemy's rations depot faster than they can destroy yours.";
+ mes("[Croix Knight]");
+ mes("The battle starts at your army's ship, and the goal is to advance and destroy your enemy's rations depot faster than they can destroy yours.");
next;
- mes "[Croix Knight]";
- mes "The healer of the battlefield will resurrect soldiers once every 25 seconds so that they can rejoin the battle.";
- mes "The army that captures the neutral flag in the center of the battlefield will be rewarded with extra regeneration points, meaning their soldiers will resurrect more than the other side, giving them an advantage.";
+ mes("[Croix Knight]");
+ mes("The healer of the battlefield will resurrect soldiers once every 25 seconds so that they can rejoin the battle.");
+ mes("The army that captures the neutral flag in the center of the battlefield will be rewarded with extra regeneration points, meaning their soldiers will resurrect more than the other side, giving them an advantage.");
next;
- mes "[Croix Knight]";
- mes "Those two rations depots are connected to each other through short and narrow paths, but the gates are blocked with barricades.";
- mes "Think and move as quickly as you can. The victory of your army relies on your contribution.";
+ mes("[Croix Knight]");
+ mes("Those two rations depots are connected to each other through short and narrow paths, but the gates are blocked with barricades.");
+ mes("Think and move as quickly as you can. The victory of your army relies on your contribution.");
next;
- mes "[Croix Knight]";
- mes "Please remember: when you join a battle, you will receive a token which indicates the set duration for which you cannot participate in the same type of battle.";
- mes "You may check the duration by pressing the Alt+U keys.";
+ mes("[Croix Knight]");
+ mes("Please remember: when you join a battle, you will receive a token which indicates the set duration for which you cannot participate in the same type of battle.");
+ mes("You may check the duration by pressing the Alt+U keys.");
next;
- mes "[Croix Knight]";
- mes "Are you ready to battle? Then apply with the recruiter next to me!";
+ mes("[Croix Knight]");
+ mes("Are you ready to battle? Then apply with the recruiter next to me!");
close;
}
//== Second Tierra Gorge Officers - Croix ==================
bat_room,125,121,1 script Tierra Gorge Officer#01b 4_M_CRU_KNT,{
if (checkweight(Knife,1) == 0) {
- mes "- Wait a minute !! -";
- mes "- Currently you're carrying -";
- mes "- too many items with you. -";
- mes "- Please try again -";
- mes "- after you loose some weight. -";
+ mes("- Wait a minute !! -");
+ mes("- Currently you're carrying -");
+ mes("- too many items with you. -");
+ mes("- Please try again -");
+ mes("- after you loose some weight. -");
close;
}
- mes "[Croix Army Officer]";
- mes "Let's show the power of the Croix Army to those stinky Guillaumes!";
+ mes("[Croix Army Officer]");
+ mes("Let's show the power of the Croix Army to those stinky Guillaumes!");
next;
switch(select("I want to join your army!", "End Conversation")) {
case 1:
if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes "[Croix Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Croix Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
if (BaseLevel < 80) {
- mes "[Croix Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Croix Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
.@chk_urtime = questprogress(2069,PLAYTIME);
if (.@chk_urtime == 1) {
- mes "[Croix Army Officer]";
- mes "You seem to have just returned from the battlefield.";
- mes "It's too early for you to go back. Go rest, and leave the enemies to us!";
+ mes("[Croix Army Officer]");
+ mes("You seem to have just returned from the battlefield.");
+ mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
break;
}
if (.@chk_urtime == 2)
erasequest 2069;
if (getmapusers("bat_a02") > 0) {
- mes "[Croix Army Officer]";
- mes "I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Guillaume already.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Croix Army Officer]");
+ mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Guillaume already.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
if ($@TierraBG1) {
- mes "[Croix Army Officer]";
- mes "An elite corps is already standing by to be dispatched to the battlefield.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Croix Army Officer]");
+ mes("An elite corps is already standing by to be dispatched to the battlefield.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
- mes "[Croix Army Officer]";
- mes "You definitely seem to be ready for battle!";
- mes "Go show the Guillaumes what fear truly means!";
- mes "Today, our cry of victory shall echo all over the battlefield!";
+ mes("[Croix Army Officer]");
+ mes("You definitely seem to be ready for battle!");
+ mes("Go show the Guillaumes what fear truly means!");
+ mes("Today, our cry of victory shall echo all over the battlefield!");
close2;
warp "bat_room",57,207;
end;
case 2:
- mes "[Croix Army Officer]";
- mes "Today, we shall be victorious!";
+ mes("[Croix Army Officer]");
+ mes("Today, we shall be victorious!");
break;
}
close;
@@ -312,59 +312,59 @@ bat_room,125,121,1 script Tierra Gorge Officer#01b 4_M_CRU_KNT,{
bat_room,140,121,1 script Tierra Gorge Officer#02b 4_M_CRU_KNT,{
if (checkweight(Knife,1) == 0) {
- mes "- Wait a minute !! -";
- mes "- Currently you're carrying -";
- mes "- too many items with you. -";
- mes "- Please try again -";
- mes "- after you loose some weight. -";
+ mes("- Wait a minute !! -");
+ mes("- Currently you're carrying -");
+ mes("- too many items with you. -");
+ mes("- Please try again -");
+ mes("- after you loose some weight. -");
close;
}
- mes "[Croix Army Officer]";
- mes "Let's show the power of the Croix Army to those stinky Guillaumes!";
+ mes("[Croix Army Officer]");
+ mes("Let's show the power of the Croix Army to those stinky Guillaumes!");
next;
switch(select("I want to join your army!", "End Conversation")) {
case 1:
if ((Class == Job_Novice) || (BaseClass == Job_SuperNovice)) {
- mes "[Croix Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Croix Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
if (BaseLevel < 80) {
- mes "[Croix Army Officer]";
- mes "I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.";
+ mes("[Croix Army Officer]");
+ mes("I'm very pleased that you want to join us and fight the Guillaume Army, but I'm sorry: I can't send a rookie like you to die on the cruel battlefield.");
break;
}
.@chk_urtime = questprogress(2069,PLAYTIME);
if (.@chk_urtime == 1) {
- mes "[Croix Army Officer]";
- mes "You seem to have just returned from the battlefield.";
- mes "It's too early for you to go back. Go rest, and leave the enemies to us!";
+ mes("[Croix Army Officer]");
+ mes("You seem to have just returned from the battlefield.");
+ mes("It's too early for you to go back. Go rest, and leave the enemies to us!");
break;
}
if (.@chk_urtime == 2)
erasequest 2069;
if (getmapusers("bat_a02") > 0) {
- mes "[Croix Army Officer]";
- mes "I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Guillaume already.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Croix Army Officer]");
+ mes("I've received a report informing me that an elite corps has been dispatched to the battlefield fighting the Guillaume already.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
if ($@TierraBG2) {
- mes "[Croix Army Officer]";
- mes "An elite corps is already standing by to be dispatched to the battlefield.";
- mes "Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.";
+ mes("[Croix Army Officer]");
+ mes("An elite corps is already standing by to be dispatched to the battlefield.");
+ mes("Why don't you go wait for a while? I suggest you sharpen your weapons and prepare your supplies until then.");
break;
}
- mes "[Croix Army Officer]";
- mes "You definitely seem to be ready for battle!";
- mes "Go show the Guillaumes what fear truly means!";
- mes "Today, our cry of victory shall echo all over the battlefield!";
+ mes("[Croix Army Officer]");
+ mes("You definitely seem to be ready for battle!");
+ mes("Go show the Guillaumes what fear truly means!");
+ mes("Today, our cry of victory shall echo all over the battlefield!");
close2;
warp "bat_room",114,207;
end;
case 2:
- mes "[Croix Army Officer]";
- mes "Today, we shall be victorious!";
+ mes("[Croix Army Officer]");
+ mes("Today, we shall be victorious!");
break;
}
close;
diff --git a/npc/cities/splendide.txt b/npc/cities/splendide.txt
index c7ff5a365..d49f50ada 100644
--- a/npc/cities/splendide.txt
+++ b/npc/cities/splendide.txt
@@ -436,7 +436,7 @@ spl_in01,281,329,3 script Splendide Guard#tre 4_M_FAIRYSOLDIER,{
}
else {
mes "[Splendide Guard]";
- mes "AnduVeldRe Ko VeldReFulo So LomaurDu So So ";
+ mes "AnduVeldRe Ko VeldReFulo So LomaurDu So So";
close;
}
}
diff --git a/npc/custom/etc/airplane.txt b/npc/custom/etc/airplane.txt
index 99260f455..6fd500a41 100644
--- a/npc/custom/etc/airplane.txt
+++ b/npc/custom/etc/airplane.txt
@@ -293,10 +293,10 @@ glast_01,196,326,1 script Porter#07 4_M_TWBOY,{
umbala,188,98,3 script Porter#08 4_M_TWBOY,{
callfunc "F_Porter",8;
}
-comodo,203,75,8 script Porter#09 4_M_TWBOY,{
+comodo,203,75,0 script Porter#09 4_M_TWBOY,{
callfunc "F_Porter",9;
}
-amatsu,115,78,8 script Porter#10 4_M_TWBOY,{
+amatsu,115,78,0 script Porter#10 4_M_TWBOY,{
callfunc "F_Porter",10;
}
niflheim,132,242,5 script Porter#11 4_M_TWBOY,{
@@ -305,7 +305,7 @@ niflheim,132,242,5 script Porter#11 4_M_TWBOY,{
xmas,232,309,5 script Porter#12 4_M_TWBOY,{
callfunc "F_Porter",12;
}
-louyang,35,279,8 script Porter#13 4_M_TWBOY,{
+louyang,35,279,0 script Porter#13 4_M_TWBOY,{
callfunc "F_Porter",13;
}
gonryun,82,95,7 script Porter#14 4_M_TWBOY,{
diff --git a/npc/custom/etc/quest_warper.txt b/npc/custom/etc/quest_warper.txt
index c00559c8f..35b863e9d 100644
--- a/npc/custom/etc/quest_warper.txt
+++ b/npc/custom/etc/quest_warper.txt
@@ -1621,7 +1621,7 @@ niflheim,197,192,3 duplicate(Warpra#0) Warpra#9 4_F_KAFRA5
pay_arche,39,135,4 duplicate(Warpra#0) Warpra#10 4_F_KAFRA5
prt_fild05,273,215,4 duplicate(Warpra#0) Warpra#11 4_F_KAFRA5
tur_dun01,148,239,4 duplicate(Warpra#0) Warpra#12 4_F_KAFRA5
-valkyrie,48,35,8 duplicate(Warpra#0) Warpra#13 4_F_KAFRA5
+valkyrie,48,35,0 duplicate(Warpra#0) Warpra#13 4_F_KAFRA5
yuno_fild03,37,135,4 duplicate(Warpra#0) Warpra#14 4_F_KAFRA5
alberta,32,240,4 script Warpra#15 4_F_KAFRA5,{ callfunc "QWS_Town_Warpra",1,"Alberta Town"; close; }
diff --git a/npc/custom/events/uneasy_cemetery.txt b/npc/custom/events/uneasy_cemetery.txt
index 99c1f21cb..7027dacbf 100644
--- a/npc/custom/events/uneasy_cemetery.txt
+++ b/npc/custom/events/uneasy_cemetery.txt
@@ -33,7 +33,7 @@ OnInit:
end;
OnHour06:
- killmonster "Uneasy_Check::OnZombieDead"; //The Sun kills undead in the morning
+ killmonster "prontera", "Uneasy_Check::OnZombieDead"; //The Sun kills undead in the morning
end;
OnHour01:
@@ -54,7 +54,7 @@ OnZombieDead:
end;
L_Start_Undead:
- killmonster "Uneasy_Check::OnZombieDead"; //kills any left monsters
+ killmonster "prontera", "Uneasy_Check::OnZombieDead"; //kills any left monsters
enablenpc "Mother Mathana";
//call some monsters in the city
set $@UNEASY_MOB, 65;
@@ -98,7 +98,7 @@ L_Undead_Walk:
mes "[Mother Mathana]";
mes "Upon pouring the cemetery with that water we'll get " + $UNEASY_DL + " safe nights!";
next;
- killmonster "Uneasy_Check::OnZombieDead"; //kills any left monsters
+ killmonster "prontera", "Uneasy_Check::OnZombieDead"; //kills any left monsters
mes "[Mother Mathana]";
mes "See, "+ $UNEASY_H$ +"? They all are gone now!";
next;
diff --git a/npc/custom/quests/berzebub.txt b/npc/custom/quests/berzebub.txt
index 7dec41f79..5590a1911 100644
--- a/npc/custom/quests/berzebub.txt
+++ b/npc/custom/quests/berzebub.txt
@@ -11,7 +11,7 @@
//= 1.2 Optimized. [Euphy]
//============================================================
-prontera,165,178,8 script Old Woman 8_F_GRANDMOTHER,{
+prontera,165,178,0 script Old Woman 8_F_GRANDMOTHER,{
setarray .@items[0],714,25,1061,100,1095,200,618,10,1551,2,1614,1,727,20;
set .@n$,"[Old Woman]";
diff --git a/npc/dev/test.txt b/npc/dev/test.txt
index 72cf86616..ee2bda259 100644
--- a/npc/dev/test.txt
+++ b/npc/dev/test.txt
@@ -711,6 +711,24 @@ function script HerculesSelfTestHelper {
callsub(OnCheck, "Callfunc (return NPC variables from another NPC)", callfunc("F_TestVarOfAnotherNPC", "TestVarOfAnotherNPC"), 1);
callsub(OnCheck, "Callfunc (return NPC variables from another NPC - local variable overwrite check)", .x, 2);
+ callsub(OnCheckStr, "sprintf (%%)", sprintf("'%%'"), "'%'");
+ callsub(OnCheckStr, "sprintf (%d)", sprintf("'%d'", 5), "'5'");
+ callsub(OnCheckStr, "sprintf (neg. %d)", sprintf("'%d'", -5), "'-5'");
+ callsub(OnCheckStr, "sprintf (%u)", sprintf("'%u'", 5), "'5'");
+ callsub(OnCheckStr, "sprintf (%x)", sprintf("'%x'", 10), "'a'");
+ callsub(OnCheckStr, "sprintf (%X)", sprintf("'%X'", 31), "'1F'");
+ callsub(OnCheckStr, "sprintf (%s)", sprintf("'%s'", "Hello World!"), "'Hello World!'");
+ callsub(OnCheckStr, "sprintf (%c)", sprintf("'%c'", "Hello World!"), "'H'");
+ callsub(OnCheckStr, "sprintf (%+d)", sprintf("'%+d'", 5), "'+5'");
+ callsub(OnCheckStr, "sprintf (%{n}d)", sprintf("'%5d'", 5), "' 5'");
+ callsub(OnCheckStr, "sprintf (%-{n}d)", sprintf("'%-5d'", 5), "'5 '");
+ callsub(OnCheckStr, "sprintf (%-+{n}d)", sprintf("'%-+5d'", 5), "'+5 '");
+ callsub(OnCheckStr, "sprintf (%+0{n}d)", sprintf("'%+05d'", 5), "'+0005'");
+ callsub(OnCheckStr, "sprintf (%0*d)", sprintf("'%0*d'", 5, 10), "'00010'");
+ callsub(OnCheckStr, "sprintf (Two args)", sprintf("'%+05d' '%x'", 5, 0x7f), "'+0005' '7f'");
+ callsub(OnCheckStr, "sprintf (positional)", sprintf("'%2$+05d'", 5, 6), "'+0006'");
+ callsub(OnCheckStr, "sprintf (positional)", sprintf("'%2$s' '%1$c'", "First", "Second"), "'Second' 'F'");
+
if (.errors) {
debugmes "Script engine self-test [ \033[0;31mFAILED\033[0m ]";
debugmes "**** The test was completed with " + .errors + " errors. ****";
diff --git a/npc/events/halloween_2006.txt b/npc/events/halloween_2006.txt
index 8a89214ec..8b34ab824 100644
--- a/npc/events/halloween_2006.txt
+++ b/npc/events/halloween_2006.txt
@@ -735,7 +735,7 @@ nif_fild01,219,267,4 duplicate(HwChicken) Masta's chicken#06_hw03 4_NFCOCK
nif_fild01,199,240,5 duplicate(HwChicken) Masta's chicken#06_hw04 4_NFCOCK
nif_fild01,316,97,6 duplicate(HwChicken) Masta's chicken#06_hw05 4_NFCOCK
nif_fild01,147,343,7 duplicate(HwChicken) Masta's chicken#06_hw06 4_NFCOCK
-nif_fild01,185,325,8 duplicate(HwChicken) Masta's chicken#06_hw07 4_NFCOCK
+nif_fild01,185,325,0 duplicate(HwChicken) Masta's chicken#06_hw07 4_NFCOCK
nif_fild01,133,105,1 duplicate(HwChicken) Masta's chicken#06_hw08 4_NFCOCK
nif_fild01,331,329,2 duplicate(HwChicken) Masta's chicken#06_hw09 4_NFCOCK
diff --git a/npc/jobs/2-2/alchemist.txt b/npc/jobs/2-2/alchemist.txt
index c3d1f9479..3de0af508 100644
--- a/npc/jobs/2-2/alchemist.txt
+++ b/npc/jobs/2-2/alchemist.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Kisuka
//= Copyright (C) L0ne_W0lf
//= Copyright (C) Vicious
@@ -41,218 +41,239 @@
alde_alche,27,185,5 script Alchemist Guildsman#am 4_F_ALCHE,{
mes "[Parmy Gianino]";
if (Upper == 1) {
- mes "Welcome to the";
- mes "Alchemist Unio--";
- mes "I-Impossible! How c-can";
- mes "something like this happen?";
+ mes "Welcome to the\r"
+ "Alchemist Unio--";
+ mes "I-Impossible! How c-can\r"
+ "something like this happen?";
next;
mes "[Parmy Gianino]";
mes "Wait, wait...";
- mes "I'm sorry. I was confused,";
- mes "that's all. You look just like";
- mes "someone I used to know. ";
- mes "Still, I get this weird";
- mes "feeling about you...";
+ mes "I'm sorry. I was confused,\r"
+ "that's all. You look just like\r"
+ "someone I used to know.";
+ mes "Still, I get this weird\r"
+ "feeling about you...";
close;
}
if (BaseJob != Job_Merchant) {
if (BaseJob == Job_Alchemist) {
- mes "Welcome, " + strcharinfo(0) + ".";
- mes "The Alchemist Union";
- mes "is busy today, like always.";
+ mesf("Welcome, %s.", strcharinfo(0));
+ mes "The Alchemist Union\r"
+ "is busy today, like always.";
next;
mes "[Parmy Gianino]";
- mes "Everyone is busy with their";
- mes "own research, but recently, some headway has been made in the field of biotechnology.";
+ mes "Everyone is busy with their\r"
+ "own research, but recently, some headway has been made in the field of biotechnology.";
next;
mes "[Parmy Gianino]";
- mes "Everyone is hoping that the biotechnological studies will yield positive results. Speaking of which, I wonder how the Alchemists working on artificial life are doing...";
+ mes "Everyone is hoping that the biotechnological studies will yield positive results. "
+ "Speaking of which, I wonder how the Alchemists working on artificial life are "
+ "doing...";
close;
}
else if (BaseClass == Job_Novice) {
- mes "Welcome to the";
- mes "Alchemist Union.";
- mes "We are recruiting";
- mes "talented people";
- mes "with novel ideas.";
+ mes "Welcome to the\r"
+ "Alchemist Union.";
+ mes "We are recruiting\r"
+ "talented people\r"
+ "with novel ideas.";
next;
mes "[Parmy Gianino]";
- mes "If you're interested in working with chemistry, visit us later when you become more knowledgable.";
+ mes "If you're interested in working with chemistry, visit us later when you become more "
+ "knowledgable.";
next;
mes "[Parmy Gianino]";
- mes "Just one thing:";
- mes "You've got to have";
- mes "knowledge of items";
- mes "as a Merchant first.";
+ mes "Just one thing:\r"
+ "You've got to have\r"
+ "knowledge of items\r"
+ "as a Merchant first.";
close;
}
- mes "Welcome to the";
- mes "Alchemist Union.";
- mes "We are recruiting";
- mes "talented people";
- mes "with novel ideas.";
+ mes "Welcome to the\r"
+ "Alchemist Union.";
+ mes "We are recruiting\r"
+ "talented people\r"
+ "with novel ideas.";
next;
mes "[Parmy Gianino]";
- mes "If you know any exceptional Merchants, by all means, please refer them to us. Those types of people tend to have a talent for Alchemy and experimentation~";
+ mes "If you know any exceptional Merchants, by all means, please refer them to us. Those types of "
+ "people tend to have a talent for Alchemy and experimentation~";
close;
}
if (ALCH_Q == 0) {
- mes "Welcome to the";
- mes "Alchemist Union.";
+ mes "Welcome to the\r"
+ "Alchemist Union.";
mes "How may I help you?";
next;
- switch(select("I would like to learn about Alchemists.", "I want to become an Alchemist.", "Nothing.")) {
+ switch (select("I would like to learn about Alchemists.",
+ "I want to become an Alchemist.",
+ "Nothing.")) {
case 1:
mes "[Parmy Gianino]";
- mes "Alchemists study and create new substances and items out of existing materials. Our knowledge allows us to change the properties of chemicals at the atomic level.";
+ mes "Alchemists study and create new substances and items out of existing materials. Our "
+ "knowledge allows us to change the properties of chemicals at the atomic level.";
next;
mes "[Parmy Gianino]";
- mes "Most people think our final goal";
- mes "is to create gold, but that's not the entire truth. We also want to create things like medicines";
- mes "and new materials.";
+ mes "Most people think our final goal\r"
+ "is to create gold, but that's not the entire truth. We also want to create things "
+ "like medicines\r"
+ "and new materials.";
next;
mes "[Parmy Gianino]";
- mes "A few of us research the";
- mes "creation of life, although many of us consider that god's territory. That field is so complex, most of us deal with slightly less complicated projects anyway.";
+ mes "A few of us research the\r"
+ "creation of life, although many of us consider that god's territory. That field is so "
+ "complex, most of us deal with slightly less complicated projects anyway.";
next;
mes "[Parmy Gianino]";
- mes "If you are interested in becoming an Alchemist, I recommend that you first get a lot of experience as a Merchant. Being a Merchant is a great opportunity to learn about materials as you deal with them.";
+ mes "If you are interested in becoming an Alchemist, I recommend that you first get a lot of "
+ "experience as a Merchant. Being a Merchant is a great opportunity to learn about "
+ "materials as you deal with them.";
next;
mes "[Parmy Gianino]";
- mes "Whether or not you try to become";
- mes "an Alchemist is your decision. The road to becoming an Alchemist is very challenging, and you'll need to focus on experimentation and research, instead of commerce.";
+ mes "Whether or not you try to become an Alchemist is your decision. The road to becoming an "
+ "Alchemist is very challenging, and you'll need to focus on experimentation and "
+ "research, instead of commerce.";
close;
case 2:
mes "[Parmy Gianino]";
mes "Is that so?";
mes "Nice to meet you.";
- mes "My name is Parmy Gianino";
- mes "of the Alchemist Union.";
+ mes "My name is Parmy Gianino\r"
+ "of the Alchemist Union.";
next;
mes "[Parmy Gianino]";
- mes "If you join our Union and";
- mes "complete the training, you";
- mes "will be officially recognized";
- mes "as an Alchemist and be able";
- mes "to contribute to our research.";
+ mes "If you join our Union and\r"
+ "complete the training, you\r"
+ "will be officially recognized\r"
+ "as an Alchemist and be able\r"
+ "to contribute to our research.";
next;
mes "[Parmy Gianino]";
mes "But we don't accept everyone.";
- mes "You must have a lot of tenacity";
- mes "and sincere devotion in exploring";
- mes "the various fields of science.";
+ mes "You must have a lot of tenacity\r"
+ "and sincere devotion in exploring\r"
+ "the various fields of science.";
next;
mes "[Parmy Gianino]";
- mes "There are a couple";
- mes "of requirements to join";
- mes "the Alchemist Union, but";
- mes "we'll discuss that";
- mes "after you apply.";
+ mes "There are a couple\r"
+ "of requirements to join\r"
+ "the Alchemist Union, but\r"
+ "we'll discuss that\r"
+ "after you apply.";
next;
mes "[Parmy Gianino]";
- mes "Well then, would";
- mes "you like to apply";
- mes "for registration?";
+ mes "Well then, would\r"
+ "you like to apply\r"
+ "for registration?";
next;
if (select("I would like to apply.", "I'll do it later.") == 1) {
if (JobLevel < 40) {
mes "[Parmy Gianino]";
mes "Hmmm...";
mes "Just a moment.";
- mes "I'm sorry to say that";
- mes "you're not experienced";
- mes "enough as a Merchant to";
- mes "join us right now.";
+ mes "I'm sorry to say that\r"
+ "you're not experienced\r"
+ "enough as a Merchant to\r"
+ "join us right now.";
next;
mes "[Parmy Gianino]";
- mes "You must be at least";
- mes "^551A8BJob Level 40^000000 to become";
- mes "an Alchemist. Come back";
- mes "later when you meet the";
- mes "Job Level requirement, okay?";
+ mes "You must be at least\r"
+ "^551A8BJob Level 40^000000 to become\r"
+ "an Alchemist. Come back\r"
+ "later when you meet the\r"
+ "Job Level requirement, okay?";
close;
}
mes "[Parmy Gianino]";
- mes "Alright, your application has been accepted. Now, you must pay the 50,000 Zeny application fee and bring some items before you can begin your formal training.";
+ mes "Alright, your application has been accepted. Now, you must pay the 50,000 Zeny "
+ "application fee and bring some items before you can begin your formal "
+ "training.";
next;
mes "[Parmy Gianino]";
- mes "But if you bring an ^551A8BOld Magic Book^000000 and ^551A8BHammer of Blacksmith^000000,";
- mes "we will accept that as a substitute for the item requirement.";
+ mesf("But if you bring an ^551A8B%s^000000 and ^551A8B%s^000000,\r"
+ "we will accept that as a substitute for the item requirement.",
+ getitemname(Old_Magic_Book), getitemname(Hammer_Of_Blacksmith));
next;
mes "[Parmy Gianino]";
mes "Now...";
- mes "Please sign";
- mes "the application.";
+ mes "Please sign\r"
+ "the application.";
next;
select(strcharinfo(0));
mes "[Parmy Gianino]";
- mes "Good, good. Now, if you have";
- mes "the Zeny for your application fee ready, I will tell you which items you will need to bring. Now, pay attention.";
+ mes "Good, good. Now, if you have\r"
+ "the Zeny for your application fee ready, I will tell you which items you will "
+ "need to bring. Now, pay attention.";
next;
if (Zeny < 50000) {
mes "[Parmy Gianino]";
- mes "Uh oh. You don't";
- mes "seem to have enough Zeny.";
- mes "Come back to me when you have 50,000 Zeny, otherwise we can't process your application.";
+ mes "Uh oh. You don't\r"
+ "seem to have enough Zeny.\r"
+ "Come back to me when you have 50,000 Zeny, otherwise we can't process "
+ "your application.";
close;
}
Zeny -= 50000;
mes "[Parmy Gianino]";
mes "Let's see.";
- mes "" + strcharinfo(0);
- mes "needs to bring...";
+ mesf("%s\r"
+ "needs to bring...",
+ strcharinfo(0));
switch(rand(1,3)) {
case 1:
ALCH_Q = 1;
setquest 2028;
- mes "^551A8B7 Berserk Potions^000000.";
+ mesf("^551A8B7 %s^000000.", getitemname(Berserk_Potion));
break;
case 2:
ALCH_Q = 2;
setquest 2029;
- mes "^551A8B100 Mini Furnaces^000000.";
+ mesf("^551A8B100 %s^000000.", getitemname(Portable_Furnace));
break;
case 3:
ALCH_Q = 3;
setquest 2030;
- mes "^551A8B7,500 Fire Arrows^000000.";
+ mesf("^551A8B7,500 %s^000000.", getitemname(Fire_Arrow));
}
next;
mes "[Parmy Gianino]";
- mes "Once you've gathered";
- mes "those items, come back";
- mes "to me and your training";
- mes "as an Alchemist will begin.";
+ mes "Once you've gathered\r"
+ "those items, come back\r"
+ "to me and your training\r"
+ "as an Alchemist will begin.";
mes "See you soon~";
close;
}
mes "[Parmy Gianino]";
- mes "Talented Merchants";
- mes "are always welcome here.";
+ mes "Talented Merchants\r"
+ "are always welcome here.";
mes "Please come back soon.";
close;
case 3:
mes "[Parmy Gianino]";
mes "Umm...";
- mes "Please let me know";
- mes "if you need anything.";
+ mes "Please let me know\r"
+ "if you need anything.";
close;
}
}
else if (ALCH_Q >= 1 && ALCH_Q <= 3) {
if (countitem(Old_Magic_Book) > 0 && countitem(Hammer_Of_Blacksmith) > 0) {
mes "Well now~!";
- mes "You've brought an";
- mes "Old Magic Book and";
- mes "a Hammer of Blacksmith.";
- mes "We'll put these items";
- mes "to good use.";
+ mesf("You've brought an\r"
+ "%s and\r"
+ "a %s.",
+ getitemname(Old_Magic_Book),
+ getitemname(Hammer_Of_Blacksmith));
+ mes "We'll put these items\r"
+ "to good use.";
next;
delitem Old_Magic_Book,1;
delitem Hammer_Of_Blacksmith,1;
mes "[Parmy Gianino]";
- mes "Okay, now you need to learn";
- mes "the basics to being an Alchemist and learn the procedures for mixing chemicals and medicines.";
+ mes "Okay, now you need to learn\r"
+ "the basics to being an Alchemist and learn the procedures for mixing chemicals and "
+ "medicines.";
ALCH_Q = 4;
if (questprogress(2028)) {
changequest 2028,2031;
@@ -265,10 +286,12 @@ alde_alche,27,185,5 script Alchemist Guildsman#am 4_F_ALCHE,{
}
next;
mes "[Parmy Gianino]";
- mes "But before all of that, you need to speak to Raspuchin. I'm not really sure what you'll be talking about with him...";
+ mes "But before all of that, you need to speak to Raspuchin. I'm not really sure what you'll "
+ "be talking about with him...";
next;
mes "[Parmy Gianino]";
- mes "It shouldn't be anything extraordinary, but you're still required to speak to Raspuchin, since apparently he's a part of the Alchemist selection process.";
+ mes "It shouldn't be anything extraordinary, but you're still required to speak to Raspuchin, "
+ "since apparently he's a part of the Alchemist selection process.";
close;
}
switch(ALCH_Q) {
@@ -277,15 +300,16 @@ alde_alche,27,185,5 script Alchemist Guildsman#am 4_F_ALCHE,{
case 3: setarray .@items[0],1752,7500; break;
}
if (countitem(.@items[0]) >= .@items[1]) {
- mes "Seems like";
- mes "you're all ready.";
- mes "The Union will put";
- mes "these items to good use.";
+ mes "Seems like\r"
+ "you're all ready.";
+ mes "The Union will put\r"
+ "these items to good use.";
next;
delitem .@items[0],.@items[1];
mes "[Parmy Gianino]";
- mes "Okay, now you need to learn";
- mes "the basics to being an Alchemist and learn the procedures for mixing chemicals and medicines.";
+ mes "Okay, now you need to learn\r"
+ "the basics to being an Alchemist and learn the procedures for mixing chemicals and "
+ "medicines.";
ALCH_Q = 4;
if (questprogress(2028)) {
changequest 2028,2031;
@@ -298,45 +322,49 @@ alde_alche,27,185,5 script Alchemist Guildsman#am 4_F_ALCHE,{
}
next;
mes "[Parmy Gianino]";
- mes "But before all of that, you need to speak to Raspuchin. I'm not really sure what you'll be talking about with him...";
+ mes "But before all of that, you need to speak to Raspuchin. I'm not really sure what you'll "
+ "be talking about with him...";
next;
mes "[Parmy Gianino]";
- mes "It shouldn't be anything extraordinary, but you're still required to speak to Raspuchin, since apparently he's a part of the Alchemist selection process.";
+ mes "It shouldn't be anything extraordinary, but you're still required to speak to Raspuchin, "
+ "since apparently he's a part of the Alchemist selection process.";
close;
}
mes "Aren't you ready?";
- mes "Like I said before,";
- mes "you must bring";
- mes "^551A8B"+.@items[1]+" "+getitemname(.@items[0])+"s^000000.";
+ mesf("Like I said before,\r"
+ "you must bring\r"
+ "^551A8B%d %s^000000.",
+ .@items[1],
+ getitemname(.@items[0]));
next;
mes "[Parmy Gianino]";
- mes "Come back when you";
- mes "have prepared the";
- mes "required items.";
+ mes "Come back when you\r"
+ "have prepared the\r"
+ "required items.";
close;
}
else if (ALCH_Q == 4) {
- mes "Go and talk to";
- mes "Mr. Raspuchin.";
- mes "He's involved in the";
- mes "Alchemist selection process, whatever that might mean.";
+ mes "Go and talk to\r"
+ "Mr. Raspuchin.";
+ mes "He's involved in the\r"
+ "Alchemist selection process, whatever that might mean.";
next;
mes "[Parmy Gianino]";
- mes "Hopefully, it";
- mes "won't be too much of";
- mes "a problem. I guess he'll just interview you, and ask you";
- mes "some simple questions.";
+ mes "Hopefully, it\r"
+ "won't be too much of\r"
+ "a problem. I guess he'll just interview you, and ask you\r"
+ "some simple questions.";
close;
}
else {
- mes "Ah, I'm sorry, but";
- mes "I'm busy right now~";
+ mes "Ah, I'm sorry, but\r"
+ "I'm busy right now~";
next;
mes "[Parmy Gianino]";
- mes "Why don't you ask";
- mes "someone else if you're";
- mes "not sure who to visit";
- mes "next? Good luck~";
+ mes "Why don't you ask\r"
+ "someone else if you're\r"
+ "not sure who to visit\r"
+ "next? Good luck~";
close;
}
}
@@ -345,67 +373,68 @@ alde_alche,175,107,3 script Fastidious Alchemist#am 4_M_ALCHE_B,{
mes "[Raspuchin Gregory]";
if (BaseJob != Job_Merchant) {
if (BaseJob == Job_Alchemist) {
- mes "Heeheehee";
- mes "keheheh~!";
+ mes "Heeheehee\r"
+ "keheheh~!";
mes "Eh? What do you want?!";
next;
mes "[Raspuchin Gregory]";
- mes "You're not here to steal my experimental results or plagiarize my work, are you? How dare you consider intellectual theft!";
+ mes "You're not here to steal my experimental results or plagiarize my work, are you? How dare "
+ "you consider intellectual theft!";
next;
mes "[Raspuchin Gregory]";
mes "You're not, are you?";
- mes "Well, as a colleague,";
- mes "let me just warn you";
- mes "that such tricks aren't";
- mes "tolerated here in the";
- mes "Alchemist Union!";
+ mes "Well, as a colleague,\r"
+ "let me just warn you\r"
+ "that such tricks aren't\r"
+ "tolerated here in the\r"
+ "Alchemist Union!";
close;
}
else if (BaseClass == Job_Novice) {
- mes "Heeheehee";
- mes "keheheh~!";
- mes "How cute, you've come";
- mes "all this way just to play...";
+ mes "Heeheehee\r"
+ "keheheh~!";
+ mes "How cute, you've come\r"
+ "all this way just to play...";
next;
mes "[Raspuchin Gregory]";
- mes "I'll let you";
- mes "go this time...";
- mes "But next time, don't";
- mes "expect to leave so easily...";
+ mes "I'll let you\r"
+ "go this time...";
+ mes "But next time, don't\r"
+ "expect to leave so easily...";
close;
}
else {
mes "What is it?!";
- mes "You're curious as";
- mes "to what I'm doing?";
+ mes "You're curious as\r"
+ "to what I'm doing?";
next;
mes "[Raspuchin Gregory]";
- mes "Heehee";
- mes "keheheh~!";
- mes "Why, I'm busy";
- mes "researching,";
- mes "of course!";
+ mes "Heehee\r"
+ "keheheh~!";
+ mes "Why, I'm busy\r"
+ "researching,\r"
+ "of course!";
next;
mes "[Raspuchin Gregory]";
- mes "Once this";
- mes "potion is complete...";
- mes "You can use it to take";
- mes "over an entire nation!";
+ mes "Once this\r"
+ "potion is complete...";
+ mes "You can use it to take\r"
+ "over an entire nation!";
next;
mes "[Raspuchin Gregory]";
mes "Hee hee hee!";
- mes "Something this";
- mes "dangerous has to";
- mes "be kept a secret!";
+ mes "Something this\r"
+ "dangerous has to\r"
+ "be kept a secret!";
mes "Understand?";
close;
}
}
if (ALCH_Q == 0) {
- mes "Heeheehee";
- mes "keheheh~!";
- mes "What do you";
- mes "want, kid?";
+ mes "Heeheehee\r"
+ "keheheh~!";
+ mes "What do you\r"
+ "want, kid?";
next;
mes "[Raspuchin Gregory]";
mes "A Merchant should go and set up shop and vend items. Why are you wandering in a place like this?";
@@ -413,32 +442,32 @@ alde_alche,175,107,3 script Fastidious Alchemist#am 4_M_ALCHE_B,{
mes "[Raspuchin Gregory]";
mes "Heheheh~!";
mes "Go vend somwhere else!";
- mes "And leave me to my";
- mes "dark enterprise!";
+ mes "And leave me to my\r"
+ "dark enterprise!";
close;
- }
- else if (ALCH_Q >= 1 && ALCH_Q <= 3) {
- mes "Heeheehee";
- mes "keheheh~!";
- mes "What do you";
- mes "want, kid?";
+ } else if (ALCH_Q >= 1 && ALCH_Q <= 3) {
+ mes "Heeheehee\r"
+ "keheheh~!";
+ mes "What do you\r"
+ "want, kid?";
next;
mes "[Raspuchin Gregory]";
mes "What...?";
mes "Learn Alchemy?!";
- mes "Don't even speak";
- mes "such nonsense!";
+ mes "Don't even speak\r"
+ "such nonsense!";
next;
mes "[Raspuchin Gregory]";
- mes "Even if you tried studying for a thousand years, maybe even more, it'd be useless to you! Forget about it and just worry about your store!";
+ mes "Even if you tried studying for a thousand years, maybe even more, it'd be useless to you! Forget "
+ "about it and just worry about your store!";
close;
}
else if ((ALCH_Q == 4) || (ALCH_Q == 5)) {
if (ALCH_Q == 4) {
mes "Heeheehee";
mes "keheheh~!";
- mes "What do you";
- mes "want, kid?";
+ mes "What do you\r"
+ "want, kid?";
next;
mes "[Raspuchin Gregory]";
mes "What...?";
@@ -447,44 +476,48 @@ alde_alche,175,107,3 script Fastidious Alchemist#am 4_M_ALCHE_B,{
mes "I just don't...!";
next;
mes "[Raspuchin Gregory]";
- mes "Nowadays, anyone thinks they can";
- mes "be Alchemists just by knowing how to mix a few herbs. That's why my interview is necessary.";
+ mes "Nowadays, anyone thinks they can\r"
+ "be Alchemists just by knowing how to mix a few herbs. That's why my interview is "
+ "necessary.";
next;
mes "[Raspuchin Gregory]";
- mes "Heeheehee";
- mes "keheheh~!";
- mes "I plan on weeding out all the dumb and incompetent, and chase them";
- mes "all away! We don't need morons!";
+ mes "Heeheehee\r"
+ "keheheh~!";
+ mes "I plan on weeding out all the dumb and incompetent, and chase them\r"
+ "all away! We don't need morons!";
next;
if (JobLevel == 50) {
mes "[Raspuchin Gregory]";
mes "Wait...";
- mes "Maybe I've";
- mes "misjudged you.";
+ mes "Maybe I've\r"
+ "misjudged you.";
if (Sex == SEX_MALE) {
- mes "You might be a pretty boy,";
- mes "but I can tell you're smart";
- mes "from your eyes.";
+ mes "You might be a pretty boy,\r"
+ "but I can tell you're smart\r"
+ "from your eyes.";
}
else {
- mes "Huh. You're a cutie alright,";
- mes "but I can tell you've got brains.";
+ mes "Huh. You're a cutie alright,\r"
+ "but I can tell you've got brains.";
}
next;
mes "[Raspuchin Gregory]";
mes "You're not just some stupid kid.";
- mes "I can tell youve gone through some rough times as a Merchant. Excellent. Keh heh heh~";
+ mes "I can tell youve gone through some rough times as a Merchant. Excellent. Keh heh "
+ "heh~";
next;
mes "[Raspuchin Gregory]";
- mes "Fine, just so we don't insult each other's intelligence, I'll just let you pass the interview.";
+ mes "Fine, just so we don't insult each other's intelligence, I'll just let you pass "
+ "the interview.";
next;
mes "[Raspuchin Gregory]";
- mes "So hurry up, become an Alchemist, do some good research, and you might turn out to be of some help to me. Hahahahahaha~!";
+ mes "So hurry up, become an Alchemist, do some good research, and you might turn out "
+ "to be of some help to me. Hahahahahaha~!";
next;
mes "[Raspuchin Gregory]";
mes "Now go to Darwin!";
- mes "He'll teach you how to do the experiments. Just tell him that";
- mes "I sent you.";
+ mes "He'll teach you how to do the experiments. Just tell him that\r"
+ "I sent you.";
ALCH_Q = 6;
changequest 2031,2032;
close;
@@ -492,25 +525,25 @@ alde_alche,175,107,3 script Fastidious Alchemist#am 4_M_ALCHE_B,{
else {
mes "[Raspuchin Gregory]";
mes "Surprised, are you?";
- mes "Keheheh~ If you thought";
- mes "becoming an Alchemist was";
- mes "just a matter of changing";
- mes "your clothes, then you're";
- mes "sadly mistaken.";
+ mes "Keheheh~ If you thought\r"
+ "becoming an Alchemist was\r"
+ "just a matter of changing\r"
+ "your clothes, then you're\r"
+ "sadly mistaken.";
next;
mes "[Raspuchin Gregory]";
- mes "Now, try solving";
- mes "all these problems.";
- mes "Let's see how smart";
- mes "really are.";
+ mes "Now, try solving\r"
+ "all these problems.";
+ mes "Let's see how smart\r"
+ "really are.";
}
}
else if (ALCH_Q == 5) {
mes "What...?!";
- mes "You want to take";
- mes "the test again?!";
- mes "I thought I told";
- mes "you to leave!";
+ mes "You want to take\r"
+ "the test again?!";
+ mes "I thought I told\r"
+ "you to leave!";
next;
mes "[Raspuchin Gregory]";
mes "I don't like it...";
@@ -518,15 +551,15 @@ alde_alche,175,107,3 script Fastidious Alchemist#am 4_M_ALCHE_B,{
next;
mes "[Raspuchin Gregory]";
mes "Fine...";
- mes "I'll try to overlook your pitiful performance last time and give";
- mes "you another chance. Don't screw";
- mes "up again, got it?";
+ mes "I'll try to overlook your pitiful performance last time and give\r"
+ "you another chance. Don't screw\r"
+ "up again, got it?";
next;
mes "[Raspuchin Gregory]";
- mes "Now then,";
- mes "give me all the";
- mes "^551A8Bright^000000 answers";
- mes "this time.";
+ mes "Now then,\r"
+ "give me all the\r"
+ "^551A8Bright^000000 answers\r"
+ "this time.";
}
next;
switch(rand(1,3)) {
@@ -562,38 +595,52 @@ alde_alche,175,107,3 script Fastidious Alchemist#am 4_M_ALCHE_B,{
input .@input;
if (.@input != 742) .@w_point += 1;
mes "[Raspuchin Gregory]";
- mes "How much do";
- mes "12 Red Potions,";
- mes "1 Butterfly Wing";
- mes "and 5 Fly Wings cost";
- mes "after a 24 % discount?";
+ mesf("How much do\r"
+ "12 %s,\r"
+ "1 %s\r"
+ "and 5 %s cost\r"
+ "after a 24%% discount?",
+ getitemname(Red_Potion),
+ getitemname(Wing_Of_Butterfly),
+ getitemname(Wing_Of_Fly));
next;
input .@input;
if (.@input != 909) .@w_point += 1;
mes "[Raspuchin Gregory]";
- mes "What is the";
- mes "total weight of";
- mes "3 Scimiters, 2 Helms";
- mes "and 1 Long Coat?";
+ mesf("What is the\r"
+ "total weight of\r"
+ "3 %s, 2 %s\r"
+ "and 1 %s?",
+ getitemname(Scimiter),
+ getitemname(Helm),
+ getitemname(Coat));
next;
input .@input;
if (.@input != 450) .@w_point += 1;
mes "[Raspuchin Gregory]";
- mes "What is the";
- mes "total defense of";
- mes "a Biretta, Mantle,";
- mes "Opera Mask, Ribbon,";
- mes "Muffler, Boots, and";
- mes "Ear Muffs?";
+ mesf("What is the\r"
+ "total defense of\r"
+ "a %s, %s,\r"
+ "%s, %s,\r"
+ "%s, %s, and\r"
+ "%s?",
+ getitemname(Biretta),
+ getitemname(Mantle),
+ getitemname(Phantom_Of_Opera),
+ getitemname(Ribbon),
+ getitemname(Muffler),
+ getitemname(Boots),
+ getitemname(Ear_Mufs));
next;
input .@input;
if (.@input != 20) .@w_point += 1;
mes "[Raspuchin Gregory]";
- mes "If you buy 5 Helms";
- mes "with a 24 % discount";
- mes "and sell it at 20";
- mes "how much profit";
- mes "do you earn?";
+ mesf("If you buy 5 %s\r"
+ "with a 24%% discount\r"
+ "and sell it at 20\r"
+ "how much profit\r"
+ "do you earn?",
+ getitemname(Helm));
next;
input .@input;
if (.@input != 8800) .@w_point += 1;
@@ -635,39 +682,53 @@ alde_alche,175,107,3 script Fastidious Alchemist#am 4_M_ALCHE_B,{
input .@input;
if (.@input != 742) .@w_point += 1;
mes "[Raspuchin Gregory]";
- mes "What is the";
- mes "total price of";
- mes "15 Green Potions,";
- mes "6 Magnifiers and";
- mes "4 Traps after";
- mes "a 24 % discount?";
+ mesf("What is the\r"
+ "total price of\r"
+ "15 %s,\r"
+ "6 %s and\r"
+ "4 %s after\r"
+ "a 24%% discount?",
+ getitemname(Green_Potion),
+ getitemname(Spectacles),
+ getitemname(Booby_Trap));
next;
input .@input;
if (.@input != 934) .@w_point += 1;
mes "[Raspuchin Gregory]";
- mes "What is the";
- mes "total weight of";
- mes "3 Ring Pommel Sabers,";
- mes "4 Caps, and 2 Boots?";
+ mesf("What is the\r"
+ "total weight of\r"
+ "3 %s,\r"
+ "4 %s, and 2 %s?",
+ getitemname(Ring_Pommel_Saber),
+ getitemname(Cap),
+ getitemname(Boots));
next;
input .@input;
if (.@input != 550) .@w_point += 1;
mes "[Raspuchin Gregory]";
- mes "What is the";
- mes "total defense of";
- mes "a Buckler, Long Coat,";
- mes "Gas Mask, Big Ribbon,";
- mes "Cute Ribbon, Sakkat,";
- mes "and Glasses?";
+ mesf("What is the\r"
+ "total defense of\r"
+ "a %s, %s,\r"
+ "%s, %s.\r"
+ "%s, %s,\r"
+ "and %s?",
+ getitemname(Buckler),
+ getitemname(Coat),
+ getitemname(Gas_Mask),
+ getitemname(Big_Sis'_Ribbon),
+ getitemname(Fillet),
+ getitemname(Sahkkat),
+ getitemname(Glasses));
next;
input .@input;
if (.@input != 16) .@w_point += 1;
mes "[Raspuchin Gregory]";
- mes "How much profit do you";
- mes "make if you buy Tights";
- mes "at a 24 % discount and";
- mes "sell it at 20 % of";
- mes "the normal price?";
+ mesf("How much profit do you\r"
+ "make if you buy %s\r"
+ "at a 24%% discount and\r"
+ "sell it at 20%% of\r"
+ "the normal price?",
+ getitemname(Tights));
next;
input .@input;
if (.@input != 8520) .@w_point += 1;
@@ -704,36 +765,50 @@ alde_alche,175,107,3 script Fastidious Alchemist#am 4_M_ALCHE_B,{
input .@input;
if (.@input != 742) .@w_point += 1;
mes "[Raspuchin Gregory]";
- mes "What is the";
- mes "total cost of";
- mes "6 Red Potions,";
- mes "7 Green Potions,";
- mes "and 8 Fly Wings";
- mes "after a 24 % discount?";
+ mesf("What is the\r"
+ "total cost of\r"
+ "6 %s,\r"
+ "7 %s,\r"
+ "and 8 %s\r"
+ "after a 24%% discount?",
+ getitemname(Red_Potion),
+ getitemname(Green_Potion),
+ getitemname(Wing_Of_Fly));
next;
input .@input;
if (.@input != 798) .@w_point += 1;
mes "[Raspuchin Gregory]";
- mes "What is the";
- mes "total weight of";
- mes "2 Ring Pommel Sabers,";
- mes "3 Caps, and 3 boots?";
+ mesf("What is the\r"
+ "total weight of\r"
+ "2 %s,\r"
+ "3 %s, and 3 %s?",
+ getitemname(Ring_Pommel_Saber),
+ getitemname(Cap),
+ getitemname(Boots));
next;
input .@input;
if (.@input != 480) .@w_point += 1;
mes "[Raspuchin Gregory]";
- mes "What is the";
- mes "total defense of";
- mes "a Mirror Shield, Mr. Smile, Leather Jacket, Silk Robe, Wedding Veil, Muffler, and Eye Patch?";
+ mesf("What is the\r"
+ "total defense of\r"
+ "a %s, %s, %s, %s, %s, %s, and %s?",
+ getitemname(Mirror_Shield),
+ getitemname(Mr_Smile),
+ getitemname(Leather_Jacket),
+ getitemname(Silk_Robe),
+ getitemname(Wedding_Veil),
+ getitemname(Muffler),
+ getitemname(Eye_Bandage));
next;
input .@input;
if (.@input != 12) .@w_point += 1;
mes "[Raspuchin Gregory]";
- mes "If you buy 4 Padded Armors";
- mes "at a 24% discount and sell";
- mes "them at 20% of the original";
- mes "price, how much profit would";
- mes "you make from this sale?";
+ mesf("If you buy 4 Padded Armors\r"
+ "at a 24%% discount and sell\r"
+ "them at 20%% of the original\r"
+ "price, how much profit would\r"
+ "you make from this sale?",
+ getitemname(Padded_Armor));
next;
input .@input;
if (.@input != 7680) .@w_point += 1;
@@ -755,44 +830,45 @@ alde_alche,175,107,3 script Fastidious Alchemist#am 4_M_ALCHE_B,{
}
else if (.@w_point == 2 && ALCH_Q == 5) {
mes "[Raspuchin Gregory]";
- mes "You've got serious";
- mes "weaknesses in math,";
- mes "but I'll let you go this time...";
+ mes "You've got serious\r"
+ "weaknesses in math,\r"
+ "but I'll let you go this time...";
next;
}
else {
ALCH_Q = 5;
mes "[Raspuchin Gregory]";
mes "Keheheh! Idiot!";
- mes "Just listening to your";
- mes "answers is making me feel";
- mes "stupider! You might as well";
- mes "have got them all wrong!";
+ mes "Just listening to your\r"
+ "answers is making me feel\r"
+ "stupider! You might as well\r"
+ "have got them all wrong!";
next;
mes "[Raspuchin Gregory]";
- mes "How can a person that";
- mes "can't even answer all of";
- mes "these simple questions think";
- mes "of becoming an Alchemist?!";
+ mes "How can a person that\r"
+ "can't even answer all of\r"
+ "these simple questions think\r"
+ "of becoming an Alchemist?!";
next;
mes "[Raspuchin Gregory]";
mes "Hm...?";
- mes "Did you get";
- mes "any right?";
+ mes "Did you get\r"
+ "any right?";
next;
mes "[Raspuchin Gregory]";
- mes "Fool! Even if you make one little mistake, everything goes wrong";
- mes "in Alchemy! Now get out of here!";
+ mes "Fool! Even if you make one little mistake, everything goes wrong\r"
+ "in Alchemy! Now get out of here!";
mes "You make me sick!";
close;
}
mes "[Raspuchin Gregory]";
- mes "So hurry up, become an Alchemist, do some good research, and you might turn out to be of some help to me. Hahahahahaha~!";
+ mes "So hurry up, become an Alchemist, do some good research, and you might turn out to be of some "
+ "help to me. Hahahahahaha~!";
next;
mes "[Raspuchin Gregory]";
mes "Now go to Darwin!";
- mes "He'll teach you how to do the experiments. Just tell him that";
- mes "I sent you.";
+ mes "He'll teach you how to do the experiments. Just tell him that\r"
+ "I sent you.";
ALCH_Q = 6;
changequest 2031,2032;
close;
@@ -825,16 +901,16 @@ alde_alche,13,15,7 script Studying Man#am 4_M_ALCHE_C,{
if (BaseJob == Job_Alchemist) {
mes "Ah...";
mes "You...";
- mes "You've become";
- mes "an Alchemist.";
+ mes "You've become\r"
+ "an Alchemist.";
next;
mes "[Darwin]";
mes "Remember...";
- mes "In your quest";
- mes "to make your";
- mes "dreams come true,";
- mes "do not lose what";
- mes "you cherish.";
+ mes "In your quest\r"
+ "to make your\r"
+ "dreams come true,\r"
+ "do not lose what\r"
+ "you cherish.";
next;
mes "[Darwin]";
mes "Ah...";
@@ -843,23 +919,23 @@ alde_alche,13,15,7 script Studying Man#am 4_M_ALCHE_C,{
close;
}
else {
- mes "When you have";
- mes "your dreams, you";
- mes "have everything.";
- mes "Without them, you have";
- mes "nothing more to lose.";
+ mes "When you have\r"
+ "your dreams, you\r"
+ "have everything.";
+ mes "Without them, you have\r"
+ "nothing more to lose.";
next;
mes "[Darwin]";
mes "These cursed eyes...";
- mes "They've lost sight of";
- mes "my dreams a long time ago.";
+ mes "They've lost sight of\r"
+ "my dreams a long time ago.";
mes "Ha ha ha ha...";
next;
mes "[Darwin]";
- mes "Does paradise";
- mes "really exist...?";
- mes "Not without my love...";
- mes "Not without Harmona...";
+ mes "Does paradise\r"
+ "really exist...?";
+ mes "Not without my love...\r"
+ "Not without Harmona...";
close;
}
}
@@ -875,99 +951,99 @@ alde_alche,13,15,7 script Studying Man#am 4_M_ALCHE_C,{
mes "......";
mes "Who is it...?";
next;
- monster "alde_alche",13,15,"Wolf",1013,1;
+ monster("alde_alche", 13, 15, getmonsterinfo(WOLF, MOB_NAME), WOLF, 1);
killmonsterall "alde_alche";
mes "[Darwin]";
mes "A wolf?";
mes "Or a human?";
- mes "You must be seeking";
- mes "something, are you not?";
+ mes "You must be seeking\r"
+ "something, are you not?";
next;
mes "[Darwin]";
mes "After all...";
- mes "Everyone has desires";
- mes "to fulfill. Be be careful.";
- mes "Do not be like the wild";
- mes "wolf drawn to the flowers.";
+ mes "Everyone has desires\r"
+ "to fulfill. Be be careful.";
+ mes "Do not be like the wild\r"
+ "wolf drawn to the flowers.";
next;
mes "[Darwin]";
mes "In your efforts to gain something else, you may end up sacrificing something precious to you.";
next;
mes "[Darwin]";
- mes "Cultivating joy and happiness";
- mes "is much like cultivating flowers.";
- mes "If something is missing, the";
- mes "flower will wilt away...";
+ mes "Cultivating joy and happiness\r"
+ "is much like cultivating flowers.";
+ mes "If something is missing, the\r"
+ "flower will wilt away...";
next;
mes "[Darwin]";
- mes "What brings you";
- mes "to this kind of place?";
+ mes "What brings you\r"
+ "to this kind of place?";
next;
- switch(select("I want to learn how to experiment.", "Tell me more about flowers.", "Nothing.")) {
+ switch (select("I want to learn how to experiment.", "Tell me more about flowers.", "Nothing.")) {
case 1:
mes "[Darwin]";
- mes "You wish to";
- mes "learn Alchemy?";
- mes "Everything I know,";
- mes "I've learned for the";
- mes "sake of making my";
- mes "dream come true...";
+ mes "You wish to\r"
+ "learn Alchemy?";
+ mes "Everything I know,\r"
+ "I've learned for the\r"
+ "sake of making my\r"
+ "dream come true...";
next;
mes "[Darwin]";
- mes "I'll teach";
- mes "you the basics...";
- mes "But everything you";
- mes "learn afterwards must";
- mes "be directed through";
- mes "your own motivations.";
+ mes "I'll teach\r"
+ "you the basics...";
+ mes "But everything you\r"
+ "learn afterwards must\r"
+ "be directed through\r"
+ "your own motivations.";
next;
mes "[Darwin]";
- mes "I will teach you";
- mes "how to make simple";
- mes "medicine. So please";
- mes "bring the following";
- mes "materials right away.";
+ mes "I will teach you\r"
+ "how to make simple\r"
+ "medicine. So please\r"
+ "bring the following\r"
+ "materials right away.";
next;
mes "[Darwin]";
- mes "^551A8B3 Medicine Bowls^000000,";
- mes "^551A8B3 Empty Bottles^000000,";
- mes "^551A8B1 Red Herb^000000,";
- mes "^551A8B1 Yellow Herb^000000 and";
- mes "^551A8B1 White Herb^000000.";
+ mesf("^551A8B3 %s^000000,", getitemname(Medicine_Bowl));
+ mesf("^551A8B3 %s^000000,", getitemname(Empty_Bottle));
+ mesf("^551A8B1 %s^000000,", getitemname(Red_Herb));
+ mesf("^551A8B1 %s^000000 and", getitemname(Yellow_Herb));
+ mesf("^551A8B1 %s^000000.", getitemname(White_Herb));
ALCH_Q = 7;
changequest 2032,2033;
next;
mes "[Darwin]";
- mes "Once you have";
- mes "prepared everything,";
- mes "return to me.";
+ mes "Once you have\r"
+ "prepared everything,\r"
+ "return to me.";
close;
case 2:
mes "[Darwin]";
mes "Flowers...?";
- mes "In the darkest";
- mes "recesses of my mind,";
- mes "there is a blossum";
- mes "that I faintly remember...";
+ mes "In the darkest\r"
+ "recesses of my mind,\r"
+ "there is a blossum\r"
+ "that I faintly remember...";
next;
mes "[Darwin]";
- mes "For the one that";
- mes "I love, I put all";
- mes "of my efforts into";
- mes "researching that one thing.";
+ mes "For the one that\r"
+ "I love, I put all\r"
+ "of my efforts into\r"
+ "researching that one thing.";
next;
mes "[Darwin]";
- mes "I won't tell you the details,";
- mes "but I was basically researching";
- mes "the relationship between";
- mes "wolves and flowers.";
+ mes "I won't tell you the details,\r"
+ "but I was basically researching\r"
+ "the relationship between\r"
+ "wolves and flowers.";
next;
mes "[Darwin]";
mes "But yes...";
mes "It was a flower.";
- mes "With its shine, it was said";
- mes "to let you see paradise.";
- mes "The ^551A8BIllusion Flower^000000...";
+ mes "With its shine, it was said\r"
+ "to let you see paradise.";
+ mesf("The ^551A8B%s^000000...", getitemname(Illusion_Flower));
next;
mes "[Darwin]";
mes "I even made";
@@ -1006,54 +1082,55 @@ alde_alche,13,15,7 script Studying Man#am 4_M_ALCHE_C,{
next;
mes "[Darwin]";
mes "Ah...";
- mes "You are the one who";
- mes "wishes to learn Alchemy.";
+ mes "You are the one who\r"
+ "wishes to learn Alchemy.";
mes "Have you prepared everything?";
next;
if (countitem(Illusion_Flower) > 0) {
mes "[Darwin]";
mes "Wait.";
- mes "That Illusion Flower.";
+ mesf("That %s.", getitemname(Illusion_Flower));
mes "How did you get that?";
next;
mes "[Darwin]";
mes "Where did you find it?!";
- mes "The flower that slowly";
- mes "blooms under the";
- mes "moonlight?";
+ mes "The flower that slowly\r"
+ "blooms under the\r"
+ "moonlight?";
mes "It's beautiful...!";
next;
mes "[Darwin]";
mes "Th-That flower...";
mes "Please let me see it.";
- mes "The Illusion Flower!";
+ mesf("The %s!", getitemname(Illusion_Flower));
mes "Uwaaaaaaah!!";
next;
mes "[Darwin]";
- mes "Would you be so kind";
- mes "as to let me have this flower?";
+ mes "Would you be so kind\r"
+ "as to let me have this flower?";
mes "I'm sure that this is the Moonlight Flower that I've been seeking!";
next;
if (select("Sorry, I can't give it to you.", "I brought it to give to you.") == 1) {
mes "[Darwin]";
mes "I understand.";
- mes "You can't give";
- mes "such a precious";
- mes "flower to just anyone.";
+ mes "You can't give\r"
+ "such a precious\r"
+ "flower to just anyone.";
mes "Well... It's okay.";
next;
mes "[Darwin]";
- mes "It just brought back old memories. I shouldn't have asked in the first place. In any case, please bring what is needed for the experiment.";
+ mes "It just brought back old memories. I shouldn't have asked in the first place. In "
+ "any case, please bring what is needed for the experiment.";
next;
mes "[Darwin]";
- mes "Please leave that flower";
- mes "somewhere else. It brings";
- mes "back too many memories...";
+ mes "Please leave that flower\r"
+ "somewhere else. It brings\r"
+ "back too many memories...";
close;
}
mes "[Darwin]";
- mes "Are you";
- mes "serious?!";
+ mes "Are you\r"
+ "serious?!";
mes "Thank you!";
mes "Such a precious flower.";
mes "Ah, Harmona, my love...";
@@ -1064,72 +1141,76 @@ alde_alche,13,15,7 script Studying Man#am 4_M_ALCHE_C,{
mes "I shall plant all of my knowledge of Alchemy directly into your mind...";
next;
mes "[Darwin]";
- mes "Open your eyes wide,";
- mes "and look into my eyes!!";
+ mes "Open your eyes wide,\r"
+ "and look into my eyes!!";
mes "Don't stop until the end!!";
next;
mes "Lorem ipsum dolor sit amet,";
next;
- mes "Lorem ipsum dolor sit amet,";
- mes "consectetuer adipiscing elit.";
+ mes "Lorem ipsum dolor sit amet,\r"
+ "consectetuer adipiscing elit.";
next;
- mes "Lorem ipsum dolor sit amet,";
- mes "consectetuer adipiscing elit.";
+ mes "Lorem ipsum dolor sit amet,\r"
+ "consectetuer adipiscing elit.";
mes "Aenean fermentum ullamcorper.";
next;
- mes "Lorem ipsum dolor sit amet,";
- mes "consectetuer adipiscing elit.";
+ mes "Lorem ipsum dolor sit amet,\r"
+ "consectetuer adipiscing elit.";
mes "Aenean fermentum ullamcorper.";
mes "Vestibulum ante ipsum primis in";
next;
- mes "Lorem ipsum dolor sit amet,";
- mes "consectetuer adipiscing elit.";
+ mes "Lorem ipsum dolor sit amet,\r"
+ "consectetuer adipiscing elit.";
mes "Aenean fermentum ullamcorper.";
- mes "Vestibulum ante ipsum primis in";
- mes "faucibus orci luctus et ultrices";
+ mes "Vestibulum ante ipsum primis in\r"
+ "faucibus orci luctus et ultrices";
next;
- mes "Lorem ipsum dolor sit amet,";
- mes "consectetuer adipiscing elit.";
+ mes "Lorem ipsum dolor sit amet,\r"
+ "consectetuer adipiscing elit.";
mes "Aenean fermentum ullamcorper.";
- mes "Vestibulum ante ipsum primis in";
- mes "faucibus orci luctus et ultrices";
- mes "posuere cubilia Curae; Morbi";
+ mes "Vestibulum ante ipsum primis in\r"
+ "faucibus orci luctus et ultrices\r"
+ "posuere cubilia Curae; Morbi";
next;
- mes "Lorem ipsum dolor sit amet,";
- mes "consectetuer adipiscing elit.";
+ mes "Lorem ipsum dolor sit amet,\r"
+ "consectetuer adipiscing elit.";
mes "Aenean fermentum ullamcorper.";
- mes "Vestibulum ante ipsum primis in";
- mes "faucibus orci luctus et ultrices";
- mes "posuere cubilia Curae; Morbi";
- mes "massa, fermentum vitae...";
+ mes "Vestibulum ante ipsum primis in\r"
+ "faucibus orci luctus et ultrices\r"
+ "posuere cubilia Curae; Morbi\r"
+ "massa, fermentum vitae...";
next;
delitem Illusion_Flower,1;
mes "[Darwin]";
mes "^666666*Gasp...*^000000";
- mes "You are now";
- mes "an Alchemist!!";
- mes "Go to the Union";
- mes "and cast away the last";
- mes "vestiges of Merchant life!!";
+ mes "You are now\r"
+ "an Alchemist!!";
+ mes "Go to the Union\r"
+ "and cast away the last\r"
+ "vestiges of Merchant life!!";
ALCH_Q = 40;
changequest 2033,2034;
close;
}
else if (countitem(Medicine_Bowl) > 2 && countitem(Empty_Bottle) > 2 && countitem(Red_Herb) > 0 && countitem(Yellow_Herb) > 0 && countitem(White_Herb) > 0) {
mes "[Darwin]";
- mes "Seems like you have everything ready. As promised, I will teach you how to make simple medicine.";
+ mes "Seems like you have everything ready. As promised, I will teach you how to make simple "
+ "medicine.";
next;
mes "[Darwin]";
- mes "First, prepare the Medicine Bowl. Then, you put the Herbs inside, like this, and slowly crush them.";
+ mesf("First, prepare the %s. Then, you put the Herbs inside, like this, and slowly "
+ "crush them.",
+ getitemname(Medicine_Bowl));
next;
mes "[Darwin]";
- mes "Pour small amounts";
- mes "of clean water and stir";
- mes "the mixture until it thickens.";
+ mes "Pour small amounts\r"
+ "of clean water and stir\r"
+ "the mixture until it thickens.";
mes "Afterwards, add some more Herbs.";
next;
mes "[Darwin]";
- mes "That's how you make it. If you think you have enough, gently pour the mixture into an empty bottle.";
+ mes "That's how you make it. If you think you have enough, gently pour the mixture into an "
+ "empty bottle.";
delitem Medicine_Bowl,3;
delitem Empty_Bottle,3;
delitem Red_Herb,1;
@@ -1137,14 +1218,16 @@ alde_alche,13,15,7 script Studying Man#am 4_M_ALCHE_C,{
delitem White_Herb,1;
next;
mes "[Darwin]";
- mes "There you go,";
- mes "it's complete.";
- mes "Now, make some medicine";
- mes "using the simple procedure";
- mes "I just explained to you.";
+ mes "There you go,\r"
+ "it's complete.";
+ mes "Now, make some medicine\r"
+ "using the simple procedure\r"
+ "I just explained to you.";
.@w_point = 0;
next;
- switch(select("Prepare the Medicine Bowl.", "Put the Medicine Bowl on your head.", "Kick the Medicine Bowl.")) {
+ switch (select(sprintf(_$("Prepare the %s."), getitemname(Medicine_Bowl)),
+ sprintf(_$("Put the %s on your head."), getitemname(Medicine_Bowl)),
+ sprintf(_$("Kick the %s."), getitemname(Medicine_Bowl)))) {
case 1:
break;
case 2:
@@ -1160,13 +1243,15 @@ alde_alche,13,15,7 script Studying Man#am 4_M_ALCHE_C,{
next;
break;
}
- switch(select("Put some dirt in the Medicine Bowl.", "Put some Herbs in the Medicine Bowl.", "Put a Harp in the Medicine Bowl.")) {
+ switch (select(sprintf(_$("Put some dirt in the %s."), getitemname(Medicine_Bowl)),
+ sprintf(_$("Put some Herbs in the %s."), getitemname(Medicine_Bowl)),
+ sprintf(_$("Put a Harp in the %s."), getitemname(Medicine_Bowl)))) {
case 1:
++.@w_point;
mes "[Darwin]";
mes "...Eh!?";
- mes "That's not";
- mes "medicine!";
+ mes "That's not\r"
+ "medicine!";
next;
break;
case 2:
@@ -1175,32 +1260,36 @@ alde_alche,13,15,7 script Studying Man#am 4_M_ALCHE_C,{
++.@w_point;
mes "[Darwin]";
mes "A Harp?";
- mes "And how would";
- mes "you do that?";
+ mes "And how would\r"
+ "you do that?";
next;
break;
}
- switch(select("Crush the Herbs.", "Crush the Medicine Bowl.", "Crush Darwin's foot.")) {
+ switch (select("Crush the Herbs.",
+ sprintf(_$("Crush the %s."), getitemname(Medicine_Bowl)),
+ "Crush Darwin's foot.")) {
case 1:
break;
case 2:
++.@w_point;
mes "[Darwin]";
- mes "Wh-What are";
- mes "you doing!?";
+ mes "Wh-What are\r"
+ "you doing!?";
next;
break;
case 3:
++.@w_point;
mes "[Darwin]";
mes "Agh...!";
- mes "What do you";
- mes "think you're";
- mes "doing?!";
+ mes "What do you\r"
+ "think you're\r"
+ "doing?!";
next;
break;
}
- switch(select("Spray clean water.", "Drink clean water.", "Pour clean water.")) {
+ switch (select("Spray clean water.",
+ "Drink clean water.",
+ "Pour clean water.")) {
case 1:
++.@w_point;
mes "[Darwin]";
@@ -1212,41 +1301,45 @@ alde_alche,13,15,7 script Studying Man#am 4_M_ALCHE_C,{
++.@w_point;
mes "[Darwin]";
mes "W-wait...";
- mes "Are you";
- mes "taking a break?";
+ mes "Are you\r"
+ "taking a break?";
next;
break;
case 3:
break;
}
- switch(select("Continue crushing the Herbs.", "Continue eating the Herbs.", "Continue dancing and singing.")) {
+ switch (select("Continue crushing the Herbs.",
+ "Continue eating the Herbs.",
+ "Continue dancing and singing.")) {
case 1:
break;
case 2:
++.@w_point;
mes "[Darwin]";
mes "Eat the Herbs?";
- mes "I think you need";
- mes "to focus on the";
- mes "task at hand...";
+ mes "I think you need\r"
+ "to focus on the\r"
+ "task at hand...";
next;
break;
case 3:
++.@w_point;
mes "[Darwin]";
- mes "Singing and";
- mes "dancing? Alchemists";
- mes "don't do that, have";
- mes "you gone crazy?";
+ mes "Singing and\r"
+ "dancing? Alchemists\r"
+ "don't do that, have\r"
+ "you gone crazy?";
next;
break;
}
- switch(select("Put noodles in and fry it.", "Pour it in an empty bottle.", "Hold the Medicine Bowl and drink it.")) {
+ switch (select("Put noodles in and fry it.",
+ "Pour it in an empty bottle.",
+ sprintf(_$("Hold the %s and drink it."), getitemname(Medicine_Bowl)))) {
case 1:
++.@w_point;
mes "[Darwin]";
- mes "We're Alchemists,";
- mes "not restaurant chefs.";
+ mes "We're Alchemists,\r"
+ "not restaurant chefs.";
next;
break;
case 2:
@@ -1265,9 +1358,9 @@ alde_alche,13,15,7 script Studying Man#am 4_M_ALCHE_C,{
mes "......";
next;
mes "[Darwin]";
- mes "You messed up the mixture";
- mes "since you didn't follow the procedure! Get some more ingredients so you can try it";
- mes "again until you get it right.";
+ mes "You messed up the mixture\r"
+ "since you didn't follow the procedure! Get some more ingredients so you can "
+ "try it again until you get it right.";
close;
}
getitem Red_Potion,1;
@@ -1275,81 +1368,82 @@ alde_alche,13,15,7 script Studying Man#am 4_M_ALCHE_C,{
getitem White_Potion,1;
mes "[Darwin]";
mes "Good job.";
- mes "It came out pretty well considering it's your first time. Go ahead and keep the medicines that you've just made.";
+ mes "It came out pretty well considering it's your first time. Go ahead and keep the medicines "
+ "that you've just made.";
ALCH_Q = 8;
changequest 2033,2035;
next;
mes "[Darwin]";
- mes "Now, go into the next room";
- mes "and speak to Van Helmont to";
- mes "continue your training.";
+ mes "Now, go into the next room\r"
+ "and speak to Van Helmont to\r"
+ "continue your training.";
next;
mes "[Darwin]";
mes "Never forget...";
- mes "You must always protect";
- mes "what is most precious to you.";
+ mes "You must always protect\r"
+ "what is most precious to you.";
close;
}
else {
mes "[Darwin]";
- mes "Have you forgotten";
- mes "what you need to bring?";
- mes "Let me remind you once";
- mes "again. You must come";
- mes "back with...";
+ mes "Have you forgotten\r"
+ "what you need to bring?";
+ mes "Let me remind you once\r"
+ "again. You must come\r"
+ "back with...";
next;
mes "[Darwin]";
- mes "^551A8B3 Medicine Bowls^000000,";
- mes "^551A8B3 Empty Bottle^000000,";
- mes "^551A8B1 Red Herb^000000,";
- mes "^551A8B1 Yellow Herb^000000 and";
- mes "^551A8B1 White Herb^000000.";
+ mesf("^551A8B3 %s^000000,", getitemname(Medicine_Bowl));
+ mesf("^551A8B3 %s^000000,", getitemname(Empty_Bottle));
+ mesf("^551A8B1 %s^000000,", getitemname(Red_Herb));
+ mesf("^551A8B1 %s^000000 and", getitemname(Yellow_Herb));
+ mesf("^551A8B1 %s^000000.", getitemname(White_Herb));
next;
mes "[Darwin]";
- mes "Come back";
- mes "when you are";
- mes "ready...";
+ mes "Come back\r"
+ "when you are\r"
+ "ready...";
close;
}
}
else if (ALCH_Q == 8) {
- mes "I said to go";
- mes "to Van Helmont.";
- mes "I'd like to teach you";
- mes "more, but I can't.";
+ mes "I said to go\r"
+ "to Van Helmont.";
+ mes "I'd like to teach you\r"
+ "more, but I can't.";
next;
mes "[Darwin]";
mes "Aah...";
mes "Harmona, my love.";
- mes "I can't even see the flower anymore. My soul quietly";
- mes "withers as well..";
+ mes "I can't even see the flower anymore. My soul quietly\r"
+ "withers as well..";
close;
}
else if (ALCH_Q == 40) {
- mes "I have already given you all of my knowledge and have nothing more";
- mes "to teach you.";
+ mes "I have already given you all of my knowledge and have nothing more\r"
+ "to teach you.";
next;
mes "[Darwin]";
- mes "Go to the second floor and talk to speak to our Union Leader. Once";
- mes "you do that, your life as an Alchemist will begin.";
+ mes "Go to the second floor and talk to speak to our Union Leader. Once\r"
+ "you do that, your life as an Alchemist will begin.";
close;
}
else {
mes "When you have";
- mes "your dreams, you";
- mes "have everything.";
- mes "Without them, you have";
- mes "nothing more to lose.";
+ mes "your dreams, you\r"
+ "have everything.";
+ mes "Without them, you have\r"
+ "nothing more to lose.";
next;
mes "[Darwin]";
mes "These cursed eyes...";
- mes "They've lost sight of";
- mes "my dreams a long time ago.";
+ mes "They've lost sight of\r"
+ "my dreams a long time ago.";
mes "Ha ha ha ha...";
next;
mes "[Darwin]";
- mes "Does paradise";
- mes "really exist...?";
+ mes "Does paradise\r"
+ "really exist...?";
mes "Not without my love...";
mes "Not without Harmona...";
close;
@@ -1361,51 +1455,54 @@ alde_alche,79,19,5 script Experiment Expert#am 4_M_ALCHE_A,{
if (BaseJob != Job_Merchant) {
if (BaseJob == Job_Alchemist) {
mes "What do you want?";
- mes "I'm busy!! Don't";
- mes "bother me and get";
- mes "on your way.";
+ mes "I'm busy!! Don't\r"
+ "bother me and get\r"
+ "on your way.";
next;
mes "[Van Helmont]";
mes "Now, come on...";
- mes "You'll never get";
- mes "any research completed if you just slack off. Go out and learn all that you can.";
+ mes "You'll never get\r"
+ "any research completed if you just slack off. Go out and learn all that you can.";
next;
mes "[Van Helmont]";
- mes "Reading science journals and performing experiments. That's what Alchemy is all about. Now, let me get back to work!";
+ mes "Reading science journals and performing experiments. That's what Alchemy is all about. "
+ "Now, let me get back to work!";
close;
}
else {
mes "Just a little...";
mes "A little bit more...";
- mes "Nooo! Just a little";
- mes "bit more and it";
- mes "would've been done!";
+ mes "Nooo! Just a little\r"
+ "bit more and it\r"
+ "would've been done!";
next;
mes "[Van Helmont]";
mes "Why...?!";
mes "Why, another failure?!";
- mes "My calculations were";
- mes "all correct! W-Wait...!";
+ mes "My calculations were\r"
+ "all correct! W-Wait...!";
next;
mes "[Van Helmont]";
- mes "Perhaps, if I capacitated the thermal flux by using the neutronic gradient, it just might work...!";
+ mes "Perhaps, if I capacitated the thermal flux by using the neutronic gradient, it just might "
+ "work...!";
close;
}
}
if (ALCH_Q == 8) {
mes "Arrrrgh...!";
- mes "Why isn't this formula working? What's wrong? In theory, it's all correct, but there must be an error in the formula somewhere...";
+ mes "Why isn't this formula working? What's wrong? In theory, it's all correct, but there must be an "
+ "error in the formula somewhere...";
next;
mes "[Van Helmont]";
- mes "I pour it in here, and it should stop. Wait, this is the wrong solution! How could I make such";
- mes "a dumb mistake?! When did these";
- mes "get switched?!";
+ mes "I pour it in here, and it should stop. Wait, this is the wrong solution! How could I make such\r"
+ "a dumb mistake?! When did these\r"
+ "get switched?!";
next;
mes "[Van Helmont]";
mes "Okay, okay...";
mes "I just need to fix this part.";
- mes "No need to start over. I just";
- mes "need to fix it... But wait. Wait...";
+ mes "No need to start over. I just\r"
+ "need to fix it... But wait. Wait...";
next;
mes "[Van Helmont]";
mes ".................";
@@ -1417,10 +1514,12 @@ alde_alche,79,19,5 script Experiment Expert#am 4_M_ALCHE_A,{
if (select("I want to become an Alchemist.", ".......") == 2) {
mes "[Van Helmont]";
mes "Hmm...?";
- mes "What, did you just want to watch? Fine, fine, but do it quietly and leave right when you're done.";
+ mes "What, did you just want to watch? Fine, fine, but do it quietly and leave right when "
+ "you're done.";
next;
mes "[Van Helmont]";
- mes "Stay out of my way and don't go around touching stuff. There might be some volatile materials, so it'd be dangerous to have any accidents.";
+ mes "Stay out of my way and don't go around touching stuff. There might be some volatile "
+ "materials, so it'd be dangerous to have any accidents.";
close;
}
mes "[Van Helmont]";
@@ -1429,9 +1528,9 @@ alde_alche,79,19,5 script Experiment Expert#am 4_M_ALCHE_A,{
mes "What a funny Merchant.";
next;
mes "[Van Helmont]";
- mes "Well, that's nice, but I have very urgent experiments that require";
- mes "my attention, so don't get";
- mes "in the way.";
+ mes "Well, that's nice, but I have very urgent experiments that require\r"
+ "my attention, so don't get\r"
+ "in the way.";
next;
if (select("Teach me something.", "...") == 1) {
mes "[Van Helmont]";
@@ -1439,25 +1538,28 @@ alde_alche,79,19,5 script Experiment Expert#am 4_M_ALCHE_A,{
mes "Didn't I just tell you not to bother me? What's so hard to understand about that?";
next;
mes "[Van Helmont]";
- mes "Fine, fine. I'll give you an assignment. Learn something";
- mes "new and come back. Let's see.";
+ mes "Fine, fine. I'll give you an assignment. Learn something\r"
+ "new and come back. Let's see.";
mes "What would be good...";
next;
mes "[Van Helmont]";
mes "Okay, I got it.";
- mes "Go learn how to make";
- mes "a Counteragent and Mixture";
- mes "from Molgenstein.";
+ mesf("Go learn how to make\r"
+ "a %s and %s\r"
+ "from Molgenstein.",
+ getitemname(Counteragent),
+ getitemname(Mixture));
next;
mes "[Van Helmont]";
- mes "You don't need to bring anything. Just go watch him at work and have him tell you how he makes those solutions. Got it?";
+ mes "You don't need to bring anything. Just go watch him at work and have him tell you how he "
+ "makes those solutions. Got it?";
next;
mes "[Van Helmont]";
ALCH_Q = 9;
changequest 2035,2036;
mes "Well then, see you later.";
- mes "You'd better get going as";
- mes "soon as you can.";
+ mes "You'd better get going as\r"
+ "soon as you can.";
close;
}
mes "[Van Helmont]";
@@ -1472,24 +1574,32 @@ alde_alche,79,19,5 script Experiment Expert#am 4_M_ALCHE_A,{
mes "......";
next;
mes "[Van Helmont]";
- mes "So if I recalibrate the combustion rate of this compound, that should negate any cohesive tendencies in this particle flux...";
+ mes "So if I recalibrate the combustion rate of this compound, that should negate any cohesive "
+ "tendencies in this particle flux...";
next;
mes "[Van Helmont]";
- mes "But what am I going to do";
- mes "about all of this spontaneous";
- mes "crystallization?! I can't very well remove this matrix, I need it for the catalyst to reach the triple point.";
+ mes "But what am I going to do\r"
+ "about all of this spontaneous\r"
+ "crystallization?! I can't very well remove this matrix, I need it for the catalyst to reach "
+ "the triple point.";
next;
mes "[Van Helmont]";
mes "Damn!";
- mes "What am";
- mes "I going to do?!";
+ mes "What am\r"
+ "I going to do?!";
close;
}
else if (ALCH_Q == 9) {
- mes "Alright, if I make an incision here in the Tentacle, and add a Jellopy and Sticky Mucus solution into the... Where the hell did my Medicine Bowl go?";
+ mesf("Alright, if I make an incision here in the %s, and add a %s and %s solution into the... "
+ "Where the hell did my %s go?",
+ getitemname(Tentacle),
+ getitemname(Jellopy),
+ getitemname(Sticky_Mucus),
+ getitemname(Medicine_Bowl));
next;
mes "[Van Helmont]";
- mes "Did I use them all at a time like this?! I wonder if Nicholas has any left. Ugh, what a pain. Wait. Wait a minute...";
+ mes "Did I use them all at a time like this?! I wonder if Nicholas has any left. Ugh, what a pain. "
+ "Wait. Wait a minute...";
next;
mes "[Van Helmont]";
mes "...";
@@ -1502,108 +1612,123 @@ alde_alche,79,19,5 script Experiment Expert#am 4_M_ALCHE_A,{
if (select("I want to become an Alchemist?", ".......") == 2) {
mes "[Van Helmont]";
mes "Hmm...?";
- mes "What, did you just want to watch? Fine, fine, but do it quietly and leave right when you're done.";
+ mes "What, did you just want to watch? Fine, fine, but do it quietly and leave right when "
+ "you're done.";
next;
mes "[Van Helmont]";
- mes "Stay out of my way and don't go around touching stuff. There might be some volatile materials, so it'd be dangerous to have any accidents.";
+ mes "Stay out of my way and don't go around touching stuff. There might be some volatile "
+ "materials, so it'd be dangerous to have any accidents.";
close;
}
mes "[Van Helmont]";
- mes "Ah, of course. The Merchant from before. So what did you learn from Molgenstein? I didn't just send you there for fun, you know.";
+ mes "Ah, of course. The Merchant from before. So what did you learn from Molgenstein? I didn't just "
+ "send you there for fun, you know.";
next;
mes "[Van Helmont]";
- mes "Let me ask you";
- mes "some questions to";
- mes "check what you've";
- mes "learned.";
+ mes "Let me ask you\r"
+ "some questions to\r"
+ "check what you've\r"
+ "learned.";
next;
if(MISC_QUEST & 4) {
mes "[Van Helmont]";
- mes "Which item is not";
- mes "necessary to make";
- mes "a Counteragent?";
+ mesf("Which item is not\r"
+ "necessary to make\r"
+ "a %s?",
+ getitemname(Counteragent));
next;
- if (select("Karvodailnirol", "Detrimindexta", "Alcohol") != 1) .@w_point += 1;
+ if (select(getitemname(Karvodailnirol), getitemname(Detrimindexta), getitemname(Alchol)) != 1)
+ .@w_point += 1;
mes "[Van Helmont]";
- mes "What item is not";
- mes "necessary to make";
- mes "a Mixture?";
+ mesf("What item is not\r"
+ "necessary to make\r"
+ "a %s?",
+ getitemname(Mixture));
next;
- if (select("Karvodailnirol", "Detrimindexta", "Alcohol") != 2) .@w_point += 1;
+ if (select(getitemname(Karvodailnirol), getitemname(Detrimindexta), getitemname(Alchol)) != 2)
+ .@w_point += 1;
if (.@w_point > 0) {
mes "[Van Helmont]";
- mes "Weren't you listening to Molgenstein at all? Maybe you";
- mes "have to watch him make it again.";
+ mes "Weren't you listening to Molgenstein at all? Maybe you\r"
+ "have to watch him make it again.";
next;
mes "[Van Helmont]";
- mes "If you can't tell the exact items that you need in an experiment,";
- mes "you might end up hurting yourself!";
+ mes "If you can't tell the exact items that you need in an experiment,\r"
+ "you might end up hurting yourself!";
close;
}
mes "[Van Helmont]";
mes "Good, you've learned well.";
- mes "Okay, now you know something about experimentation. You're done here, so now I can continue with my experiments.";
+ mes "Okay, now you know something about experimentation. You're done here, so now I can "
+ "continue with my experiments.";
next;
mes "[Van Helmont]";
- mes "Go out and find the room next";
- mes "to this one and talk to Nicholas. He'll continue your training.";
+ mes "Go out and find the room next\r"
+ "to this one and talk to Nicholas. He'll continue your training.";
next;
ALCH_Q = 20;
changequest 2036,2037;
mes "[Van Helmont]";
- mes "What are you";
- mes "still doing here?";
- mes "Go! We both have";
- mes "more important";
- mes "things to do!";
+ mes "What are you\r"
+ "still doing here?";
+ mes "Go! We both have\r"
+ "more important\r"
+ "things to do!";
close;
}
else {
mes "[Van Helmont]";
- mes "What item do";
- mes "you need to make";
- mes "a Counteragent?";
+ mesf("What item do\r"
+ "you need to make\r"
+ "a %s?",
+ getitemname(Counteragent));
next;
- select("Feather", "Sticky Mucus", "Animal Gore");
+ select(getitemname(Feather), getitemname(Sticky_Mucus), getitemname(Animal_Blood));
mes "[Van Helmont]";
- mes "What item do";
- mes "you need to make";
- mes "a Mixture?";
- next;
- select("Monster Feed", "Ancient Lips", "Rotten Bandage");
+ mesf("What item do\r"
+ "you need to make\r"
+ "a %s?",
+ getitemname(Mixture));
+ next;
+ select(getitemname(Monster's_Feed),
+ getitemname(Lip_Of_Ancient_Fish),
+ getitemname(Rotten_Bandage));
mes "[Van Helmont]";
- mes "Be honest. You don't know, do you?! Didn't I say to go to Molgenstein and have him teach you?!";
+ mes "Be honest. You don't know, do you?! Didn't I say to go to Molgenstein and have him teach "
+ "you?!";
next;
mes "[Van Helmont]";
- mes "Don't even think about coming back until you talk to him! Now stop bothering me and get out of here!";
+ mes "Don't even think about coming back until you talk to him! Now stop bothering me and get "
+ "out of here!";
close;
}
}
else if (ALCH_Q == 20) {
mes "What...?";
- mes "I thought I told you to";
- mes "talk to Nicholas next door?";
+ mes "I thought I told you to\r"
+ "talk to Nicholas next door?";
next;
mes "[Van Helmont]";
- mes "I need to continue my research,";
- mes "and you need to finish becoming an Alchemist. Come on, get moving!";
+ mes "I need to continue my research,\r"
+ "and you need to finish becoming an Alchemist. Come on, get moving!";
close;
}
else {
mes "Just a little...";
mes "A little bit more...";
- mes "Nooo! Just a little";
- mes "bit more and it";
- mes "would've been done!";
+ mes "Nooo! Just a little\r"
+ "bit more and it\r"
+ "would've been done!";
next;
mes "[Van Helmont]";
mes "Why...?!";
mes "Why, another failure?!";
- mes "My calculations were";
- mes "all correct! Wait...";
+ mes "My calculations were\r"
+ "all correct! Wait...";
next;
mes "[Van Helmont]";
- mes "Perhaps, if I capacitated the thermal flux by using the neutronic gradient, it just might work...";
+ mes "Perhaps, if I capacitated the thermal flux by using the neutronic gradient, it just might "
+ "work...";
close;
}
}
@@ -1625,38 +1750,40 @@ alde_alche,101,184,4 script Master Alchemist#am 2_M_DYEINGER,{
if (BaseJob != Job_Merchant) {
if (BaseJob == Job_Alchemist) {
mes "Welcome!";
- mes "So how is your";
- mes "research coming along?";
+ mes "So how is your\r"
+ "research coming along?";
next;
mes "[Vincent Carsciallo]";
- mes "At times you get results that are unexpected from an experiment. Although these may be setbacks in your research, such results can also lead to new discoveries.";
+ mes "At times you get results that are unexpected from an experiment. Although these may be "
+ "setbacks in your research, such results can also lead to new discoveries.";
next;
mes "[Vincent Carsciallo]";
- mes "If you discover something new,";
- mes "come and tell us. Don't forget that we are all working together to unlock the mysteries of science!";
+ mes "If you discover something new,\r"
+ "come and tell us. Don't forget that we are all working together to unlock the "
+ "mysteries of science!";
}
else if (BaseClass == Job_Novice) {
mes "Hm...";
mes "A Novice?";
- mes "You shouldn't be";
- mes "playing in a place";
- mes "like this.";
+ mes "You shouldn't be\r"
+ "playing in a place\r"
+ "like this.";
next;
mes "[Vincent Carsciallo]";
- mes "There are a lot of volatile chemicals and dangerous";
- mes "materials in this building. It'd be a lot better if you just played outside.";
+ mes "There are a lot of volatile chemicals and dangerous\r"
+ "materials in this building. It'd be a lot better if you just played outside.";
}
else {
mes "Hmm...?";
- mes "What's an adventurer";
- mes "doing here in the";
- mes "Alchemist Union?";
+ mes "What's an adventurer\r"
+ "doing here in the\r"
+ "Alchemist Union?";
next;
mes "[Vincent Carsciallo]";
- mes "I'm afraid there's";
- mes "not much we can offer";
- mes "you here if you're not";
- mes "a member of our Union.";
+ mes "I'm afraid there's\r"
+ "not much we can offer\r"
+ "you here if you're not\r"
+ "a member of our Union.";
}
close2;
cutin "",255;
@@ -1665,19 +1792,21 @@ alde_alche,101,184,4 script Master Alchemist#am 2_M_DYEINGER,{
if (ALCH_Q == 0) {
mes "Hmm...?";
mes "A Merchant?";
- mes "Are you interested";
- mes "in learning Alchemy?";
+ mes "Are you interested\r"
+ "in learning Alchemy?";
next;
mes "[Vincent Carsciallo]";
mes "This is the Alchemist Union.";
- mes "We research and experiment with many different substances in order to create new materials without using magic.";
+ mes "We research and experiment with many different substances in order to create new materials "
+ "without using magic.";
next;
mes "[Vincent Carsciallo]";
- mes "Someday, we hope to unlock";
- mes "the secret of life, as well as the other mysteries of science.";
+ mes "Someday, we hope to unlock\r"
+ "the secret of life, as well as the other mysteries of science.";
next;
mes "[Vincent Carsciallo]";
- mes "After being traveling as a Merchant for a long time, you must have developed some scientific curiosity. If you'd like to learn Alchemy, why don't you try joining the Alchemist Union?";
+ mes "After being traveling as a Merchant for a long time, you must have developed some scientific "
+ "curiosity. If you'd like to learn Alchemy, why don't you try joining the Alchemist Union?";
close2;
cutin "",255;
end;
@@ -1692,17 +1821,17 @@ alde_alche,101,184,4 script Master Alchemist#am 2_M_DYEINGER,{
end;
}
if (SkillPoint) {
- mes "Ah, you're almost";
- mes "ready to become an";
- mes "Alchemist, but you must";
- mes "first allocate your unused";
- mes "Skill Points.";
+ mes "Ah, you're almost\r"
+ "ready to become an\r"
+ "Alchemist, but you must\r"
+ "first allocate your unused\r"
+ "Skill Points.";
next;
mes "[Vincent Carsciallo]";
- mes "Talk to me again";
- mes "once you have spent";
- mes "all of your extra";
- mes "Skill Points.";
+ mes "Talk to me again\r"
+ "once you have spent\r"
+ "all of your extra\r"
+ "Skill Points.";
close2;
cutin "",255;
end;
@@ -1714,9 +1843,9 @@ alde_alche,101,184,4 script Master Alchemist#am 2_M_DYEINGER,{
changequest 2034,2040;
}
mes "Ah, well done.";
- mes "I can see that you";
- mes "have learned all of";
- mes "the basics of Alchemy.";
+ mes "I can see that you\r"
+ "have learned all of"
+ "the basics of Alchemy.";
next;
ALCH_Q = 0;
completequest 2040;
@@ -1724,19 +1853,19 @@ alde_alche,101,184,4 script Master Alchemist#am 2_M_DYEINGER,{
callfunc "Job_Change",Job_Alchemist;
callfunc "F_ClearJobVar";
mes "[Vincent Carsciallo]";
- mes "Henceforth, you are";
- mes "now a member of our";
- mes "illustrious Union.";
+ mes "Henceforth, you are\r"
+ "now a member of our\r"
+ "illustrious Union.";
mes "I hope you learn a lot...";
next;
if (.@jlevel == 50) {
getitem Slim_Potion_Create_Book,1;
mes "[Vincent Carsciallo]";
- mes "Let me give you";
- mes "something special.";
- mes "You can use this to";
- mes "begin your life";
- mes "of research.";
+ mes "Let me give you\r"
+ "something special.";
+ mes "You can use this to"
+ "begin your life"
+ "of research.";
}
else {
switch(rand(1,6)) {
@@ -1760,32 +1889,32 @@ alde_alche,101,184,4 script Master Alchemist#am 2_M_DYEINGER,{
}
mes "[Vincent Carsciallo]";
mes "And...";
- mes "Here's a little";
- mes "something to help";
- mes "you begin your";
- mes "research.";
+ mes "Here's a little\r"
+ "something to help\r"
+ "you begin your\r"
+ "research.";
}
next;
mes "[Vincent Carsciallo]";
- mes "I'll see";
- mes "you later then...";
- mes "Remember to carry";
- mes "yourself with pride";
- mes "as an Alchemist!";
+ mes "I'll see\r"
+ "you later then...";
+ mes "Remember to carry\r"
+ "yourself with pride\r"
+ "as an Alchemist!";
close2;
cutin "",255;
end;
}
else {
mes "Ah...";
- mes "I believe you've";
- mes "already registered";
- mes "for training to become";
- mes "an Alchemist.";
+ mes "I believe you've\r"
+ "already registered\r"
+ "for training to become\r"
+ "an Alchemist.";
next;
mes "[Vincent Carsciallo]";
- mes "Please listen to the";
- mes "other Alchemists and follow their instructions carefully. You will learn much from them.";
+ mes "Please listen to the\r"
+ "other Alchemists and follow their instructions carefully. You will learn much from them.";
close2;
cutin "",255;
end;
@@ -1805,72 +1934,95 @@ alde_alche,145,19,1 script Chief Researcher#am 1_M_LIBRARYMASTER,{
if (ALCH_Q == 20) {
mes "[Nicholas Flamel]";
mes "Ooh...";
- mes "You're the upstart";
- mes "Merchant that wants";
- mes "to become an Alchemist?";
+ mes "You're the upstart\r"
+ "Merchant that wants\r"
+ "to become an Alchemist?";
next;
mes "[Nicholas Flamel]";
- mes "Not just anyone can become an Alchemist, you know. You've got to have motivation and clear goals and a strong sense of focus.";
+ mes "Not just anyone can become an Alchemist, you know. You've got to have motivation and "
+ "clear goals and a strong sense of focus.";
next;
mes "[Nicholas Flamel]";
- mes "Alchemists must memorize many chemical equations, scientific laws and a lot of other information. It's actually pretty tough.";
+ mes "Alchemists must memorize many chemical equations, scientific laws and a lot of other "
+ "information. It's actually pretty tough.";
next;
mes "[Nicholas Flamel]";
- mes "If you can't focus, you'll be confused later when you look at Alchemy charts. My test will judge your ability to do just that.";
+ mes "If you can't focus, you'll be confused later when you look at Alchemy charts. My test "
+ "will judge your ability to do just that.";
next;
}
mes "[Nicholas Flamel]";
- mes "Find the words scrambled";
- mes "in the group of letters I give you. They can be made by using some";
- mes "or all of the letters.";
+ mes "Find the words scrambled\r"
+ "in the group of letters I give you. They can be made by using some\r"
+ "or all of the letters.";
next;
mes "[Nicholas Flamel]";
- mes "You pass if you";
- mes "choose the word";
- mes "that is ^551A8BIN^000000 the puzzle.";
+ mes "You pass if you\r"
+ "choose the word\r"
+ "that is ^551A8BIN^000000 the puzzle.";
next;
switch(rand(1,3)) {
case 1:
mes "t m y a n y e o b n e g p r i";
next;
- if (select("Brake", "Brass", "Bug", "Broken", "Brigan?") == 5) .@alch_t += 10;
+ if (select("Brake", "Brass", "Bug", "Broken", "Brigan?") == 5)
+ .@alch_t += 10;
mes "o n c u t a p j l e r s v m u";
next;
- if (select("vendor", "storage", "weapon", "simple", "streetshop") == 1) .@alch_t += 10;
+ if (select("vendor", "storage", "weapon", "simple", "streetshop") == 1)
+ .@alch_t += 10;
mes "t v a r m e g p h e u b o y l";
next;
- if (select("molasses", "party", "leader", "sweets", "treacle") == 2) .@alch_t += 10;
+ if (select("molasses", "party", "leader", "sweets", "treacle") == 2)
+ .@alch_t += 10;
mes "q z a h n a i n b r d p t n c";
next;
- if (select("partisan", "partizan", "pato", "paros", "pack") == 2) .@alch_t += 10;
+ if (select("partisan", "partizan", "pato", "paros", "pack") == 2)
+ .@alch_t += 10;
break;
case 2:
mes "m p d i c f a r o g n k w a s";
next;
- if (select("packman", "sunshine", "ragnarok", "wonderland", "frost") == 1) .@alch_t += 10;
+ if (select("packman", "sunshine", "ragnarok", "wonderland", "frost") == 1)
+ .@alch_t += 10;
mes "g b n o p r e f a r e t a s k";
next;
- if (select("purple", "smoker", "ragnarok", "bolt", "burnt wood") == 3) .@alch_t += 10;
+ if (select("purple", "smoker", "ragnarok", "bolt", "burnt wood") == 3)
+ .@alch_t += 10;
mes "u g n i s j e k c e o g n d p";
next;
- if (select("scab", "kinship", "donate", "source", "opening") == 5) .@alch_t += 10;
+ if (select("scab", "kinship", "donate", "source", "opening") == 5)
+ .@alch_t += 10;
mes "r o e h n r o m c a i n p t t";
next;
- if (select("forgemerchant", "potionmerchant", "dcmerchant", "vendingmerchant", "battlemerchant") == 2) .@alch_t += 10;
+ if (select("forgemerchant",
+ "potionmerchant",
+ "dcmerchant",
+ "vendingmerchant",
+ "battlemerchant") == 2)
+ .@alch_t += 10;
break;
case 3:
mes "s m i e x b w u n e t a g l r";
next;
- if (select("tiger", "wolf", "pumpkin", "tripped", "tore") == 1) .@alch_t += 10;
+ if (select("tiger", "wolf", "pumpkin", "tripped", "tore") == 1)
+ .@alch_t += 10;
mes "n i e g b o p d s o a u w r v";
next;
- if (select("bash", "provoke", "endure", "stun", "abracadabra") == 3) .@alch_t += 10;
+ if (select("bash", "provoke", "endure", "stun", "abracadabra") == 3)
+ .@alch_t += 10;
mes "l r m g r e x t a v i n e d e";
next;
- if (select("alberta", "latifoliate", "crimson", "maple", "evergreen") == 5) .@alch_t += 10;
+ if (select("alberta", "latifoliate", "crimson", "maple", "evergreen") == 5)
+ .@alch_t += 10;
mes "r o e h n r o m c a i n p t t";
next;
- if (select("forgemerchant", "potionmerchant", "dcmerchant", "vendingmerchant", "battlemerchant") == 2) .@alch_t += 10;
+ if (select("forgemerchant",
+ "potionmerchant",
+ "dcmerchant",
+ "vendingmerchant",
+ "battlemerchant") == 2)
+ .@alch_t += 10;
break;
}
mes "[Nicholas Flamel]";
@@ -1881,17 +2033,18 @@ alde_alche,145,19,1 script Chief Researcher#am 1_M_LIBRARYMASTER,{
mes "Excellent job!";
next;
mes "[Nicholas Flamel]";
- mes "Great, you found all of those hidden words. With that kind of concentration, you should have no problem memorizing information.";
+ mes "Great, you found all of those hidden words. With that kind of concentration, you should "
+ "have no problem memorizing information.";
next;
mes "[Nicholas Flamel]";
- mes "Come back in a little bit while";
- mes "I prepare the next assignment";
- mes "for your training.";
+ mes "Come back in a little bit while\r"
+ "I prepare the next assignment\r"
+ "for your training.";
next;
mes "[Nicholas Flamel]";
- mes "Oh, and before you talk to";
- mes "me again, make sure you have";
- mes "^551A8Bplenty of room in your inventory^000000.";
+ mes "Oh, and before you talk to\r"
+ "me again, make sure you have\r"
+ "^551A8Bplenty of room in your inventory^000000.";
close;
}
else {
@@ -1902,12 +2055,13 @@ alde_alche,145,19,1 script Chief Researcher#am 1_M_LIBRARYMASTER,{
mes "Judging from these results, you obviously have a problem with concentrating.";
next;
mes "[Nicholas Flamel]";
- mes "If you can't even solve these easy word puzzles, how can you keep track of your experiments and research?";
+ mes "If you can't even solve these easy word puzzles, how can you keep track of your "
+ "experiments and research?";
next;
mes "[Nicholas Flamel]";
- mes "Why don't you relax";
- mes "and rest a bit before";
- mes "you take the test again?";
+ mes "Why don't you relax\r"
+ "and rest a bit before\r"
+ "you take the test again?";
close;
}
@@ -1921,26 +2075,27 @@ alde_alche,145,19,1 script Chief Researcher#am 1_M_LIBRARYMASTER,{
}
mes "[Nicholas Flamel]";
mes "Alright...";
- mes "For your next";
- mes "assignment, you'll";
- mes "need to travel to ^551A8BJuno^000000.";
+ mes "For your next\r"
+ "assignment, you'll\r"
+ "need to travel to ^551A8BJuno^000000.";
next;
mes "[Nicholas Flamel]";
- mes "There, you'll need to talk to ^551A8BBain^000000 and ^551A8BBajin^000000. Those two are doing Alchemy research with the Sages";
- mes "in Juno. You'll learn something by assisting them with their project.";
+ mes "There, you'll need to talk to ^551A8BBain^000000 and ^551A8BBajin^000000. Those two are doing "
+ "Alchemy research with the Sages\r"
+ "in Juno. You'll learn something by assisting them with their project.";
next;
mes "[Nicholas Flamel]";
- mes "Come back here to me after you";
- mes "help them out. They'll need all of these items to continue their experiments.";
+ mes "Come back here to me after you\r"
+ "help them out. They'll need all of these items to continue their experiments.";
next;
ALCH_Q = 23;
changequest 2037,2038;
mes "[Nicholas Flamel]";
- mes "1 Mixture,";
- mes "5 Burnt Tree,";
- mes "5 Fine Sand,";
- mes "3 Rough Oridecon";
- mes "and 3 Rough Elunium.";
+ mesf("1 %s,", getitemname(Mixture));
+ mesf("5 %s,", getitemname(Burn_Tree));
+ mesf("5 %s,", getitemname(Fine_Sand));
+ mesf("3 %s", getitemname(Oridecon_Stone));
+ mesf("and 3 %s.", getitemname(Elunium_Stone));
getitem Mixture,1;
getitem Burn_Tree,5;
getitem Fine_Sand,5;
@@ -1949,17 +2104,17 @@ alde_alche,145,19,1 script Chief Researcher#am 1_M_LIBRARYMASTER,{
next;
mes "[Nicholas Flamel]";
mes "Alright.";
- mes "Have a safe trip";
- mes "and come back in";
- mes "one piece.";
+ mes "Have a safe trip\r"
+ "and come back in\r"
+ "one piece.";
close;
}
else if (ALCH_Q == 23) {
mes "[Nicholas Flamel]";
- mes "Didn't I say to";
- mes "go to Juno and help";
- mes "Bain and Bajin with";
- mes "their Alchemy research?";
+ mes "Didn't I say to\r"
+ "go to Juno and help\r"
+ "Bain and Bajin with\r"
+ "their Alchemy research?";
close;
}
else if (ALCH_Q == 24) {
@@ -1967,36 +2122,38 @@ alde_alche,145,19,1 script Chief Researcher#am 1_M_LIBRARYMASTER,{
changequest 2038,2039;
mes "[Nicholas Flamel]";
mes "Ah, you're back!";
- mes "I just got a message from Bain";
- mes "and Bajin. They let me know that they were very happy with your assistance.";
+ mes "I just got a message from Bain\r"
+ "and Bajin. They let me know that they were very happy with your assistance.";
next;
mes "[Nicholas Flamel]";
- mes "If you were good enough";
- mes "to help out those brothers,";
- mes "you definitely qualify to be";
- mes "an Alchemist.";
+ mes "If you were good enough\r"
+ "to help out those brothers,\r"
+ "you definitely qualify to be\r"
+ "an Alchemist.";
next;
mes "[Nicholas Flamel]";
mes "Good work!";
- mes "All you have to do now is speak to the Union Leader on the 2nd floor! Congratulations, you'll become an Alchemist very soon!";
+ mes "All you have to do now is speak to the Union Leader on the 2nd floor! Congratulations, you'll "
+ "become an Alchemist very soon!";
close;
}
else if (ALCH_Q == 40 && BaseJob == Job_Merchant) {
mes "[Nicholas Flamel]";
- mes "All you have to do now is speak to the Union Leader on the 2nd floor! Congratulations, you'll become an Alchemist very soon!";
+ mes "All you have to do now is speak to the Union Leader on the 2nd floor! Congratulations, you'll "
+ "become an Alchemist very soon!";
close;
}
else {
mes "[Nicholas Flamel]";
- mes "Lorem ipsum dolor sit amet,";
- mes "consectetuer adipiscing elit.";
- mes "Vivamus sem. Sed metus";
- mes "lacus, viverra id, rutrum eget,";
- mes "rhoncus sit amet, lectus.";
+ mes "Lorem ipsum dolor sit amet,\r"
+ "consectetuer adipiscing elit.\r"
+ "Vivamus sem. Sed metus\r"
+ "lacus, viverra id, rutrum eget,\r"
+ "rhoncus sit amet, lectus.";
next;
mes "[Nicholas Flamel]";
- mes "Suspendisse sit amet urna in";
- mes "nisl fringilla faucibus. Nulla scelerisque eros...";
+ mes "Suspendisse sit amet urna in\r"
+ "nisl fringilla faucibus. Nulla scelerisque eros...";
mes "^666666*Mumble Mumble*^000000";
close;
}
diff --git a/npc/quests/bard_quest.txt b/npc/quests/bard_quest.txt
index 7a2166836..7545d24e7 100644
--- a/npc/quests/bard_quest.txt
+++ b/npc/quests/bard_quest.txt
@@ -1458,8 +1458,8 @@ morocc,134,111,3 script Bard#3 2_M_BARD_ORIENT,{
next;
mes "^3355FFKino Kitty coughed a few times, wiping his mouth with his sleeve. As he adjusts the guitar strings, you notice small stains of blood on his sleeve. Then, he began to sing.^000000";
next;
- mes "^D43D1ABrave hero Siegfried ";
- mes "Vanquished a mighty dragon ";
+ mes "^D43D1ABrave hero Siegfried";
+ mes "Vanquished a mighty dragon";
mes "Its blood coated his skin";
mes "Making it impenetrable";
mes "Save for one tender spot";
diff --git a/npc/quests/newgears/2010_headgears.txt b/npc/quests/newgears/2010_headgears.txt
index 660c82a87..bfdea103a 100644
--- a/npc/quests/newgears/2010_headgears.txt
+++ b/npc/quests/newgears/2010_headgears.txt
@@ -195,8 +195,8 @@ lhz_in02,276,281,1 script Drunken Man#Necktie 4_M_ALCHE_A,{
mes "[Drunken Man]";
mes "Once I wear the Necktie on my head,";
mes "I will be no match for you!";
- mes "You must be nervous";
- mes "Hmm where is the Necktie?";
+ mes "You must be nervous...";
+ mes "Hmm... where is the Necktie?";
next;
// If having the materials
if ((countitem(Cobaltblue_Dyestuffs) > 0) && (countitem(Oil_Paper) > 29) && (countitem(Transparent_Cloth) > 99) && (countitem(Spool) > 19)) {
@@ -310,7 +310,7 @@ comodo,236,164,0 script Hat Girl#Hair_Brush 1_F_04,{
mes "[Hat Girl]";
mes "Okay, I'll do it right away!";
next;
- mes "Ch ch ch... combining...ch ch";
+ mes "Ch ch ch... combining...ch ch...";
emotion e_swt2,1;
next;
mes "[Hat Girl]";
@@ -454,7 +454,7 @@ alberta,151,78,0 script Bebete#Baby_Angel_Status 4W_KID,{
mes "... ...";
next;
mes "[" + strcharinfo(0) + "]";
- mes "Hmm... I guess I was fooled by that little kid.";
+ mes "Hmm... I guess I was fooled by that little kid.";
close;
}
mes "[Bebete]";
@@ -943,7 +943,7 @@ alberta,120,206,3 script Alonie#Solo_Play_Box 4_M_UMKID,{
mes "For make it";
mes "the fruitful training,";
mes "Get around and kill";
- mes "^FF000020 Chung E and 50 Civil Servant^000000!";
+ mes "^FF000020 Chung E and 50 Civil Servant^000000!";
next;
if (select("What a bullshit!", "Let's go!") == 1) {
mes "[Alonie]";
@@ -1033,7 +1033,7 @@ alberta,120,206,3 script Alonie#Solo_Play_Box 4_M_UMKID,{
mes "Hmm, It's not enough.";
mes "Playing alone is not that easy!";
mes "Go and kill";
- mes "^FF000020 Chung E and 50 Civil Servant^000000!";
+ mes "^FF000020 Chung E and 50 Civil Servant^000000!";
if (questprogress(1104,HUNTING) == 1) {
erasequest 1104;
setquest 1108;
diff --git a/npc/quests/quests_rachel.txt b/npc/quests/quests_rachel.txt
index 41e72deee..1fb7f95eb 100644
--- a/npc/quests/quests_rachel.txt
+++ b/npc/quests/quests_rachel.txt
@@ -7244,7 +7244,10 @@ OnTouch:
mes "For now, you may as well";
mes "talk to High Priest Zhed.^000000";
ra_tem_q = 19;
- changequest 8102,8103;
+ if (questprogress(8102) == 1)
+ changequest 8102,8103;
+ else
+ changequest 8101,8103;
close;
}
end;
diff --git a/npc/quests/skills/assassin_skills.txt b/npc/quests/skills/assassin_skills.txt
index 6f6a93488..c09660ed2 100644
--- a/npc/quests/skills/assassin_skills.txt
+++ b/npc/quests/skills/assassin_skills.txt
@@ -29,12 +29,6 @@
//= along with this program. If not, see <http://www.gnu.org/licenses/>.
//=========================================================================
//= Assassin Skills Quests
-//================= File Encoding =========================================
-//= CP-949 (EUC-KR compatible). Do NOT read/save it as UTF-8.
-//= -If the encoding is correct, the next three lines have the same length-
-//= ============ ġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġ ============
-//= ============ ============================================= ============
-//= ============ ============
//================= Description ===========================================
//= Quests for skills: Venom Knife, Sonic Acceleration
//================= Current Version =======================================
@@ -979,9 +973,7 @@ OnTouch:
}
}
-// FIXME[Haru]: Why do we have a Korean name here? Can anyone translate it?
-// Google translate says ¡¡ (jingjing) = Whining, but it doesn't make much sense to me.
-moc_pryd04,85,96,0 script ¡¡#crypt FAKE_NPC,3,3,{
+moc_pryd04,85,96,0 script Glimmer#crypt FAKE_NPC,3,3,{
OnTouch:
if (ASSN_SK == 4) {
specialeffect EF_CONE;
diff --git a/npc/re/cities/dicastes.txt b/npc/re/cities/dicastes.txt
index f05d494f7..43571facb 100644
--- a/npc/re/cities/dicastes.txt
+++ b/npc/re/cities/dicastes.txt
@@ -53,11 +53,11 @@ dicastes01,194,159,5 script Excited Galten#a 4_MAN_GALTUN1,{
mes "will rule this land.";
close;
}
- mes " ";
- mes " ";
- mes " ";
- mes " С ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" С ");
+ mes sprintf(" ");
close;
}
@@ -76,15 +76,15 @@ dicastes01,202,86,3 script Sentinel#a 4_MAN_GALTUN1,{
mes "Hey, you are an outsider!";
close;
}
- mes " С ";
- mes " ";
- mes " С ";
+ mes sprintf(" С ");
+ mes sprintf(" ");
+ mes sprintf(" С ");
next;
mes "[Sentinel]";
- mes "";
+ mes sprintf("");
next;
mes "[Sentinel]";
- mes " 󢳡";
+ mes sprintf(" 󢳡");
close;
}
@@ -96,9 +96,9 @@ dicastes01,194,95,5 script Sentinel#b 4_MAN_GALTUN,{
mes "you won't know what hit you. Beware!";
close;
}
- mes " ";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
}
@@ -109,8 +109,8 @@ dicastes01,234,158,0 script Training Galten#a 4_MAN_GALTUN,{
mes "if I keep up with my training every day.";
close;
}
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
next;
mes "Don't know what it means.";
close;
@@ -123,8 +123,8 @@ dicastes01,244,166,0 script Training Galten#b 4_MAN_GALTUN,{
mes "hard I am training.";
close;
}
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
next;
mes "Don't know what it means.";
close;
@@ -138,8 +138,8 @@ dicastes01,272,166,0 script Training Galten#c 4_MAN_GALTUN,{
mes "I am never lazy with my training.";
close;
}
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
next;
mes "Don't know what it means.";
close;
@@ -154,8 +154,8 @@ dicastes01,248,129,0 script Training Galten#d 4_MAN_GALTUN,{
mes "for trainees like me.";
close;
}
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
next;
mes "Don't know what it means.";
close;
@@ -169,8 +169,8 @@ dicastes01,271,152,0 script Training Galten#e 4_MAN_GALTUN,{
mes "if I do my best, right?";
close;
}
- mes " ";
- mes "";
+ mes sprintf(" ");
+ mes sprintf("");
close;
}
*/
@@ -182,9 +182,9 @@ dic_in01,349,282,4 script Waiting Galten#in_1 4_MAN_GALTUN1,{
mes "We are all tensed up to be ready for action.";
close;
}
- mes "[С ]";
- mes " ";
- mes " ";
+ mes sprintf("[С ]");
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
}
@@ -194,8 +194,8 @@ dic_in01,370,261,1 script Waiting Galten#in_2 4_MAN_GALTUN1,{
mes "Boring.";
close;
}
- mes "[С ]";
- mes "";
+ mes sprintf("[С ]");
+ mes sprintf("");
close;
}
@@ -205,8 +205,8 @@ dic_in01,381,261,1 script Waiting Galten#in_3 4_MAN_GALTUN1,{
mes "Zzzzz...";
close;
}
- mes "[С ]";
- mes "";
+ mes sprintf("[С ]");
+ mes sprintf("");
close;
}
@@ -216,8 +216,8 @@ dic_in01,370,282,4 script Waiting Galten#in_4 4_MAN_GALTUN1,{
mes "El Dicastes is the most peaceful place in this world as long as I am here.";
close;
}
- mes "[С ]";
- mes " ";
+ mes sprintf("[С ]");
+ mes sprintf(" ");
close;
}
@@ -227,8 +227,8 @@ dic_in01,354,219,4 script Resting Galten#in_5 4_MAN_GALTUN1,{
mes "Resting is always so sweet.";
close;
}
- mes "[ ]";
- mes " ";
+ mes sprintf("[ ]");
+ mes sprintf(" ");
close;
}
@@ -241,9 +241,9 @@ dic_in01,365,197,1 script Resting Galten#in_6 4_MAN_GALTUN1,{
mes "You say I don't look like I'm resting? But I'm already used to this.";
close;
}
- mes "[ ]";
- mes " ";
- mes " С С ";
+ mes sprintf("[ ]");
+ mes sprintf(" ");
+ mes sprintf(" С С ");
close;
}
@@ -257,8 +257,8 @@ dic_in01,29,119,4 script Resting Piom#04 4_MAN_PIOM6,{
mes "Why is it so noisy when I'm trying to get rest?";
close;
}
- mes "[ ]";
- mes " ";
+ mes sprintf("[ ]");
+ mes sprintf(" ");
close;
}
@@ -289,8 +289,8 @@ dic_in01,91,113,5 script Suspicious Piom#a 4_MAN_PIOM6,{
mes "I am not going to say anything, either!";
close;
}
- mes "󢳡 ";
- mes " ";
+ mes sprintf("󢳡 ");
+ mes sprintf(" ");
next;
if(select("Can't tell what it means", "Is it a curse??") == 2) {
mes "[Suspicious Piom]";
@@ -312,10 +312,10 @@ dic_in01,168,116,5 script Tired Piom#c 4_MAN_PIOM5,{
mes "But of course you'll have to pay the price.";
close;
}
- mes " ";
- mes " ";
- mes " 󢤡 ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" 󢤡 ");
+ mes sprintf(" ");
close;
}
@@ -329,10 +329,10 @@ dic_in01,149,104,5 script Tired Piom#b 4_MAN_PIOM2,{
emotion e_what;
close;
}
- mes "С ";
- mes " ";
- mes " ";
- mes " ";
+ mes sprintf("С ");
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
emotion e_what;
close;
}
@@ -354,17 +354,17 @@ dic_in01,341,113,3 script Tired Piom#a 4_MAN_PIOM5,{
mes "I'll be rejected again, right?";
close;
}
- mes " Т";
- mes " 򢱡 ";
- mes " ";
- mes " ";
+ mes sprintf(" Т");
+ mes sprintf(" 򢱡 ");
+ mes sprintf(" ");
+ mes sprintf(" ");
next;
mes "[Tired Piom]";
- mes "";
+ mes sprintf("");
next;
emotion e_swt;
mes "[Tired Piom]";
- mes " ";
+ mes sprintf(" ");
close;
}
@@ -391,9 +391,9 @@ dic_in01,32,54,5 script Venknick#el_01 4_MAN_BENKUNI,{
mes "The refined Bradium was the best ever. Do you want to try some?";
close;
}
- mes "[]";
- mes " ";
- mes " ?";
+ mes sprintf("[]");
+ mes sprintf(" ");
+ mes sprintf(" ?");
close;
}
@@ -413,17 +413,17 @@ dic_in01,372,116,3 script Thrilled Piom#a 4_MAN_PIOM4,{
mes "blessing?";
close;
}
- mes " ";
- mes " ";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
next;
mes "[Thrilled Piom]";
- mes "";
+ mes sprintf("");
next;
mes "[Thrilled Piom]";
- mes "Т ";
- mes " ";
+ mes sprintf("Т ");
+ mes sprintf(" ");
close;
}
@@ -435,9 +435,9 @@ dic_in01,360,125,5 script Serious Venknicka 4_MAN_BENKUNI,{
mes "I will have to get more factory lines running.";
close;
}
- mes " ";
- mes " ";
- mes " Т ";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" Т ");
close;
}
@@ -467,24 +467,24 @@ dic_in01,42,250,5 script Guide#diel_1 4_MAN_PIOM6,{
mes "- The guide looks at you with an alert expression. -";
close;
}
- mes "[]";
- mes " ";
- mes " ?";
+ mes sprintf("[]");
+ mes sprintf(" ");
+ mes sprintf(" ?");
next;
- mes "[]";
- mes "С ";
- mes " ";
+ mes sprintf("[]");
+ mes sprintf("С ");
+ mes sprintf(" ");
next;
- mes "[]";
- mes " ";
- mes " ";
+ mes sprintf("[]");
+ mes sprintf(" ");
+ mes sprintf(" ");
next;
- mes "[]";
- mes " ";
+ mes sprintf("[]");
+ mes sprintf(" ");
next;
- mes "[]";
- mes " С ";
- mes " ";
+ mes sprintf("[]");
+ mes sprintf(" С ");
+ mes sprintf(" ");
close;
}
@@ -499,12 +499,12 @@ dic_in01,335,34,5 script Talkative Piom#a 4_MAN_PIOM4,{
mes "here too.";
close;
}
- mes " ";
- mes " ";
- mes " ";
- mes " ";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
}
@@ -515,8 +515,8 @@ dic_in01,387,30,1 script Manuk Piom#a 4_MAN_PIOM,{
mes "I've come to pick up the weapon I ordered.";
close;
}
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
}
@@ -530,11 +530,11 @@ dicastes01,282,210,4 script Free Knit#a 4_MAN_NITT,{
mes "which is short.";
close;
}
- mes " ";
- mes " ";
- mes " ";
- mes "󢳡 ";
- mes "򢲡 ";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf("󢳡 ");
+ mes sprintf("򢲡 ");
close;
}
@@ -554,17 +554,17 @@ dicastes01,246,210,3 script Free Venknick#a 4_MAN_BENKUNI,{
mes "but why are you interested in it?";
close;
}
- mes " ";
- mes "";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf("");
+ mes sprintf(" ");
+ mes sprintf(" ");
next;
mes "[Free Venknick]";
- mes "";
+ mes sprintf("");
next;
mes "[Free Venknick]";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
}
@@ -577,9 +577,9 @@ dicastes01,235,245,4 script Excited Piom#a 4_MAN_PIOM4,{
close;
}
mes "[Excited Piom]";
- mes " ";
+ mes sprintf(" ");
emotion e_ho;
- mes " ";
+ mes sprintf(" ");
close;
}
@@ -593,11 +593,11 @@ dicastes01,284,262,3 script Favorable Knit#a 4_MAN_NITT,{
mes "We never have any quarrels between classes.";
close;
}
- mes " ";
- mes " ";
- mes " ";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
}
@@ -612,11 +612,11 @@ dicastes01,164,180,4 script Limpy Piom#a 4_MAN_PIOM6,{
emotion e_dots;
close;
}
- mes " ";
- mes " ";
- mes " ";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
emotion e_dots;
close;
}
@@ -649,13 +649,13 @@ dicastes01,191,202,4 script Complaining Galten#fihs 4_MAN_GALTUN,{
mes "Just forget about it quickly for your own good.";
close;
}
- mes "[ ]";
- mes " ";
- mes " ";
+ mes sprintf("[ ]");
+ mes sprintf(" ");
+ mes sprintf(" ");
next;
- mes "[ ]";
- mes "𢱡 ";
- mes " ";
+ mes sprintf("[ ]");
+ mes sprintf("𢱡 ");
+ mes sprintf(" ");
next;
mes "Don't know what it means.";
close;
@@ -702,9 +702,9 @@ dicastes01,202,197,4 script Crazy Venknick#fihsing1 4_MAN_BENKUNI,{
mes "You feel outraged at being tricked.";
close;
}
- mes "[ ]";
- mes " ";
- mes " ";
+ mes sprintf("[ ]");
+ mes sprintf(" ");
+ mes sprintf(" ");
next;
mes "Don't know what it means.";
close;
@@ -719,9 +719,9 @@ dic_in01,98,110,5 script Worried Piom#a 4_MAN_PIOM6,{
close;
}
mes "[Worried Piom]";
- mes " ";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
}
@@ -734,8 +734,8 @@ dic_in01,98,96,3 script Lost Galten#a 4_MAN_GALTUN1,{
close;
}
mes "[Lost Galten]";
- mes " ";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
}
diff --git a/npc/re/events/halloween_2013.txt b/npc/re/events/halloween_2013.txt
index 3d72fc6b0..92050128a 100644
--- a/npc/re/events/halloween_2013.txt
+++ b/npc/re/events/halloween_2013.txt
@@ -472,7 +472,7 @@ niflheim,179,168,5 script Kentucky#2013HE 4_NFCOCK,{
close;
}
-niflheim,177,166,8 script Chicken#2013HE 4_NFCOCK,{
+niflheim,177,166,0 script Chicken#2013HE 4_NFCOCK,{
mes "[Chicken]";
mes "Hey Kentucky!!";
mes "You are eating alone too much!";
diff --git a/npc/re/events/halloween_2014.txt b/npc/re/events/halloween_2014.txt
index 65afecedc..c0677b2ef 100644
--- a/npc/re/events/halloween_2014.txt
+++ b/npc/re/events/halloween_2014.txt
@@ -29,12 +29,6 @@
//= along with this program. If not, see <http://www.gnu.org/licenses/>.
//=========================================================================
//= Halloween Event (2014)
-//================= File Encoding =========================================
-//= CP-949 (EUC-KR compatible). Do NOT read/save it as UTF-8.
-//= -If the encoding is correct, the next three lines have the same length-
-//= ============ ġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġ ============
-//= ============ ============================================= ============
-//= ============ ============
//================= Description ===========================================
//= The Official 2014 Halloween Event
//=
@@ -692,7 +686,7 @@ niflheim,196,185,3 script Bolak#14hal 4_M_DRAKE,{
mes "You could be a 'fake'!";
next;
mes "[Nathan]";
- mes "Da...d¡¦?";
+ mes "Da...d...?";
next;
mes "[Bolak]";
mes "Nathan!! Even you doubt your own father?";
diff --git a/npc/re/instances/OldGlastHeim.txt b/npc/re/instances/OldGlastHeim.txt
index c8cca19a4..bf201d3cd 100644
--- a/npc/re/instances/OldGlastHeim.txt
+++ b/npc/re/instances/OldGlastHeim.txt
@@ -9,7 +9,9 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2013-2015 Hercules Dev Team
+//= Copyright (C) 2013-2016 Hercules Dev Team
+//= Copyright (C) Ridley
+//= Copyright (C) Exneval
//= Copyright (C) Euphy
//= Copyright (C) Heris
//= Copyright (C) Ziu
@@ -32,181 +34,218 @@
//= Discover the history of events that took place in the Glast Heim castle
//= and how it ended up in ruins.
//================= Current Version =======================================
-//= 1.1
+//= 1.2
//=========================================================================
-
1@gl_k mapflag src4instance
2@gl_k mapflag src4instance
glast_01,204,273,6 script Hugin#ghinstance 4_M_SAGE_C,{
- mes "^ff0000This isn't considered a normal progression dungeon. Please note this point.^000000";
- next;
- mes "[Hugin]";
- mes "Huh? You feel like you have seen me in different places? I see. What can I say?";
+ if (BaseLevel < 130) { // iRO text
+ mes("[Hugin]");
+ mes("Why don't you come back after becoming stronger Maybe, level 130.");
+ close;
+ }
+ if (!questprogress(12316)) {
+ mes("[Hugin]");
+ mes("A long time ago, this castle did not look like this.");
+ next;
+ mes("[Hugin]");
+ mes("Ah I'm sorry. I'm muttering in front of a stranger.");
+ next;
+ mes("[Hugin]");
+ mes("My name is Hugin. I'm studying the dimensional gap between time and space.");
+ next;
+ select("There's something like that here?");
+ mes("[Hugin]");
+ mes("Have you ever wondered about the history of Glast Heim?");
+ next;
+ mes("[Hugin]");
+ mes("There was a King named Shumiche who was known as a tyrant in the history of the Rune-Midgarts Kingdom.");
+ next;
+ mes("[Hugin]");
+ mes("Time will reveal the true answers if we look in the right places.");
+ next;
+ if (select("I don't care about history", "That is interesting. Find anything?") == 1) {
+ mes("[Hugin]");
+ mes("Really? Hmm, please come back later when you are interested then.");
+ close;
+ }
+ mes("[Hugin]");
+ mes("Actually, dimensional time travel is possible but I'm so afraid to go there.");
+ next;
+ mes("[Hugin]");
+ mes("Yes! It might be possible for you.");
+ next;
+ mes("[Hugin]");
+ mes("Do you want to time travel?");
+ next;
+ if (select("No thanks.", "Yes, of course I do!") == 1) {
+ mes("[Hugin]");
+ mes("Really? But, jumping gigawatts like this is such a great opportunity.");
+ close;
+ }
+ mes("[Hugin]");
+ mes("I knew that you would understand what I said. Well, please tell what you gonna do.");
+ setquest(12316);
+ next;
+ }
+ mes("[Hugin]");
+ mes("Umm? Did you see me at another place? I don't think so. What about this time?");
next;
- .@ghins_time = questprogress(12317,PLAYTIME);
- if (!.@ghins_time) {
-
+ if (!questprogress(12317, PLAYTIME)) {
.@party_id = getcharid(1);
.@p_name$ = getpartyname(.@party_id);
.@md_name$ = "Old Glast Heim";
-
- if (!instance_check_party(.@party_id,2)) { // Custom
- mes "[Hugin]";
- mes "Where are your party members?";
+ if (!instance_check_party(.@party_id)) {
+ mes("[Hugin]");
+ mes("Why don't you make a party with more than 1 person and talk to me again?");
close;
}
-
- if (getcharid(0) == getpartyleader(.@party_id,2))
- .@menu$ = "Create the time gap.:Enter the Old Glast Heim.:Cancel.";
+ if (!questprogress(12318, HUNTING))
+ setquest 12318;
+ if (getcharid(0) == getpartyleader(.@party_id, 2))
+ .@menu1$ = "Generate Time Gap";
else
- .@menu$ = ":Enter the Old Glast Heim.:Cancel.";
- switch(select(.@menu$)) {
+ .@menu1$ = "";
+ switch (select(.@menu1$, "Enter Old Glast Heim", "Cancel")) {
case 1:
- .@instance = instance_create(.@md_name$,.@party_id);
+ if (getcharid(0) != getpartyleader(.@party_id, 2))
+ end;
+ .@instance = instance_create(.@md_name$, .@party_id);
if (.@instance < 0) {
- mes "Party Name: "+.@p_name$;
- mes "Party Leader: "+strcharinfo(0);
- mes "^0000ff"+.@md_name$+" ^000000- Reservation Failed!";
+ mesf("Party Name: %s", .@p_name$);
+ mesf("Party Leader: %s", strcharinfo(0));
+ mesf("^0000ff%s^000000 - Reservation Failed!", .@md_name$);
close;
}
- if (instance_attachmap("1@gl_k",.@instance) == "" || instance_attachmap("2@gl_k",.@instance) == "") {
- mes "^0000ff"+.@md_name$+"^000000 - Reservation Failed!";
+ if (instance_attachmap("1@gl_k", .@instance) == "" || instance_attachmap("2@gl_k", .@instance) == "") {
+ mesf("^0000FF%s^000000 - Reservation Failed!", .@md_name$);
instance_destroy(.@instance);
close;
}
- instance_set_timeout 3600,300,.@instance;
+ instance_set_timeout(3600, 300, .@instance);
instance_init(.@instance);
- mes "[Hugin]";
- mes "The time gap was created. When you're ready, talk to me again.";
+ mes("[Hugin]");
+ mes("The time gap was created. When you're ready, talk to me again.");
close;
case 2:
- if( has_instance("1@gl_k") == "" ) {
- mes "The memorial dungeon "+.@md_name$+" does not exist.";
- mes "The party leader did not generate the dungeon yet.";
+ if (has_instance("1@gl_k") == "" ) {
+ mesf("The memorial dungeon ^0000FF%s^000000 does not exist.\r"
+ "The party leader did not generate the dungeon yet.", .@md_name$);
close;
- } else {
- mapannounce "glast_01",strcharinfo(0)+", member of the party "+.@p_name$+" entered the instance "+.@md_name$+".",bc_map,"0x00ff99";
- setquest 12317;
- setquest 12318;
- warp "1@gl_k",150,20;
- end;
}
+ mapannounce("glast_01", sprintf(_$("%s, member of the party %s entered the instance %s."), strcharinfo(0), .@p_name$, .@md_name$), bc_map, C_SPRINGGREEN);
+ setquest 12317;
+ warp "1@gl_k", 150, 20;
+ end;
case 3:
close;
}
- } else if (.@ghins_time == 1) {
- mes "[Hugin]";
- mes "Oh, geez.";
- mes "Your body is still under the effects of time travel. In this state, you will not be able to travel again.";
+ } else if (questprogress(12317, PLAYTIME) == 1) {
+ mes("[Hugin]");
+ mes("Oh, my... You still have after-effects of time travel. You can't travel in this condition.");
+ if (questprogress(12322) == 1) {
+ erasequest 12322;
+ }
next;
- mes "[Hugin]";
- mes "You should rest and come back later for more.";
+ mes("[Hugin]");
+ mes("Staying healthy is important so please take a break and come back again later.");
close;
} else {
- mes "^0000ffOld Glast Heim access trail has been cleared. It is now possible to talk to Hugin.^000000";
+ mes("^0000FFAll trace of access to Old Glast Heim have been removed. Now you can talk with Hugin again.^000000");
erasequest 12317;
- if (questprogress(12318)) erasequest 12318;
- if (questprogress(12319)) erasequest 12319;
+ if (questprogress(12318))
+ erasequest 12318;
+ if (questprogress(12319))
+ erasequest 12319;
close;
}
}
-//== Floor 1 ===============================================
-1@gl_k,149,41,6 script Varmunt#ghinstance1 4_M_BARMUND,{
- if (getcharid(0) == getpartyleader(getcharid(1),2)) {
- mes "Hey ^0000ffguys^000000, were you sent here to help me?";
- npctalk "Hey guys, were you sent here to help me?";
- cutin "gl_barmund1",2;
- next;
- select("Oh. Well, about that...");
- mes "["+strcharinfo(0)+"]";
- mes "Oh yeah, hahaha, we were told to meet someone called Varmunt.";
- unittalk getcharid(3),"Oh yeah, hahaha, we were told to meet someone called Varmunt.";
- next;
- mes "[Varmunt]";
- mes "We don't have time. We must tell Sir Heinrich about Himmelmez's invasion.";
- npctalk "We don't have time. We must tell Sir Heinrich about Himmelmez's invasion.";
- cutin "gl_barmund2",2;
- next;
- select("What Himmelmez...");
- mes "["+strcharinfo(0)+"]";
- mes "Himmelmez? Who the hell is she?";
- unittalk getcharid(3),"Himmelmez? Who the hell is she?";
- next;
- mes "[Varmunt]";
- mes "Didn't anybody give you the basic informations?";
- npctalk "Didn't anybody give you the basic informations?";
- cutin "gl_barmund3",2;
- next;
- mes "[Varmunt]";
- mes "The Valkyrie of the dead. She's after the Ymir's Heart pieces hidden here.";
- npctalk "The Valkyrie of the dead. She's after the Ymir's Heart pieces hidden here";
- cutin "gl_barmund2",2;
- next;
- mes "[Varmunt]";
- mes "She's capable of destroying the whole castle for this purpose.";
- npctalk "She's capable of destroying the whole castle for this purpose.";
- next;
- mes "[Varmunt]";
- mes "Hurry up! Inform Sir Heinrich that Himmelmez is coming. I will briefly explore the enchantments she made to this place!";
- npctalk "Hurry up! Inform Sir Heinrich that Himmelmez is coming. I will briefly explore the enchantments she made to this place!";
- close2;
- cutin "gl_barmund2",255;
- donpcevent instance_npcname("Varmunt#ghinstance1")+"::OnDisable2";
- end;
- } else {
- mes "[Varmunt]";
- mes "Where is he? We";
- mes "need his help.";
- cutin "gl_barmund2",2;
+// Floor 1
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+1@gl_k,149,41,6 script Varmundt#ghinstance1 4_M_BARMUND,{
+ if (getcharid(0) != getpartyleader(getcharid(1), 2)) {
+ cutin("gl_barmund2", 2);
+ mes("[Varmundt]");
+ mes("Where's your leader? I need his help.");
close2;
- cutin "gl_barmund2",255;
+ cutin("gl_barmund2", 255);
end;
}
-OnInstanceInit:
- donpcevent instance_npcname("Varmunt#ghinstance1")+"::OnEnable";
- end;
-OnDisable:
- hideonnpc instance_npcname("Varmunt#ghinstance1");
+ cutin("gl_barmund1", 2);
+ mes("[Varmundt]");
+ mes("Are you the one ^0000FFHerico^000000 sent to help me?");
+ npctalk(_("Are you the one Herico sent to help me?"));
+ next;
+ select("Oh. Well I...");
+ mesf("[%s]", strcharinfo(0));
+ mes("Ah yes, I am. Herico told me to meet you.");
+ unittalk(getcharid(3), _("Ah yes, I am. Herico told me to meet you."));
+ next;
+ cutin("gl_barmund2", 2);
+ mes("[Varmundt]");
+ mes("We don't have much time. We must report to Sir. Heinrich about Himelmez's invasion.");
+ npctalk(_("We don't have much time. We must report to Sir. Heinrich about Himelmez's invasion."));
+ next;
+ select("Himelmez...");
+ mesf("[%s]", strcharinfo(0));
+ mes("Who is Himelmez?");
+ unittalk(getcharid(3), _("Who is Himelmez?"));
+ next;
+ cutin("gl_barmund3", 2);
+ mes("[Varmundt]");
+ mes("Herico didn't tell you?");
+ npctalk(_("Herico didn't tell you?"));
+ next;
+ cutin("gl_barmund2", 2);
+ mes("[Varmundt]");
+ mes("She is the Ruler of Death, Dead man's Valkyrie. Himelmez is looking to take the heart of Ymir from us.");
+ npctalk(_("She is the Ruler of Death, Dead man's Valkyrie. Himelmez is looking to take the heart of Ymir from us."));
+ next;
+ mes("[Varmundt]");
+ mes("She might even destroy this whole castle if she wanted to.");
+ npctalk(_("She might even destroy this whole castle if she wanted to."));
+ next;
+ mes("[Varmundt]");
+ mes("Hurry! Report to Sir. Heinrich about Himelmez. I must check the defense barrier here!");
+ npctalk(_("Hurry! Report to Sir. Heinrich about Himelmez. I must check the defense barrier here!"));
+ close2;
+ cutin("gl_barmund2", 255);
+ donpcevent(instance_npcname("Varmundt#ghinstance1")+"::OnDisable");
end;
-OnDisable2:
- hideonnpc instance_npcname("Varmunt#ghinstance1");
- for(.@i = 1; .@i<=20; .@i += 4) {
- hideoffnpc instance_npcname("Khalitzburg Crusader#"+.@i);
- hideoffnpc instance_npcname("Khalitzburg Crusader#"+(.@i+1));
- hideoffnpc instance_npcname("White Knight#"+(.@i+2));
- hideoffnpc instance_npcname("White Knight#"+(.@i+3));
- }
- hideoffnpc instance_npcname("Khalitzburg Crusader#21");
- hideoffnpc instance_npcname("Khalitzburg Crusader#22");
+OnInstanceInit:
+ donpcevent instance_npcname("Varmundt#ghinstance1")+"::OnEnable";
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Varmundt#ghinstance1");
hideoffnpc instance_npcname("Heinrich#ghinstance1");
- hideoffnpc instance_npcname("Varmunt#ghinstance2");
+ hideoffnpc instance_npcname("Varmundt#ghinstance2");
end;
+
OnEnable:
- hideoffnpc instance_npcname("Varmunt#ghinstance1");
+ hideoffnpc instance_npcname("Varmundt#ghinstance1");
end;
}
-1@gl_k,145,54,6 script Khalitzburg Crusader#1 4_F_KHALITZBURG,{
- mes "["+strnpcinfo(1)+"]";
- switch((atoi(strnpcinfo(2)) + 1) / 2) {
- case 1: mes "Would I be recruited?"; break;
- case 2: mes "May I help you?"; break;
- case 3: mes "..."; break;
- case 4: mes "I do not like to chit-chat during work."; break;
- case 5: mes "The aura of the castle has changed, don't you think? Something like a presence seemed to appear a little while ago."; break;
- case 6: mes "I wonder what commandant Varmunt is doing. I heard people are running away..."; break;
- case 7: mes "Quiet please."; break;
- case 8: mes "A fuss seems to be near."; break;
- case 9: mes "A dream last night really bothered me. My mother used to say that these dreams may come true..."; break;
- case 10: mes "Is Varmunt going with you? The commandant is waiting for you."; break;
- case 11: mes "Soon it's time to change shifts. I wonder what happened to the other knights."; break;
+1@gl_k,145,54,6 script Khalitzburg Knight#1 4_F_KHALITZBURG,{
+ mesf("[%s]", strnpcinfo(1));
+ switch ((atoi(strnpcinfo(2)) + 1) / 2) {
+ case 1: mes("Is there something you need?"); break;
+ case 2: mes("What can I do for you?"); break;
+ case 3: mes("..."); break;
+ case 4: mes("I do not like to chat during work."); break;
+ case 5: mes("Doesn't this castle seem weird all of a sudden? Something's not quite right."); break;
+ case 6: mes("How do you know Varmundt? I heard that he's not really a friendly man..."); break;
+ case 7: mes("Orders please."); break;
+ case 8: mes("Please do not make a mess here."); break;
+ case 9: mes("I had a weird dream last night. My mom was in it... Wonder if she is ok..."); break;
+ case 10: mes("Are you wit Varmundt? Commander is waiting for you."); break;
+ case 11: mes("My work shift will be over soon, but the next crew is not coming."); break;
}
close;
-OnInstanceInit:
OnDisable:
hideonnpc instance_npcname(strnpcinfo(0));
end;
@@ -214,580 +253,485 @@ OnEnable:
hideoffnpc instance_npcname(strnpcinfo(0));
end;
}
-1@gl_k,154,54,3 duplicate(Khalitzburg Crusader#1) Khalitzburg Crusader#2 4_F_KHALITZBURG
-1@gl_k,145,59,6 duplicate(Khalitzburg Crusader#1) White Knight#3 4_WHITEKNIGHT
-1@gl_k,154,59,3 duplicate(Khalitzburg Crusader#1) White Knight#4 4_WHITEKNIGHT
-1@gl_k,145,64,6 duplicate(Khalitzburg Crusader#1) Khalitzburg Crusader#5 4_F_KHALITZBURG
-1@gl_k,154,64,3 duplicate(Khalitzburg Crusader#1) Khalitzburg Crusader#6 4_F_KHALITZBURG
-1@gl_k,145,69,6 duplicate(Khalitzburg Crusader#1) White Knight#7 4_WHITEKNIGHT
-1@gl_k,154,69,3 duplicate(Khalitzburg Crusader#1) White Knight#8 4_WHITEKNIGHT
-1@gl_k,145,74,6 duplicate(Khalitzburg Crusader#1) Khalitzburg Crusader#9 4_F_KHALITZBURG
-1@gl_k,154,74,3 duplicate(Khalitzburg Crusader#1) Khalitzburg Crusader#10 4_F_KHALITZBURG
-1@gl_k,145,79,6 duplicate(Khalitzburg Crusader#1) White Knight#11 4_WHITEKNIGHT
-1@gl_k,154,79,3 duplicate(Khalitzburg Crusader#1) White Knight#12 4_WHITEKNIGHT
-1@gl_k,145,84,6 duplicate(Khalitzburg Crusader#1) Khalitzburg Crusader#13 4_F_KHALITZBURG
-1@gl_k,154,84,3 duplicate(Khalitzburg Crusader#1) Khalitzburg Crusader#14 4_F_KHALITZBURG
-1@gl_k,145,89,6 duplicate(Khalitzburg Crusader#1) White Knight#15 4_WHITEKNIGHT
-1@gl_k,154,89,3 duplicate(Khalitzburg Crusader#1) White Knight#16 4_WHITEKNIGHT
-1@gl_k,145,94,6 duplicate(Khalitzburg Crusader#1) Khalitzburg Crusader#17 4_F_KHALITZBURG
-1@gl_k,154,94,3 duplicate(Khalitzburg Crusader#1) Khalitzburg Crusader#18 4_F_KHALITZBURG
-1@gl_k,145,99,6 duplicate(Khalitzburg Crusader#1) White Knight#19 4_WHITEKNIGHT
-1@gl_k,154,99,3 duplicate(Khalitzburg Crusader#1) White Knight#20 4_WHITEKNIGHT
-1@gl_k,145,104,6 duplicate(Khalitzburg Crusader#1) Khalitzburg Crusader#21 4_F_KHALITZBURG
-1@gl_k,154,104,3 duplicate(Khalitzburg Crusader#1) Khalitzburg Crusader#22 4_F_KHALITZBURG
+
+1@gl_k,154,54,3 duplicate(Khalitzburg Knight#1) Khalitzburg Knight#2 4_F_KHALITZBURG
+1@gl_k,145,59,6 duplicate(Khalitzburg Knight#1) White Knight#3 4_WHITEKNIGHT
+1@gl_k,154,59,3 duplicate(Khalitzburg Knight#1) White Knight#4 4_WHITEKNIGHT
+1@gl_k,145,64,6 duplicate(Khalitzburg Knight#1) Khalitzburg Knight#5 4_F_KHALITZBURG
+1@gl_k,154,64,3 duplicate(Khalitzburg Knight#1) Khalitzburg Knight#6 4_F_KHALITZBURG
+1@gl_k,145,69,6 duplicate(Khalitzburg Knight#1) White Knight#7 4_WHITEKNIGHT
+1@gl_k,154,69,3 duplicate(Khalitzburg Knight#1) White Knight#8 4_WHITEKNIGHT
+1@gl_k,145,74,6 duplicate(Khalitzburg Knight#1) Khalitzburg Knight#9 4_F_KHALITZBURG
+1@gl_k,154,74,3 duplicate(Khalitzburg Knight#1) Khalitzburg Knight#10 4_F_KHALITZBURG
+1@gl_k,145,79,6 duplicate(Khalitzburg Knight#1) White Knight#11 4_WHITEKNIGHT
+1@gl_k,154,79,3 duplicate(Khalitzburg Knight#1) White Knight#12 4_WHITEKNIGHT
+1@gl_k,145,84,6 duplicate(Khalitzburg Knight#1) Khalitzburg Knight#13 4_F_KHALITZBURG
+1@gl_k,154,84,3 duplicate(Khalitzburg Knight#1) Khalitzburg Knight#14 4_F_KHALITZBURG
+1@gl_k,145,89,6 duplicate(Khalitzburg Knight#1) White Knight#15 4_WHITEKNIGHT
+1@gl_k,154,89,3 duplicate(Khalitzburg Knight#1) White Knight#16 4_WHITEKNIGHT
+1@gl_k,145,94,6 duplicate(Khalitzburg Knight#1) Khalitzburg Knight#17 4_F_KHALITZBURG
+1@gl_k,154,94,3 duplicate(Khalitzburg Knight#1) Khalitzburg Knight#18 4_F_KHALITZBURG
+1@gl_k,145,99,6 duplicate(Khalitzburg Knight#1) White Knight#19 4_WHITEKNIGHT
+1@gl_k,154,99,3 duplicate(Khalitzburg Knight#1) White Knight#20 4_WHITEKNIGHT
+1@gl_k,145,104,6 duplicate(Khalitzburg Knight#1) Khalitzburg Knight#21 4_F_KHALITZBURG
+1@gl_k,154,104,3 duplicate(Khalitzburg Knight#1) Khalitzburg Knight#22 4_F_KHALITZBURG
1@gl_k,149,100,6 script Heinrich#ghinstance1 4_M_HEINRICH,{
- if (getcharid(0) == getpartyleader(getcharid(1),2)) {
- cutin "gl_heinrich2",2;
- select("Heinrich, about the castle...");
- mes "["+strcharinfo(0)+"]";
- mes "Do you know what is happening now in the castle, Heinrich?";
- unittalk getcharid(3),"Do you know what is happening now in the castle, Heinrich?";
- next;
- mes "[Heinrich]";
- mes "You are the adventurers who have come with Varmunt, right?";
- npctalk "You are the adventurers who have come with Varmunt, right?";
- next;
- mes "[Heinrich]";
- mes "What can I do for you? Is there something wrong?";
- npctalk "What can I do for you? Is there something wrong?";
- next;
- select("The Ymir's Heart. Himmelmez...");
- mes "["+strcharinfo(0)+"]";
- mes "Himmelmez, the Valkyrie of the dead is looking to get a piece of the Ymir's heart hidden in the castle!";
- unittalk getcharid(3),"Himmelmez, the Valkyrie of the dead is looking to get a piece of the Ymir's heart hidden in the castle!";
- next;
- mes "[Heinrich]";
- mes "Haha. That's a nice joke. Now tell me what brings you here.";
- npctalk "Haha. That's a nice joke. Now tell me what brings you here.";
- cutin "gl_heinrich1",2;
- next;
- mes "[Varmunt]";
- mes "I am not joking Heinrich, Sir. Now, if my judgement is correct, she will be here soon.";
- donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk1";
- cutin "gl_barmund2",2;
- next;
- mes "[Varmunt]";
- mes "I trust this guy following me. The Ymir's Heart pieces must be hidden in a safe place before Himmelmez takes them!";
- donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk2";
- next;
- select("Even if you do not believe...");
- mes "["+strcharinfo(0)+"]";
- mes "Even if you don't believe it, do something. We do not have much time!";
- unittalk getcharid(3),"Even if you don't believe it, do something. We do not have much time!";
- cutin "gl_barmund2",255;
- next;
- mes "[Heinrich]";
- mes "I will be glad if you give me two minutes, please. But now the king isn't in his room.";
- npctalk "I will be glad if you give me two minutes, please. But now the king isn't in his room.";
- cutin "gl_heinrich1",2;
- next;
- mes "[Heinrich]";
- mes "But I think that with such a busy agenda, he won't be able to take care of this.";
- npctalk "But I think that with such a busy agenda, he won't be able to take care of this.";
- donpcevent instance_npcname("Heinrich#ghinstance1")+"::OnDisable";
- donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnEnable";
- donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnEnable";
- donpcevent instance_npcname("#talkinstance1")+"::OnEnable";
- mapannounce instance_mapname("1@gl_k"), "???? Shout: Ohohohoho~!",bc_map,"0xFFFF00";
- close2;
- cutin "gl_heinrich1",255;
- end;
- } else {
- mes "[Heinrich]";
- mes "Where is your representative?";
- mes "I need to talk to him.";
- cutin "gl_heinrich2",2;
+ if (getcharid(0) != getpartyleader(getcharid(1), 2)) {
+ cutin("gl_heinrich2", 2);
+ mes("[Heinrich]");
+ mes("Where is your leader? I must talk to him.");
close2;
- cutin "gl_heinrich2",255;
+ cutin("gl_heinrich2", 255);
end;
}
+ cutin("gl_heinrich2", 2);
+ select("Sir. Heinrich. Varmundt...");
+ mesf("[%s]", strcharinfo(0));
+ mes("Sir. Heinrich. Do you know what is happening in the castle now?");
+ unittalk(getcharid(3), _("Sir. Heinrich. Do you know what is happening in the castle now?"));
+ next;
+ mes("[Heinrich]");
+ mes("Aren't you the adventurer that came along with Varmundt?");
+ npctalk(_("Aren't you the adventurer that came along with Varmundt?"));
+ next;
+ mes("[Heinrich]");
+ mes("What is it? Something wrong with the castle?");
+ npctalk(_("What is it? Something wrong with the castle?"));
+ next;
+ select("Himelmez's invasion...");
+ mesf("[%s]", strcharinfo(0));
+ mes("Dead man's Valkyrie, Himelmez is coming to take the Ymir's Heart piece hidden inside this castle!");
+ unittalk(getcharid(3), _("Dead man's Valkyrie, Himelmez is coming to take the Ymir's Heart piece hidden inside this castle!"));
+ next;
+ cutin("gl_heinrich1", 2);
+ mes("[Heinrich]");
+ mes("Haha. Funny. Do you really think that is possible?");
+ npctalk(_("Haha. Funny. Do you really think that is possible?"));
+ next;
+ cutin("gl_barmund2", 2);
+ mes("[Varmundt]");
+ mes("I'm not kidding, Sir. Heinrich. If I'm correct, then she will be here very soon.");
+ npctalk(_("I'm not kidding, Sir. Heinrich. If I'm correct, then she will be here very soon."), instance_npcname("Varmundt#ghinstance2"));
+ next;
+ mes("[Varmundt]");
+ mes("We must hide the heart piece to a safe place before Himelmez's attack starts!");
+ npctalk(_("We must hide the heart piece to a safe place before Himelmez's attack starts!"), instance_npcname("Varmundt#ghinstance2"));
+ next;
+ select("Even if you don't believe me...");
+ mesf("[%s]", strcharinfo(0));
+ mes("I can't make you believe me, but there's no time to argue!");
+ unittalk(getcharid(3), _("I can't make you believe me, but there's no time to argue!"));
+ cutin("gl_barmund2", 255);
+ next;
+ cutin("gl_heinrich1", 2);
+ mes("[Heinrich]");
+ mes("Thank you for the help. But, we don't even have our king with us right now.");
+ npctalk(_("Thank you for the help. But, we don't even have our king with us right now."));
+ next;
+ mes("[Heinrich]");
+ mes("We cannot risk moving the heart just because some stranger says so.");
+ npctalk(_("We cannot risk moving the heart just because some stranger says so."));
+ close2;
+ donpcevent(instance_npcname("Heinrich#ghinstance1")+"::OnDisable");
+ donpcevent(instance_npcname("Heinrich#ghinstance2")+"::OnEnable");
+ donpcevent(instance_npcname("Himelmez#ghinstance1")+"::OnEnable");
+ donpcevent(instance_npcname("#talkinstance1")+"::OnEnable");
+ mapannounce(instance_mapname("1@gl_k"), _("????: Muahahahaha~!"), bc_map, C_YELLOW, FW_NORMAL, 18);
+ cutin("gl_heinrich1", 255);
+ end;
+
OnInstanceInit:
OnDisable:
hideonnpc instance_npcname("Heinrich#ghinstance1");
end;
+
OnEnable:
hideoffnpc instance_npcname("Heinrich#ghinstance1");
end;
}
-1@gl_k,152,97,3 script Varmunt#ghinstance2 4_M_BARMUND,{
+1@gl_k,152,97,3 script Varmundt#ghinstance2 4_M_BARMUND,{
end;
+
OnInstanceInit:
OnDisable:
- hideonnpc instance_npcname("Varmunt#ghinstance2");
+ hideonnpc instance_npcname("Varmundt#ghinstance2");
end;
+
OnEnable:
- hideoffnpc instance_npcname("Varmunt#ghinstance2");
- end;
-OnTalk1:
- npctalk "I am not joking Heinrich, Sir. Now, if my judgement is correct, she will be here soon.";
- end;
-OnTalk2:
- npctalk "I trust this guy following me. The Ymir's Heart pieces must be hidden in a safe place before Himmelmez takes them!";
- end;
-OnTalk3:
- npctalk "Himmelmez!! Through the cracks!";
- end;
-OnTalk4:
- npctalk "Unbelievable. My men are...This kind of thing is not possible!";
- end;
-OnTalk5:
- npctalk "Heinrich, Sir! I need a quick decision.";
- end;
-OnTalk6:
- npctalk "To prevent other attacks, go chase her!";
- end;
-OnTalk7:
- npctalk "Now, your help is desperately needed. I hopefully ask you.";
+ hideoffnpc instance_npcname("Varmundt#ghinstance2");
end;
}
1@gl_k,149,97,6 script Heinrich#ghinstance2 4_M_HEINRICH,{
end;
+
OnInstanceInit:
OnDisable:
hideonnpc instance_npcname("Heinrich#ghinstance2");
end;
+
OnEnable:
hideoffnpc instance_npcname("Heinrich#ghinstance2");
end;
-OnTalk1:
- npctalk "Who?!";
- end;
-OnTalk2:
- npctalk "That who rules the dead? No doubt, a pretty story. Here, some tea will be served to entertain the ladies. Unfortunately, I do not...";
- end;
-OnTalk3:
- npctalk "What did you say?";
- end;
-OnTalk4:
- npctalk "The King responded to the invitation of the Rune Midgard's Royal Family and hasn't come back yet.";
- end;
-OnTalk5:
- npctalk "Just leave before you get in trouble. This is the King's will!";
- end;
-OnTalk6:
- npctalk "Damn! She has detected the position of the Ymir's Heart pieces.";
- end;
-OnTalk7:
- npctalk "Now, Khalitzburg Crusaders and White Knights, follow me...";
- end;
-OnTalk8:
- npctalk "Unbelievable. My men are...This kind of thing is not possible!";
- end;
-OnTalk9:
- npctalk "I'm sorry...";
- end;
-OnTalk10:
- npctalk "I'm sorry, my lord! Do not forgive me!";
- end;
}
1@gl_k,149,100,6 script Heinrich#ghinstance3 4_M_HEINRICH,{
end;
+
OnInstanceInit:
OnDisable:
hideonnpc instance_npcname("Heinrich#ghinstance3");
end;
+
OnEnable:
hideoffnpc instance_npcname("Heinrich#ghinstance3");
end;
-OnTalk1:
- npctalk "I cannot believe I killed my men with my own hands!";
- end;
-OnTalk2:
- npctalk "Varmunt is right about that. Now is not the time to regret.";
- end;
-OnTalk3:
- npctalk "People, gather around and follow my orders.";
- end;
-OnTalk4:
- npctalk "Himmelmez is turning into monsters all the people she put to sleep.";
- end;
-OnTalk5:
- npctalk "I don't know if there are survivors around here yet.";
- end;
-OnTalk6:
- npctalk "If there are survivors from this evil thing, please rescue them.";
- end;
-OnTalk7:
- npctalk "With Varmunt by my side, I'm going to chase Himmelmez down.";
- end;
-OnTalk8:
- npctalk "Hurry up Varmunt, let's chase her down.";
- end;
}
-1@gl_k,149,89,1 script Himmelmez#ghinstance1 4_F_HIMEL,{
+1@gl_k,149,89,1 script Himelmez#ghinstance1 4_F_HIMEL,{
end;
+
OnInstanceInit:
OnDisable:
- hideonnpc instance_npcname("Himmelmez#ghinstance1");
+ hideonnpc instance_npcname("Himelmez#ghinstance1");
end;
+
OnEnable:
- hideoffnpc instance_npcname("Himmelmez#ghinstance1");
- end;
-OnTalk1:
- npctalk "This~ Did I interrupt your conversation? The thing is, it's been too long since the last guests saw some sadness spread...";
- end;
-OnTalk2:
- npctalk "My name is Lisa Kahn Himmelmez. I am called the Valkyrie of the dead, master of the Dullahan.";
- end;
-OnTalk3:
- npctalk "There's no need to pretend to be so laid back. Don't bluff about the whereabouts of you Majesty and things will be alright.";
- end;
-OnTalk4:
- npctalk "Hohoho, do you have any questions? You're a really mysterious man.";
- end;
-OnTalk5:
- npctalk "Not coveting the king's throne, you're such a stupid man, only waiting for his return. Your innocence is true, I love it.";
- end;
-OnTalk6:
- npctalk "You make me wish we hadn't met in this situation. Too bad we did.";
- end;
-OnTalk7:
- npctalk "Well~ Today, with such a busy commandant, I won't be able to talk as much as I'd love for you to contemplate my explanation~";
- end;
-OnTalk8:
- npctalk "I gotta get my job done. Meanwhile why don't you meet my men? Hohoho.";
+ hideoffnpc instance_npcname("Himelmez#ghinstance1");
end;
}
-//== Control Timer =========================================
+// Control Timer
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1@gl_k,0,0,0 script #talkinstance1 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#talkinstance1");
end;
+
OnEnable:
enablenpc instance_npcname("#talkinstance1");
initnpctimer;
end;
-OnTimer5000:
- donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk1";
+
+OnTimer1500:
+ npctalk(_("Who are you?"), instance_npcname("Heinrich#ghinstance2"));
end;
-OnTimer10000:
- donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk1";
+
+OnTimer4500:
+ npctalk(_("Well well~ Am I interrupting you? Weren't you expecting me?"), instance_npcname("Himelmez#ghinstance1"));
end;
-OnTimer15000:
- donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk3";
+
+OnTimer10000:
+ npctalk(_("Himelmez!! Already!"), instance_npcname("Varmundt#ghinstance2"));
end;
-OnTimer20000:
- donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk2";
+
+OnTimer17500:
+ npctalk(_("My name is Lisa Kahn Himelmez. Master of Dullahan, Dead man's Valkyrie, that's what they call me."), instance_npcname("Himelmez#ghinstance1"));
end;
-OnTimer25000:
- donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk2";
+
+OnTimer22000:
+ npctalk(_("Aren't you a little too feminine to be the Ruler of death? We are not afraid of you..."), instance_npcname("Heinrich#ghinstance2"));
end;
-OnTimer30000:
- donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk3";
+
+OnTimer28500:
+ npctalk(_("Let's see if you can relax like that after you find out where your king is."), instance_npcname("Himelmez#ghinstance1"));
end;
-OnTimer35000:
- donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk3";
+
+OnTimer36000:
+ npctalk(_("What?"), instance_npcname("Heinrich#ghinstance2"));
end;
-OnTimer45000:
- donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk4";
+
+OnTimer41000:
+ npctalk(_("Hmm, now I have your attention do I not?"), instance_npcname("Himelmez#ghinstance1"));
end;
-OnTimer50000:
- donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk5";
+
+OnTimer54000:
+ npctalk(_("It's a pity to meet you in a situation like this."), instance_npcname("Himelmez#ghinstance1"));
end;
-OnTimer55000:
- donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk6";
+
+OnTimer59000:
+ npctalk(_("My king is visiting the Rune-Midgarts royal family. He's not back yet."), instance_npcname("Heinrich#ghinstance2"));
end;
-OnTimer60000:
- donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk4";
+
+OnTimer66500:
+ npctalk(_("And now you are trying to trick me, what has happened to him?!"), instance_npcname("Heinrich#ghinstance2"));
end;
-OnTimer65000:
- donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk5";
+
+OnTimer71500:
+ npctalk(_("Well~ I would love to sit down and explain for you, but I'm kind of busy today~"), instance_npcname("Himelmez#ghinstance1"));
end;
-OnTimer70000:
- donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk7";
+
+OnTimer78000:
+ npctalk(_("I have business to take care of. My minions will treat you well enough for me~"), instance_npcname("Himelmez#ghinstance1"));
end;
-OnTimer75000:
- donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnTalk8";
+
+OnTimer84500:
+ npctalk(_("She probably already knows where the Ymir's heart piece is."), instance_npcname("Heinrich#ghinstance2"));
+ donpcevent instance_npcname("Himelmez#ghinstance1")+"::OnDisable";
end;
-OnTimer80000:
- donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk6";
- donpcevent instance_npcname("Himmelmez#ghinstance1")+"::OnDisable";
+
+OnTimer90500:
+ npctalk(_("All Khalitzburg and White Knights should follow me now..."), instance_npcname("Heinrich#ghinstance2"));
end;
-OnTimer85000:
- donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk7";
- hideonnpc instance_npcname("Varmunt#ghinstance1");
- for(.@i = 1; .@i<=20; .@i += 4) {
- hideonnpc instance_npcname("Khalitzburg Crusader#"+.@i);
- hideonnpc instance_npcname("Khalitzburg Crusader#"+(.@i+1));
+OnTimer92000:
+ for (.@i=1; .@i <= 20; .@i += 4) {
+ hideonnpc instance_npcname("Khalitzburg Knight#"+.@i);
+ hideonnpc instance_npcname("Khalitzburg Knight#"+(.@i+1));
hideonnpc instance_npcname("White Knight#"+(.@i+2));
hideonnpc instance_npcname("White Knight#"+(.@i+3));
}
- hideonnpc instance_npcname("Khalitzburg Crusader#21");
- hideonnpc instance_npcname("Khalitzburg Crusader#22");
-
- .@map$ = instance_mapname("1@gl_k");
- .@label$ = instance_npcname("#talkinstance1")+"::OnMyMobDead";
- monster .@map$,145,59,"Abyss Knight",2470,1,.@label$;
- monster .@map$,154,59,"Abyss Knight",2470,1,.@label$;
- monster .@map$,145,69,"Abyss Knight",2470,1,.@label$;
- monster .@map$,154,69,"Abyss Knight",2470,1,.@label$;
- monster .@map$,145,79,"Abyss Knight",2470,1,.@label$;
- monster .@map$,154,79,"Abyss Knight",2470,1,.@label$;
- monster .@map$,145,89,"Abyss Knight",2470,1,.@label$;
- monster .@map$,154,89,"Abyss Knight",2470,1,.@label$;
- monster .@map$,145,99,"Abyss Knight",2470,1,.@label$;
- monster .@map$,154,99,"Abyss Knight",2470,1,.@label$;
-
- for (.@i = 1; .@i <= 22; ++.@i)
- hideoffnpc instance_npcname(".#ghinstance"+.@i);
-
- donpcevent instance_npcname(".#ghinstance22")+"::OnTalkK";
- donpcevent instance_npcname(".#ghinstance21")+"::OnTalkK";
- donpcevent instance_npcname(".#ghinstance18")+"::OnTalkK";
- donpcevent instance_npcname(".#ghinstance17")+"::OnTalkK";
- donpcevent instance_npcname(".#ghinstance14")+"::OnTalkK";
- donpcevent instance_npcname(".#ghinstance13")+"::OnTalkK";
- donpcevent instance_npcname(".#ghinstance10")+"::OnTalkK";
- donpcevent instance_npcname(".#ghinstance9")+"::OnTalkK";
- donpcevent instance_npcname(".#ghinstance6")+"::OnTalkK";
- donpcevent instance_npcname(".#ghinstance5")+"::OnTalkK";
- donpcevent instance_npcname(".#ghinstance2")+"::OnTalkK";
- donpcevent instance_npcname(".#ghinstance1")+"::OnTalkK";
- end;
-OnTimer88000:
- donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk8";
-
- for(.@i = 1; .@i<=20; .@i += 4) {
- hideonnpc instance_npcname(".#ghinstance"+.@i);
- hideonnpc instance_npcname(".#ghinstance"+(.@i+1));
- disablenpc instance_npcname(".#ghinstance"+(.@i+2));
- disablenpc instance_npcname(".#ghinstance"+(.@i+3));
- }
- hideonnpc instance_npcname(".#ghinstance21");
- hideonnpc instance_npcname(".#ghinstance22");
-
+ hideonnpc instance_npcname("Khalitzburg Knight#21");
+ hideonnpc instance_npcname("Khalitzburg Knight#22");
.@map$ = instance_mapname("1@gl_k");
.@label$ = instance_npcname("#talkinstance1")+"::OnMyMobDead";
+ monster .@map$,145,59,"Abysmal Knight",2470,1,.@label$;
+ monster .@map$,154,59,"Abysmal Knight",2470,1,.@label$;
+ monster .@map$,145,69,"Abysmal Knight",2470,1,.@label$;
+ monster .@map$,154,69,"Abysmal Knight",2470,1,.@label$;
+ monster .@map$,145,79,"Abysmal Knight",2470,1,.@label$;
+ monster .@map$,154,79,"Abysmal Knight",2470,1,.@label$;
+ monster .@map$,145,89,"Abysmal Knight",2470,1,.@label$;
+ monster .@map$,154,89,"Abysmal Knight",2470,1,.@label$;
+ monster .@map$,145,99,"Abysmal Knight",2470,1,.@label$;
+ monster .@map$,154,99,"Abysmal Knight",2470,1,.@label$;
monster .@map$,145,54,"Khalitzburg",2471,1,.@label$;
+ unittalk($@mobid[0], _("Water... Someone give me water..."));
monster .@map$,154,54,"Khalitzburg",2471,1,.@label$;
+ unittalk($@mobid[0], "Kkkrrrruughgh...");
monster .@map$,145,64,"Khalitzburg",2471,1,.@label$;
+ unittalk($@mobid[0], _("Sir. Heinrich. Save me..."));
monster .@map$,154,64,"Khalitzburg",2471,1,.@label$;
+ unittalk($@mobid[0], _("I miss my sister..."));
monster .@map$,145,74,"Khalitzburg",2471,1,.@label$;
+ unittalk($@mobid[0], _("Don't leave me alone, help me."));
monster .@map$,154,74,"Khalitzburg",2471,1,.@label$;
+ unittalk($@mobid[0], "Aaarrrrrhhhh");
monster .@map$,145,84,"Khalitzburg",2471,1,.@label$;
+ unittalk($@mobid[0], _("I am so thirsty."));
monster .@map$,154,84,"Khalitzburg",2471,1,.@label$;
+ unittalk($@mobid[0], _("Oh...No...I can't die yet..."));
monster .@map$,145,94,"Khalitzburg",2471,1,.@label$;
+ unittalk($@mobid[0], _("I feel sick to my stomach urrgg"));
monster .@map$,154,94,"Khalitzburg",2471,1,.@label$;
+ unittalk($@mobid[0], _("Can someone..."));
monster .@map$,145,104,"Khalitzburg",2471,1,.@label$;
+ unittalk($@mobid[0], "Arrgg... My body");
monster .@map$,154,104,"Khalitzburg",2471,1,.@label$;
+ unittalk($@mobid[0], _("My throat is burning!"));
+ end;
+
+OnTimer94000:
+ npctalk(_("My men... This can't be happening!"), instance_npcname("Heinrich#ghinstance2"));
end;
-OnTimer93000:
- donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk4";
+
+OnTimer96500:
+ npctalk(_("Sir. Heinrich, they're all monsters. You need to give them rest!"), instance_npcname("Varmundt#ghinstance2"));
end;
-OnTimer97000:
- donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk9";
+
+OnTimer100000:
+ npctalk(_("I'm so sorry..."), instance_npcname("Heinrich#ghinstance2"));
end;
-OnTimer105000:
- donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnTalk10";
- mapannounce instance_mapname("1@gl_k"), "Heinrich's Shout: Dead men, dead men all over the place!",bc_map,"0xFFFF00";
+
+OnTimer103000:
+ npctalk(_("I am sorry, my knights! Forgive me!"), instance_npcname("Heinrich#ghinstance2"));
end;
-OnTimer107000:
- mapannounce instance_mapname("1@gl_k"), "Heinrich's Shout: Everybody! Go back!",bc_map,"0xFFFF00";
+
+OnTimer106000:
+ mapannounce(instance_mapname("1@gl_k"), _("Sir. Heinrich: Death to all!"), bc_map, C_YELLOW, FW_NORMAL, 18);
end;
-OnTimer110000:
+
+OnTimer109000:
+ mapannounce(instance_mapname("1@gl_k"), _("Sir. Heinrich: Go back to the darkness!"), bc_map, C_YELLOW, FW_NORMAL, 18);
+ end;
+
+OnTimer109500:
+ enablenpc instance_npcname(".#ghinstance22");
+ enablenpc instance_npcname(".#ghinstance21");
donpcevent instance_npcname(".#ghinstance22")+"::OnEffect1";
donpcevent instance_npcname(".#ghinstance21")+"::OnEffect1";
end;
-OnTimer110500:
+
+OnTimer110000:
enablenpc instance_npcname(".#ghinstance20");
enablenpc instance_npcname(".#ghinstance19");
+ enablenpc instance_npcname(".#ghinstance18");
+ enablenpc instance_npcname(".#ghinstance17");
donpcevent instance_npcname(".#ghinstance20")+"::OnEffect1";
donpcevent instance_npcname(".#ghinstance19")+"::OnEffect1";
- end;
-OnTimer111000:
donpcevent instance_npcname(".#ghinstance18")+"::OnEffect1";
donpcevent instance_npcname(".#ghinstance17")+"::OnEffect1";
end;
-OnTimer111500:
+
+OnTimer110500:
enablenpc instance_npcname(".#ghinstance16");
enablenpc instance_npcname(".#ghinstance15");
+ enablenpc instance_npcname(".#ghinstance14");
+ enablenpc instance_npcname(".#ghinstance13");
donpcevent instance_npcname(".#ghinstance16")+"::OnEffect1";
donpcevent instance_npcname(".#ghinstance15")+"::OnEffect1";
- end;
-OnTimer112000:
donpcevent instance_npcname(".#ghinstance14")+"::OnEffect1";
donpcevent instance_npcname(".#ghinstance13")+"::OnEffect1";
end;
-OnTimer112500:
+
+OnTimer111000:
enablenpc instance_npcname(".#ghinstance12");
enablenpc instance_npcname(".#ghinstance11");
+ enablenpc instance_npcname(".#ghinstance10");
+ enablenpc instance_npcname(".#ghinstance9");
donpcevent instance_npcname(".#ghinstance12")+"::OnEffect1";
donpcevent instance_npcname(".#ghinstance11")+"::OnEffect1";
- end;
-OnTimer113000:
donpcevent instance_npcname(".#ghinstance10")+"::OnEffect1";
donpcevent instance_npcname(".#ghinstance9")+"::OnEffect1";
end;
-OnTimer113500:
+
+OnTimer111500:
enablenpc instance_npcname(".#ghinstance8");
enablenpc instance_npcname(".#ghinstance7");
+ enablenpc instance_npcname(".#ghinstance6");
+ enablenpc instance_npcname(".#ghinstance5");
donpcevent instance_npcname(".#ghinstance8")+"::OnEffect1";
donpcevent instance_npcname(".#ghinstance7")+"::OnEffect1";
- end;
-OnTimer114000:
donpcevent instance_npcname(".#ghinstance6")+"::OnEffect1";
donpcevent instance_npcname(".#ghinstance5")+"::OnEffect1";
end;
-OnTimer114500:
+
+OnTimer112000:
enablenpc instance_npcname(".#ghinstance4");
enablenpc instance_npcname(".#ghinstance3");
+ enablenpc instance_npcname(".#ghinstance2");
+ enablenpc instance_npcname(".#ghinstance1");
donpcevent instance_npcname(".#ghinstance4")+"::OnEffect1";
donpcevent instance_npcname(".#ghinstance3")+"::OnEffect1";
- end;
-OnTimer114750: //custom time
- disablenpc instance_npcname(".#ghinstance3");
- disablenpc instance_npcname(".#ghinstance4");
- disablenpc instance_npcname(".#ghinstance7");
- disablenpc instance_npcname(".#ghinstance8");
- disablenpc instance_npcname(".#ghinstance11");
- disablenpc instance_npcname(".#ghinstance12");
- disablenpc instance_npcname(".#ghinstance15");
- disablenpc instance_npcname(".#ghinstance16");
- disablenpc instance_npcname(".#ghinstance19");
- disablenpc instance_npcname(".#ghinstance20");
- end;
-OnTimer115000:
- donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnEnable";
- donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnDisable";
- donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk1";
donpcevent instance_npcname(".#ghinstance2")+"::OnEffect1";
donpcevent instance_npcname(".#ghinstance1")+"::OnEffect1";
+ donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnEnable";
+ donpcevent instance_npcname("Heinrich#ghinstance2")+"::OnDisable";
+ for (.@i=1; .@i <= 22; .@i++)
+ disablenpc instance_npcname(".#ghinstance"+.@i);
killmonster instance_mapname("1@gl_k"),instance_npcname("#talkinstance1")+"::OnMyMobDead";
end;
-OnTimer120000:
- donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk5";
+
+OnTimer112500:
+ npctalk(_("I killed my own men..."), instance_npcname("Heinrich#ghinstance3"));
end;
-OnTimer125000:
- donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk6";
+
+OnTimer115500:
+ npctalk(_("Sir. Heinrich! We don't have much time!"), instance_npcname("Varmundt#ghinstance2"));
end;
-OnTimer130000:
- donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk2";
+
+OnTimer118500:
+ npctalk(_("If you hurry now, there's a chance!"), instance_npcname("Varmundt#ghinstance2"));
end;
-OnTimer135000:
- donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk3";
+
+OnTimer121500:
+ npctalk(_("Varmundt is right. Now is not the time for mourning."), instance_npcname("Heinrich#ghinstance3"));
end;
-OnTimer140000:
- donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk4";
+
+OnTimer124500:
+ npctalk(_("I have a request to you followers."), instance_npcname("Heinrich#ghinstance3"));
end;
-OnTimer145000:
- donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk5";
+
+OnTimer127500:
+ npctalk(_("Himelmez can turn living beings into monsters."), instance_npcname("Heinrich#ghinstance3"));
end;
-OnTimer150000:
- donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk6";
+
+OnTimer130500:
+ npctalk(_("But, there might still be survivors here."), instance_npcname("Heinrich#ghinstance3"));
end;
-OnTimer155000:
- donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk7";
+
+OnTimer134500:
+ npctalk(_("Destroy the monsters and find any survivors."), instance_npcname("Heinrich#ghinstance3"));
end;
-OnTimer160000:
- donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnTalk7";
+
+OnTimer138500:
+ npctalk(_("Varmundt and I will chase Himelmez."), instance_npcname("Heinrich#ghinstance3"));
end;
-OnTimer165000:
- donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnTalk8";
+
+OnTimer143500:
+ npctalk(_("Very well, Varmundt. Let's find Himelmez."), instance_npcname("Heinrich#ghinstance3"));
end;
-OnTimer167000:
+
+OnTimer147500:
donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnDisable";
end;
-OnTimer168000:
- donpcevent instance_npcname("Varmunt#ghinstance2")+"::OnDisable";
- donpcevent instance_npcname("Heinrich#ghinstance3")+"::OnDisable";
+
+OnTimer148500:
+ donpcevent instance_npcname("Varmundt#ghinstance2")+"::OnDisable";
stopnpctimer;
donpcevent instance_npcname("#ghinstancewarp1")+"::OnEnable";
donpcevent instance_npcname("#ghinstancewarp2")+"::OnEnable";
- mapannounce instance_mapname("1@gl_k"), "9 o'clock warp leading to zone 2 is now open.",bc_map,"0xFFFF00";
+ mapannounce(instance_mapname("1@gl_k"), _("A portal has opened to the west."), bc_map, C_YELLOW);
donpcevent instance_npcname("#talkinstance1")+"::OnDisable";
donpcevent instance_npcname("#ghmemorialmob01")+"::OnEnable";
end;
+
OnMyMobDead:
end;
}
-1@gl_k,145,54,6 script .#ghinstance1 MG_KHALITZBURG,{
- end;
-OnInstanceInit:
-OnDisable:
- hideonnpc instance_npcname(strnpcinfo(0));
- end;
-OnEnable:
- hideoffnpc instance_npcname(strnpcinfo(0));
- end;
-OnEffect1:
- specialeffect EF_GRANDCROSS;
- specialeffect EF_LEXAETERNA;
- end;
-OnTalkK:
- switch(atoi(replacestr(strnpcinfo(2),"ghinstance",""))) {
- case 1: npctalk "I do not want to die."; break;
- case 2: npctalk "Mom..."; break;
- case 5: npctalk "Help."; break;
- case 6: npctalk "My stomach hurts..."; break;
- case 9: npctalk "Heinrich Sir, help!"; break;
- case 10: npctalk "Ack... Ugh."; break;
- case 13: npctalk "I'm thirsty."; break;
- case 14: npctalk "Oh... No... I cannot die..."; break;
- case 17: npctalk "This is so uncomfortable. Eww!"; break;
- case 18: npctalk "Who am I..."; break;
- case 21: npctalk "Uhh... My body."; break;
- case 22: npctalk "I'm so thirsty!"; break;
- }
- end;
-}
-1@gl_k,154,54,3 duplicate(.#ghinstance1) .#ghinstance2 MG_KHALITZBURG
-1@gl_k,145,64,6 duplicate(.#ghinstance1) .#ghinstance5 MG_KHALITZBURG
-1@gl_k,154,64,3 duplicate(.#ghinstance1) .#ghinstance6 MG_KHALITZBURG
-1@gl_k,145,74,6 duplicate(.#ghinstance1) .#ghinstance9 MG_KHALITZBURG
-1@gl_k,154,74,3 duplicate(.#ghinstance1) .#ghinstance10 MG_KHALITZBURG
-1@gl_k,145,84,6 duplicate(.#ghinstance1) .#ghinstance13 MG_KHALITZBURG
-1@gl_k,154,84,3 duplicate(.#ghinstance1) .#ghinstance14 MG_KHALITZBURG
-1@gl_k,145,94,6 duplicate(.#ghinstance1) .#ghinstance17 MG_KHALITZBURG
-1@gl_k,154,94,3 duplicate(.#ghinstance1) .#ghinstance18 MG_KHALITZBURG
-1@gl_k,145,104,6 duplicate(.#ghinstance1) .#ghinstance21 MG_KHALITZBURG
-1@gl_k,154,104,3 duplicate(.#ghinstance1) .#ghinstance22 MG_KHALITZBURG
-
-1@gl_k,145,59,6 script .#ghinstance3 HIDDEN_NPC,{
+1@gl_k,145,54,6 script .#ghinstance1 HIDDEN_NPC,{
end;
+
OnInstanceInit:
OnDisable:
- hideonnpc instance_npcname(strnpcinfo(0));
+ disablenpc instance_npcname(strnpcinfo(0));
end;
+
OnEnable:
- hideoffnpc instance_npcname(strnpcinfo(0));
+ enablenpc instance_npcname(strnpcinfo(0));
end;
+
OnEffect1:
specialeffect EF_GRANDCROSS;
specialeffect EF_LEXAETERNA;
end;
}
-1@gl_k,154,59,3 duplicate(.#ghinstance3) .#ghinstance4 HIDDEN_NPC
-1@gl_k,145,69,6 duplicate(.#ghinstance3) .#ghinstance7 HIDDEN_NPC
-1@gl_k,154,69,3 duplicate(.#ghinstance3) .#ghinstance8 HIDDEN_NPC
-1@gl_k,145,79,6 duplicate(.#ghinstance3) .#ghinstance11 HIDDEN_NPC
-1@gl_k,154,79,3 duplicate(.#ghinstance3) .#ghinstance12 HIDDEN_NPC
-1@gl_k,145,89,6 duplicate(.#ghinstance3) .#ghinstance15 HIDDEN_NPC
-1@gl_k,154,89,3 duplicate(.#ghinstance3) .#ghinstance16 HIDDEN_NPC
-1@gl_k,145,99,6 duplicate(.#ghinstance3) .#ghinstance19 HIDDEN_NPC
-1@gl_k,154,99,3 duplicate(.#ghinstance3) .#ghinstance20 HIDDEN_NPC
+
+1@gl_k,154,54,3 duplicate(.#ghinstance1) .#ghinstance2 HIDDEN_NPC
+1@gl_k,145,59,6 duplicate(.#ghinstance1) .#ghinstance3 HIDDEN_NPC
+1@gl_k,154,59,3 duplicate(.#ghinstance1) .#ghinstance4 HIDDEN_NPC
+1@gl_k,145,64,6 duplicate(.#ghinstance1) .#ghinstance5 HIDDEN_NPC
+1@gl_k,154,64,3 duplicate(.#ghinstance1) .#ghinstance6 HIDDEN_NPC
+1@gl_k,145,69,6 duplicate(.#ghinstance1) .#ghinstance7 HIDDEN_NPC
+1@gl_k,154,69,3 duplicate(.#ghinstance1) .#ghinstance8 HIDDEN_NPC
+1@gl_k,145,74,6 duplicate(.#ghinstance1) .#ghinstance9 HIDDEN_NPC
+1@gl_k,154,74,3 duplicate(.#ghinstance1) .#ghinstance10 HIDDEN_NPC
+1@gl_k,145,79,6 duplicate(.#ghinstance1) .#ghinstance11 HIDDEN_NPC
+1@gl_k,154,79,3 duplicate(.#ghinstance1) .#ghinstance12 HIDDEN_NPC
+1@gl_k,145,84,6 duplicate(.#ghinstance1) .#ghinstance13 HIDDEN_NPC
+1@gl_k,154,84,3 duplicate(.#ghinstance1) .#ghinstance14 HIDDEN_NPC
+1@gl_k,145,89,6 duplicate(.#ghinstance1) .#ghinstance15 HIDDEN_NPC
+1@gl_k,154,89,3 duplicate(.#ghinstance1) .#ghinstance16 HIDDEN_NPC
+1@gl_k,145,94,6 duplicate(.#ghinstance1) .#ghinstance17 HIDDEN_NPC
+1@gl_k,154,94,3 duplicate(.#ghinstance1) .#ghinstance18 HIDDEN_NPC
+1@gl_k,145,99,6 duplicate(.#ghinstance1) .#ghinstance19 HIDDEN_NPC
+1@gl_k,154,99,3 duplicate(.#ghinstance1) .#ghinstance20 HIDDEN_NPC
+1@gl_k,145,104,6 duplicate(.#ghinstance1) .#ghinstance21 HIDDEN_NPC
+1@gl_k,154,104,3 duplicate(.#ghinstance1) .#ghinstance22 HIDDEN_NPC
+1@gl_k,149,200,3 warp treasureroom#out 1,1,1@gl_k,269,264
1@gl_k,96,80,0 script #ghinstancewarp1 WARPNPC,1,2,{
end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname(strnpcinfo(0));
end;
+
OnEnable:
enablenpc instance_npcname(strnpcinfo(0));
end;
+
OnTouch:
.@map1$ = instance_mapname("1@gl_k");
.@map2$ = instance_mapname("2@gl_k");
- switch(atoi(replacestr(strnpcinfo(2),"ghinstancewarp",""))) {
+ switch (atoi(replacestr(strnpcinfo(2), "ghinstancewarp", ""))) {
case 1: warp .@map1$,80,80; break;
case 2: warp .@map1$,105,80; break;
case 3: warp .@map1$,215,79; break;
@@ -800,187 +744,216 @@ OnTouch:
case 10: warp .@map2$,174,101; break;
case 11: warp .@map2$,150,110; break;
case 12: warp .@map2$,150,179; break;
+ case 13: warp .@map2$,150,160; break;
+ case 14: warp .@map1$,150,281; break;
+ case 15: warp .@map1$,48,168; break;
}
end;
}
-1@gl_k,90,80,0 duplicate(#ghinstancewarp1) #ghinstancewarp2 WARPNPC,1,2
-1@gl_k,202,79,0 duplicate(#ghinstancewarp1) #ghinstancewarp3 WARPNPC,1,2
-1@gl_k,206,79,0 duplicate(#ghinstancewarp1) #ghinstancewarp4 WARPNPC,1,2
-1@gl_k,228,216,0 duplicate(#ghinstancewarp1) #ghinstancewarp5 WARPNPC,1,2
-1@gl_k,222,216,0 duplicate(#ghinstancewarp1) #ghinstancewarp6 WARPNPC,1,2
-1@gl_k,150,284,0 duplicate(#ghinstancewarp1) #ghinstancewarp7 WARPNPC,1,2
-2@gl_k,145,123,0 duplicate(#ghinstancewarp1) #ghinstancewarp8 WARPNPC,1,2
-2@gl_k,136,122,0 duplicate(#ghinstancewarp1) #ghinstancewarp9 WARPNPC,1,2
-2@gl_k,154,101,0 duplicate(#ghinstancewarp1) #ghinstancewarp10 WARPNPC,1,2
-2@gl_k,165,101,0 duplicate(#ghinstancewarp1) #ghinstancewarp11 WARPNPC,1,2
-2@gl_k,150,163,0 duplicate(#ghinstancewarp1) #ghinstancewarp12 WARPNPC,1,2
-
-
-//== Sector 1 Mobs =========================================
+
+1@gl_k,90,80,0 duplicate(#ghinstancewarp1) #ghinstancewarp2 WARPNPC,2,2
+1@gl_k,202,79,0 duplicate(#ghinstancewarp1) #ghinstancewarp3 WARPNPC,2,2
+1@gl_k,206,79,0 duplicate(#ghinstancewarp1) #ghinstancewarp4 WARPNPC,2,2
+1@gl_k,228,216,0 duplicate(#ghinstancewarp1) #ghinstancewarp5 WARPNPC,2,2
+1@gl_k,222,216,0 duplicate(#ghinstancewarp1) #ghinstancewarp6 WARPNPC,2,2
+1@gl_k,150,284,0 duplicate(#ghinstancewarp1) #ghinstancewarp7 WARPNPC,2,2
+2@gl_k,145,123,0 duplicate(#ghinstancewarp1) #ghinstancewarp8 WARPNPC,2,2
+2@gl_k,136,122,0 duplicate(#ghinstancewarp1) #ghinstancewarp9 WARPNPC,2,2
+2@gl_k,154,101,0 duplicate(#ghinstancewarp1) #ghinstancewarp10 WARPNPC,2,2
+2@gl_k,165,101,0 duplicate(#ghinstancewarp1) #ghinstancewarp11 WARPNPC,2,2
+2@gl_k,150,163,0 duplicate(#ghinstancewarp1) #ghinstancewarp12 WARPNPC,2,2
+2@gl_k,150,167,0 duplicate(#ghinstancewarp1) #ghinstancewarp13 WARPNPC,2,2
+2@gl_k,150,32,0 duplicate(#ghinstancewarp1) #ghinstancewarp14 WARPNPC,2,2
+1@gl_k,69,168,0 duplicate(#ghinstancewarp1) #ghinstancewarp15 WARPNPC,2,2
+
+// Sector 1 Mobs
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1@gl_k,0,0,0 script #ghmemorialmob01 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#ghmemorialmob01");
end;
+
OnEnable:
enablenpc instance_npcname("#ghmemorialmob01");
.@map$ = instance_mapname("1@gl_k");
.@label$ = instance_npcname("#ghmemorialmob01")+"::OnMyMobDead";
- areamonster .@map$,76,99,87,10,"Suffering Chamberlain",2466,15,.@label$;
- areamonster .@map$,67,39,12,6,"Fallen Monk",2465,20,.@label$;
- areamonster .@map$,67,39,12,6,"Suffering Chamberlain",2466,3,.@label$;
- areamonster .@map$,32,75,51,58,"Decayed Butler",2464,6,.@label$;
- areamonster .@map$,45,84,6,137,"Decayed Butler",2464,12,.@label$;
+ areamonster(.@map$, 76, 99, 87, 10, _("Grand Chamberlain in pain"), MG_GHOUL, 15, .@label$);
+ areamonster(.@map$, 67, 39, 12, 6, _("Corrupted Monk"), MG_WRAITH, 20, .@label$);
+ areamonster(.@map$, 67, 39, 12, 6, _("Grand Chamberlain in pain"), MG_GHOUL, 3, .@label$);
+ areamonster(.@map$, 32, 75, 51, 58, _("Corrupted Steward"), MG_ZOMBIE, 6, .@label$);
+ areamonster(.@map$, 45, 84, 6, 137, _("Corrupted Steward"), MG_ZOMBIE, 12, .@label$);
end;
+
OnMyMobDead:
.@map$ = instance_mapname("1@gl_k");
.@label$ = instance_npcname("#ghmemorialmob01")+"::OnMyMobDead";
.@mob_dead_num = 56 - mobcount(.@map$,.@label$);
if (.@mob_dead_num > 35) {
- mapannounce .@map$, "Seems like Himmelmez drains the dead's souls. They must be destroyed.",bc_map,"0xFFFFFF";
+ mapannounce(.@map$, _("Himelmez's curse is getting weaker. Find any survivors!"), bc_map, C_WHITE);
killmonster .@map$,.@label$;
- donpcevent instance_npcname("Aspiring Butcher#clearGH")+"::OnEnable";
+ donpcevent instance_npcname("Altar boy Domun#clearGH")+"::OnEnable";
donpcevent instance_npcname("#ghmemorialmob01")+"::OnDisable";
}
end;
}
-1@gl_k,17,51,3 script Aspiring Butcher#clearGH 4_M_KID1,{
- if (getcharid(0) == getpartyleader(getcharid(1),2)) {
- mes "[Aspiring Butcher]";
- mes "Help me! Help me!!!";
- next;
- select("Hey, wake up! Are there any other survivors?");
- mes "["+strcharinfo(0)+"]";
- mes "Hey, wake up! Are you alone?";
- unittalk getcharid(3),"Hey, wake up! Are you alone?";
- next;
- mes "[Aspiring Butcher]";
- mes "The Chamberlain... the Monk... They've become monsters. I couldn't do anything.";
- npctalk "The Chamberlain... the Monk... They've become monsters. I couldn't do anything.";
- next;
- mes "[Aspiring Butcher]";
- mes "I just stood still... Nothing, I couldn't do anything...";
- npctalk "I just stood still... Nothing, I couldn't do anything...";
- next;
- select("Wake up!");
- mes "["+strcharinfo(0)+"]";
- mes "Wake up kid! Go east along the central passage to the outside! The path is safe!";
- unittalk getcharid(3),"Wake up kid! Go east along the central passage to the outside! The path is safe!";
- next;
- mes "[Aspiring Butcher]";
- mes "East passage? Alone? How?";
- npctalk "East passage? Alone? How?";
- next;
- select("I can guide you through the path.");
- mes "["+strcharinfo(0)+"]";
- mes "I will guide you, perhaps that will help. If you want to close your eyes try not to hit anything.";
- unittalk getcharid(3),"I will guide you, perhaps that will help. If you want to close your eyes try not to hit anything.";
- next;
- mes "[Aspiring Butcher]";
- mes "Aspiring Butcher: I know, I... I'm trying to.";
- npctalk "Aspiring Butcher: I know, I... I'm trying to.";
- donpcevent instance_npcname("Aspiring Butcher#clearGH")+"::OnDisable";
- donpcevent instance_npcname("#ghmemorialmob02")+"::OnEnable";
- close;
- } else {
- mes "[Aspiring Butcher]";
- mes "Somebody help me, somebody help me, please.";
+1@gl_k,17,51,3 script Altar boy Domun#clearGH 4_M_KID1,{
+ if (getcharid(0) != getpartyleader(getcharid(1), 2)) {
+ mes("[Altar boy Domun]");
+ mes("Save me, save me, please...");
close;
}
-OnInstanceInit:
-OnDisable:
- hideonnpc instance_npcname("Aspiring Butcher#clearGH");
- end;
-OnEnable:
- hideoffnpc instance_npcname("Aspiring Butcher#clearGH");
+ mes("[Altar boy Domun]");
+ mes("Save me! Save me!!!");
+ npctalk(_("Save me! Save me!!!"));
+ next;
+ select("Hold on!Are you the only survivor?");
+ mesf("[%s]", strcharinfo(0));
+ mes("Hold on!\r"
+ "Are you the only survivor?");
+ unittalk(getcharid(3), _("Hold on! Are you the only survivor?"));
+ next;
+ mes("[Altar boy Domun]");
+ mes("Chamberlains... monks...\r"
+ "They all turned into monsters. I couldn't do anything.");
+ npctalk(_("Altar boy Domun : Chamberlains... monks... They all turned into monsters. I couldn't do anything."));
+ next;
+ mes("[Altar boy Domun]");
+ mes("All I could do was... \r"
+ "Just hide in here...\r"
+ "Nothing, nothing I could do...");
+ npctalk(_("Altar boy Domun : All I could do was... Just hide in here... Nothing, nothing I could do..."));
+ next;
+ select("Pull it together!");
+ mesf("[%s]", strcharinfo(0));
+ mes("Wake up kid! Go east and find the middle passage to the outside! That is safe!");
+ unittalk(getcharid(3), _("Wake up kid! Go east and find the middle passage to the outside! That is safe!")); // Displays 1st Letter of char name in small?
+ next;
+ mes("[Altar boy Domun]");
+ mes("To the east passage?\r"
+ "Alone?\r"
+ "How?");
+ npctalk(_("Altar boy Domun : To the east passage? Alone? How?"));
+ next;
+ select("I will give you a weapon.");
+ mesf("[%s]", strcharinfo(0));
+ mes("Here's a weapon. Just close your eye and swing for those monsters.");
+ unittalk(getcharid(3), _("Here's a weapon. Just close your eye and swing for those monsters."));
+ next;
+ mes("[Altar boy Domun]");
+ mes("Ok, I... I'l try.");
+ npctalk(_("Altar boy Domun : Ok, I... I'l try."));
+ close2;
+ donpcevent instance_npcname("Altar boy Domun#clearGH")+"::OnDisable";
+ donpcevent instance_npcname("#ghmemorialmob02")+"::OnEnable";
end;
-}
-//== Sector 2 Mobs =========================================
-1@gl_k,291,145,3 script Hollgrehenn Destroyer 4_F_JOB_BLACKSMITH,{
- if (getcharid(0) == getpartyleader(getcharid(1),2)) {
- mes "[Hollgrehenn Destroyer]";
- mes "Yaaa!! Die!!!";
- npctalk "Yaaa!! Die!!!";
- specialeffect EF_CRASHEARTH;
- next;
- select("Don't worry!");
- mes "["+strcharinfo(0)+"]";
- mes "Don't worry! Mam. Are you alone? No other survivors?";
- unittalk getcharid(3),"Don't worry! Mam. Are you alone? No other survivors?";
- next;
- mes "[Hollgrehenn Destroyer]";
- mes "I'm the only survivor left";
- npctalk "I'm the only survivor left";
- next;
- select("This is a very dangerous place.");
- mes "["+strcharinfo(0)+"]";
- mes "This is a very dangerous place. You know the central passage? Do you think you can move... and get to a safer place?";
- unittalk getcharid(3),"This is a very dangerous place. You know the central passage? Do you think you can move... and get to a safer place?";
- next;
- mes "[Hollgrehenn Destroyer]";
- mes "Yes, I am able to move. I'll move for my baby's sake.";
- npctalk "Yes, I am able to move. I'll move for my baby's sake.";
- next;
- select("Survive the road...");
- mes "["+strcharinfo(0)+"]";
- mes "You and your baby will get out of here safely. But I'm sorry I can't help you more.";
- unittalk getcharid(3),"You and your baby will get out of here safely. But I'm sorry I can't help you more.";
- next;
- mes "[Hollgrehenn Destroyer]";
- mes "That's ok. Thank you for helping us. I'm good to go alone. Ah and good luck also.";
- npctalk "That's ok. Thank you for helping us. I'm good to go alone. Ah and good luck also.";
- donpcevent instance_npcname("Hollgrehenn Destroyer")+"::OnDisable";
- donpcevent instance_npcname("#ghmemorialmob03")+"::OnEnable";
- close;
- } else {
- mes "[Hollgrehenn Destroyer]";
- mes "Somebody help me, somebody help me, please";
- close;
- }
OnInstanceInit:
OnDisable:
- hideonnpc instance_npcname("Hollgrehenn Destroyer");
+ hideonnpc instance_npcname("Altar boy Domun#clearGH");
end;
+
OnEnable:
- hideoffnpc instance_npcname("Hollgrehenn Destroyer");
+ hideoffnpc instance_npcname("Altar boy Domun#clearGH");
end;
}
+// Sector 2 Mobs
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1@gl_k,0,0,0 script #ghmemorialmob02 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#ghmemorialmob02");
end;
+
OnEnable:
enablenpc instance_npcname("#ghmemorialmob02");
donpcevent instance_npcname("#ghinstancewarp3")+"::OnEnable";
donpcevent instance_npcname("#ghinstancewarp4")+"::OnEnable";
.@map$ = instance_mapname("1@gl_k");
.@label$ = instance_npcname("#ghmemorialmob02")+"::OnMyMobDead";
- mapannounce .@map$,"3 o'clock warp leading to zone 3 is now open.",bc_map,"0xFFFF00";
- areamonster .@map$,241,113,291,19,"Suffering Chamberlain",2466,12,.@label$;
- areamonster .@map$,241,113,291,19,"Decayed Monk",2464,12,.@label$;
- areamonster .@map$,227,217,291,135,"Suffering Chamberlain",2466,12,.@label$;
- areamonster .@map$,227,217,291,135,"Decayed Monk",2464,12,.@label$;
+ mapannounce(.@map$, _("A portal has opened to the east."), bc_map, C_YELLOW);
+ areamonster(.@map$, 241, 113, 291, 19, _("Outraged Refiner"), MG_GHOUL, 12, .@label$);
+ areamonster(.@map$, 241, 113, 291, 19, _("Decomposed Blacksmith"), MG_ZOMBIE, 12, .@label$);
+ areamonster(.@map$, 227, 217, 291, 135, _("Outraged Refiner"), MG_GHOUL, 12, .@label$);
+ areamonster(.@map$, 227, 217, 291, 135, _("Decomposed Blacksmith"), MG_ZOMBIE, 12, .@label$);
end;
+
OnMyMobDead:
.@map$ = instance_mapname("1@gl_k");
.@label$ = instance_npcname("#ghmemorialmob02")+"::OnMyMobDead";
.@mob_dead_num = 48 - mobcount(.@map$,.@label$);
if (.@mob_dead_num > 28) {
- mapannounce .@map$, "Seems like Himmelmez drains the dead's souls. They must be destroyed.",bc_map,"0xFFFFFF";
+ mapannounce(.@map$, _("Himelmez's curse is getting weaker. Find any survivors!"), bc_map, C_WHITE);
killmonster .@map$,.@label$;
- donpcevent instance_npcname("Hollgrehenn Destroyer")+"::OnEnable";
+ donpcevent instance_npcname("Holgren the Destroyer")+"::OnEnable";
donpcevent instance_npcname("#ghmemorialmob02")+"::OnDisable";
}
end;
}
-//== Tramp Mobs ============================================
-1@gl_k,221,82,3 script Breathless Man#GHtramp1 4_M_DIEMAN,4,4,{
+1@gl_k,291,145,3 script Holgren the Destroyer 4_F_JOB_BLACKSMITH,{
+ if (getcharid(0) != getpartyleader(getcharid(1), 2)) {
+ mes("[Holgren the Destroyer]");
+ mes("Are you human?");
+ close;
+ }
+ mes("[Holgren the Destroyer]");
+ mes("Die!! You shall die!!!");
+ npctalk(_("Holgren the Destroyer : Die!! You shall die!!!"));
+ specialeffect EF_CRASHEARTH;
+ next;
+ select("Relax! I'm not a monster!");
+ mesf("[%s]", strcharinfo(0));
+ mes("Relax! I am Human. Are you alone? Anyone else here?");
+ unittalk(getcharid(3), _("Relax! I am Human. Are you alone? Anyone else here?"));
+ next;
+ mes("[Holgren the Destroyer]");
+ mes("It's only me alive.");
+ npctalk(_("Holgren the Destroyer : It's only me alive."));
+ next;
+ select("It's dangerous here...");
+ mesf("[%s]", strcharinfo(0));
+ mes("It's dangerous here. You know the way to the middle passage? Can you move?");
+ unittalk(getcharid(3), _("It's dangerous here. You know the way to the middle passage? Can you move?")); // Displays 1st Letter of char name in small?
+ next;
+ mes("[Holgren the Destroyer]");
+ mes("Yes, I can move. I need to get out of here.");
+ npctalk(_("Holgren the Destroyer : Yes, I can move. I need to get out of here."));
+ next;
+ select("Be safe...");
+ mesf("[%s]", strcharinfo(0));
+ mes("Sorry, I can't go with you.");
+ unittalk(getcharid(3), _("Sorry, I can't go with you."));
+ next;
+ mes("[Holgren the Destroyer]");
+ mes("It's ok. You've already done enough. I can help myself. Good luck to you too.");
+ npctalk(_("Holgren the Destroyer : It's ok. You've already done enough. I can help myself. Good luck to you too."));
+ close2;
+ donpcevent instance_npcname("Holgren the Destroyer")+"::OnDisable";
+ donpcevent instance_npcname("#ghmemorialmob03")+"::OnEnable";
+ end;
+
+OnInstanceInit:
+OnDisable:
+ hideonnpc instance_npcname("Holgren the Destroyer");
+ end;
+
+OnEnable:
+ hideoffnpc instance_npcname("Holgren the Destroyer");
+ end;
+}
+
+// Tramp Mobs
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+1@gl_k,221,82,3 script A dead man#GHtramp1 4_M_DIEMAN,4,4,{
end;
+
OnTouch:
.@i = rand(1,10);
if (.@i == 1) .@mobs = 3;
@@ -990,108 +963,130 @@ OnTouch:
else .@mobs = 7;
getmapxy(.@map$, .@x, .@y, UNITTYPE_NPC);
specialeffect EF_VENOMDUST;
- monster .@map$,.@x,.@y,"Muck Worm",2467,.@mobs,instance_npcname(strnpcinfo(0))+"::OnMyMobDead";
+ monster(.@map$, .@x, .@y, "Maggot", MG_ARCLOUSE, .@mobs, instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
disablenpc instance_npcname(strnpcinfo(0));
end;
+
OnMyMobDead:
end;
+
OnInstanceInit:
OnEnable:
enablenpc instance_npcname(strnpcinfo(0));
end;
+
OnDisable:
disablenpc instance_npcname(strnpcinfo(0));
end;
}
-1@gl_k,213,63,7 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp2 4_M_DIEMAN,4,4
-1@gl_k,230,50,2 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp3 4_M_DIEMAN,4,4
-1@gl_k,222,39,2 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp4 4_M_DIEMAN,4,4
-1@gl_k,214,27,3 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp5 4_M_DIEMAN,4,4
-1@gl_k,223,17,2 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp6 4_M_DIEMAN,4,4
-1@gl_k,235,16,4 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp7 4_M_DIEMAN,4,4
-1@gl_k,251,20,5 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp8 4_M_DIEMAN,4,4
-1@gl_k,240,43,5 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp9 4_M_DIEMAN,4,4
-1@gl_k,271,19,1 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp10 4_M_DIEMAN,4,4
-1@gl_k,246,62,7 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp11 4_M_DIEMAN,4,4
-1@gl_k,282,48,7 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp12 4_M_DIEMAN,4,4
-1@gl_k,285,81,7 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp13 4_M_DIEMAN,4,4
-1@gl_k,241,86,5 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp14 4_M_DIEMAN,4,4
-1@gl_k,249,101,3 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp15 4_M_DIEMAN,4,4
-1@gl_k,276,106,7 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp16 4_M_DIEMAN,4,4
-1@gl_k,252,120,7 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp17 4_M_DIEMAN,4,4
-1@gl_k,258,150,1 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp18 4_M_DIEMAN,4,4
-1@gl_k,255,157,6 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp19 4_M_DIEMAN,4,4
-1@gl_k,261,164,7 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp20 4_M_DIEMAN,4,4
-1@gl_k,269,173,7 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp21 4_M_DIEMAN,4,4
-1@gl_k,280,167,3 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp22 4_M_DIEMAN,4,4
-1@gl_k,293,161,3 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp23 4_M_DIEMAN,4,4
-1@gl_k,226,96,3 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp24 4_M_DIEMAN,4,4
-1@gl_k,222,119,5 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp25 4_M_DIEMAN,4,4
-1@gl_k,233,123,3 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp26 4_M_DIEMAN,4,4
-2@gl_k,147,203,5 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp27 4_M_DIEMAN,4,4
-2@gl_k,141,222,1 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp28 4_M_DIEMAN,4,4
-2@gl_k,167,225,3 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp29 4_M_DIEMAN,4,4
-2@gl_k,145,236,3 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp30 4_M_DIEMAN,4,4
-2@gl_k,143,260,3 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp31 4_M_DIEMAN,4,4
-2@gl_k,173,258,3 duplicate(Breathless Man#GHtramp1) Breathless Man#GHtramp32 4_M_DIEMAN,4,4
-
-//== Sector 3 Mobs =========================================
+
+1@gl_k,213,63,7 duplicate(A dead man#GHtramp1) A dead man#GHtramp2 4_M_DIEMAN,4,4
+1@gl_k,230,50,2 duplicate(A dead man#GHtramp1) A dead man#GHtramp3 4_M_DIEMAN,4,4
+1@gl_k,222,39,2 duplicate(A dead man#GHtramp1) A dead man#GHtramp4 4_M_DIEMAN,4,4
+1@gl_k,214,27,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp5 4_M_DIEMAN,4,4
+1@gl_k,223,17,2 duplicate(A dead man#GHtramp1) A dead man#GHtramp6 4_M_DIEMAN,4,4
+1@gl_k,235,16,4 duplicate(A dead man#GHtramp1) A dead man#GHtramp7 4_M_DIEMAN,4,4
+1@gl_k,251,20,5 duplicate(A dead man#GHtramp1) A dead man#GHtramp8 4_M_DIEMAN,4,4
+1@gl_k,240,43,7 duplicate(A dead man#GHtramp1) A dead man#GHtramp9 4_M_DIEMAN,4,4
+1@gl_k,271,19,1 duplicate(A dead man#GHtramp1) A dead man#GHtramp10 4_M_DIEMAN,4,4
+1@gl_k,246,62,7 duplicate(A dead man#GHtramp1) A dead man#GHtramp11 4_M_DIEMAN,4,4
+1@gl_k,282,48,5 duplicate(A dead man#GHtramp1) A dead man#GHtramp12 4_M_DIEMAN,4,4
+1@gl_k,285,81,7 duplicate(A dead man#GHtramp1) A dead man#GHtramp13 4_M_DIEMAN,4,4
+1@gl_k,241,86,5 duplicate(A dead man#GHtramp1) A dead man#GHtramp14 4_M_DIEMAN,4,4
+1@gl_k,249,101,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp15 4_M_DIEMAN,4,4
+1@gl_k,276,106,7 duplicate(A dead man#GHtramp1) A dead man#GHtramp16 4_M_DIEMAN,4,4
+1@gl_k,252,120,7 duplicate(A dead man#GHtramp1) A dead man#GHtramp17 4_M_DIEMAN,4,4
+1@gl_k,258,150,1 duplicate(A dead man#GHtramp1) A dead man#GHtramp18 4_M_DIEMAN,4,4
+1@gl_k,255,157,6 duplicate(A dead man#GHtramp1) A dead man#GHtramp19 4_M_DIEMAN,4,4
+1@gl_k,261,164,7 duplicate(A dead man#GHtramp1) A dead man#GHtramp20 4_M_DIEMAN,4,4
+1@gl_k,269,173,7 duplicate(A dead man#GHtramp1) A dead man#GHtramp21 4_M_DIEMAN,4,4
+1@gl_k,280,167,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp22 4_M_DIEMAN,4,4
+1@gl_k,293,161,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp23 4_M_DIEMAN,4,4
+1@gl_k,226,96,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp24 4_M_DIEMAN,4,4
+1@gl_k,222,119,5 duplicate(A dead man#GHtramp1) A dead man#GHtramp25 4_M_DIEMAN,4,4
+1@gl_k,233,123,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp26 4_M_DIEMAN,4,4
+2@gl_k,147,203,5 duplicate(A dead man#GHtramp1) A dead man#GHtramp27 4_M_DIEMAN,4,4
+2@gl_k,141,222,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp28 4_M_DIEMAN,4,4
+2@gl_k,167,225,5 duplicate(A dead man#GHtramp1) A dead man#GHtramp29 4_M_DIEMAN,4,4
+2@gl_k,145,236,5 duplicate(A dead man#GHtramp1) A dead man#GHtramp30 4_M_DIEMAN,4,4
+2@gl_k,143,260,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp31 4_M_DIEMAN,4,4
+2@gl_k,170,259,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp32 4_M_DIEMAN,4,4
+2@gl_k,143,197,5 duplicate(A dead man#GHtramp1) A dead man#GHtramp33 4_M_DIEMAN,4,4
+2@gl_k,155,195,5 duplicate(A dead man#GHtramp1) A dead man#GHtramp34 4_M_DIEMAN,4,4
+2@gl_k,154,188,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp35 4_M_DIEMAN,4,4
+2@gl_k,153,214,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp36 4_M_DIEMAN,4,4
+2@gl_k,172,233,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp37 4_M_DIEMAN,4,4
+2@gl_k,176,245,3 duplicate(A dead man#GHtramp1) A dead man#GHtramp38 4_M_DIEMAN,4,4
+
+// Sector 3 Mobs
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1@gl_k,0,0,0 script #ghmemorialmob03 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#ghmemorialmob03");
end;
+
OnEnable:
enablenpc instance_npcname("#ghmemorialmob03");
donpcevent instance_npcname("#ghinstancewarp5")+"::OnEnable";
donpcevent instance_npcname("#ghinstancewarp6")+"::OnEnable";
.@map$ = instance_mapname("1@gl_k");
.@label$ = instance_npcname("#ghmemorialmob03")+"::OnMyMobDead";
- mapannounce .@map$,"12 o'clock warp leading to the zone 4 was opened.",bc_map,"0xFFFF00";
- areamonster .@map$,17,259,53,180,"Decayed Guard",2468,11,.@label$;
- areamonster .@map$,17,259,53,180,"Sharpshooter Ranger",2469,14,.@label$;
- areamonster .@map$,62,281,73,186,"Decayed Guard",2468,11,.@label$;
- areamonster .@map$,62,281,73,186,"Sharpshooter Ranger",2469,14,.@label$;
- areamonster .@map$,74,251,109,224,"Decayed Guard",2468,11,.@label$;
- areamonster .@map$,74,251,109,224,"Sharpshooter Ranger",2469,14,.@label$;
- areamonster .@map$,108,281,231,234,"Decayed Guard",2468,11,.@label$;
- areamonster .@map$,108,281,231,234,"Sharpshooter Ranger",2469,14,.@label$;
+ mapannounce(.@map$, _("A portal has appeared to the northwest."), bc_map, C_YELLOW);
+ areamonster(.@map$, 17, 259, 53, 180, _("Hungry Palace Guard"), MG_RAYDRIC, 11, .@label$);
+ areamonster(.@map$, 17, 259, 53, 180, _("Outraged Archer"), MG_RAYDRIC_ARCHER, 14, .@label$);
+ areamonster(.@map$, 62, 281, 73, 186, _("Hungry Palace Guard"), MG_RAYDRIC, 11, .@label$);
+ areamonster(.@map$, 62, 281, 73, 186, _("Outraged Archer"), MG_RAYDRIC_ARCHER, 14, .@label$);
+ areamonster(.@map$, 74, 251, 109, 224, _("Corrupted Palace Guard"), MG_RAYDRIC, 11, .@label$);
+ areamonster(.@map$, 74, 251, 109, 224, _("Wandering Archer"), MG_RAYDRIC_ARCHER, 14, .@label$);
+ areamonster(.@map$, 108, 281, 231, 234, _("Corrupted Palace Guard"), MG_RAYDRIC, 11, .@label$);
+ areamonster(.@map$, 108, 281, 231, 234, _("Wandering Archer"), MG_RAYDRIC_ARCHER, 14, .@label$);
end;
+
OnMyMobDead:
.@map$ = instance_mapname("1@gl_k");
.@label$ = instance_npcname("#ghmemorialmob03")+"::OnMyMobDead";
.@mob_dead_num = 100 - mobcount(.@map$,.@label$);
if (.@mob_dead_num > 85) {
- mapannounce .@map$,"Himmelmez: Nice parry. I thought you were going to die slowly surrounded by the dead I summoned~",bc_map,"0xFFFFFF";
+ mapannounce(.@map$, _("Himelmez: Not bad. Thought you would be dead by now by my creatures~"), bc_map, C_WHITE);
killmonster .@map$,.@label$;
donpcevent instance_npcname("#GHMclear3")+"::OnEnable";
donpcevent instance_npcname("Heinrich#ghinstance4")+"::OnEnable";
- donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnEnable";
- donpcevent instance_npcname("Varmunt#ghinstance3")+"::OnEnable";
+ donpcevent instance_npcname("Himelmez#ghinstance2")+"::OnEnable";
+ donpcevent instance_npcname("Varmundt#ghinstance3")+"::OnEnable";
donpcevent instance_npcname("#ghmemorialmob03")+"::OnDisable";
}
end;
}
-//== 1st MVP ===============================================
+// 1st MVP
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
1@gl_k,0,0,0 script #ghmemorialmob04 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#ghmemorialmob04");
end;
+
OnEnable:
enablenpc instance_npcname("#ghmemorialmob04");
- monster instance_mapname("1@gl_k"),150,258,"Root of Corruption",2475,1,instance_npcname("#ghmemorialmob04")+"::OnMyMobDead";
+ monster instance_mapname("1@gl_k"), 150, 258, _("Corrupted Soul"), MG_CORRUPTION_ROOT, 1, instance_npcname("#ghmemorialmob04")+"::OnMyMobDead";
+ unittalk($@mobid[0], _("Grrrrrrhh~~~"));
end;
+
OnMyMobDead:
.@map$ = instance_mapname("1@gl_k");
if (mobcount(.@map$,instance_npcname("#ghmemorialmob04")+"::OnMyMobDead") < 1) {
- mapannounce .@map$, "12 o'clock warp leading to the Chivalry's Second Floor is now open.",bc_map,"0xFFFF00";
+ mapannounce(.@map$, _("Opening 2nd floor entrance towards 12 O'clock direction."), bc_map, C_YELLOW);
donpcevent instance_npcname("#ghinstancewarp7")+"::OnEnable";
- donpcevent instance_npcname("Varmunt#ghinstance3")+"::OnTalk2";
+ donpcevent instance_npcname("#ghinstancewarp14")+"::OnEnable";
+ npctalk(_("I collected some items dropped from its body. You can take it from me."), instance_npcname("Varmundt#ghinstance3"));
donpcevent instance_npcname("#effectGH01")+"::OnEnable";
donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnEnable";
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnEnable";
+ donpcevent instance_npcname("Varmundt#ghinstance4")+"::OnEnable";
donpcevent instance_npcname("#ghmemorialmob04")+"::OnDisable";
}
end;
@@ -1099,73 +1094,94 @@ OnMyMobDead:
1@gl_k,150,257,3 script #GHMclear3 HIDDEN_NPC,9,9,{
end;
+
OnTouch:
donpcevent instance_npcname("#controlGH3")+"::OnEnable";
specialeffect EF_BASH;
donpcevent instance_npcname("#GHMclear3")+"::OnDisable";
end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#GHMclear3");
end;
+
OnEnable:
enablenpc instance_npcname("#GHMclear3");
initnpctimer;
end;
+
OnTimer2000:
- mapannounce instance_mapname("1@gl_k"), "Himmelmez: You got me tempted to go to the 2nd floor, come to the entrance. I'm curious about how far your luck goes.",bc_map,"0xFFFFFF";
+ mapannounce(instance_mapname("1@gl_k"), _("Himelmez: I'll wait for you at the north of the castle. I want to see you how lucky you are."), bc_map, C_WHITE);
stopnpctimer;
end;
}
1@gl_k,0,0,0 script #controlGH3 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#controlGH3");
end;
+
OnEnable:
enablenpc instance_npcname("#controlGH3");
initnpctimer;
end;
+
OnTimer3000:
- donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnTalk1";
+ npctalk(_("Guess you are either lucky or powerful, to make it this far."), instance_npcname("Himelmez#ghinstance2"));
end;
+
OnTimer6000:
- donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnTalk2";
+ npctalk(_("But, it doesn't matter."), instance_npcname("Himelmez#ghinstance2"));
end;
+
OnTimer9000:
- donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnTalk3";
+ npctalk(_("You will all die here."), instance_npcname("Himelmez#ghinstance2"));
end;
+
OnTimer12000:
- donpcevent instance_npcname("Heinrich#ghinstance4")+"::OnTalk1";
+ npctalk(_("Himelmez! We will not let you get away from us!"), instance_npcname("Heinrich#ghinstance4"));
end;
+
OnTimer15000:
- donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnTalk4";
+ npctalk(_("Ha ha ha, worry about yourself. You think I am alone here?"), instance_npcname("Himelmez#ghinstance2"));
end;
+
OnTimer18000:
- donpcevent instance_npcname("Varmunt#ghinstance3")+"::OnTalk1";
+ npctalk(_("Sir. Heinrich! I sense something strange and strong coming!"), instance_npcname("Varmundt#ghinstance3"));
end;
+
OnTimer21000:
- donpcevent instance_npcname("Heinrich#ghinstance4")+"::OnTalk2";
+ npctalk(_("What... These are!"), instance_npcname("Heinrich#ghinstance4"));
end;
+
OnTimer24000:
- donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnTalk5";
+ npctalk(_("I will go on my way while my new toy entertains you."), instance_npcname("Himelmez#ghinstance2"));
end;
+
OnTimer27000:
- donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnTalk6";
+ npctalk(_("Fare well~, hope to see you again sometime, Heinrich."), instance_npcname("Himelmez#ghinstance2"));
end;
+
OnTimer28000:
- donpcevent instance_npcname("Himmelmez#ghinstance2")+"::OnDisable";
+ donpcevent instance_npcname("Himelmez#ghinstance2")+"::OnDisable";
end;
+
OnTimer31000:
- donpcevent instance_npcname("Heinrich#ghinstance4")+"::OnTalk3";
+ npctalk(_("Sir. Varmundt! Help those adventurers. I will go after Himelmez!"), instance_npcname("Heinrich#ghinstance4"));
end;
+
OnTimer32000:
donpcevent instance_npcname("Heinrich#ghinstance4")+"::OnDisable";
end;
+
OnTimer35000:
- mapannounce instance_mapname("1@gl_k"), "An eerie echo from the depths can be heard as you get closer.",bc_map,"0xFFFFFF";
+ mapannounce(instance_mapname("1@gl_k"), _("An echoing comes from deep inside of the knight's shrine."), bc_map, C_WHITE);
end;
+
OnTimer38000:
donpcevent instance_npcname("#ghmemorialmob04")+"::OnEnable";
stopnpctimer;
@@ -1174,302 +1190,251 @@ OnTimer38000:
}
1@gl_k,144,258,6 script Heinrich#ghinstance4 4_M_HEINRICH,{
- mes "[Heinrich]";
- mes "Himmelmez... You made my men get killed and I will never forget that.";
cutin "gl_heinrich1",2;
+ mes("[Heinrich]");
+ mes("Himelmez... I will never forget what you've done to my men.");
close2;
cutin "gl_heinrich1",255;
end;
+
OnInstanceInit:
OnDisable:
hideonnpc instance_npcname("Heinrich#ghinstance4");
end;
+
OnEnable:
hideoffnpc instance_npcname("Heinrich#ghinstance4");
end;
-OnTalk1:
- npctalk "Himmelmez! I won't let you take even a single more step here.";
- end;
-OnTalk2:
- npctalk "What... is this?!";
- end;
-OnTalk3:
- npctalk "Varmunt Sir! Help the adventurers and I'll chase Himmelmez!";
- end;
}
-1@gl_k,150,257,3 script Himmelmez#ghinstance2 4_F_HIMEL,{
- mes "[Himmelmez]";
- mes "No need to stare at me with so insecure eyes. Soon they'll become relaxed...";
+1@gl_k,150,257,3 script Himelmez#ghinstance2 4_F_HIMEL,{
cutin "gl_himel2",2;
+ mes("[Himelmez]");
+ mes("Don't look at me nervous like that. It will be over soon...");
close2;
cutin "gl_himel2",255;
end;
+
OnInstanceInit:
OnDisable:
- hideonnpc instance_npcname("Himmelmez#ghinstance2");
+ hideonnpc instance_npcname("Himelmez#ghinstance2");
end;
+
OnEnable:
- hideoffnpc instance_npcname("Himmelmez#ghinstance2");
- end;
-OnTalk1:
- npctalk "What an awfully lucky, I flew all the way over here and just one of them is really powerful.";
- end;
-OnTalk2:
- npctalk "But it doesn't matter to me.";
- end;
-OnTalk3:
- npctalk "Now, all of you will die.";
- end;
-OnTalk4:
- npctalk "Hahaha, so you guys thought I would come alone?";
- end;
-OnTalk5:
- npctalk "This is my new toy to keep you at my feet. Why don't you guys play while I entertain?";
- end;
-OnTalk6:
- npctalk "Sincerely~, If I am given the opportunity I'd like to meet you again, Heinrich.";
+ hideoffnpc instance_npcname("Himelmez#ghinstance2");
end;
}
-1@gl_k,156,259,3 script Varmunt#ghinstance3 4_M_BARMUND,{
- if (questprogress(12318,HUNTING) == 2) {
- if (!questprogress(12319,HUNTING)) {
- mes "[Varmunt]";
- mes "There's something unusual about this thing's aura. Maybe someday we will be able to understand what is behind all of this.";
- cutin "gl_barmund1",2;
- getitem Coagulated_Spell,1; //Coagulated Spell
+1@gl_k,156,259,3 script Varmundt#ghinstance3 4_M_BARMUND,{ // not disabling it so all players can get their reward
+ if (questprogress(12318, HUNTING) == 2) {
+ cutin "gl_barmund1", 2;
+ mes("[Varmundt]");
+ mes("This item has extraordinary aura with it. Can be very useful for someone special.");
+ erasequest 12318;
+ if (!questprogress(12319, HUNTING))
setquest 12319;
- close2;
- cutin "gl_barmund1",255;
- end;
- }
+ setquest 12320;
+ erasequest 12320;
+ getitem Temporal_Crystal, 1;
+ getitem Coagulated_Spell, 1;
+ getexp 250000, 250000;
+ close2;
+ cutin "gl_barmund1", 255;
+ end;
}
- mes "[Varmunt]";
- mes "Even after all this time, it is impossible to prevent from the will of the Transcendent.";
cutin "gl_barmund1",2;
+ mes("[Varmundt]");
+ mes("I guess this is it. Is it impossible to stop the time traveler's will?! A portal seems to have appeared to the north.");
close2;
cutin "gl_barmund2",255;
end;
+
OnInstanceInit:
OnDisable:
- hideonnpc instance_npcname("Varmunt#ghinstance3");
+ hideonnpc instance_npcname("Varmundt#ghinstance3");
end;
+
OnEnable:
- hideoffnpc instance_npcname("Varmunt#ghinstance3");
- end;
-OnTalk1:
- npctalk "Heinrich Sir! Something unknown holds an inexplicably powerful force!";
- end;
-OnTalk2:
- npctalk "From the monster I picked up some great stuff. People who are interested, talk to me.";
+ hideoffnpc instance_npcname("Varmundt#ghinstance3");
end;
}
-//== Floor 2 ===============================================
+// Floor 2
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2@gl_k,148,67,1 script Heinrich#ghinstance5 4_M_HEINRICH,{
- mes "[Heinrich]";
- mes "Himmelmez's blocking spells";
- mes "are everywhere around here...";
cutin "gl_heinrich1",2;
+ mes("[Heinrich]");
+ mes("Himelmez's closed space covers everywhere...");
close2;
cutin "gl_heinrich1",255;
end;
+
OnInstanceInit:
OnDisable:
hideonnpc instance_npcname("Heinrich#ghinstance5");
end;
+
OnEnable:
hideoffnpc instance_npcname("Heinrich#ghinstance5");
end;
-OnTalk1:
- npctalk "These things have never been in the castle!";
- end;
-OnTalk2:
- npctalk "Trying to break this power with common weapons doesn't work. I tried it.";
- end;
-OnTalk3:
- npctalk "It is really unforgivable.";
- end;
-OnTalk4:
- npctalk "I, who already was a subordinate of genocide. How much more in the future...";
- end;
-OnTalk5:
- npctalk "...";
- end;
}
-2@gl_k,151,71,7 script Varmunt#ghinstance4 4_M_BARMUND,{
- mes "[Varmunt]";
- mes "Why am I doing this again? Doesn't seem like the first time. I've seen this place repeatedly dozens of times in my dreams. This feeling...";
+2@gl_k,151,71,7 script Varmundt#ghinstance4 4_M_BARMUND,{
cutin "gl_barmund1",2;
+ mes("[Varmundt]");
+ mes("How many times I do this job. In my dream, I did it over and over again...");
close2;
cutin "gl_barmund1",255;
end;
+
OnInstanceInit:
OnDisable:
- hideonnpc instance_npcname("Varmunt#ghinstance4");
+ hideonnpc instance_npcname("Varmundt#ghinstance4");
end;
+
OnEnable:
- hideoffnpc instance_npcname("Varmunt#ghinstance4");
- end;
-OnTalk2:
- npctalk "Himmelmez's enchantment has completely blocked the passage to each section.";
- end;
-OnTalk3:
- npctalk "Get out of the way for a moment. I'll try to somehow break the spell with magical powers.";
- end;
-OnTalk4:
- npctalk "The enchantment seems to be broken.";
- end;
-OnTalk5:
- npctalk "I've never seen this spell before.";
- end;
-OnTalk6:
- npctalk "Himmelmez doesn't use a seal on a person's body to turn it into an undead.";
- end;
-OnTalk7:
- npctalk "She uses enchantment stones.This way, the spell is probably maintained.";
- end;
-OnTalk8:
- npctalk "We should kill the people who have the enchantment stones to break the spell.";
- end;
-OnTalk9:
- npctalk "However, we can't identify them. The purification can only be done randomly.";
- end;
-OnTalk10:
- npctalk "Commandant...";
- end;
-OnTalk11:
- npctalk "Commandant, it seems too loose.";
- end;
-OnTalk12:
- npctalk "We are related to all these people, not just a few.";
- end;
-OnTalk13:
- npctalk "We can't deny that it's not their fault for what is going on.";
- end;
-OnTalk14:
- npctalk "Well, let's do it then.";
- end;
-OnTalk15:
- npctalk "You guys are of a great help. Try to follow us.";
- end;
-OnTalk16:
- npctalk "There can be a tough fight. Hold on, and it would be nice to eat something.";
- end;
-OnTalk17:
- npctalk "Guys. It is time to depart, Heinrich Sir.";
+ hideoffnpc instance_npcname("Varmundt#ghinstance4");
end;
}
2@gl_k,150,67,0 script #effectGH01 HIDDEN_NPC,10,10,{
end;
+
OnTouch:
- if (.touch) {
- .touch = 0;
+ if ('touch) {
+ 'touch = 0;
specialeffect EF_BASH;
donpcevent instance_npcname("#controlGH4")+"::OnEnable";
}
end;
+
OnEffect:
specialeffect EF_LORD;
end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#effectGH01");
end;
+
OnEnable:
enablenpc instance_npcname("#effectGH01");
- set .touch,1; //Activates OnTouch Only Once.
+ 'touch = 1; // Only activate OnTouch once
end;
}
2@gl_k,0,0,0 script #controlGH4 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#controlGH4");
end;
+
OnEnable:
enablenpc instance_npcname("#controlGH4");
initnpctimer;
end;
+
OnTimer3000:
- donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnTalk1";
+ npctalk(_("This structure was not in the castle before!"), instance_npcname("Heinrich#ghinstance5"));
donpcevent instance_npcname("#ghmemorialmob05")+"::OnEnable";
end;
+
OnTimer6000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk2";
+ npctalk(_("This is Himelmez's closed space. We blocked each area and aisle."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer9000:
- donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnTalk2";
+ npctalk(_("We tried to break it down but it's really strong."), instance_npcname("Heinrich#ghinstance5"));
end;
+
OnTimer12000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk3";
+ npctalk(_("Step back. Let me try to dispel the magic."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer15000:
donpcevent instance_npcname("#effectGH01")+"::OnEffect";
end;
+
OnTimer18000:
donpcevent instance_npcname("#effectGH01")+"::OnDisable";
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk4";
+ npctalk(_("I think that part of closed space is broke down."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer21000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk5";
+ npctalk(_("I have never seen this closed space."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer24000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk6";
+ npctalk(_("Himelmez hides stone chains in undead people's body."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer27000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk7";
+ npctalk(_("Maybe this closed space is maintained with these stone chains."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer30000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk8";
+ npctalk(_("If you want to break it, you have to kill one of those who have a stone chain."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer33000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk9";
+ npctalk(_("But, we can't recognize who has a stone chain so, we have to purify everything."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer36000:
- donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnTalk3";
+ npctalk(_("It is inexcusable behavior."), instance_npcname("Heinrich#ghinstance5"));
end;
+
OnTimer39000:
- donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnTalk4";
+ npctalk(_("I already exterminated all my soldiers and maybe more..."), instance_npcname("Heinrich#ghinstance5"));
end;
+
OnTimer42000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk10";
+ npctalk(_("Commander..."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer45000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk11";
+ npctalk(_("Commander! You need to be strong."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer48000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk12";
+ npctalk(_("Our enemy is not human."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer51000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk13";
+ npctalk(_("Even though you deny it, they'll never turn back to human."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer54000:
- donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnTalk5";
+ npctalk(_("..."), instance_npcname("Heinrich#ghinstance5"));
end;
+
OnTimer57000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk14";
+ npctalk(_("Well, let's go then."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer60000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk15";
+ npctalk(_("And you guys, just take a break and follow us."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer63000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk16";
+ npctalk(_("It could be hard fighting so, stay strong."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer66000:
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnTalk17";
+ npctalk(_("Ok, it's time to begin Heinrich."), instance_npcname("Varmundt#ghinstance4"));
end;
+
OnTimer69000:
- mapannounce instance_mapname("2@gl_k"), "9 o'clock positioned warp leading to the 1st zone has been opened. Move from the central hallway. A being with an evil aura seems to be appearing in this region.",bc_map,"0xFFFF00";
+ mapannounce(instance_mapname("2@gl_k"), _("A portal to the west has opened in the central hallway."), bc_map, C_YELLOW);
donpcevent instance_npcname("#ghinstancewarp8")+"::OnEnable";
donpcevent instance_npcname("#ghinstancewarp9")+"::OnEnable";
donpcevent instance_npcname("#ghmemorialmob06")+"::OnEnable";
- donpcevent instance_npcname("Varmunt#ghinstance4")+"::OnDisable";
+ donpcevent instance_npcname("Varmundt#ghinstance4")+"::OnDisable";
donpcevent instance_npcname("Heinrich#ghinstance5")+"::OnDisable";
end;
+
OnTimer70000:
stopnpctimer;
donpcevent instance_npcname("#controlGH4")+"::OnDisable";
@@ -1477,26 +1442,30 @@ OnTimer70000:
}
2@gl_k,0,0,0 script #ghmemorialmob05 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#ghmemorialmob05");
end;
+
OnEnable:
enablenpc instance_npcname("#ghmemorialmob05");
.@map$ = instance_mapname("2@gl_k");
.@label$ = instance_npcname("#ghmemorialmob05")+"::OnMyMobDead";
- areamonster .@map$,124,20,31,162,"Decayed Guard",2468,8,.@label$;
- areamonster .@map$,124,20,31,162,"Sharpshooter Ranger",2469,8,.@label$;
- areamonster .@map$,124,20,31,162,"Fallen Abyss Knight",2470,8,.@label$;
- areamonster .@map$,124,20,31,162,"Suffering Khalitzburg",2471,8,.@label$;
- areamonster .@map$,124,20,31,162,"Swollen Knight",2472,8,.@label$;
- .MyMobs = 80;
+ areamonster(.@map$, 124, 20, 31, 162, _("Corrupted Palace Guard"), MG_RAYDRIC, 8, .@label$);
+ areamonster(.@map$, 124, 20, 31, 162, _("Archer of Death"), MG_RAYDRIC_ARCHER, 8, .@label$);
+ areamonster(.@map$, 124, 20, 31, 162, _("Corrupted Abysmal Knight"), MG_KNIGHT_OF_ABYSS, 8, .@label$);
+ areamonster(.@map$, 124, 20, 31, 162, _("Suffered Khalitzburg"), MG_KHALITZBURG, 8, .@label$);
+ areamonster(.@map$, 124, 20, 31, 162, _("Bloody Knight"), MG_BLOODY_KNIGHT, 8, .@label$);
+ 'MyMobs = 80;
end;
+
OnMyMobDead:
.@map$ = instance_mapname("2@gl_k");
- --.MyMobs;
- if (.MyMobs == 0) {
- mapannounce .@map$, "A being with an evil aura seems to be appearing in this region.",bc_map,"0xFFFF00";
+ 'MyMobs = 'MyMobs - 1;
+ if ('MyMobs == 0) {
+ mapannounce(.@map$, _("Evil Forces are appearing in this area."), bc_map, C_YELLOW, FW_NORMAL, 18);
donpcevent instance_npcname("#ghmemorialmob06")+"::OnDisable2";
donpcevent instance_npcname("#ghmemorialmob07")+"::OnEnable";
donpcevent instance_npcname("#ghmemorialmob05")+"::OnDisable";
@@ -1504,19 +1473,19 @@ OnMyMobDead:
.@label$ = instance_npcname("#ghmemorialmob05")+"::OnMyMobDead";
switch(rand(5)) {
case 0:
- areamonster .@map$,124,20,31,162,"Decayed Guard",2468,1,.@label$;
+ areamonster(.@map$, 124, 20, 31, 162, _("Corrupted Palace Guard"), 2468, 1, .@label$);
break;
case 1:
- areamonster .@map$,124,20,31,162,"Sharpshooter Ranger",2469,1,.@label$;
+ areamonster(.@map$, 124, 20, 31, 162, _("Archer of Death"), 2469, 1, .@label$);
break;
case 2:
- areamonster .@map$,124,20,31,162,"Fallen Abyss Knight",2470,1,.@label$;
+ areamonster(.@map$, 124, 20, 31, 162, _("Corrupted Abysmal Knight"), 2470, 1, .@label$);
break;
case 3:
- areamonster .@map$,124,20,31,162,"Suffering Khalitzburg",2471,1,.@label$;
+ areamonster(.@map$, 124, 20, 31, 162, _("Suffered Khalitzburg"), 2471, 1, .@label$);
break;
case 4:
- areamonster .@map$,124,20,31,162,"Swollen Knight",2472,1,.@label$;
+ areamonster(.@map$, 124, 20, 31, 162, _("Bloody Knight"), 2472, 1, .@label$);
break;
}
}
@@ -1524,21 +1493,27 @@ OnMyMobDead:
}
2@gl_k,0,0,0 script #ghmemorialmob06 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#ghmemorialmob06");
end;
+
OnDisable2:
stopnpctimer;
disablenpc instance_npcname("#ghmemorialmob06");
end;
+
OnEnable:
enablenpc instance_npcname("#ghmemorialmob06");
donpcevent instance_npcname("#ghmemorialmob06")+"::OnSpawn";
end;
+
OnSpawn:
initnpctimer;
end;
+
OnTimer90000:
.@map$ = instance_mapname("2@gl_k");
.@label$ = instance_npcname("#ghmemorialmob05")+"::OnMyMobDead";
@@ -1550,14 +1525,15 @@ OnTimer90000:
58,83,63,78,
69,138,80,127,
34,143,39,138;
- for(.@i = 0; .@i<getarraysize(.@c); .@i += 4) {
- areamonster .@map$,.@c[.@i],.@c[.@i+1],.@c[.@i+2],.@c[.@i+3],"Decayed Guard",2468,1,.@label$;
- areamonster .@map$,.@c[.@i],.@c[.@i+1],.@c[.@i+2],.@c[.@i+3],"Sharpshooter Ranger",2469,1,.@label$;
- areamonster .@map$,.@c[.@i],.@c[.@i+1],.@c[.@i+2],.@c[.@i+3],"Fallen Abyss Knight",2470,1,.@label$;
- areamonster .@map$,.@c[.@i],.@c[.@i+1],.@c[.@i+2],.@c[.@i+3],"Suffering Khalitzburg",2471,1,.@label$;
- areamonster .@map$,.@c[.@i],.@c[.@i+1],.@c[.@i+2],.@c[.@i+3],"Swollen Knight",2472,1,.@label$;
+ for (.@i = 0; .@i < getarraysize(.@c); .@i += 4) {
+ areamonster(.@map$, .@c[.@i], .@c[.@i+1], .@c[.@i+2], .@c[.@i+3], _("Corrupted Palace Guard"), MG_RAYDRIC, 1, .@label$);
+ areamonster(.@map$, .@c[.@i], .@c[.@i+1], .@c[.@i+2], .@c[.@i+3], _("Archer of Death"), MG_RAYDRIC_ARCHER, 1, .@label$);
+ areamonster(.@map$, .@c[.@i], .@c[.@i+1], .@c[.@i+2], .@c[.@i+3], _("Corrupted Abysmal Knight"), MG_KNIGHT_OF_ABYSS, 1, .@label$);
+ areamonster(.@map$, .@c[.@i], .@c[.@i+1], .@c[.@i+2], .@c[.@i+3], _("Suffered Khalitzburg"), MG_KHALITZBURG, 1, .@label$);
+ areamonster(.@map$, .@c[.@i], .@c[.@i+1], .@c[.@i+2], .@c[.@i+3], _("Bloody Knight"), MG_BLOODY_KNIGHT, 1, .@label$);
}
end;
+
OnTimer92000:
stopnpctimer;
donpcevent instance_npcname("#ghmemorialmob06")+"::OnSpawn";
@@ -1565,18 +1541,22 @@ OnTimer92000:
}
2@gl_k,0,0,0 script #ghmemorialmob07 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#ghmemorialmob07");
end;
+
OnEnable:
enablenpc instance_npcname("#ghmemorialmob07");
- areamonster instance_mapname("2@gl_k"),124,20,31,162,"The Destruction of the First Captain",2473,1,instance_npcname("#ghmemorialmob07")+"::OnMyMobDead";
+ areamonster instance_mapname("2@gl_k"), 124, 20, 31, 162, _("1st Commander of Destruction"), MG_M_UNDEAD_KNIGHT, 1, instance_npcname("#ghmemorialmob07")+"::OnMyMobDead";
end;
+
OnMyMobDead:
.@map$ = instance_mapname("2@gl_k");
if (mobcount(.@map$,instance_npcname("#ghmemorialmob07")+"::OnMyMobDead") < 1) {
- mapannounce .@map$, "3 o'clock positioned warp leading to the 2nd zone has been opened. Use the central hallway to get there.",bc_map,"0xFFFF00";
+ mapannounce(.@map$, _("A portal has opened to the east in the central hallway."), bc_map, C_YELLOW);
donpcevent instance_npcname("#ghinstancewarp10")+"::OnEnable";
donpcevent instance_npcname("#ghinstancewarp11")+"::OnEnable";
donpcevent instance_npcname("#ghmemorialmob08")+"::OnEnable";
@@ -1586,45 +1566,49 @@ OnMyMobDead:
}
2@gl_k,0,0,0 script #ghmemorialmob08 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#ghmemorialmob08");
end;
+
OnEnable:
enablenpc instance_npcname("#ghmemorialmob08");
.@map$ = instance_mapname("2@gl_k");
.@label$ = instance_npcname("#ghmemorialmob08")+"::OnMyMobDead";
- areamonster .@map$,175,163,265,18,"Decayed Guard",2468,7,.@label$;
- areamonster .@map$,175,163,265,18,"Sharpshooter Ranger",2469,7,.@label$;
- areamonster .@map$,175,163,265,18,"Fallen Abyss Knight",2470,7,.@label$;
- areamonster .@map$,175,163,265,18,"Suffering Khalitzburg",2471,7,.@label$;
- areamonster .@map$,175,163,265,18,"Swollen Knight",2472,7,.@label$;
- .MyMobs = 35;
+ areamonster .@map$, 175, 163, 265, 18, "Corrupted Palace Guard", 2468, 7, .@label$;
+ areamonster .@map$, 175, 163, 265, 18, "Wandering Archer", 2469, 7, .@label$;
+ areamonster .@map$, 175, 163, 265, 18, "Corrupted Abysmal Knight", 2470, 7, .@label$;
+ areamonster .@map$, 175, 163, 265, 18, "Suffered Khalitzburg", 2471, 7, .@label$;
+ areamonster .@map$, 175, 163, 265, 18, "Bloody Knight", 2472, 7, .@label$;
+ 'MyMobs = 35;
end;
+
OnMyMobDead:
.@map$ = instance_mapname("2@gl_k");
- --.MyMobs;
- if (.MyMobs == 0) {
- mapannounce .@map$, "A being with an evil aura seems to be appearing in this region.",bc_map,"0xFFFF00";
+ 'MyMobs = 'MyMobs-1;
+ if ('MyMobs == 0) {
+ mapannounce(.@map$, _("An evil presence has teleported into this area."), bc_map, C_YELLOW, FW_NORMAL, 18);
donpcevent instance_npcname("#ghmemorialmob09")+"::OnEnable";
donpcevent instance_npcname("#ghmemorialmob08")+"::OnDisable";
} else {
.@label$ = instance_npcname("#ghmemorialmob08")+"::OnMyMobDead";
- switch(rand(5)) {
+ switch (rand(5)) {
case 0:
- areamonster .@map$,175,163,265,18,"Decayed Guard",2468,1,.@label$;
+ areamonster(.@map$, 175, 163, 265, 18, _("Corrupted Palace Guard"), MG_RAYDRIC, 1, .@label$);
break;
case 1:
- areamonster .@map$,175,163,265,18,"Sharpshooter Ranger",2469,1,.@label$;
+ areamonster(.@map$, 175, 163, 265, 18, _("Wandering Archer"), MG_RAYDRIC_ARCHER, 1, .@label$);
break;
case 2:
- areamonster .@map$,175,163,265,18,"Fallen Abyss Knight",2470,1,.@label$;
+ areamonster(.@map$, 175, 163, 265, 18, _("Corrupted Abysmal Knight"), MG_KNIGHT_OF_ABYSS, 1, .@label$);
break;
case 3:
- areamonster .@map$,175,163,265,18,"Suffering Khalitzburg",2471,1,.@label$;
+ areamonster(.@map$, 175, 163, 265, 18, _("Suffered Khalitzburg"), MG_KHALITZBURG, 1, .@label$);
break;
case 4:
- areamonster .@map$,175,163,265,18,"Swollen Knight",2472,1,.@label$;
+ areamonster(.@map$, 175, 163, 265, 18, _("Bloody Knight"), MG_BLOODY_KNIGHT, 1, .@label$);
break;
}
}
@@ -1632,19 +1616,24 @@ OnMyMobDead:
}
2@gl_k,0,0,0 script #ghmemorialmob09 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#ghmemorialmob09");
end;
+
OnEnable:
enablenpc instance_npcname("#ghmemorialmob09");
- areamonster instance_mapname("2@gl_k"),175,163,265,18,"The Destruction of the Second Captain",2474,1,instance_npcname("#ghmemorialmob09")+"::OnMyMobDead";
+ areamonster(instance_mapname("2@gl_k"), 175, 163, 265, 18, _("2nd Commander of Destruction"), MG_F_UNDEAD_KNIGHT, 1, instance_npcname("#ghmemorialmob09")+"::OnMyMobDead");
end;
+
OnMyMobDead:
.@map$ = instance_mapname("2@gl_k");
if (mobcount(.@map$,instance_npcname("#ghmemorialmob09")+"::OnMyMobDead") < 1) {
- mapannounce .@map$, "12 o'clock positioned warp leading to the 3rd zone has been opened. Use the central hallway to get there.",bc_map,"0xFFFF00";
+ mapannounce(.@map$, _("A new portal has appeared at the end of the central corridor."), bc_map, C_YELLOW);
donpcevent instance_npcname("#ghinstancewarp12")+"::OnEnable";
+ donpcevent instance_npcname("#ghinstancewarp13")+"::OnEnable";
donpcevent instance_npcname("#controlGH6")+"::OnEnable";
donpcevent instance_npcname("#ghmemorialmob08")+"::OnDisable";
donpcevent instance_npcname("#ghmemorialmob09")+"::OnDisable";
@@ -1653,282 +1642,309 @@ OnMyMobDead:
}
2@gl_k,0,0,0 script #ghmemorialmob10 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#ghmemorialmob10");
end;
+
OnEnable:
enablenpc instance_npcname("#ghmemorialmob10");
- donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnDisable";
- monster instance_mapname("2@gl_k"),158,255,"Amdarias",2476,1,instance_npcname("#ghmemorialmob10")+"::OnMyMobDead";
+ donpcevent instance_npcname("Gerhalt#ghinstance1")+"::OnDisable";
+ monster(instance_mapname("2@gl_k"), 158, 255, _("Amdarais"), MG_AMDARAIS, 1, instance_npcname("#ghmemorialmob10")+"::OnMyMobDead");
+ unittalk($@mobid[0], _("Run away... run away from me..."));
+ initnpctimer;
+ end;
+
+OnTimer6000:
+ unittalk($@mobid[0], _("I don't want... I don't want to kill anyone. Uhuuuuuh"));
+ end;
+
+OnTimer12000:
+ unittalk($@mobid[0], _("Please kill me! Please!"));
+ end;
+
+OnTimer18000:
+ unittalk($@mobid[0], _("Eeeeee...eee...die... die..."));
end;
+
+OnTimer24000:
+ unittalk($@mobid[0], _("Demolition... Death!..."));
+ stopnpctimer;
+ end;
+
OnMyMobDead:
if (mobcount(instance_mapname("2@gl_k"),instance_npcname("#ghmemorialmob10")+"::OnMyMobDead") < 1) {
donpcevent instance_npcname("Hugin#ghinstance1")+"::OnEnable";
+ donpcevent instance_npcname("#ghinstancewarp15")+"::OnEnable";
+ for (.@i = 1; .@i <= 8; .@i++)
+ enablenpc instance_npcname("Strange crack#"+.@i);
+ stopnpctimer;
donpcevent instance_npcname("#ghmemorialmob10")+"::OnDisable";
}
end;
}
2@gl_k,155,250,7 script Heinrich#ghinstance6 4_M_HEINRICH,{
+ cutin "gl_heinrich1",2;
+ mes("[Heinrich]");
+ mes("What are you decorating Himelmez!");
+ close2;
+ cutin "gl_heinrich1",255;
end;
+
OnInstanceInit:
OnDisable:
hideonnpc instance_npcname("Heinrich#ghinstance6");
end;
+
OnEnable:
hideoffnpc instance_npcname("Heinrich#ghinstance6");
end;
-OnTalk1:
- npctalk "Gerhard!";
- end;
-OnTalk2:
- npctalk "What are you doing to my men, Himmelmez?!";
- end;
-OnTalk3:
- npctalk "Himmelmez! You don't need to make any more sacrifices!";
- end;
-OnTalk4:
- npctalk "Let him go! I don't want one more sacrifice!";
- end;
-OnTalk5:
- npctalk "I will not forgive you.";
- end;
-OnTalk6:
- npctalk "Just leave us alone, Himmelmez!!";
- end;
}
-2@gl_k,162,250,1 script Varmunt#ghinstance5 4_M_BARMUND,{
- mes "[Varmunt]";
- mes "We can't escape this";
- mes "eternal confinement...";
+2@gl_k,162,250,1 script Varmundt#ghinstance5 4_M_BARMUND,{
cutin "gl_barmund2",2;
+ mes("[Varmundt]");
+ mes("Can't take off this bridle...");
close2;
cutin "gl_barmund2",255;
end;
+
OnInstanceInit:
OnDisable:
- hideonnpc instance_npcname("Varmunt#ghinstance5");
+ hideonnpc instance_npcname("Varmundt#ghinstance5");
end;
+
OnEnable:
- hideoffnpc instance_npcname("Varmunt#ghinstance5");
- end;
-OnTalk1:
- npctalk "What? This cannot be. We must prevent Amdarias's attacks!";
+ hideoffnpc instance_npcname("Varmundt#ghinstance5");
end;
}
-2@gl_k,158,252,3 script Himmelmez#ghinstance4 4_F_HIMEL,4,4,{
+2@gl_k,158,252,3 script Himelmez#ghinstance4 4_F_HIMEL,{
+ cutin "gl_himel2",2;
+ mes("[Himelmez]");
+ mes("That is amazing ~ you made it all the way here. May I say thank you?");
+ close2;
+ cutin "gl_himel2",255;
end;
+
OnInstanceInit:
OnDisable:
- hideonnpc instance_npcname("Himmelmez#ghinstance4");
+ hideonnpc instance_npcname("Himelmez#ghinstance4");
end;
+
OnEnable:
- hideoffnpc instance_npcname("Himmelmez#ghinstance4");
- end;
-OnTalk1:
- npctalk "Great~ I thought you wouldn't come near the end...";
- end;
-OnTalk2:
- npctalk "Huhu, I have already found a piece of Ymir's Heart, Heinrich.";
- end;
-OnTalk3:
- npctalk "It would've been faster if there were no distractions.";
- end;
-OnTalk4:
- npctalk "What do you think? Making it look like an accidental disease infected the king and the people around...";
- end;
-OnTalk5:
- npctalk "You want that?";
- end;
-OnTalk6:
- npctalk "This one is your final blow, Heinrich.";
- end;
-OnTalk7:
- npctalk "It is said that stopping me requires a skillfull person.";
- end;
-OnTalk8:
- npctalk "Seems like a perfect scenario to make my new monster, Amdarias.";
- end;
-OnTalk9:
- npctalk "Booh~ I'm scared.";
- end;
-OnTalk10:
- npctalk "Anyway, it was nice talking to you. Maybe we'll have the chance to meet again in the next story.";
- end;
-OnTalk11:
- npctalk "Well, make sure you will come back again.";
+ hideoffnpc instance_npcname("Himelmez#ghinstance4");
end;
}
2@gl_k,150,179,0 script #controlGH6 HIDDEN_NPC,2,2,{
end;
+
OnTouch:
- mapannounce instance_mapname("2@gl_k"), "???: Do not come! There are traps everywhere here... Aaaaack!!!!",bc_map,"0xFF0000";
+ mapannounce(instance_mapname("2@gl_k"), _("???: Do not come here! It's a trap... Kkkkah!!!"), bc_map, C_RED, FW_NORMAL, 18);
specialeffect EF_BASH;
- donpcevent instance_npcname("Himmelmez#ghinstance3")+"::OnEnable";
+ donpcevent instance_npcname("Himelmez#ghinstance3")+"::OnEnable";
donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnEnable";
- donpcevent instance_npcname("Varmunt#ghinstance5")+"::OnEnable";
- donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEnable";
+ donpcevent instance_npcname("Varmundt#ghinstance5")+"::OnEnable";
+ donpcevent instance_npcname("Gerhalt#ghinstance1")+"::OnEnable";
donpcevent instance_npcname("#controlGH6")+"::OnDisable";
end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#controlGH6");
end;
+
OnEnable:
enablenpc instance_npcname("#controlGH6");
end;
}
-2@gl_k,158,252,1 script Himmelmez#ghinstance3 4_F_HIMEL,7,7,{
+2@gl_k,158,252,1 script Himelmez#ghinstance3 4_F_HIMEL,7,7,{
end;
+
OnTouch:
specialeffect EF_BASH;
donpcevent instance_npcname("#controlGH5")+"::OnEnable";
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnEnable";
- donpcevent instance_npcname("Himmelmez#ghinstance3")+"::OnDisable";
+ donpcevent instance_npcname("Himelmez#ghinstance4")+"::OnEnable";
+ donpcevent instance_npcname("Himelmez#ghinstance3")+"::OnDisable";
end;
+
OnInstanceInit:
OnDisable:
- disablenpc instance_npcname("Himmelmez#ghinstance3");
+ disablenpc instance_npcname("Himelmez#ghinstance3");
end;
+
OnEnable:
- enablenpc instance_npcname("Himmelmez#ghinstance3");
+ enablenpc instance_npcname("Himelmez#ghinstance3");
end;
}
-2@gl_k,158,255,3 script Gerhard#ghinstance1 4_LEVITATEMAN,{
- end;
+2@gl_k,158,255,3 script Gerhalt#ghinstance1 4_LEVITATEMAN,{
+ mes("[Gerhalt]");
+ mes("Uuuuu... Khhhah!\r"
+ "Just run away with the commander!");
+ close;
+
OnInstanceInit:
OnDisable:
- hideonnpc instance_npcname("Gerhard#ghinstance1");
+ hideonnpc instance_npcname("Gerhalt#ghinstance1");
end;
+
OnEnable:
- hideoffnpc instance_npcname("Gerhard#ghinstance1");
- end;
-OnTalk1:
- npctalk "Damn it! Run away! I can't withstand anymore!";
+ hideoffnpc instance_npcname("Gerhalt#ghinstance1");
end;
-OnTalk2:
- npctalk "Commandant... Come on, you need to run away from here... Ugh.";
- end;
-OnTalk3:
- npctalk "Even if you defile my body, I won't let you take my soul, Himmelmez!";
+
+OnTalk3: /*Unused*/
+ npctalk(_("Gerhalt : You can make my body but you can't take my soul Himelmez!"));
end;
+
OnEffect1:
specialeffect EF_BARRIER;
end;
+
OnEffect2:
specialeffect EF_CHAINCOMBO;
end;
+
OnEffect3:
specialeffect EF_MAPPILLAR2;
end;
+
OnEffect4:
specialeffect EF_MAPPILLAR;
end;
+
OnEffect5:
specialeffect EF_LORD;
end;
}
2@gl_k,0,0,0 script #controlGH5 FAKE_NPC,{
+ end;
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("#controlGH5");
end;
+
OnEnable:
enablenpc instance_npcname("#controlGH5");
initnpctimer;
end;
+
OnTimer3000:
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk1";
+ npctalk(_("Amazing~ I thought that you were not even close to getting here..."), instance_npcname("Himelmez#ghinstance4"));
end;
+
OnTimer6000:
- donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnTalk1";
+ npctalk(_("Gerhalt : Kkkkah! Run away! I can't endure anymore!"), instance_npcname("Gerhalt#ghinstance1"));
end;
+
OnTimer9000:
- donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnTalk1";
- end;
-OnTimer12000:
- donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnTalk2";
+ npctalk(_("Gerhalt!"), instance_npcname("Heinrich#ghinstance6"));
end;
+
OnTimer15000:
- donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnTalk2";
+ npctalk(_("What are you doing to my soldier Himelmez!"), instance_npcname("Heinrich#ghinstance6"));
end;
+
OnTimer18000:
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk2";
+ npctalk(_("Hoo hoo, I already found a piece of Ymir's heart Heinrich."), instance_npcname("Himelmez#ghinstance4"));
end;
+
OnTimer21000:
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk3";
+ npctalk(_("If he did not bother me, it would have been faster."), instance_npcname("Himelmez#ghinstance4"));
end;
+
OnTimer24000:
- donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnTalk3";
+ npctalk(_("Gerhalt : Commandant... Come on, you need to run away from here... Ugh."), instance_npcname("Gerhalt#ghinstance1"));
end;
+
OnTimer27000:
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk4";
+ npctalk(_("Really? What makes you think so?"), instance_npcname("Himelmez#ghinstance4"));
end;
+
OnTimer30000:
- donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnTalk3";
+ npctalk(_("Himelmez! You already made what you want so there is no more need for a sacrifice!"), instance_npcname("Heinrich#ghinstance6"));
end;
+
OnTimer33000:
- donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnTalk4";
+ npctalk(_("Let him go! I don't need to see anyone else suffer!"), instance_npcname("Heinrich#ghinstance6"));
end;
+
OnTimer36000:
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk5";
+ npctalk(_("Let him go? I think... No..."), instance_npcname("Himelmez#ghinstance4"));
end;
+
OnTimer39000:
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk6";
+ npctalk(_("Besides, this is your last surviving soldier Heinrich."), instance_npcname("Himelmez#ghinstance4"));
end;
+
OnTimer42000:
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk7";
+ npctalk(_("He made life difficult for me."), instance_npcname("Himelmez#ghinstance4"));
end;
+
OnTimer45000:
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk8";
+ npctalk(_("He is perfectly fit for my new creation Amdarais."), instance_npcname("Himelmez#ghinstance4"));
end;
+
OnTimer48000:
- donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnTalk5";
+ npctalk(_("I'll never forgive you."), instance_npcname("Heinrich#ghinstance6"));
end;
+
OnTimer51000:
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk9";
+ npctalk(_("Uh uh~ I'm so scared."), instance_npcname("Himelmez#ghinstance4"));
end;
+
OnTimer54000:
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk10";
+ npctalk(_("Anyway, we will have a chance to see because we need to talk more."), instance_npcname("Himelmez#ghinstance4"));
end;
+
OnTimer57000:
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnTalk11";
+ npctalk(_("So long boys."), instance_npcname("Himelmez#ghinstance4"));
end;
+
OnTimer60000:
- donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect1";
+ donpcevent instance_npcname("Gerhalt#ghinstance1")+"::OnEffect1";
end;
+
OnTimer63000:
- donpcevent instance_npcname("Himmelmez#ghinstance4")+"::OnDisable";
+ donpcevent instance_npcname("Himelmez#ghinstance4")+"::OnDisable";
end;
+
OnTimer65000:
- donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect3";
+ donpcevent instance_npcname("Gerhalt#ghinstance1")+"::OnEffect3";
end;
+
OnTimer66000:
- donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect2";
+ donpcevent instance_npcname("Gerhalt#ghinstance1")+"::OnEffect2";
end;
+
OnTimer67000:
- donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnTalk6";
- donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect4";
+ npctalk(_("I'll never let you get away Himelmez!!"), instance_npcname("Heinrich#ghinstance6"));
+ donpcevent instance_npcname("Gerhalt#ghinstance1")+"::OnEffect4";
end;
+
OnTimer70000:
- donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect3";
- donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect4";
+ donpcevent instance_npcname("Gerhalt#ghinstance1")+"::OnEffect3";
+ donpcevent instance_npcname("Gerhalt#ghinstance1")+"::OnEffect4";
donpcevent instance_npcname("Heinrich#ghinstance6")+"::OnDisable";
- donpcevent instance_npcname("Varmunt#ghinstance5")+"::OnTalk1";
+ npctalk(_("We have no choice. We have to fight against Amdarais!"), instance_npcname("Varmundt#ghinstance5"));
+ donpcevent instance_npcname("Varmundt#ghinstance5")+"::OnDisable";
end;
+
OnTimer73000:
- mapannounce instance_mapname("2@gl_k"), "Leads toward Gerhard's body.",bc_map,"0xFFFFFF";
+ mapannounce(instance_mapname("2@gl_k"), _("Gerhalt's body changing."), bc_map, C_WHITE);
end;
+
OnTimer76000:
- donpcevent instance_npcname("Gerhard#ghinstance1")+"::OnEffect5";
+ donpcevent instance_npcname("Gerhalt#ghinstance1")+"::OnEffect5";
end;
+
OnTimer80000:
donpcevent instance_npcname("#ghmemorialmob10")+"::OnEnable";
stopnpctimer;
@@ -1937,48 +1953,53 @@ OnTimer80000:
}
2@gl_k,158,241,1 script Hugin#ghinstance1 4_M_SAGE_C,{
- if (questprogress(12319,HUNTING) == 2) {
- mes "[Hugin]";
- mes "Well, you are pretty ridiculous. Beginners shouldn't get the loot Amdarias drops.";
- erasequest 12318;
+ if (questprogress(12319, HUNTING) == 2) {
+ mes("[Hugin]");
+ mes("Hm, you are very well. First of all, let me give you some loot from Amdarais.");
erasequest 12319;
- getitem Coagulated_Spell,1; //Coagulated Spell
+ setquest 12321;
+ setquest 12322;
+ erasequest 12321;
+ if (gh_instance == 1) {
+ getitem Temporal_Crystal, 1;
+ getitem Coagulated_Spell, 1;
+ } else {
+ getitem Temporal_Crystal, 5;
+ getitem Coagulated_Spell, 5;
+ gh_instance = 1;
+ }
+ getexp(350000, 350000);
next;
- mes "[Hugin]";
- mes "Varmunt, I have arbitrarily stopped time. And soon, the time gap will be gone.";
+ mes("[Hugin]");
+ mes("Varmundt's time is stopped by me. And your time will be distorted soon.");
specialeffect2 EF_BLIND,AREA;
soundeffect "_blind.wav",0;
next;
- mes "[Hugin]";
- mes "Poor time travelers.";
- mes "They will endlessly retry to prevent the tragedy that affected this city.";
+ mes("[Hugin]");
+ mes("Maybe this poor time traveler will try to stop Glast Heim's tragedy from happening.");
next;
- mes "[Hugin]";
- mes "But the beggining of these time travels won't redempt your actions.";
- mes "This will continue forever...";
+ mes("[Hugin]");
+ mes("However, we will never overlook his behavior now and forever...");
next;
- mes "[Hugin]";
- mes "Now, I may erase your memory again. Perhaps you will have a different fate next time.";
+ mes("[Hugin]");
+ mes("Now, let me remove your memory. If you see me again, that will be brand new.");
specialeffect2 EF_FREEZE;
close2;
getmapxy(.@map$, .@x, .@y, UNITTYPE_PC);
warp .@map$,.@x,.@y;
end;
} else {
- mes "[Hugin]";
- mes "The gap of time is almost distorted.";
- mes "Done. There you go. Come!";
- mes "I have to get out!";
+ mes("[Hugin]");
+ mes("Oops I almost distorted the time gap. Come over here. We need to go out!");
next;
- select("Bah... Soon after you...");
- mes "[Hugin]";
- mes "Soon after me? Anyways...";
- mes "Doesn't matter, soon the gap of time will be closed, I have to get out of here.";
+ select("You were just with me...");
+ mes("[Hugin]");
+ mes("What did you say just before? Anyway that is not important, The gap of time will be closed so, we need to get out of here.");
next;
- switch(select("Since I'm here, let's explore more.", "Please, send me out.")) {
+ switch(select("Let me look around more:Please let me out")) {
case 1:
- mes "[Hugin]";
- mes "..................";
+ mes("[Hugin]");
+ mes("Really? This place will be broke down so, please look around quickly.");
close;
case 2:
close2;
@@ -1986,11 +2007,835 @@ OnTimer80000:
end;
}
}
+
OnInstanceInit:
OnDisable:
disablenpc instance_npcname("Hugin#ghinstance1");
end;
+
OnEnable:
enablenpc instance_npcname("Hugin#ghinstance1");
end;
}
+
+// Treasure Room
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+// TODO: Need script command makeitem2
+1@gl_k,269,267,0 script Strange crack#entrace HIDDEN_NPC,{
+ if (!questprogress(12322)) {
+ mes("The crack looks suspicious, but nothing more to check.");
+ close;
+ }
+ .@map$ = instance_mapname("1@gl_k");
+ warp .@map$,149,193;
+ end;
+}
+
+1@gl_k,129,136,0 script Strange crack#1 HIDDEN_NPC,{
+ specialeffect EF_SPELLBREAKER;
+ specialeffect EF_BASH;
+ .@random = rand(1, 4);
+ .@random_ = rand(1, 4);
+ for (.@i = 1; .@i <= .@random; .@i++) {
+ makeitem White_Jewel, 1, "this", 129, 138;
+ }
+ makeitem Coagulated_Spell, 1, "this", 129, 138;
+ if (.@random_ == 4) {
+ //makeitem2 Heavy_Sword, 1, "this", 129, 138, 0, 0, 0, 0, 0, 0, 0;
+ makeitem Heavy_Sword, 1, "this", 129, 138;
+ }
+ // FIXME[Haru]: Intention is not clear. Either add 'end;' or add '/* Fall through */'
+
+OnInstanceInit:
+OnDisable:
+ disablenpc instance_npcname("Strange crack#1");
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("Strange crack#1");
+ end;
+}
+
+1@gl_k,135,136,0 script Strange crack#2 HIDDEN_NPC,{
+ specialeffect EF_SPELLBREAKER;
+ specialeffect EF_BASH;
+ .@random = rand(1, 4);
+ .@random_ = rand(1, 4);
+ for (.@i=1; .@i<=.@random; .@i++) {
+ makeitem Blue_Jewel, 1, "this", 135, 138;
+ }
+ if (.@random_ == 4) {
+ //makeitem2 Staff_Of_Geffen, 1, "this", 135, 138, 0, 0, 0, 0, 0, 0, 0;
+ makeitem Staff_Of_Geffen, 1, "this", 135, 138;
+ }
+ makeitem Coagulated_Spell, 1, "this", 135, 138;
+ // FIXME[Haru]: Intention is not clear. Either add 'end;' or add '/* Fall through */'
+
+OnInstanceInit:
+OnDisable:
+ disablenpc instance_npcname("Strange crack#2");
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("Strange crack#2");
+ end;
+
+}
+1@gl_k,141,136,0 script Strange crack#3 HIDDEN_NPC,{
+ specialeffect EF_SPELLBREAKER;
+ specialeffect EF_BASH;
+ .@random = rand(1, 4);
+ .@random_ = rand(1, 4);
+ for (.@i=1; .@i<=.@random; .@i++) {
+ makeitem Red_Jewel, 1, "this", 141, 138;
+ }
+ makeitem Coagulated_Spell, 1, "this", 141, 138;
+ makeitem Gold_Bullion, 1, "this", 141, 138;
+ if (.@random_ == 4) {
+ //makeitem2 Ceremonial_Sword, 1, "this", 141, 138, 0, 0, 0, 0, 0, 0, 0;
+ makeitem Ceremonial_Sword, 1, "this", 141, 138;
+ }
+ // FIXME[Haru]: Intention is not clear. Either add 'end;' or add '/* Fall through */'
+
+OnInstanceInit:
+OnDisable:
+ disablenpc instance_npcname("Strange crack#3");
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("Strange crack#3");
+ end;
+}
+
+1@gl_k,147,136,0 script Strange crack#4 HIDDEN_NPC,{
+ specialeffect EF_SPELLBREAKER;
+ specialeffect EF_BASH;
+ .@random = rand(1, 4);
+ .@random_ = rand(1, 4);
+ for (.@i=1; .@i<=.@random; .@i++) {
+ makeitem Scarlet_Jewel, 1, "this", 147, 138;
+ }
+ if (.@random_ == 4) {
+ //makeitem2 Silversmith_Bracelet, 1, "this", 147, 138, 0, 0, 0, 0, 0, 0, 0;
+ makeitem Silversmith_Bracelet, 1, "this", 147, 138;
+ }
+ makeitem Coagulated_Spell, 1, "this", 147, 138;
+ makeitem Gold_Coin_Basket, 1, "this", 147, 138;
+ makeitem Colorful_Brooch, 1, "this", 147, 138;
+ // FIXME[Haru]: Intention is not clear. Either add 'end;' or add '/* Fall through */'
+
+OnInstanceInit:
+OnDisable:
+ disablenpc instance_npcname("Strange crack#4");
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("Strange crack#4");
+ end;
+}
+
+1@gl_k,153,136,0 script Strange crack#5 HIDDEN_NPC,{
+ specialeffect EF_SPELLBREAKER;
+ specialeffect EF_BASH;
+ .@random = rand(1, 4);
+ .@random_ = rand(1, 4);
+ for (.@i=1; .@i<=.@random; .@i++) {
+ makeitem Azure_Jewel, 1, "this", 153, 138;
+ }
+ makeitem Coagulated_Spell, 1, "this", 153, 138;
+ makeitem White_Gold_Bullion, 1, "this", 153, 138;
+ if (.@random_ == 4) {
+ //makeitem2 Goldsmithing_Dagger, 1, "this", 153, 138, 0, 0, 0, 0, 0, 0, 0;
+ makeitem Goldsmithing_Dagger, 1, "this", 153, 138;
+ }
+ // FIXME[Haru]: Intention is not clear. Either add 'end;' or add '/* Fall through */'
+
+OnInstanceInit:
+OnDisable:
+ disablenpc instance_npcname("Strange crack#5");
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("Strange crack#5");
+ end;
+}
+
+1@gl_k,159,136,0 script Strange crack#6 HIDDEN_NPC,{
+ specialeffect EF_SPELLBREAKER;
+ specialeffect EF_BASH;
+ .@random = rand(1, 4);
+ .@random_ = rand(1, 4);
+ for (.@i=1; .@i<=.@random; .@i++) {
+ makeitem Skyblue_Jewel, 1, "this", 159, 138;
+ }
+ makeitem Coagulated_Spell, 1, "this", 159, 138;
+ makeitem Silver_Bullion, 1, "this", 159, 138;
+ if (.@random_ == 4) {
+ //makeitem2 Engraved_Armor, 1, "this", 159, 138, 0, 0, 0, 0, 0, 0, 0;
+ makeitem Engraved_Armor, 1, "this", 159, 138;
+ }
+ // FIXME[Haru]: Intention is not clear. Either add 'end;' or add '/* Fall through */'
+
+OnInstanceInit:
+OnDisable:
+ disablenpc instance_npcname("Strange crack#6");
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("Strange crack#6");
+ end;
+}
+
+1@gl_k,165,136,0 script Strange crack#7 HIDDEN_NPC,{
+ specialeffect EF_SPELLBREAKER;
+ specialeffect EF_BASH;
+ .@random = rand(1, 4);
+ for (.@i=1; .@i<=.@random; .@i++) {
+ makeitem Violet_Jewel, 1, "this", 165, 138;
+ }
+ makeitem Coagulated_Spell, 1, "this", 165, 138;
+ // FIXME[Haru]: Intention is not clear. Either add 'end;' or add '/* Fall through */'
+
+OnInstanceInit:
+OnDisable:
+ disablenpc instance_npcname("Strange crack#7");
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("Strange crack#7");
+ end;
+}
+
+1@gl_k,171,136,0 script Strange crack#8 HIDDEN_NPC,{
+ specialeffect EF_SPELLBREAKER;
+ specialeffect EF_BASH;
+ .@random = rand(1, 4);
+ for (.@i=1; .@i<=.@random; .@i++) {
+ makeitem Dark_Red_Jewel, 1, "this", 171, 138;
+ }
+ makeitem Coagulated_Spell, 1, "this", 171, 138;
+ // FIXME[Haru]: Intention is not clear. Either add 'end;' or add '/* Fall through */'
+
+OnInstanceInit:
+OnDisable:
+ disablenpc instance_npcname("Strange crack#8");
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("Strange crack#8");
+ end;
+}
+
+// Merchant, and Trade NPC - Get Temporal Boots --> exchange to Temporal_STAT_Boots
+// Upon trade all refines got removed
+// Uses Temporal_Crystal
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+glast_01,210,273,5 script Hugin's Butler 1_F_04,{
+ disable_items;
+ mes("[Hugin's Butler]"); // custom check
+ if (MaxWeight - Weight < 1000) {
+ mes("Your bag is too heavy. Reduce some weight and come back.");
+ close;
+ }
+ mes("I would like to thank you for helping my master Hugin. I can transmute your ^FF0000Temporal Crystals^000000 into a pair of boots that have withstood the test of time... the ^FF0000Temporal Boots^000000.");
+ next;
+ mes("[Hugin's Butler]");
+ mes("What would you like me to do young adventurer?");
+ next;
+ switch (select("Give me the Temporal Boots", "Upgrade my Temporal Boots")) {
+ case 1:
+ if (countitem(Temporal_Crystal) > 0) {
+ mes("[Hugin's Butler]");
+ mes("Take these Temporal Boots. We can upgrade your Temporal Boots with 5 Temporal Crystals.");
+ delitem Temporal_Crystal, 1;
+ getitem Temporal_Boots, 1;
+ close;
+ }
+ mes("[Hugin's Butler]");
+ mes("You need more Temporal Crystals. Come back when you get some more Temporal Crystals during your travel through Old Glast Heim.");
+ close;
+ case 2:
+ .@part = EQI_SHOES;
+ if (!getequipisequiped(.@part)) {
+ mes("[Hugin's Butler]");
+ mes("Wear the ^0000FFTemporal Boots^000000 you want to upgrade, and then talk to me once again.");
+ close;
+ }
+ if (!isequipped(Temporal_Boots)) { // check
+ mes("[Hugin's Butler]");
+ mes("You are not wearing the Temporal Boots. Talk to me once you're wearing them.");
+ close;
+ }
+ if (countitem(Temporal_Crystal) < 5) {
+ mes("[Hugin's Butler]");
+ mes("Not enough Temporal Crystals. You need ^FF00005 Temporal Crystals^000000 to upgrade your boots.");
+ close;
+ }
+ mes("[Hugin's Butler]");
+ mes("You can trade ^0000FF1 Temporal Boots and 5 Temporal Crystals^000000 for 1 of the following items. ^FF0000Previous refine rate will not be retained with these new ones^000000.");
+ next;
+ setarray .@type$[0], "Strength", "Intelligence", "Agility", "Vitality", "Dexterity", "Luck";
+ setarray .@equip_type[0], Temporal_STR_Boots, Temporal_INT_Boots, Temporal_AGI_Boots, Temporal_VIT_Boots, Temporal_DEX_Boots, Temporal_LUK_Boots;
+ .@select = select("Cancel", "Str Boots", "Int Boots", "Agi Boots", "Vit Boots", "Dex Boots", "Luk Boots");
+ switch (.@select) {
+ case 1:
+ mes("[Hugin's Butler]");
+ mes("Come back anytime you want.");
+ close;
+ case 2:
+ case 3:
+ case 4:
+ case 5:
+ case 6:
+ case 7:
+ mes("[Hugin's Butler]");
+ mesf("Are you sure about buying Temporal ^FF0000%s^000000 Boots? There is no refund.", .@type$[.@select-2]);
+ next;
+ if (select("Think again", "Yes, I am sure.") == 2) {
+ mes("[Hugin's Butler]");
+ mes("The boots has been upgraded as you want.");
+ delequip .@part;
+ delitem Temporal_Crystal, 5;
+ getitem2 .@equip_type[.@select-2], 1, 1, 0, 0, 0, 0, 0, 0; // Temporal_STR_Boots, Temporal_INT_Boots, Temporal_AGI_Boots, Temporal_VIT_Boots, Temporal_DEX_Boots, Temporal_LUK_Boots
+ close;
+ }
+ mes("[Hugin's Butler]");
+ mes("Ok, come back again when you are sure.");
+ close;
+ }
+ }
+}
+
+// Enchant NPC - Coagulated Spell to enchants on 4th slot. First one to pick --> upgraded --> additional random enchant on 3rd slot
+// Adding a socket on the Craftsman NPC will remove the 3rd and 4th slot enchants of the Temporal_STAT_Boots
+// Enchanting can fail, the 3th slot random one is guaranteed
+// Refine remains
+// Item Used: Coagulated_Spell
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+glast_01,212,273,4 script Hugin's Magic Master 1_F_01,{ // Custom text due to official enchant mechanics
+ disable_items;
+ if (MaxWeight - Weight < 1000) {
+ mes("Your bag is too heavy. Reduce some weight and come back.");
+ close;
+ }
+ mes("[Hugin's Magic Master]"); // Custom text
+ mes("So you came to enchant the Temporal Boots. Be aware that adding a socket do your boots will remove my enchants as well as it's refine. It is only possible for the boots you are wearing.");
+ next;
+ if (select("How does the enchanting work?", "Give effect to my Temporal Boots") == 1) {
+ mes("[Hugin's Magic Master]");
+ mes("You can obtain ^0000FFCoagulated Spell^000000 through your time travels.");
+ next;
+ mes("[Hugin's Magic Master]");
+ mes("I can enchant your Temporal Boots with a variing amount of that item. ^0000FFAvailable for all Temporal STAT Boots^000000.");
+ next;
+ mes("[Hugin's Magic Master]");
+ mes("But, once you try to put a socket into the item, it will be resetted. So if you want a socket, you should do it first. Be sure to remember that.");
+ next;
+ mes("[Hugin's Magic Master]");
+ mes("I don't give out effect randomly. You can pick which effect you want for the item.");
+ next;
+ mes("[Hugin's Magic Master]");
+ mes("Of course it is for 4th slot only. You can have small effect at the start and then the effect grows stronger.\r"
+ "^FF0000Remember: It can fail and break your item!^000000");
+ next;
+ mes("[Hugin's Magic Master]");
+ mes("To get to the final option upgrade it will require way more Coagulated Spells. Don't forget that.");
+ next;
+ mes("[Hugin's Magic Master]");
+ mes("Once the 4th slot completes the best option, you get to have a random bonus effect to the 3rd slot. With.. certain payment and a ^0000FFguaranteed success rate~^000000");
+ next;
+ mes("[Hugin's Magic Master]");
+ mes("^FF0000Again: there is a risk on failing and breaking the item^000000.\r"
+ "But if the enchant is applied successful, ^0000FFthe refine and everything else will be retained.^000000");
+ next;
+ mes("[Hugin's Magic Master]");
+ mes("Phew... Anyways, that's all for basic enchant information. Now you should see for yourself.");
+ close;
+ }
+ .@part = EQI_SHOES;
+ if (!getequipisequiped(.@part)) {
+ mes("[Hugin's Magic Master]");
+ mes("Are you wearing the item?");
+ close;
+ }
+ .@equip_refine = getequiprefinerycnt(.@part);
+ .@equip_id = getequipid(.@part);
+ .@equip_name$ = getequipname(.@part);
+ .@card0 = getequipcardid(.@part, 0);
+ .@card3 = getequipcardid(.@part, 3);
+ setarray .@enchant1st[0], Fighting_Spirit4, Expert_Archer1, Spell2, Vitality2, Attack_Delay_1, Luck3;
+ setarray .@enchant2nd[0], Fighting_Spirit5, Expert_Archer2, Spell3, Vitality3, Attack_Delay_2, Luck4;
+ setarray .@enchant3rd[0], Fighting_Spirit6, Expert_Archer3, Spell4, MHP1, Attack_Delay_3, Luck5;
+ setarray .@enchant4th[0], Fighting_Spirit7, Expert_Archer4, Spell5, MHP2, Attack_Delay_4, Luck6;
+ setarray .@enchant_cost[0], 1, 4, 15, 30, 10; // Coagulated_Spell costs
+ setarray .@enchant_rate[0], 90, 80, 70, 50, 100; // Enchant Success Rate in %
+ .@random = rand(1, 100);
+ switch (.@equip_id) {
+ case Temporal_STR_Boots:
+ case Temporal_INT_Boots:
+ case Temporal_AGI_Boots:
+ case Temporal_VIT_Boots:
+ case Temporal_DEX_Boots:
+ case Temporal_LUK_Boots:
+ case Temporal_STR_Boots_:
+ case Temporal_INT_Boots_:
+ case Temporal_AGI_Boots_:
+ case Temporal_VIT_Boots_:
+ case Temporal_DEX_Boots_:
+ case Temporal_LUK_Boots_:
+ if (.@card3 == 0) { //4th slot 1st try enchanting
+ .@cost = .@enchant_cost[0];
+ .@scs = .@enchant_rate[0];
+ .@number = 1;
+ mes("[Hugin's Magic Master]");
+ mesf("Want to enchant ^0000FF%s^000000? For the 1st enchanting, you need ^FF0000%d^000000 ^0000FFCoagulated Spells.^000000", .@equip_name$, .@cost);
+ next;
+ .@select = select("Quit", "Fighting Spirit", "Archery", "Spell", "Vitality", "Attack Speed", "Luck");
+ switch (.@select) {
+ case 1:
+ mes("[Hugin's Magic Master]");
+ mes("Ok, come back when you are ready.");
+ close;
+ case 2:
+ .@enchant = .@enchant1st[.@select-2];
+ break;
+ case 3:
+ .@enchant = .@enchant1st[.@select-2];
+ break;
+ case 4:
+ .@enchant = .@enchant1st[.@select-2];
+ break;
+ case 5:
+ .@enchant = .@enchant1st[.@select-2];
+ break;
+ case 6:
+ .@enchant = .@enchant1st[.@select-2];
+ break;
+ case 7:
+ .@enchant = .@enchant1st[.@select-2];
+ break;
+ }
+ } else {
+ if (.@card3 == .@enchant1st[0] || .@card3 == .@enchant1st[1] || .@card3 == .@enchant1st[2] ||
+ .@card3 == .@enchant1st[3] || .@card3 == .@enchant1st[4] || .@card3 == .@enchant1st[5]) {
+ .@cost = .@enchant_cost[1];
+ .@scs = .@enchant_rate[1];
+ .@number = 2;
+ } else if (.@card3 == .@enchant2nd[0] || .@card3 == .@enchant2nd[1] || .@card3 == .@enchant2nd[2] ||
+ .@card3 == .@enchant2nd[3] || .@card3 == .@enchant2nd[4] || .@card3 == .@enchant2nd[5]) {
+ .@cost = .@enchant_cost[2];
+ .@scs = .@enchant_rate[2];
+ .@number = 3;
+ } else if (.@card3 == .@enchant3rd[0] || .@card3 == .@enchant3rd[1] || .@card3 == .@enchant3rd[2] ||
+ .@card3 == .@enchant3rd[3] || .@card3 == .@enchant3rd[4] || .@card3 == .@enchant3rd[5]) {
+ .@cost = .@enchant_cost[3];
+ .@scs = .@enchant_rate[3];
+ .@number = 4;
+ } else if (.@card3 == .@enchant4th[0] || .@card3 == .@enchant4th[1] || .@card3 == .@enchant4th[2] ||
+ .@card3 == .@enchant4th[3] || .@card3 == .@enchant4th[4] || .@card3 == .@enchant4th[5]) {
+ .@card2 = getequipcardid(.@part, 2);
+ .@cost = .@enchant_cost[4];
+ .@scs = .@enchant_rate[4];
+ if (.@card2 != 0) {
+ mes("[Hugin's Magic Master]"); // Custom text
+ mes("Your shoes have reached the maximum option to enchant.");
+ mes("Please bring me a new one if you want me to enchant again.");
+ close;
+ }
+ // 3rd slot random enchanting
+ switch (.@card3) {
+ case Fighting_Spirit7:
+ case Expert_Archer4:
+ case Spell5:
+ case MHP2:
+ case Attack_Delay_4:
+ case Luck6:
+ .@enchant = callfunc("F_Rand", Bear's_Power, Runaway_Magic, Speed_Of_Light, Muscle_Fool, Hawkeye, Lucky_Day);
+ mes("[Hugin's Magic Master]"); // Custom text
+ mes("Seems you already completed the best upgrade option in your 4th slot. For that I can give a random bonus effect to your 3rd slot. And of course, with certain payment...");
+ next;
+ mes("[Hugin's Magic Master]");
+ mesf("Enchanting ^0000FF%s^000000's 3rd slot for obtaining a random bonus effect. Requires ^FF0000%d^000000 ^0000FFCoagulated Spells^000000", .@equip_name$, .@cost);
+ next;
+ if (select("Quit", "Effect Upgrade!") == 1) {
+ mes("[Hugin's Magic Master]");
+ mes("Ok, come back when you are ready.");
+ close;
+ }
+ if (countitem(Coagulated_Spell) < .@cost) {
+ mesf("Hmm, you are missing %s Coagulated Spells. Go get more, and then we can talk about more enchants.", .@cost - countitem(Coagulated_Spell));
+ close;
+ }
+ if (.@random > .@scs) {
+ mes("Arrggg, we failed. Better luck next time.");
+ specialeffect2 EF_PHARMACY_FAIL; delitem Coagulated_Spell, .@cost; delequip .@part;
+ close;
+ }
+ specialeffect2 EF_REPAIRWEAPON;
+ delitem Coagulated_Spell, .@cost;
+ delequip .@part;
+ mes("[Hugin's Magic Master]");
+ mes("This is it! This special stone is now yours Hahaha... I am really the only master of these things. Thank you for believing in me.");
+ getitem2 .@equip_id, 1, 1, .@equip_refine, 0, .@card0, 0, .@enchant, .@card3;
+ close;
+ }
+ }
+ // 4th slot 2nd try enchanting
+ if (.@card3 == .@enchant1st[0])
+ .@enchant = .@enchant2nd[0];
+ else if (.@card3 == .@enchant1st[1])
+ .@enchant = .@enchant2nd[1];
+ else if (.@card3 == .@enchant1st[2])
+ .@enchant = .@enchant2nd[2];
+ else if (.@card3 == .@enchant1st[3])
+ .@enchant = .@enchant2nd[3];
+ else if (.@card3 == .@enchant1st[4])
+ .@enchant = .@enchant2nd[4];
+ else if (.@card3 == .@enchant1st[5])
+ .@enchant = .@enchant2nd[5];
+ // 4th slot 3rd try enchanting
+ if (.@card3 == .@enchant2nd[0])
+ .@enchant = .@enchant3rd[0];
+ else if (.@card3 == .@enchant2nd[1])
+ .@enchant = .@enchant3rd[1];
+ else if (.@card3 == .@enchant2nd[2])
+ .@enchant = .@enchant3rd[2];
+ else if (.@card3 == .@enchant2nd[3])
+ .@enchant = .@enchant3rd[3];
+ else if (.@card3 == .@enchant2nd[4])
+ .@enchant = .@enchant3rd[4];
+ else if (.@card3 == .@enchant2nd[5])
+ .@enchant = .@enchant3rd[5];
+ // 4th slot 4th try enchanting
+ if (.@card3 == .@enchant3rd[0])
+ .@enchant = .@enchant4th[0];
+ else if (.@card3 == .@enchant3rd[1])
+ .@enchant = .@enchant4th[1];
+ else if (.@card3 == .@enchant3rd[2])
+ .@enchant = .@enchant4th[2];
+ else if (.@card3 == .@enchant3rd[3])
+ .@enchant = .@enchant4th[3];
+ else if (.@card3 == .@enchant3rd[4])
+ .@enchant = .@enchant4th[4];
+ else if (.@card3 == .@enchant3rd[5])
+ .@enchant = .@enchant4th[5];
+ mes("[Hugin's Magic Master]");
+ mesf("Enchanting ^0000FF%s^000000's 4th slot as ^0000FF%d^000000 level effect. Requires ^FF0000%d^000000 ^0000FFCoagulated Spells.^000000", .@equip_name$, .@number, .@cost);
+ next;
+ if (select("Quit", "Effect Upgrade!") == 1) {
+ mes("[Hugin's Magic Master]");
+ mes("Ok, come back when you are ready.");
+ close;
+ }
+ if (countitem(Coagulated_Spell) < .@cost) {
+ mesf("Hmm, you are missing %d Coagulated Spells. Go get more, and then we can talk about more enchants.", .@cost - countitem(Coagulated_Spell));
+ close;
+ }
+ if (.@random > .@scs) {
+ mes("Arrggg, we failed. Better luck next time.");
+ specialeffect2 EF_PHARMACY_FAIL;
+ delitem Coagulated_Spell, .@cost;
+ delequip .@part;
+ close;
+ }
+ }
+ break;
+ default:
+ mes("[Hugin's Magic Master]");
+ mes("This is not the right item for this enchant. Remember, only those 6 types of Temporal Boots are available for enchanting.");
+ close;
+ }
+ mes("[Hugin's Magic Master]");
+ if (countitem(Coagulated_Spell) < .@cost) {
+ mesf("Hmm, you are missing %d Coagulated Spells. Go get more, and then we can talk about more enchants.", .@cost - countitem(Coagulated_Spell));
+ close;
+ }
+ if (.@random > .@scs) {
+ mes("Arrggg, we failed. Better luck next time.");
+ specialeffect2 EF_PHARMACY_FAIL;
+ delitem Coagulated_Spell, .@cost;
+ delequip .@part;
+ close;
+ }
+ specialeffect2 EF_REPAIRWEAPON;
+ delitem Coagulated_Spell, .@cost;
+ delequip .@part;
+ mes("[Hugin's Magic Master]");
+ mesf("Adding enchant number ^630000%d^000000.", .@number);
+ getitem2 .@equip_id, 1, 1, .@equip_refine, 0, .@card0, 0, 0, .@enchant;
+ close;
+}
+
+// Socket NPC - Contaminated_Magic or Temporal_Crystal to add card slot
+// After the boots were slotted, you can still enchant, but slotting removes any enchants and refines applied before.
+// Item Used: Contaminated_Magic, Temporal_Crystal
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+glast_01,210,270,0 script Hugin's Craftsman 4_F_JOB_BLACKSMITH,{
+ disable_items;
+ if (MaxWeight - Weight < 1000) {
+ mes("Your bag is too heavy. Reduce some weight and come back.");
+ close;
+ }
+ mes("[Hugin's Craftsman]");
+ mes("That Magic Master always says that enchanting Temporal Boots is the best. But, I think I can beat that!");
+ next;
+ mes("[Hugin's Craftsman]");
+ mes("I can try putting a slot into your boots. But there is some ^FF0000risk of failing.^000000");
+ next;
+ mes("[Hugin's Craftsman]");
+ mes("Bring me ^0000FF50 Contaminated Magic^000000 or ^0000FF10 Temporal Crystals^000000, and I will try to put a slot into your advanced Temporal Boots.");
+ next;
+ mes("[Hugin's Craftsman]");
+ mes("But, it's possible to ^FF0000fail and break the item^000000. Is that ok?");
+ next;
+ if (select("Cancel", "Take the risk and try to add a slot") == 1) {
+ mes("[Hugin's Craftsman]");
+ mes("Ok, come back anytime you want.");
+ close;
+ }
+ .@part = EQI_SHOES;
+ if (!getequipisequiped(.@part)) {
+ mes("[Hugin's Craftsman]");
+ mes("Are you sure you are wearing the item?");
+ close;
+ }
+ .@equip_id = getequipid(.@part);
+ switch (.@equip_id) {
+ case Temporal_STR_Boots:
+ case Temporal_INT_Boots:
+ case Temporal_AGI_Boots:
+ case Temporal_VIT_Boots:
+ case Temporal_DEX_Boots:
+ case Temporal_LUK_Boots:
+ mes("[Hugin's Craftsman]");
+ mes("The ^FF0000Boots and all enchants or refines will be lost if you fail this.^000000\r"
+ "Still want to risk it?");
+ next;
+ if (select("Cancel", "I am ok with it!") == 1) {
+ mes("[Hugin's Craftsman]");
+ mes("Ok, come back anytime you want.");
+ close;
+ }
+ mes("[Hugin's Craftsman]");
+ mes("Once again, ^FF0000That Magic Master won't enchant any item with a slot.^000000\r"
+ "Still want to proceed?");
+ next;
+ if (select("Cancel", "I understand. Try to slot it.") == 1) {
+ mes("[Hugin's Craftsman]");
+ mes("Ok, come back anytime you want.");
+ close;
+ }
+ mes("[Hugin's Craftsman]");
+ mes("Then my last question:\r"
+ "Which item are you gonna use to pay me?");
+ next;
+ setarray .@slotpay[0], Temporal_Crystal, Contaminated_Magic;
+ setarray .@slotcost[0], 10, 50;
+ setarray .@slotchance[0], 80, 65; // Custom rates
+ .@select = select("Cancel", "Temporal Crystal", "Contaminated Magic");
+ switch (.@select) {
+ case 1:
+ mes("[Hugin's Craftsman]");
+ mes("Come back anytime you want.");
+ close;
+ case 2:
+ case 3:
+ .@item = .@slotpay[.@select-2];
+ .@cost = .@slotcost[.@select-2];
+ .@chance = .@slotchance[.@select-2];
+ if (countitem(.@item) < .@cost) {
+ mes("[Hugin's Craftsman]");
+ mesf("Requires ^FF0000%d^000000 ^0000FF%s^000000.", .@cost, getitemname(.@item));
+ close;
+ }
+ }
+ .@random = rand(1, 100);
+ if (.@random > .@chance) {
+ mes("[Hugin's Craftsman]");
+ mes("Arrggg, we failed. Better luck next time.");
+ specialeffect2 EF_PHARMACY_FAIL;
+ delitem .@item, .@cost;
+ delequip .@part;
+ close;
+ }
+ mes("[Hugin's Craftsman]");
+ mesf("Yuhuu~ we succeed. There you go... A slot has been added to your ^FF0000%s^000000. Thank you for believing in me.", getitemname(.@equip_id));
+ delitem .@item, .@cost;
+ specialeffect2 EF_PHARMACY_OK;
+ delequip .@part;
+ // todo: read aegis name and attach "_" to worn constant
+ if (.@equip_id == Temporal_STR_Boots) {
+ getitem2 Temporal_STR_Boots_, 1, 1, 0, 0, 0, 0, 0, 0;
+ } else if (.@equip_id == Temporal_INT_Boots) {
+ getitem2 Temporal_INT_Boots_, 1, 1, 0, 0, 0, 0, 0, 0;
+ } else if (.@equip_id == Temporal_AGI_Boots) {
+ getitem2 Temporal_AGI_Boots_, 1, 1, 0, 0, 0, 0, .0, 0;
+ } else if (.@equip_id == Temporal_VIT_Boots) {
+ getitem2 Temporal_VIT_Boots_, 1, 1, 0, 0, 0, 0, 0, 0;
+ } else if (.@equip_id == Temporal_DEX_Boots) {
+ getitem2 Temporal_DEX_Boots_, 1, 1, 0, 0, 0, 0, 0, 0;
+ } else if (.@equip_id == Temporal_LUK_Boots) {
+ getitem2 Temporal_LUK_Boots_, 1, 1, 0, 0, 0, 0, 0, 0;
+ }
+ close;
+ default:
+ mes("[Hugin's Craftsman]");
+ mes("This is not it! We need ^FF0000Advanced Temporal Boots^000000! The item ^0000FFwith a stat effect and without a slot^000000!");
+ close;
+ }
+}
+
+// Knight Cards
+// White Knight Card cost 70 red coagulated spells or 3000 blue coagulated spells
+// Khalitzburg Knight Card cost 100 red coagulated spells or 5000 blue coagulated spells
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+glast_01,188,273,5 script White Knight#1a 4_WHITEKNIGHT,{
+ disable_items;
+ mes("[White Knight]"); // custom
+ if (MaxWeight - Weight < 1000) {
+ mes("Your bag is too heavy. Reduce some weight and come back.");
+ close;
+ }
+ mes("I exchange you a White Knight Card for ^0000FF3000 Coagulated Spell^000000 or ^FF000070 Contaminated Magic^000000.");
+ mes("<ITEMLINK>White Knight Card<INFO>4608</INFO></ITEMLINK>");
+ next;
+ setarray .@item[0], Coagulated_Spell, Contaminated_Magic;
+ setarray .@cost[0], 3000, 70;
+ .@select = select("Cancel", "^0000FFUse Coagulated Spell^000000", "^FF0000Use Contaminated Magic^000000");
+ switch (.@select) {
+ case 1:
+ mes("[White Knight]");
+ mes("Come back any time.");
+ close;
+ case 2:
+ case 3:
+ .@item = .@item[.@select-2];
+ .@cost = .@cost[.@select-2];
+ if (countitem(.@item) < .@cost) {
+ mes("[White Knight]");
+ mesf("Requires ^0000FF%d %s^000000.", .@cost, getitemname(.@item));
+ close;
+ }
+ delitem .@item, .@cost;
+ getitem White_Knight_Card, 1;
+ close;
+ }
+}
+
+glast_01,192,273,3 script Khalitzburg Knight#1a 4_F_KHALITZBURG,{
+ disable_items;
+ mes("[Khalitzburg Knight]"); // custom
+ if (MaxWeight - Weight < 1000) {
+ mes("Your bag is too heavy. Reduce some weight and come back.");
+ close;
+ }
+ mes("I exchange you a Khalitzburg Knight Card for ^0000FF5000 Coagulated Spell^000000 or ^FF0000100 Contaminated Magic^000000.");
+ mes("<ITEMLINK>Khalitzburg Knight Card<INFO>4609</INFO></ITEMLINK>");
+ next;
+ setarray .@item[0], Coagulated_Spell, Contaminated_Magic;
+ setarray .@cost[0], 5000, 100;
+ .@select = select("Cancel", "^0000FFUse Coagulated Spell^000000", "^FF0000Use Contaminated Magic^000000");
+ switch (.@select) {
+ case 1:
+ mes("[Khalitzburg Knight]");
+ mes("Come back any time.");
+ close;
+ case 2:
+ case 3:
+ .@item = .@item[.@select-2];
+ .@cost = .@cost[.@select-2];
+ if (countitem(.@item) < .@cost) {
+ mes("[Khalitzburg Knight]");
+ mesf("Requires ^0000FF%d %s^000000.", .@cost, getitemname(.@item));
+ close;
+ }
+ delitem .@item, .@cost;
+ getitem Khalitzburg_Knight_Card, 1;
+ close;
+ }
+}
+
+// Glast Heim Nightmare Mode :: nightmare_gh
+//============================================================
+glast_01,195,273,4 script Hugin's Follower#n_gh 2_F_MAGICMASTER,{
+ mes("[Hugin's Follower]");
+ mes("I can't move between time and dimension like a master Hugin but I can pretend to move.");
+ next;
+ mes("[Hugin's Follower]");
+ mes("What about this Glast Heim is born with powerful dark force?");
+ next;
+ if (select("I don't care", "That is interesting, please tell me more") == 1) {
+ mes("[Hugin's Follower]");
+ mes("Well~ If you are not interested in it, never mind.");
+ close;
+ }
+ mes("[Hugin's Follower]");
+ mes("As learning ability from Hugin, I just find out the path to Old Glast Heim of more powerful dark force.");
+ next;
+ mes("[Hugin's Follower]");
+ mes("How is it? Do you want to explore there?");
+ next;
+ if (select("No, I want to stop it", "I really want to do that!") == 1) {
+ mes("[Hugin's Follower]");
+ mes("Well~ If you are not interested in it, never mind.");
+ close;
+ }
+ mes("[Hugin's Follower]");
+ mes("Sure that is not free~ I have to get something little bit. Hoho...");
+ next;
+ mes("[Hugin's Follower]");
+ mes("I can send you just two place. How is it? Do you want to try?");
+ next;
+ switch (select("Cancel", "Monastery Cemetery (Lv100~130) - 5000z", "Corridor of 2nd floor (Over Lv140) - 10000z")) {
+ case 1:
+ mes("[Hugin's Follower]");
+ mes("Alright, please come back whenever you change mind. I think you will have lots of thing to talk with me...");
+ close;
+ case 2:
+ if (Zeny < 5000) {
+ mes("[Hugin's Follower]");
+ mes("Please make sure you already have all of the money.");
+ close;
+ }
+ Zeny = Zeny-5000;
+ warp "gl_chyard_", 148, 144;
+ end;
+ case 3:
+ if (Zeny < 10000) {
+ mes("[Hugin's Follower]");
+ mes("Please make sure you already have all of the money.");
+ close;
+ }
+ Zeny = Zeny-10000;
+ warp "gl_cas02_", 104, 31;
+ end;
+ }
+}
+
+gl_chyard_,148,149,4 script Hugin's Follower#n_gh1 2_F_MAGICMASTER,{
+ mes("[Hugin's Follower]");
+ mes("You want to break?");
+ mes("Ok, let's get out of here.?");
+ next;
+ if (select("Ah, wrong click... I mean I was not talk to you", "Please let me out from here") == 1) {
+ mes("[Hugin's Follower]");
+ mes("Alright just tell me whenever you want to leave.");
+ close;
+ }
+ warp "glast_01", 210, 269;
+ end;
+}
+
+gl_cas02_,104,36,4 script Hugin's Follower#n_gh2 2_F_MAGICMASTER,{
+ mes("[Hugin's Follower]");
+ mes("You want to break?");
+ mes("Ok, let's get out of here.?");
+ next;
+ if (select("Ah, wrong click... I mean I was not talk to you", "Please let me out from here") == 1) {
+ mes("[Hugin's Follower]");
+ mes("Alright just tell me whenever you want to leave.");
+ close;
+ }
+ warp "glast_01", 210, 269;
+ end;
+}
diff --git a/npc/re/instances/WolfchevLaboratory.txt b/npc/re/instances/WolfchevLaboratory.txt
index 3b0b1c510..3860b35a3 100644
--- a/npc/re/instances/WolfchevLaboratory.txt
+++ b/npc/re/instances/WolfchevLaboratory.txt
@@ -27,12 +27,6 @@
//= along with this program. If not, see <http://www.gnu.org/licenses/>.
//=========================================================================
//= Wolfchev's Laboratory
-//================= File Encoding =========================================
-//= CP-949 (EUC-KR compatible). Do NOT read/save it as UTF-8.
-//= -If the encoding is correct, the next three lines have the same length-
-//= ============ ġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġġ ============
-//= ============ ============================================= ============
-//= ============ ============
//================= Description ===========================================
//= Defeat Wolfchev's human experimentations.
//================= Current Version =======================================
@@ -592,8 +586,7 @@ lighthalzen,342,291,4 script Weird old man#Bio4Reward 4_M_EINOLD,{
break;
case 4:
mes "<<Ygnus Stale[1]>>";
- // FIXME[Haru]: Anyone knows what ¹ßÈ­ means?
- mes "When doing short distance attack, cast ¹ßÈ­ to the player and to the enemy with a certain chance.";
+ mes "When doing short distance attack, Chance of inflicting o rreceiving Burn status when dealing physical damage.";
mes "Two-Handed Axe / ATK 250 / Weight 190 / Fire Property / Weapon Lv 4 / Required Lv 95 / Socket 1 / for High Swordman/Merchant Classes";
callsub L_Reward, Ygnus_Stale, 50, 100, 35;
break;
@@ -2803,7 +2796,7 @@ lhz_dun04,147,279,0 script Laboratory Entrance#memo CLEAR_NPC,{
//== The Lab No.3 >> Boss's Room Warp portal ===============
1@lhz,83,62,0 script #potal_03 WARPNPC,2,2,{
- end;
+ end;
OnInstanceInit:
disablenpc instance_npcname("#potal_03");
@@ -2990,9 +2983,9 @@ lhz_dun04,147,279,0 script Laboratory Entrance#memo CLEAR_NPC,{
//== Bosses ================================================
- script bio4FBoss FAKE_NPC,{
- end;
+ end;
- OnEnable:
+OnEnable:
.@map$ = instance_mapname("1@lhz");
.@label$ = instance_npcname(strnpcinfo(0))+"::OnMyMobDead";
specialeffect EF_SUI_EXPLOSION;
@@ -3038,7 +3031,7 @@ lhz_dun04,147,279,0 script Laboratory Entrance#memo CLEAR_NPC,{
disablenpc instance_npcname(strnpcinfo(0));
end;
- OnDisable:
+OnDisable:
killmonster instance_mapname("1@lhz"),instance_npcname(strnpcinfo(0))+"::OnMyMobDead";
disablenpc instance_npcname(strnpcinfo(0));
end;
diff --git a/npc/re/instances/saras_memory.txt b/npc/re/instances/saras_memory.txt
new file mode 100644
index 000000000..69ee7dacb
--- /dev/null
+++ b/npc/re/instances/saras_memory.txt
@@ -0,0 +1,1867 @@
+//================= Hercules Script =======================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
+//= | | | | __/ | | (__| |_| | | __/\__ \
+//= \_| |_/\___|_| \___|\__,_|_|\___||___/
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2013-2016 Hercules Dev Team
+//= Copyright (C) Ridley
+//= Copyright (C) Ziu
+//=
+//= Hercules is free software: you can redistribute it and/or modify
+//= it under the terms of the GNU General Public License as published by
+//= the Free Software Foundation, either version 3 of the License, or
+//= (at your option) any later version.
+//=
+//= This program is distributed in the hope that it will be useful,
+//= but WITHOUT ANY WARRANTY; without even the implied warranty of
+//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+//= GNU General Public License for more details.
+//=
+//= You should have received a copy of the GNU General Public License
+//= along with this program. If not, see <http://www.gnu.org/licenses/>.
+//=========================================================================
+//= Sara's Memory
+//================= Description ===========================================
+//= When Sarah Irine was only 4 years old, a terrible tragedy took place
+//= in her home: her mother was struck down by an assailant. The only
+//= suspect was her father Lord Irine, who claims to have defeated the one
+//= who attacked her mother. Too shocked and afraid by the sight of her
+//= dying mother, little Sarah is not convinced and flees while Payon
+//= guards chase her down.
+//================= Current Version =======================================
+//= 1.1
+//=========================================================================
+1@sara mapflag src4instance
+
+dali,130,107,5 script Leon the Adventurer#Sara 4_M_DST_GRAND,{ // instance CD check only at the Dimensional Device
+ mes("[Leon the Adventurer]");
+ if (BaseLevel < 99) {
+ mes("You know... this place doesn't seem to be safe for you. Please returnto me once you have achieved LV. 99");
+ close;
+ }
+ if (!questprogress(15003)) {
+ if (!sarainstance) { // doing the instance for the 1st time
+ mes("Wow! I thought I was the only one who knew about this place.");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("Excuse my rudeness! I am Pon de Leon, the famous adventurer!");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("My friend calls me Leon the Lion! For my tough appearance and attitude. Plus I have quite a bite!");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("You know, this is such a strange location...");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("As you explore it you start to see cracks in space and time. Each one covered by a dimensional device.");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("For example, I think I have caught glimpses of Payon through the dimensional device closest to us.\r"
+ "But it doesn't seem right. Almost like it is a little bit older then it should be.");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("I want to explore it, but with my old age and my knees I don't seem to be quite up to the task.");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("So, I would like to ask something of you.");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("Please venture through the dimensional device and report to me what you find within.");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("Though, I should warn you. It might be unstable. Make sure you enter the first chance you get.");
+ close2;
+ setquest 15003;
+ end;
+ } else {
+ mes("You wish to relive the past again?");
+ next;
+ if (select("Yes","No") == 2)
+ close;
+ mes("[Leon the Adventurer]");
+ mes("Please venture through the dimensional device and report to me what you find within.");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("Though, I should warn you. It might be unstable. Make sure you enter the first chance you get.");
+ setquest 15003;
+ close;
+ }
+ }
+ if (questprogress(15003) == 1) {
+ mes("I am not sure you have fully explored the crack in space and time yet. Perhaps you should look a bit further into it.");
+ next;
+ if (!sarainstance)
+ close;
+ switch (select("Okay", "Give up")) {
+ case 1:
+ mes("[Leon the Adventurer]");
+ mes("I am glad to hear that! Maybe someday you can be as brave as old Leon the Lion!");
+ close;
+ case 2:
+ mes("[Leon the Adventurer]");
+ mes("Well.. I can't force you. Buf if you ever find your courage pelase talk to me again.");
+ erasequest 15003;
+ close;
+ }
+ }
+ if (questprogress(15003) == 2) {
+ if (!sarainstance) { // 1st time reward and text
+ mes("What did you see in there?!");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("Hrumpf, Sara Irene?! She's one of the 12 Valkyries. I didn't know her story was that tragic....");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("It seems that you caused a huge misunderstanding between her and her father.");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("I would not blame yourself for what occured. Or all the blood that was spilled. It seems that the\r"
+ "events that day were fated to happen no matter who was there.");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("Please don't tell anyone about your time traveling adventure. We can't have anyone thinking you more\r"
+ "important then old Leon. Plus they wouldn't believe such a story anyways.");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("I think that in about 20 hours after you last entered the rift will stable enough for you to transverse it again.");
+ sarainstance = 1;
+ getexp 770000, 1000000; // reward first time
+ } else { // 2nd time text
+ mes("What did you see in there?! Was there anything new?");
+ next;
+ select("Nothing has changed from the last time.");
+ mes("[Leon the Adventurer]");
+ mes("I am sorry to hear that... If...");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("If you want to try again. I think that in about 20 hours after you last entered the rift will be stable enough\r"
+ "for you to transverse it again.");
+ next;
+ mes("[Leon the Adventurer]");
+ mes("You should rest up. Travelling Through time would make even Leon tired!");
+ getexp 550000, 550000; // reward 2nd and following
+ }
+ erasequest 15003;
+ close;
+ }
+}
+
+dali,138,118,0 script Dimensional Device#dimen PORTAL,{
+ if (!questprogress(15003)) {
+ mes("[Leon the Adventurer]");
+ mes("Before you go playing around with that. Why don't you come over here and talk to me?");
+ close;
+ }
+ .@sara_time = questprogress(15002, PLAYTIME);
+ if ( .@sara_time == 1) {
+ mes("[Leon the Adventurer]");
+ mes("I think that in about 20 hours after you last entered the rift will stable enough for you to\r"
+ "transverse it again.");
+ close;
+ } else if (.@sara_time == 2) {
+ erasequest 15002;
+ end;
+ } else if (!.@sara_time) {
+ .@party_id = getcharid(1);
+ .@p_name$ = getpartyname(.@party_id);
+ .@md_name$ = "Sara's Memory";
+ if (!instance_check_party(.@party_id)) {
+ mes("[Leon the Adventurer]");
+ mes("Before you enter you need to organize a party! Don't know how? Type /organize PARTYNAMEHERE. You\r"
+ "can use quotes to put spaces in a party name.");
+ close;
+ }
+ if (getcharid(0) == getpartyleader(.@party_id, 2))
+ .@menu1$ = "Boot up the dimensional device";
+ else
+ .@menu1$ = "";
+ switch (select(.@menu1$, "Use the dimensional device", "Cancel")) {
+ case 1:
+ if (getcharid(0) != getpartyleader(.@party_id, 2))
+ end;
+ .@instance = instance_create(.@md_name$, .@party_id);
+ if (.@instance < 0) {
+ mesf("Party Name: %s", .@p_name$);
+ mesf("Party Leader: %s", strcharinfo(0));
+ mesf("^0000FF%s^000000 - Reservation Failed!", .@md_name$);
+ close;
+ }
+ if (instance_attachmap("1@sara", .@instance) == "" ) {
+ mesf("^0000FF%s^000000 - Reservation Failed!", .@md_name$);
+ instance_destroy(.@instance);
+ close;
+ }
+ instance_set_timeout(3600, 300, .@instance);
+ instance_init(.@instance);
+ mes("^FF0000The dimensional boots up cleanly. Use the device to enter the crack in space and time.^000000");
+ close;
+ case 2:
+ if ( has_instance("1@sara") == "" ) {
+ mesf("The memorial dungeon ^0000FF%s^000000 does not exist.\r"
+ "The party leader did not generate the dungeon yet.", .@md_name$);
+ close;
+ }
+ mapannounce("dali", sprintf(_$("%s, member of the party %s entered the instance %s."), strcharinfo(0), .@p_name$, .@md_name$), bc_map, C_SPRINGGREEN);
+ setquest 15002;
+ warp "1@sara", 250, 155;
+ end;
+ break;
+ case 3:
+ close;
+ }
+ }
+}
+
+1@sara,261,156,5 script A girl#sarains 4_F_SARAH_BABY,{
+ if (getcharid(0) != getpartyleader(getcharid(1), 2))
+ end;
+ mesf("[%s]", strcharinfo(0));
+ mes("Where am I?");
+ unittalk(getcharid(3), _("Where am I?"));
+ next;
+ cutin "sara_9sara1.bmp", 2;
+ mes("[A girl]");
+ mes("Hello! This is the village of Payon. You don't seem to be from around here...");
+ npctalk(_("A girl : Hello! This is the village of Payon. You don't seem to be from around here..."));
+ next;
+ mesf("[%s]", strcharinfo(0));
+ mes("Are you from here? You don't seem to quite match the locals either.");
+ unittalk(getcharid(3), _("Are you from here? You don't seem to quite match to locals either."));
+ next;
+ mes("[A girl]");
+ mes("Yes! I was born here! My name is Sara. Sara Irene!");
+ npctalk(_("A girl : Yes! I was born here! My name is Sara. Sara Irene!"));
+ next;
+ mes("[Sara Irene]");
+ mes("My father is doyen of this village! I just take after my mother.");
+ donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat1";
+ next;
+ mesf("[%s]", strcharinfo(0));
+ mes("Oh! I am sorry! Uh... Why are you standing out here all alone?");
+ unittalk(getcharid(3), _("Oh! I am sorry! Uh... Why are you standing out here all alone?"));
+ next;
+ mes("[Sara Irene]");
+ mes("I am waiting for my father. He said that he will be here soon.");
+ donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat2";
+ next;
+ mes("^FF0000An older man exits the house. Sara's face brightens at the sight of him.^000000");
+ donpcevent instance_npcname("Doyen Irene#sarains")+"::OnEnable";
+ next;
+ mes("[Sara Irene]");
+ mes("Hi daddy!");
+ donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat3";
+ next;
+ cutin "sara_elder_irine1.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("Sweetheart you look so happy.");
+ donpcevent instance_npcname("Doyen Irene#sarains")+"::OnChat1";
+ next;
+ cutin "sara_9sara1.bmp", 2;
+ mes("[Sara Irene]");
+ mes("You said you would come back soon! I waited for you and you lied!");
+ donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat4";
+ next;
+ cutin "sara_elder_irine1.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("Sweetheart, I am sorry I made you wait so long. The meeting with the village elders took longer than expected.");
+ donpcevent instance_npcname("Doyen Irene#sarains")+"::OnChat2";
+ next;
+ cutin "sara_9sara1.bmp", 2;
+ mes("[Sara Irene]");
+ mes("I hate those old fogeys.");
+ donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat5";
+ next;
+ cutin "sara_elder_irine1.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("Don't say that sweetheart... Who is this with you?");
+ donpcevent instance_npcname("Doyen Irene#sarains")+"::OnChat3";
+ next;
+ mes("^FF0000Doyen Irene stares at you with fire in this eyes.^000000");
+ dispbottom(_("Doyen Irene stares at you with fire in this eyes."));
+ next;
+ mes("^FF0000Sara starts humming and singing softly to herself. She picks some wild flowers near by and presents\r"
+ "them to the Doyen.^000000");
+ dispbottom(_("Sara starts humming and singing softly to herself. She picks some wild flowers near by and presents them to the Doyen."));
+ next;
+ cutin "sara_9sara1.bmp", 2;
+ mes("[Sara Irene]");
+ mes("Here you go daddy!");
+ donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat6";
+ next;
+ cutin "sara_elder_irine1.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("Oh Sara, should I have them?");
+ donpcevent instance_npcname("Doyen Irene#sarains")+"::OnChat4";
+ next;
+ cutin "sara_9sara1.bmp", 2;
+ mes("[Sara Irene]");
+ mes("Of course silly daddy!");
+ donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat7";
+ next;
+ mes("^FF0000After being given the flowers the Doyen's mood seems to greatly improve.^000000");
+ dispbottom(_("After being given the flowers the Doyen's mood seems to greatly improve."));
+ next;
+ cutin "sara_elder_irine1.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("Alright my princess, where should we go now?");
+ donpcevent instance_npcname("Doyen Irene#sarains")+"::OnChat5";
+ next;
+ cutin "sara_9sara1.bmp", 2;
+ mes("[Sara Irene]");
+ mes("Oh daddy! Let's go to the top of that hill over there!");
+ donpcevent instance_npcname("Sara Irene#saratalk")+"::OnChat8";
+ next;
+ cutin "sara_elder_irine1.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("Hah! Hold onto me tight!");
+ donpcevent instance_npcname("Doyen Irene#sarains")+"::OnChat6";
+ next;
+ cutin "sara_elder_irine1.bmp", 255;
+ mes("^FF0000As they wander off you hear strange voices from around the corner...^000000");
+ donpcevent instance_npcname("Doyen Irene#sarains")+"::OnDisable";
+ donpcevent instance_npcname("A girl#sarains")+"::OnDisable";
+ dispbottom(_("As they wander off you hear strange voices from around the corner...")),"";
+ disablenpc instance_npcname("Sara Irene#saratalk");
+ next;
+ mes("[Strange Old Man A]");
+ mes("I can feel Sara's power growing. We cannot just stand by and let her achieve her full potential!");
+ donpcevent instance_npcname("Strange Old Man A#stalk")+"::OnChat1";
+ next;
+ mes("[Strange Old Man B]");
+ mes("She was born under a bad sign and her mother isn't even one of us!");
+ donpcevent instance_npcname("Strange Old Man B#stalk")+"::OnChat1";
+ next;
+ mes("[Strange Old Man B]");
+ mes("Someday she will cause blood to flow in our streets.");
+ donpcevent instance_npcname("Strange Old Man B#stalk")+"::OnChat2";
+ next;
+ mes("[Strange Old Man A]");
+ mes("We have to do something before the Holy creatures select her. I asked HIM to take care of it.");
+ donpcevent instance_npcname("Strange Old Man A#stalk")+"::OnChat2";
+ next;
+ mes("[Strange Old Man B]");
+ mes("We will see... I look forward to hearing the bad news that has befallen her...");
+ donpcevent instance_npcname("Strange Old Man B#stalk")+"::OnChat3";
+ next;
+ mes("^FF0000The old man wander off it seems Sara might be in danger. We have to do something!^000000");
+ dispbottom(_("The old man wander off it seems Sara might be in danger. We have to do something!"));
+ close2;
+ donpcevent instance_npcname("Strange Old Man A#stalk")+"::OnDisable";
+ donpcevent instance_npcname("Strange Old Man B#stalk")+"::OnDisable";
+ donpcevent instance_npcname("Sara Irene#sarains1")+"::OnEnable";
+ donpcevent instance_npcname("#sarawarp1")+"::OnEnable";
+ viewpoint 1, 240, 145, 1, C_GREEN;
+ specialeffect EF_BASH;
+ end;
+
+OnInstanceInit:
+ donpcevent instance_npcname("A girl#sarains")+"::OnEnable";
+ end;
+OnEnable:
+ hideoffnpc instance_npcname("A girl#sarains");
+ end;
+OnDisable:
+ hideonnpc instance_npcname("A girl#sarains");
+ end;
+}
+
+1@sara,268,158,3 script Doyen Irene#sarains 4_M_CHIEF_IRIN,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Doyen Irene#sarains")+"::OnDisable";
+ end;
+OnEnable:
+ hideoffnpc instance_npcname("Doyen Irene#sarains");
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Doyen Irene#sarains");
+ end;
+OnChat1:
+ npctalk(_("Sweetheart you look so happy."));
+ end;
+OnChat2:
+ npctalk(_("Sweetheart, I am sorry I made you wait so long. The meeting with the village elders took longer than expected."));
+ end;
+OnChat3:
+ npctalk(_("Don't say that sweetheart... Who is this with you?"));
+ end;
+OnChat4:
+ npctalk(_("Oh Sara, should I have them?"));
+ end;
+OnChat5:
+ npctalk(_("Alright my princess, where should we go now?"));
+ end;
+OnChat6:
+ npctalk(_("Hah! Hold onto me tight!"));
+ end;
+}
+
+1@sara,260,156,0 script Sara Irene#saratalk HIDDEN_NPC,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#saratalk")+"::OnDisable";
+ end;
+OnEnable:
+ hideoffnpc instance_npcname("Sara Irene#saratalk");
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#saratalk");
+ end;
+OnChat1:
+ npctalk(_("My father is doyen of this village! I just take after my mother."));
+ end;
+OnChat2:
+ npctalk(_("I am waiting for my father. He said that he will be here soon."));
+ end;
+OnChat3:
+ npctalk(_("Hi daddy!"));
+ end;
+OnChat4:
+ npctalk(_("You said you would come back soon! I waited for you and you lied!"));
+ end;
+OnChat5:
+ npctalk(_("I hate those old fogeys."));
+ end;
+OnChat6:
+ npctalk(_("Here you go daddy!"));
+ end;
+OnChat7:
+ npctalk(_("Of course silly daddy!"));
+ end;
+OnChat8:
+ npctalk(_("Oh daddy! Let's go to the top of that hill over there!"));
+ end;
+}
+
+
+1@sara,260,156,0 script Strange Old Man A#stalk FAKE_NPC,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Strange Old Man A#stalk")+"::OnDisable";
+ end;
+OnEnable:
+ hideoffnpc instance_npcname("Strange Old Man A#stalk");
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Strange Old Man A#stalk");
+ end;
+OnChat1:
+ npctalk(_("I can feel Sara's power growing. We cannot just stand by and let her achieve her full potential!"));
+ end;
+OnChat2:
+ npctalk(_("We have to do something before the Holy creatures select her. I asked HIM to take care of it."));
+ end;
+}
+
+1@sara,260,156,0 script Strange Old Man B#stalk FAKE_NPC,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Strange Old Man B#stalk")+"::OnDisable";
+ end;
+OnEnable:
+ hideoffnpc instance_npcname("Strange Old Man B#stalk");
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Strange Old Man B#stalk");
+ end;
+OnChat1:
+ npctalk(_("She was born under a bad sign and her mother isn't even one of us!"));
+ end;
+OnChat2:
+ npctalk(_("Someday she will cause blood to flow in our streets."));
+ end;
+OnChat3:
+ npctalk(_("We will see... I look forward to hearing the bad news that has befallen her..."));
+ end;
+}
+
+1@sara,240,145,0 script #sarawarp1 WARPNPC,1,2,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#sarawarp1")+"::OnDisable";
+ end;
+OnDisable:
+ disablenpc instance_npcname("#sarawarp1");
+ end;
+OnEnable:
+ enablenpc instance_npcname("#sarawarp1");
+ end;
+OnTouch:
+ .@map$ = instance_mapname("1@sara");
+ warp .@map$, 94, 320;
+ end;
+}
+
+1@sara,209,250,0 script #sarawarp2 WARPNPC,1,2,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#sarawarp2")+"::OnDisable";
+ end;
+OnDisable:
+ disablenpc instance_npcname("#sarawarp2");
+ end;
+OnEnable:
+ enablenpc instance_npcname("#sarawarp2");
+ end;
+OnTouch:
+ .@map$ = instance_mapname("1@sara");
+ warp .@map$, 230, 316;
+ end;
+}
+
+1@sara,226,190,0 script #sarawarp3 WARPNPC,1,2,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#sarawarp3")+"::OnDisable";
+ end;
+OnDisable:
+ disablenpc instance_npcname("#sarawarp3");
+ end;
+OnEnable:
+ enablenpc instance_npcname("#sarawarp3");
+ end;
+OnTouch:
+ .@map$ = instance_mapname("1@sara");
+ warp .@map$, 263, 94;
+ end;
+}
+
+1@sara,166,67,0 script #sarawarp4 WARPNPC,1,2,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#sarawarp4")+"::OnDisable";
+ end;
+OnDisable:
+ disablenpc instance_npcname("#sarawarp4");
+ end;
+OnEnable:
+ enablenpc instance_npcname("#sarawarp4");
+ end;
+OnTouch:
+ .@map$ = instance_mapname("1@sara");
+ warp .@map$, 164, 81;
+ end;
+}
+
+1@sara,155,180,0 script #sarawarp5 WARPNPC,1,2,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#sarawarp5")+"::OnDisable";
+ end;
+OnDisable:
+ disablenpc instance_npcname("#sarawarp5");
+ end;
+OnEnable:
+ enablenpc instance_npcname("#sarawarp5");
+ end;
+OnTouch:
+ .@map$ = instance_mapname("1@sara");
+ warp .@map$, 155, 196;
+ end;
+}
+
+1@sara,88,188,0 script #sarawarp6 WARPNPC,1,2,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#sarawarp6")+"::OnDisable";
+ end;
+OnDisable:
+ disablenpc instance_npcname("#sarawarp6");
+ end;
+OnEnable:
+ enablenpc instance_npcname("#sarawarp6");
+ end;
+OnTouch:
+ .@map$ = instance_mapname("1@sara");
+ warp .@map$, 89, 175;
+ if (getcharid(0) == getpartyleader(getcharid(1),2))
+ viewpoint 1, 39, 142, 1, C_GREEN;
+ end;
+}
+
+1@sara,19,143,0 script #sarawarp7 WARPNPC,1,2,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#sarawarp7")+"::OnDisable";
+ end;
+OnDisable:
+ disablenpc instance_npcname("#sarawarp7");
+ end;
+OnEnable:
+ enablenpc instance_npcname("#sarawarp7");
+ end;
+OnTouch:
+ completequest 15003;
+ warp "dali", 134, 111;
+ end;
+}
+
+1@sara,107,325,5 script Sara Irene#sarains1 4_F_SARAH_BABY,{
+ if (getcharid(0) != getpartyleader(getcharid(1), 2))
+ end;
+ cutin "sara_9sara1.bmp", 2;
+ mes("[Sara Irene]");
+ mes("Oh! Hello again! I remember you, what's up?");
+ npctalk(_("Oh! Hello again! I remember you, what's up?"));
+ next;
+ mes("[Sara Irene]");
+ mes("I am here to give flowers to my mommy!");
+ npctalk(_("I am here to give flowers to my mommy!"));
+ next;
+ mes("^FF0000Sara leaps forward to open the door, flowers at the ready.^000000");
+ dispbottom(_("Sara leaps forward to open the door, flowers at the ready."));
+ next;
+ mes("[Sara Irene]");
+ mes("Mom! Dad! Look what I found!");
+ npctalk(_("Mom! Dad! Look what I found!"));
+ next;
+ cutin "sara_9sara1.bmp", 255;
+ cutin "sara_momdie.bmp", 4;
+ mes("^FF0000The door opens to reveal a woman laying dead on the floor and the\r"
+ "Doyen standing over the woman with a bloody sword.^000000");
+ dispbottom(_("The door opens to reveal a woman laying dead on the floor and the Doyen standing over the woman with a bloody sword."));
+ next;
+ mes("[Sara Irene]");
+ mes("...");
+ npctalk("...");
+ next;
+ mes("[Sara Irene]");
+ mes("...");
+ npctalk("...");
+ next;
+ mes("[Sara Irene]");
+ mes("...");
+ npctalk("...");
+ mapannounce(instance_mapname("1@sara"), _("[Sara's Mother] : Sara...Ru-..away..."), bc_map, C_YELLOW);
+ next;
+ mes("[Sara Irene]");
+ mes("...");
+ npctalk("...");
+ next;
+ mes("^FF0000A gem rolls from the womans hand and comes to a rest in front of\r"
+ "Sara. Unconsciously Sara reaches down and picks up the gem.^000000");
+ dispbottom(_("A gem rolls from the womans hand and comes to a rest in front of Sara. Unconsciously Sara reaches down and picks up the gem."));
+ next;
+ mes("^FF0000The Doyen turns around and notices Sara.^000000");
+ dispbottom(_("The Doyen turns around and notices Sara."));
+ next;
+ cutin "sara_momdie.bmp", 255;
+ cutin "sara_elder_irine4.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("Ahh Sara! I was just looking for you...");
+ donpcevent instance_npcname("Doyen Irene#sarains1")+"::OnChat1";
+ next;
+ cutin "sara_9sara2.bmp", 2;
+ mes("[Sara Irene]");
+ mes("...");
+ npctalk("...");
+ next;
+ select("Escape with Sara.");
+ mes("[Sara Irene]");
+ mes("...");
+ npctalk("...");
+ next;
+ cutin "sara_elder_irine3.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("Guards! GUARDS! There is a murderer here! Catch him!");
+ donpcevent instance_npcname("Doyen Irene#sarains1")+"::OnChat2";
+ next;
+ mes("^FF0000The sound of many pairs of boots can be heard running outside!^000000");
+ dispbottom(_("The sound of many pairs of boots can be heard running outside!"));
+ next;
+ cutin "sara_9sara3.bmp", 2;
+ mes("[Sara Irene]");
+ mes("Mommy no!!!!!!!!!!!!!!!");
+ npctalk(_("Mommy no!!!!!!!!!!!!!!!"));
+ next;
+ cutin "sara_9sara3.bmp", 255;
+ mes("^FF0000Sara runs aways and the sound of the guards is getting closer...^000000");
+ dispbottom(_("Sara runs aways and the sound of the guards is getting closer..."));
+ close2;
+ donpcevent instance_npcname("Sara Irene#sarains1")+"::OnDisable";
+ donpcevent instance_npcname("Sara Irene#sarains4")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains5")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains6")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains7")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains8")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains9")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains10")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains11")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains12")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains13")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains14")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains15")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains16")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains17")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains18")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains19")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains20")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains21")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains22")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains23")+"::OnEnable";
+ donpcevent instance_npcname("#controlsara")+"::OnEnable";
+ end;
+
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains1")+"::OnDisable";
+ end;
+OnEnable:
+ hideoffnpc instance_npcname("Sara Irene#sarains1");
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains1");
+ end;
+}
+
+1@sara,107,325,0 script Doyen Irene#sarains1 FAKE_NPC,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Doyen Irene#sarains1")+"::OnDisable";
+ end;
+OnEnable:
+ hideoffnpc instance_npcname("Doyen Irene#sarains1");
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Doyen Irene#sarains1");
+ end;
+OnChat1:
+ npctalk(_("Ahh Sara! I was just looking for you..."));
+ end;
+OnChat2:
+ npctalk(_("Guards! GUARDS! There is a murderer here! Catch him!"));
+ end;
+}
+
+1@sara,107,327,0 script #controlsara CLEAR_NPC,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#controlsara")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("#controlsara");
+ hideonnpc instance_npcname("#controlsara");
+ initnpctimer;
+ end;
+OnDisable:
+ disablenpc instance_npcname("#controlsara");
+ end;
+OnTimer2000:
+ mapannounce(instance_mapname("1@sara"), _("<SYSTEM> The guards must be defeated to gain access to the next area."), bc_map, C_YELLOW);
+ end;
+OnTimer4000:
+ mapannounce(instance_mapname("1@sara"), _("<SYSTEM> The guards have formed groups of their own to fight you!"), bc_map, C_YELLOW);
+ end;
+OnTimer5000:
+ donpcevent instance_npcname("#controlsara")+"::OnRespawn";
+ stopnpctimer;
+ end;
+OnRespawn:
+ .@map$ = instance_mapname("1@sara");
+ monster(.@map$, .@x, .@y, "Maggot", MG_ARCLOUSE, .@mobs, instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,107,325,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,115,325,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,116,317,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,108,317,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,116,311,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,108,311,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,101,295,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,105,295,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,109,295,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,113,295,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,117,295,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,121,295,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,122,227,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,122,225,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,122,223,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,122,221,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,122,219,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,122,217,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,121,227,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,121,225,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,121,223,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,121,221,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,121,219,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,121,217,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,151,231,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,153,231,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,155,231,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,157,231,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,159,231,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,161,231,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,187,215,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,187,217,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,187,219,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,187,221,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,187,223,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,187,225,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,188,215,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,188,217,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,188,219,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,188,221,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,188,223,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,188,225,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,192,250,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,194,250,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,196,250,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,198,250,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,196,254,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,196,256,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,196,258,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,199,254,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,199,256,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,199,258,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,204,246,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,204,248,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,204,250,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,204,252,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,204,254,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,206,251,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ end;
+OnMyMobDead:
+ .@callnum = 58;
+ .@map$ = instance_mapname("1@sara");
+ .@a_mob_num = mobcount(.@map$, instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ .@mob_dead_num = .@callnum - .@a_mob_num;
+ if (.@mob_dead_num > 57) {
+ viewpoint 1, 209, 250, 1, C_GREEN;
+ mapannounce(instance_mapname("1@sara"), _("<SYSTEM> Sara ran away again! You think she went in the 2 O'clock direction!"), bc_map, C_YELLOW);
+ donpcevent instance_npcname("#controlsara")+"::OnDisable";
+ donpcevent instance_npcname("#controlsara1")+"::OnEnable";
+ donpcevent instance_npcname("#sarawarp2")+"::OnEnable";
+ }
+ end;
+}
+
+1@sara,230,316,0 script #controlsara1 CLEAR_NPC,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#controlsara1")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("#controlsara1");
+ hideonnpc instance_npcname("#controlsara1");
+ donpcevent instance_npcname("#controlsara1")+"::OnRespawn";
+ end;
+OnDisable:
+ disablenpc instance_npcname("#controlsara1");
+ end;
+OnRespawn:
+ .@map$ = instance_mapname("1@sara");
+ monster(.@map$,228,312,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,227,312,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,229,315,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,247,290,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,248,290,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,249,290,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,223,264,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,230,248,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,227,248,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,238,229,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,225,220,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,228,220,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,220,212,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,223,212,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,219,203,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,222,203,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ end;
+OnMyMobDead:
+ .@callnum = 16;
+ .@map$ = instance_mapname("1@sara");
+ .@b_mob_num = mobcount(.@map$, instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ .@mob_dead_num = .@callnum - .@b_mob_num;
+ if (.@mob_dead_num > 15) {
+ viewpoint 1, 226, 190, 1, C_GREEN;
+ mapannounce(instance_mapname("1@sara"), _("<SYSTEM> Sara ran away yet again! You think she went in the 5 O'clock direction!"), bc_map, C_YELLOW);
+ donpcevent instance_npcname("#controlsara1")+"::OnDisable";
+ donpcevent instance_npcname("#controlsara2")+"::OnEnable";
+ donpcevent instance_npcname("#sarawarp3")+"::OnEnable";
+ }
+ end;
+}
+
+1@sara,263,94,0 script #controlsara2 CLEAR_NPC,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#controlsara2")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("#controlsara2");
+ hideonnpc instance_npcname("#controlsara2");
+ donpcevent instance_npcname("#controlsara2")+"::OnRespawn";
+ end;
+OnDisable:
+ disablenpc instance_npcname("#controlsara2");
+ end;
+OnRespawn:
+ .@map$ = instance_mapname("1@sara");
+ monster(.@map$, 255,91,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$, 255,92,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$, 255,93,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$, 255,94,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,254,91,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,254,92,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,254,93,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,254,94,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,228,65,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,228,64,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,228,63,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,228,62,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,198,62,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,195,56,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,195,60,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,195,62,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,192,56,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,192,60,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,192,62,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,187,68,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,188,63,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,120,39,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,121,39,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,121,39,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,93,64,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,93,68,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,93,72,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,93,76,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,90,64,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,90,68,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,90,72,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,90,76,"A Gentle Guard Dog",2545,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,87,67,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,87,63,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,87,59,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,87,55,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,84,67,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,84,63,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,84,59,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,84,55,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,81,67,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,81,63,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,81,59,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,81,55,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,81,51,"A Fierce Guard Dog",2546,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ end;
+OnMyMobDead:
+ .@callnum = 45;
+ .@map$ = instance_mapname("1@sara");
+ .@c_mob_num = mobcount(.@map$, instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ .@mob_dead_num = .@callnum - .@c_mob_num;
+ if (.@mob_dead_num > 44) {
+ viewpoint 1, 166, 67, 1, C_GREEN;
+ mapannounce(instance_mapname("1@sara"), _("<SYSTEM> Sara ran away yet again! *sigh* You think she went in the 6 O'clock direction!"), bc_map, C_YELLOW);
+ donpcevent instance_npcname("#controlsara2")+"::OnDisable";
+ donpcevent instance_npcname("#controlsara3")+"::OnEnable";
+ donpcevent instance_npcname("#sarawarp4")+"::OnEnable";
+ }
+ end;
+}
+
+1@sara,164,81,0 script #controlsara3 CLEAR_NPC,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#controlsara3")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("#controlsara3");
+ hideonnpc instance_npcname("#controlsara3");
+ donpcevent instance_npcname("#controlsara3")+"::OnRespawn";
+ end;
+OnDisable:
+ disablenpc instance_npcname("#controlsara3");
+ end;
+OnRespawn:
+ .@map$ = instance_mapname("1@sara");
+ monster(.@map$,155,97,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,157,97,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,159,97,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,161,97,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,201,113,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,204,113,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,207,113,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,210,113,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,213,113,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,201,117,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,204,117,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,207,117,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,210,117,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,213,117,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,223,152,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,223,148,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,223,144,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,221,152,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,221,148,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,221,144,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,151,174,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,153,174,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,155,174,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,157,174,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,159,174,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,151,177,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,153,177,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,155,177,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,157,177,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,159,177,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,151,180,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,153,180,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,155,180,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,157,180,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,159,180,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,173,139,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,170,139,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,167,139,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,164,139,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+
+ monster(.@map$,173,137,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,170,137,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,167,137,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ monster(.@map$,164,137,"Payon Town Guard",2543,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ end;
+OnMyMobDead:
+ .@callnum = 43;
+ .@map$ = instance_mapname("1@sara");
+ .@d_mob_num = mobcount(.@map$, instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ .@mob_dead_num = .@callnum - .@d_mob_num;
+ if (.@mob_dead_num > 42) {
+ viewpoint 1, 155, 180, 1, C_GREEN;
+ mapannounce(instance_mapname("1@sara"), _("<SYSTEM> Sara ran away yet again! You think she went in the 12 O'clock direction!"), bc_map, C_YELLOW);
+ for (.@i=4; .@i<=23; .@i++) {
+ donpcevent instance_npcname("Sara Irene#sarains" + .@i)+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains" + .@i)+"::OnDisable";
+ }
+ donpcevent instance_npcname("#controlsara3")+"::OnDisable";
+ donpcevent instance_npcname("#sarawarp5")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains2")+"::OnEnable";
+ }
+ end;
+}
+
+1@sara,152,233,5 script Sara Irene#sarains2 4_F_SARAH_BABY,{
+ if (getcharid(0) != getpartyleader(getcharid(1), 2))
+ end;
+ cutin "sara_9sara2.bmp", 2;
+ mes("[Sara Irene]");
+ mes("Mommy!");
+ npctalk(_("Mommy!"));
+ next;
+ cutin "sara_elder_irine4.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("Sara...");
+ donpcevent instance_npcname("Doyen Irene#sarains2")+"::OnChat1";
+ next;
+ cutin "sara_9sara2.bmp", 2;
+ mes("[Sara Irene]");
+ mes("No!");
+ npctalk(_("No!"));
+ next;
+ cutin "sara_elder_irine4.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("I have been looking for you Sara. Please come with daddy it is very dangerous here!");
+ donpcevent instance_npcname("Doyen Irene#sarains2")+"::OnChat2";
+ next;
+ mesf("[%s]", strcharinfo(0));
+ mes("I won't let you take Sara!");
+ unittalk(getcharid(3), _("I won't let you take Sara!"));
+ next;
+ cutin "sara_elder_irine3.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("The murderer is here! Guards! We will finish him once and for all!");
+ donpcevent instance_npcname("Doyen Irene#sarains2")+"::OnChat3";
+ next;
+ mesf("[%s]", strcharinfo(0));
+ mes("Sara... run! Save yourself!");
+ unittalk(getcharid(3), _("Sara... run! Save yourself!"));
+ next;
+ cutin "sara_9sara2.bmp", 2;
+ mes("[Sara Irene]");
+ mes("...okay.");
+ npctalk(_("...okay."));
+ close2;
+ cutin "sara_9sara2.bmp", 255;
+ donpcevent instance_npcname("Sara Irene#sarains2")+"::OnDisable";
+ donpcevent instance_npcname("#controlsara4")+"::OnEnable";
+ end;
+
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains2")+"::OnDisable";
+ end;
+OnEnable:
+ hideoffnpc instance_npcname("Sara Irene#sarains2");
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains2");
+ end;
+}
+
+1@sara,152,233,5,0 script Doyen Irene#sarains2 FAKE_NPC,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Doyen Irene#sarains2")+"::OnDisable";
+ end;
+OnEnable:
+ hideoffnpc instance_npcname("Doyen Irene#sarains2");
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Doyen Irene#sarains2");
+ end;
+OnChat1:
+ npctalk(_("Sara..."));
+ end;
+OnChat2:
+ npctalk(_("I have been looking for you Sara. Please come with daddy it is very dangerous here!"));
+ end;
+OnChat3:
+ npctalk(_("The murderer is here! Guards! We will finish him once and for all!"));
+ end;
+}
+
+1@sara,152,233,0 script #controlsara4 FAKE_NPC,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#controlsara4")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("#controlsara4");
+ donpcevent instance_npcname("#controlsara4")+"::OnRespawn";
+ end;
+OnDisable:
+ disablenpc instance_npcname("#controlsara4");
+ end;
+OnRespawn:
+ .@map$ = instance_mapname("1@sara");
+ monster(.@map$,150,232,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ unittalk($@mobid[0], _("I am getting too old for this sh-"));
+ monster(.@map$,150,227,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ unittalk($@mobid[0], _("For Payon!!"));
+ monster(.@map$,150,222,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ unittalk($@mobid[0], _("For Payon!!"));
+ monster(.@map$,150,217,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ unittalk($@mobid[0], _("For Payon!!"));
+ monster(.@map$,161,232,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ unittalk($@mobid[0], _("For Payon!!"));
+ monster(.@map$,161,227,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ unittalk($@mobid[0], _("For Payon!!"));
+ monster(.@map$,161,222,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ unittalk($@mobid[0], _("For Payon!!"));
+ monster(.@map$,161,217,"Payon Town Guard",2544,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ unittalk($@mobid[0], _("For Payon!!"));
+ end;
+OnMyMobDead:
+ .@callnum = 8;
+ .@map$ = instance_mapname("1@sara");
+ .@f_mob_num = mobcount(.@map$, instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ .@mob_dead_num = .@callnum - .@f_mob_num;
+ if (.@mob_dead_num > 7) {
+ mapannounce(instance_mapname("1@sara"),_("<SYSTEM> Doyen Irene draws his blade!"), bc_map, C_YELLOW);
+ donpcevent instance_npcname("#controlsara4")+"::OnDisable";
+ donpcevent instance_npcname("#controlsara5")+"::OnEnable";
+ }
+ end;
+}
+
+1@sara,155,226,0 script #controlsara5 FAKE_NPC,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("#controlsara5")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("#controlsara5");
+ donpcevent instance_npcname("#controlsara5")+"::OnRespawn";
+ end;
+OnDisable:
+ disablenpc instance_npcname("#controlsara5");
+ end;
+OnRespawn:
+ .@map$ = instance_mapname("1@sara");
+ monster(.@map$,155,226,"Doyen Irene",2542,1,instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ unittalk($@mobid[0], _("I will have revenge for Sara's Mom!"));
+ end;
+OnMyMobDead:
+ .@callnum = 1;
+ .@map$ = instance_mapname("1@sara");
+ .@g_mob_num = mobcount(.@map$, instance_npcname(strnpcinfo(0))+"::OnMyMobDead");
+ .@mob_dead_num = .@callnum - .@g_mob_num;
+ if (.@mob_dead_num > 0) {
+ mapannounce(instance_mapname("1@sara"), _("<SYSTEM> Doyen Irene has fallen."), bc_map, C_YELLOW);
+ donpcevent instance_npcname("#controlsara5")+"::OnDisable";
+ donpcevent instance_npcname("Doyen Irene#sarains3")+"::OnEnable";
+ }
+ end;
+}
+
+1@sara,156,236,3 script Doyen Irene#sarains3 4_M_CHIEF_IRIN,{
+ if (getcharid(0) != getpartyleader(getcharid(1), 2))
+ end;
+ cutin "sara_elder_irine4.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("You... were too strong for me.");
+ npctalk(_("You... were too strong for me."));
+ next;
+ mes("[Doyen Irene]");
+ mes("Why.. *hack* are you trying to kill my wife and daughter?");
+ npctalk(_("Why.. *hack* are you trying to kill my wife and daughter?"));
+ next;
+ mesf("[%s]", strcharinfo(0));
+ mes("What are you talking about? We saw you standing over Sara's mother with your sword COVERED in blood!");
+ unittalk(getcharid(3), _("What are you talking about? We saw you standing over Sara's mother with your sword COVERED in blood!"));
+ next;
+ mes("[Doyen Irene]");
+ mes("You.. think I killed Sara's mother?");
+ npctalk(_("You.. think I killed Sara's mother?"));
+ next;
+ mes("[Doyen Irene]");
+ mes("She *cough* had already been killed by an assassin. I slew him that *hack* is why my blade was covered in blood...");
+ npctalk(_("She *cough* had already been killed by an assassin. I slew him that *hack* is why my blade was covered in blood..."));
+ next;
+ cutin "sara_elder_irine4.bmp", 255;
+ cutin "sara_momdie.bmp", 4;
+ mes("^FF0000Thinking back you seem to recall another body laying in the left\r"
+ "corner of the room. Maybe that was the assassin the Doyen is talking about.^000000");
+ dispbottom(_("Thinking back you seem to recall another body laying in the left corner of the room. Maybe that was the assassin the Doyen is talking about."));
+ next;
+ cutin "sara_momdie.bmp", 255;
+ cutin "sara_elder_irine4.bmp", 2;
+ mes("[Doyen Irene]");
+ mes("If.. you are not the assassin sent to kill my wife and daughter, who are you?");
+ npctalk(_("If.. you are not the assassin sent to kill my wife and daughter, who are you?"));
+ next;
+ mesf("[%s]", strcharinfo(0));
+ mes("I am just an adventurer who was passing through. I heard some men plotting their deaths and needed to intervene.");
+ unittalk(getcharid(3), _("I am just an adventurer who was passing through. I heard some men plotting their deaths and needed to intervene."));
+ next;
+ mes("[Doyen Irene]");
+ mes("If.. you are telling the truth...\r"
+ "forgive me. I though you were one of them.");
+ npctalk(_("If.. you are telling the truth... forgive me. I though you were one of them."));
+ next;
+ mes("[Doyen Irene]");
+ mes("Strange men... I bet they were some of the village elders. Ugh...");
+ npctalk(_("Strange men... I bet they were some of the village elders. Ugh..."));
+ next;
+ mesf("[%s]", strcharinfo(0));
+ mes("There might be more assassins so we have to find Sara as fast as we can.");
+ unittalk(getcharid(3), _("There might be more assassins so we have to find Sara as fast as we can."));
+ next;
+ mesf("[%s]", strcharinfo(0));
+ mes("Sara believes that you killed her mother. We need to tell her the truth.");
+ unittalk(getcharid(3), _("Sara believes that you killed her mother. We need to tell her the truth."));
+ next;
+ mes("[Doyen Irene]");
+ mes("We must do our best to find her. Let's split up and search for her.\r"
+ "Please help me find my daughter and explain everything to her.");
+ npctalk(_("We must do our best to find her. Let's split up and search for her. Please help me find my daughter and explain everything to her."));
+ close2;
+ cutin "sara_elder_irine4.bmp", 255;
+ viewpoint 1, 88, 188, 1, C_GREEN;
+ mapannounce(instance_mapname("1@sara"), _("<SYSTEM> We must find Sara. You seem remember her running in the 8 O'clock direction."), bc_map, C_YELLOW);
+ donpcevent instance_npcname("Doyen Irene#sarains3")+"::OnDisable";
+ donpcevent instance_npcname("#sarawarp6")+"::OnEnable";
+ donpcevent instance_npcname("????-#saratalk")+"::OnEnable";
+ donpcevent instance_npcname("Sara Irene#sarains3")+"::OnEnable";
+ end;
+
+OnInstanceInit:
+ donpcevent instance_npcname("Doyen Irene#sarains3")+"::OnDisable";
+ end;
+OnEnable:
+ hideoffnpc instance_npcname("Doyen Irene#sarains3");
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Doyen Irene#sarains3");
+ end;
+}
+
+1@sara,39,142,3 script Sara Irene#sarains3 4_F_SARAH_BABY,{
+ if (getcharid(0) != getpartyleader(getcharid(1), 2))
+ end;
+ mes("^FF0000As you are about to call out to Sara a sudden blow knocks you down from behind.^000000");
+ dispbottom(_("As you are about to call out to Sara a sudden blow knocks you down from behind."));
+ next;
+ cutin "sara_beholder.bmp", 2;
+ mes("[?????]");
+ mes("The time travellers cannot interfere any longer. You cannot stop us from meeting Sara.");
+ donpcevent instance_npcname("????-#saratalk")+"::OnChat1";
+ next;
+ mes("[?????]");
+ mes("You should go back to the time where you belong.");
+ donpcevent instance_npcname("????-#saratalk")+"::OnChat2";
+ next;
+ mes("^FF0000As you fall to the ground two dark figures approach Sara.^000000");
+ dispbottom(_("As you fall to the ground two dark figures approach Sara."));
+ next;
+ mes("[?????]");
+ mes("A girl full of betrayal, despair, and hate. We will guide you to your ultimate fate.");
+ donpcevent instance_npcname("????-#saratalk")+"::OnChat3";
+ next;
+ cutin "sara_9sara2.bmp", 2;
+ mes("[Sara Irene]");
+ mes("...");
+ npctalk("...");
+ next;
+ cutin "sara_beholder.bmp", 2;
+ mes("[?????]");
+ mes("Sara Irene, he will make your dreams come true.");
+ donpcevent instance_npcname("????-#saratalk")+"::OnChat4";
+ next;
+ cutin "sara_beholder.bmp", 255;
+ mes("^FF0000One of the cloaked strangers covers Sara with their cloak and all three figures disappear.^000000");
+ dispbottom(_("One of the cloaked strangers covers Sara with their cloak and all three figures disappear."));
+ donpcevent instance_npcname("Sara Irene#sarains3")+"::OnDisable";
+ next;
+ mes("^FF0000At the same time as Sara disappearing this place begin to become unstable, just like what Leon said before.^000000");
+ dispbottom(_("At the same time as Sara disappearing this place begin to become unstable, just like what Leon said before."));
+ next;
+ mes("^FF0000We need to get out from this place quickly to the left. And when we at the outside let's talk to him.^000000");
+ dispbottom(_("We need to get out from this place quickly to the left. And when we at the outside let's talk to him."));
+ close2;
+ donpcevent instance_npcname("????-#saratalk")+"::OnDisable";
+ donpcevent instance_npcname("#sarawarp7")+"::OnEnable";
+ end;
+
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains3")+"::OnDisable";
+ end;
+OnEnable:
+ hideoffnpc instance_npcname("Sara Irene#sarains3");
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains3");
+ end;
+}
+
+1@sara,152,233,0 script ????-#saratalk FAKE_NPC,{
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("????-#saratalk")+"::OnDisable";
+ end;
+OnEnable:
+ hideoffnpc instance_npcname("????-#saratalk");
+ end;
+OnDisable:
+ hideonnpc instance_npcname("????-#saratalk");
+ end;
+OnChat1:
+ npctalk(_("The time travellers cannot interfere any longer. You cannot stop us from meeting Sara."));
+ end;
+OnChat2:
+ npctalk(_("You should go back to the time where you belong."));
+ end;
+OnChat3:
+ npctalk(_("A girl full of betrayal, despair, and hate. We will guide you to your ultimate fate."));
+ end;
+OnChat4:
+ npctalk(_("Sara Irene, he will make your dreams come true."));
+ end;
+}
+
+1@sara,97,304,5 script Sara Irene#sarains4 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("Why daddy?"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains4")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains4")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains4")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains4");
+ hideoffnpc instance_npcname("Sara Irene#sarains4");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains4");
+ disablenpc instance_npcname("Sara Irene#sarains4");
+ end;
+}
+
+1@sara,128,296,5 script Sara Irene#sarains5 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("Not mommy!"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains5")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains5")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains5")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains5");
+ hideoffnpc instance_npcname("Sara Irene#sarains5");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains5");
+ disablenpc instance_npcname("Sara Irene#sarains5");
+ end;
+}
+
+1@sara,90,215,5 script Sara Irene#sarains6 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("Why did he do it?!"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains6")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains6")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains6")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains6");
+ hideoffnpc instance_npcname("Sara Irene#sarains6");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains6");
+ disablenpc instance_npcname("Sara Irene#sarains6");
+ end;
+}
+
+1@sara,124,230,5 script Sara Irene#sarains7 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("Why.. why?!"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains7")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains7")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains7")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains7");
+ hideoffnpc instance_npcname("Sara Irene#sarains7");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains7");
+ disablenpc instance_npcname("Sara Irene#sarains7");
+ end;
+}
+
+1@sara,174,226,5 script Sara Irene#sarains8 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("Noooo..."));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains8")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains8")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains8")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains8");
+ hideoffnpc instance_npcname("Sara Irene#sarains8");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains8");
+ disablenpc instance_npcname("Sara Irene#sarains8");
+ end;
+}
+
+1@sara,203,259,5 script Sara Irene#sarains9 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk("...");
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains9")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains9")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains9")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains9");
+ hideoffnpc instance_npcname("Sara Irene#sarains9");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains9");
+ disablenpc instance_npcname("Sara Irene#sarains9");
+ end;
+}
+
+1@sara,225,298,5 script Sara Irene#sarains10 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("Why does it hurt so much?"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains10")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains10")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains10")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains10");
+ hideoffnpc instance_npcname("Sara Irene#sarains10");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains10");
+ disablenpc instance_npcname("Sara Irene#sarains10");
+ end;
+}
+
+1@sara,228,282,5 script Sara Irene#sarains11 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("........"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains11")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains11")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains11")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains11");
+ hideoffnpc instance_npcname("Sara Irene#sarains11");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains11");
+ disablenpc instance_npcname("Sara Irene#sarains11");
+ end;
+}
+
+1@sara,243,250,5 script Sara Irene#sarains12 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("...Mommy"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains12")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains12")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains12")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains12");
+ hideoffnpc instance_npcname("Sara Irene#sarains12");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains12");
+ disablenpc instance_npcname("Sara Irene#sarains12");
+ end;
+}
+
+1@sara,265,253,5 script Sara Irene#sarains13 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("What happened to you daddy?"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains13")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains13")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains13")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains13");
+ hideoffnpc instance_npcname("Sara Irene#sarains13");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains13");
+ disablenpc instance_npcname("Sara Irene#sarains13");
+ end;
+}
+
+1@sara,231,205,5 script Sara Irene#sarains14 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("All that blood..."));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains14")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains14")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains14")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains14");
+ hideoffnpc instance_npcname("Sara Irene#sarains14");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains14");
+ disablenpc instance_npcname("Sara Irene#sarains14");
+ end;
+}
+
+1@sara,238,53,5 script Sara Irene#sarains15 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("Who are you?!"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains15")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains15")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains15")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains15");
+ hideoffnpc instance_npcname("Sara Irene#sarains15");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains15");
+ disablenpc instance_npcname("Sara Irene#sarains15");
+ end;
+}
+
+1@sara,184,67,5 script Sara Irene#sarains16 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("I want my mommy!"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains16")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains16")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains16")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains16");
+ hideoffnpc instance_npcname("Sara Irene#sarains16");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains16");
+ disablenpc instance_npcname("Sara Irene#sarains16");
+ end;
+}
+
+1@sara,150,60,5 script Sara Irene#sarains17 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("........"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains17")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains17")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains17")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains17");
+ hideoffnpc instance_npcname("Sara Irene#sarains17");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains17");
+ disablenpc instance_npcname("Sara Irene#sarains17");
+ end;
+}
+
+1@sara,105,63,5 script Sara Irene#sarains18 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("Nooooo..."));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains18")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains18")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains18")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains18");
+ hideoffnpc instance_npcname("Sara Irene#sarains18");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains18");
+ disablenpc instance_npcname("Sara Irene#sarains18");
+ end;
+}
+
+1@sara,163,99,5 script Sara Irene#sarains19 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("Mommy!"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains19")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains19")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains19")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains19");
+ hideoffnpc instance_npcname("Sara Irene#sarains19");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains19");
+ disablenpc instance_npcname("Sara Irene#sarains19");
+ end;
+}
+
+1@sara,184,106,5 script Sara Irene#sarains20 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk("........");
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains20")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains20")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains20")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains20");
+ hideoffnpc instance_npcname("Sara Irene#sarains20");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains20");
+ disablenpc instance_npcname("Sara Irene#sarains20");
+ end;
+}
+
+1@sara,153,124,5 script Sara Irene#sarains21 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("Daddy!"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains21")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains21")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains21")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains21");
+ hideoffnpc instance_npcname("Sara Irene#sarains21");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains21");
+ disablenpc instance_npcname("Sara Irene#sarains21");
+ end;
+}
+
+1@sara,141,153,5 script Sara Irene#sarains22 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk("........");
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains22")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains22")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains22")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains22");
+ hideoffnpc instance_npcname("Sara Irene#sarains22");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains22");
+ disablenpc instance_npcname("Sara Irene#sarains22");
+ end;
+}
+
+1@sara,201,155,5 script Sara Irene#sarains23 4_F_SARAH_BABY,7,7,{
+ end;
+OnTouch:
+ npctalk(_("Why?"));
+ initnpctimer;
+ donpcevent instance_npcname("Sara Irene#sarains23")+"::OnDisable";
+ end;
+OnTimer60000:
+ donpcevent instance_npcname("Sara Irene#sarains23")+"::OnEnable";
+ end;
+OnInstanceInit:
+ donpcevent instance_npcname("Sara Irene#sarains23")+"::OnDisable";
+ end;
+OnEnable:
+ enablenpc instance_npcname("Sara Irene#sarains23");
+ hideoffnpc instance_npcname("Sara Irene#sarains23");
+ stopnpctimer;
+ end;
+OnDisable:
+ hideonnpc instance_npcname("Sara Irene#sarains23");
+ disablenpc instance_npcname("Sara Irene#sarains23");
+ end;
+}
diff --git a/npc/re/jobs/novice/academy.txt b/npc/re/jobs/novice/academy.txt
index 949e6973d..4b970a86c 100644
--- a/npc/re/jobs/novice/academy.txt
+++ b/npc/re/jobs/novice/academy.txt
@@ -2839,7 +2839,7 @@ iz_ac01,134,47,5 script Trainer Mainz#ac 4_M_KY_KNT,4,4,{
mes "Please keep in mind that I really wanted to have it but since you look exhausted I offered it to you first!";
emotion e_no1;
next;
- mes "- You open the lunchbox and there is some type of food inside ¡©";
+ mes "- You open the lunchbox and there is some type of food inside -";
next;
mes "[Mainz]";
mes "Wahahahat! Don't hesitate and just take it!";
@@ -10875,7 +10875,7 @@ iz_ac02,49,134,5 script Vicente#ac 4_M_HUMAN_02,{
case 2:
mes "[Vicente]";
mes "Correct!";
- mes "You have a good memory£¡";
+ mes "You have a good memory!";
cutin "sc_vicente03.bmp", 2;
next;
break;
@@ -10941,7 +10941,7 @@ iz_ac02,49,134,5 script Vicente#ac 4_M_HUMAN_02,{
case 2:
mes "[Vicente]";
mes "Correct!";
- mes "You have a good memory£¡";
+ mes "You have a good memory!";
cutin "sc_vicente03.bmp", 2;
next;
break;
@@ -13297,7 +13297,7 @@ izlude,155,132,3 script Locas#iz 4_M_02,{
switch(select("refining price", "refining effect", "Finish the explanation.")) {
case 1:
mes "[Locas]";
- mes "©öFrom the word itself, refining price is ^3E86C3 the price for refining once^000000.";
+ mes "From the word itself, refining price is ^3E86C3 the price for refining once^000000.";
next;
mes "[Locas]";
mes "But, there are differences in the essential material according the (zeny) and weapon level.";
diff --git a/npc/re/kafras/kafras.txt b/npc/re/kafras/kafras.txt
index c252264e3..b9b2ff404 100644
--- a/npc/re/kafras/kafras.txt
+++ b/npc/re/kafras/kafras.txt
@@ -62,6 +62,14 @@ moc_para01,10,185,4 script Kafra Employee::kaf_eden 4_F_KAFRA7,{
callfunc "F_Kafra",5,2,0,80,0;
}
+//== Glastheim =============================================
+glast_01,200,275,5 script Kafra Employee::kaf_glast 4_F_KAFRA3,{
+ cutin "kafra_03",2;
+ callfunc "F_Kafra",0,3,2,500,700;
+ savepoint "glast_01",200,272;
+ callfunc "F_KafEnd",0,1,"in Glast Heim";
+}
+
//== Izlude ================================================
izlude,128,148,6 duplicate(kaf_izlude) Kafra Employee#iz 4_F_KAFRA1
izlude_a,128,148,6 duplicate(kaf_izlude) Kafra Employee#iz_a 4_F_KAFRA1
diff --git a/npc/re/merchants/ninja_craftsman.txt b/npc/re/merchants/ninja_craftsman.txt
index a78491f65..4a3744269 100644
--- a/npc/re/merchants/ninja_craftsman.txt
+++ b/npc/re/merchants/ninja_craftsman.txt
@@ -87,7 +87,7 @@ L_Menu:
mes "[Gyo]";
mes "To make a ^ff0000"+getitemname(.@item_make)+", "+callsub(L_Ingredients,.@item_make)+".^000000";
if (.@item_make==Wolf_Armguard)
- mes "Can you feel it? The throbbing of the wolf blood";
+ mes "Can you feel it? The throbbing of the wolf blood...";
else if (.@item_make==Crescent_Armguard)
mes "A crescent as beautiful and clear as a crystal will be engraved on it.";
else if (.@item_make==Ninja_Scale_Armor)
@@ -104,38 +104,38 @@ L_Menu:
}
else if (.@item_make == Crescent_Armguard){
mes "Decreases post skill delay for 2% for every enhancement.";
- mes "Shield Type, Defense 70, Slot 1";
- mes "Required Level 100, Ninja Type Only";
+ mes "Shield Type, Defense 70, Slot 1";
+ mes "Required Level 100, Ninja Type Only";
}
else if (.@item_make == Ninja_Scale_Armor){
- mes "MHP+15%, MSP-30%.";
- mes "Armor Type, Defense 90, Slot 1";
- mes "Required Level 100, Ninja Type Only";
+ mes "MHP+15%, MSP-30%.";
+ mes "Armor Type, Defense 90, Slot 1";
+ mes "Required Level 100, Ninja Type Only";
}
else if (.@item_make == Tenebris_Latitantes){
mes "Chance to activate Lvl. 1 Illusion - Shadow when attacked by melee attacks.";
- mes "Armor Type, Defense 60, Slot 1";
- mes "Required Level 100, Ninja Type Only";
+ mes "Armor Type, Defense 60, Slot 1";
+ mes "Required Level 100, Ninja Type Only";
}
break;
case 3:
mes "[Gyo]";
- mes "Make sure that ^ff0000you have the correct ingredients and equipment at hand.^000000";
- mes "No use crying over it later.";
- next;
- if (select("Combine.", "Quit.") == 2) {
+ mes "Make sure that ^ff0000you have the correct ingredients and equipment at hand.^000000";
+ mes "No use crying over it later.";
+ next;
+ if (select("Combine.", "Quit.") == 2) {
mes "[Gyo]";
mes "Looks like you need more time to decide.";
close;
}
- if (checkweight(Knife,1) == 0 || (MaxWeight - Weight) < 2000) {
+ if (checkweight(Knife,1) == 0 || (MaxWeight - Weight) < 2000) {
mes "- Hold on!! -";
mes "- You cannot receive items -";
mes "- because you carry too much. -";
mes "- Please try again -";
mes "- after lightening your burden. -";
close;
- }
+ }
mes "[Gyo]";
switch(.@item_make){
case 2172: //Wolf_Armguard
@@ -144,7 +144,7 @@ L_Menu:
delitem Wolf_Blood,10; //Wolf_Blood
getitem Wolf_Armguard,1; //Wolf_Armguard
mes "Can you feel the wolfish instinct?";
- mes "Wild, but beautiful";
+ mes "Wild, but beautiful...";
}
else {
mes "You don't have enough ingredients.";
@@ -272,82 +272,81 @@ L_Menu:
mes "["+ getitemname(getarg(0)) +"]";
if (.@item_make == Raksasa_Dagger){
mes "INT+3 MATK+100.";
- mes "Dagger Type, ATK 120, Slot 1";
- mes "Required Level 110, Ninja Type Only";
+ mes "Dagger Type, ATK 120, Slot 1";
+ mes "Required Level 110, Ninja Type Only";
}
else if (.@item_make == Mikatsuki){
mes "MATK + 120, Fluctuated Casting and SP use decreased by 5% upon skill use.";
- mes "Dagger Type, ATK 50, Weapon Lvl. 4";
- mes "Slot 1";
- mes "Required Level 100, Ninja Type Only";
+ mes "Dagger Type, ATK 50, Weapon Lvl. 4";
+ mes "Slot 1";
+ mes "Required Level 100, Ninja Type Only";
}
else if (.@item_make == Huuma_Swirling_Petal){
- mes "MATK + 50, Petal Shuriken skill damage increased by 20%.";
- mes "Shuriken Type, ATK 150";
- mes "Weapon Lvl. 3, Slot 2";
- mes "Required Level 110, Ninja Type Only";
+ mes "MATK + 50, Petal Shuriken skill damage increased by 20%.";
+ mes "Shuriken Type, ATK 150";
+ mes "Weapon Lvl. 3, Slot 2";
+ mes "Required Level 110, Ninja Type Only";
}
break;
case 3:
mes "[Ki]";
- mes "Make sure that ^ff0000you have the correct ingredients and equipment at hand.^000000";
- mes "No use crying over it later.";
- next;
- if (select("Combine.", "Quit.") == 2) {
+ mes "Make sure that ^ff0000you have the correct ingredients and equipment at hand.^000000";
+ mes "No use crying over it later.";
+ next;
+ if (select("Combine.", "Quit.") == 2) {
mes "[Ki]";
mes "Think carefully~~";
close;
}
- if (checkweight(Knife,1) == 0 || (MaxWeight - Weight) < 2000) {
+ if (checkweight(Knife,1) == 0 || (MaxWeight - Weight) < 2000) {
mes "- Hold on!! -";
mes "- You cannot receive items -";
mes "- because you carry too much. -";
mes "- Please try again -";
mes "- after lightening your burden. -";
close;
- }
+ }
mes "[Ki]";
switch(.@item_make){
case 13076: //Raksasa_Dagger
- if (countitem(Murasame_) && countitem(Dark_Red_Jewel)) {
- delitem Murasame_,1; //Murasame_
- delitem Dark_Red_Jewel,1; //Dark_Red_Jewel
- getitem Raksasa_Dagger,1; //Raksasa_Dagger
- mes "Oh yes...";
- mes "It is a beautiful glow...";
- }
- else {
- mes "Hmm... You do not have enough to make a Raksasa Dagger.";
- mes "Why don't you check again?";
- mes "Some just can't give up what they hold.";
- }
+ if (countitem(Murasame_) && countitem(Dark_Red_Jewel)) {
+ delitem Murasame_,1; //Murasame_
+ delitem Dark_Red_Jewel,1; //Dark_Red_Jewel
+ getitem Raksasa_Dagger,1; //Raksasa_Dagger
+ mes "Oh yes...";
+ mes "It is a beautiful glow...";
+ } else {
+ mes "Hmm... You do not have enough to make a Raksasa Dagger.";
+ mes "Why don't you check again?";
+ mes "Some just can't give up what they hold.";
+ }
break;
case 13078: //Mikatsuki
- if (countitem(Hakujin_) && countitem(White_Jewel)) {
- delitem Hakujin_,1; //Hakujin_
- delitem White_Jewel,1; //White_Jewel
- getitem Mikatsuki,1; //Mikatsuki
- mes "Splendid";
- mes "It is always mesmerizing to look upon such a beautiful weapon";
- }
- else {
- mes "Hmm... You do not have enough to make a Mikatsuki.";
- mes "Why don't you check again?";
- mes "Some just can't give up what they hold.";
- }
- break;
+ if (countitem(Hakujin_) && countitem(White_Jewel)) {
+ delitem Hakujin_,1; //Hakujin_
+ delitem White_Jewel,1; //White_Jewel
+ getitem Mikatsuki,1; //Mikatsuki
+ mes "Splendid...";
+ mes "It is always mesmerizing to look upon such a beautiful weapon...";
+ }
+ else {
+ mes "Hmm... You do not have enough to make a Mikatsuki.";
+ mes "Why don't you check again?";
+ mes "Some just can't give up what they hold.";
+ }
+ break;
case 13313: //Huuma_Swirling_Petal
- if (countitem(Huuma_Calm_Mind) && countitem(Broken_Shuriken) > 99) {
- delitem Huuma_Calm_Mind,1; //Huuma_Calm_Mind
- delitem Broken_Shuriken,100; //Broken_Shuriken
- getitem Huuma_Swirling_Petal,1; //Huuma_Swirling_Petal
- mes "Swirling Petal!!";
- }
- else {
- mes "Hmm... You do not have enough to make Petal Shurikens.";
- mes "Why don't you check again?";
- mes "Some just can't give up what they hold.";
- }
+ if (countitem(Huuma_Calm_Mind) && countitem(Broken_Shuriken) > 99) {
+ delitem Huuma_Calm_Mind,1; //Huuma_Calm_Mind
+ delitem Broken_Shuriken,100; //Broken_Shuriken
+ getitem Huuma_Swirling_Petal,1; //Huuma_Swirling_Petal
+ mes "Swirling Petal!!";
+ }
+ else {
+ mes "Hmm... You do not have enough to make Petal Shurikens.";
+ mes "Why don't you check again?";
+ mes "Some just can't give up what they hold.";
+ }
break;
}
close;
diff --git a/npc/re/mobs/dungeons/glastheim.txt b/npc/re/mobs/dungeons/glastheim.txt
index bcd6af917..693aa4a3a 100644
--- a/npc/re/mobs/dungeons/glastheim.txt
+++ b/npc/re/mobs/dungeons/glastheim.txt
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) L0ne_W0lf
//= Copyright (C) Playtester
//= Copyright (C) MasterOfMuppets
@@ -33,7 +33,7 @@
//================= Description ===========================================
//= Monster Spawns for Glast Heim Dungeons
//================= Current Version =======================================
-//= 1.5
+//= 1.6
//=========================================================================
//== glast_01 - Glast Heim =================================
@@ -168,3 +168,18 @@ gl_sew04,0,0,0,0 monster Drainliar 1111,10,5000,0,0
gl_step,0,0,0,0 monster Wind Ghost 1263,100,5000,0,0
gl_step,0,0,0,0 monster Raydric Archer 1276,10,5000,0,0
gl_step,0,0,0,0 monster Mimic 1191,5,5000,0,0
+
+//== gl_cas02_ - Nightmare Mode 2f =========================
+gl_cas02_,0,0,0,0 monster Evil Druid (Nightmare) 2480,20,0,0,0
+gl_cas02_,0,0,0,0 monster Chimera (Nightmare) 2485,10,0,0,0
+gl_cas02_,0,0,0,0 monster Mimic (Nightmare) 2479,40,0,0,0
+gl_cas02_,0,0,0,0 monster Rideword (Nightmare) 2478,40,0,0,0
+gl_cas02_,0,0,0,0 monster Wanderer (Nightmare) 2477,120,0,0,0
+gl_cas02_,0,0,0,0 monster Swift Wanderer 2734,2,180000,0,0
+gl_cas02_,0,0,0,0 monster Baphomet (Nightmare) 2483,1,7200000,0,0
+
+//== gl_chyard_ - Nightmare Mode Churchyard ================
+gl_chyard_,0,0,0,0 monster Wraith Dead (Nightmare) 2481,200,0,0,0
+gl_chyard_,0,0,0,0 monster Elusive Wraith Dead 2733,2,180000,0,0
+gl_chyard_,0,0,0,0 monster Evil Druid (Nightmare) 2480,5,60000,0,0
+gl_chyard_,0,0,0,0 monster Mimic (Nightmare) 2479,5,60000,0,0
diff --git a/npc/re/quests/eden/100-110.txt b/npc/re/quests/eden/100-110.txt
index 0cbcb610b..2fa43097c 100644
--- a/npc/re/quests/eden/100-110.txt
+++ b/npc/re/quests/eden/100-110.txt
@@ -87,7 +87,7 @@ moc_para01,37,95,5 script Gelkah#1 4_F_GELKA,{
mes "That person standing next to me is my master... He came back after long journey of practice.";
next;
mes "[Gelkah]";
- mes "I understand you might wonder why a Sura wants an Archbishop as a teacher...";
+ mes "I understand you might wonder why a Sura wants an Archbishop as a teacher...";
}
else {
cutin "gelca03",2;
diff --git a/npc/re/quests/eden/111-120.txt b/npc/re/quests/eden/111-120.txt
index 9f503666d..39b7de701 100644
--- a/npc/re/quests/eden/111-120.txt
+++ b/npc/re/quests/eden/111-120.txt
@@ -878,7 +878,7 @@ moc_para01,17,95,5 script Mingmin#1 4_F_GENETIC,{
case 3:
mes "[Mingmin]";
if (questprogress(13098,PLAYTIME) == 1)
- mes "They all look the same for me. I should research harder.";
+ mes "They all look the same for me. I should research harder.";
else if (questprogress(13097,HUNTING) == 1) {
cutin "",3; //venatu_card
mes "There is one more reason why many adventurers are sent to Juperos and that is my real request.";
diff --git a/npc/re/quests/quests_dicastes.txt b/npc/re/quests/quests_dicastes.txt
index 562d205d3..d52de0f70 100644
--- a/npc/re/quests/quests_dicastes.txt
+++ b/npc/re/quests/quests_dicastes.txt
@@ -52,9 +52,9 @@
manuk,321,182,5 script Entrance Manager#ep133 4_MAN_GALTUN,{
if (!isequipped(2782)) {
mes "[Average Galten]";
- mes "? ...";
- mes " ?";
- mes "..?";
+ mes sprintf("? ...");
+ mes sprintf(" ?");
+ mes sprintf("..?");
close;
}
if (ep13_3_invite >= 4) {
@@ -81,7 +81,7 @@ manuk,321,182,5 script Entrance Manager#ep133 4_MAN_GALTUN,{
dic_dun01,266,113,5 script Curious Sapha#ep13_3_ 4_MAN_BENKUNI,{
if (!isequipped(2782)) {
mes "[Curious Sapha]";
- mes " ?";
+ mes sprintf(" ?");
next;
mes "- Cannot understand a word. -";
close;
@@ -207,8 +207,8 @@ sec_in02,16,43,5 script Scaraba Dungeon Entrance 4_MAN_BENKUNI,{
if (compare(strnpcinfo(0),"ep133_26")) {
if (!isequipped(2782)) {
mes "[Vigilante]";
- mes " ?";
- mes " С...";
+ mes sprintf(" ?");
+ mes sprintf(" С...");
next;
mes "The Vigilante says something and then shakes his head.";
mes "Looks like a negative reaction from the looks of his firm pose holding his shield in front of him.";
@@ -231,9 +231,9 @@ sec_in02,16,43,5 script Scaraba Dungeon Entrance 4_MAN_BENKUNI,{
}
if (!isequipped(2782)) {
mes "[Vigilante]";
- mes " ?";
- mes " С...";
- mes " ..! ";
+ mes sprintf(" ?");
+ mes sprintf(" С...");
+ mes sprintf(" ..! ");
next;
mes "Cannot communicate with him.";
close;
@@ -267,8 +267,8 @@ dic_dun01,30,216,5 duplicate(Vigilante#main) Vigilante#ep133_26 4_MAN_GALTUN1
dic_dun01,284,102,5 script Dirty Vigilante#ep13_3 4_MAN_GALTUN,{
if (!isequipped(2782)) {
mes "[Vigilante]";
- mes " 󢤡 С.";
- mes " ..! ";
+ mes sprintf(" 󢤡 С.");
+ mes sprintf(" ..! ");
next;
mes "Cannot understand a word.";
close;
@@ -361,8 +361,8 @@ OnEnable:
- script Guard#ep133_11 4_MAN_GALTUN1,{
if (!isequipped(2782)) {
mes "[Capital City Guard]";
- mes " ?";
- mes " ..!";
+ mes sprintf(" ?");
+ mes sprintf(" ..!");
next;
mes "- Cannot communicate with him. -";
close;
@@ -502,8 +502,8 @@ dic_in01,48,263,5 script Hunting Dept. 1 Manager 4_MAN_BENKUNI,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -572,8 +572,8 @@ dic_in01,51,266,6 script Hunting Dept. 2 Manager 4_MAN_BENKUNI,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -641,8 +641,8 @@ dic_in01,51,270,7 script Supply Dept. 1 Manager 4_MAN_BENKUNI,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -712,8 +712,8 @@ dic_in01,48,273,1 script Supply Dept. 2 Manager 4_MAN_BENKUNI,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -779,8 +779,8 @@ dic_in01,43,273,1 script Transport Dept. 1 Mgr 4_MAN_BENKUNI,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -853,8 +853,8 @@ dic_in01,40,270,2 script Transport Dept. 2 Mgr 4_MAN_BENKUNI,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -921,8 +921,8 @@ dic_in01,40,193,1 script Papyrus#0001 4_MAN_NITT,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -1204,9 +1204,9 @@ cmd_fild08,324,163,0 script Stone Hearts CLEAR_NPC,{ unknown_d(12215,953); }
dic_in01,138,225,3 script Diel Guard#ep133_19 4_MAN_GALTUN1,{
if (!isequipped(2782)) {
mes "[Diel Guard]";
- mes " ?";
- mes " С...";
- mes " ..!";
+ mes sprintf(" ?");
+ mes sprintf(" С...");
+ mes sprintf(" ..!");
next;
mes "Cannot communicate with him.";
close;
@@ -1267,9 +1267,9 @@ dic_in01,242,182,0 script Elevator#5f_to_4f CLEAR_NPC,{
dic_in01,263,193,3 script Diel Guard#ep133_20 4_MAN_GALTUN,{
if (!isequipped(2782)) {
mes "[Diel Guard]";
- mes " ?";
- mes " С...";
- mes " ..!";
+ mes sprintf(" ?");
+ mes sprintf(" С...");
+ mes sprintf(" ..!");
next;
mes "Cannot communicate with him.";
close;
@@ -1804,8 +1804,8 @@ OnTouch:
if (ep13_3_secret == 19) {
if (!isequipped(2782)) {
mes "[Quiet Voice]";
- mes " ....";
- mes " С...";
+ mes sprintf(" ....");
+ mes sprintf(" С...");
}
else {
mes "[Quiet Voice]";
@@ -1821,9 +1821,9 @@ OnTouch:
dic_in01,158,188,3 script Jarute HesLanta#ep133_2 4_MAN_JERUTOO,{
if (!isequipped(2782)) {
mes "[Jarute HesLanta]";
- mes " ?";
- mes " С...";
- mes " ..!";
+ mes sprintf(" ?");
+ mes sprintf(" С...");
+ mes sprintf(" ..!");
next;
mes "Cannot communicate with him.";
mes "Sapha's minister looks hopeless.";
@@ -2331,8 +2331,8 @@ dicastes01,223,190,1 script Calyon#pa8029 4_MAN_NITT,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -2504,8 +2504,8 @@ dicastes01,211,178,2 script Moltuka#pa0829 4_MAN_NITT,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -2728,8 +2728,8 @@ dicastes01,175,217,5 script Kalipo#pa0829 4_MAN_NITT,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -2870,8 +2870,8 @@ dicastes01,187,230,5 script Laponte#pa0829 4_MAN_NITT,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -3041,8 +3041,8 @@ dicastes01,208,230,3 script Pura#pa0829 4_MAN_NITT,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -3232,8 +3232,8 @@ dicastes01,225,211,3 script Tragis#pa0829 4_MAN_NITT,{
close;
}
if (!isequipped(2782)) {
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "I don't feel confident in talking since you wouldn't understand anything.";
close;
@@ -4300,8 +4300,8 @@ dic_in01,245,119,4 script Shay#ep133_13 4_M_ACROSS,{
dicastes01,207,210,5 script Walking Knit#ep133_15 4_MAN_BENKUNI,{
if (!isequipped(2782)) {
mes "[Knit]";
- mes "";
- mes " 𢲢";
+ mes sprintf("");
+ mes sprintf(" 𢲢");
next;
mes "Cannot communicate with him.";
close;
@@ -4398,9 +4398,9 @@ dicastes01,207,210,5 script Walking Knit#ep133_15 4_MAN_BENKUNI,{
dicastes01,112,248,5 script Resting Piom#ep133_16 4_MAN_PIOM5,{
mes "[Piom]";
if (!isequipped(2782)) {
- mes " ?";
- mes "~!";
- mes "Т !!!";
+ mes sprintf(" ?");
+ mes sprintf("~!");
+ mes sprintf("Т !!!");
next;
mes "Cannot communicate with him.";
close;
@@ -4471,8 +4471,8 @@ dicastes01,112,248,5 script Resting Piom#ep133_16 4_MAN_PIOM5,{
dicastes01,249,140,3 script Training Galten#ep133_17 4_MAN_GALTUN,{
if (!isequipped(2782)) {
mes "[Galten]";
- mes " ";
- mes "";
+ mes sprintf(" ");
+ mes sprintf("");
next;
mes "Cannot communicate with him.";
close;
@@ -5045,8 +5045,8 @@ dicastes01,117,262,0 script Frede#13_3 4_MAN_PIOM5,2,2,{
close;
}
mes "[Frede]";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
OnTouch:
if (isequipped(2782) && ep13_3_invite > 5 && ep13_3_bra < 1) {
@@ -5352,8 +5352,8 @@ dic_in01,165,104,0 script Frede#13_3_in 4_MAN_PIOM,{
close;
}
mes "[Frede]";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
}
@@ -5450,9 +5450,9 @@ dic_dun01,205,43,5 script Brian#ep13_3_ 4_MAN_PIOM4,{
close;
}
mes "[Brian]";
- mes " 𢱡 ";
- mes " С ";
- mes " ";
+ mes sprintf(" 𢱡 ");
+ mes sprintf(" С ");
+ mes sprintf(" ");
close;
}
@@ -5576,9 +5576,9 @@ dic_dun01,153,107,4 script Tyler#13_3 4_MAN_PIOM6,{
close;
}
mes "[Tyler]";
- mes "";
- mes " С ";
- mes " ";
+ mes sprintf("");
+ mes sprintf(" С ");
+ mes sprintf(" ");
close;
}
@@ -5679,8 +5679,8 @@ dic_dun01,235,243,0 script John#13_3 4_MAN_PIOM,{
close;
}
mes "[John]";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
}
@@ -5773,13 +5773,14 @@ dic_dun02,110,127,5 script Rose#13_3 4_MAN_PIOM6,{
next;
mes "[Rose]";
mes "We must be connected?";
- mes "^f57d7dHahaha^000000";
+ mes sprintf("^f57d7d%s^000000",
+ _("Hahaha"));;
close;
}
mes "[Rose]";
- mes " ";
- mes " ";
- mes "";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf("");
close;
}
@@ -5872,8 +5873,8 @@ dic_dun01,64,107,7 script Bain#13_3 4_MAN_PIOM4,{
close;
}
mes "[Bain]";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
}
@@ -5970,11 +5971,11 @@ dic_dun01,58,225,4 script Lash#13_3 4_MAN_PIOM5,{
close;
}
mes "[Lash]";
- mes " 𢱡 ";
- mes " С ";
- mes " ";
- mes "";
- mes " ";
+ mes sprintf(" 𢱡 ");
+ mes sprintf(" С ");
+ mes sprintf(" ");
+ mes sprintf("");
+ mes sprintf(" ");
close;
}
@@ -6095,9 +6096,9 @@ dic_in01,349,129,5 script Bouy#13_3 4_MAN_BENKUNI,{
close;
}
mes "[Bouy]";
- mes " ";
- mes " ";
- mes " ";
+ mes sprintf(" ");
+ mes sprintf(" ");
+ mes sprintf(" ");
close;
}
@@ -6591,9 +6592,9 @@ mid_campin,168,128,3 script Sapha from Manuk 4_MAN_JERUTOO,{
mes "That is it.";
}
mes "[Sapha]";
- mes "? ...";
- mes " ?";
- mes "..?";
+ mes sprintf("? ...");
+ mes sprintf(" ?");
+ mes sprintf("..?");
next;
mes "[Hound]";
mes "Where is your interpreter ring?";
@@ -6673,9 +6674,9 @@ OnInit:
man_in01,315,52,3 script Guard Captain Avalanche 4_MAN_GALTUN,{
mes "[Guard Captain Avalanche]";
if (!isequipped(2782)) {
- mes "? ...";
- mes " ?";
- mes "..?";
+ mes sprintf("? ...");
+ mes sprintf(" ?");
+ mes sprintf("..?");
close;
}
if (ep13_3_invite == 4) {
@@ -6751,8 +6752,8 @@ man_in01,315,52,3 script Guard Captain Avalanche 4_MAN_GALTUN,{
dic_in01,42,264,3 script Adventurer Clerk#ep133 4_MAN_NITT,{
if (!isequipped(2782)) {
mes "[Clerk Knit]";
- mes " ...?";
- mes " ... С...";
+ mes sprintf(" ...?");
+ mes sprintf(" ... С...");
next;
mes "- Cannot communicate with him. -";
close;
diff --git a/npc/re/quests/quests_eclage.txt b/npc/re/quests/quests_eclage.txt
index 79fbcd4b0..58082684d 100644
--- a/npc/re/quests/quests_eclage.txt
+++ b/npc/re/quests/quests_eclage.txt
@@ -6436,7 +6436,7 @@ eclage,222,131,3 script Wandering Merchant#ecl 1_M_SIGNMCNT,{
mes "stench of alcohol -";
}
else if (ep14_2_detect == 7) {
- if (questprogress(9248) == 1) {
+ if (questprogress(9258) == 1) {
mes "- Upon getting closer,";
mes "I smell a terrible";
mes "stench of alcohol -";
@@ -12028,7 +12028,7 @@ ecl_in04,105,216,4 script Hiel's Workshop#pa0829 HIDDEN_NPC,{
next;
cutin "EP14_etran1",1;
mes "[Etran]";
- mes "Welcome welcomeow~! We are cat merchants, always serving guests as our kingeow~! Special sale! One piece of meat for 200Á¦´Ï!!";
+ mes "Welcome welcomeow~! We are cat merchants, always serving guests as our kingeow~! Special sale! One piece of meat for 200meow!!";
next;
cutin "EP14_robert1",1;
mes "[Robert]";
diff --git a/npc/re/quests/quests_lighthalzen.txt b/npc/re/quests/quests_lighthalzen.txt
new file mode 100644
index 000000000..070368a23
--- /dev/null
+++ b/npc/re/quests/quests_lighthalzen.txt
@@ -0,0 +1,39 @@
+//================= Hercules Script =======================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
+//= | | | | __/ | | (__| |_| | | __/\__ \
+//= \_| |_/\___|_| \___|\__,_|_|\___||___/
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2012-2016 Hercules Dev Team
+//= Copyright (C) AtlantisRO
+//=
+//= Hercules is free software: you can redistribute it and/or modify
+//= it under the terms of the GNU General Public License as published by
+//= the Free Software Foundation, either version 3 of the License, or
+//= (at your option) any later version.
+//=
+//= This program is distributed in the hope that it will be useful,
+//= but WITHOUT ANY WARRANTY; without even the implied warranty of
+//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+//= GNU General Public License for more details.
+//=
+//= You should have received a copy of the GNU General Public License
+//= along with this program. If not, see <http://www.gnu.org/licenses/>.
+//=========================================================================
+//= Quest NPCs located in Lighthalzen
+//================= Description ===========================================
+//= Quests related to Lighthalzen City.
+//================= Current Version =======================================
+//= 1.0
+//=========================================================================
+
+izlude,172,73,5 duplicate(Scamp) Scamp#iz 4_M_YURI
+izlude_a,172,73,5 duplicate(Scamp) Scamp#iz_a 4_M_YURI
+izlude_b,172,73,5 duplicate(Scamp) Scamp#iz_b 4_M_YURI
+izlude_c,172,73,5 duplicate(Scamp) Scamp#iz_c 4_M_YURI
+izlude_d,172,73,5 duplicate(Scamp) Scamp#iz_d 4_M_YURI
diff --git a/npc/re/quests/quests_malangdo.txt b/npc/re/quests/quests_malangdo.txt
index 54b2a00c0..9a3a3284f 100644
--- a/npc/re/quests/quests_malangdo.txt
+++ b/npc/re/quests/quests_malangdo.txt
@@ -825,7 +825,8 @@ mal_in02,174,64,5 script Linguist Devore#mal 4_CAT_MERMASTER,{
mes "If you see the words on the first page of this book, there's a sentence seeming like short conversation.";
next;
mes "[Linguist Devore]";
- mes "It's like this, for the question, Ѭ ?, it says, լҬ, ҬݬѬԬլѬ. ڬ?";
+ mes sprintf(_$("It's like this, for the question, %s, it says, %s"),
+ "Ѭ ?", " լҬ, ҬݬѬԬլѬ. ڬ?");
next;
mes "[Linguist Devore]";
mes "Though I tried talking to Biscuit like this, there was no feedback.";
@@ -9649,7 +9650,7 @@ mal_in01,134,221,4 script KungKung#gamer 4_M_BABYCAT,{
case 1: // Attack
mes "How would you like to attack?";
mes " ";
- mes " Tip !!";
+ mes "- Tip -";
mes "Choose back: ^FF0000You win if the cat shows the back of its paw.^000000";
mes "Choose palm: ^FF0000You win if the cat shows the palm of its paw.^000000";
next;
@@ -9695,7 +9696,7 @@ mal_in01,134,221,4 script KungKung#gamer 4_M_BABYCAT,{
case 2: // Defend
mes "How would you like to defend?";
mes " ";
- mes " Tip !!";
+ mes "- Tip -";
mes "Choose back: ^FF0000You win if the cat shows the back of its paw.^000000";
mes "Choose palm: ^FF0000You win if the cat shows the palm of its paw.^000000";
next;
diff --git a/npc/re/quests/quests_mora.txt b/npc/re/quests/quests_mora.txt
index 0d64f23d9..34999bbd8 100644
--- a/npc/re/quests/quests_mora.txt
+++ b/npc/re/quests/quests_mora.txt
@@ -3432,7 +3432,8 @@ L_ShowReport:
mes "the mysterious power.";
mes " ";
mes "<Material analysis>";
- mes "*** Temperature ***** 33.5";
+ mes sprintf("*** %s ***** 33.5",
+ _("Temperature"));
mes "*** PH ************ 9.8";
mes "*** Solid residues *** 176";
mes "*** K+ ************ 0,23";
diff --git a/npc/re/scripts.conf b/npc/re/scripts.conf
index b03ebe46a..01978ee3d 100644
--- a/npc/re/scripts.conf
+++ b/npc/re/scripts.conf
@@ -91,6 +91,7 @@ npc: npc/re/instances/HazyForest.txt
npc: npc/re/instances/MalangdoCulvert.txt
npc: npc/re/instances/OctopusCave.txt
npc: npc/re/instances/OldGlastHeim.txt
+npc: npc/re/instances/saras_memory.txt
npc: npc/re/instances/WolfchevLaboratory.txt
npc: npc/re/instances/EclageInterior.txt
@@ -167,6 +168,7 @@ npc: npc/re/quests/quests_dewata.txt
npc: npc/re/quests/quests_dicastes.txt
npc: npc/re/quests/quests_eclage.txt
npc: npc/re/quests/quests_izlude.txt
+npc: npc/re/quests/quests_lighthalzen.txt
npc: npc/re/quests/quests_malangdo.txt
npc: npc/re/quests/quests_malaya.txt
npc: npc/re/quests/quests_mora.txt
diff --git a/npc/re/warps/cities/dicastes.txt b/npc/re/warps/cities/dicastes.txt
index 0d8922e51..e9b90614c 100644
--- a/npc/re/warps/cities/dicastes.txt
+++ b/npc/re/warps/cities/dicastes.txt
@@ -59,7 +59,7 @@ dic_in01,299,248,0 warp eldicastes0015 1,1,dic_in01,262,191
dic_in01,242,182,0 script #eldicastes0016 CLEAR_NPC,{
if (isequipped(2782)) select("Administrative Office");
- else select("");
+ else select(sprintf(""));
warp "dic_in01",138,221;
end;
}