This commit is contained in:
tangbin
2025-06-22 18:23:47 +08:00
parent 1cb6dc502f
commit b1c9facf3e
9 changed files with 297 additions and 22 deletions

View File

@@ -2,6 +2,7 @@ using HxGame.Data;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Threading;
using UnityEngine;
using UnityEngine.UI;
using static System.Net.Mime.MediaTypeNames;
@@ -42,13 +43,12 @@ public class UIMonsterPanel : MonoBehaviour
private UIMonsterItem _curMonsterItem;
//private Dictionary<int, List<UIMonsterItem>> _dicGroupItem;
private Dictionary<int, UIMonsterItem> _dicGroupItem; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>item
private Dictionary<int, UIMonsterItem> _dicGroupItem = new(); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>item
private Dictionary<int, UIMonsterItem> _dicAllItem = new(); //<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>item
private void Awake()
{
itemIdx = 0;
//_dicGroupItem = new Dictionary<int, List<UIMonsterItem>>();
_dicGroupItem = new Dictionary<int, UIMonsterItem>();
btnClose.onClick.AddListener(OnClickClose);
btnAddGroup.onClick.AddListener(OnAddGroup);
btnDeleteGroup.onClick.AddListener(OnDeleteGroup);
@@ -145,8 +145,6 @@ public class UIMonsterPanel : MonoBehaviour
item.OnClick = OnClickItem;
item.OnCopyItem = OnCopyItem;
item.btnClickSelf.Select();
AddGroupMap(_curMonsterItem.monster.itemIdx, _curMonsterItem);
}
@@ -184,7 +182,7 @@ public class UIMonsterPanel : MonoBehaviour
_curMonsterItem.transform.parent.GetComponent<RectTransform>().sizeDelta -= Vector2Int.up * 30;
DestroyImmediate(_curMonsterItem.gameObject);
MapManager.Instance.RemoveMonsterPoint(_curMonsterItem.monster.itemIdx);
_curMonsterItem = null;
}
@@ -197,7 +195,6 @@ public class UIMonsterPanel : MonoBehaviour
UIWindow.Instance.ShowMessage("monsterItem.prefabʧ<62><CAA7>");
return;
}
GameObject go = Instantiate(obj) as GameObject; ;
go.transform.SetParent(itemParent, false);
UIMonsterItem item = go.transform.Find("monsterSubItem").GetComponent<UIMonsterItem>();
@@ -213,6 +210,7 @@ public class UIMonsterPanel : MonoBehaviour
item.OnCopyItem = OnCopyItem;
_curMonsterItem = item;
item.btnClickSelf.Select();
_dicAllItem.Add(monster.itemIdx, item);
}
public void LoadMonsterConfig(int mapId)
@@ -254,6 +252,7 @@ public class UIMonsterPanel : MonoBehaviour
item.OnClick = OnClickItem;
item.OnCopyItem = OnCopyItem;
_curMonsterItem = item;
_dicAllItem.Add(monster.itemIdx, item);
}
private void SaveItem()
@@ -440,8 +439,23 @@ public class UIMonsterPanel : MonoBehaviour
{
DestroyImmediate(itemParent.GetChild(0).gameObject);
}
_dicGroupItem?.Clear();
_dicAllItem?.Clear();
itemIdx = 0;
}
public void SelectMonsterPos(int Idx)
{
if (_dicAllItem.TryGetValue(Idx, out var monsterItem))
{
monsterItem.btnClickSelf.Select();
}
}
public void UpdateMonsterPos(int Idx, Vector2Int newPos)
{
if (_dicAllItem.TryGetValue(Idx, out var monsterItem))
{
monsterItem.RefreshPos(newPos);
monsterItem.btnClickSelf.Select();
}
}
}