using System; using MotionFramework; using UnityEngine; namespace DefaultNamespace.Component { public class MyFriendComponent : MonoBehaviour { [SerializeField] private Transform contentParent; [SerializeField] private GameObject friendItemPrefab; async void Start() { try { Debug.Log("开始获取好友列表..."); var friendResponse = await MotionEngine.GetModule().GetMyFriend(); // 检查响应状态码 if (friendResponse != null && friendResponse.code == 0) { Debug.Log($"成功获取好友列表,共 {friendResponse.data?.data?.Length ?? 0} 个好友"); Debug.Log($"当前页码: {friendResponse.data?.page ?? "未知"}, 总页数: {friendResponse.data?.allPage ?? 0}"); // 处理好友数据 if (friendResponse.data?.data != null && friendResponse.data.data.Length > 0) { Debug.Log($"开始创建 {friendResponse.data.data.Length} 个好友项..."); foreach (var friend in friendResponse.data.data) { // 实例化好友项 var friendItem = Instantiate(friendItemPrefab, contentParent); friendItem.SetActive(true); // 获取或添加FriendItemComponent组件 var friendItemComponent = friendItem.GetComponent(); if (friendItemComponent == null) { friendItemComponent = friendItem.AddComponent(); Debug.Log($"为好友项 {friend.user_username} 添加了FriendItemComponent组件"); } // 初始化好友项数据(异步下载头像) friendItemComponent.InitializeFriendItem(friend); Debug.Log($"好友项创建完成: {friend.user_username}, ID: {friend.friend_id}, 等级: {friend.user_honor_level}"); } Debug.Log("所有好友项创建完成,头像将异步下载"); } else { Debug.Log("当前没有好友"); } } else { Debug.LogWarning($"获取好友列表失败,状态码: {friendResponse?.code ?? -1}, 消息: {friendResponse?.msg ?? "未知错误"}"); } } catch (System.Exception ex) { Debug.LogError($"获取好友列表时发生异常: {ex.Message}"); } } } }