For the events
GiveSanityDamage(float afAmount, bool abUseEffect);
"float afAmount" is how much damage you want to give.
"bool abUseEffect" is the tunnel vision the player goes through when he sees the event.
For forcing the player to look
StartPlayerLookAt(string& asEntityName, float afSpeedMul, float afMaxSpeed, string &asAtTargetCallback);
"string& asEntityName" is what the player will look at.
"float afSpeedMul" how fast the player turns their head
"float afMaxSpeed" how fast the max speed the player turns
"string &asAtTargetCallback" what string triggers when the player is centered on the target.
What they look like in use:
//25% Insanity given and the scared effect
GiveSanityDamage(25, true);
//Player would look at the entity named monster, nothing else happens immediately
StartPlayerLookAt("monster", 6, 6, "");