//---------------------------------------------------------------------------------------------------------
        // Override abstract method
        //---------------------------------------------------------------------------------------------------------
        public override void notify()
        {
            //Debug.WriteLine("RemoveAlien_Observer: {0} {1}", this.pSubject.pObjA, this.pSubject.pObjB);

            this.pUFO = this.pSubject.pObjA;
            Debug.Assert(this.pUFO != null);

            if (pUFO.bMarkForDeath == false)
            {
                pUFO.bMarkForDeath = true;
                //   Delay
                UFOExplosionObserver pObserver = new UFOExplosionObserver(this);
                DelayedObjectMan.Attach(pObserver);
            }
        }
 public UFOExplosionObserver(UFOExplosionObserver b)
 {
     this.pUFO = b.pUFO;
 }