90 lines
2.9 KiB
C#
90 lines
2.9 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public class TargetUIController : MonoBehaviour
|
|
{
|
|
// Controller to control the UI of the target,
|
|
// select target type, select prefeb to set or sth.
|
|
public GameObject gameModeController;
|
|
public GameObject MouseSelectorObj;
|
|
|
|
public Button setAttackButton;
|
|
public Button setGotoButton;
|
|
public Button setFreeButton;
|
|
public Button setStayButton;
|
|
|
|
private PlayGameModeController gameModeCon;
|
|
private MouseInMap mouseInMapCon;
|
|
|
|
private void Start()
|
|
{
|
|
gameModeCon = gameModeController.GetComponent<PlayGameModeController>();
|
|
mouseInMapCon = MouseSelectorObj.GetComponent<MouseInMap>();
|
|
}
|
|
|
|
public void clearGamePressed()
|
|
{
|
|
// Clear all enemies and targets. set gamemode to Stay mode
|
|
gameModeCon.gameMode = PlayGameModeController.GameMode.Stay;
|
|
mouseInMapCon.changeMouseModeTo(MouseInMap.MouseMode.Default);
|
|
// disable setStayButton and enable other buttons
|
|
setStayButton.interactable = false;
|
|
setAttackButton.interactable = true;
|
|
setGotoButton.interactable = true;
|
|
setFreeButton.interactable = true;
|
|
gameModeCon.startInitialize();
|
|
}
|
|
public void setEnemyPressed()
|
|
{
|
|
mouseInMapCon.changeMouseModeTo(MouseInMap.MouseMode.EnemySet);
|
|
}
|
|
public void setGotoPressed()
|
|
{
|
|
mouseInMapCon.changeMouseModeTo(MouseInMap.MouseMode.GotoSet);
|
|
}
|
|
public void setAttackPressed()
|
|
{
|
|
mouseInMapCon.changeMouseModeTo(MouseInMap.MouseMode.AttackSet);
|
|
}
|
|
public void setFreePressed()
|
|
{
|
|
mouseInMapCon.mouseMode = MouseInMap.MouseMode.Default;
|
|
setStayButton.interactable = true;
|
|
setAttackButton.interactable = true;
|
|
setGotoButton.interactable = true;
|
|
setFreeButton.interactable = false;
|
|
}
|
|
public void setStayPressed()
|
|
{
|
|
|
|
}
|
|
|
|
public void UIButtonInteractable(PlayGameModeController.GameMode nowMode = PlayGameModeController.GameMode.Stay)
|
|
{
|
|
setStayButton.interactable = true;
|
|
setAttackButton.interactable = true;
|
|
setGotoButton.interactable = true;
|
|
setFreeButton.interactable = true;
|
|
switch(nowMode)
|
|
{
|
|
case PlayGameModeController.GameMode.Attack:
|
|
setAttackButton.interactable = false;
|
|
break;
|
|
case PlayGameModeController.GameMode.Free:
|
|
setFreeButton.interactable = false;
|
|
break;
|
|
case PlayGameModeController.GameMode.Goto:
|
|
setGotoButton.interactable = false;
|
|
break;
|
|
case PlayGameModeController.GameMode.Stay:
|
|
setStayButton.interactable = false;
|
|
break;
|
|
default:
|
|
Debug.Log("TargetUIController.UIButtonInteractable : Type error");
|
|
break;
|
|
}
|
|
}
|
|
}
|