少年修仙传客户端代码仓库
client_linchunjie
2018-09-19 9203f8bd22b3cf3fa9bfd537fd16b2e86d7223b1
3564【前端】队伍和仙盟频道移动至仙缘中
3个文件已修改
4个文件已添加
374 ■■■■ 已修改文件
System/Chat/ChatCenter.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/ChatTip.cs 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/FairyChatWin.cs 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/FairyChatWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/TeamChatWin.cs 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/TeamChatWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FriendSystem/New/SocialWin.cs 139 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/ChatCenter.cs
@@ -46,10 +46,12 @@
            var _funcCfg = Config.Instance.Get<FuncConfigConfig>("BugleItem");
            bugleItem = int.Parse(_funcCfg.Numerical1);
            chatChannels = new List<ChatInfoType>();
            for (int i = (int)ChatInfoType.System; i <= (int)ChatInfoType.Friend; i++)
            {
                chatChannels.Add((ChatInfoType)i);
            }
            chatChannels.Add(ChatInfoType.System);
            chatChannels.Add(ChatInfoType.World);
            chatChannels.Add(ChatInfoType.Area);
            chatChannels.Add(ChatInfoType.Invite);
            chatChannels.Add(ChatInfoType.Trumpet);
            chatChannels.Add(ChatInfoType.Friend);
        }
        public event Action<string, bool, bool> UpdateChatValueEvent;
@@ -755,10 +757,10 @@
                return;
            }
            openChatAfterCollect = false;
            if (!WindowCenter.Instance.CheckOpen<ChatWin>())
            if (!WindowCenter.Instance.CheckOpen<SocialWin>())
            {
                ChatCtrl.Inst.presentChatType = ChatInfoType.Fairy;
                WindowCenter.Instance.Open<ChatWin>();
                WindowCenter.Instance.Open<SocialWin>(false, 2);
            }
        }
        #endregion
System/Chat/ChatTip.cs
@@ -145,7 +145,7 @@
    private void OnChatClick()
    {
        if (WindowCenter.Instance.CheckOpen<ChatWin>())
        if (WindowCenter.Instance.CheckOpen<ChatWin>() || WindowCenter.Instance.CheckOpen<SocialWin>())
        {
            return;
        }
@@ -154,6 +154,8 @@
        if (mapId == 31230)
        {
            ChatCtrl.Inst.presentChatType = ChatInfoType.Fairy;
            WindowCenter.Instance.Open<SocialWin>(false, 2);
            return;
        }
        WindowCenter.Instance.Open<ChatWin>();
    }
@@ -211,7 +213,7 @@
    void OnChatDataClick(ChatData data)
    {
        if (WindowCenter.Instance.CheckOpen<ChatWin>())
        if (WindowCenter.Instance.CheckOpen<ChatWin>() || WindowCenter.Instance.CheckOpen<SocialWin>())
        {
            return;
        }
@@ -221,7 +223,18 @@
        {
            ChatCtrl.Inst.presentChatType = ChatInfoType.Fairy;
        }
        WindowCenter.Instance.Open<ChatWin>();
        switch (ChatCtrl.Inst.presentChatType)
        {
            case ChatInfoType.Team:
                WindowCenter.Instance.Open<SocialWin>(false, 1);
                break;
            case ChatInfoType.Fairy:
                WindowCenter.Instance.Open<SocialWin>(false, 2);
                break;
            default:
                WindowCenter.Instance.Open<ChatWin>();
                break;
        }
    }
    void OnRefreshChatTip(ChatInfoType type)
