using System.Collections; using System.Collections.Generic; using UnityEngine; public class IntroAreaStoryStates : MonoBehaviour { [SerializeField] private GameObject CarPlayerCameraTeleportPos; [SerializeField] private Vector3 playerDefaultCameraPos; public bool ChangePlayerCameraViewInCar = true; public bool EventTriggerOutOfTheCar_IsDone; public enum IntroAreaState { CutsceneInProgress, OutsideOfHouse } public IntroAreaState introAreaState = IntroAreaState.CutsceneInProgress; private void Start() { CarPlayerCameraTeleportPos = GameObject.Find("CarPlayerCameraTeleportPos"); playerDefaultCameraPos = PlayerManager.GetInstance().PlayerMainCamera.transform.localPosition; } public void Update() //TESTING DELETE AND ACCESS FROM GAME MANAGER. { IntroAreaStoryline(); } public void IntroAreaStoryline() { switch (introAreaState) { case IntroAreaState.CutsceneInProgress: if (ChangePlayerCameraViewInCar) { PlayerManager.GetInstance().PlayerMainCamera.transform.localPosition = CarPlayerCameraTeleportPos.transform.localPosition; ChangePlayerCameraViewInCar = false; } if (GameManagerEarly.GetInstance().DoAction) { PlayerManager.GetInstance().PlayerMainCamera.transform.localPosition = playerDefaultCameraPos; PlayerManager.GetInstance()._PlayerMovement._cameraDefaultPOS = playerDefaultCameraPos; introAreaState = IntroAreaState.OutsideOfHouse; GameManagerEarly.GetInstance().DoAction = false; } break; case IntroAreaState.OutsideOfHouse: if (!EventTriggerOutOfTheCar_IsDone) { //GameObject eventTriggerOutOfTheCar = GameObject.Find("EventTrigger (OutOfTheCar)"); //eventTriggerOutOfTheCar.GetComponent().Invoke(); EventTriggerOutOfTheCar_IsDone = true; } break; } } }