protected override void derivedUpdate(ColSubject pColSubject) { //Debug.WriteLine("[Observer({4})] ColPair {5}({3}) - RemoveCollisionPairObserver: {0} vs {1}({2})", pColSubject.pObjA.name, pColSubject.pObjB.name, pColSubject.pObjB.GetHashCode(), this.pColPair.GetHashCode(), this.GetHashCode(), this.pColPair.name); //Debug.WriteLine(this.pColPair + "MARKED FOR DEATH"); if (this.pColPair.bMarkForDeath == false) { //ColPairManager.PrintReport(); this.pColPair.bMarkForDeath = true; //Delay - remove object later RemoveCollisionPairObserver pObserver = new RemoveCollisionPairObserver(this); DelayedObjectManager.Attach(pObserver); } }
public RemoveCollisionPairObserver(RemoveCollisionPairObserver pRCPObserver) { this.pColPair = pRCPObserver.pColPair; }