// Evol scripts.
// Authors:
// Vasily_Makarov
// Description:
// Hidden NPC on a ship'ground hole.
//
// 2 bits array:
// ShipQuests
// Variable:
// ShipQuests_Alige
// Values:
// 0 first talking (before food)
// 1 already talked
000-2-1.gat,33,31,0,1 script Alige 301,1,1{
if (geta2(ShipQuests, ShipQuests_Alige) == 1) goto l_AskForFood;
mesn l("Hidden person");
mesq l("Hey, psst! You're not a sailor, right?");
menu
l("I am, who are you?"), -,
l("I'm not."), l_NeedHelp;
mesn l("Hidden person doesn't answer");
close;
l_NeedHelp:
mesn l("Hidden person");
mesq l("Good, good! ") + " " + l("Could you help me please? ") + " " + l("I beg you, please, pleeeease... ");
menu
l("Why not... but, who are you?") + l("And what kind of help do you need?"), l_CanHelp;
l("I don't have any time for this, sorry."), -;
mesn l("Hidden person");
mesq l("Damn you! You better not tell anyone that you've seen me!");
close;
l_CanHelp:
mesn;
mesq l("I'm called Alige, and I'm hiding here for few weeks.") + l("All that I had to eat were these berries... Berries... Berries...") + l("I'm losing my mind, I need something else to eat!");
next;
mesn;
mesq l("Can you bring me something which isn't a vegetable?") + l("And please, no berries. No more!");
menu
l("Okay, but what can you do for me?"), l_AboutReward;
l("But why are you hiding, aren't you a sailor?")+ " " + l("And why don't you go outside to talk?"), -;
l_ExplainHiding:
mesn;
mesq l("No, I'm not, I just wanted to travel across the seas for fun.") + " " + l("In this cave, you see, I have lots of fun.");
next;
mesn;
mesq l("Err, seriously, I just wanted to get to Artis, and I haven't got the money to pay for the ferry!");
next;
mesn;
mesq l("Please, don't tell people that you've seen me, I don't want to be thrown to sea as food for sharks or decapitated, not again!");
next;
if (geta2(ShipQuests, ShipQuests_Alige) == 1) goto l_AskForFood;
goto l_Accept;
l_AboutReward:
mesn;
mesq l("I'll share my berries with you, if you help me.");
next;
l_Accept:
menu
l("Ok, I'll help you."), l_Accepted,
l("I think I should report you to the crew members, I don't want to have any problems with them."), -;
goto l_DamnYou;
l_Accepted:
mesn;
mesq l("Perfect, which food did you get for me today?");
next;
goto l_GiveFood;
l_GiveFood:
getinventorylist;
set @i, 0;
set @j, 0;
makemenuloop:
set @id, @inventorylist_id[@i];
if ( (500 >= @id) || (@id >= 700) ) goto makemenunext;
set @menureference[@j], @id;
set @menulist$[@j], getitemname(@id);
set @j, @j+1;
makemenunext:
set @i, @i+1;
if (@i <= inventorylist_count)
goto makemenuloop;
set @menulist$[@j], l("I don't have anything good for you today.");
set @menureference[@j], -1;
menu @menulist$[0],-,@menulist$[1],-,....@menulist$[150],-;
set @id, @menureference[@menu-1];
if (@id == -1) goto l_DamnYou;
if ( (@id == 502) || (@id == 504) || (@id == 505) ) goto l_GiveReward;
if (@id == 507) goto l_NoMore;
mesn;
mesq("I dont want this, give me something else.");
goto l_GiveFood;
l_GiveReward:
mesn;
mesq l("Thank you so much! Here, have some berries...");
next;
getitem 507, rand(1,3);
close;
l_NoMore:
mesn;
mesq l("Arrr, don't give me more berries! I don't want them, stupid berries, stupid ... stupid ... stupid!");
next;
close;
l_AskForFood:
mesn;
mesq "Do you have anything for me today?";
next;
menu
l("Yes."), l_GiveFood,
l("But why are you hiding, aren't you a sailor?") + " " + l("And why don't you go outside to talk?"), l_ExplainHiding,
l("I think I should report you to the crew members, I don't want to have any problems with them."), l_DamnYou;
l_DamnYou:
mesn;
mesq l("Damn you! You better not tell anyone that you've seen me!");
close;
}