// Update is called once per frame void Update() { if (checking1 == true) { if (check1.GetComponent <BoxTrigger>().GetState()) { if (RandOrScript == 0) { Guard1_.SetSeq(FinalMessage); } else { Guard1_.PlaySound(SCRIPTED[Random.Range(0, SCRIPTED.Length)]); } Guard2_.SetPath(path1); D1_.SetPath(path1); Guard2_.AnimTrigger(1, true); Sci1_.AnimTrigger(2, true); Sci1_.SetPath(path2); checking1 = false; checking2 = true; } } if (checking2 == true) { if (check2.GetComponent <BoxTrigger>().GetState()) { Jan_.AnimTrigger(2, true); Jan_.SetPath(path3); Sci2_.PlaySound(Scientistdiag); checking2 = false; } } }
void IntroUpdate() { if (ActiveTimer) { Timer -= Time.deltaTime; } if (runningAway) { RunawayTimer -= Time.deltaTime; } if (RunawayTimer <= 0.0f && runningAway == true) { if (EventState == -5) { Escape5(); } if (EventState == -4) { Escape4(); } if (EventState == -3) { Escape3(); } if (EventState == -2) { Escape2(); } if (EventState == -1) { Escape1(); } } if (Timer <= 0.0f && Start == false) { Timer = Timer1; Guard1_con.PlaySound(Dialogs[0], true); if (grabbed == false) { SCP_UI.instance.ShowTutorial("tutograb"); } Start = true; } if (grabbed == false && Item == null) { SCP_UI.instance.ShowTutorial("tutoinv1"); grabbed = true; } if (Timer <= 0.0f && StopTimer == false && Start == true) { if (EventState == -13) { EVRefuse3(); } if (EventState == -12) { EVRefuse2(); } if (EventState == -11) { EVRefuse1(); } if (EventState == 3) { Scene3(); StopTimer = true; } if (EventState == 2) { Scene2(); } if (EventState == 1) { Scene1_5(); } if (EventState == 0) { Scene1(); } } if (ActiveTimer2) { TimerSecondary -= Time.deltaTime; } if (TimerSecondary <= 0.0f && StopTimer2 == false) { if (EventState2 == 2) { AsyncScene_2(); } if (EventState2 == 1) { AsyncScene_1(); } } if (Check1 == true) { if (Trigger1.GetComponent <BoxTrigger>().GetState()) { Check1 = false; ActiveTimer = true; Scene1_6(); } } if (Check3 == true) { if (Trigger3.GetComponent <BoxTrigger>().GetState()) { if (!back1) { Guard1_con.PlaySound(Dialogs[5], true); back1 = true; } Guard1_con.ResumePath(); Guard1_con.StopRota(); Guard1_con.AnimTrigger(1, false); Guard1_con.StopLookAt(); Guard2_con.ResumePath(); LastState = EventState; Check3 = false; Check2 = true; ActiveTimer = true; runningAway = false; EventState = 3; } } if (Check2 == true) { if (!Trigger2.GetComponent <BoxTrigger>().GetState() && EventState != -1) { Guard1_con.StopSound(); Guard2_con.StopSound(); EventState = LastState; if (!back1) { RunawayTimer = 6; Guard1_con.PlaySound(Dialogs[2], true, true); } if (Conver != -1) { StopCoroutine(co); Conver = -1; } Guard1_con.SetLookAt(playerHead); ActiveTimer = false; ActiveTimer2 = false; runningAway = true; Guard1_con.SetRota(Player.transform); Guard2_con.SetLookAt(playerHead); Guard2_con.PausePath(); Guard1_con.PausePath(); Check2 = false; Check3 = true; } } if (Check4 == true) { if (Trigger4.GetComponent <BoxTrigger>().GetState()) { Guard1_con.StopPursuit(); Guard1_con.PlaySound(Gunshot); Player.GetComponent <Player_Control>().Death(0); GameController.instance.deathmsg = Localization.GetString("deathStrings", "death_intro"); Check4 = false; Check3 = false; Check2 = false; runningAway = false; Guard1_con.AnimTrigger(-1, true); } } }
// Update is called once per frame void LateUpdate() { if (eventstat == 0) { d2_.AnimTrigger(2, true); if (tri1.GetComponent <BoxTrigger>().GetState()) { eventstat = 1; Debug.Log("Door 2 switch"); door2.GetComponent <Object_Door>().DoorSwitch(); d1_.SetLookAt(Camera.main.transform); Timer = Timer1; ActiveTimer = true; } } if (check2 == true) { if (tri2.GetComponent <BoxTrigger>().GetState()) { Debug.Log("Closing door"); door1.GetComponent <Object_Door>().DoorSwitch(); sci_.PlaySound(Dialogs[1], true); sci_.AnimTrigger(-6); check2 = false; Timer = 4f; eventstat = 5; ActiveTimer = true; ActiveRefuse = false; StopTimer = false; guard_.StopRota(); d1_.StopLookAt(); d2_.StopLookAt(); } } if (check3 == true) { if (tri3.GetComponent <BoxTrigger>().GetState()) { guard_.SetLookAt(objPlayer.transform); guard_.PlaySound(guardExit[Random.Range(0, guardExit.Length)]); check3 = false; } } if (ActiveTimer) { Timer -= Time.deltaTime; } if (ActiveRefuse) { refuseTimer -= Time.deltaTime; if (refuseTimer <= 0) { switch (refusestat) { case 0: { sci_.PlaySound(Refuse[0], true); refusestat = 1; refuseTimer = refuseTimer2; guard_.SetRota(objPlayer.transform); d2_.SetLookAt(GameController.instance.playercache.DefHead); break; } case 1: { refusestat = 2; sci_.PlaySound(Refuse[1], true); refuseTimer = refuseTimer3; break; } case 2: { d1_.StopLookAt(); d2_.StopLookAt(); refusestat = 3; guard_.AnimTrigger(1, true); sci_.PlaySound(Refuse[2], true); Debug.Log("Another door opening, cause refuse"); door1.GetComponent <Object_Door>().DoorSwitch(); refuseTimer = refuseTimer4; break; } case 3: { guard_.PlaySFX(GeneralSFX[4]); GameController.instance.playercache.Death(0); ActiveRefuse = false; break; } } } } if (Timer <= 0.0f && StopTimer == false) { switch (eventstat) { case 1: { d1_.StopLookAt(); d2_.StopLookAt(); Debug.Log("Door should open"); door1.GetComponent <Object_Door>().DoorSwitch(); sci_.PlaySound(Dialogs[0], true); sci_.AnimTrigger(-6); Timer = Timer2; eventstat = 2; ActiveRefuse = true; refuseTimer = refuseTimer1; break; } case 2: { d1_.SetPath(path1); GameController.instance.PlayHorror(Horror[0], ata1, npc.none); eventstat = 3; Timer = 0.8f; break; } case 3: { d2_.SetPath(path2); eventstat = 4; Timer = Timer3; break; } case 4: { check2 = true; StopTimer = true; d1_.SetLookAt(GameController.instance.npcController.mainList[(int)npc.scp173].transform); d2_.SetLookAt(GameController.instance.npcController.mainList[(int)npc.scp173].transform); break; } case 5: { d1_.SetPath(path3); StartCoroutine(WaitForWalk()); eventstat = 6; Timer = 3f; break; } case 6: { Debug.Log("Door should open on chaos"); door1.GetComponent <Object_Door>().DoorSwitch(); check3 = true; sci_.PlaySound(Dialogs[2], true); sci_.AnimTrigger(-6); d2_.SetRota(door1.transform); d2_.StopLookAt(); StartCoroutine(SmallSequence()); eventstat = 7; Timer = Timer4; break; } case 7: { objPlayer.GetComponent <Player_Control>().FakeBlink(0.6f); lightmana.SetActive(false); d1_.PlaySound(classd2); eventstat = 8; Timer = 0.7f; d1_.AnimTrigger(-1, true); GameController.instance.npcController.mainList[(int)npc.scp173].transform.rotation = Quaternion.Euler(0, 90, 0); GameController.instance.npcController.mainList[(int)npc.scp173].Spawn(false, ata1.position); DecalSystem.instance.Decal(ata1.transform.position, new Vector3(90f, 0, 0), 2f, true, 0.4f, 1, 2); d1_.StopLookAt(); break; } case 8: { d2_.StopLookAt(); d2_.AnimTrigger(-5); d1_.PlaySFX(GeneralSFX[3]); lightmana.SetActive(true); sci2_.AnimTrigger(-4); sci_.PlaySFX(GeneralSFX[0]); eventstat = 9; Timer = 1f; GameController.instance.PlayHorror(Horror[1], null, npc.none); break; } case 9: { lightmana.SetActive(false); objPlayer.GetComponent <Player_Control>().FakeBlink(0.3f); eventstat = 10; Timer = 0.5f; GameController.instance.npcController.mainList[(int)npc.scp173].Spawn(false, ata2.position); DecalSystem.instance.Decal(ata2.transform.position, new Vector3(90f, 0, 0), 4f, true, 0.4f, 1, 0); d2_.AnimTrigger(-2, true); d2_.StopLookAt(); d2_.PlaySFX(GeneralSFX[3]); break; } case 10: { check3 = false; GameController.instance.npcController.mainList[(int)npc.scp173].Event_Spawn(true, ata2.transform.position); guard_.PlaySound(guardWhat[Random.Range(0, guardWhat.Length)]); sci_.PlaySFX(GeneralSFX[1]); lightmana.SetActive(true); sci2_.AnimTrigger(1, true); Timer = Timer5; eventstat = 11; break; } case 11: { lightmana.SetActive(false); objPlayer.GetComponent <Player_Control>().FakeBlink(0.4f); eventstat = 12; Timer = 0.7f; GameController.instance.npcController.mainList[(int)npc.scp173].transform.rotation = Quaternion.Euler(0, -90, 0); GameController.instance.npcController.mainList[(int)npc.scp173].Spawn(false, ata3.position); guard_.StopLookAt(); guard_.PlaySound(guardDies); guard_.SetRota(GameController.instance.npcController.mainList[(int)npc.scp173].transform); sci_.PlaySFX(GeneralSFX[5]); break; } case 12: { sci_.PlaySFX(GeneralSFX[2]); emelight.SetActive(true); guard_.AnimTrigger(1, true); Timer = 1.5f; eventstat = 13; ActiveTimer2 = true; if (GetComponent <ReflectionProbe>() != null) { RerenderProbe1.GetComponent <ReflectionProbe>().RenderProbe(); RerenderProbe2.GetComponent <ReflectionProbe>().RenderProbe(); } break; } case 13: { emelight.SetActive(false); objPlayer.GetComponent <Player_Control>().FakeBlink(0.4f); GameController.instance.npcController.mainList[(int)npc.scp173].Spawn(false, ataFinal.position); eventstat = 14; Timer = 0.7f; guard_.AnimTrigger(-2, true); guard_.PlaySFX(GeneralSFX[3]); sci_.PlaySFX(GeneralSFX[5]); sci_.PlaySFX(GeneralSFX[6]); StopTimer2 = true; flask.SetActive(false); break; } case 14: { objPlayer.GetComponent <Player_Control>().FakeBlink(0.6f); sci_.SetSeq(Alarm); guard_.StopRota(); objPlayer.GetComponent <Player_Control>().playerWarp((GameController.instance.WorldAnchor.transform.position + ((GameController.instance.WorldAnchor.transform.rotation * Quaternion.Inverse(TeleportAnchor.transform.rotation)) * (objPlayer.transform.position - TeleportAnchor.position))), GameController.instance.WorldAnchor.transform.eulerAngles.y - TeleportAnchor.transform.eulerAngles.y); d1_.puppetWarp(GameController.instance.WorldAnchor.transform.position + ((GameController.instance.WorldAnchor.transform.rotation * Quaternion.Inverse(TeleportAnchor.transform.rotation)) * (d1.transform.position - TeleportAnchor.position)), GameController.instance.WorldAnchor.transform.eulerAngles.y - TeleportAnchor.transform.eulerAngles.y); d2_.puppetWarp(GameController.instance.WorldAnchor.transform.position + ((GameController.instance.WorldAnchor.transform.rotation * Quaternion.Inverse(TeleportAnchor.transform.rotation)) * (d2.transform.position - TeleportAnchor.position)), GameController.instance.WorldAnchor.transform.eulerAngles.y - TeleportAnchor.transform.eulerAngles.y); guard_.puppetWarp(GameController.instance.WorldAnchor.transform.position + ((GameController.instance.WorldAnchor.transform.rotation * Quaternion.Inverse(TeleportAnchor.transform.rotation)) * (guard.transform.position - TeleportAnchor.position)), GameController.instance.WorldAnchor.transform.eulerAngles.y - TeleportAnchor.transform.eulerAngles.y); d1_.DeactivateCollision(); d2_.DeactivateCollision(); StopTimer = true; firstEvent.End(); if (GameController.instance.isAlive) { GameController.instance.DefaultAmbiance(); GameController.instance.DefMusic(); GameController.instance.doGameplay = true; GameController.instance.Action_QuickSave(); GameController.instance.SetMapPos(0, 10); GameController.instance.canSave = true; RenderSettings.fog = true; GameController.instance.CullerFlag = true; Destroy(introZone); } break; } } } if (ActiveTimer2) { TimerSecondary -= Time.deltaTime; } if (TimerSecondary <= 0.0f && StopTimer2 == false) { if (flask.activeSelf == true) { flask.SetActive(false); } else { flask.SetActive(true); } guard_.PlaySFX(GeneralSFX[4]); TimerSecondary = 0.1f; } }
public override void EventUpdate() { base.EventUpdate(); timer -= Time.deltaTime; if (timer <= 0) { switch (status) { case 0: { sci.SetPath(Path1); guard.PlaySound(Voice1, true); guard.SetRota(sci.gameObject.transform); timer = time1; status = 1; break; } case 1: { GameController.instance.GlobalSFX.PlayOneShot(vent); sci.PlaySound(Voice2, true); guard.SetRota(lookat); sci.SetRota(lookat); timer = time2; status = 2; break; } case 2: { GameController.instance.player.GetComponent <Player_Control>().FakeBlink(time3 + time4 + time5); timer = time3; status = 3; break; } case 3: { sci.PlaySFX(cronch); sci.AnimTrigger(-1, true); timer = time4; status = 4; break; } case 4: { guard.PlaySFX(cronch); guard.AnimTrigger(-2, true); GameController.instance.npcController.mainList[(int)npc.scp173].Event_Spawn(true, Spawn173.transform.position); GameController.instance.npcController.mainList[(int)npc.scp173].transform.rotation = Spawn173.transform.rotation; timer = time5; status = 5; break; } case 5: { EventFinished(); break; } } } }