少年修仙传客户端代码仓库
client_Wu Xijin
2019-06-13 033958214c0b16d7e7b93cc821b018c295251867
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
using Snxxz.UI;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
 
namespace EnhancedUI.EnhancedScroller
{
    public class ChatRecentlyCell : ScrollerUI
    {
        [SerializeField] Image m_PlayerBG;
        [SerializeField] Image m_Select;
        [SerializeField] Text m_PlayerName;
        [SerializeField] Text m_Lv;
        [SerializeField] Image m_LvSign;
        [SerializeField] Text m_LvText;
        [SerializeField] Button m_DetailBtn;
 
        FriendsModel m_FriendModel;
        FriendsModel friendModel
        {
            get
            {
                return m_FriendModel ?? (m_FriendModel = ModelCenter.Instance.GetModel<FriendsModel>());
            }
        }
        public override void Refresh(CellView cell)
        {
            var _playerId = cell.index;
            var _dict = friendModel.GetFriendInfoDict((byte)GroupType.RecentContact);
            FriendPlayer _friendPlayer = null;
            if (_dict != null && _dict.ContainsKey((uint)_playerId))
            {
                _friendPlayer = _dict[(uint)_playerId];
            }
            else if (friendModel.tempFriendData != null && friendModel.tempFriendData.PlayerID == _playerId)
            {
                _friendPlayer = friendModel.tempFriendData;
            }
            if (_friendPlayer == null)
            {
                return;
            }
            m_Select.gameObject.SetActive(_playerId == ChatCtrl.Inst.PteChatID);
            m_PlayerName.text = _friendPlayer.PlayerName;
            m_LvSign.gameObject.SetActive(false);
            var _lv = _friendPlayer.LV ;
            m_LvText.text = (_lv > 0 ? _lv : _friendPlayer.LV).ToString();
            m_DetailBtn.onClick.RemoveAllListeners();
            m_DetailBtn.onClick.AddListener(() =>
            {
                PlayerDetails.ShowPlayerDetails(_playerId, null);
            });
            SetOnline(_friendPlayer.OnlineType == 1);
        }
 
        private void SetOnline(bool _online)
        {
            m_PlayerBG.material = _online ? MaterialUtility.GetUIDefaultGraphicMaterial() : MaterialUtility.GetDefaultSpriteGrayMaterial();
            m_LvSign.material = _online ? MaterialUtility.GetUIDefaultGraphicMaterial() : MaterialUtility.GetDefaultSpriteGrayMaterial();
            m_Lv.color = _online ? UIHelper.GetUIColor(TextColType.NavyBrown) : UIHelper.GetUIColor(TextColType.White, true);
            m_LvText.color = _online ? UIHelper.GetUIColor(TextColType.NavyBrown) : UIHelper.GetUIColor(TextColType.White, true);
            m_PlayerName.color = _online ? UIHelper.GetUIColor(TextColType.NavyBrown) : UIHelper.GetUIColor(TextColType.White, true);
        }
    }
}