// Update is called once per frame void Update() { if (InputManager.Instance.GetKeyDown(InputCode.Spectate)) { GetPlayerCamera(); if (spectateMode == SpectateMode.None) { spectateMode = SpectateMode.Free; PlayerCamera.SetActive(false); SpectatorCamera.SetActive(true); if (MoveSpectatorCamera != null) { StopCoroutine(MoveSpectatorCamera); } MoveSpectatorCamera = StartCoroutine(C_MoveInTime(PlayerObject.transform.position + transform.up * 2 - transform.forward * 5)); } else if (spectateMode == SpectateMode.Free) { spectateMode = SpectateMode.None; PlayerCamera.SetActive(true); SpectatorCamera.SetActive(false); } } CameraMovement(); UpdateCameraRotation(); }
private void Awake() { Instance = this; spectateMode = new SpectateMode(); SpectatorCapsule = GameObject.Instantiate(SpectatorCameraPrefab); SpectatorCamera = SpectatorCapsule.GetComponentInChildren <Camera>().gameObject; originalRotation = SpectatorCamera.transform.rotation; //SpectatorCamera.SetActive(false); SpectatorCamera.transform.position = Vector3.zero; }
public void FreeSpectate() { if (CurrentPlayer != null) { CurrentPlayer.Hide(false); } SpectateMode = SpectateMode.Free; _crosshair.SetActive(false); }
public void SetPlayer(PlayerGraphics playerGraphics) { if (CurrentPlayer != null) { CurrentPlayer.Hide(false); } CurrentPlayer = playerGraphics; CurrentPlayer.Hide(true); SpectateMode = SpectateMode.POV; _crosshair.SetActive(true); }
void CycleMode() { switch (SpectMode) { case SpectateMode.Pawn: SpectMode = SpectateMode.Free; break; case SpectateMode.Free: SpectMode = SpectateMode.Overview; break; case SpectateMode.Overview: SpectMode = SpectateMode.Pawn; break; } Cookie.Set("Mode", SpectMode); }
public override void Activated() { base.Activated(); Host.AssertClient(); LookDistance = Cookie.Get("LookDistance", LookDistance); SpectMode = Cookie.Get("Mode", SpectMode); LookAngles = Rot.Angles(); FovOverride = 80; Pos = CurrentView.Position; Rot = CurrentView.Rotation; // Update new positions also. //Update(); }