private void FireChangeEvent(BnetFriendChangelist changelist) { foreach (ChangeListener listener in this.m_changeListeners.ToArray()) { listener.Fire(changelist); } }
private void OnFriendsChanged(BnetFriendChangelist changelist, object userData) { List <BnetPlayer> removedFriends = changelist.GetRemovedFriends(); if ((removedFriends != null) && removedFriends.Contains(this.m_selectedFriend)) { this.m_selectedFriend = null; } }
private void FirePendingFriendsChangedEvent() { BnetFriendChangelist changelist = this.m_pendingChangelist.CreateChangelist(); if (this.m_pendingChangelist.GetCount() == 0) { BnetPresenceMgr.Get().RemovePlayersChangedListener(new BnetPresenceMgr.PlayersChangedCallback(this.OnPendingPlayersChanged)); } this.FireChangeEvent(changelist); }
public BnetFriendChangelist CreateChangelist() { BnetFriendChangelist changelist = new BnetFriendChangelist(); for (int i = this.m_friends.Count - 1; i >= 0; i--) { BnetPlayer friend = this.m_friends[i]; if (friend.IsDisplayable()) { changelist.AddAddedFriend(friend); this.m_friends.RemoveAt(i); } } return(changelist); }
private void OnFriendsChanged(BnetFriendChangelist changelist, object userData) { if (this.HasChallenge()) { List <BnetPlayer> removedFriends = changelist.GetRemovedFriends(); if (removedFriends != null) { BnetPlayer opponent = this.GetOpponent(BnetPresenceMgr.Get().GetMyPlayer()); if (opponent != null) { foreach (BnetPlayer player2 in removedFriends) { if (player2 == opponent) { this.RevertTavernBrawlStatus(); this.CleanUpChallengeData(true); this.FireChangedEvent(FriendChallengeEvent.OPPONENT_REMOVED_FROM_FRIENDS, opponent); break; } } } } } }
private void OnFriendsChanged(BnetFriendChangelist changelist, object userData) { this.UpdateOnlineCount(); }
public void Fire(BnetFriendChangelist changelist) { base.m_callback(changelist, base.m_userData); }
private void OnFriendsUpdate(BattleNet.FriendsUpdate[] updates) { BnetFriendChangelist changelist = new BnetFriendChangelist(); foreach (BattleNet.FriendsUpdate update in updates) { switch (((BattleNet.FriendsUpdate.Action)update.action)) { case BattleNet.FriendsUpdate.Action.FRIEND_REMOVED: { BnetAccountId id2 = BnetAccountId.CreateFromBnetEntityId(update.entity1); BnetPlayer item = BnetPresenceMgr.Get().GetPlayer(id2); this.m_friends.Remove(item); changelist.AddRemovedFriend(item); this.RemovePendingFriend(item); break; } case BattleNet.FriendsUpdate.Action.FRIEND_INVITE: { BnetInvitation invitation = BnetInvitation.CreateFromFriendsUpdate(update); this.m_receivedInvites.Add(invitation); changelist.AddAddedReceivedInvite(invitation); break; } case BattleNet.FriendsUpdate.Action.FRIEND_INVITE_REMOVED: { BnetInvitation invitation2 = BnetInvitation.CreateFromFriendsUpdate(update); this.m_receivedInvites.Remove(invitation2); changelist.AddRemovedReceivedInvite(invitation2); break; } case BattleNet.FriendsUpdate.Action.FRIEND_SENT_INVITE: { BnetInvitation invitation3 = BnetInvitation.CreateFromFriendsUpdate(update); this.m_sentInvites.Add(invitation3); changelist.AddAddedSentInvite(invitation3); break; } case BattleNet.FriendsUpdate.Action.FRIEND_SENT_INVITE_REMOVED: { BnetInvitation invitation4 = BnetInvitation.CreateFromFriendsUpdate(update); this.m_sentInvites.Remove(invitation4); changelist.AddRemovedSentInvite(invitation4); break; } case BattleNet.FriendsUpdate.Action.FRIEND_ADDED: { BnetAccountId id = BnetAccountId.CreateFromBnetEntityId(update.entity1); BnetPlayer player = BnetPresenceMgr.Get().RegisterPlayer(id); if (player.IsDisplayable()) { this.m_friends.Add(player); changelist.AddAddedFriend(player); } else { this.AddPendingFriend(player); } break; } } } if (!changelist.IsEmpty()) { this.FireChangeEvent(changelist); } }