summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/script_commands.txt6
-rw-r--r--npc/airports/airships.txt1398
-rw-r--r--npc/airports/einbroch.txt88
-rw-r--r--npc/airports/hugel.txt36
-rw-r--r--npc/airports/izlude.txt51
-rw-r--r--npc/airports/lighthalzen.txt89
-rw-r--r--npc/airports/rachel.txt36
-rw-r--r--npc/airports/yuno.txt155
-rw-r--r--npc/quests/quests_airship.txt615
-rw-r--r--npc/scripts_athena.conf3
-rw-r--r--npc/warps/cities/izlude.txt4
-rw-r--r--npc/warps/other/airplane.txt16
12 files changed, 1393 insertions, 1104 deletions
diff --git a/doc/script_commands.txt b/doc/script_commands.txt
index cfa32b31b..1e8df68e9 100644
--- a/doc/script_commands.txt
+++ b/doc/script_commands.txt
@@ -4619,7 +4619,7 @@ character.
---------------------------------------
-*specialeffect <effect number>{,<send_target>}{,"<NPC Name>"};
+*specialeffect <effect number>{,<send_target>{,"<NPC Name>"}};
This command will display special effect with the given number, centered on the
specified NPCs coordinates, if any. For a full list of special effect numbers
@@ -4642,7 +4642,7 @@ will retain the default behavior of the command.
---------------------------------------
-*specialeffect2 <effect number>{,<send_target>}{,"<Player Name>"};
+*specialeffect2 <effect number>{,<send_target>{,"<Player Name>"}};
This command behaves identically to the 'specialeffect', but the effect will be
centered on the invoking character's sprite.
@@ -6103,7 +6103,7 @@ A full list of pet IDs can be found inside 'db/pet_db.txt'
---------------------------------------
-*emotion <emotion number>{,<target>}{,"<target name>"};
+*emotion <emotion number>{,<target>{,"<target name>"}};
This command makes an object display an emotion sprite above their own as
if they were doing that emotion. For a full list of emotion numbers,
diff --git a/npc/airports/airships.txt b/npc/airports/airships.txt
index 1477d9510..6f1e1291e 100644
--- a/npc/airports/airships.txt
+++ b/npc/airports/airships.txt
@@ -2,233 +2,291 @@
//= The Airship System Script
//===== By: ==================================================
//= rAthena Dev Team
-//===== Current Version: =====================================
-//= 1.2a
//===== Compatible With: =====================================
-//= rAthena SVN 3422+(Requires jA Script System)
+//= rAthena SVN
//===== Description: =========================================
-//= The Airship System used in the official servers, however this
-//= one is still about 25% custom and is missing some npcs.
+//= The Airship System used in the official servers.
//===== Additional Comments: =================================
-//= 0.1 Added first version, it might be a little buggy [MasterOfMuppets]
-//= 0.1a Fixed the Airport Staff#Iz which was [MasterOfMuppets]
-//= warping you to the same location as Airport Staff#Ein
-//= 0.2 Implemented some more airship NPCs, more are to come.
-//= 0.3 Implemented some more NPCs [MasterOfMuppets]
-//= 0.4 Implemented two mini games scripted by Dj-Yhn [MasterOfMuppets]
-//= 0.5 Removed Duplicates [Silent]
-//= 0.5a Fixed a typo [Evera]
-//= 0.5b Fixed appledice bugs [Lupus]
-//= 0.6 Added Rachel to the international route [Playtester]
-//= 0.7 Implemented Few Missings NPCs like (Pilot, Aanos, etc...).
-//= Corrected Dialogs from some NPCs.
-//= Added sistem to work with the "How Does the Airship Work" Quest [Samuray22]
-//= 0.8 Moved Gambling NPC Kaci since it's part of a quest. [SinSloth]
-//= 0.8b Fixed a Little Bug with the "How Does the Airship Work" Quest. [Samuray22]
-//= 0.9 Fixed a incorrect variable changed form "mob_inv" to "mobinv". [Samuray22]
-//= 0.9b Fixed a typo and bad variable use in the Typing Challenge [ultramage]
-//= 1.0 Fixed bad NPC header data to comply with rev. 11603. [L0ne_W0lf]
-//= 1.1 Touch-ups, and changed references of "Yuno" to "Juno", [L0ne_W0lf]
-//= 1.1a Small fix to comparison check. [Paradox924X]
-//= 1.1b Small fix to zeny check. [Kisuka]
-//= 1.2 Updated some NPCs based on official files. [L0ne_W0lf]
-//= 1.2a Fixed "mobinv" and "mobrand" variables to work with invation. [Slim]
+//= Official NPCs (except apple gambling function).
//============================================================
//============================================================
-//= The Airship System (Juno -> Hugel -> Einbroch -> Lighthalzen -> repeat)
+//= Domestic Airship Route
+//= ... -> Juno -> Einbroch -> Lighthalzen -> Einbroch
+//= -> Juno -> Hugel -> ...
//============================================================
-airplane,243,74,4 script #AirshipWarp-1 45,2,2,{
-OnTouch:
- if($@airplanelocation == 1)warp "einbroch",90,275;
- if($@airplanelocation == 2)warp "yuno",85,265;
- if($@airplanelocation == 3)warp "lighthalzen",302,75;
- if($@airplanelocation == 4)warp "hugel",182,150;
+airplane,243,73,0 script #AirshipWarp-1 45,1,1,{
end;
+OnInit:
OnHide:
misceffect 16;
+ disablenpc strnpcinfo(0);
end;
+
OnUnhide:
+ enablenpc strnpcinfo(0);
misceffect 215;
end;
-}
-airplane,243,29,4 script #AirshipWarp-2 45,2,2,{
OnTouch:
- if($@airplanelocation == 1)warp "einbroch",90,275;
- if($@airplanelocation == 2)warp "yuno",85,265;
- if($@airplanelocation == 3)warp "lighthalzen",302,75;
- if($@airplanelocation == 4)warp "hugel",182,150;
- end;
-
-OnHide:
- misceffect 16;
- end;
-OnUnhide:
- misceffect 215;
- end;
+ switch ($@airplanelocation) {
+ case 0: warp "yuno",92,260; end;
+ case 1: warp "einbroch",92,278; end;
+ case 2: warp "lighthalzen",302,75; end;
+ case 3: warp "hugel",181,146; end;
+ }
}
-airplane,1,1,0 script EinYuno_Airship -1,{
+airplane,243,29,0 duplicate(#AirshipWarp-1) #AirshipWarp-2 45,1,1
+
+airplane,1,1,0 script Domestic_Airship -1,{
+ end;
OnInit:
-while(1)
-{
initnpctimer;
- setnpctimer 0;
- set $@airplanelocation,0;
+ end;
+OnTimer20000:
+ mapannounce "airplane","We are heading to Einbroch.",bc_map,"0x00ff00";
+ end;
+OnTimer50000:
+ mapannounce "airplane","We will arrive in Einbroch shortly.",bc_map,"0x00ff00";
+ end;
+OnTimer60000:
+ set $@airplanelocation,1;
+ donpcevent "#AirshipWarp-1::OnUnhide";
+ donpcevent "#AirshipWarp-2::OnUnhide";
+ 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";
+ end;
+OnTimer80000:
donpcevent "#AirshipWarp-1::OnHide";
donpcevent "#AirshipWarp-2::OnHide";
- disablenpc "#AirshipWarp-1";
- disablenpc "#AirshipWarp-2";
- mapannounce "airplane","The Airship is leaving the ground. Our next destination is Hugel.",bc_map,0xBA55D3;
+ mapannounce "airplane","The Airship is now taking off. Our next destination is Lighthalzen.",bc_map,"0x70dbdb";
end;
-OnTimer15000:
- mapannounce "airplane","We are heading to Hugel.",bc_map,0xBA55D3;
+OnTimer100000:
+ mapannounce "airplane","We are heading to Lighthalzen.",bc_map,"0x70dbdb";
end;
-OnTimer30000:
- mapannounce "airplane","We will arrive in Hugel shortly.",bc_map,0xBA55D3;
+OnTimer130000:
+ mapannounce "airplane","We will arrive in Lighthalzen shortly.",bc_map,"0x70dbdb";
end;
-OnTimer45000:
- set $@airplanelocation,4;
- enablenpc "#AirshipWarp-1";
- enablenpc "#AirshipWarp-2";
+OnTimer140000:
+ set $@airplanelocation,2;
donpcevent "#AirshipWarp-1::OnUnhide";
donpcevent "#AirshipWarp-2::OnUnhide";
- mapannounce "airplane","Welcome to Hugel. Have a safe trip.",bc_map,0xBA55D3;
+ mapannounce "airplane","Welcome to Lighthalzen. Have a safe trip.",bc_map,"0x70dbdb";
end;
-OnTimer55000:
- mapannounce "airplane","Currently, we are in Hugel. The Airship will leave shortly.",bc_map,0xBA55D3;
+OnTimer150000:
+ mapannounce "airplane","Currently we are in Lighthalzen. The Airship will leave shortly.",bc_map,"0x70dbdb";
end;
-OnTimer65000:
- set $@airplanelocation,0;
+OnTimer160000:
donpcevent "#AirshipWarp-1::OnHide";
donpcevent "#AirshipWarp-2::OnHide";
- disablenpc "#AirshipWarp-1";
- disablenpc "#AirshipWarp-2";
- 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;
-OnTimer80000:
- mapannounce "airplane","We are heading to Einbroch.",bc_map,0x00FF00;
+OnTimer180000:
+ mapannounce "airplane","We are heading to Einbroch.",bc_map,"0x00ff00";
end;
-OnTimer95000:
- mapannounce "airplane","We will arrive in Einbroch shortly.",bc_map,0x00FF00;
+OnTimer210000:
+ mapannounce "airplane","We will arrive in Einbroch shortly.",bc_map,"0x00FF00";
end;
-OnTimer110000:
+OnTimer220000:
set $@airplanelocation,1;
- enablenpc "#AirshipWarp-1";
- enablenpc "#AirshipWarp-2";
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;
-OnTimer120000:
- mapannounce "airplane","Currently, we are in Einbroch. The Airship will take off shortly.",bc_map,0x00FF00;
+OnTimer230000:
+ mapannounce "airplane","Currently we are in Einbroch. The Airship will take off shortly.",bc_map,"0x00ff00";
end;
-OnTimer130000:
+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";
+ end;
+OnTimer260000:
+ mapannounce "airplane","We are heading to Juno.",bc_map,"0xff8200";
+ end;
+OnTimer290000:
+ mapannounce "airplane","We will arrive in Juno shortly.",bc_map,"0xff8200";
+ end;
+OnTimer300000:
set $@airplanelocation,0;
+ donpcevent "#AirshipWarp-1::OnUnhide";
+ donpcevent "#AirshipWarp-2::OnUnhide";
+ 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";
+ end;
+OnTimer320000:
donpcevent "#AirshipWarp-1::OnHide";
donpcevent "#AirshipWarp-2::OnHide";
- disablenpc "#AirshipWarp-1";
- disablenpc "#AirshipWarp-2";
- mapannounce "airplane","The Airship is leaving the ground. Our next destination is Lighthalzen.",bc_map,0xFF8600;
+ mapannounce "airplane","The Airship is leaving the ground. Our next destination is Hugel.",bc_map,"0xca4bf3";
end;
-OnTimer145000:
- mapannounce "airplane","We are heading to Lighthalzen.",bc_map,0xFF8600;
+OnTimer340000:
+ mapannounce "airplane","We are heading to Hugel.",bc_map,"0xca4bf3";
end;
-OnTimer160000:
- mapannounce "airplane","We will arrive in Lighthalzen shortly.",bc_map,0xFF8600;
+OnTimer370000:
+ mapannounce "airplane","We will arrive in Hugel shortly.",bc_map,"0xca4bf3";
end;
-OnTimer175000:
+OnTimer380000:
set $@airplanelocation,3;
- enablenpc "#AirshipWarp-1";
- enablenpc "#AirshipWarp-2";
donpcevent "#AirshipWarp-1::OnUnhide";
donpcevent "#AirshipWarp-2::OnUnhide";
- mapannounce "airplane","Welcome to Lighthalzen. Have a safe trip.",bc_map,0xFF8600;
+ mapannounce "airplane","Welcome to Hugel. Have a safe trip.",bc_map,"0xca4bf3";
end;
-OnTimer185000:
- mapannounce "airplane","Currently, we are in Lighthalzen. The Airship will leave shortly.",bc_map,0xFF8600;
+OnTimer390000:
+ mapannounce "airplane","Currently we are in Hugel. The Airship will leave shortly.",bc_map,"0xca4bf3";
end;
-OnTimer195000:
- set $@airplanelocation,0;
+OnTimer400000:
donpcevent "#AirshipWarp-1::OnHide";
donpcevent "#AirshipWarp-2::OnHide";
- disablenpc "#AirshipWarp-1";
- disablenpc "#AirshipWarp-2";
- mapannounce "airplane","The Airship is now taking off. Our next destination is Juno.",bc_map,0x70DBDB;
+ mapannounce "airplane","The Airship is leaving the ground. Our next destination is Juno.",bc_map,"0xff8200";
end;
-OnTimer210000:
- mapannounce "airplane","We are heading to Juno.",bc_map,0x70DBDB;
+OnTimer420000:
+ mapannounce "airplane","We are heading to Juno.",bc_map,"0xff8200";
end;
-OnTimer225000:
- mapannounce "airplane","We will arrive in Juno shortly.",bc_map,0x70DBDB;
+OnTimer450000:
+ mapannounce "airplane","We will arrive in Juno shortly.",bc_map,"0xff8200";
end;
-OnTimer240000:
- set $@airplanelocation,2;
- enablenpc "#AirshipWarp-1";
- enablenpc "#AirshipWarp-2";
+OnTimer460000:
+ set $@airplanelocation,0;
donpcevent "#AirshipWarp-1::OnUnhide";
donpcevent "#AirshipWarp-2::OnUnhide";
- mapannounce "airplane","Welcome to Juno. Have a safe trip.",bc_map,0x70DBDB;
+ mapannounce "airplane","Welcome to Juno. Have a safe trip.",bc_map,"0xff8200";
end;
-OnTimer250000:
- mapannounce "airplane","Currently, we are in Juno. The Airship will leave shortly.",bc_map,0x70DBDB;
+OnTimer470000:
+ mapannounce "airplane","Currently we are in Juno. The Airship will leave shortly.",bc_map,"0xff8200";
end;
-OnTimer260000:
+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";
stopnpctimer;
+ initnpctimer;
}
-}
-
-//C4644E
-//============================================================
-//= Some normal NPCS (airplane)
-//============================================================
-
-airplane,240,64,5 script Exit#01::Exit2 857,{
+airplane,240,64,5 script Exit#airplane1a::ExitAirplane 857,{
end;
}
+airplane,247,64,5 duplicate(ExitAirplane) Exit#airplane1b 857
+airplane,240,40,1 duplicate(ExitAirplane) Exit#airplane2a 857
+airplane,247,40,1 duplicate(ExitAirplane) Exit#airplane2b 857
-airplane,247,64,5 duplicate(Exit2) Exit#02 857
-
-airplane,240,39,1 duplicate(Exit2) Exit#03 857
-
-airplane,247,39,1 duplicate(Exit2) Exit#04 857
-
-airplane,100,69,2 script Airship Crew#01::Airship Crew 852,{
+airplane,100,69,3 script Airship Crew#ein-1 852,{
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 you patronage.";
+ mes "you for your patronage.";
+ close;
+}
+
+airplane,64,94,1 script Umbala Kid#ein_p 787,{
+ emotion e_swt2;
+ 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!";
+ }
+ close;
+}
+
+airplane,66,93,3 script Umbala Lady#ein_p 783,{
+ emotion e_dots;
+ 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!";
+ }
+ close;
+}
+
+airplane,71,91,7 script Umbala Man#ein_p 789,{
+ 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";
+ 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?";
+ 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.";
+ next;
+ 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!";
+ }
close;
}
airplane,250,58,2 script Airship Staff#airplane 67,{
+ // Hugel quest addition
if (hg_ma1 == 3) {
mes "[Airship Staff]";
mes "Welcome";
mes "to the Airship.";
mes "How may I help you?";
next;
- switch(select("Do you have a passenger named Thierry?")) {
- case 1:
- break;
- }
+ 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.";
close;
}
+ // Hugel quest end
mes "[Airship Staff]";
mes "Welcome";
mes "to the Airship.";
mes "How may I help you?";
next;
- switch(select("Using the Airship:Captain's Cabin:Facilities:Cancel")) {
+ switch (select("Using the Airship:Captain's Cabin:Facilities:Cancel")) {
case 1:
mes "[Airship Staff]";
mes "When you see a broadcast";
@@ -245,7 +303,7 @@ airplane,250,58,2 script Airship Staff#airplane 67,{
mes "en route and you'll get";
mes "another chance to arrive";
mes "to your intended destination.";
- break;
+ close;
case 2:
mes "[Airship Staff]";
mes "The Captain's Cabin";
@@ -253,7 +311,7 @@ airplane,250,58,2 script Airship Staff#airplane 67,{
mes "of the Airship. There, you";
mes "can meet the captain and";
mes "the pilot of the Airship.";
- break;
+ close;
case 3:
mes "[Airship Staff]";
mes "The Airship provides";
@@ -262,16 +320,15 @@ airplane,250,58,2 script Airship Staff#airplane 67,{
mes "our passengers. We invite";
mes "you to try your luck and skills";
mes "in the Airship's Mini Games~";
- break;
+ 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.";
- break;
+ close;
}
- close;
}
airplane,80,71,2 script Zerta#01airplane 834,{
@@ -304,6 +361,7 @@ airplane,72,34,6 script Aanos#01airplane 702,{
}
airplane,221,158,2 script Pilot#airplane 852,{
+ // Hugel quest addition
if (hg_ma1 == 3) {
mes "[Pilot]";
mes "I wish that I could go drink a cold fresh beer.";
@@ -315,10 +373,7 @@ airplane,221,158,2 script Pilot#airplane 852,{
mes "But! That makes me want to drink more and more!";
emotion e_sob;
next;
- switch(select("Do you know a passenger named Thierry?")) {
- case 1:
- break;
- }
+ select("Do you know a passenger named Thierry?");
mes "[Pilot]";
mes "This uniform is";
mes "really dapper, but";
@@ -339,8 +394,9 @@ airplane,221,158,2 script Pilot#airplane 852,{
mes "- ...He is not listening to you, at all. -";
close;
}
- set .@pilot,rand(1,4);
- if (.@pilot == 1) {
+ // Hugel quest end
+ switch (rand(1,4)) {
+ case 1:
mes "[Pilot]";
mes "It's been sooo";
mes "long since I've";
@@ -357,16 +413,16 @@ airplane,221,158,2 script Pilot#airplane 852,{
mes "booze, some chips, some TV";
mes "and serius R&R is in order.";
emotion e_sob;
- }
- else if (.@pilot == 2) {
+ 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.";
- }
- else if (.@pilot == 3) {
+ close;
+ case 3:
mes "[Pilot]";
mes "You know, our captain's a";
mes "respectable guy. Him and";
@@ -382,8 +438,8 @@ airplane,221,158,2 script Pilot#airplane 852,{
mes "something, getting reindeers";
mes "and elves to work for him.";
mes "The man must be a genius!";
- }
- else {
+ close;
+ default:
mes "[Pilot]";
mes "You know, this whole";
mes "piloting thing in the air,";
@@ -399,156 +455,309 @@ airplane,221,158,2 script Pilot#airplane 852,{
mes "training while the Airships";
mes "were still being invented.";
mes "Isn't that freakin' crazy?!";
+ close;
+ }
+}
+
+airplane,50,66,5 script Apple Merchant#airplane 86,{
+ mes "[Fruitz]";
+ mes "Welcome to Fruitz's";
+ mes "Shop where you can";
+ mes "purchase Apples or grind";
+ mes "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.";
+ next;
+ while (1) {
+ input .@input;
+ set .@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~";
+ 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.";
+ 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?";
+ 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~";
+ 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.";
+ close;
+ }
+ else if (checkweight(512,.@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?";
+ close;
+ }
+ else {
+ set Zeny, Zeny - .@pay;
+ getitem 512,.@input; //Apple
+ mes "[Fruitz]";
+ mes "Thanks for stopping by";
+ mes "my shop. I hope you enjoy";
+ mes "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?";
+ next;
+ switch (select("Yes:No")) {
+ case 1:
+ if (countitem(512) < 3 || countitem(713) < 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.";
+ close;
+ }
+ else {
+ mes "[Fruitz]";
+ mes "Thank you,";
+ mes "please wait";
+ mes "just a moment.";
+ next;
+ mes "^3355FF*Grind grind*";
+ mes "*Grind grind*";
+ mes "*Clang...!*^000000";
+ next;
+ delitem 512,3; //Apple
+ delitem 713,1; //Empty_Bottle
+ getitem 531,1; //Apple_Juice
+ 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~";
+ 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~";
+ 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.";
+ 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...";
+ 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.";
+ 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... ";
+ 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?";
+ next;
+ mes "[Fruitz]";
+ mes "So Apples are good";
+ mes "for you. They were";
+ mes "certainly very good";
+ mes "to me. Hahahahaah~!";
+ close;
+ case 4:
+ mes "[Fruitz]";
+ mes "Thank you for";
+ mes "using my shop.";
+ mes "Farewell~";
+ close;
}
- close;
}
//============================================================
-//= The Airship System (Izlude -> Juno -> Rachel -> Repeat)
+//= International Airship Route
+//= ... -> Izlude -> Juno -> Rachel -> ...
//============================================================
-airplane_01,243,74,4 script #AirshipWarp-3 45,2,2,{
-OnTouch:
- if($@airplanelocation2 == 1)warp "izlude",202,56;
- if($@airplanelocation2 == 2)warp "yuno",20,265;
- if($@airplanelocation2 == 3)warp "ra_fild12",292,204;
+airplane_01,243,73,0 script #AirshipWarp-3 45,1,1,{
end;
+
+OnTouch:
+ switch ($@airplanelocation2) {
+ case 0: warp "ra_fild12",292,204; end;
+ case 1: warp "izlude",200,56; end;
+ case 2: warp "yuno",12,261; end;
+ }
+OnInit:
OnHide:
misceffect 16;
+ disablenpc strnpcinfo(0);
end;
+
OnUnhide:
+ enablenpc strnpcinfo(0);
misceffect 215;
end;
}
-airplane_01,243,29,4 script #AirshipWarp-4 45,2,2,{
-OnTouch:
- if($@airplanelocation2 == 1)warp "izlude",202,56;
- if($@airplanelocation2 == 2)warp "yuno",20,265;
- if($@airplanelocation2 == 3)warp "ra_fild12",292,204;
- end;
+airplane_01,243,29,0 duplicate(#AirshipWarp-3) #AirshipWarp-4 45,1,1
-OnHide:
- misceffect 16;
+airplane_01,1,1,0 script International_Airship -1,{
end;
-OnUnhide:
- misceffect 215;
- end;
-}
-
-airplane_01,1,1,0 script YunoIzl_Airship -1,{
OnInit:
-while(1)
-{
- disablenpc "Airship#airplane02";
+OnEnable:
initnpctimer;
- setnpctimer 0;
- set $@airplanelocation2,0;
- donpcevent "#AirshipWarp-3::OnHide";
- donpcevent "#AirshipWarp-4::OnHide";
- disablenpc "#AirshipWarp-3";
- disablenpc "#AirshipWarp-4";
- mapannounce "airplane_01","The Airship is leaving the ground. Our next destination is Izlude.",bc_map,0x00FF00;
end;
-OnTimer15000:
- set $@mobinv,$@mobinv+1;
- set $@mobrand,rand(1,3);
- if($@mobinv >= 9 && $@mobrand == 3) {
- stopnpctimer;
- enablenpc "Airship#airplane02";
- donpcevent "Airship#airplane02::OnInvasion";
- }
- mapannounce "airplane_01","We are heading to Izlude.",bc_map,0x00FF00;
+OnTimer25000:
+ mapannounce "airplane_01","We are heading to Izlude.",bc_map,"0x00ff00";
end;
-OnTimer30000:
- mapannounce "airplane_01","We will arrive in Izlude shortly.",bc_map,0x00FF00;
+OnTimer50000:
+ mapannounce "airplane_01","We will arrive in Izlude shortly.",bc_map,"0x00ff00";
end;
-OnTimer45000:
+OnTimer60000:
set $@airplanelocation2,1;
- enablenpc "#AirshipWarp-3";
- enablenpc "#AirshipWarp-4";
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;
-OnTimer55000:
- mapannounce "airplane_01","Currently, we are in Izlude. The Airship will leave shortly.",bc_map,0x00FF00;
+OnTimer70000:
+ mapannounce "airplane_01","We are currently in Izlude. The Airship will take off shortly.",bc_map,"0x00ff00";
end;
-OnTimer65000:
- set $@airplanelocation2,0;
+OnTimer80000:
donpcevent "#AirshipWarp-3::OnHide";
donpcevent "#AirshipWarp-4::OnHide";
- disablenpc "#AirshipWarp-3";
- disablenpc "#AirshipWarp-4";
- mapannounce "airplane_01","The Airship is leaving the ground. 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;
-OnTimer80000:
- mapannounce "airplane_01","We are heading to Juno.",bc_map,0x70DBDB;
+OnTimer105000:
+ mapannounce "airplane_01","We are heading to Juno.",bc_map,"0x70dbdb";
end;
-OnTimer95000:
- mapannounce "airplane_01","We will arrive in Juno shortly.",bc_map,0x70DBDB;
+OnTimer130000:
+ mapannounce "airplane_01","We will arrive in Juno shortly.",bc_map,"0x70dbdb";
end;
-OnTimer110000:
+OnTimer140000:
set $@airplanelocation2,2;
- enablenpc "#AirshipWarp-3";
- enablenpc "#AirshipWarp-4";
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;
-OnTimer120000:
- mapannounce "airplane_01","Currently, we are in Juno. The Airship will take off shortly.",bc_map,0x70DBDB;
+OnTimer150000:
+ mapannounce "airplane_01","We are currently in Juno. The Airship will leave shorty.",bc_map,"0x70dbdb";
end;
-OnTimer130000:
- set $@airplanelocation2,0;
+OnTimer160000:
donpcevent "#AirshipWarp-3::OnHide";
donpcevent "#AirshipWarp-4::OnHide";
- disablenpc "#AirshipWarp-3";
- disablenpc "#AirshipWarp-4";
- mapannounce "airplane_01","The Airship is leaving the ground. Our next destination is Rachel.",bc_map,0xFF8600;
+ mapannounce "airplane_01","The Airship is leaving the ground. Our next destination is Rachel.",bc_map,"0xFF8200";
end;
-OnTimer145000:
- mapannounce "airplane_01","We are heading to Rachel.",bc_map,0xFF8600;
+OnTimer185000:
+ mapannounce "airplane_01","We are heading to Rachel.",bc_map,"0xFF8200";
end;
-OnTimer160000:
- mapannounce "airplane_01","We will arrive in Rachel shortly.",bc_map,0xFF8600;
+OnTimer210000:
+ mapannounce "airplane_01","We will arrive in Rachel shortly.",bc_map,"0xFF8200";
end;
-OnTimer175000:
- set $@airplanelocation2,3;
- enablenpc "#AirshipWarp-3";
- enablenpc "#AirshipWarp-4";
+OnTimer220000:
+ set $@airplanelocation2,0;
donpcevent "#AirshipWarp-3::OnUnhide";
donpcevent "#AirshipWarp-4::OnUnhide";
- mapannounce "airplane_01","Welcome to Rachel. Have a safe trip.",bc_map,0xFF8600;
+ mapannounce "airplane_01","Welcome to Rachel. Have a safe trip.",bc_map,"0xFF8200";
end;
-OnTimer185000:
- mapannounce "airplane_01","Currently, we are in Rachel. The Airship will leave shortly.",bc_map,0xFF8600;
+OnTimer230000:
+ mapannounce "airplane_01","We are currently in Rachel. The Airship will take off shortly.",bc_map,"0xFF8200";
end;
-OnTimer195000:
- stopnpctimer;
-}
-OnReturn:
- killmonsterall "airplane_01";
- set $@mobinv,0;
- mapannounce "airplane_01","Monster threat nullfied. The Airship is now returning to normal operation.",bc_map,0x00FF00;
- startnpctimer;
+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";
+ stopnpctimer;
+ set .moninv, .moninv + 1;
+ if (.moninv == 7) {
+ if (rand(1,3) == 3) {
+ donpcevent "Airship#airplane02::OnEnable";
+ end;
+ }
+ set .moninv, 0;
+ }
+ initnpctimer;
end;
}
-//============================================================
-//= Some normal NPCS (airplane_01)
-//============================================================
-
-airplane_01,240,64,5 duplicate(Exit2) Exit#05 857
-
-airplane_01,247,64,5 duplicate(Exit2) Exit#06 857
-
-airplane_01,240,39,1 duplicate(Exit2) Exit#07 857
-
-airplane_01,247,39,1 duplicate(Exit2) Exit#08 857
-
-airplane_01,100,69,2 duplicate(Airship Crew) Airship Crew#02 852
+airplane_01,240,64,5 script Exit#airplane_011a::ExitAirplane01 857,{
+ end;
+}
+airplane_01,247,64,5 duplicate(ExitAirplane01) Exit#airplane_011b 857
+airplane_01,240,40,1 duplicate(ExitAirplane01) Exit#airplane_012a 857
+airplane_01,247,40,1 duplicate(ExitAirplane01) Exit#airplane_012b 857
airplane_01,250,58,2 script Airship Staff#airplane01 67,{
mes "[Airship Staff]";
@@ -556,7 +765,7 @@ airplane_01,250,58,2 script Airship Staff#airplane01 67,{
mes "to the Airship.";
mes "How may I help you?";
next;
- switch(select("Using the Airship:Captain's Cabin:Facilities:Cancel")) {
+ switch (select("Using the Airship:Captain's Cabin:Facilities:Cancel")) {
case 1:
mes "[Airship Staff]";
mes "When you see a broadcast";
@@ -573,7 +782,7 @@ airplane_01,250,58,2 script Airship Staff#airplane01 67,{
mes "en route and you'll get";
mes "another chance to arrive";
mes "to your intended destination.";
- break;
+ close;
case 2:
mes "[Airship Staff]";
mes "The Captain's Cabin";
@@ -581,7 +790,7 @@ airplane_01,250,58,2 script Airship Staff#airplane01 67,{
mes "of the Airship. There, you";
mes "can meet the captain and";
mes "the pilot of the Airship.";
- break;
+ close;
case 3:
mes "[Airship Staff]";
mes "The Airship provides";
@@ -590,20 +799,18 @@ airplane_01,250,58,2 script Airship Staff#airplane01 67,{
mes "our passengers. We invite";
mes "you to try your luck and skills";
mes "in the Airship's Mini Games~";
- break;
+ 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.";
- break;
+ close;
}
- close;
}
-
-airplane_01,50,66,5 script Apple Merchant#airplane 86,{
+airplane_01,50,66,5 script Apple Merchant#air01 86,{
if (checkweight(1201,1) == 0) {
mes "- Wait a minute !! -";
mes "- Currently you're carrying -";
@@ -618,7 +825,7 @@ airplane_01,50,66,5 script Apple Merchant#airplane 86,{
mes "purchase Apples or grind";
mes "them to make Apple Juice.";
next;
- switch(select("Buy Apples.:Make Apple Juice.:Cancel.")) {
+ switch (select("Buy Apples.:Make Apple Juice.:Cancel.")) {
case 1:
mes "[Meltz]";
mes "Please enter the amount";
@@ -628,9 +835,9 @@ airplane_01,50,66,5 script Apple Merchant#airplane 86,{
mes "of 500 at a time. Please enter";
mes "'0' to cancel your order.";
next;
- while(1) {
- input .@input,0,501;
- set .@pay,.@input*15;
+ while (1) {
+ input .@input;
+ set .@pay, .@input * 15;
if (.@input == 0) {
mes "[Meltz]";
mes "Thanks for stopping";
@@ -640,7 +847,7 @@ airplane_01,50,66,5 script Apple Merchant#airplane 86,{
mes "Apple to snack on~";
close;
}
- else if (.@input < 0 && .@input > 500) {
+ else if (.@input < 1 || .@input > 500) {
mes "[Meltz]";
mes "You've entered a number";
mes "higher than the maximum";
@@ -655,9 +862,7 @@ airplane_01,50,66,5 script Apple Merchant#airplane 86,{
mes "will cost you ^FF0000" + .@pay + "^000000 zeny.";
mes "Would you like to continue?";
next;
- if (select("Yes:No") == 1)
- break;
- else {
+ if (select("Yes:No") == 2) {
mes "[Meltz]";
mes "Thanks for stopping";
mes "by my shop. Farewell!";
@@ -666,6 +871,7 @@ airplane_01,50,66,5 script Apple Merchant#airplane 86,{
mes "Apple to snack on~";
close;
}
+ break;
}
}
if (Zeny < .@pay) {
@@ -686,7 +892,7 @@ airplane_01,50,66,5 script Apple Merchant#airplane 86,{
close;
}
else {
- set zeny,zeny-.@pay;
+ set Zeny, Zeny - .@pay;
getitem 512,.@input; //Apple
mes "[Meltz]";
mes "Thanks for stopping by";
@@ -694,7 +900,6 @@ airplane_01,50,66,5 script Apple Merchant#airplane 86,{
mes "the flavor of these Apples~!";
close;
}
- break;
case 2:
mes "[Meltz]";
mes "Okay, I'll need";
@@ -702,9 +907,9 @@ airplane_01,50,66,5 script Apple Merchant#airplane 86,{
mes "to make 1 Apple Juice for you.";
mes "Would you like to proceed?";
next;
- switch(select("Yes:No")) {
+ switch (select("Yes:No")) {
case 1:
- if ((countitem(512) < 3) || (countitem(713) < 1)) {
+ if (countitem(512) < 3 || countitem(713) < 1) {
mes "[Meltz]";
mes "I'm sorry, but you don't";
mes "have enough materials to";
@@ -729,7 +934,6 @@ airplane_01,50,66,5 script Apple Merchant#airplane 86,{
mes "Please come again.";
close;
}
- break;
case 2:
mes "[Meltz]";
mes "Thanks for stopping";
@@ -739,7 +943,6 @@ airplane_01,50,66,5 script Apple Merchant#airplane 86,{
mes "Apple to snack on~";
close;
}
- break;
case 3:
mes "[Meltz]";
mes "Thanks for stopping";
@@ -747,201 +950,27 @@ airplane_01,50,66,5 script Apple Merchant#airplane 86,{
mes "Come by anytime when";
mes "you feel like having an";
mes "Apple to snack on~";
- break;
+ close;
}
- close;
-}
-
-airplane_01,32,61,4 script Nils#ein 49,{
- callfunc "F_ClearGarbage"; //Clear outdated, unused variables
-loopback:
- mes "[Nils]";
- mes "Welcome to the";
- mes "^FF0000RO Typing Challenge^000000.";
- mes "Would you like to play";
- mes "a quick typing game?";
- next;
- menu "Play ^FF0000RO Typing Challenge^000000",s_Play,"Information",s_Info,"View Top Records",s_Record,"Cancel",-;
-
- mes "[Nils]";
- mes "Feel free to take on the";
- mes "Ro Typing Challenge";
- mes "anytime. I'll be here~";
- close;
-
-s_Play:
- 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~!";
- next;
- //below arrays are for simplified entering of new lines ;P
-
- //first lines array
- setarray .textstringsa$[0],
- "^00FFFFthkelfkskeldmsiejdlsle^0000FFhfndkelsheidl",
- "^993366hfjdkeldjsieldjs^663366hfjdjeiskdlefvbd",
- "^00FFFFCoboman no chikara-yumei na",
- "^993366belief love luck grimace sweat rush",
- "^00FFFFcallipygian salacious lascivious",
- "^663366uNflAPPaBLe LoVaBLe SeCreTs AnD",
- "^00CCFFburrdingdingdilidingdingphoohudaamb",
- "^FF33CCbarapaphurarlandreamduranbatuhi^990066wooi",
- "^FF33CCLiGhTsPeEd RiGhT SPEed leFT TURn",
- "^00CCFFI'm the King of all Weirdos! Now",
- "^00CCFFBy the power of^000000",
- "^00CCFF...silence. quiet benevolence...";
-
- //second lines array
- setarray .textstringsb$[0],"skemd",
- "",
- "chikara-dalookii na chikara da ze!",
- "folktale rodimus optimus bumblebee",
- "licentious prurient concupiscent",
- "BoWLiNg aGaINST tHe KarMA of YoUtH",
- "andoora^0000FFbambarambambamburanbamding",
- "kabamturubamdingding",
- "RiGhT BuRn OrIGInAL GaNgSteR SmACk",
- "you know of my true power. Obey~!",
- "p-po-poi-po-poi-poin-poing",
- "soul mate... wonder. enigma...";
- //for the few 3-liners... =X
-
- setarray .textstringsc$[0],"",
- "",
- "COBO ON!",
- "",
- "",
- "",
- "",
- "",
- "",
- "",
- "GOD-POING. I NEVER LOSE!",
- "cloud.";
-
- //comparisation strings
- setarray .compstring$[0],
- "thkelfkskeldmsiejdlslehfndkelsheidlskemd",
- "hfjdkeldjsieldjshfjdjeiskdlefvbd",
- "Coboman no chikara-yumei na chikara-dalookii na chikara da ze! COBO ON!",
- "belief love luck grimace sweat rush folktale rodimus optimus bumblebee",
- "callipygian salacious lascivious licentious prurient concupiscent",
- "uNflAPPaBLe LoVaBLe SeCreTs AnD BoWLiNg aGaINST tHe KarMA of YoUtH",
- "burrdindingdilidingdingphoohudaambandoorabambarambambamburanbamding",
- "barapaphurarlandreamduranbatuhiwooikabamturubamdingding",
- "LiGhTsPeEd RiGhT SPEed leFT TURn RiGhT BuRn OrIGInAL GaNgSteR SmACk",
- "I'm the King of all Weirdos! Now you know of my true power. Obey~!",
- "By the power of p-po-poi-po-poi-poin-poing GOD-POING. I NEVER LOSE!",
- "...silence. quiet benevolence... soul mate... wonder. enigma... cloud";
-
- //lengths
- setarray .lengths[0],20,32,73,73,65,66,67,55,67,66,67,69;
-
- // initnpctimer;
- // pick 2 distinct phrases and initialize related variables
- set .@index1,rand(getarraysize(.textstringsa$));
- set .@string1a$,.textstringsa$[.@index1];
- set .@string1b$,.textstringsb$[.@index1];
- set .@string1c$,.textstringsc$[.@index1];
- set .@typingstring1$,.compstring$[.@index1];
-
- while ( set(.@index2,rand(getarraysize(.textstringsa$))) == .@index1 );
- set .@string2a$,.textstringsa$[.@index2];
- set .@string2b$,.textstringsb$[.@index2];
- set .@string2c$,.textstringsc$[.@index2];
- set .@typingstring2$,.compstring$[.@index2];
-
- set .@typingkeys,.lengths[.@index1]+.lengths[.@index2];
- set .@start,gettimetick(0);
-
- mes "[Nils]";
- mes .@string1a$;
- if(.@string1b$ != "")mes .@string1b$;
- if(.@string1c$ != "")mes .@string1c$;
- input .@comparisonvar$[1];
- next;
- mes "^000000[Nils]";
- mes .@string2a$;
- if(.@string2b$ != "")mes .@string2b$;
- if(.@string2c$ != "")mes .@string2c$;
- input .@comparisonvar$[2];
- next;
- if(.@comparisonvar$[1] != .@typingstring1$ || .@comparisonvar$[2] != .@typingstring2$) goto s_Fail;
- set .@time, (gettimetick(0) - .@start) / 100; //seconds taken
- if (.@time) set .@mypoints, (.@typingkeys * 100) / .@time;
- mes "[Nils]";
- mes "Your typing time";
- mes "was ^FF0000" + .@time + " seconds^000000";
- mes "and your score is";
- mes "^0000FF" + .@mypoints + "^000000 points";
- next;
- if(.@mypoints <= $TypingRecord)goto loopback;
- mes "[Nils]";
- mes "Congratulations!";
- mes "It's a new record.";
- mes "I'll put you on the high-";
- mes "score list immediately.";
- set $TypingRecord,.@mypoints;
- set $TypingRecord$,strcharinfo(0);
- close;
-
-s_Fail:
- mes "^000000[Nils]";
- mes "I'm sorry you didn't type";
- mes "all characters correctly.";
- mes "But remember, practice makes";
- mes "perfect!";
- close;
-
-s_Info:
- mes "[Nils]";
- mes "The RO Typing Challenge";
- 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!";
- 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'.";
- close;
-
-s_Record:
- mes "[Nils]";
- mes "^0000FF" + $TypingRecord$ + "^000000";
- mes "is the current";
- mes "record holder with";
- mes "a record of ^0000FF" + $TypingRecord + "^000000";
- mes "points. Try to beat";
- mes "that record next time~";
- close;
-
}
airplane_01,221,158,2 script Pilot#airplane_01 852,{
- set .@pilot, rand(1,4);
- if (.@pilot == 1) {
+ 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.";
- } else if(.@pilot == 2) {
+ 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.";
- } else if(.@pilot == 3) {
+ close;
+ case 3:
mes "[Pilot]";
mes "The Captain is a good";
mes "man and I can't think of";
@@ -957,7 +986,8 @@ airplane_01,221,158,2 script Pilot#airplane_01 852,{
mes "[Pilot]";
mes "R-right away, sir!";
mes "(See what I mean?)";
- } else {
+ close;
+ default:
mes "[Pilot]";
mes "This uniform is";
mes "really dapper, but";
@@ -976,12 +1006,10 @@ airplane_01,221,158,2 script Pilot#airplane_01 852,{
mes "[Pilot]";
mes "Oh...! Hello there!";
mes "E-e-enjoying your flight?!";
+ close;
}
- close;
}
-
-
airplane_01,83,61,2 script Dianne#01airplane_01 72,2,2,{
mes "[Dianne]";
mes "It's so weird!";
@@ -1008,18 +1036,7 @@ airplane_01,69,63,2 script Mendel#01airplane_01 55,{
close;
}
-airplane_01,33,68,4 script Clarice 74,{
- mes "[Clarice]";
- mes "Hi, I'm Clarice~";
- mes "How would you like";
- mes "to wager some Apples";
- mes "in a friendly game of Dice?";
- next;
- callfunc "applegamble","Clarice";
- end;
-}
-
-airplane_01,71,31,2 script Swordsman Shimizu#01 106,{
+airplane_01,71,31,2 script Swordsman Shimizu#air_01 106,{
mes "[Swordsman Shimizu]";
mes "Finally, after five";
mes "years of waiting...";
@@ -1035,208 +1052,204 @@ airplane_01,71,31,2 script Swordsman Shimizu#01 106,{
}
//============================================================
-//= The Izlude Airship Staff
-//============================================================
-
-izlude,201,54,3 script Airship Staff#izl 91,{
- mes "[Airship Staff]";
- mes "Welcome to the International Airship.";
- mes "How may I help you?";
+//= Typing Challenge
+//============================================================
+airplane_01,32,61,4 script Nils#ein 49,1,1,{
+ mes "[Nils]";
+ mes "Welcome to the";
+ mes "^ff0000RO Typing Challenge^000000.";
+ mes "Would you like to play";
+ mes "a quick typing game?";
next;
- if (select("Board the Airship:Cancel") == 1) {
- mes "[Airship 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?";
+ 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~!";
+ setarray .@line1_1$[0], "^3cbcbccallipygian salacius lascivious^000000",
+ "^3cbcbcBy the power of^000000",
+ "^0000ffthkelfkskeldmsiejdlslehfndkelsheidl^000000",
+ "^3cbcbcburrdingdingdingdilidingdingdingphoohudaamb^000000",
+ "^3cbcbcCoboman no chikara-yumei na^000000",
+ "^3cbcbcI'm the king of All Weirdos! Now^000000",
+ "^3cbcbcYou give me no choice. I guess it's^000000";
+ setarray .@line1_2$[0], "^3cbcbclicentious prurient concupiscent^000000",
+ "^3cbcbcp-po-poi-po-poi-poin-poing^000000",
+ "^3cbcbcskemd^000000",
+ "^3cbcbcandoorabambarambambambambamburanbamding^000000",
+ "^3cbcbcchikara-daiookii na chikara da ze!^000000",
+ "^3cbcbcyou know of my true power. Obey~!^000000",
+ "^3cbcbctime for me to reveal my secret...^000000";
+ setarray .@line1_3$[0], "",
+ "^3cbcbcGOD-POING. I NEVER LOSE!^000000",
+ "",
+ "",
+ "^3cbcbcCOBO ON^000000",
+ "",
+ "";
+ setarray .@word1$[0], "callipygian salacius lascivious licentious prurient concupiscent",
+ "By the power of p-po-poi-po-poi-poin-poing GOD-POING. I NEVER LOSE!",
+ "thkelfkskeldmsiejdlslehfndkelsheidlskemd",
+ "burrdingdingdingdilidingdingdingphoohudaambandoorabambarambambambambamburanbamding",
+ "Coboman no chikara-yumei na chikara-daiookii na chikara da ze! COBO ON",
+ "I'm the king of All Weirdos! Now you know of my true power. Obey~!",
+ "You give me no choice. I guess it's time for me to reveal my secret...";
+ setarray .@line2_1$[0], "^3cbcbcuNflAPPaBLe LoVaBLe SeCreTs AnD^000000",
+ "^ff1493LiGhTsPeEd RiGhT SPEed LeFT TURn^000000",
+ "^ff1493hfjdkeldjsieldjshfjdjeiskdlefvbd^000000",
+ "^ff1493burapaphuralanderamduanbatuhiwooi^000000",
+ "^ff1493belief love luck grimace sweat rush^000000",
+ "^800080opeN, Open!op3n.openOpen0p3nOpEn0pen^000000",
+ "^3cbcbcfReeDoM ecstAcy JoUrnaliSm ArMplt^000000";
+ setarray .@line2_2$[0], "^3cbcbcboWLIiNg aGaINST tHe KarMA of YoUtH^000000",
+ "^ff1493RiGhT BuRn OrIGInAL GaNgSteR SmACk^000000",
+ "",
+ "^ff1493kabamturubamdingding^000000",
+ "^ff1493folktale rodimus optimus bumblebee^000000",
+ "^800080`open'0Pen open? open!111OPENSESAME^000000",
+ "^3cbcbcDisCoverY hEaDaChE MoonbeAmS jUsTiCE^000000";
+ setarray .@word2$[0], "uNflAPPaBLe LoVaBLe SeCreTs AnD boWLIiNg aGaINST tHe KarMA of YoUtH",
+ "LiGhTsPeEd RiGhT SPEed LeFT TURn RiGhT BuRn OrIGInAL GaNgSteR SmACk",
+ "hfjdkeldjsieldjshfjdjeiskdlefvbd",
+ "burapaphuralanderamduanbatuhiwooikabamturubamdingding",
+ "belief love luck grimace sweat rush folktale rodimus optimus bumblebee",
+ "opeN, Open!op3n.openOpen0p3nOpEn0pen`open'0Pen open? open!111OPENSESAME",
+ "fReeDoM ecstAcy JoUrnaliSm ArMplt DisCoverY hEaDaChE MoonbeAmS jUsTiCE";
+ setarray .@letters[0], 1300,
+ 1250,
+ 1180,
+ 1380,
+ 1740,
+ 1440,
+ 1450;
+ set .@wordtest, rand(7);
next;
- if (select("Yes:No") == 1) {
- if(countitem(7311) > 0) {
- delitem 7311,1;
- warp "airplane_01",224,64;
- close;
- }
- if(Zeny >= 1200) {
- set Zeny, Zeny - 1200;
- warp "airplane_01",224,64;
+ mes "[Nils]";
+ mes .@line1_1$[.@wordtest];
+ mes .@line1_2$[.@wordtest];
+ mes .@line1_3$[.@wordtest];
+ set .@start_time, gettime(3)*60*60 + gettime(2)*60 + gettime(1);
+ next;
+ input .@save1$;
+ set .@end_time, gettime(3)*60*60 + gettime(2)*60 + gettime(1);
+ set .@total_time, .@end_time - .@start_time;
+ mes "[Nils]";
+ mes .@line2_1$[.@wordtest];
+ mes .@line2_2$[.@wordtest];
+ set .@start_time, gettime(3)*60*60 + gettime(2)*60 + gettime(1);
+ next;
+ input .@save2$;
+ set .@end_time, gettime(3)*60*60 + gettime(2)*60 + gettime(1);
+ set .@total_time, .@total_time + (.@start_time - .@end_time);
+ set .@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 + ".";
+ 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.";
close;
}
- mes "[Airship Staff]";
- mes "You don't have enough zeny.";
- close;
- }
- }
- mes "[Airship Staff]";
- mes "Thank you and";
- mes "have a nice day.";
- close;
-}
-
-//============================================================
-//= The Hugel Airship Staff
-//============================================================
-
-hugel,182,150,3 script Airship Staff#hu 91,{
- mes "[Airship Staff]";
- mes "Welcome to the International Airship.";
- mes "How may I help you?";
- next;
- if (select("Board the Airship:Cancel") == 1) {
- mes "[Airship 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?";
- next;
- if (select("Yes:No") == 1) {
- if(countitem(7311) > 0) {
- delitem 7311,1;
- warp "airplane",224,64;
+ 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!";
+ set $050320_minus1_typing$, strcharinfo(0);
+ set $050320_ein_typing, .@tasoo;
close;
}
- if(Zeny >= 1200) {
- set Zeny, Zeny - 1200;
- warp "airplane",224,64;
+ 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~";
close;
}
- mes "[Airship Staff]";
- mes "You don't have enough zeny.";
- close;
- }
- }
- mes "[Airship Staff]";
- mes "Thank you and";
- mes "have a nice day.";
- close;
-}
-
-//============================================================
-//= The Rachel Airship Staff
-//============================================================
-
-ra_fild12,295,208,3 script Airship Staff#ra 45,1,1,{
-OnTouch:
- mes "T use the airship, you are";
- mes "required to pay 1,200 zeny or a";
- mes "Free Airship Ticket. Would you like to use the service?";
- next;
- if (select("Yes:No") == 1) {
- if (countitem(7311) > 0) {
- delitem 7311,1;
- warp "airplane_01",224,64;
- close;
}
- if (Zeny >= 1200) {
- set Zeny, Zeny - 1200;
- warp "airplane_01",224,64;
+ else {
+ mes "[Nils]";
+ mes "Oooh...";
+ mes "I'm sorry, but";
+ mes "you entered the";
+ mes "text incorrectly...";
close;
}
- mes "You don't have enough zeny.";
+ 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!";
+ 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.'";
+ 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~";
+ close;
+ case 4:
+ mes "[Nils]";
+ mes "Feel free to take on the";
+ mes "^ff0000RO Typing Challenge^000000";
+ mes "anytime. I'll be here~";
close;
}
- mes "Thank you and, please come again.";
- close;
}
//============================================================
-//= Juno Airport NPCs
-//============================================================
-
-y_airport,144,63,4 script Airport Staff#Ein 91,{
- mes "[Airship Staff]";
- mes "Good day!";
- mes "Would you like to go";
- mes "to ^FF0000Einbroch^000000,^FF0000Hugel^000000 or";
- mes "^FF0000Lighthalzen^000000?";
- next;
- if (select("Yes.:No.") == 1) {
- mes "[Airship Staff]";
- mes "Thank you and";
- mes "have a nice day.";
- close2;
- warp "yuno",57,240;
- end;
- }
- mes "[Airship Staff]";
- mes "Thank you and";
- mes "have a nice day.";
- close;
-}
-
-y_airport,141,63,4 script Airport Staff#Izl 91,{
- mes "[Airship Staff]";
- mes "Good day!";
- mes "Would you like to go";
- mes "to ^FF0000Izlude^000000 or ^FF0000Rachel^000000?";
- next;
- if (select("Yes.:No.") == 1) {
- mes "[Airship Staff]";
- mes "Thank you and";
- mes "have a nice day.";
- close2;
- warp "yuno",50,240;
- end;
- }
- mes "[Airship Staff]";
- mes "Thank you and";
- mes "have a nice day.";
- close;
-}
-
-yuno,14,262,5 script Airship Staff#yuno01 91,{
- 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.";
- 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.";
- close;
-}
-
-yuno,88,263,3 script Airship Staff#yuno02 91,{
- 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.";
+//= Apple Gambling
+//============================================================
+airplane_01,33,68,4 script Clarice 74,{
+ mes "[Clarice]";
+ mes "Hi, I'm Clarice~";
+ mes "How would you like";
+ mes "to wager some Apples";
+ mes "in a friendly game of Dice?";
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.";
- close;
+ callfunc "applegamble","Clarice";
+ end;
}
-//============================================================
-//= Apple Gambling Function
-//============================================================
-
function script applegamble {
- switch(select("Play Dice Game:Learn Dice Game Rules:Cancel")){
+ 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 gamle, kay?";
+ mes "sudden urge to gamble, kay?";
close;
case 2:
mes "["+getarg(0)+"]";
@@ -1296,57 +1309,66 @@ function script applegamble {
mes "up to 50 Apples. If you'd like";
mes "to cancel, please enter '0'.";
next;
-L_Input:
- input .@amount;
- if(.@amount == 0) {
- mes "["+getarg(0)+"]";
- mes "Changed your mind?";
- mes "I understand. Well then,";
- mes "I hope we can play sometime.";
- close;
- }
- if(.@amount > 50) set .@amount,50;
- mes "["+getarg(0)+"]";
- mes "So you'll be";
- mes "betting ^FF0000"+.@amount+"^000000 Apples.";
- mes "Is that right?";
- next;
- if(select("Yes:No")==2){
+ 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.";
+ close;
+ }
+ else if (.@amount < 1 || .@amount > 50) {
+ mes "[Clarice]";
+ 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.";
+ next;
+ continue;
+ }
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 "So you'll be";
+ mes "betting ^FF0000"+.@amount+"^000000 Apples.";
+ mes "Is that right?";
next;
- goto L_Input;
- }
- if(countitem(512)<.@amount){
- //more apples then in inventory
- //-Improvised-
+ 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";
+ next;
+ continue;
+ }
+ if (countitem(512) <.@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.";
+ next;
+ continue;
+ }
+ delitem 512,.@amount;
mes "["+getarg(0)+"]";
- mes "Ooh...";
- mes "You don't have that";
- mes "many Apples with you,";
- mes "now do you?";
- close;
+ mes "Good!";
+ mes "Now we can start";
+ mes "this game! I'll roll first~";
+ break;
}
- delitem 512,.@amount;
- mes "["+getarg(0)+"]";
- mes "Good!";
- mes "Now we can start";
- mes "this game! I'll roll first~";
+ mes "^3355FF*Rolling and rumbling*^000000";
next;
- mes "^0000FF*Rolling and rumbling*";
set .@table1,rand(1,6);
set .@table2,rand(1,6);
set .@tablesub,.@table1+.@table2;
+ 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.";
next;
- mes "I rolled a "+.@table1+" and a "+.@table2+",";
- mes "giving me a total of "+.@tablesub+".";
- mes "Now it's your turn,";
- mes strcharinfo(0)+".";
- next;
- menu "Roll Dice.",-;
+ select("Cast Dice.");
mes "^0000FF*Rolling and rumbling*";
set .@player1,rand(1,6);
diff --git a/npc/airports/einbroch.txt b/npc/airports/einbroch.txt
index 37bf6c2f7..25418daf7 100644
--- a/npc/airports/einbroch.txt
+++ b/npc/airports/einbroch.txt
@@ -2,47 +2,48 @@
//= Einbroch Airport Staff
//===== By: ==================================================
//= L0ne_W0lf, Muad_Dib
-//===== Current Version: =====================================
-//= 1.4
//===== Compatible With: =====================================
-//= rAthena Revision 3000+
+//= rAthena SVN
//===== Description: =========================================
//= Einbroch Airport Staff
//===== Additional Comments: =================================
-//= Converted by Dr.Evil, 1.0b more typos and credits [Lupus]
-//= 1.1 Fixed wrong check, added extra condition [Justin84]
-//= 1.2 Removed Duplicates [Silent]
-//= 1.3 Fixed syntax errors for duplicate [KarLaeda]
-//= 1.4 Removed use of goto. [L0ne_W0lf]
-//============================================================
+//= Official NPCs.
+//============================================================
-
-airport,126,43,4 script Airport Staff#01::AirportE 90,{
+airport,143,43,5 script Airport Staff#airport1a::airport1 90,{
mes "[Airport Staff]";
- mes "Welcome to the Airport.";
- mes "How may I help you?";
+ mes "Welcome to the";
+ mes "Einbroch Airport,";
+ mes "where we offer nonstop";
+ mes "flights to the cities of";
+ mes "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 "got a Free Ticket for Airship,";
mes "the fee will be waived. Will";
mes "you board the Airship?";
next;
if (select("Yes:No") == 1) {
- if(countitem(7311) > 0) {
- delitem 7311,1;
+ if (countitem(7311) > 0) {
+ delitem 7311,1; //Free_Flying_Ship_Ticket
warp "airport",148,51;
- close;
+ end;
}
- if(Zeny >= 1200) {
+ if (Zeny >= 1200) {
set Zeny, Zeny - 1200;
warp "airport",148,51;
- close;
+ end;
}
mes "[Airport Staff]";
- mes "You don't have enough zeny.";
+ 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.";
close;
}
}
@@ -52,30 +53,31 @@ airport,126,43,4 script Airport Staff#01::AirportE 90,{
close;
}
-airport,143,43,4 duplicate(AirportE) Airport Staff#02 90
-airport,156,43,4 duplicate(AirportE) Airport Staff#03 90
+airport,158,43,5 duplicate(airport1) Airport Staff#airport1b 90
+airport,126,43,5 duplicate(airport1) Airport Staff#airport1c 90
-airport,126,51,4 script Airport Staff#04::AirportE2 90,{
- mes "[Airport Staff]";
- mes "Welcome~";
- mes "Please head this";
- mes "way to board the Airship.";
+airport,143,49,3 script Arrival Staff#airport2a::airport2 90,{
+ 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.";
next;
- if (select("Exit to Main Terminal:Cancel") == 1) {
- mes "[Airport Staff]";
- mes "If you leave the";
- mes "main terminal, you'll";
- mes "have to pay the admission";
- mes "fee again in order to board";
- mes "the Airship. Are you sure";
- mes "that you want to exit?";
+ 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?";
next;
if (select("Yes:No") == 1) {
warp "airport",142,40;
- close;
+ end;
}
}
- mes "[Airport Staff]";
+ mes "[Arrival Staff]";
mes "Alright, thank you";
mes "for your patronage";
mes "and I hope you have";
@@ -83,17 +85,17 @@ airport,126,51,4 script Airport Staff#04::AirportE2 90,{
close;
}
-airport,143,51,4 duplicate(AirportE2) Airport Staff#05 90
-airport,156,51,4 duplicate(AirportE2) Airport Staff#06 90
+airport,126,51,3 duplicate(airport2) Arrival Staff#airport2b 90
+airport,158,50,3 duplicate(airport2) Arrival Staff#airport2c 90
-einbroch,94,267,4 script Airship Staff#07 91,{
+einbroch,94,267,3 script Airship Staff#ein01 91,{
mes "[Airship Staff]";
mes "Welcome to the";
mes "Einbroch Airport.";
mes "Please use this door to";
- mes "board the Airship wich stops";
- mes "over Lighthalzen and Juno in";
- mes "the Schwarzwald Republic";
+ mes "board the Airship which stops";
+ mes "over Juno, Lighthalzen and";
+ mes "Hugel in the Schwaltzvalt Republic.";
next;
mes "[Airship Staff]";
mes "Otherwise, if Einbroch is";
diff --git a/npc/airports/hugel.txt b/npc/airports/hugel.txt
new file mode 100644
index 000000000..ea591eccc
--- /dev/null
+++ b/npc/airports/hugel.txt
@@ -0,0 +1,36 @@
+//===== rAthena Script =======================================
+//= Hugel Airport NPCs
+//===== By: ==================================================
+//= rAthena Dev Team
+//===== Compatible With: =====================================
+//= rAthena SVN
+//===== Description: =========================================
+//= Hugel Airport NPCs
+//===== Additional Comments: =================================
+//= Official NPCs.
+//============================================================
+
+hugel,178,142,0 script toairplane#hugel 45,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?";
+ next;
+ if (select("Yes:No") == 1) {
+ if (countitem(7311) > 0) {
+ delitem 7311,1; //Free_Flying_Ship_Ticket
+ warp "airplane",244,58;
+ end;
+ }
+ if (Zeny >= 1200) {
+ set Zeny, Zeny - 1200;
+ 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.";
+ close;
+ }
+ mes "Thank you, please come again.";
+ close;
+}
diff --git a/npc/airports/izlude.txt b/npc/airports/izlude.txt
new file mode 100644
index 000000000..c740c1c67
--- /dev/null
+++ b/npc/airports/izlude.txt
@@ -0,0 +1,51 @@
+//===== rAthena Script =======================================
+//= Izlude Airport NPCs
+//===== By: ==================================================
+//= rAthena Dev Team
+//===== Compatible With: =====================================
+//= rAthena SVN
+//===== Description: =========================================
+//= Izlude Airport NPCs
+//===== Additional Comments: =================================
+//= Official NPCs.
+//============================================================
+
+izlude,206,55,3 script Airship Staff#izlude 90,{
+ 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?";
+ 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?";
+ next;
+ if (select("Yes:No") == 1) {
+ if (countitem(7311) > 0) {
+ delitem 7311,1; //Free_Flying_Ship_Ticket
+ warp "airplane_01",244,58;
+ end;
+ }
+ if (Zeny >= 1200) {
+ set Zeny, Zeny - 1200;
+ 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.";
+ close;
+ }
+ }
+ mes "[Airship Staff]";
+ mes "Thank you and";
+ mes "please come again.";
+ mes "Have a good day~";
+ close;
+}
diff --git a/npc/airports/lighthalzen.txt b/npc/airports/lighthalzen.txt
index 81f565027..5509b80c1 100644
--- a/npc/airports/lighthalzen.txt
+++ b/npc/airports/lighthalzen.txt
@@ -2,79 +2,76 @@
//= Lighthalzen Airport Staff
//===== By: ==================================================
//= L0ne_W0lf, Muad_Dib
-//===== Current Version: =====================================
-//= 1.3
//===== Compatible With: =====================================
-//= rAthena Revision 3000+
+//= rAthena SVN
//===== Description: =========================================
//= Lighthalzen Airport Staff
//===== Additional Comments: =================================
-//= 1.0 Cloned from einbroch.txt [Justin84]
-//= 1.1 Removed Duplicates [Silent]
-//= 1.2 Fixed syntax errors for duplicate [KarLaeda]
-//= 1.3 Removed use of goto. [L0ne_W0lf]
-//============================================================
+//= Official NPCs.
+//============================================================
-
-lhz_airport,126,43,4 script Airport Staff#1::AirportL 90,{
+lhz_airport,143,43,5 script Airport Staff#lhz_air1a::lhz_airport1 90,{
mes "[Airport Staff]";
- mes "Welcome to the Airport.";
- mes "How may I help you?";
+ mes "Welcome to the";
+ mes "Lighthalzen Airport,";
+ mes "where we offer nonstop";
+ mes "flights to Einbroch, Juno and Hugel.";
next;
- if (select("Board the Airship:Cancel") == 1) {
+ 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 "The boarding fee is";
+ mes "1,200 zeny, but you can";
+ mes "waive the fee if you redeem";
+ mes "a Free Ticket for Airship.";
next;
if (select("Yes:No") == 1) {
- if(countitem(7311) > 0) {
- delitem 7311,1;
+ if (countitem(7311) > 0) {
+ delitem 7311,1; //Free_Flying_Ship_Ticket
warp "lhz_airport",148,51;
- close;
+ end;
}
- if(zeny >= 1200) {
- set Zeny,zeny-1200;
+ if (Zeny >= 1200) {
+ set Zeny, Zeny - 1200;
warp "lhz_airport",148,51;
- close;
+ end;
}
- mes "[Airport Staff]";
- mes "You don't have enough zeny.";
+ mes "[Airship Staff]";
+ mes "I'm sorry, but you don't";
+ mes "have 1,200 zeny to pay";
+ mes "for the boarding fee.";
close;
}
}
mes "[Airport Staff]";
mes "Thank you and";
- mes "have a nice day.";
+ mes "please come again.";
+ mes "Have a good day~";
close;
}
-lhz_airport,143,43,4 duplicate(AirportL) Airport Staff#2 90
-lhz_airport,156,43,4 duplicate(AirportL) Airport Staff#3 90
+lhz_airport,158,43,5 duplicate(lhz_airport1) Airship Staff#lhz_air1b 90
+lhz_airport,126,43,5 duplicate(lhz_airport1) Airship Staff#lhz_air1c 90
-lhz_airport,126,51,4 script Airport Staff#4::AirportL2 90,{
- mes "[Airport Staff]";
- mes "Welcome~";
- mes "Please head this";
- mes "way to board the Airship.";
+lhz_airport,143,49,3 script Arrival Staff#lhz_air2a::lhz_airport2 90,{
+ 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.";
next;
- if (select("Exit to Main Terminal:Cancel") == 1) {
- mes "[Airport Staff]";
- mes "If you leave the";
- mes "main terminal, you'll";
- mes "have to pay the admission";
- mes "fee again in order to board";
- mes "the Airship. Are you sure";
- mes "that you want to exit?";
+ 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?";
next;
if (select("Yes:No") == 1) {
warp "lhz_airport",142,40;
- close;
+ end;
}
}
- mes "[Airport Staff]";
+ mes "[Arrival Staff]";
mes "Alright, thank you";
mes "for your patronage";
mes "and I hope you have";
@@ -82,5 +79,5 @@ lhz_airport,126,51,4 script Airport Staff#4::AirportL2 90,{
close;
}
-lhz_airport,143,51,4 duplicate(AirportL2) Airport Staff#5 90
-lhz_airport,156,51,4 duplicate(AirportL2) Airport Staff#6 90
+lhz_airport,126,51,3 duplicate(lhz_airport2) Arrival Staff#lhz_air2b 90
+lhz_airport,158,50,3 duplicate(lhz_airport2) Arrival Staff#lhz_air2c 90
diff --git a/npc/airports/rachel.txt b/npc/airports/rachel.txt
new file mode 100644
index 000000000..78280fdbf
--- /dev/null
+++ b/npc/airports/rachel.txt
@@ -0,0 +1,36 @@
+//===== rAthena Script =======================================
+//= Rachel Airport NPCs
+//===== By: ==================================================
+//= rAthena Dev Team
+//===== Compatible With: =====================================
+//= rAthena SVN
+//===== Description: =========================================
+//= Rachel Airport NPCs
+//===== Additional Comments: =================================
+//= Official NPCs.
+//============================================================
+
+ra_fild12,295,208,0 script toairplane#rachel 45,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?";
+ next;
+ if (select("Yes:No") == 1) {
+ if (countitem(7311) > 0) {
+ delitem 7311,1; //Free_Flying_Ship_Ticket
+ warp "airplane_01",245,60;
+ end;
+ }
+ if (Zeny >= 1200) {
+ set Zeny, Zeny - 1200;
+ 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.";
+ close;
+ }
+ mes "Thank you, please come again.";
+ close;
+} \ No newline at end of file
diff --git a/npc/airports/yuno.txt b/npc/airports/yuno.txt
index 815280d27..ca2556fed 100644
--- a/npc/airports/yuno.txt
+++ b/npc/airports/yuno.txt
@@ -2,46 +2,42 @@
//= Yuno Airport Staff
//===== By: ==================================================
//= L0ne_W0lf, Muad_Dib
-//===== Current Version: =====================================
-//= 1.3
//===== Compatible With: =====================================
-//= rAthena Revision 3000+
+//= rAthena SVN
//===== Description: =========================================
//= Yuno Airport Staff
//===== Additional Comments: =================================
-//= 1.0 Cloned from Einbroch [Justin84]
-//= 1.1 Removed Duplicates [Silent]
-//= 1.2 Fixed syntax errors for duplicate [KarLaeda]
-//= 1.3 Removed use of goto. [L0ne_W0lf]
-//============================================================
+//= Official NPCs.
+//============================================================
-
-y_airport,126,43,4 script Airport Staff#001::AirportY 90,{
+y_airport,143,43,5 script Airport Staff#y_air1a::y_airport1 90,{
mes "[Airport Staff]";
- mes "Welcome to the Airport.";
- mes "How may I help you?";
+ 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?";
next;
- if (select("Board the Airship:Cancel") == 1) {
+ 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 "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?";
next;
if (select("Yes:No") == 1) {
- if(countitem(7311) > 0) {
- delitem 7311,1;
+ if (countitem(7311) > 0) {
+ delitem 7311,1; //Free_Flying_Ship_Ticket
warp "y_airport",148,51;
- close;
+ end;
}
- if(zeny >= 1200) {
- set Zeny,zeny-1200;
+ if (Zeny >= 1200) {
+ set Zeny, Zeny - 1200;
warp "y_airport",148,51;
- close;
+ end;
}
mes "[Airport Staff]";
- mes "You don't have enough zeny.";
+ mes "I'm sorry, but you don't";
+ mes "have 1,200 zeny to pay";
+ mes "for the boarding fee.";
close;
}
}
@@ -51,27 +47,25 @@ y_airport,126,43,4 script Airport Staff#001::AirportY 90,{
close;
}
-y_airport,143,43,4 duplicate(AirportY) Airport Staff#002 90
-y_airport,156,43,4 duplicate(AirportY) Airport Staff#003 90
+y_airport,158,43,5 duplicate(y_airport1) Airport Staff#y_air1b 90
+y_airport,126,43,5 duplicate(y_airport1) Airport Staff#y_air1c 90
-y_airport,126,51,4 script Airport Staff#004::AirportY2 90,{
+y_airport,143,49,3 script Arrival Staff#y_air2a::y_airport2 90,{
mes "[Airport Staff]";
- mes "Welcome~";
- mes "Please head this";
- mes "way to board the Airship.";
+ 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.";
next;
- if (select("Exit to Main Terminal:Cancel") == 1) {
+ if (select("Exit to main terminal:Cancel") == 1) {
mes "[Airport Staff]";
- mes "If you leave the";
- mes "main terminal, you'll";
- mes "have to pay the admission";
- mes "fee again in order to board";
- mes "the Airship. Are you sure";
- mes "that you want to exit?";
+ 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?";
next;
if (select("Yes:No") == 1) {
warp "y_airport",142,40;
- close;
+ end;
}
}
mes "[Airport Staff]";
@@ -82,5 +76,84 @@ y_airport,126,51,4 script Airport Staff#004::AirportY2 90,{
close;
}
-y_airport,143,51,4 duplicate(AirportY2) Airport Staff#005 90
-y_airport,156,51,4 duplicate(AirportY2) Airport Staff#006 90
+y_airport,126,51,3 duplicate(y_airport2) Arrival Staff#y_air2b 90
+y_airport,158,50,3 duplicate(y_airport2) Arrival Staff#y_air2c 90
+
+y_airport,145,63,5 script Domestic Boarding 91,{
+ 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.";
+ 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~";
+ close;
+}
+
+y_airport,140,63,5 script International Boarding 91,{
+ 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.";
+ 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.";
+ close;
+}
+
+yuno,14,262,5 script Airship Staff#yuno01 91,{
+ 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.";
+ 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.";
+ close;
+}
+
+yuno,88,263,3 script Airship Staff#yuno02 91,{
+ 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.";
+ 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.";
+ close;
+}
diff --git a/npc/quests/quests_airship.txt b/npc/quests/quests_airship.txt
index 81c28d4b6..b8a62d029 100644
--- a/npc/quests/quests_airship.txt
+++ b/npc/quests/quests_airship.txt
@@ -775,8 +775,8 @@ function script cherno {
misceffect 20;
mes "^33355F*Crash!*^000000";
mes ".....";
- emotion 4, "Theo Cherno";
- Emotion 4, "Tarsha Cherno";
+ emotion 4,0,"Theo Cherno";
+ Emotion 4,0,"Tarsha Cherno";
next;
mes "[Theo Cherno]";
mes "Honey...";
@@ -1080,312 +1080,381 @@ einbech,53,94,5 duplicate(Tree) Tree#t1-4 111
//=============Monsters Attack======================
airplane_01,1,1,0 script Airship#airplane02 -1,{
-OnInit:
- disablenpc "Airship Captain#02";
-OnInvasion:
-while($@mobinv >= 9 && $@mobrand == 3)
-{
- Initnpctimer;
end;
-OnTimer6000:
+OnEnable:
+ initnpctimer;
+ end;
+OnTimer25000:
+ mapannounce "airplane_01","We are heading to Izlude.",bc_map,0x00FF00;
+ end;
+OnTimer30000:
mapannounce "airplane_01","Captain: Attention, all passengers.",bc_map,0x00FF00;
end;
-OnTimer10000:
+OnTimer34000:
mapannounce "airplane_01","Captain: We are being approached by a group of unidentified creatures.",bc_map,0x00ff00;
end;
-OnTimer12000:
+OnTimer38000:
mapannounce "airplane_01", "Captain: All passengers on deck, please find shelter inside the ship!",bc_map,0x00ff00;
- disablenpc "Airship Staff#airplane01";
- end;
-OnTimer16000:
- monster "airplane_01",245,57,"Gremlin",1632,1;
- monster "airplane_01",247,59,"Gremlin",1632,1;
- monster "airplane_01",249,52,"Gremlin",1632,1;
- monster "airplane_01",243,62,"Gremlin",1632,1;
- monster "airplane_01",239,52,"Beholder",1633,1;
- monster "airplane_01",234,56,"Beholder",1633,1;
- monster "airplane_01",227,49,"Beholder",1633,1;
- monster "airplane_01",233,41,"Beholder",1633,1;
+ hideonnpc "Airship Staff#airplane01";
+ end;
+OnTimer48000:
+ monster "airplane_01",245,57,"Gremlin",1632,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",247,59,"Gremlin",1632,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",249,52,"Gremlin",1632,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",243,62,"Gremlin",1632,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",239,52,"Beholder",1633,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",234,56,"Beholder",1633,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",227,49,"Beholder",1633,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",233,41,"Beholder",1633,1,"Airship#airplane02::OnMyMobDead";
switch(rand(1,5)) {
- case 1: monster "airplane_01",251,47,"Drainliar",1111,1; break;
- case 2: monster "airplane_01",251,47,"Rotar Zairo",1392,1; break;
- case 3: monster "airplane_01",251,47,"Farmiliar",1005,1; break;
- case 4: monster "airplane_01",251,47,"Picky",1049,1; break;
- case 5: monster "airplane_01",251,47,"Steel Chonchon",1042,1; break;
+ case 1: monster "airplane_01",251,47,"Drainliar",1111,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 2: monster "airplane_01",251,47,"Rotar Zairo",1392,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 3: monster "airplane_01",251,47,"Farmiliar",1005,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 4: monster "airplane_01",251,47,"Picky",1049,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 5: monster "airplane_01",251,47,"Steel Chonchon",1042,1,"Airship#airplane02::OnMyMobDead"; break;
}
switch(rand(1,5)) {
- case 1: monster "airplane_01",245,53,"Drainliar",1111,1; break;
- case 2: monster "airplane_01",245,53,"Rotar Zairo",1392,1; break;
- case 3: monster "airplane_01",245,53,"Farmiliar",1005,1; break;
- case 4: monster "airplane_01",245,53,"Picky",1049,1; break;
- case 5: monster "airplane_01",245,53,"Steel Chonchon",1042,1; break;
+ case 1: monster "airplane_01",245,53,"Drainliar",1111,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 2: monster "airplane_01",245,53,"Rotar Zairo",1392,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 3: monster "airplane_01",245,53,"Farmiliar",1005,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 4: monster "airplane_01",245,53,"Picky",1049,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 5: monster "airplane_01",245,53,"Steel Chonchon",1042,1,"Airship#airplane02::OnMyMobDead"; break;
}
switch(rand(1,5)) {
- case 1: monster "airplane_01",234,46,"Drainliar",1111,1; break;
- case 2: monster "airplane_01",234,46,"Rotar Zairo",1392,1; break;
- case 3: monster "airplane_01",234,46,"Farmiliar",1005,1; break;
- case 4: monster "airplane_01",234,46,"Picky",1049,1; break;
- case 5: monster "airplane_01",234,46,"Steel Chonchon",1042,1; break;
+ case 1: monster "airplane_01",234,46,"Drainliar",1111,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 2: monster "airplane_01",234,46,"Rotar Zairo",1392,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 3: monster "airplane_01",234,46,"Farmiliar",1005,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 4: monster "airplane_01",234,46,"Picky",1049,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 5: monster "airplane_01",234,46,"Steel Chonchon",1042,1,"Airship#airplane02::OnMyMobDead"; break;
}
switch(rand(1,5)) {
- case 1: monster "airplane_01",233,58,"Drainliar",1111,1; break;
- case 2: monster "airplane_01",233,58,"Rotar Zairo",1392,1; break;
- case 3: monster "airplane_01",233,58,"Farmiliar",1005,1; break;
- case 4: monster "airplane_01",233,58,"Picky",1049,1; break;
- case 5: monster "airplane_01",233,58,"Steel Chonchon",1042,1; break;
+ case 1: monster "airplane_01",233,58,"Drainliar",1111,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 2: monster "airplane_01",233,58,"Rotar Zairo",1392,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 3: monster "airplane_01",233,58,"Farmiliar",1005,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 4: monster "airplane_01",233,58,"Picky",1049,1,"Airship#airplane02::OnMyMobDead"; break;
+ case 5: monster "airplane_01",233,58,"Steel Chonchon",1042,1,"Airship#airplane02::OnMyMobDead"; break;
}
// it's possible this is an error, but in aegis it stops resetting the random var.
switch(rand(1,5)) {
case 1:
- monster "airplane_01",243,60,"Drainliar",1111,1;
- monster "airplane_01",228,54,"Drainliar",1111,1;
- monster "airplane_01",232,41,"Drainliar",1111,1;
+ monster "airplane_01",243,60,"Drainliar",1111,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",228,54,"Drainliar",1111,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",232,41,"Drainliar",1111,1,"Airship#airplane02::OnMyMobDead";
break;
case 2:
- monster "airplane_01",243,60,"Rotar Zairo",1392,1;
- monster "airplane_01",228,54,"Rotar Zairo",1392,1;
- monster "airplane_01",232,41,"Rotar Zairo",1392,1;
+ monster "airplane_01",243,60,"Rotar Zairo",1392,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",228,54,"Rotar Zairo",1392,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",232,41,"Rotar Zairo",1392,1,"Airship#airplane02::OnMyMobDead";
break;
case 3:
- monster "airplane_01",243,60,"Farmiliar",1005,1;
- monster "airplane_01",228,54,"Farmiliar",1005,1;
- monster "airplane_01",232,41,"Farmiliar",1005,1;
+ monster "airplane_01",243,60,"Farmiliar",1005,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",228,54,"Farmiliar",1005,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",232,41,"Farmiliar",1005,1,"Airship#airplane02::OnMyMobDead";
break;
case 4:
- monster "airplane_01",243,60,"Picky",1049,1;
- monster "airplane_01",228,54,"Picky",1049,1;
- monster "airplane_01",232,41,"Picky",1049,1;
+ monster "airplane_01",243,60,"Picky",1049,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",228,54,"Picky",1049,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",232,41,"Picky",1049,1,"Airship#airplane02::OnMyMobDead";
break;
case 5:
- monster "airplane_01",243,60,"Steel Chonchon",1042,1;
- monster "airplane_01",228,54,"Steel Chonchon",1042,1;
- monster "airplane_01",232,41,"Steel Chonchon",1042,1;
+ monster "airplane_01",243,60,"Steel Chonchon",1042,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",228,54,"Steel Chonchon",1042,1,"Airship#airplane02::OnMyMobDead";
+ monster "airplane_01",232,41,"Steel Chonchon",1042,1,"Airship#airplane02::OnMyMobDead";
break;
}
end;
-OnTimer16010:
- monster "airplane_01",238,56,"Gremlin",1632,1;
- monster "airplane_01",239,56,"Gremlin",1632,1;
- monster "airplane_01",240,50,"Gremlin",1632,1;
- monster "airplane_01",241,56,"Gremlin",1632,1;
- monster "airplane_01",247,51,"Gremlin",1632,1;
- monster "airplane_01",237,44,"Beholder",1633,1;
- monster "airplane_01",233,54,"Beholder",1633,1;
- monster "airplane_01",237,62,"Beholder",1633,1;
- end;
-OnTimer21000:
+OnTimer48010:
+ monster "airplane_01",238,56,"Gremlin",1632,1,"Airship#airplane02::OnCaptainMobDead";
+ monster "airplane_01",239,56,"Gremlin",1632,1,"Airship#airplane02::OnCaptainMobDead";
+ monster "airplane_01",240,50,"Gremlin",1632,1,"Airship#airplane02::OnCaptainMobDead";
+ monster "airplane_01",241,56,"Gremlin",1632,1,"Airship#airplane02::OnCaptainMobDead";
+ monster "airplane_01",247,51,"Gremlin",1632,1,"Airship#airplane02::OnCaptainMobDead";
+ monster "airplane_01",237,44,"Beholder",1633,1,"Airship#airplane02::OnCaptainMobDead";
+ monster "airplane_01",233,54,"Beholder",1633,1,"Airship#airplane02::OnCaptainMobDead";
+ monster "airplane_01",237,62,"Beholder",1633,1,"Airship#airplane02::OnCaptainMobDead";
+ end;
+OnTimer53000:
mapannounce "airplane_01", "Attendant: Captain Tarlock, we're in trouble! The monsters are heading to the propellers!",bc_map,0x00FF00;
end;
-OnTimer26000:
+OnTimer58000:
mapannounce "airplane_01", "Captain Tarlock: What?! I've got to stop them!",bc_map,0x70DBDB;
end;
-OnTimer31000:
- disablenpc "Airship Captain#01";
- enablenpc "Airship Captain#02";
+OnTimer63000:
+ hideonnpc "Airship Captain#01";
+ hideoffnpc "Airship Captain#02";
end;
-OnTimer36000:
- emotion e_ag,"Airship Captain#02";
+OnTimer68000:
+ emotion e_ag,0,"Airship Captain#02";
mapannounce "airplane_01", "Captain Tarlock: You ugly, godforsaken creatures... Get off my ship!",bc_map,0x70DBDB;
end;
-OnTimer36500:
+OnTimer73000:
mapannounce "airplane_01", "*Kzzz...Drrrr...Boom! CRASH!*",bc_map,0x00FF00;
- specialeffect EF_SUI_EXPLOSION,"boom6#airplane";
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom6#airplane";
end;
-OnTimer37000:
- specialeffect EF_SUI_EXPLOSION,"boom7#airplane";
+OnTimer73500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom7#airplane";
end;
-OnTimer37500:
- specialeffect EF_SUI_EXPLOSION,"boom8#airplane";
+OnTimer74000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom8#airplane";
end;
-OnTimer38000:
- specialeffect EF_SUI_EXPLOSION,"boom9#airplane";
+OnTimer74500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom9#airplane";
end;
-OnTimer38500:
- specialeffect EF_SUI_EXPLOSION,"boom10#airplane";
+OnTimer75000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom10#airplane";
end;
-OnTimer39000:
- specialeffect EF_SUI_EXPLOSION,"boom6#airplane";
+OnTimer75500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom6#airplane";
end;
-OnTimer39500:
- specialeffect EF_SUI_EXPLOSION,"boom7#airplane";
+OnTimer76000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom7#airplane";
end;
-OnTimer40000:
- specialeffect EF_SUI_EXPLOSION,"boom8#airplane";
+OnTimer76500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom8#airplane";
end;
-OnTimer40500:
- specialeffect EF_SUI_EXPLOSION,"boom9#airplane";
+OnTimer77000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom9#airplane";
end;
-OnTimer41000:
- specialeffect EF_SUI_EXPLOSION,"boom10#airplane";
+OnTimer77500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom10#airplane";
end;
-OnTimer41500:
- specialeffect EF_SUI_EXPLOSION,"boom6#airplane";
+OnTimer78000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom6#airplane";
mapannounce "airplane_01", "Engineer: Oh no! We've got a problem with the Number One Rear Engine!",bc_map,0x00FF00;
end;
-OnTimer42500:
- specialeffect EF_SUI_EXPLOSION,"boom7#airplane";
+OnTimer79000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom7#airplane";
end;
-OnTimer43500:
- specialeffect EF_SUI_EXPLOSION,"boom8#airplane";
+OnTimer80000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom8#airplane";
end;
-OnTimer44500:
- specialeffect EF_SUI_EXPLOSION,"boom9#airplane";
+OnTimer81000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom9#airplane";
end;
-OnTimer45500:
- specialeffect EF_SUI_EXPLOSION,"boom10#airplane";
+OnTimer82000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom10#airplane";
end;
-OnTimer46500:
+OnTimer83000:
mapannounce "airplane_01", "Pilot: Hurry! Get the women, old people and children somewhere safe first! Hurry!",bc_map,0x00FF00;
end;
-OnTimer47500:
- specialeffect EF_SUI_EXPLOSION,"boom6#airplane";
+OnTimer84000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom6#airplane";
end;
-OnTimer48500:
- specialeffect EF_SUI_EXPLOSION,"boom7#airplane";
+OnTimer85000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom7#airplane";
end;
-OnTimer49500:
- specialeffect EF_SUI_EXPLOSION,"boom8#airplane";
+OnTimer86000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom8#airplane";
end;
-OnTimer50500:
- specialeffect EF_SUI_EXPLOSION,"boom7#airplane";
+OnTimer87000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom7#airplane";
end;
-OnTimer51500:
- emotion e_ag,"Airship Captain#02";
+OnTimer88000:
+ emotion e_ag,0,"Airship Captain#02";
mapannounce "airplane_01", "Captain Tarlock: You dirty monsters are dealing with this ship's captain...",bc_map,0x70DBDB;
end;
-OnTimer56500:
- emotion e_ag,"Airship Captain#02";
+OnTimer93000:
+ emotion e_ag,0,"Airship Captain#02";
mapannounce "airplane_01", "Captain Tarlock: I'll protect this ship and my crew with my life!",bc_map,0x70DBDB;
end;
-OnTimer61500:
- emotion e_pif,"Airship Captain#02";
+OnTimer98000:
+ emotion e_pif,0,"Airship Captain#02";
mapannounce "airplane_01", "Captain Tarlock: Here goes! Special Exodus Joker XIII Doom Rifle!",bc_map,0x70DBDB;
end;
-OnTimer66500:
+OnTimer103000:
mapannounce "airplane_01", "*Bang! Bang Bang! Bang Bang! Bang Bang Bang!*",bc_map,0x00FF00;
- specialeffect EF_HIT5,"Airship Captain#02";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer67000:
- specialeffect EF_SUI_EXPLOSION,"boom1#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer103500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom1#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer67500:
- specialeffect EF_SUI_EXPLOSION,"boom2#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer104000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom2#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer68000:
- specialeffect EF_SUI_EXPLOSION,"boom3#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer104500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom3#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer68500:
- specialeffect EF_SUI_EXPLOSION,"boom4#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer105000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom4#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer69000:
- specialeffect EF_SUI_EXPLOSION,"boom5#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer105500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom5#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer69500:
- specialeffect EF_SUI_EXPLOSION,"boom0#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer106000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom0#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer70000:
- specialeffect EF_SUI_EXPLOSION,"boom1#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer106500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom1#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer70500:
- specialeffect EF_SUI_EXPLOSION,"boom2#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer107000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom2#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer71000:
- specialeffect EF_SUI_EXPLOSION,"boom4#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer107500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom4#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer71500:
- specialeffect EF_SUI_EXPLOSION,"boom5#airplane";
+OnTimer108000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom5#airplane";
+ killmonster "airplane_01","Airship#airplane02::OnCaptainMobDead";
end;
-OnTimer72000:
- emotion e_ag,"Airship Captain#02";
+OnTimer113000:
+ emotion e_pif,0,"Airship Captain#02";
mapannounce "airplane_01","Captain Tarlock: Filthy animals! Stop ruining my ship!",bc_map,0x70DBDB;
end;
-OnTimer72500:
+OnTimer118000:
mapannounce "airplane_01", "*Bang! Bang Bang! Bang Bang! Bang Bang Bang!*",bc_map,0x00FF00;
- specialeffect EF_HIT5,"Airship Captain#02";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer73000:
- specialeffect EF_SUI_EXPLOSION,"boom6#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer118500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom6#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer73500:
- specialeffect EF_SUI_EXPLOSION,"boom7#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer119000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom7#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer74000:
- specialeffect EF_SUI_EXPLOSION,"boom8#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer119500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom8#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer74500:
- specialeffect EF_SUI_EXPLOSION,"boom9#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer120000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom9#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer75000:
- specialeffect EF_SUI_EXPLOSION,"boom10#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer120500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom10#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer75500:
- specialeffect EF_SUI_EXPLOSION,"boom6#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer121000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom6#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer76000:
- specialeffect EF_SUI_EXPLOSION,"boom7#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer121500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom7#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer76500:
- specialeffect EF_SUI_EXPLOSION,"boom8#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer122000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom8#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer77000:
- specialeffect EF_SUI_EXPLOSION,"boom9#airplane";
- specialeffect EF_HIT5,"Airship Captain#02";
+OnTimer122500:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom9#airplane";
+ specialeffect EF_HIT5,AREA,"Airship Captain#02";
end;
-OnTimer77500:
- specialeffect EF_SUI_EXPLOSION,"boom8#airplane";
+OnTimer123000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom8#airplane";
mapannounce "airplane_01", "*Boom! Boom Boom! Boom Boom! Boom!*",bc_map,0x00FF00;
end;
-OnTimer78000:
- specialeffect EF_SUI_EXPLOSION,"boom9#airplane";
+OnTimer124000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom9#airplane";
end;
-OnTimer78500:
- specialeffect EF_SUI_EXPLOSION,"boom10#airplane";
+OnTimer125000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom10#airplane";
end;
-OnTimer79000:
- specialeffect EF_SUI_EXPLOSION,"boom6#airplane";
+OnTimer126000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom6#airplane";
end;
-OnTimer79500:
- specialeffect EF_SUI_EXPLOSION,"boom7#airplane";
+OnTimer127000:
+ specialeffect EF_SUI_EXPLOSION,AREA,"boom7#airplane";
end;
-OnTimer80000:
- emotion e_an,"Airship Captain#02";
- mapannounce "airplane_01", "Captain Tarlock: There's... To many to handle!",bc_map,0x70DBDB;
+OnTimer128000:
+ emotion e_an,0,"Airship Captain#02";
+ mapannounce "airplane_01", "Captain Tarlock: There's... Too many to handle!",bc_map,0x70DBDB;
end;
-OnTimer85000:
+OnTimer133000:
mapannounce "airplane_01", "Pilot: Captain, sir, the situation is getting critical!",bc_map,0x00FF00;
end;
-OnTimer100000:
- emotion e_swt,"Airship Captain#02";
+OnTimer138000:
+ emotion e_swt,0,"Airship Captain#02";
mapannounce "airplane_01", "Captain Tarlock: We'll need all the help we can get!",bc_map,0x70DBDB;
end;
-OnTimer125000:
- emotion e_sry,"Airship Captain#02";
+OnTimer143000:
+ emotion e_sry,0,"Airship Captain#02";
mapannounce "airplane_01", "Captain Tarlock: All hands and any passenger who can fight! We've got to drive away these monsters!",bc_map,0x70DBDB;
end;
-OnTimer130000:
- disablenpc "Airship Captain#02";
- enablenpc "Airship Captain#01";
- enablenpc "Airship Staff#airplane01";
- donpcevent "YunoIzl_Airship::OnReturn";
+OnTimer148000:
+ hideonnpc "Airship Captain#02";
+ hideoffnpc "Airship Captain#01";
+ end;
+OnTimer400000:
+ killmonster "airplane_01","Airship#airplane02::OnMyMobDead";
+ end;
+OnTimer405000:
+ mapannounce "airplane_01","Monster threat eliminated. The Airship is now returning to normal operation.",bc_map,0x00FF00;
+ hideoffnpc "Airship Staff#airplane_01";
+ end;
+OnTimer410000:
+ mapannounce "airplane_01","We will arrive in Izlude shortly.",bc_map,"0x00ff00";
+ end;
+OnTimer420000:
+ set $@airplanelocation2,1;
+ donpcevent "#AirshipWarp-3::OnUnhide";
+ donpcevent "#AirshipWarp-4::OnUnhide";
+ mapannounce "airplane_01","Welcome to Izlude. Have a safe trip.",bc_map,"0x00ff00";
+ end;
+OnTimer430000:
+ mapannounce "airplane_01","We are currently in Izlude. The Airship will take off shortly.",bc_map,"0x00ff00";
+ end;
+OnTimer440000:
+ 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";
+ end;
+OnTimer465000:
+ mapannounce "airplane_01","We are heading to Juno.",bc_map,"0x70dbdb";
+ end;
+OnTimer490000:
+ mapannounce "airplane_01","We will arrive in Juno shortly.",bc_map,"0x70dbdb";
+ end;
+OnTimer500000:
+ set $@airplanelocation2,2;
+ donpcevent "#AirshipWarp-3::OnUnhide";
+ donpcevent "#AirshipWarp-4::OnUnhide";
+ mapannounce "airplane_01","Welcome to Juno. Have a safe trip.",bc_map,"0x70dbdb";
+ end;
+OnTimer510000:
+ mapannounce "airplane_01","We are currently in Juno. The Airship will leave shorty.",bc_map,"0x70dbdb";
+ end;
+OnTimer520000:
+ 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";
+ end;
+OnTimer545000:
+ mapannounce "airplane_01","We are heading to Rachel.",bc_map,"0xFF8200";
+ end;
+OnTimer570000:
+ mapannounce "airplane_01","We will arrive in Rachel shortly.",bc_map,"0xFF8200";
+ end;
+OnTimer580000:
+ set $@airplanelocation2,0;
+ donpcevent "#AirshipWarp-3::OnUnhide";
+ donpcevent "#AirshipWarp-4::OnUnhide";
+ mapannounce "airplane_01","Welcome to Rachel. Have a safe trip.",bc_map,"0xFF8200";
+ end;
+OnTimer590000:
+ mapannounce "airplane_01","We are currently in Rachel. The Airship will take off shortly.",bc_map,"0xFF8200";
+ end;
+OnTimer600000:
+ 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";
+ stopnpctimer;
+ set getvariableofnpc(.moninv, "International_Airship"),2;
+ donpcevent "International_Airship::OnEnable";
+ end;
+
+OnMyMobDead:
+OnCaptainMobDead:
end;
-}
}
airplane_01,246,54,3 script Airship Captain#02 873,{
@@ -1397,7 +1466,11 @@ airplane_01,246,54,3 script Airship Captain#02 873,{
mes "fight with the";
mes "Gremlins!";
close2;
- cutin "fly_felrock",255;
+ cutin "",255;
+ end;
+
+OnInit:
+ hideonnpc "Airship Captain#02";
end;
}
@@ -1414,8 +1487,7 @@ airplane_01,234,65,0 script boom9#airplane 139,{ end; }
airplane_01,227,67,0 script boom10#airplane 139,{ end; }
//========Captain Tarlock (Inside the Captain Cabin)=======================
-
-airplane_01,238,154,5 script Airship Captain#01 873,{
+airplane_01,238,154,3 script Airship Captain#01 873,{
cutin "fly_felrock",2;
mes "[Tarlock]";
mes "I am Tarlock,";
@@ -1432,7 +1504,7 @@ airplane_01,238,154,5 script Airship Captain#01 873,{
} else if(lght_air == 6) {
set .@question$, "Already finished reading?";
}
- switch( select( "Y-you're a reindeer?!", .@question$, "No, not really." )){
+ switch (select("Y-you're a reindeer?!", .@question$, "No, not really.")) {
case 1:
mes "[Tarlock]";
mes "Hm? Oh, that";
@@ -1453,7 +1525,7 @@ airplane_01,238,154,5 script Airship Captain#01 873,{
cutin "",255;
end;
case 2:
- if(lght_air == 1) {
+ if (lght_air == 1) {
if (BaseLevel <= 59) {
mes "[Tarlock]";
mes "Mm...?";
@@ -1471,7 +1543,7 @@ airplane_01,238,154,5 script Airship Captain#01 873,{
mes "before? Are you just curious";
mes "or did you really want to know?";
next;
- switch( select( "No, not really...", "Yes, I really want to know!")) {
+ switch (select("No, not really...:Yes, I really want to know!")) {
case 1:
mes "[Tarlock]";
mes "Hahahaha~";
@@ -1499,7 +1571,7 @@ airplane_01,238,154,5 script Airship Captain#01 873,{
mes "you that classified info if you";
mes "do a little favor for me first.";
next;
- switch( select( "Let me think about it.", "Sure.")) {
+ switch (select("Let me think about it.:Sure.")) {
case 1:
mes "[Tarlock]";
mes "Alright. But don't";
@@ -1545,8 +1617,9 @@ airplane_01,238,154,5 script Airship Captain#01 873,{
}
}
}
- } else if(lght_air == 4) {
+ } else if (lght_air == 4) {
set lght_air, 5;
+ changequest 8034,8035;
mes "[Tarlock]";
mes "Oh!";
mes "And he answer you? Really?!";
@@ -1557,7 +1630,7 @@ airplane_01,238,154,5 script Airship Captain#01 873,{
close2;
cutin "",255;
end;
- } else if(lght_air == 5) {
+ } else if (lght_air == 5) {
set lght_air, 6;
mes "[Tarlock]";
mes "Um... Ha ha ha~!";
@@ -1572,7 +1645,7 @@ airplane_01,238,154,5 script Airship Captain#01 873,{
close2;
cutin "",255;
end;
- } else if(lght_air== 6) {
+ } else if (lght_air == 6) {
mes "[Tarlock]";
mes "Yes, I finished.";
mes "Even if I understand him";
@@ -1597,63 +1670,59 @@ airplane_01,238,154,5 script Airship Captain#01 873,{
mes "That turns the propeller.";
mes "That's all. Did you understand?";
next;
- switch( select( "Um? Only that? There's no more?")) {
- case 1:
- mes "[Tarlock]";
- mes "Ha ha ha!";
- mes "I explained it roughtly to";
- mes "make it easier to understand";
- mes "by you. Still, you aren't";
- mes "pleased? I said it in plain";
- mes "english that everyone could";
- mes "understand.";
- next;
- mes "[Tarlock]";
- mes "Obviously, only with a steam";
- mes "is impossible to make this fly.";
- mes "Therefore, it uses an amplifier";
- mes "called ^ff0000Rune Mechanism^000000.";
- next;
- switch( select( "Uh? What's a Rune Mechanism?")) {
- case 1:
- mes "[Tarlock]";
- mes "It's a device that uses a";
- mes "magic stone as power source.";
- mes "However, I don't know how";
- mes "this work...";
- mes "I forgot the details probably";
- mes "because I didn't paid much attention.";
- next;
- mes "[Tarlock]";
- mes "The only I remember is";
- mes "that the energy is amplified";
- mes "while it passes through the";
- mes "Rune that is attached to a";
- mes "steam engine.";
- next;
- mes "[Tarlock]";
- mes "In fact, all this airship";
- mes "floats thanks to the power";
- mes "given by the stone, no";
- mes "exaggeration.";
- mes "It has really a strong power.";
- next;
- specialeffect2 EF_MAPPILLAR;
- mes "[Tarlock]";
- mes "Did you understand?";
- mes "I'll rest a little.";
- mes "I'm tired for reading";
- mes "and writing those long";
- mes "letters.";
- completequest 8035;
- set lght_air, 7;
- getexp 20000, 1000;
- close2;
- cutin "",255;
- end;
- }
- }
- } else if(lght_air == 7) {
+ select("Um? Only that? There's no more?");
+ mes "[Tarlock]";
+ mes "Ha ha ha!";
+ mes "I explained it roughtly to";
+ mes "make it easier to understand";
+ mes "by you. Still, you aren't";
+ mes "pleased? I said it in plain";
+ mes "english that everyone could";
+ mes "understand.";
+ next;
+ mes "[Tarlock]";
+ mes "Obviously, only with a steam";
+ mes "is impossible to make this fly.";
+ mes "Therefore, it uses an amplifier";
+ mes "called ^ff0000Rune Mechanism^000000.";
+ next;
+ select("Uh? What's a Rune Mechanism?");
+ mes "[Tarlock]";
+ mes "It's a device that uses a";
+ mes "magic stone as power source.";
+ mes "However, I don't know how";
+ mes "this work...";
+ mes "I forgot the details probably";
+ mes "because I didn't paid much attention.";
+ next;
+ mes "[Tarlock]";
+ mes "The only I remember is";
+ mes "that the energy is amplified";
+ mes "while it passes through the";
+ mes "Rune that is attached to a";
+ mes "steam engine.";
+ next;
+ mes "[Tarlock]";
+ mes "In fact, all this airship";
+ mes "floats thanks to the power";
+ mes "given by the stone, no";
+ mes "exaggeration.";
+ mes "It has really a strong power.";
+ next;
+ specialeffect2 EF_MAPPILLAR;
+ mes "[Tarlock]";
+ mes "Did you understand?";
+ mes "I'll rest a little.";
+ mes "I'm tired for reading";
+ mes "and writing those long";
+ mes "letters.";
+ completequest 8035;
+ set lght_air, 7;
+ getexp 20000, 1000;
+ close2;
+ cutin "",255;
+ end;
+ } else if (lght_air == 7) {
mes "[Tarlock]";
mes "Didn't I teach you before?";
mes "I won't explain such a long";
@@ -1661,7 +1730,7 @@ airplane_01,238,154,5 script Airship Captain#01 873,{
close2;
cutin "",255;
end;
- } else if(lght_air == 2) {
+ } else {
mes "[Tarlock]";
mes "Hahahah! Don't worry, I'll";
mes "tell you know this Airship";
diff --git a/npc/scripts_athena.conf b/npc/scripts_athena.conf
index 94a0c6d27..8a0a2d5b5 100644
--- a/npc/scripts_athena.conf
+++ b/npc/scripts_athena.conf
@@ -74,7 +74,10 @@ npc: npc/merchants/cashheadgear_dye.txt
// -------------------------- Airport ---------------------------
npc: npc/airports/airships.txt
npc: npc/airports/einbroch.txt
+npc: npc/airports/hugel.txt
+npc: npc/airports/izlude.txt
npc: npc/airports/lighthalzen.txt
+npc: npc/airports/rachel.txt
npc: npc/airports/yuno.txt
// --------------------------------------------------------------
// ------------------------- RE - Quests ------------------------
diff --git a/npc/warps/cities/izlude.txt b/npc/warps/cities/izlude.txt
index 2be7f8325..f2f1b6aaa 100644
--- a/npc/warps/cities/izlude.txt
+++ b/npc/warps/cities/izlude.txt
@@ -30,5 +30,5 @@ izlude_in,43,169,0 warp w219 2,3,izlude_in,64,169
izlude_in,65,84,0 warp iz01-1 5,2,izlude,113,147
izlude_in,74,158,0 warp iz04-1 3,2,izlude,52,136
izlude_in,87,169,0 warp iz05-1 2,3,izlude_in,111,169
-izlude,149,39,0 warp izair1 1,1,izlude,180,56
-izlude,176,56,0 warp lizair2 1,1,izlude,145,39
+izlude,149,39,0 warp izair1 1,1,izlude,182,56
+izlude,176,56,0 warp lizair2 1,1,izlude,145,40
diff --git a/npc/warps/other/airplane.txt b/npc/warps/other/airplane.txt
index 20025ba1f..83afc6893 100644
--- a/npc/warps/other/airplane.txt
+++ b/npc/warps/other/airplane.txt
@@ -25,7 +25,7 @@
//==========================================================================
//Einbroch - Airport
//==========================================================================
-einbroch,92,280,0 warp ein_ap01 1,1,airplane,224,64
+einbroch,92,281,0 warp ein_ap01 1,1,airplane,224,64
einbroch,64,234,0 warp ein_ap02 1,1,airport,138,51
airport,142,61,0 warp ein_ap02a 1,1,einbroch,62,246
airport,124,13,0 warp ein_ap03 1,1,airport,19,21
@@ -43,9 +43,9 @@ lhz_airport,160,14,0 warp lairp2 1,1,lhz_airport,48,20
lhz_airport,48,18,0 warp lairp2a 1,1,lhz_airport,162,14
lighthalzen,267,76,0 warp lairp3 1,1,lhz_airport,143,15
lhz_airport,143,13,0 warp lairp3a 1,1,lighthalzen,265,76
-lhz_airport,143,63,0 warp lairp4 1,1,lighthalzen,296,76
-lighthalzen,294,76,0 warp lairp4a 1,1,lhz_airport,143,60
-lighthalzen,308,76,0 warp lairp5 1,1,airplane,224,64
+lhz_airport,142,60,0 warp lairp4 1,1,lighthalzen,296,76
+lighthalzen,294,76,0 warp lairp4a 1,1,lhz_airport,143,53
+lighthalzen,308,76,0 warp lairp5 1,1,airplane,224,58
// -Juno Airport-
@@ -55,10 +55,10 @@ y_airport,160,14,0 warp jairp2 1,1,y_airport,48,20
y_airport,48,18,0 warp jairp2a 1,1,y_airport,162,14
yuno,53,214,0 warp jairp3 1,1,y_airport,143,23
y_airport,143,16,0 warp jairp3a 1,1,yuno,52,207
-yuno,52,238,0 warp jairp4a 1,1,y_airport,143,60
-yuno,55,238,0 warp jairp5a 1,1,y_airport,143,60
-yuno,8,261,0 warp jairp6 1,1,airplane_01,224,64
-yuno,97,260,0 warp jairp7 1,1,airplane,224,64
+yuno,47,240,0 warp jairp4a 1,1,y_airport,143,54
+yuno,59,240,0 warp jairp5a 1,1,y_airport,143,54
+yuno,6,261,0 warp jairp6 1,1,airplane_01,244,58
+yuno,96,261,0 warp jairp7 1,1,airplane,244,58
//=========================================================================