private void ProfileManager_OnReciveOnlneFriends(int[] onlineFriendIds)
    {
        friendList = FriendsTableAccessor.GetFriendsList();
        Debug.Log("FRIENDS COUNT: " + friendList.Count);

        var friendsProfileDatas = new FriendProfileData[friendList.Count];

        for (int i = 0; i < friendList.Count; i++)
        {
            var item = friendList[i];
            friendsIdMap.Add(item.id, item);

            var status = Status.Offline;

            for (int j = 0; j < onlineFriendIds.Length; j++)
            {
                status = friendsIdMap.ContainsKey(onlineFriendIds[i]) ? Status.Online : Status.Offline;
            }

            friendsProfileDatas[i] = new FriendProfileData {
                userData = item, status = status
            };
        }

        OnFriendsRecived(friendsProfileDatas);
    }
    public void AcceptFriend(UserData userData)
    {
        var json = JsonConvert.SerializeObject(new AddToFriendsRequest {
            id = userData.id, request = false
        });

        networkManager.Send(ClientEvents.ADD_TO_FRIENDS_REQUEST, json);

        friendList.Add(userData);

        friendsIdMap.Add(userData.id, userData);

        OnAddToFriends(userData);

        friendRequests.Dequeue();

        FriendsTableAccessor.AddFriend(userData);

        if (friendRequests.Count > 0)
        {
            OnFriendRequest(friendRequests.Dequeue());
        }
    }
Пример #3
0
 public void Perform()
 {
     FriendsTableAccessor.AddFriend(new UserData {
         id = 4, nick = "Unnamed"
     });
 }