Script: q_shf_finish
// q_shf_finish -- fires on Halmir's induction line (prsg_conv), reached
// by handing over the tuft. Stage 2 -> 3 (final, never resets), journal
// End, Charm of the Carrock + XP; the tuft is consumed (plot flag
// cleared first -- plot items resist DestroyObject). Hardened: only
// fires from stage 2 with the tuft in hand, so the reward cannot be
// re-earned by re-running the dialogue. (roadmap: shifter-quest)
#include "q_shf_inc"
void main()
{
object oPC = GetPCSpeaker();
if (QSHF_GetStage(oPC) != QSHF_STAGE_TUFT) return;
object oTuft = GetItemPossessedBy(oPC, QSHF_TUFT_TAG);
if (!GetIsObjectValid(oTuft)) return;
SetPlotFlag(oTuft, FALSE);
DestroyObject(oTuft);
QSHF_SetStage(oPC, QSHF_STAGE_DONE);
AddJournalQuestEntry(QSHF_QUEST, 3, oPC, FALSE, FALSE);
GiveXPToCreature(oPC, QSHF_XP);
CreateItemOnObject(QSHF_CHARM_RES, oPC, 1);
if (!GetIsObjectValid(GetItemPossessedBy(oPC, QSHF_CHARM_TAG)))
SendMessageToPC(oPC,
"Your pack was full -- the Charm of the Carrock lies at "
+ "your feet.");
}