Files
JJBB/Assets/Project/Script/GUI/Community/CommunityBlogPageLogic.cs

428 lines
11 KiB
C#
Raw Normal View History

2024-08-23 15:49:34 +08:00
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
using Games.Item;
using System.Collections.Generic;
using GCGame.Table;
using Games.GlobeDefine;
using Module.Log;
public class CommunityBlogPageLogic : UIControllerBase<CommunityBlogPageLogic>
{
void OnEnable ()
{
SetInstance(this);
InitPage();
}
void OnDisable()
{
SetInstance(null);
}
public void CloseWindow()
{
gameObject.SetActive(false);
}
#region
public GameObject _FocusBlogPanel;
public GameObject _MyBlogPanel;
public GameObject _OtherBlogPanel;
public GameObject _FocusPlayersPanel;
public GameObject _MsgHistoryPanel;
public void InitPage()
{
if (CommunityLogic.CommunityPlayerInfo.GUID == GameManager.gameManager.PlayerDataPool.MainPlayerBaseAttr.Guid)
{
InitFocusBlogPage();
}
else
{
InitOtherBlogPage();
}
}
#endregion
#region focus Blog page
public UIContainerBlog _FocusBlogContainer;
public void UpdateNoMoreFocus()
{
_FocusBlogContainer.IsLoadAllItems = true;
if (Community.Instance._LoadedPlayerBlogs.Count > 0)
{
CommunityLogic.Instance()._EmptyTip.text = "";
}
else
{
CommunityLogic.Instance()._EmptyTip.text = StrDictionary.GetClientDictionaryString("#{39004}");
}
}
public void UpdateFocusBlogs()
{
Hashtable hash = new Hashtable();
hash.Add("IsShowPlayerInfo", true);
hash.Add("IsFixedCommentHeight", false);
if (_FocusBlogContainer.isActiveAndEnabled)
{
_FocusBlogContainer.InitContentItem(Community.Instance._LoadedPlayerBlogs, null, hash);
}
if (Community.Instance._LoadedPlayerBlogs.Count > 0)
{
CommunityLogic.Instance()._EmptyTip.text = "";
}
else
{
CommunityLogic.Instance()._EmptyTip.text = StrDictionary.GetClientDictionaryString("#{39004}");
}
}
public void InitFocusBlogPage()
{
_FocusBlogPanel.SetActive(true);
_MyBlogPanel.SetActive(false);
_FocusPlayersPanel.SetActive(false);
_MsgHistoryPanel.SetActive(false);
_OtherBlogPanel.SetActive(false);
RefreshTitle();
Community.Instance.ReLoadMoreFocusBlog();
}
public void LoadMoreFocusBlog()
{
Community.Instance.LoadMoreFocusBlog();
}
#endregion
#region my blog page
public UIContainerBlog _MyBlogContainer;
public Text _PageTitle;
public void RefreshTitle()
{
if (_FocusBlogPanel.activeSelf)
{
if (CommunityLogic.CommunityPlayerInfo.GUID == GameManager.gameManager.PlayerDataPool.MainPlayerBaseAttr.Guid)
{
_PageTitle.text = StrDictionary.GetClientDictionaryString("#{41322}");
}
else
{
_PageTitle.text = StrDictionary.GetClientDictionaryString("#{41321}", CommunityLogic.CommunityPlayerInfo.Name);
}
}
else
{
if (CommunityLogic.CommunityPlayerInfo.GUID == GameManager.gameManager.PlayerDataPool.MainPlayerBaseAttr.Guid)
{
_PageTitle.text = StrDictionary.GetClientDictionaryString("#{41323}");
}
else
{
_PageTitle.text = StrDictionary.GetClientDictionaryString("#{41320}", CommunityLogic.CommunityPlayerInfo.Name);
}
}
}
public void InitMyBlogPage()
{
_FocusBlogPanel.SetActive(false);
_MyBlogPanel.SetActive(true);
_FocusPlayersPanel.SetActive(false);
_MsgHistoryPanel.SetActive(false);
_OtherBlogPanel.SetActive(false);
RefreshTitle();
Community.Instance.ReLoadMoreMyBlog();
}
public void UpdateNoMoreBlogs()
{
_BlogContainer.IsLoadAllItems = true;
_MyBlogContainer.IsLoadAllItems = true;
UpdatePlayerBlogs();
}
public void UpdatePlayerBlogs()
{
Hashtable hash = new Hashtable();
hash.Add("IsShowPlayerInfo", false);
hash.Add("IsFixedCommentHeight", false);
if (_BlogContainer.isActiveAndEnabled)
{
_BlogContainer.InitContentItem(Community.Instance._LoadedPlayerBlogs, null, hash);
}
else
{
hash.Add("IsShowDeleteBtn", true);
_MyBlogContainer.InitContentItem(Community.Instance._LoadedPlayerBlogs, null, hash);
}
if (Community.Instance._LoadedPlayerBlogs.Count > 0)
{
CommunityLogic.Instance()._EmptyTip.text = "";
}
else if (CommunityLogic.Instance().IsShowingMyBlog())
{
CommunityLogic.Instance()._EmptyTip.text = StrDictionary.GetClientDictionaryString("#{39020}");
}
else if (!CommunityLogic.Instance().IsShowingMyBlog())
{
CommunityLogic.Instance()._EmptyTip.text = StrDictionary.GetClientDictionaryString("#{39004}");
}
}
public void LoadMoreMyBlog()
{
Community.Instance.LoadMoreMyBlog();
}
#endregion
#region other blog
public UIContainerBlog _BlogContainer;
public GameObject _BtnFocus;
public GameObject _BtnCancelFocus;
public GameObject _BtnFriend;
public GameObject _AlreadyFriend;
public void InitOtherBlogPage()
{
_FocusBlogPanel.SetActive(false);
_MyBlogPanel.SetActive(false);
_FocusPlayersPanel.SetActive(false);
_MsgHistoryPanel.SetActive(false);
_OtherBlogPanel.SetActive(true);
Community.Instance.LoadMoreFocus();
Community.Instance.ReloadFocus();
UpdateFocusBtn();
RefreshTitle();
Community.Instance.ReLoadMoreMyBlog();
}
public void UpdateFocusBtn()
{
if (GameManager.gameManager.PlayerDataPool.FriendList.IsExist(CommunityLogic.CommunityPlayerInfo.GUID))
{
_BtnFriend.SetActive(false);
_AlreadyFriend.SetActive(true);
}
else
{
_BtnFriend.SetActive(true);
_AlreadyFriend.SetActive(false);
}
for (int i = 0; i < Community.Instance._CommunityPlayerInfos.Count; ++i)
{
if (Community.Instance._CommunityPlayerInfos[i].GUID == CommunityLogic.CommunityPlayerInfo.GUID)
{
_BtnFocus.SetActive(false);
_BtnCancelFocus.SetActive(true);
return;
}
}
_BtnFocus.SetActive(true);
_BtnCancelFocus.SetActive(false);
}
public void OnBtnFocus()
{
CG_REQ_WATCH_ROLE packet = (CG_REQ_WATCH_ROLE)PacketDistributed.CreatePacket(MessageID.PACKET_CG_REQ_WATCH_ROLE);
packet.Roleguid = CommunityLogic.CommunityPlayerInfo.GUID;
packet.SendPacket();
}
public void OnBtnCancelFocus()
{
CG_REQ_DISWATCH_ROLE packet = (CG_REQ_DISWATCH_ROLE)PacketDistributed.CreatePacket(MessageID.PACKET_CG_REQ_DISWATCH_ROLE);
packet.Roleguid = CommunityLogic.CommunityPlayerInfo.GUID;
packet.SendPacket();
}
public void OnBtnFriend()
{
//如果非玩家,则不显示
if (GlobeVar.INVALID_GUID == CommunityLogic.CommunityPlayerInfo.GUID)
{
return;
}
if (Singleton<ObjManager>.Instance.MainPlayer != null)
{
Singleton<ObjManager>.Instance.MainPlayer.ReqAddFriend(CommunityLogic.CommunityPlayerInfo.GUID);
}
}
public void RetFocus(GC_RET_WATCH_ROLE packet)
{
Community.Instance.ReloadFocus();
}
public void RetFocus(GC_RET_DISWATCH_ROLE packet)
{
Community.Instance.ReloadFocus();
}
#endregion
#region focus page
public UIContainerBase _FocusPlayersContainer;
public void InitFocusPlayersPage()
{
_FocusBlogPanel.SetActive(false);
_MyBlogPanel.SetActive(false);
_FocusPlayersPanel.SetActive(true);
_MsgHistoryPanel.SetActive(false);
_OtherBlogPanel.SetActive(false);
if (Community.Instance._CommunityPlayerInfos == null || Community.Instance._CommunityPlayerInfos.Count == 0)
{
Community.Instance.ReloadFocus();
}
else
{
UpdateFocusList();
}
}
public void UpdateFocusList()
{
_FocusPlayersContainer.InitContentItem(Community.Instance._CommunityPlayerInfos);
CommunityLogic.Instance()._EmptyTip.text = "";
if (Community.Instance._CommunityPlayerInfos.Count > 0)
{
CommunityLogic.Instance()._EmptyTip.text = "";
}
else
{
CommunityLogic.Instance()._EmptyTip.text = StrDictionary.GetClientDictionaryString("#{39019}");
}
}
public void BackToMyBlog()
{
_FocusBlogPanel.SetActive(false);
_MyBlogPanel.SetActive(true);
_FocusPlayersPanel.SetActive(false);
_MsgHistoryPanel.SetActive(false);
//if (Community.Instance._LoadedPlayerBlogs.Count > 0)
//{
// CommunityLogic.Instance()._EmptyTip.text = "";
//}
//else if(CommunityLogic.Instance().IsShowingMyBlog())
//{
// CommunityLogic.Instance()._EmptyTip.text = StrDictionary.GetClientDictionaryString("#{39020}");
//}
//else if (!CommunityLogic.Instance().IsShowingMyBlog())
//{
// CommunityLogic.Instance()._EmptyTip.text = StrDictionary.GetClientDictionaryString("#{39004}");
//}
Community.Instance.ReLoadMoreMyBlog();
}
public void BackToMain()
{
if (_MyBlogPanel.activeSelf)
{
BackToMyBlog();
}
else if (_OtherBlogPanel.activeSelf)
{
Community.Instance.ReLoadMoreMyBlog();
}
else
{
InitFocusBlogPage();
}
}
#endregion
#region history msg page
public UIContainerBlog _HistoryMsgContainer;
public void InitHistoryMsgPage()
{
_FocusBlogPanel.SetActive(false);
_MyBlogPanel.SetActive(false);
_FocusPlayersPanel.SetActive(false);
_MsgHistoryPanel.SetActive(true);
_OtherBlogPanel.SetActive(false);
_HistoryMsgContainer.InitContentItem(null);
Community.Instance.ReLoadMoreHistory();
}
public void LoadMoreHistory()
{
Community.Instance.LoadMoreHistory();
}
public void UpdateHistoryMsg()
{
_HistoryMsgContainer.InitContentItem(Community.Instance._MyHistoryMsg, OnClickHistoryMsg);
if (Community.Instance._MyHistoryMsg.Count > 0)
{
CommunityLogic.Instance()._EmptyTip.text = "";
}
else
{
CommunityLogic.Instance()._EmptyTip.text = StrDictionary.GetClientDictionaryString("#{39017}");
}
}
private void OnClickHistoryMsg(object msgObj)
{
CommunityHistoryMsgInfo msgInfo = msgObj as CommunityHistoryMsgInfo;
if (msgInfo == null)
return;
LogModule.DebugLog("Click history Msg");
}
#endregion
#region tip
public void OnLoadNewMsg()
{
InitHistoryMsgPage();
Community.Instance.ResetBlogMsg();
}
#endregion
}