// Evol scripts.
// Authors:
// Qwerty Dragon
// Reid
// Description:
// Captain Nard dialogs.
// Nard does the introduction with a small quest.
// This quest is meant to teach the player how to use a weapon,and to bring food to the ship.
// 4 bits array:
// ShipQuests
// Variable:
// 0 ShipQuests_Nard
// 1 ShipQuests_Gugli
// 2 ShipQuests_ChefGado
// Values:
// 00 Introduction of the boxes and Nard. This is displayed when the player never spoke to Nard or his box.
// 01 Nard spoke and gave access to the outdoor of the ship.
// 02 Completed the Gugli quest.
// 03 ChefGado Quest accepted.
// 04 ChefGado Quest completed and "Introduction" chapter finalized.
// 05 Reward taken from the box.
// 10 Never talked with Gugli.
// 11 Gugli gives you the task.
// 12 Gave all of the boxes to Gugli.
// Size = 5
000-2-3,25,26,0 script Nard 406,{
set .@nard, getq(ShipQuests_Nard);
set .@gugli, getq(ShipQuests_Gugli);
set .@gado, getq(ShipQuests_ChefGado);
L_Checker:
if (.@gado > 3 && .@nard == 3) goto L_ChefQuestComplete;
if (.@nard == 2) goto L_ChefQuestStart;
if (.@nard == 3) goto L_ChefQuestGiven;
if (.@nard == 4) goto L_Reward;
if (.@nard > 4) goto L_Already;
if (.@gugli == 2) goto L_Done;
if (.@nard == 1) goto L_NotYet;
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;
setcamnpc "Elmo";
mesn "Elmo";
mesq l("Oh... Err, yes I did, or, well, good day to you!");
next;
restorecam;
mesn;
mesq l("Hehehe, he is a bit nervous, please forgive him, it is not everyday we have a new member in the crew!");
next;
mesq l("So, how do you feel? I see that Julia did a marvelous job! You look like you're in good health now.");
next;
L_Menu:
menu
lg("I feel ok."), L_Ok,
l("Who's this Julia?"), L_Julia,
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;
mes "";
mesn;
mesq l("Oh! I like that sort of answer!");
next;
mesq g(l("We need manpower on the island... Oh forgive me, women are also welcome, of course."),
l("We need manpower on the island."));
next;
goto L_NeedContent;
L_NeedHead:
mes "";
mesn;
L_NeedContent:
mesq l("Sure, there is a reward for your task.");
next;
mesq l("Our crew is like a family, and if you agree to help us, I would like to invite you to join our family!");
next;
mesq l("What? It's not a good reward?");
next;
mesq l("Oh well. I'll also give you one of these hats from the box near you, but only after you complete your task!");
next;
mesq l("I give you this key, it opens all the doors on this ship.");
next;
mesq l("Now go outside and talk with Gugli, he'll tell you what we need.");
next;
callfunc "InventoryPlace", 718, 1;
setq ShipQuests_Nard, 1;
getitem "JohanneKey", 1;
close;
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 Artis.");
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_Julia:
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 to give you a special task.");
next;
goto L_MenuQuest;
L_NotYet:
mesn;
mesq l("You still haven't completed your tasks.");
close;
L_Done:
mesn;
mesq l("Hi @@.", strcharinfo(0));
next;
mesq l("Elmo and Gugli told me that you did all of the tasks outside, congrats!");
setq ShipQuests_Nard, 2;
next;
goto L_ChefQuestRedir;
L_ChefQuestStart:
mesn;
mesq l("Elmo told me you are now considered family and are numbered among us in our activities on the island. I do so very much appreciate the efforts you did down there.");
next;
L_ChefQuestRedir:
mesq l("Unfortunately, we still need help from you. This time it will be a delicate task, here onboard.");
next;
mesq l("Elmo brought reports to me about some frictions between my old and new lieutenants. You probably already met Julia and Gado the Chef.");
next;
mesq l("They are each valued individuals and I need them both. In the past, I probably made my share of mistakes. I regret good management is so difficult. I was wondering if you could investigate and... Sort out this situation.");
next;
menu
l("Of the two of them, who has 'good' on their side?"), -;
mes "";
mesq l("I do not want to go pointing my finger at someone. I want to be honorable and fair, and I sense the same quality in you, so I put my trust in you. I am sure you will be able to judge and solve this troubling situation.");
setq ShipQuests_Nard, 3;
close;
L_ChefQuestGiven:
mesn;
mesq l("It seems you still have some work to do.");
close;
L_ChefQuestComplete:
mesn;
mesq l("Congratulations!");
next;
mesq l("You are now officially part of my crew! Thanks again for your help.");
next;
mesq l("Take your reward from the box next to my desk!");
next;
menu
l("I will take it! Thank you captain!"), -;
setq ShipQuests_Nard, 4;
getexp 50, 0;
// Need to add a skill for the crew at this line.
mes "";
mesn "Narrator";
mes col(l("This is it, the end of the Second Beta Release of Evol Online!"), 9);
next;
mes col(lg("We hope you liked this introduction and to see you again in our future releases!"), 9);
next;
mes col(l("The adventure begins!"), 9);
close;
L_Reward:
mesn;
mesq l("Hey! There's a reward for you in the box next to me!");
close;
L_Already:
mesn;
mesq l("Sorry, I don't need any help right now. Come back later.");
close;
OnInit:
setnpcsex 1;
end;
}