备份CatanBuilding瘦身独立工程

This commit is contained in:
JSD\13999
2026-05-26 16:15:54 +08:00
commit 2d0e6a61b7
12001 changed files with 2431925 additions and 0 deletions

View File

@@ -0,0 +1,254 @@
using asap.core;
using GameCore;
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.UI;
namespace game
{
public class FriendRecommendedItem : FriendAddItem
{
TMP_Text text_name;
Head btn_head;
TMP_Text text_num;
GameObject btn_invite_root;
Button btn_invite;
GameObject btn_invite_icon_loading;
GameObject btn_invite_p_text;
GameObject btn_invite_gray_root;
Button btn_invite_gray;
Button btn_skip;
#region
public override void SetData(FishingFriendAddPanel panel, FriendAddItemData data, UnityAction<FriendAddItemData> callback)
{
m_Panel = panel;
if (data == null || data.FriendInfo == null) return;
BFriendInfo bFriendInfo = data.FriendInfo;
base.SetData(panel, data, callback);
InitUI();
ResumeScale();
EnableBtn();
if (string.IsNullOrEmpty(bFriendInfo.DisplayName))
{
bFriendInfo.DisplayName = GContext.container.Resolve<game.IUserService>().GetDefaultName(bFriendInfo.PlayFabId);
}
text_name.text = bFriendInfo.DisplayName;
btn_head.SetData(bFriendInfo.AvatarUrl);
text_num.text = "" + bFriendInfo.Level;
if (data.Extra == 1)
{
btn_skip.gameObject.SetActive(false);
}
else
{
btn_skip.gameObject.SetActive(true);
}
string userID = GContext.container.Resolve<IUserService>().UserId;
if (userID.Equals(bFriendInfo.PlayFabId) || GContext.container.Resolve<FriendService>().IsFriend(bFriendInfo.PlayFabId))
{
btn_invite_root.SetActive(false);
btn_invite_gray_root.SetActive(true);
}
else
{
btn_invite_root.SetActive(true);
btn_invite_gray_root.SetActive(false);
}
m_IsSkipping = false;
m_IsInviting = false;
}
#endregion
#region UI
bool m_IsSkipping = false;
private void OnBtnInviteGrayClickListener()
{
if (m_Data == null) return;
ToastPanel.Show(LocalizationMgr.GetText("UI_ToastPanel_94"));
}
private void OnBtnSkipClick()
{
if (m_Data == null) return;
DisableBtn();
LockScrollView();
StartScalingAnimation(() =>
{
//if (Callback != null)
//{
// Callback(m_Data);
//}
if (m_Panel != null)
{
m_Panel.RemoveRecommendedData(m_Data);
}
EnableBtn();
});
//if (m_IsSkipping == true) return;
//m_IsSkipping = true;
//if (Callback != null)
//{
// Callback(m_Data);
//}
//m_IsSkipping = false;
}
bool m_IsInviting = false;
private void OnBtnInviteClick()
{
if (m_Data == null) return;
DisableBtn();
LockScrollView();
StartScalingAnimation(() =>
{
//if (Callback != null)
//{
// Callback(m_Data);
//}
if (m_Panel != null)
{
m_Panel.StartRecommendedInvite(m_Data);
}
EnableBtn();
});
// if (m_IsInviting == true) return;
// m_IsInviting = true;
// if (btn_invite_p_text != null)
// {
// btn_invite_p_text.SetActive(false);
// }
// if (btn_invite_icon_loading != null)
// {
// btn_invite_icon_loading.SetActive(true);
// }
// string json = await GContext.container.Resolve<FriendService>().AddFriend(m_Data.FriendInfo.PlayFabId);
// if (!string.IsNullOrEmpty(json))
// {
// // code 1添加好友成功-1我的好友已满-2对方好友已满-3获取对方好友列表失败-4我加对方好友失败-5对方加我好友失败2已经添加过对方好友
// AddFriendResp addFriendResp = Newtonsoft.Json.JsonConvert.DeserializeObject<AddFriendResp>(json);
// if (addFriendResp != null)
// {
//#if AGG
// using (var e = GEvent.GameEvent("friend_send"))
// {
// e.AddContent("playfabid", GContext.container.Resolve<IUserService>().UserId)
// .AddContent("friendplayfabid", m_Data.FriendInfo.PlayFabId)
// .AddContent("code", addFriendResp.Code)
// .AddContent("friendcode", GContext.container.Resolve<FriendService>().GetInvitationCodeByPlayFabID(m_Data.FriendInfo.PlayFabId));
// }
//#endif
// switch (addFriendResp.Code)
// {
// case FriendHelper.Code_OK:
// case FriendHelper.Code_AddFriend_HaveAddedBefore_OK:
// ToastPanel.Show(LocalizationMgr.GetText("UI_ToastPanel_90"));
// if (Callback != null)
// {
// Callback(m_Data);
// }
// break;
// case FriendHelper.Code_AddFriend_FriendHaveNoLimit:
// ToastPanel.Show(LocalizationMgr.GetText("UI_ToastPanel_91"));
// break;
// case FriendHelper.Code_AddFriend_IHaveNoLimit:
// ToastPanel.Show(LocalizationMgr.GetText("UI_ToastPanel_92"));
// break;
// case FriendHelper.Code_AddFriend_GetFriendList_Failed_PlayFabError:
// case FriendHelper.Code_AddFriend_IAddFriend_Failed_PlayFabError:
// case FriendHelper.Code_AddFriend_FriendAddMe_Failed_PlayFabError:
// ToastPanel.Show(LocalizationMgr.GetText("UI_ToastPanel_93"));
// break;
// default:
// ToastPanel.Show(LocalizationMgr.GetText("UI_ToastPanel_93"));
// break;
// }
// }
// }
// if (btn_invite_icon_loading != null)
// {
// btn_invite_icon_loading.SetActive(false);
// }
// if (btn_invite_p_text != null)
// {
// btn_invite_p_text.SetActive(true);
// }
// m_IsInviting = false;
}
bool m_IsInit = false;
private void InitUI()
{
if (m_IsInit == true) return;
RectTransform rectTransform = transform.GetComponent<RectTransform>();
originalScale = rectTransform.localScale;
text_name = transform.Find("text_name").GetComponent<TMP_Text>();
btn_head = transform.Find("btn_head").GetComponent<Head>();
text_num = transform.Find("icon_rank/icon/text_num").GetComponent<TMP_Text>();
btn_invite_root = transform.Find("btn_invite").gameObject;
btn_invite = transform.Find("btn_invite/btn_green_c").GetComponent<Button>();
btn_invite_icon_loading = transform.Find("btn_invite/btn_green_c/Ani_Container/icon_loading").gameObject;
btn_invite_p_text = transform.Find("btn_invite/btn_green_c/Ani_Container/p_text").gameObject;
btn_invite.onClick.AddListener(OnBtnInviteClick);
btn_invite_gray_root = transform.Find("btn_invite_gray").gameObject;
btn_invite_gray = transform.Find("btn_invite_gray/btn_green_c").GetComponent<Button>();
btn_invite_gray.onClick.AddListener(OnBtnInviteGrayClickListener);
btn_invite_gray_root.SetActive(false);
btn_skip = transform.Find("btn_skip/btn_green_c").GetComponent<Button>();
btn_skip.onClick.AddListener(OnBtnSkipClick);
m_IsInit = true;
}
private void DisableBtn()
{
if (btn_invite != null)
{
btn_invite.enabled = false;
}
if (btn_skip != null)
{
btn_skip.enabled = false;
}
}
private void EnableBtn()
{
if (btn_invite != null)
{
btn_invite.enabled = true;
}
if (btn_skip != null)
{
btn_skip.enabled = true;
}
}
#endregion
}
}