public void SetState(GameState s) { switch (s) { case GameState.BEFORE_FIRE: { cw.SetHMDOrigin(gunCameraPos); } break; case GameState.BULLET_MISS: { bullet.transform.parent = transform; bullet.transform.localPosition = Vector3.zero; bullet.transform.localRotation = Quaternion.identity; bullet.GetComponent <Rigidbody>().velocity = Vector3.zero; cw.SetCameraFollow(gunCameraPos); startRotation = transform.rotation.eulerAngles; x = 0; y = 0; } break; case GameState.CLEAR: { cw.SetHMDOrigin(GameClear); } break; } state = s; }