//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Wednesday, September 19, 2018 //-------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; namespace vnxbqy.UI { public class TeamChatWin : Window { [SerializeField] ChatSendComponent m_ChatSend; [SerializeField] ChatContentBehaviour m_ChatContent; [SerializeField] RectTransform m_NoTeamContainer; TeamModel team { get { return ModelCenter.Instance.GetModel(); } } ChatCenter chatCenter { get { return ModelCenter.Instance.GetModel(); } } #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(); ChatCtrl.Inst.ViewChat(ChatInfoType.Team); ChatCtrl.Inst.lockUpdate = false; chatCenter.UpdateChatContentPos(); } protected override void OnActived() { base.OnActived(); var parent = WindowCenter.Instance.Get(); 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.SetActive(team.myTeam.inTeam); m_NoTeamContainer.SetActive(!team.myTeam.inTeam); } } }