// TMW2 scripts.
// Authors:
// Qwerty Dragon
// Reid
// Jesusalva
// Description:
// Captain Nard dialogs.
// Nard is a fair merchant ship's captain.
// Original Nard's from Evol by Qwerty Dragon and Reid
002-3,36,25,0 script Nard NPC_NARD,{
showavatar NPC_NARD; // this is handled by avatars.xml
.@narrator = getq(General_Narrator);
L_Checker:
if (.@narrator) goto L_Travel;
if (getq(ShipQuests_Julia) >= 3) goto L_NotYet;
// Introduction
mesn;
mesq l("Hello.");
next;
mesq l("Let me introduce myself, I am Nard, captain of this ship.");
next;
mesq lg("I am pleased to see that you have woken up and are active. Elmo came here to tell me this good news!");
next;
mesn;
mesq l("Hehehe, he is a bit nervous, please forgive him, it is not everyday we find someone on the sea!");
next;
mesq l("So, how do you feel? I see that Juliet did a marvellous job! You look like you're in good health now.");
next;
L_Menu:
menu
lg("I feel ok."), L_Ok,
l("Who's this Juliet?"), L_Juliet,
lg("I'm a bit sick..."), -;
mes "";
mesn;
mesq l("Oh, I was going to ask you if you wanted to help the crew search for some food and explore the island out there.");
next;
L_MenuQuest:
menu
l("What do you need?"), -,
l("Is there a reward?"), L_NeedHead,
l("Wait, you never came here before?"), L_CandorIsland;
mes "";
mesn;
mesq l("Ship travels are not free. See if you can gather some money, and I'll bring you to Tulimshar!");
next;
showavatar NPC_ELMO;
setcamnpc "Elmo";
mesn l("Elmo");
mesq l("I, Elmo, captain's deputy, will help you to make the maximum possible money in Candor!");
next;
showavatar NPC_NARD;
mesn;
mesq l("Why we're going Tulimshar, you may ask? Because well, believe me, if you want to find out anything, the best place to ask around is Tulim!");
LOCATION$ = "Candor";
setq ShipQuests_Julia, 3;
next;
mesc b(l(".:: Main Quest 1-3 ::.")), 3;
msObjective(Zeny >= .@price, l("* Collect @@/@@ GP", Zeny, .@price));
// Referral program
if (#REFERRAL_PROG == 0 && $REFERRAL_ENABLED) {
next;
clear;
showavatar NPC_LOF_RICH;
mesc l("But before, a message from our developers!"), 3;
next;
mesn l("TMW2 Staff");
mesc l("Hello, and welcome to TMW2: Moubootaur Legends!"), 3;
next;
mesn l("TMW2 Staff");
mesc l("Did you came here by someone advise? If yes, write their name down here!"), 3;
mesc l("If this is not the case, just click on \"Send\"."), 3;
.@ref$="";
do
{
input .@ref$;
debugmes "Hercules is bugged: "+.@ref$;
mes "";
if (.@ref$ != "") {
.@ref=gf_accid(strip(.@ref$));
if (.@ref > 0) {
if (.@ref == getcharid(3)) {
mesn l("TMW2 Staff");
mesc l("Hahah, silly, that's yourself!"), 3;
mesc l("Try again!"), 3;
next;
.@ref$="";
} else {
#REFERRAL_PROG=.@ref;
getitembound FriendGift, 1, 1;
mesn l("TMW2 Staff");
mesc l("Well, welcome to the game! If you have any doubt, shout on #world for help!"), 3;
mesc l("Your friend also sent you a gift - open it when you get level 5!"), 3;
next;
}
} else {
mesn l("TMW2 Staff");
mesc l("Oops, there is nobody known as @@ on this game.", .@ref$), 3;
mesc l("Could you try again? There could be a typo!"), 3;
next;
.@ref$="";
}
} else {
.@ref$="None";
mesn l("TMW2 Staff");
mesc l("I see. Well, welcome to the game! If you have any doubt, shout on #world for help!"), 3;
next;
}
} while (.@ref$ == "");
showavatar NPC_NARD;
}
close;
L_NeedHead:
mes "";
mesn;
mesq l("You're pretty much stranded on this forsaken island if you don't help me!");
next;
mesq l("Also, I believe hard work always pay off.");
next;
goto L_MenuQuest;
L_Ok:
mes "";
mesn;
mesq l("Good to know.");
next;
mesq l("We have made a stop at a little island, before making it on to the port of Tulimshar.");
next;
mesq l("It would be good for you to do some exercise, the ship isn't big enough for that.");
next;
goto L_SpecialTask;
L_Juliet:
mes "";
mesn;
mesq l("You have an awful case of amnesia.");
next;
mesq l("She is the nurse and shipkeeper of this ship.");
next;
mesq lg("But most important, she is the one who took care of you when you were unconscious.");
next;
L_SpecialTask:
mesq l("I know that you are just starting to feel better, but I'd like you to explore the island we're currently at.");
next;
goto L_MenuQuest;
L_CandorIsland:
mes "";
mesn;
mesq l("I never said that. I come here frequently to trade. It is you who should explore the island.");
next;
mesq l("This is ##BCandor Island##b. A very small community lives here.");
next;
mesq l("If they were any bigger, monsters would come and kill everyone.");
next;
goto L_MenuQuest;
L_NotYet:
.@price=1200;
mesc b(l(".:: Main Quest 1-1 ::.")), 3;
if (Zeny >= .@price)
mesc l("* @@/@@ GP", Zeny, .@price), 2;
else
mesc l("* @@/@@ GP", Zeny, .@price), 9;
mes "";
select
rif(Zeny >= .@price, l("I've brought the money you've asked for.")),
l("Please excuse me, captain.");
mes "";
mesn;
if (Zeny >= .@price) {
mesq l("Ten, fifty, thousand... Yep, this is the amount I've asked for.");
next;
setq General_Narrator, 1;
Zeny = Zeny-.@price;
LOCATION$="Tulim";
mesq l("Set sail! We're going to Tulimshar!");
next;
showavatar;
setcam 0, 0;
mesc l("Some time later...");
next;
restorecam;
showavatar NPC_NARD; // this is handled by avatars.xml
mesn;
mesq l("Welcome to Tulimshar, @@!", strcharinfo(0));
next;
mesn;
mesq l("You can explore the city as you want, but if I were you, I would ##Btouch the Soul Menhir##b, north of here, to don't respawn at Candor.");
next;
mesn;
mesq l("Other than that, you can explore the city as you want, but as you had a memory loss, You should visit the townhall.");
next;
mesn;
mesq l("When you get out of the ship, it is the first building you'll see. Talk to ##BLua##b, she is an alliance representative.");
next;
mesn;
mesq l("The Alliance have records of everyone. And if you need another trip, talk to me!");
} else {
mesq l("You still haven't completed your tasks.");
mes "";
mesc l("You still need @@ GP for the trip to Tulimshar.", (.@price-Zeny));
}
close;
L_Travel:
// Current nard_reputation() value for 100% discount: 15
.@price=800;
.@price-=min(780, nard_reputation()*54);
mesn;
mesq l("Hi @@.", strcharinfo(0));
next;
mesq l("You are currently at @@.", LOCATION$);
mes "";
mes l("A ship travel will cost you @@ GP.", .@price);
if (ST_TIER == 8)
mesc l("What are you doing? Go talk to @@ and bring me a @@!", b("Elanore"), getitemlink(Lifestone));
if (Zeny >= .@price || ((ST_TIER == 7 || ST_TIER == 9) && gettimetick(2) < QUEST_ELEVARTEMPO)) {
menu
rif(Zeny >= .@price && LOCATION$ != "Candor", l("To Candor Island.")), L_TCandor,
rif(Zeny >= .@price && LOCATION$ != "Tulim", l("To Tulimshar.")), L_TTulim,
rif(ST_TIER == 7 && gettimetick(2) < QUEST_ELEVARTEMPO ,l("Help me, I need Jesusaves Grimorie!")), L_Tier2,
rif(ST_TIER == 9 && countitem(Lifestone) && gettimetick(2) < QUEST_ELEVARTEMPO ,l("Help me, I need Jesusaves Grimorie!")), L_Tier2Ok,
l("No, I'll save my money."), -;
} else {
mes l("You still need @@ GP to afford it.", (.@price-Zeny));
}
close;
L_TCandor:
Zeny=Zeny-.@price;
PC_DEST$="Candor";
mes "";
mesn;
mesq l("Candor Island, then? Yes, that is a pretty island, right?");
next;
mesq l("I was planning to go there soon, anyway. All aboard!");
close2;
addtimer nard_time(PC_DEST$), "#NardShip::OnEvent";
@timer_navio_running = 1;
warp "002-5", 39, 26;
end;
L_TTulim:
Zeny=Zeny-.@price;
PC_DEST$="Tulim";
@timer_navio_running = 1;
mes "";
mesn;
mesq l("Tulimshar, right? The oldest human city-state!");
next;
mesq l("I was planning to go there soon, anyway. All aboard!");
close2;
addtimer nard_time(PC_DEST$), "#NardShip::OnEvent";
@timer_navio_running = 1;
warp "002-5", 39, 26;
end;
L_Tier2:
mes "";
mesn;
mesq l("WHAT?! ARE YOU OUT OF MIND?!?!");
next;
mesn;
if (nard_reputation() < 8) {
mesq l("THAT GRIMORIE IS A SUPER DUPER MEGA UPER RARE BOOK, I CANNOT GIVE IT TO ANYBODY ASKING ME ABOUT!!");
next;
mesn;
mesq l("GET OUT OF HERE, YOUR NOBODY!");
close;
}
mesq l("That is a rare, precious book, which writes itself!");
next;
mesn;
mesq l("I cannot just give it to you for nothing. Run to Elanore and fetch me a @@. You need to make a new one, an old one I won't accept.", getitemlink(Lifestone));
ST_TIER=8;
close;
L_Tier2Ok:
mes "";
mesn;
mesc l("*tut*");
next;
inventoryplace JesusalvaGrimorium, 1;
delitem Lifestone, 1;
getitem JesusalvaGrimorium, 1;
getexp 200, 0;
ST_TIER=10;
mesn;
mesq l("Here, take it. If the mana goes out of your body, I'll have your class master to return the book to me.");
close;
L_Close:
close;
OnInit:
.sex = G_MALE;
.distance = 5;
end;
}