| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using UnityEngine.UI;
- using System;
- using Newtonsoft.Json.Linq;
- public class BoxSearchPlayer : MonoBehaviour
- {
- void Awake()
- {
- GetSearchPlayerItemPrefab().SetActive(false);
- }
- void OnEnable()
- {
- PopupMgr.ins.ClearAllTip();
- }
- Transform GetSearchPlayerItemParent()
- {
- return transform.Find("ScrollView/Viewport/Content");
- }
- GameObject GetSearchPlayerItemPrefab()
- {
- return GetSearchPlayerItemParent().Find("Item").gameObject;
- }
- InputField GetSearchInputField()
- {
- return transform.Find("SearchBox/InputField").GetComponent<InputField>();
- }
- long _lastSearchTime = 0;
- public void OnClick_SearchPlayer()
- {
- AudioMgr.ins.PlayBtn();
- if (JCUnityLib.TimeUtils.GetTimestamp() - _lastSearchTime < 3000)
- {
- PopupMgr.ins.ShowTip(TextAutoLanguage2.GetTextByCNKey("操作过于频繁"));
- return;
- }
- else
- {
- _lastSearchTime = JCUnityLib.TimeUtils.GetTimestamp();
- }
- string searchText = GetSearchInputField().text;
- Action<JArray> cb = delegate (JArray list) {
- for (int i = 1; i < GetSearchPlayerItemParent().childCount; i++)
- {
- Destroy(GetSearchPlayerItemParent().GetChild(i).gameObject);
- }
- if (list.Count > 0)
- {
- foreach (var itemInfo in list)
- {
- int userID = itemInfo.Value<int>("id");
- int avatarID = itemInfo.Value<int>("avatarID");
- string avatarUrl = itemInfo.Value<string>("avatarUrl");
- string nickname = itemInfo.Value<string>("nickname");
- bool online = itemInfo.Value<bool>("online");
- long offlineTime = itemInfo.Value<long>("offlineTime");
- GameObject o = Instantiate(GetSearchPlayerItemPrefab(), GetSearchPlayerItemParent());
- o.SetActive(true);
- o.name = userID.ToString();
- RoleMgr.SetAvatarToImage(
- o.transform.Find("Avatar/Sprite").GetComponent<Image>(),
- avatarID, avatarUrl
- );
- o.transform.Find("Name").GetComponent<Text>().text = nickname;
- Button btnYes = o.transform.Find("BtnAdd").GetComponent<Button>();
- btnYes.onClick.RemoveAllListeners();
- btnYes.onClick.AddListener(delegate () {
- AudioMgr.ins.PlayBtn();
- UserPlayer.ins.call("friendComp.requestAddFriend", userID);
- btnYes.interactable = false;
- });
- }
- }
- else
- {
- PopupMgr.ins.ShowTip(TextAutoLanguage2.GetTextByCNKey("没有搜索到目标玩家"));
- }
- };
- UserPlayer.ins.call("friendComp.searchPlayersByID", new object[] { searchText }, cb);
- }
- }
|