void OnStart() { RemoveItem("lantern_1"); SetPlayerSanity(25); MovePlayerHeadPos(-0.5, -1.3, -1.1, 2, 2); SetPlayerMoveSpeedMul(1.0f); SetPlayerRunSpeedMul(1.0f); PlayGuiSound("22_end.ogg", 1.5f); SetPlayerActive(false); FadeOut(0); FadePlayerRollTo(65, 20, 20); AddTimer("activate_player", 9, "FadeIn"); FadeImageTrailTo(3, 1); AddEntityCollideCallback("Player", "ScriptArea_1", "Questik", true, 1); AddEntityCollideCallback("Player", "ScriptArea_8", "Agresor", true, 1); AddEntityCollideCallback("Player", "ScriptArea_9", "Agresor1", true, 1); AddEntityCollideCallback("Player", "ScriptArea_10", "Nic", true, 1); AddEntityCollideCallback("Player", "ScriptArea_4", "Quest", true, 1); SetEntityPlayerInteractCallback("dvere_1", "aktivacia", true); } void FadeIn(string &in timer_name) { FadeIn(5); SetLanternDisabled(true); AddTimer("Start", 6, "WakeUp"); } void WakeUp(string &in timer_name) { if (timer_name == "Start") { AddTimer("MoveHead", 2, "WakeUp"); } else if (timer_name == "MoveHead") { FadeImageTrailTo(0, 1); MovePlayerHeadPos(-0.5, -0.5, -1.1, 2, 2); FadePlayerRollTo(0, 1.7, 500); AddTimer("ActivatePlayer", 2, "WakeUp"); } else if (timer_name == "ActivatePlayer") { MovePlayerHeadPos(0, 0, 0, 2, 2); SetPlayerActive(true); AddQuest("Quest", "Quest2"); } } void OnEnter() { AddEntityCollideCallback("Player", "ScriptArea_2", "hmota", true, 1); AddEntityCollideCallback("Player", "Pozrenie", "pozreniesa", true, 1); SetEntityConnectionStateChangeCallback("lever_small01_2", "func_shelf"); SetEntityConnectionStateChangeCallback("lever_small01_1", "func_shelf"); AddEntityCollideCallback("paka", "paka1", "pakaa", true, 1); SetMoveObjectState("safety_normal_vert_1", 0); AddUseItemCallback("", "kluc_1", "dvere_1", "UsedKeyOnDoor", true); AddUseItemCallback("", "key_tower_2", "prison_1", "odomknutie", true); SetEntityCallbackFunc("lantern_1", "OnPickup"); } void pozreniesa(string &in asParent, string &in asChild, int alState) { StartPlayerLookAt("dlato", 5, 5, ""); PlayGuiSound("insanity_monster_roar03.ogg", 1.0f); AddTimer("monstertimer", 1, "monstertimer"); } void monstertimer(string &in asTimer) { StopPlayerLookAt(); } void hmota(string &in asParent, string &in asChild, int alState) { SetPropActiveAndFade("slime_3way_3", true, 2); SetPropActiveAndFade("slime_6way_8", true, 2); PlayGuiSound("guardian_activated3.ogg", 1.0f); PlayGuiSound("react_sigh3.ogg", 1.0f); } void Agresor1(string &in asParent, string &in asChild, int alState) { SetEntityActive("servant_brute_1", true); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_1", 1.0f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_2", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_3", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_4", 5.001f, "idle_extra1.anm"); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_5", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_6", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_7", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_8", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_9", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_10", 5.001f, "idle_extra2.anm"); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_11", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_12", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_13", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_14", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_15", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_16", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_17", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_18", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_19", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_20", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_21", 0.001f, ""); AddEnemyPatrolNode("servant_brute_1", "PathNodeArea_22", 0.001f, ""); } void Nic(string &in asParent, string &in asChild, int alState) { PlayGuiSound("scare_wall_stomp2.ogg", 1.0f); } void Agresor(string &in asParent, string &in asChild, int alState) { PlayGuiSound("notice02.ogg", 1.0f); SetEnemyDisableTriggers("servant_brute_1", false); } void OnPickup(string &in asEntity, string &in type) { SetLanternDisabled(false); } void aktivacia(string &in asEntity) { SetEntityActive("ScriptArea_1", true); } void Questik(string &in asParent, string &in asChild, int alState) { AddTimer("monstertimer1", 0.5, "monstertimer1"); } void monstertimer1(string &in asTimer) { AddQuest("Quest", "Quest_3"); } void Quest(string &in asParent, string &in asChild, int alState) { CompleteQuest("Quest", "Quest2"); GiveSanityBoostSmall(); } void func_shelf(string &in asEntity, int alState) { if (alState == 1) { SetMoveObjectState("safety_normal_vert_1",1.0f); PlaySoundAtEntity("", "quest_completed.snt", "shelf_move_1", 0, false); return; } } void odomknutie(string &in asItem, string &in asEntity) { SetSwingDoorLocked("prison_1", false, true); PlaySoundAtEntity("", "unlock_door", "prison_1", 0, false); RemoveItem("key_tower_2"); } void UsedKeyOnDoor(string &in asItem, string &in asEntity) { SetSwingDoorLocked("dvere_1", false, true); PlaySoundAtEntity("", "unlock_door", "dvere_1", 0, false); CompleteQuest("Quest", "Quest_3"); RemoveItem("kluc_1"); } void pakaa(string &in asParent, string &in asChild, int alState) { SetEntityActive("lever_small01_2", true); SetEntityActive("lever_small_mount_1", false); SetEntityActive("paka", false); } void OnLeave() { StopMusic( 0, 70); }