少年修仙传客户端代码仓库
client_linchunjie
2018-08-30 a3b6fcbe18ca84a4be475565df5e11076f415ad2
2998 仙盟宴会界面修改和逻辑修改(添加采集完打开聊天界面)
1个文件已修改
48 ■■■■■ 已修改文件
System/Chat/ChatCenter.cs 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/ChatCenter.cs
@@ -23,6 +23,7 @@
            VoiceHttpRequest.Instance.samplesDecodecComplete += SamplesDecodecComplete;
            WindowCenter.Instance.windowAfterOpenEvent += WindowAfterOpenEvent;
            StageManager.Instance.onStageLoadFinish += OnStageLoadFinish;
            PlayerRealmData.OnPlayerCollectEnd += OnPlayerCollectEnd;
        }
        public override void UnInit()
@@ -160,6 +161,11 @@
            if (!isDungeon)
            {
                ClearAllVoice();
                openChatAfterCollect = false;
            }
            if (PlayerDatas.Instance.baseData.MapID != 31230)
            {
                openChatAfterCollect = false;
            }
        }
@@ -694,6 +700,10 @@
        private void WindowAfterOpenEvent(Window win)
        {
            CheckChatFloatOpen();
            if (win is MainInterfaceWin)
            {
                CheckOpenChatAfterCollect();
            }
        }
        private void CheckChatFloatOpen()
@@ -716,6 +726,44 @@
        }
        #endregion
        #region 仙盟宴会采集完后打开聊天界面
        bool openChatAfterCollect = false;
        private void OnPlayerCollectEnd(int playerId, byte type)
        {
            if (playerId == PlayerDatas.Instance.baseData.PlayerID
                && type == 0 && PlayerDatas.Instance.baseData.MapID == 31230)
            {
                openChatAfterCollect = true;
            }
            CheckOpenChatAfterCollect();
        }
        void CheckOpenChatAfterCollect()
        {
            if (!openChatAfterCollect)
            {
                return;
            }
            if (PlayerDatas.Instance.baseData.MapID != 31230)
            {
                return;
            }
            if (!WindowCenter.Instance.Open<MainInterfaceWin>()
                || WindowCenter.Instance.ExitAnyFullScreenOrMaskWin()
                || StageManager.Instance.isLoading
                || NewBieCenter.Instance.inGuiding)
            {
                return;
            }
            openChatAfterCollect = false;
            if (!WindowCenter.Instance.CheckOpen<ChatWin>())
            {
                ChatCtrl.Inst.presentChatType = ChatInfoType.Fairy;
                WindowCenter.Instance.Open<ChatWin>();
            }
        }
        #endregion
    }
}