Esempio n. 1
0
        /// <summary>
        ///   The on auto subscribed item disposed.
        /// </summary>
        private void AutoSubscribedMmoObject_OnMmoObjectDisposed(MmoObjectDisposedMessage message)
        {
            MessageCounters.CounterReceive.Increment();

            lock (this.SyncRoot)
            {
                MmoObjectAutoSubscription subscription;
                if (this.autoManagedItemSubscriptions.TryGetValue(message.Source, out subscription))
                {
                    this.AutoUnsubscribeMmoObject(subscription);
                }
            }
        }
Esempio n. 2
0
        void Radar_OnCharacterDisposed(MmoObjectDisposedMessage message)
        {
            var character = message.Source as Character;

            if (character == null)
            {
                return;
            }

            this.visibleCharacters[character].Dispose();
            this.visibleCharacters.Remove(character);

            // exiting aggro range
            this.OnExitRadarRange(character);
        }
Esempio n. 3
0
        /// <summary>
        /// The attached item disposed.
        /// </summary>
        private void AttachedItem_OnMmoObjectDisposed(MmoObjectDisposedMessage message)
        {
            MessageCounters.CounterReceive.Increment();

            lock (this.SyncRoot)
            {
                if (message.Source == this.Owner)
                {
                    this.itemMovementSubscription.Dispose();
                    this.itemMovementSubscription = null;

                    this.Owner = null;
                }
            }
        }