System/Chat/FairyChatWin.cs
New file
@@ -0,0 +1,97 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Wednesday, September 19, 2018
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using TableConfig;
using UnityEngine;
using UnityEngine.UI;
namespace Snxxz.UI {
    public class FairyChatWin : Window
    {
        [SerializeField] ChatSendComponent m_ChatSend;
        [SerializeField] ChatContentBehaviour m_ChatContent;
        [SerializeField] RectTransform m_ContainerNoFairy;
        [SerializeField] Button m_JoinFairy;
        #region Built-in
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
            m_JoinFairy.AddListener(JoinFairy);
        }
        protected override void OnPreOpen()
        {
            WindowCenter.Instance.windowBeforeOpenEvent += WindowBeforeOpenEvent;
            PlayerDatas.Instance.fairyData.OnRefreshFairyInfo += MyFairyRefresh;
            PlayerDatas.Instance.fairyData.OnRefreshFairyMine += MyFairyRefresh;
            ChatCtrl.Inst.presentChatType = ChatInfoType.Fairy;
            m_ChatContent.chatType = ChatInfoType.Fairy;
            MyFairyRefresh();
        }
        protected override void OnActived()
        {
            base.OnActived();
            var parent = WindowCenter.Instance.Get<SocialWin>();
            if (parent != null)
            {
                m_ChatSend.parent = parent;
            }
        }
        protected override void OnAfterOpen()
        {
        }
        protected override void OnPreClose()
        {
            WindowCenter.Instance.windowBeforeOpenEvent -= WindowBeforeOpenEvent;
            PlayerDatas.Instance.fairyData.OnRefreshFairyInfo -= MyFairyRefresh;
            PlayerDatas.Instance.fairyData.OnRefreshFairyMine -= MyFairyRefresh;
        }
        protected override void OnAfterClose()
        {
        }
        #endregion
        private void JoinFairy()
        {
            int limit = Config.Instance.Get<FuncOpenLVConfig>((int)FuncOpenEnum.Fairy).LimitLV;
            if (PlayerDatas.Instance.baseData.LV < limit)
            {
                MessageWin.Inst.ShowFixedTip(Language.Get("L1136", limit));
                return;
            }
            WindowCenter.Instance.CloseImmediately<SocialWin>();
            WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.UnionFunc3);
        }
        void MyFairyRefresh()
        {
            m_ContainerNoFairy.gameObject.SetActive(!PlayerDatas.Instance.fairyData.HasFairy);
            m_ChatSend.gameObject.SetActive(PlayerDatas.Instance.fairyData.HasFairy);
        }
        private void WindowBeforeOpenEvent(Window win)
        {
            if (win is SocialWin)
            {
                m_ChatSend.parent = win;
            }
        }
    }
}
System/Chat/FairyChatWin.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: e5cba53e40a60a847b072488a5a85b29
timeCreated: 1537325731
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/Chat/TeamChatWin.cs
New file
@@ -0,0 +1,81 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Wednesday, September 19, 2018
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
namespace Snxxz.UI {
    public class TeamChatWin : Window
    {
        [SerializeField] ChatSendComponent m_ChatSend;
        [SerializeField] ChatContentBehaviour m_ChatContent;
        [SerializeField] RectTransform m_NoTeamContainer;
        TeamModel team { get { return ModelCenter.Instance.GetModel<TeamModel>(); } }
        #region Built-in
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
        }
        protected override void OnPreOpen()
        {
            WindowCenter.Instance.windowBeforeOpenEvent += WindowBeforeOpenEvent;
            team.myTeamRefreshEvent += MyTeamRefresh;
            ChatCtrl.Inst.presentChatType = ChatInfoType.Team;
            m_ChatContent.chatType = ChatInfoType.Team;
            MyTeamRefresh();
        }
        protected override void OnActived()
        {
            base.OnActived();
            var parent = WindowCenter.Instance.Get<SocialWin>();
            if (parent != null)
            {
                m_ChatSend.parent = parent;
            }
        }
        protected override void OnAfterOpen()
        {
        }
        protected override void OnPreClose()
        {
            WindowCenter.Instance.windowBeforeOpenEvent -= WindowBeforeOpenEvent;
            team.myTeamRefreshEvent -= MyTeamRefresh;
        }
        protected override void OnAfterClose()
        {
        }
        #endregion
        private void WindowBeforeOpenEvent(Window win)
        {
            if(win is SocialWin)
            {
                m_ChatSend.parent = win;
            }
        }
        private void MyTeamRefresh()
        {
            m_ChatSend.gameObject.SetActive(team.myTeam.inTeam);
            m_NoTeamContainer.gameObject.SetActive(!team.myTeam.inTeam);
        }
    }
}
System/Chat/TeamChatWin.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: e3087f05daf1a3245ac52b7732703971
timeCreated: 1537322992
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/FriendSystem/New/SocialWin.cs
@@ -1,56 +1,83 @@
using System;
using UnityEngine;
using UnityEngine.UI;
namespace Snxxz.UI
{
    public class SocialWin : Window
    {
        [SerializeField] FunctionButton xianyuanBtn;
        [SerializeField] FunctionButtonGroup btnGroup;
        [SerializeField] Button closeBtn;
        [SerializeField] GameObject friendTipsObj;
        [SerializeField] ChatSendComponent m_ChatSend;
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
            closeBtn.AddListener(CloseClick);
            xianyuanBtn.AddListener(ClickXianYuanBtn);
        }
        protected override void OnPreOpen()
        {
            m_ChatSend.parent = this;
        }
        protected override void OnActived()
        {
            base.OnActived();
            btnGroup.TriggerByOrder(functionOrder);
        }
        protected override void OnAfterOpen()
        {
        }
        protected override void OnPreClose()
        {
        }
        protected override void OnAfterClose()
        {
        }
        private void ClickXianYuanBtn()
        {
            friendTipsObj.SetActive(true);
            functionOrder = xianyuanBtn.order;
        }
    }
}
using System;
using UnityEngine;
using UnityEngine.UI;
namespace Snxxz.UI
{
    public class SocialWin : Window
    {
        [SerializeField] FunctionButton xianyuanBtn;
        [SerializeField] FunctionButton m_TeamChat;
        [SerializeField] FunctionButton m_FairyChat;
        [SerializeField] FunctionButtonGroup btnGroup;
        [SerializeField] Button closeBtn;
        [SerializeField] GameObject friendTipsObj;
        [SerializeField] ChatSendComponent m_ChatSend;
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
            closeBtn.AddListener(CloseClick);
            xianyuanBtn.AddListener(ClickXianYuanBtn);
            m_TeamChat.AddListener(TeamChat);
            m_FairyChat.AddListener(FairyChat);
        }
        protected override void OnPreOpen()
        {
            m_ChatSend.parent = this;
        }
        protected override void OnActived()
        {
            base.OnActived();
            btnGroup.TriggerByOrder(functionOrder);
        }
        protected override void OnAfterOpen()
        {
        }
        protected override void OnPreClose()
        {
            CloseChild();
        }
        protected override void OnAfterClose()
        {
        }
        private void ClickXianYuanBtn()
        {
            CloseChild();
            friendTipsObj.SetActive(true);
            functionOrder = xianyuanBtn.order;
        }
        private void TeamChat()
        {
            CloseChild();
            WindowCenter.Instance.Open<TeamChatWin>();
            functionOrder = m_TeamChat.order;
        }
        private void FairyChat()
        {
            CloseChild();
            WindowCenter.Instance.Open<FairyChatWin>();
            functionOrder = m_FairyChat.order;
        }
        void CloseChild()
        {
            friendTipsObj.SetActive(false);
            WindowCenter.Instance.CloseImmediately<TeamChatWin>();
            WindowCenter.Instance.CloseImmediately<FairyChatWin>();
        }
    }
}