oh ok
Add this instead then:
void OnStart()
{
AddEntityCollideCallback("Player", "scriptname", "functionname", true, 1);
}
void functionname(string &in asParent, string &in asChild, int alState)
{
FadeOut(0);
AddTimer("", 1.5, "TimerName");
PlaySoundAtEntity("", "guardian_activated.snt", "Player", 0.5f, false);
SetPlayerCrouching(true);
}
void TimerName(string &in asTimer)
{
TeleportPlayer("StartPosName");
AddTimer("", 0.0f, "TimerName2");
FadeIn(1.0f);
}
void TimerName2(string &in asTimer)
{
FadeRadialBlurTo(15.0f, 0.5f);
StartScreenShake(0.3f, 0.5f, 0.5f, 0.5f);
AddTimer("", 1.6f, "TimerName3");
GiveSanityDamage(5.0f, true);
PlaySoundAtEntity("", "insanity_imageflash01.snt", "Player", 0.5f, false);
PlaySoundAtEntity("", "water_lurker_hunt.snt", "Player", 0.5f, false);
}
void TimerName3(string &in asTimer)
{
StartScreenShake(0.0f, 0.0f, 0.0f, 0.0f);
FadeRadialBlurTo(0.0f, 0.5f);
SetPlayerCrouching(false);
}
EDIT: You can change the durration of the screen effects by changing the AddTimer("",
1.6f, "TimerName3"); To how many secs you want the screen effects to last.