// Update is called once per frame void Update() { Controller.Update(); if (_nextCarStop.StartFrame != 0 && (_replayer.State == "Playing" || _replayer.State == "PlayingSloMo")) { if (Recrdng.Current.CurrFrame > _nextCarStop.StartFrame) { if (_nextCarStop.EndFrame > Recrdng.Current.CurrFrame && Random.Range(0, 2) > 1) { Controller.Reset(); Controller = new CamController_Stop(ActiveCam.transform, Car, _replayer, _nextCarStop); Controller.Init(false); } _nextCarStop = CarStops.FirstOrDefault(s => s.StartFrame > _nextCarStop.EndFrame); } else if (Controller.OutOfBounds()) { ChooseRandomCam(); } } else { if (Controller.OutOfBounds()) { ChooseRandomCam(); } } }
public void Init() { ActiveCam = cam1; goCam1.SetActive(true); Controller = new CamController_Follow(ActiveCam.transform, Car, _replayer); Controller.Init(false); _replayer.SetScreenRecCam(cam1); }
public void ChooseCam(int NewCamId) { _currentCamId = NewCamId; Controller.Reset(); switch (NewCamId) { case 16: //Debug.Log("Follow" + ActiveCam.name); Controller = new CamController_Follow(ActiveCam.transform, Car, _replayer); break; case 17: //Debug.Log("Wheelarch" + ActiveCam.name); Controller = new CamController_Wheelarch(ActiveCam.transform, Car, _replayer); break; case 18: //Debug.Log("Fish" + ActiveCam.name); Controller = new CamController_Driver(ActiveCam.transform, Car, _replayer); break; case 19: //Debug.Log("Zoom" + ActiveCam.name); Controller = new CamController_Zoom(ActiveCam.transform, Car, _replayer); break; case 20: //Debug.Log("Copter" + ActiveCam.name); Controller = new CamController_Drone(ActiveCam.transform, Car, _replayer); break; case 21: //Debug.Log("Chase" + ActiveCam.name); Controller = new CamController_RoadRunner(ActiveCam.transform, Car, _replayer, PlayerFrames); break; case 22: //Debug.Log("Hedgehog" + ActiveCam.name); Controller = new CamController_Hedgehog(ActiveCam.transform, Car, _replayer); break; case 23: //Debug.Log("Hedgehog" + ActiveCam.name); Controller = new CamController_Side(ActiveCam.transform, Car, _replayer); break; case 34: //Debug.Log("Ice" + ActiveCam.name); Controller = new CamController_Ice(ActiveCam.transform, Car, _replayer); break; } Controller.Init(false); //No Lerp cos we never coded it _nextCarStop = CarStops.FirstOrDefault(t => t.StartFrame > Recrdng.Current.CurrFrame); }
void OnDestroy() { Controller = null; Destroy(goCam1); }
/// <summary> /// Resets the current controller and starts the CamController_Follow /// </summary> public void ChooseFollow() { Controller.Reset(); Controller = new CamController_Follow(ActiveCam.transform, Car, _replayer); Controller.Init(false); }