예제 #1
0
 public void Initialize(SceneType sceneType)
 {
     UIManager = GameManager.Inst.UIManager;
     if (sceneType == SceneType.Space)
     {
         UIManager.HideAllPanels();
         State            = new UIStateUndocking(this);
         Cursor.lockState = CursorLockMode.Locked;
         Cursor.lockState = CursorLockMode.None;
         if (GameManager.Inst.PlayerProgress.SpawnStationType == StationType.Station)
         {
             GameManager.Inst.UIManager.FadePanel.SetBlackBGAlpha(1f);
             GameManager.Inst.UIManager.FadePanel.FadeIn(0.6f);
         }
         else if (GameManager.Inst.PlayerProgress.SpawnStationType == StationType.JumpGate)
         {
             GameManager.Inst.UIManager.FadePanel.SetWhiteBGAlpha(1f);
             GameManager.Inst.UIManager.FadePanel.WhiteFadeIn(0.3f);
         }
     }
     else if (sceneType == SceneType.Station)
     {
         State = new UIStateDocking(this);
         GameManager.Inst.UIManager.FadePanel.FadeIn(0.6f);
         GameManager.Inst.CameraController.SetCameraBlur(1000, false);
     }
 }
예제 #2
0
 public void AddState(UIStateBase state)
 {
     if (!StateDic.ContainsKey(state.GetType()))
     {
         StateDic.Add(state.GetType(), state);
     }
     if (StateDic.Values.Count == 1)
     {
         curState = state;
     }
 }
예제 #3
0
 public void DeleteState(UIStateBase state)
 {
     if (StateDic.ContainsKey(state.GetType()))
     {
         StateDic.Remove(state.GetType());
     }
     else
     {
         Debug.Log("The state you want to remove does not exist!");
     }
 }
예제 #4
0
 public void ChangeState(System.Type type)
 {
     curState.OnStateExit();
     if (StateDic.ContainsKey(type))
     {
         if (curState.GetType() == type)
         {
             curState.OnStateStart();
         }
         else
         {
             curState = StateDic[type];
             curState.OnStateStart();
         }
     }
     else
     {
         Debug.Log("The state you want to change does not exist!");
     }
 }
예제 #5
0
 public void RunActions()
 {
     current = null;
     controller.ExecuteActions();
 }
예제 #6
0
	public void Initialize()
	{
		UIManager = GameManager.Inst.UIManager;
		State = new UIStateNormal(this);
	}
예제 #7
0
 public void Initialize()
 {
     UIManager = GameManager.Inst.UIManager;
     State     = new UIStateNormal(this);
 }