diff --git a/Assets/MyGame/Scripts/Net/APIResponses/GameConfig_SubClass/ChessConfig.cs b/Assets/MyGame/Scripts/Net/APIResponses/GameConfig_SubClass/ChessConfig.cs index 35e4b162d..7ceb707ac 100644 --- a/Assets/MyGame/Scripts/Net/APIResponses/GameConfig_SubClass/ChessConfig.cs +++ b/Assets/MyGame/Scripts/Net/APIResponses/GameConfig_SubClass/ChessConfig.cs @@ -17,5 +17,8 @@ namespace Assets.MyGame.Scripts.Net.API.GameConfig_SubClass /// 投注金币限制列表 public List betGoldLimits; + + /// 分区数量 + public int districtCount; } } diff --git a/Assets/MyGame/aa/UI/Game/ChineseChess/1District.prefab b/Assets/MyGame/aa/UI/Game/ChineseChess/1District.prefab index 6f3b2a380..b44a5c988 100644 --- a/Assets/MyGame/aa/UI/Game/ChineseChess/1District.prefab +++ b/Assets/MyGame/aa/UI/Game/ChineseChess/1District.prefab @@ -34,7 +34,7 @@ RectTransform: m_Father: {fileID: 358166129368429010} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} @@ -597,6 +597,9 @@ MonoBehaviour: panel_RoomItemParent: {fileID: 7647910538216301643} scroll: {fileID: 2011368224300036240} tmp_CurrGold: {fileID: 7375904467643721525} + tra_DaQuParent: {fileID: 5504888745145859652} + tra_FenQuItem: {fileID: 2362633876095317134} + maxDistrict: 10 --- !u!114 &2024476905427852506 MonoBehaviour: m_ObjectHideFlags: 0 @@ -1857,7 +1860,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &5073449037799569824 RectTransform: m_ObjectHideFlags: 0 @@ -1873,9 +1876,9 @@ RectTransform: - {fileID: 6712131649239169743} m_Father: {fileID: 5504888745145859652} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 130.045, y: -120} m_SizeDelta: {x: 200.09, y: 80} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &7631087481949522533 @@ -2501,7 +2504,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!224 &7424860594244896561 RectTransform: m_ObjectHideFlags: 0 @@ -2517,9 +2520,9 @@ RectTransform: - {fileID: 1686468845713917608} m_Father: {fileID: 5504888745145859652} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 0, y: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 130.045, y: -40} m_SizeDelta: {x: 200.09, y: 80} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &8573315565771256190 diff --git a/Assets/MyGame/aa/UI/Game/ChineseChess/UIChineseChessDistrict.cs b/Assets/MyGame/aa/UI/Game/ChineseChess/UIChineseChessDistrict.cs index 41d7862f7..119e5bdb1 100644 --- a/Assets/MyGame/aa/UI/Game/ChineseChess/UIChineseChessDistrict.cs +++ b/Assets/MyGame/aa/UI/Game/ChineseChess/UIChineseChessDistrict.cs @@ -1,4 +1,4 @@ -using Assets.MyGame.Scripts.Net; +using Assets.MyGame.Scripts.Net; using Assets.MyGame.Scripts.Net.WebResponses; using Newtonsoft.Json; using System.Collections; @@ -14,31 +14,46 @@ public class UIChineseChessDistrict : SubUIBase public Transform panel_RoomItemParent; public ScrollRect scroll; public TextMeshProUGUI tmp_CurrGold; - //public Dictionary> itemListDic=new Dictionary>(); public Dictionary itemListDic = new Dictionary(); float horizontalNormalizedPosition; - + + public Transform tra_DaQuParent; + public Transform tra_FenQuItem; // child0=Toggle, child0.child0=TextMeshProUGUI(象棋n区) + public int maxDistrict = 10; // 最大分区数 + + private bool _tabsBuilt = false; + public override void Awake() { base.Awake(); - //btn_Close.onClick.AddListener(() => - //{ - // UIManager.Instance.Close(UIPanel.MainGamePanelZGXQ); - // UIManager.Instance.ShowAsync(UIPanel.HomeMainPanel); - //}); - - - } + private void Update() { scroll.horizontalNormalizedPosition = Mathf.Lerp(scroll.horizontalNormalizedPosition, horizontalNormalizedPosition, 0.5f); } + public override void Hide() { base.Hide(); - } + + protected override void OnShow(object args = null) + { + base.OnShow(args); + tmp_CurrGold.text = GameManager.Instance.user.assets.gold.ToString(); + + // 从后端配置读取分区数 + maxDistrict = GameManager.Instance?.gameConfig?.chessConfig?.districtCount ?? 10; + if (maxDistrict <= 0) maxDistrict = 1; + + if (!_tabsBuilt) + { + BuildChessFenQuTabs(); + _tabsBuilt = true; + } + } + public override void Show(object args = null) { base.Show(args); @@ -48,17 +63,14 @@ public class UIChineseChessDistrict : SubUIBase { int i = 0; var v = JsonConvert.DeserializeObject>>(args.ToString()); - //var v = args as List; var basePanel = (ChineseChessMainPanel)uIManager.parentUIBase; foreach (var item in v.arguments[0]) { - //itemListDic.Add Instantiate(panel_RoomItemPrefab, itemPage[(int)(i/15)-1]); var tran = Instantiate(panel_RoomItemPrefab.gameObject, panel_RoomItemParent).transform; tran.GetComponent