using AX.MessageSystem; using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class EquipItem : MonoBehaviour { public Text EuqipName; public Image EuqipImage; public Text EuqipNumber; public CommonToggle EuqipToggle; private Equip data; int index = -1; private bool IsShowUIViewNumberSelect = true; public bool IsBag = false; public void Init(bool isBag) { IsBag = isBag; EuqipToggle.OnClicked = OnClicked; } private void OnClicked(CommonToggle arg1, bool arg2) { //设置选中状态 data.IsSelected = arg2; if (!IsBag) { if (arg2) { //检查组 EquipManager.Instance.CheckSelectGroup(data); if (data.IsSelectMore) { if (IsShowUIViewNumberSelect) { // 这是多选面板提交事件 UIManager.GetView() .CommitAction = SetNumber; UIManager.GetView() .EquipName = data.Name; //显示面板 UIManager.ShowView(); } } else { //不可以多选数量+1 data.Number = 1; EuqipNumber.text = data.Number.ToString(); } } else { //取消选中数量归零 data.Number = 0; EuqipNumber.text = data.Number.ToString(); } } } private void SetNumber(int num) { if (num == 0) { EuqipToggle.ToggleButton.isOn = false; } else { data.Number = num; EuqipNumber.text = data.Number.ToString(); } } public void SetItemData(Equip data1, int index) { IsShowUIViewNumberSelect = false; data = data1; this.index = index; EuqipToggle.ToggleButton.isOn = data.IsSelected; EuqipName.text = data.Name; EuqipNumber.text = data.Number.ToString(); ResourceManager.LoadAsset(data.PicName, LoadAssetCallback); IsShowUIViewNumberSelect = true; EuqipNumber.gameObject.SetActive(data.IsSelectMore); // 如果是灭火机器人 if (EquipManager.Instance.CurrentSelectedBag.GetComponent().gameObjType == CloneObjType.FirefightingRobot && data.Name != "消防高压水带") { EuqipToggle.ToggleButton.interactable = false; } else { EuqipToggle.ToggleButton.interactable = true; } } private void LoadAssetCallback(Sprite obj) { EuqipImage.sprite = obj; } }