// Evol scripts.
// Authors:
// 4144
// Qwerty Dragon
// Vasily_Makarov
// Jesusalva
// Description:
// Allows to change language and talks about what happened to him.
// Modified by Jesusalva for TMW2
// 2 Bits Array:
// ShipQuests
// Variables:
// 0 ShipQuests_Julia
// 1 ShipQuests_ChefGado
// 2 ShipQuests_Nard
// Values:
// Julia:
// 10 Default, no quest given.
// 01 Need to see Julia.
// 02 Has been registered by Julia.
// Gado:
// 10 Default, no quest given.
// 11 Quest accepted.
// 12 Ingredients collected, ready to poison Julia.
// 13 Julia poisoned.
// 14 Quest complete. Chef Gago wins.
// 15 Quest complete. Julia wins (poison dish returned).
// 16 Quest complete. Julia wins.
// Nard:
// 20 Introduction of the boxes and Nard. This is displayed when the player never spoke to Nard or his box.
// 21 Nard spoke and gave access to the outdoor of the ship.
// 22 Completed the Gugli quest.
// 23 ChefGado Quest accepted.
// 24 ChefGado Quest completed and "Introduction" chapter finalized.
// 25 Reward taken from the box.
002-3,27,24,0 script Juliet#TMW2 NPC_JULIA,2,10,{
function ynMenu {
if (select(l("Yes, I do."), l("No, none.")) == 1) {
return;
}
closedialog;
}
function poisonJulia {
mes "";
mesn;
mesq l("Seems yummy! Let me taste it!");
next;
mesq l("Hmmm, hm... *cough*, *cough*, *burp*, *cough*. What... What is that?!... *cough*, *burp*... Damn Gado... *cough*");
if (countitem(PoisonedDish) > 0) delitem PoisonedDish, 1;
setq ShipQuests_ChefGado, 3;
close;
}
function gotoSleep {
speech S_FIRST_BLANK_LINE | S_LAST_NEXT,
l("You already did enough for us, follow Nard's advice and get some rest."),
l("We are at half a day from our final destination, by the time that you wake up I'm sure that we will be there!"),
l("Do you have any other questions for me?");
ynMenu;
return;
}
function heardRumors {
mes "";
mesn;
mesq l("You shouldn't believe every tale drunken sailors tell you.");
next;
select
l("Let's say the person who told me about that is well respected on this ship and never drunk.");
mes "";
mesn;
mesq l("Hahaha! All sailors aboard this ship are always drunk... Well... Except... Wait, what?! Nard told you?!");
next;
mesq l("Doesn't he like the way I'm taking care of his ship? Everything is clean and tidy with me, rightful lieutenant of La Johanne.");
next;
mesq l("I give tasks to every single sailor, all day long. That should make him happy!");
next;
select
l("Well... I don't think it is the best way to rule a ship. Think about it."),
l("In fact, everything seems to work perfectly under your guidance. Nard has made the right choice.");
if (@menu == 1)
{
closedialog;
end;
}
mes "";
mesn;
mesq l("I'm glad you're on my side.");
next;
mesq l("Take this money as a reward for your nice words.");
setq ShipQuests_ChefGado, 6;
Zeny += 100;
message strcharinfo(0), l("You receive @@ GP!", 100);
getexp 8, 0;
close;
}
function gotRegrets {
mes "";
mesn;
mesq l("Why? And who should you bring it back to?");
next;
select
l("Ehm... He was really upset because of some past stories.");
mes "";
mesn;
mesq l("Gado! That coward lives in the past, I will ask Nard to punish him, again!");
next;
mesq l("Take this money for your wise choice. But do not try it again. The open sea has been merciful with you once... Do not further tempt the fates!");
setq ShipQuests_ChefGado, 5;
Zeny += 200;
message strcharinfo(0), l("You receive @@ GP!", 200);
getexp 15, 0;
close;
}
function basicSkill {
mes "";
mesn;
mesq l("Let me check into it...");
next;
adddefaultskills;
mesq l("Here you go, everything is fixed.");
emotion E_HAPPY;
next;
mesq l("Do you have any other questions for me?");
next;
ynMenu;
return;
}
function chooseLang {
mes "";
mesn;
mesq l("Of course! Tell me which language you speak and I will change the note on the ship passenger list.");
next;
asklanguage(LANG_IN_SHIP);
mes "";
mesn;
mesq l("Ok, done.");
if (getq(ShipQuests_Julia) == 2)
{
next;
mesq l("Do you have any other questions for me?");
next;
ynMenu;
return;
}
next;
mesq l("I'm sure that you've got some questions for me, feel free to ask them, but first I need to tell you the rules of proper social conduct on board.");
mesq l("Here they are.");
next;
narrator S_LAST_NEXT,
l("There is a paper with some rules written on it.");
GameRules 8 | 4;
mesn;
mesq l("Oh, and I almost forgot! Do not give the password of your room to anybody! I am the only one who has the other key and I won't ask for yours so keep it secret and try not to use the same password for any other room in the future.");
next;
mesq l("If you want to read this page again, there is a copy up on the left wall.");
next;
mesq l("You can also read The Book of Laws at any time to see the rules.");
next;
mesq l("I think I'm done with that now. Do you have any questions?");
next;
setq ShipQuests_Julia, 2;
return;
}
function whereAmI {
mes "";
mesn;
mesq l("You're on a ship, we're on our way to the oldest human city, Tulishmar.");
next;
mesq l("We should be there in a few days. For now, you can relax on the ship, or visit the island we're docked at! Its a small island, but a good place to get some exercise and stretch your legs.");
next;
mesq l("Do you have any other questions for me?");
next;
ynMenu;
return;
}
function whatHappened {
mes "";
mesn;
mesq l("We thought that you could help us understand this, all we know is that we found you cast in the sea, adrift on your raft.");
next;
mesq lg("You were in bad shape, you should be happy we found you before the sea killed you.");
next;
//select
// l("Sorry, but I can't tell you anything about that."),
// l("Nothing, sorry.");
mes "";
mesn;
mesq l("Did you have any other questions for me?");
next;
ynMenu;
return;
}
function readRules {
mes "";
mesn;
mesq l("Of course, they are on the left wall, go have a look at them.");
next;
mesq l("Do you have any other questions for me?");
next;
ynMenu;
return;
}
function mainMenu {
do
{
.@q2 = getq(ShipQuests_ChefGado);
.@q3 = getq(ShipQuests_Nard);
.@q4 = getq(General_Narrator);
selectd
rif(.@q3 == 5 && .@q4 < 1, l("What can I do now?")),
rif(.@q3 == 3 && .@q2 == 0, l("I heard rumors about some old hostilities between you and Gado. Are they true?")),
rif(.@q2 == 2 && countitem(PoisonedDish), l("Well... No wait, I have something for you but you shouldn't eat it... I'm taking it back to the kitchen.")),
rif(.@q2 == 2 && countitem(PoisonedDish), l("I have brought you a tasty present for your delicate mouth.")),
rif(getskilllv(NV_BASIC) < 6, l("Something is wrong with me, I can't smile nor sit.")),
lg("I made a mistake, I would like to change my language."),
l("Could you explain to me where I am?"),
l("What happened to me?"),
l("Can I read these rules again?"),
l("Nothing, sorry.");
switch (@menu)
{
case 1: gotoSleep; break;
case 2: heardRumors; break;
case 3: gotRegrets; break;
case 4: poisonJulia; break;
case 5: basicSkill; break;
case 6: chooseLang .@s$; break;
case 7: whereAmI; break;
case 8: whatHappened; break;
case 9: readRules; break;
case 10: closedialog; end;
}
} while (1);
}
mesn;
mesq lg("Hello dear!");
next;
mesq l("What do you want today?");
next;
mainMenu;
OnTouch:
.@q = getq(ShipQuests_Julia);
if (.@q > 1) end;
checkclientversion;
mesn;
mesq l("Hi, nice to see you!");
next;
mesq l("My name is Juliet, it is me who took care of you after we found you in the sea.");
next;
mesq lg("I'm glad to see you're okay.");
next;
if (getq(ShipQuests_Julia) < 2)
{
mesq l("I'm sure that you've got some questions for me, feel free to ask them, but first I need to tell you the rules of proper social conduct on board.");
mesq l("Here they are.");
next;
narrator S_LAST_NEXT,
l("There is a paper with some rules written on it.");
GameRules 8 | 4;
mesn;
mesq l("Oh, and I almost forgot! Do not give the password of your room to anybody! I am the only one who has the other key and I won't ask for yours so keep it secret and try not to use the same password for any other room in the future.");
next;
mesq l("If you want to read this page again, there is a copy up on the left wall.");
next;
mesq l("You can also read The Book of Laws at any time to see the rules.");
next;
mesq l("I think I'm done with that now. Do you have any questions?");
next;
setq ShipQuests_Julia, 2;
}
//mesq lg("Could I ask you what your native language is? A sailor told me you're Russian, but another one told me you're French... I'm a bit lost. I will register you on the ship passenger list just after that.");
//next;
//chooseLang;
mainMenu;
end;
OnInit:
.sex = G_FEMALE;
.distance = 10;
.quest_debug = ShipQuests_Julia;
}