So you don't want the npc to have the option available intill the level is finished right?
You would have a level controller script. In the level controller script you can have an eventstate start and have it set to false. When the mission is completed it changes the eventstate to true. Then you have your pawn waiting for the eventstate to become true, once it does the conversation becomes available.
scripting_lc.s wrote:
WaitFlag[()
{
self.ThinkTime = 0.1;
if(GetEventState("ForceCamera1")=false)
{ self.think = "CheckDistance"; }
else
{ self.think = "WaitFlag"; }
}]
scripting_virgil.s wrote:
Spawn[()
{
//Console(true);
SetEventState("ForceCamera1", true);
SetHudDraw(false);
Scale(1.15);
MoveForward("Walk", SPEED, 45, "");
RotateMove("", SPEED, SPEED, 0, -40, 0, "");
MoveForward("", SPEED, 100, "");
RotateMove("", SPEED, SPEED, 0, -70, 0, "");
ShowTextDelay(1, "Nout", "Idle", "Hello,<CR>My name is Nout.", FONT, 2, "", 0, -150, "left", 255);
ShowTextDelay(2, "Nout", "Idle", "This is a small demo showing<CR>some of the new scripting features", FONT, 2, "", 0, -150, "left", 255);
ShowTextDelay(3, "Nout", "Idle", "Note the multi-line feature<CR>and alignments in this text!", FONT, 2, "", 0, -150, "left", 255);
ShowTextDelay(4, "Nout", "Idle", "Just sit back and watch...", FONT, 2, "", 0, -150, "left", 255);
SetFlag(1, true); //Start up Rob to walk in
NewOrder("WaitForRob");
}]
and instead of doing it like they did and having the level controller wait you could have the pawn wait.
You also might try using flags.
I hope that helps.