using AX.MessageSystem; using UnityEngine; using UnityEngine.UI; public class CloneCharacterBtn : BaseToggleClick { public CloneObjType mCloneObjType; public override void RespondFun(bool isOn) { if (isOn) { InputManager.cloneObjType = mCloneObjType; //var gameObjID = GetComponent().GameObjID; MessageDispatcher.SendMessage("CloneSelected");//克隆按钮选中,取消其他克隆按钮的选中状态 MessageDispatcher.SendMessage("CloneCharacterSelected"); } else { InputManager.cloneObjType = CloneObjType.None; } } void Start() { //MessageDispatcher.AddListener("CloneSelected", setUI); MessageDispatcher.AddListener("CANCEL_CLONEBTN_SELECTED_COMMAND", CancelSelected); } void OnDestroy() { //MessageDispatcher.RemoveListener("CloneSelected", setUI); MessageDispatcher.RemoveListener("CANCEL_CLONEBTN_SELECTED_COMMAND", CancelSelected); } //private void setUI(IMessage obj) //{ // var selectedGameObjID = (long)obj.Data; // var gameObjID = GetComponent().GameObjID; // if (selectedGameObjID != gameObjID) // { // GetComponent().isOn = false; // } //} private void CancelSelected(IMessage obj) { if (GetComponent().isOn) { GetComponent().isOn = false; InputManager.cloneObjType = CloneObjType.None; } } }