Script: q_mos2_death
// The Miller's Other Son -- OnDeath for the cult leader (mos2_leader.utc).
// Advances every party-member PC in the area who is mid-quest (stage 1, or
// stage 2 after walking away) to stage 2 with outcome "fought" -- the boy is
// cut loose from the camp. Quest state lives in the "mos2" campaign DB per
// character, so it survives relogs and reboots.
void main()
{
object oKiller = GetLastKiller();
if (!GetIsPC(oKiller))
oKiller = GetMaster(oKiller);
if (!GetIsPC(oKiller))
return;
object oArea = GetArea(OBJECT_SELF);
object oMember = GetFirstFactionMember(oKiller, TRUE);
while (GetIsObjectValid(oMember))
{
if (GetArea(oMember) == oArea)
{
int nStage = GetCampaignInt("mos2", "stage", oMember);
int nOutcome = GetCampaignInt("mos2", "outcome", oMember);
if (nStage == 1 || (nStage == 2 && nOutcome == 3))
{
SetCampaignInt("mos2", "stage", 2, oMember);
SetCampaignInt("mos2", "outcome", 2, oMember);
AddJournalQuestEntry("bree_miller_son2", 4, oMember, FALSE, FALSE);
}
}
oMember = GetNextFactionMember(oKiller, TRUE);
}
}