void Collide_Area(string &in asParent, string &in asChild, int alState)
{
StartPlayerLookAt("cross_small_metal_1", 20, 50, "");
SetEntityActive("servant_grunt_2" , true);
SetEntityActive("servant_grunt_1" , true);
SetEntityActive("servant_brute_1" , true);
}
In this block you do the actions like letting the player look at something and enable 3 grunts.
void action_step1(string &in asTimer)
{
FadeIn(20);
FadeOut(10);
CompleteQuest("Quest01", "Quest01");
AddTimer("delay_timer", 5, "action_step2");
}
Here you do some fading, put the quest to completed and you will go to action_step2 in 5 seconds. The only problem is that you will NEVER get to this in-game since 'action_step1' is never called.
To make that work, you should do something like:
AddTimer("Blah", 5, "action_step1"); in your very first function, namely: Collide_Area(). This will trigger the fades and the rest, 5 seconds after the grunts show up.
void action_step2(string &in asTimer)
{
ChangeMap("Paranoid.map", "PlayerSpawn1", "", "");
}
Here you will finally change map, and this will happen 5 seconds after you call action_step1, but since action_step1 isn't called, it won't change map.