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.