void IUsersAroundListHUDListView.AddOrUpdateUser(MinimapMetadata.MinimapUserInfo userInfo) { if (userElementDictionary.ContainsKey(userInfo.userId)) { return; } var profile = UserProfileController.userProfilesCatalog.Get(userInfo.userId); if (profile == null) { return; } UsersAroundListHUDListElementView view = null; if (availableElements.Count > 0) { view = availableElements.Dequeue(); } else { view = Instantiate(listElementView, contentPlayers); view.OnMuteUser += OnMuteUser; view.OnShowUserContexMenu += OnUserContextMenu; } view.OnPoolGet(); view.SetUserProfile(profile); userElementDictionary.Add(userInfo.userId, view); OnModifyListCount(); CheckListEmptyState(); }
void IUsersAroundListHUDListView.AddOrUpdateUser(MinimapMetadata.MinimapUserInfo userInfo) { if (userElementDictionary.ContainsKey(userInfo.userId)) { return; } var profile = UserProfileController.userProfilesCatalog.Get(userInfo.userId); if (profile == null) { return; } bool isFriend = false; if (FriendsController.i && FriendsController.i.friends.TryGetValue(userInfo.userId, out FriendsController.UserStatus status)) { isFriend = status.friendshipStatus == FriendshipStatus.FRIEND; } UsersAroundListHUDListElementView view = null; if (availableElements.Count > 0) { view = availableElements.Dequeue(); view.transform.SetParent(isFriend ? contentFriends : contentPlayers); } else { view = Instantiate(listElementView, isFriend ? contentFriends : contentPlayers); view.OnMuteUser += OnMuteUser; view.OnShowUserContexMenu += OnUserContextMenu; } view.OnPoolGet(); view.SetUserProfile(profile); userElementDictionary.Add(userInfo.userId, view); ModifyListCount(isFriend, 1); }
void PoolElementView(UsersAroundListHUDListElementView element) { element.OnPoolRelease(); availableElements.Enqueue(element); }
bool IsInFriendsList(UsersAroundListHUDListElementView element) { return(element.transform.parent == contentFriends); }