void OnTriggerExit(Collider other) { if (other.tag == "Player") { cameraRotation.RotateTo(CameraRotationDirection.ToVector(exitDirection)); } }
void OnTriggerStay(Collider other) { if (other.tag == "Player") { cameraRotation.RotateTo(CameraRotationDirection.ToVector(targetDirection)); } }
public void SetRotationDirection(CameraRotationDirection rotationDirection) { this.rotationDirection = rotationDirection; }
public CameraMoveLocation GetNextMoveDirection(CameraMoveLocation currentDirection, CameraRotationDirection rotationDirection) { CameraMoveLocation result = CameraMoveLocation.None; switch (currentDirection) { case CameraMoveLocation.Left: if (rotationDirection == CameraRotationDirection.Clockwise) { result = CameraMoveLocation.Top; } else { result = CameraMoveLocation.Bottom; } break; case CameraMoveLocation.Right: if (rotationDirection == CameraRotationDirection.Clockwise) { result = CameraMoveLocation.Bottom; } else { result = CameraMoveLocation.Top; } break; case CameraMoveLocation.Top: if (rotationDirection == CameraRotationDirection.Clockwise) { result = CameraMoveLocation.Right; } else { result = CameraMoveLocation.Left; } break; case CameraMoveLocation.Bottom: if (rotationDirection == CameraRotationDirection.Clockwise) { result = CameraMoveLocation.Left; } else { result = CameraMoveLocation.Right; } break; } if (!moveLocations.Contains(result)) { result = GetNextMoveDirection(result, rotationDirection); } return(result); }