public override void execute() { //GameObject pA = (GameObject)this.pAlien; //GameObject pB = (GameObject)Iterator.GetParent(pA); //pA.remove(); //if (checkParent(pB) == true) //{ // GameObject pC = (GameObject)Iterator.GetParent(pB); // pB.remove(); //} //pA.getProxySprite().setGameSprite(GameSpriteMan.Find(GameSprite.Name.Alien_Explosion)); //GameObjectMan.Find(GameObject.Name.ExplosionGroup).add(pA); //SpriteBatchMan.Find(SpriteBatch.Name.Explosions).attach(pA.getProxySprite()); //pA.activateCollisionSprite(SpriteBatchMan.Find(SpriteBatch.Name.Boxes)); GameSprite pGameSprite = this.pAlien.getProxySprite().getGameSprite(); Scene pScene = SceneMan.GetScene(); if (pGameSprite.getName() == GameSprite.Name.Squid) { pScene.addScoreOne(30); } else if (pGameSprite.getName() == GameSprite.Name.Crab) { pScene.addScoreOne(20); } else if (pGameSprite.getName() == GameSprite.Name.Octopus) { pScene.addScoreOne(10); } FontMan.Find(Font.Name.ScoreOne).updateMessage(pScene.getScoreOne().ToString("D4")); if (pScene.getScoreOne() > pScene.getHighestScore()) { pScene.setHighstScore(pScene.getScoreOne()); FontMan.Find(Font.Name.HighestScore).updateMessage(pScene.getHighestScore().ToString("D4")); } this.pAlien.getProxySprite().setGameSprite(GameSpriteMan.Find(GameSprite.Name.Alien_Explosion)); ExplosionEvent pExplosionEvent = new ExplosionEvent(this.pAlien); TimerMan.Add(TimeEvent.Name.ExplosionEvent, pExplosionEvent, 0.1f); }
//---------------------------------------------------------------------- // Override Abstract methods //---------------------------------------------------------------------- protected override bool derivedCompare(DLink pNodeA, DLink pNodeB) { // ensure pNodeA & pNodeB are not null Debug.Assert(pNodeA != null); Debug.Assert(pNodeB != null); // cast DLink to concrete type GameSprite GameSprite pDataA = (GameSprite)pNodeA; GameSprite pDataB = (GameSprite)pNodeB; return(pDataA.getName() == pDataB.getName()); }