예제 #1
0
        public void Remove(Guest guest)
        {
            this.Guests.Remove(guest);

            if (GuestRemoved != null)
            {
                GuestRemoved.Invoke(this, new GuestRemovedEventArgs(guest));
            }
        }
예제 #2
0
        public void Clear()
        {
            Guest[] oldGuests = new Guest[this.Guests.Count];
            this.Guests.CopyTo(oldGuests);

            this.Guests.Clear();

            if (GuestRemoved != null)
            {
                foreach (Guest guest in oldGuests)
                {
                    GuestRemoved.Invoke(this, new GuestRemovedEventArgs(guest));
                }
            }
        }
예제 #3
0
 protected virtual void OnGuestRemoved(Character groupGuest, bool kicked)
 {
     m_clients.Remove(groupGuest.Client);
     GuestRemoved?.Invoke(this, groupGuest, kicked);
 }