public void UpdateSimulation(bool forceUpdate = false) { if (OnSimulation || forceUpdate) { if (layout == null) { layout = transform.GetComponent <LayoutPath>(); } if (camActual == null) { foreach (var cam in Camera.allCameras) { if (cam.name == "ReplayActual") { camActual = cam; } else if (cam.name == "ReplayNext") { camNext = cam; } } } layout.GetPositionOnPath(Distance); //GameObject.Find("CarSimulator").hideFlags = HideFlags.HideInInspector; GameObject.Find("CarSimulator").transform.position = layout.PosOnPath; if (camList.Count == 0) { Sort(true); } int i = 0; foreach (var item in camList) { if (i == currentCam) { ReplayCamActual = item.Value.GetComponent <ReplayCamera>(); camActual.transform.position = item.Value.transform.position; camActual.fieldOfView = ReplayCamActual.Fov; CamActualName = item.Value.name; //ActualFocalLength = ReplayCamActual.FocalLength; } if (i == currentCam + 1) { ReplayCamNext = item.Value.GetComponent <ReplayCamera>(); camNext.transform.position = item.Value.transform.position; camNext.fieldOfView = ReplayCamNext.Fov; CamNextName = item.Value.name; //NextFocalLength = ReplayCamNext.FocalLength; } i++; } if (!ReplayCamActual.IsFixed) { camActual.transform.LookAt(layout.PosOnPath); } else { camActual.transform.localRotation = ReplayCamActual.transform.localRotation; } if (!ReplayCamNext.IsFixed) { camNext.transform.LookAt(layout.PosOnPath); } else { camNext.transform.localRotation = ReplayCamNext.transform.localRotation; } if (Distance < 0.0f) { Distance = 0.0f; } if (Distance > layout.Length) { Distance = layout.Length; } // check the camera changin' if (Distance > ReplayCamNext.StartDistance && ReplayCamNext.StartDistance != -1) { currentCam++; if (camList.Count <= currentCam) { currentCam = camList.Count - 1; } } } }
public override void Start() { #region Init GUI if (Camera == null) { Debug.Log("Camera Master cannot find camera"); } JoinHost = gameObject.GetComponent <GUIJoinHost>(); if (JoinHost == null) { Debug.Log("Camera Master cannot find GUI script for join/host"); } MainMenu = gameObject.GetComponent <GUIMainMenu>(); if (MainMenu == null) { Debug.Log("Camera master could not find GUI script for main menu"); } SelectTeam = gameObject.GetComponent <GUISelectTeam>(); if (SelectTeam == null) { Debug.Log("Camera Master cannot find GUI script for select"); } ExitMenu = gameObject.GetComponent <GUIExitMenu>(); if (ExitMenu == null) { Debug.Log("Camera Master cannot find GUI script for exit"); } HostMenu = gameObject.GetComponent <GUIHostMenu>(); if (HostMenu == null) { Debug.Log("Camera Master cannot find GUI script for host"); } OptionsMenu = gameObject.GetComponent <GUIOptionsMenu>(); if (OptionsMenu == null) { Debug.Log("Camera Master cannot find GUI script for Options"); } LoadingScreen = gameObject.GetComponent <GUILoadingScreen>(); if (LoadingScreen == null) { Debug.Log("Camera Maser cannot find GUI script for loading screen"); } ChadCam = gameObject.GetComponent <ChadCam>(); if (ChadCam == null) { Debug.Log("Camera Master cannot find ChadCam"); } else { ChadCam.enabled = false; } SpectatorCam = gameObject.GetComponent <SpectatorCam>(); if (SpectatorCam == null) { Debug.Log("Camera Master cannot find SpectatorCam"); } else { SpectatorCam.enabled = false; } Hud = gameObject.GetComponent <ChadHud>(); if (Hud == null) { Debug.Log("Camera Master could not find Hud"); } ReplayCam = gameObject.GetComponent <ReplayCamera>(); ReplayCam.enabled = false; #endregion #region Chad Hats string settingsHat = UserSettings.GetSetting("Hat"); if (settingsHat != null) { SelectedHat = System.Convert.ToInt32(settingsHat); } else { SelectedHat = (int)(Random.Range(0.0f, 1.0f) * (HatManager.Instance.Hats.Count - 2)) + 1; settingsHat = SelectedHat.ToString(); UserSettings.AddOrUpdateAppSetting("Hat", settingsHat); } if (ChadMainMenu != null) { ChadMMHat = ChadMainMenu.GetComponent <Hatter>(); ChadMMHat.SetHat(SelectedHat); } if (ChadTeam1 != null) { ChadT1Hat = ChadTeam1.GetComponent <Hatter>(); ChadT1Hat.SetHat(SelectedHat); } if (ChadTeam1 != null) { ChadT2Hat = ChadTeam2.GetComponent <Hatter>(); ChadT2Hat.SetHat(SelectedHat); } #endregion SetState(CAM_STATE.MAIN_MENU); }