Set it as a task and make it check to see if it was done or active..
	Code:
	sub EVENT_SAY {
	my $word1 = quest::saylink("word1");
	my $word2 = quest::saylink("word2");
	$client->Message(7, "-");
	my $NPCName = $npc->GetCleanName();
	if (quest::istaskactive(225) || quest::istaskcompleted(225))
	{
		$client->Message(315, "$NPCName whispers to you, 'some quest text here.");
	}
	else
	{
		if ($text =~/Hail/i)
 And of course the rest of the quest code that follows.