少年修仙传客户端代码仓库
hch
2025-07-24 50e53441950268933694eeb5aad36147bbe1014d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
using System.Collections.Generic;
using UnityEngine;
 
namespace vnxbqy.UI
{
    public class FairySiegeHelpListWin : Window
    {
        [SerializeField] ButtonEx btnClose;
        [SerializeField] TextEx txtCount;
        [SerializeField] RichText txtName;
 
        FairySiegeActModel fairySiegeActModel { get { return ModelCenter.Instance.GetModel<FairySiegeActModel>(); } }
        FairySiegeHelpModel model { get { return ModelCenter.Instance.GetModel<FairySiegeHelpModel>(); } }
 
        #region Build-in
 
        protected override void AddListeners()
        {
            btnClose.SetListener(CloseClick);
        }
 
        protected override void BindController()
        {
        }
 
        protected override void OnPreOpen()
        {
            DisplayName();
        }
 
        protected override void OnPreClose()
        {
        }
 
        protected override void OnAfterOpen()
        {
        }
 
        protected override void OnAfterClose()
        {
        }
 
        #endregion
 
        private void DisplayName()
        {
            OperationFamilyRechargeConn act;
            OperationTimeHepler.Instance.TryGetOperation(FairySiegeHelpModel.operaType, out act);
            if (act == null || act.needPlayers == null || model.nowIndex < 0 || model.nowIndex >= act.needPlayers.Count)
            {
                txtCount.text = Language.Get("FairySiege104", 0, fairySiegeActModel.campMemberDict.IsNullOrEmpty() ? 0 : fairySiegeActModel.campMemberDict.Count);
                txtName.text = string.Empty;
                return;
            }
 
            List<string> names = new List<string>();
            int needNum = act.needPlayers[model.nowIndex];
            List<int> getMember;
            model.getAwardMembers.TryGetValue(needNum, out getMember);
 
            if (getMember.IsNullOrEmpty() || fairySiegeActModel.campMemberDict == null)
            {
                txtCount.text = Language.Get("FairySiege104", 0, fairySiegeActModel.campMemberDict.IsNullOrEmpty() ? 0 : fairySiegeActModel.campMemberDict.Count);
                txtName.text = string.Empty;
                return;
            }
 
            foreach (var item in getMember)
            {
                if (!fairySiegeActModel.campMemberDict.ContainsKey((uint)item))
                    continue;
                var info = fairySiegeActModel.campMemberDict[(uint)item];
                if (!names.Contains(info.Name))
                {
                    names.Add(info.Name);
                }
            }
 
            txtName.text = StringUtility.Contact(string.Join(", ", names));
            txtCount.text = Language.Get("FairySiege104", names.Count, fairySiegeActModel.campMemberDict.Count);
        }
    }
}