/// Evol scripts.
// Author:
// gumi
// Quest states:
// [1] 0 - cannot do the quest
// [1] 1 - can do the quest
// [1] 2 - talked to inspector (1) <= start
// [1] 3 - talked to old woman (1)
// [1] 4 - talked to old woman (2)
// [1] 5 - talked to inspector (2)
// [1] 6 - talked to troupe leader (1)
// [1] 7 - talked to inspector (3)
// [1] 8 - talked to old man
// [1] 9 - talked to old woman (3)
// [1] 10 - talked to inspector (4)
// [1] 11 - talked to old woman (4)
// [1] 12 - talked to malek
// [1] 13 - searched the bookcase
// [1] 14 - talked to inspector (5)
// [1] 15 - talked to troupe leader (2) <= reward
// [1] 16 - talked to inspector (6) <= reward, end
// [2] unused
// [3] unused
// [t] unused
// Description:
// Old Lady in the flower field, Robberies in Hurnscald.
008-1,231,114,0 script Old Woman NPC_OLD_LADY,{
function is_inspector {
return (getequipcardid(EQI_HEAD_MID, 0) == NavyBlueCottonDye /*&&
getequipcardid(EQI_HEAD_LOW, 0) == NavyBlueCottonDye*/); // TODO / FIXME: remove the /* */ whenever we have cotton pants
}
function oldwoman_ask {
speech(4,
l("Hello deary."));
selectd(
l("Have you seen anything strange lately?"),
l("Do you know anything about the recent robberies?"));
.@q = getq(.quest_inspector);
if (!is_inspector())
{
speech(l("Yes, but I'm only talking to the inspector himself!"));
close2;
if (.@q < 3)
setq(.quest_inspector, 3);
end;
}
if (.@q == 2 || .@q == 3)
{
speech(
l("I saw someone sneaking around town wearing a theater mask."),
l("It looked like one of the masks used by the troupe that was in town recently."));
close2;
setq(.quest_inspector, 4);
}
else if (.@q == 10)
{
speech(
l("I've remembered something else."),
l("The night the troupe left, I saw someone with a theater mask take a large satchel out of town."),
l("He was heading north."));
close2;
setq(.quest_inspector, 11);
}
end;
}
function oldwoman_alibi {
speech(4,
l("Hello deary."));
selectd(
l("Was your husband with you at home all night the last night that the troupe was in town?"));
speech(
l("Yes, we were both at home all night."));
close2;
setq(.quest_inspector, 9);
end;
}
function oldwoman_filler {
npctalk3(l("I hope you catch that naughty person!"));
end;
}
// OnTalk:
switch (getq(.quest_inspector))
{
case 2:
case 3: oldwoman_ask; break;
case 4:
case 5:
case 6:
case 7: oldwoman_filler; break;
case 8:
case 9: oldwoman_alibi; break;
case 10: oldwoman_ask; break;
}
// initial intro
if (BaseLevel < 40)
npctalk3(l("Watch out for these flowers. They don't like to be messed with."));
else
npctalk3(l("Hello deary."));
end;
OnInit:
.quest_inspector = HurnscaldQuests_Inspector;
.quest_debug = .quest_inspector;
.sex = G_FEMALE;
.distance = 1; // this npc has bad hearing
.speed = 2000; // this npc is very old
// TODO: move graph (after the Hurnscald map is finalized)
////////// UNFINISHED //////////
////////////////////////////////
// REMOVE THIS CODE WHEN THIS //
// NPC IS NO LONGER A WIP //////
////////////////////////////////
//if (!debug) disablenpc(.name$);
///////// UNFINISHED ///////////
end;
}