
Touched up the Airship scripts. Fixed up some content based on official files. git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14392 54d463be-8e91-2dee-dedb-b68131a5f0ec
1506 lines
41 KiB
Plaintext
1506 lines
41 KiB
Plaintext
//===== eAthena Script =======================================
|
|
//= The Airship System Script
|
|
//===== By: ==================================================
|
|
//= eAthena Dev Team
|
|
//===== Current Version: =====================================
|
|
//= 1.2
|
|
//===== Compatible With: =====================================
|
|
//= eAthena SVN 3422+(Requires jA Script System)
|
|
//===== Description: =========================================
|
|
//= The Airship System used in the official servers, however this
|
|
//= one is still about 25% custom and is missing some npcs.
|
|
//===== 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]
|
|
//============================================================
|
|
|
|
//============================================================
|
|
//= The Airship System (Juno -> Hugel -> Einbroch -> Lighthalzen -> repeat)
|
|
//============================================================
|
|
|
|
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;
|
|
end;
|
|
|
|
OnHide:
|
|
misceffect 16;
|
|
end;
|
|
OnUnhide:
|
|
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;
|
|
}
|
|
|
|
airplane,1,1,0 script EinYuno_Airship -1,{
|
|
OnInit:
|
|
while(1)
|
|
{
|
|
initnpctimer;
|
|
setnpctimer 0;
|
|
set $@airplanelocation,0;
|
|
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;
|
|
end;
|
|
OnTimer15000:
|
|
mapannounce "airplane","We are heading to Hugel.",bc_map,0xBA55D3;
|
|
end;
|
|
OnTimer30000:
|
|
mapannounce "airplane","We will arrive in Hugel shortly.",bc_map,0xBA55D3;
|
|
end;
|
|
OnTimer45000:
|
|
set $@airplanelocation,4;
|
|
enablenpc "#AirshipWarp-1";
|
|
enablenpc "#AirshipWarp-2";
|
|
donpcevent "#AirshipWarp-1::OnUnhide";
|
|
donpcevent "#AirshipWarp-2::OnUnhide";
|
|
mapannounce "airplane","Welcome to Hugel. Have a safe trip.",bc_map,0xBA55D3;
|
|
end;
|
|
OnTimer55000:
|
|
mapannounce "airplane","Currently, we are in Hugel. The Airship will leave shortly.",bc_map,0xBA55D3;
|
|
end;
|
|
OnTimer65000:
|
|
set $@airplanelocation,0;
|
|
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;
|
|
end;
|
|
OnTimer80000:
|
|
mapannounce "airplane","We are heading to Einbroch.",bc_map,0x00FF00;
|
|
end;
|
|
OnTimer95000:
|
|
mapannounce "airplane","We will arrive in Einbroch shortly.",bc_map,0x00FF00;
|
|
end;
|
|
OnTimer110000:
|
|
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;
|
|
end;
|
|
OnTimer120000:
|
|
mapannounce "airplane","Currently, we are in Einbroch. The Airship will take off shortly.",bc_map,0x00FF00;
|
|
end;
|
|
OnTimer130000:
|
|
set $@airplanelocation,0;
|
|
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;
|
|
end;
|
|
OnTimer145000:
|
|
mapannounce "airplane","We are heading to Lighthalzen.",bc_map,0xFF8600;
|
|
end;
|
|
OnTimer160000:
|
|
mapannounce "airplane","We will arrive in Lighthalzen shortly.",bc_map,0xFF8600;
|
|
end;
|
|
OnTimer175000:
|
|
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;
|
|
end;
|
|
OnTimer185000:
|
|
mapannounce "airplane","Currently, we are in Lighthalzen. The Airship will leave shortly.",bc_map,0xFF8600;
|
|
end;
|
|
OnTimer195000:
|
|
set $@airplanelocation,0;
|
|
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;
|
|
end;
|
|
OnTimer210000:
|
|
mapannounce "airplane","We are heading to Juno.",bc_map,0x70DBDB;
|
|
end;
|
|
OnTimer225000:
|
|
mapannounce "airplane","We will arrive in Juno shortly.",bc_map,0x70DBDB;
|
|
end;
|
|
OnTimer240000:
|
|
set $@airplanelocation,2;
|
|
enablenpc "#AirshipWarp-1";
|
|
enablenpc "#AirshipWarp-2";
|
|
donpcevent "#AirshipWarp-1::OnUnhide";
|
|
donpcevent "#AirshipWarp-2::OnUnhide";
|
|
mapannounce "airplane","Welcome to Juno. Have a safe trip.",bc_map,0x70DBDB;
|
|
end;
|
|
OnTimer250000:
|
|
mapannounce "airplane","Currently, we are in Juno. The Airship will leave shortly.",bc_map,0x70DBDB;
|
|
end;
|
|
OnTimer260000:
|
|
stopnpctimer;
|
|
}
|
|
}
|
|
|
|
//C4644E
|
|
|
|
//============================================================
|
|
//= Some normal NPCS (airplane)
|
|
//============================================================
|
|
|
|
airplane,240,64,5 script Exit#01::Exit2 857,{
|
|
end;
|
|
}
|
|
|
|
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,{
|
|
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.";
|
|
close;
|
|
}
|
|
|
|
airplane,250,58,2 script Airship Staff#airplane 67,{
|
|
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;
|
|
}
|
|
mes "[Airship Staff]";
|
|
mes "I am sorry, but I do not think that we have a passenger by that name.";
|
|
close;
|
|
}
|
|
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")) {
|
|
case 1:
|
|
mes "[Airship Staff]";
|
|
mes "When you see a broadcast";
|
|
mes "announcing that we have";
|
|
mes "arrived at your destination,";
|
|
mes "please use one of the exits";
|
|
mes "located at the north and";
|
|
mes "south ends of the Airship.";
|
|
next;
|
|
mes "[Airship Staff]";
|
|
mes "If you happen to miss";
|
|
mes "your stop, don't worry.";
|
|
mes "The Airship is constantly";
|
|
mes "en route and you'll get";
|
|
mes "another chance to arrive";
|
|
mes "to your intended destination.";
|
|
break;
|
|
case 2:
|
|
mes "[Airship Staff]";
|
|
mes "The Captain's Cabin";
|
|
mes "is located at the front";
|
|
mes "of the Airship. There, you";
|
|
mes "can meet the captain and";
|
|
mes "the pilot of the Airship.";
|
|
break;
|
|
case 3:
|
|
mes "[Airship Staff]";
|
|
mes "The Airship provides";
|
|
mes "various Mini Games for";
|
|
mes "the entertainment of all";
|
|
mes "our passengers. We invite";
|
|
mes "you to try your luck and skills";
|
|
mes "in the Airship's Mini Games~";
|
|
break;
|
|
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;
|
|
}
|
|
|
|
airplane,80,71,2 script Zerta#01airplane 834,{
|
|
mes "[Zerta]";
|
|
mes "Oh, hello adventurer.";
|
|
mes "I am currently on a";
|
|
mes "sacred journey, offering";
|
|
mes "prayer for the sake of the";
|
|
mes "Rune-Midgard continent.";
|
|
close;
|
|
}
|
|
|
|
airplane,65,63,4 script Maelin#01airplane 714,{
|
|
mes "[Maelin]";
|
|
mes "Um, this Airship is";
|
|
mes "to Lutie, isn't it? I've";
|
|
mes "waiting so long,";
|
|
mes "but I haven't heard any";
|
|
mes "broadcast about Lutie.";
|
|
close;
|
|
}
|
|
|
|
airplane,72,34,6 script Aanos#01airplane 702,{
|
|
mes "[Aanos]";
|
|
mes "Oh wooow~";
|
|
mes "The sky looks";
|
|
mes "so different and";
|
|
mes "pretty from up there!";
|
|
close;
|
|
}
|
|
|
|
airplane,221,158,2 script Pilot#airplane 852,{
|
|
if (hg_ma1 == 3) {
|
|
mes "[Pilot]";
|
|
mes "I wish that I could go drink a cold fresh beer.";
|
|
mes "Drinking is the goal of my life! Drinking gives me energy!";
|
|
mes "I am nothing without drinks!";
|
|
next;
|
|
mes "[Pilot]";
|
|
mes "But! Driving under the influence is not good.";
|
|
mes "But! That makes me want to drink more and more!";
|
|
emotion e_sob;
|
|
next;
|
|
switch(select("Do you know a passenger named Thierry?")) {
|
|
case 1:
|
|
break;
|
|
}
|
|
mes "[Pilot]";
|
|
mes "This uniform is";
|
|
mes "really dapper, but";
|
|
mes "it's way too thick to";
|
|
mes "wear around the Airship.";
|
|
next;
|
|
mes "[Pilot]";
|
|
mes "...";
|
|
mes "......";
|
|
mes "No one ever really";
|
|
mes "comes into this room.";
|
|
mes "And the captain IS a reindeer.^FFFFFF ^000000 I could just strip to my boxers.";
|
|
next;
|
|
emotion e_omg;
|
|
mes "[Pilot]";
|
|
mes "Wah!? Who is it!";
|
|
next;
|
|
mes "- ...He is not listening to you, at all. -";
|
|
close;
|
|
}
|
|
set .@pilot,rand(1,4);
|
|
if (.@pilot == 1) {
|
|
mes "[Pilot]";
|
|
mes "It's been sooo";
|
|
mes "long since I've";
|
|
mes "enjoyed a nice, cold";
|
|
mes "alcoholic brew. But the";
|
|
mes "job requires me to be as";
|
|
mes "clear headed as I can!";
|
|
next;
|
|
mes "[Pilot]";
|
|
mes "Always drink responsibly!";
|
|
mes "Still, I can't remember the";
|
|
mes "last time I had a real vacation";
|
|
mes "or even a day off. Yeap, some";
|
|
mes "booze, some chips, some TV";
|
|
mes "and serius R&R is in order.";
|
|
emotion e_sob;
|
|
}
|
|
else if (.@pilot == 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) {
|
|
mes "[Pilot]";
|
|
mes "You know, our captain's a";
|
|
mes "respectable guy. Him and";
|
|
mes "his brother are actually well";
|
|
mes "known in the aircraft industry.";
|
|
mes "Who knew reindeer made";
|
|
mes "such good captains?";
|
|
next;
|
|
mes "[Pilot]";
|
|
mes "Just between you";
|
|
mes "and me, I gotta tell";
|
|
mes "you, that Santa was onto";
|
|
mes "something, getting reindeers";
|
|
mes "and elves to work for him.";
|
|
mes "The man must be a genius!";
|
|
}
|
|
else {
|
|
mes "[Pilot]";
|
|
mes "You know, this whole";
|
|
mes "piloting thing in the air,";
|
|
mes "it's rather new, you know?";
|
|
mes "Yeah, they got this Airship";
|
|
mes "operation in a hurry.";
|
|
next;
|
|
emotion e_omg;
|
|
mes "[Pilot]";
|
|
mes "Still, they where real";
|
|
mes "serius, really thought";
|
|
mes "ahead. I mean, they had us";
|
|
mes "training while the Airships";
|
|
mes "were still being invented.";
|
|
mes "Isn't that freakin' crazy?!";
|
|
}
|
|
close;
|
|
}
|
|
|
|
//============================================================
|
|
//= The Airship System (Izlude -> Juno -> Rachel -> Repeat)
|
|
//============================================================
|
|
|
|
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;
|
|
end;
|
|
|
|
OnHide:
|
|
misceffect 16;
|
|
end;
|
|
OnUnhide:
|
|
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;
|
|
|
|
OnHide:
|
|
misceffect 16;
|
|
end;
|
|
OnUnhide:
|
|
misceffect 215;
|
|
end;
|
|
}
|
|
|
|
airplane_01,1,1,0 script YunoIzl_Airship -1,{
|
|
OnInit:
|
|
while(1)
|
|
{
|
|
disablenpc "Airship#airplane02";
|
|
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;
|
|
end;
|
|
OnTimer30000:
|
|
mapannounce "airplane_01","We will arrive in Izlude shortly.",bc_map,0x00FF00;
|
|
end;
|
|
OnTimer45000:
|
|
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;
|
|
end;
|
|
OnTimer55000:
|
|
mapannounce "airplane_01","Currently, we are in Izlude. The Airship will leave shortly.",bc_map,0x00FF00;
|
|
end;
|
|
OnTimer65000:
|
|
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 Juno.",bc_map,0x70DBDB;
|
|
end;
|
|
OnTimer80000:
|
|
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;
|
|
end;
|
|
OnTimer110000:
|
|
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;
|
|
end;
|
|
OnTimer120000:
|
|
mapannounce "airplane_01","Currently, we are in Juno. The Airship will take off shortly.",bc_map,0x70DBDB;
|
|
end;
|
|
OnTimer130000:
|
|
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 Rachel.",bc_map,0xFF8600;
|
|
end;
|
|
OnTimer145000:
|
|
mapannounce "airplane_01","We are heading to Rachel.",bc_map,0xFF8600;
|
|
end;
|
|
OnTimer160000:
|
|
mapannounce "airplane_01","We will arrive in Rachel shortly.",bc_map,0xFF8600;
|
|
end;
|
|
OnTimer175000:
|
|
set $@airplanelocation2,3;
|
|
enablenpc "#AirshipWarp-3";
|
|
enablenpc "#AirshipWarp-4";
|
|
donpcevent "#AirshipWarp-3::OnUnhide";
|
|
donpcevent "#AirshipWarp-4::OnUnhide";
|
|
mapannounce "airplane_01","Welcome to Rachel. Have a safe trip.",bc_map,0xFF8600;
|
|
end;
|
|
OnTimer185000:
|
|
mapannounce "airplane_01","Currently, we are in Rachel. The Airship will leave shortly.",bc_map,0xFF8600;
|
|
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;
|
|
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,250,58,2 script Airship Staff#airplane01 67,{
|
|
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")) {
|
|
case 1:
|
|
mes "[Airship Staff]";
|
|
mes "When you see a broadcast";
|
|
mes "announcing that we have";
|
|
mes "arrived at your destination,";
|
|
mes "please use one of the exits";
|
|
mes "located at the north and";
|
|
mes "south ends of the Airship.";
|
|
next;
|
|
mes "[Airship Staff]";
|
|
mes "If you happen to miss";
|
|
mes "your stop, don't worry.";
|
|
mes "The Airship is constantly";
|
|
mes "en route and you'll get";
|
|
mes "another chance to arrive";
|
|
mes "to your intended destination.";
|
|
break;
|
|
case 2:
|
|
mes "[Airship Staff]";
|
|
mes "The Captain's Cabin";
|
|
mes "is located at the front";
|
|
mes "of the Airship. There, you";
|
|
mes "can meet the captain and";
|
|
mes "the pilot of the Airship.";
|
|
break;
|
|
case 3:
|
|
mes "[Airship Staff]";
|
|
mes "The Airship provides";
|
|
mes "various Mini Games for";
|
|
mes "the entertainment of all";
|
|
mes "our passengers. We invite";
|
|
mes "you to try your luck and skills";
|
|
mes "in the Airship's Mini Games~";
|
|
break;
|
|
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;
|
|
}
|
|
|
|
|
|
airplane_01,50,66,5 script Apple Merchant#airplane 86,{
|
|
if (checkweight(1201,1) == 0) {
|
|
mes "- Wait a minute !! -";
|
|
mes "- Currently you're carrying -";
|
|
mes "- too many items with you. -";
|
|
mes "- Please try again -";
|
|
mes "- after you loose some weight. -";
|
|
close;
|
|
}
|
|
mes "[Meltz]";
|
|
mes "Welcome to Meltz'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.:Cancel.")) {
|
|
case 1:
|
|
mes "[Meltz]";
|
|
mes "Please enter the amount";
|
|
mes "of Apples that you wish to";
|
|
mes "buy. Each Apple is 15 zeny";
|
|
mes "and you can buy a maximum";
|
|
mes "of 500 at a time. Please enter";
|
|
mes "'0' to cancel your order.";
|
|
next;
|
|
while(1) {
|
|
input .@input,0,501;
|
|
set .@pay,.@input*15;
|
|
if (.@input == 0) {
|
|
mes "[Meltz]";
|
|
mes "Thanks for stopping";
|
|
mes "by my shop. Farewell!";
|
|
mes "Come by anytime when";
|
|
mes "you feel like having an";
|
|
mes "Apple to snack on~";
|
|
close;
|
|
}
|
|
else if (.@input < 0 && .@input > 500) {
|
|
mes "[Meltz]";
|
|
mes "You've entered a number";
|
|
mes "higher than the maximum";
|
|
mes "value of 500. Please enter";
|
|
mes "the number of Apples you";
|
|
mes "wish to purchase again.";
|
|
next;
|
|
}
|
|
else {
|
|
mes "[Meltz]";
|
|
mes "A total of ^FF0000" + .@input + "^000000 Apples";
|
|
mes "will cost you ^FF0000" + .@pay + "^000000 zeny.";
|
|
mes "Would you like to continue?";
|
|
next;
|
|
if (select("Yes:No") == 1)
|
|
break;
|
|
else {
|
|
mes "[Meltz]";
|
|
mes "Thanks for stopping";
|
|
mes "by my shop. Farewell!";
|
|
mes "Come by anytime when";
|
|
mes "you feel like having an";
|
|
mes "Apple to snack on~";
|
|
close;
|
|
}
|
|
}
|
|
}
|
|
if (Zeny < .@pay) {
|
|
mes "[Meltz]";
|
|
mes "I'm sorry, you don't have";
|
|
mes "enough money with you.";
|
|
mes "Please check your funds or";
|
|
mes "purchase less Apples.";
|
|
close;
|
|
}
|
|
else if (checkweight(512,.@input) == 0) {
|
|
mes "[Meltz]";
|
|
mes "Hmm, I don't think you've";
|
|
mes "got enough room to carry";
|
|
mes "this many Apples. You might";
|
|
mes "want to free up your inventory";
|
|
mes "space.";
|
|
close;
|
|
}
|
|
else {
|
|
set zeny,zeny-.@pay;
|
|
getitem 512,.@input; //Apple
|
|
mes "[Meltz]";
|
|
mes "Thanks for stopping by";
|
|
mes "my shop. I hope you enjoy";
|
|
mes "the flavor of these Apples~!";
|
|
close;
|
|
}
|
|
break;
|
|
case 2:
|
|
mes "[Meltz]";
|
|
mes "Okay, I'll need";
|
|
mes "^FF00003 Apples and 1 Empty Bottle^000000";
|
|
mes "to make 1 Apple Juice for you.";
|
|
mes "Would you like to proceed?";
|
|
next;
|
|
switch(select("Yes:No")) {
|
|
case 1:
|
|
if ((countitem(512) < 3) || (countitem(713) < 1)) {
|
|
mes "[Meltz]";
|
|
mes "I'm sorry, but you don't";
|
|
mes "have enough materials to";
|
|
mes "create a bottle of Apple Juice.";
|
|
mes "Remember, I need 3 Apples";
|
|
mes "and 1 Empty Bottle to do it.";
|
|
close;
|
|
}
|
|
else {
|
|
mes "[Meltz]";
|
|
mes "Thank you, please wait.";
|
|
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 "[Meltz]";
|
|
mes "There you go~";
|
|
mes "Please come again.";
|
|
close;
|
|
}
|
|
break;
|
|
case 2:
|
|
mes "[Meltz]";
|
|
mes "Thanks for stopping";
|
|
mes "by my shop. Farewell!";
|
|
mes "Come by anytime when";
|
|
mes "you feel like having an";
|
|
mes "Apple to snack on~";
|
|
close;
|
|
}
|
|
break;
|
|
case 3:
|
|
mes "[Meltz]";
|
|
mes "Thanks for stopping";
|
|
mes "by my shop. Farewell!";
|
|
mes "Come by anytime when";
|
|
mes "you feel like having an";
|
|
mes "Apple to snack on~";
|
|
break;
|
|
}
|
|
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 @index,rand(1,getarraysize($@textstringsa$))-1;
|
|
set @string1a$,$@textstringsa$[@index];
|
|
set @string1b$,$@textstringsb$[@index];
|
|
set @string1c$,$@textstringsc$[@index];
|
|
set @typingstring1$,$@compstring$[@index];
|
|
|
|
set @index2,rand(1,getarraysize($@textstringsa$))-1;
|
|
while (@index2 == @index) {
|
|
set @index2,rand(1,getarraysize($@textstringsa$))-1;
|
|
}
|
|
set @string2a$,$@textstringsa$[@index2];
|
|
set @string2b$,$@textstringsb$[@index2];
|
|
set @string2c$,$@textstringsc$[@index2];
|
|
set @typingstring2$,$@compstring$[@index2];
|
|
|
|
set @typingkeys,$@lengths[@index]+$@lengths[@index2];
|
|
set @start,gettime(3)*60*60+gettime(2)*60+gettime(1);
|
|
|
|
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,(gettime(3)*60*60+gettime(2)*60+gettime(1))-@start; //seconds taken
|
|
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) {
|
|
mes "[Pilot]";
|
|
mes "Longitude, 131 degrees east.";
|
|
mes "Latitude, 37 degrees north.";
|
|
mes "We're right on course, captain.";
|
|
} else if(.@pilot == 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) {
|
|
mes "[Pilot]";
|
|
mes "The Captain is a good";
|
|
mes "man and I can't think of";
|
|
mes "a finer person to command";
|
|
mes "this ship. Still, he's pretty";
|
|
mes "tough, a real slave driver.";
|
|
next;
|
|
mes "[^ff0000Tarlock^000000]";
|
|
mes "^ff0000Hey...!^000000";
|
|
mes "^ff0000Less chit-chat^000000";
|
|
mes "^ff0000and more piloting!^000000";
|
|
next;
|
|
mes "[Pilot]";
|
|
mes "R-right away, sir!";
|
|
mes "(See what I mean?)";
|
|
} else {
|
|
mes "[Pilot]";
|
|
mes "This uniform is";
|
|
mes "really dapper, but";
|
|
mes "it's way too thick to";
|
|
mes "wear around the Airship.";
|
|
next;
|
|
mes "[Pilot]";
|
|
mes "...";
|
|
mes "......";
|
|
mes "No one ever really";
|
|
mes "comes into this room.";
|
|
mes "And the captain IS a reindeer.";
|
|
mes "I could just strip to my boxers.";
|
|
next;
|
|
emotion e_omg;
|
|
mes "[Pilot]";
|
|
mes "Oh...! Hello there!";
|
|
mes "E-e-enjoying your flight?!";
|
|
}
|
|
close;
|
|
}
|
|
|
|
|
|
|
|
airplane_01,83,61,2 script Dianne#01airplane_01 72,2,2,{
|
|
mes "[Dianne]";
|
|
mes "It's so weird!";
|
|
mes "I went to visit the";
|
|
mes "Airship Captain and";
|
|
mes "all I saw was this";
|
|
mes "weird reindeer. Oh!";
|
|
mes "Do you think that...";
|
|
close;
|
|
|
|
OnTouch:
|
|
emotion e_sob;
|
|
end;
|
|
}
|
|
|
|
airplane_01,69,63,2 script Mendel#01airplane_01 55,{
|
|
mes "[Mendel]";
|
|
mes "As I expected, the";
|
|
mes "in-flight meals are";
|
|
mes "three star quality at best.";
|
|
mes "*Harrrumph* I really should";
|
|
mes "have brought my chef so that";
|
|
mes "I could enjoy a real meal.";
|
|
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,{
|
|
mes "[Swordsman Shimizu]";
|
|
mes "Finally, after five";
|
|
mes "years of waiting...";
|
|
mes "I can have my revenge!";
|
|
next;
|
|
mes "[Swordsman Shimizu]";
|
|
mes "I just...";
|
|
mes "Have to make sure that";
|
|
mes "I don't keep missing my";
|
|
mes "stop. But soon, very soon,";
|
|
mes "vengeance will be mine!";
|
|
close;
|
|
}
|
|
|
|
//============================================================
|
|
//= 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?";
|
|
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_01",224,64;
|
|
close;
|
|
}
|
|
if(Zeny >= 1200) {
|
|
set Zeny, Zeny - 1200;
|
|
warp "airplane_01",224,64;
|
|
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;
|
|
close;
|
|
}
|
|
if(Zeny >= 1200) {
|
|
set Zeny, Zeny - 1200;
|
|
warp "airplane",224,64;
|
|
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;
|
|
close;
|
|
}
|
|
mes "You don't have enough zeny.";
|
|
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.";
|
|
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;
|
|
}
|
|
|
|
//============================================================
|
|
//= Apple Gambling Function
|
|
//============================================================
|
|
|
|
function script applegamble {
|
|
|
|
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?";
|
|
close;
|
|
case 2:
|
|
mes "["+getarg(0)+"]";
|
|
mes "The rules for the Dice game";
|
|
mes "are pretty simple. First, you";
|
|
mes "place a bet by wagering Apples.";
|
|
mes "You can bet a maximum of 50";
|
|
mes "Apples at a time. To keep things";
|
|
mes "legal, I can only accept Apples.";
|
|
next;
|
|
mes "["+getarg(0)+"]";
|
|
mes "But hey, if all that zeny";
|
|
mes "is burning a hole in your";
|
|
mes "pocket, head over to Fruitz";
|
|
mes "and you can buy as many";
|
|
mes "Apples as you want, playah~";
|
|
next;
|
|
mes "["+getarg(0)+"]";
|
|
mes "Now, we begin with me";
|
|
mes "rolling wto 6-sided dice.";
|
|
mes "When it's your turn, you'll";
|
|
mes "roll two 6-sided dice. After";
|
|
mes "that, both of us will have the";
|
|
mes "option of rolling a third die.";
|
|
next;
|
|
mes "["+getarg(0)+"]";
|
|
mes "Now here's the important";
|
|
mes "thing. If your total is higher";
|
|
mes "than 12, you'll bust, meaning";
|
|
mes "that you lose. Otherwise, the";
|
|
mes "person with the higher total";
|
|
mes "is the winner. Got it?";
|
|
next;
|
|
mes "["+getarg(0)+"]";
|
|
mes "Now, you'll be the first";
|
|
mes "to decide whether or not";
|
|
mes "you'll roll the third die. Then,";
|
|
mes "depending on your result, I'll";
|
|
mes "roll my third die... Or maybe not.";
|
|
next;
|
|
mes "["+getarg(0)+"]";
|
|
mes "When you win, you'll";
|
|
mes "receive twice as many";
|
|
mes "Apples as you wagered.";
|
|
mes "But if we happen to tie, you";
|
|
mes "get the Apples that you bet";
|
|
mes "returned to you. Fair, right?";
|
|
close;
|
|
case 1:
|
|
break;
|
|
}
|
|
mes "["+getarg(0)+"]";
|
|
mes "Ooh, so you'll play with";
|
|
mes "me? Great! How many";
|
|
mes "Apples would you like to bet?";
|
|
mes "Remember, you can wager";
|
|
mes "up to 50 Apples. If you'd like";
|
|
mes "to cancel, please enter '0'.";
|
|
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){
|
|
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;
|
|
goto L_Input;
|
|
}
|
|
if(countitem(512)<@amount){
|
|
//more apples then in inventory
|
|
//-Improvised-
|
|
mes "["+getarg(0)+"]";
|
|
mes "Ooh...";
|
|
mes "You don't have that";
|
|
mes "many Apples with you,";
|
|
mes "now do you?";
|
|
close;
|
|
}
|
|
delitem 512,@amount;
|
|
mes "["+getarg(0)+"]";
|
|
mes "Good!";
|
|
mes "Now we can start";
|
|
mes "this game! I'll roll first~";
|
|
next;
|
|
mes "^0000FF*Rolling and rumbling*";
|
|
set @table1,rand(1,6);
|
|
set @table2,rand(1,6);
|
|
set @tablesub,@table1+@table2;
|
|
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.",-;
|
|
|
|
mes "^0000FF*Rolling and rumbling*";
|
|
set @player1,rand(1,6);
|
|
set @player2,rand(1,6);
|
|
set @playersub,@player1+@player2;
|
|
next;
|
|
mes "["+getarg(0)+"]";
|
|
mes strcharinfo(0)+",";
|
|
mes "you rolled a "+@player1+" and a "+@player2+",";
|
|
mes "giving you a total of ^FF0000"+@playersub+"^000000.";
|
|
next;
|
|
mes "["+getarg(0)+"]";
|
|
if(@playersub == @tablesub) {
|
|
mes "Well, well, well.";
|
|
mes "Both of us have a total";
|
|
mes "of "+@playersub+". Well, the ball's in";
|
|
mes "your court. Are you going";
|
|
mes "to roll your third die,";
|
|
mes strcharinfo(0)+"?";
|
|
} else if(@playersub > @tablesub) {
|
|
mes "Since my total is only ^0000FF"+@tablesub+"^000000,";
|
|
mes "you have the advantage for";
|
|
mes "now with your total of ^FF0000"+@playersub+"^000000. Do";
|
|
mes "you wanna roll one more die?";
|
|
mes "Remember, you'll bust if all three";
|
|
mes "of your dice total more than 12.";
|
|
} else if(@tablesub > @playersub) {
|
|
mes "Since my total is ^0000FF"+@tablesub+"^000000,";
|
|
mes "I have the advantage for";
|
|
mes "now with your total of ^FF0000"+@playersub+"^000000. Do";
|
|
mes "you wanna roll one more die?";
|
|
mes "Remember, you'll bust if all three";
|
|
mes "of your dice total more than 12.";
|
|
}
|
|
next;
|
|
if(select("Roll another dice.:Don't Roll.")==2){
|
|
mes "["+getarg(0)+"]";
|
|
mes "Not gonna roll, huh?";
|
|
if(@tablesub == @playersub) {
|
|
mes "You better hope I roll";
|
|
mes "too high and bust, or";
|
|
mes "I'll beat you for sure!";
|
|
mes "Okay, here goes nothing...";
|
|
next;
|
|
goto L_Table3;
|
|
} else if(@tablesub < @playersub) {
|
|
next;
|
|
mes "["+getarg(0)+"]";
|
|
mes "Alright, I see that you";
|
|
mes "don't want to risk rolling";
|
|
mes "higher than 12 and busting.";
|
|
mes "I'll go ahead and roll then.";
|
|
next;
|
|
goto L_Table3;
|
|
} else if(@tablesub > @playersub) {
|
|
//you have a lower sub total then table, and do not roll 3th -Improvised-
|
|
mes "["+getarg(0)+"]";
|
|
mes "Not gonna roll, huh?";
|
|
mes "Well, then I'm not";
|
|
mes "gonna roll either.";
|
|
next;
|
|
mes "["+getarg(0)+"]";
|
|
mes "That means that I";
|
|
mes "have a total of ^0000FF"+@tablesub+"^000000";
|
|
mes "wich beats your ^FF0000"+@playersub+"^000000.";
|
|
mes "I'm sorry, but you lose";
|
|
mes "this game, "+strcharinfo(0)+". Better";
|
|
mes "luck next time.";
|
|
}
|
|
close;
|
|
}
|
|
mes "^0000FF*Rolling and rumbling*";
|
|
set @player3,rand(1,6);
|
|
set @playersub,@playersub+@player3;
|
|
if(@playersub > 12) {
|
|
//player bust --Improvised--
|
|
next;
|
|
mes "["+getarg(0)+"]";
|
|
mes "Oh my... You rolled a ^FF000"+@player3+"^000000,";
|
|
mes "making your total ^FF0000"+@playersub+"^000000.";
|
|
mes "That's more then 12, meaning you bust.";
|
|
mes "Sorry, but you lose this";
|
|
mes "game, "+strcharinfo(0)+".";
|
|
close;
|
|
}
|
|
next;
|
|
mes "["+getarg(0)+"]";
|
|
mes "Oh hey! You rolled";
|
|
if(@playersub >= @tablesub) {
|
|
mes "a ^FF0000"+@player3+"^000000, giving you a total";
|
|
mes "of ^FF0000"+@playersub+"^000000. Now, if I don't";
|
|
mes "roll, I'll lose for sure!";
|
|
mes "I'm gonna go for it...";
|
|
next;
|
|
goto L_Table3;
|
|
} else if(@playersub < @tablesub) {
|
|
//player's sub together with 3th die is still too low
|
|
//--Improvised--
|
|
mes "a ^FF0000"+@player3+"^000000, giving";
|
|
mes "you a total of ^FF0000"+@playersub+"^000000.";
|
|
mes "Wich still isn't enough";
|
|
mes "to beat my ^0000FF"+@tablesub+"^000000.";
|
|
mes "Sorry, but you lose this";
|
|
mes "game, "+strcharinfo(0)+". Them's";
|
|
mes "the breaks, I suppose...";
|
|
close;
|
|
}
|
|
L_Table3:
|
|
mes "^0000FF*Rolling and rumbling*";
|
|
set @table3,rand(1,6);
|
|
set @tablesub,@tablesub+@table3;
|
|
next;
|
|
if(@tablesub > 12) {
|
|
mes "["+getarg(0)+"]";
|
|
mes "Eh? I rolled a ^0000FF"+@table3+"^000000, making";
|
|
mes "my total ^0000FF"+@tablesub+"^000000. I hate to say";
|
|
mes "it, but I gambled and lost.";
|
|
mes "Take your winnings before";
|
|
mes "I cry, "+strcharinfo(0)+"~!";
|
|
close2;
|
|
getitem 512,@amount*2;
|
|
end;
|
|
}
|
|
mes "["+getarg(0)+"]";
|
|
if(@tablesub < @playersub) {
|
|
mes "I rolled a "+@table3+", which";
|
|
mes "gives me a total of ^0000FF"+@tablesub+"^000000.";
|
|
mes "But... It's still not enough";
|
|
mes "to beat your ^FF0000"+@playersub+"^000000. It looks";
|
|
mes "like I can't compete with";
|
|
mes "you, "+strcharinfo(0)+"...";
|
|
close2;
|
|
getitem 512,@amount*2;
|
|
end;
|
|
} else if(@tablesub > @playersub) {
|
|
mes "I rolled a ^0000FF"+@table3+"^000000, giving";
|
|
mes "me a total of ^0000FF"+@tablesub+"^000000 which";
|
|
mes "beats your total of ^FF0000"+@playersub+"^000000.";
|
|
mes "Sorry, but you lose this";
|
|
mes "game, "+strcharinfo(0)+". Them's";
|
|
mes "the breaks, I suppose...";
|
|
close;
|
|
} else if(@tablesub == @playersub) {
|
|
//Result = tie, --Improvised--
|
|
mes "I rolled a ^0000FF"+@table3+"^000000, giving";
|
|
mes "me a total of ^0000FF"+@tablesub+"^000000, which";
|
|
mes "is the same as your total.";
|
|
mes "Well, this game didn't have a";
|
|
mes "winner or loser, "+strcharinfo(0)+".";
|
|
close2;
|
|
getitem 512,@amount;
|
|
end;
|
|
}
|
|
}
|