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 targetControllerObj; public GameObject mouseSelectorObj; public GameObject environmentUIObj; public Button setAttackButton; public Button setGotoButton; public Button setFreeButton; public Button setStayButton; private MouseInMap mouseInMapCon; private EnvironmentUIControl envUICon; private TargetController targetCon; private void Start() { targetCon = targetControllerObj.GetComponent(); mouseInMapCon = mouseSelectorObj.GetComponent(); envUICon = environmentUIObj.GetComponent(); } public void ClearGamePressed() { // Clear all enemies and targets. set gamemode to Stay mode targetCon.StayModeChange(); mouseInMapCon.ChangeMouseModeTo(MouseInMap.MouseMode.Default); // disable setStayButton and enable other buttons setStayButton.interactable = false; setAttackButton.interactable = true; setGotoButton.interactable = true; setFreeButton.interactable = true; targetCon.PlayInitialize(); } 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.ChangeMouseModeTo(MouseInMap.MouseMode.Default); targetCon.FreeModeChange(); setStayButton.interactable = true; setAttackButton.interactable = true; setGotoButton.interactable = true; setFreeButton.interactable = false; } public void SetStayPressed() { mouseInMapCon.ChangeMouseModeTo(MouseInMap.MouseMode.Default); targetCon.StayModeChange(); setStayButton.interactable = false; setAttackButton.interactable = true; setGotoButton.interactable = true; setFreeButton.interactable = true; } }