// TMW2 scripts.
// Authors:
// Jesusalva
// TMW Org.
// Description:
// Peetu
//
// NivalisQuest_BlueSage STRUCTURE
// FIELD 1:
// INVESTIGATION
// 1 - STBY OUTSIDE
// 2 - ACCESS GRANTED - But Peetu is crying too much
// 3 - Peetu was calmed down, go talk to Oskari about him
// 4 - Oskari is OK with peetu, but wanna hear from others. He also sends you
// to ask what Peetu happened
// 5 - Adultered ingredients seems the cause, report to Elias
// 6 - Elias is now worried about a visitor. Ask people about and report.
// 7 - If everyone found the visitor, confirm Elias the worries
// 8 - Elias sent you to Oskari to inform the issue. Blue Sage probably knew all along.
// will not advance unless everyone thinks Peetu is good.
// 9 - Oskari accepts the cause. Tells to report Peetu that it probably was
// a saboutage, to check if the Silk Cocoon really was there.
// 10 - Peetu confirmed the saboutage. Report to Blue Sage.
// 11 - Blue Sage accepted the evidence, and explains about other sages issues.
// It's not known who or what is behind this. He excuses for making you waste
// your time. He asks you to return to him later, as he needs to write letters.
// 12 - QUEST COMPLETE - You collected your reward
// Also picked up a letter for Frostia Mayor, about the incident (Main Story).
// FIELD 2:
// Bitwise (BS_QVISITOR)
// FIELD 3:
// Bitwise (BS_QHELPER)
020-7-1,122,27,2 script Peetu NPC_BLUESAGEWORKER_MA,{
function pWaiting;
function pIntro;
function pReflection;
function pInvestigation;
function pComplete;
.@q=getq(NivalisQuest_BlueSage);
if (.@q <= 4)
npctalk3 any(l("*sob sob*"), l("*crying*"));
switch (.@q) {
case 2:
pIntro();
break;
case 3:
pWaiting("Oskari");
break;
case 4:
pReflection();
break;
case 5:
case 6:
case 7:
case 8:
pWaiting("Oskari");
break;
case 9:
pInvestigation();
break;
case 10:
case 11:
pWaiting("Blue Sage");
break;
case 12:
pComplete();
break;
default:
warp "Save", 0, 0;
percentheal -100, -100;
end;
break;
}
close;
// Here we begin
function pWaiting {
.@name$=getarg(0, "##1##BBUG, REPORT ME: PEETU IS WAITING THE FLYING COW##0##b");
mesn;
mesc l("*sniff sniff*");
mesq l("I'm waiting for @@ feedback... Please go talk to them! %%S", .@name$);
close;
}
// Peetu is too upset with failing (yeah, he is that kind of perfectionist here).
// We should find a way to calm him down.
function pIntro {
mesn;
mesc l("*sniff sniff*");
mesq l("I'm waiting for ##1##BBUG, REPORT ME: PEETU IS WAITING THE FLYING COW##0##b feedback... Please go talk to them! %%S", .@name$);
close;
}
// Report that Oskari is not planning to fire him (yet), and is trying to understand
// what went wrong so it do not repeat.
function pReflection {
mesn;
mesc l("*sniff sniff*");
mesq l("I'm waiting for ##1##BBUG, REPORT ME: PEETU IS WAITING THE FLYING COW##0##b feedback... Please go talk to them! %%S", .@name$);
close;
}
// Peetu hurries back to check what happened. Wait 3 minutes in the library.
// He'll then say that in fact there was silk cocoon
function pInvestigation {
mesn;
mesc l("*sniff sniff*");
mesq l("I'm waiting for ##1##BBUG, REPORT ME: PEETU IS WAITING THE FLYING COW##0##b feedback... Please go talk to them! %%S", .@name$);
close;
}
// The crime was "solved"
function pComplete {
mesn;
mesq l("Oh, hey, welcome back, @@! Many thanks for helping me!", strcharinfo(0));
next;
mesn;
.@subject$=any(l("town finances"), l("house finances"), l("town damage by monsters"), l("library damage"), l("supply report"), l("magic book"), l("town overview"));
mesq l("I'm currently going over some of the household paperwork. Right now I'm inspecting the @@. The work never stops!", .@subject$);
close;
}
OnInit:
.sex=G_MALE;
.distance=5;
npcsit;
end;
}