49 lines
1.3 KiB
C#
49 lines
1.3 KiB
C#
using System;
|
|
using UnityEngine;
|
|
using WI;
|
|
|
|
namespace Samkwang
|
|
{
|
|
public class ViewManager : MonoBehaviour
|
|
{
|
|
public OrbitalController controller;
|
|
public ViewMode previousViewMode;
|
|
public ViewMode currentViewMode;
|
|
public Action onChangedTourModeState;
|
|
|
|
public void Awake()
|
|
{
|
|
controller = FindAnyObjectByType<OrbitalController>();
|
|
}
|
|
public void ChangedView(ViewMode viewMode)
|
|
{
|
|
previousViewMode = viewMode;
|
|
currentViewMode = viewMode;
|
|
|
|
controller.SetViewMode(currentViewMode);
|
|
controller.LastPositioning(true);
|
|
}
|
|
public void ChangedTourMode()
|
|
{
|
|
if (currentViewMode != ViewMode.FirstPersonView)
|
|
{
|
|
if (currentViewMode == ViewMode.TopView)
|
|
{
|
|
controller.SetViewMode(ViewMode.PerspectiveView);
|
|
}
|
|
|
|
currentViewMode = ViewMode.FirstPersonView;
|
|
controller.enabled = false;
|
|
}
|
|
else
|
|
{
|
|
currentViewMode = previousViewMode;
|
|
controller.enabled = true;
|
|
controller.SetViewMode(previousViewMode);
|
|
}
|
|
onChangedTourModeState?.Invoke();
|
|
}
|
|
}
|
|
}
|
|
|