public override void execute(float deltaTime) { ufo.launch = true; UFOSoundPlay ufoSound = new UFOSoundPlay(ufo); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateUFO, ufoSound, 0); }
public override void notify() { Debug.WriteLine("BombShipCollideObserver"); Bomb bomb = (Bomb)this.colSubject.gameObjA; CannonShip ship = (CannonShip)this.colSubject.gameObjB; Debug.Assert(bomb != null); Debug.Assert(ship != null); // bomb.reset(); ship.setShipState(ShipManager.ShipStateType.End); ship.explode(Sprite.SpriteName.ShipExplosion); // ActivateBombSprite abs = new ActivateBombSprite(bomb); // TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateBomb, abs, 0); ship.removeFromGameManager(); ShipRemove objRemove = new ShipRemove(ship); TimerManager.sortedAdd(TimerEvent.TimerEventName.ShipRemove, objRemove, Unit.shipDeathAnimationTime); //reduce ship count PlayerManager.reduceShipCount(); ActivateShip actiavteShip = new ActivateShip(); TimerManager.sortedAdd(TimerEvent.TimerEventName.ShipRemove, actiavteShip, Unit.shipDeathAnimationTime + 0.1f); }
public override void notify() { Debug.WriteLine("Action after the Alien and Missile hits goes here"); Debug.WriteLine("UFOMissileObserver Observer: {0} {1}", this.colSubject.gameObjA.cGameObjectName, this.colSubject.gameObjB.cGameObjectName); Missile missile = (Missile)this.colSubject.gameObjA; UFO ufo = (UFO)this.colSubject.gameObjB; missile.remove(); ufo.explode(Sprite.SpriteName.AlienExplosion); //ufo.removeFromGameManager(); //ufo.markForDeath(); //Update Score PlayerManager.getCurrentPlayer().addScore(Unit.ufoScore); ufo.launch = false; UFODeathAnimation deathAni = new UFODeathAnimation(ufo); TimerManager.sortedAdd(TimerEvent.TimerEventName.DeathAnimation, deathAni, Unit.ufoDeathAnimationTime); Random random = new Random(DateTime.UtcNow.Millisecond); int number = random.Next(Unit.UFOLaunchMin, Unit.UFOLaunchMax); UFOActivate ufoAct = new UFOActivate(ufo); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateUFO, ufoAct, number); }
public override void execute(float deltaTime) { IrrKlang.ISound music = null; //MoveGrid grid.moveGrid(); //Play Sound if (count == 0) { music = soundEngine.Play2D("fastinvader4.wav"); count++; } else if (count == 1) { music = soundEngine.Play2D("fastinvader3.wav"); count++; } else if (count == 2) { music = soundEngine.Play2D("fastinvader2.wav"); count++; } else if (count == 3) { music = soundEngine.Play2D("fastinvader1.wav"); count = 0; } music.Volume = 0.2f; TimerManager.sortedAdd(TimerEvent.TimerEventName.SpriteAnimation, this, Unit.AlienGridMoveEventTime); }
public void loadAliens() { AlienFactory alienFactory = FactoryManager.getAlienFactry(); AlienGrid alienGrid = (AlienGrid)alienFactory.createAlien(Alien.AlienType.AlienGrid, GameObject.GameObjectName.AlienGrid, 0); alienFactory.setParent(alienGrid); for (int i = 0; i < 11; i++) { alienFactory.setParent(alienGrid); Alien pColumn = alienFactory.createAlien(Alien.AlienType.Column, GameObject.GameObjectName.Column, i + 1, 0.0f, 0.0f); //set Parent alienFactory.setParent(pColumn); float x = Unit.alienPosX; float y = Unit.alienPosY; alienFactory.createAlien(Alien.AlienType.Crab, GameObject.GameObjectName.Crab, i + 2, x + i * 50.0f, y); alienFactory.createAlien(Alien.AlienType.Squid, GameObject.GameObjectName.Squid, i + 3, x + i * 50.0f, y - 60); alienFactory.createAlien(Alien.AlienType.Squid, GameObject.GameObjectName.Squid, i + 4, x + i * 50.0f, y - 120); alienFactory.createAlien(Alien.AlienType.Octopus, GameObject.GameObjectName.Octopus, i + 5, x + i * 50.0f, y - 180); alienFactory.createAlien(Alien.AlienType.Octopus, GameObject.GameObjectName.Octopus, i + 6, x + i * 50.0f, y - 240); } IrrKlang.ISoundEngine sndEngine = FactoryManager.getSoundEngine(); AlienGridAnimation alienGridAni = new AlienGridAnimation(alienGrid, sndEngine); TimerManager.sortedAdd(TimerEvent.TimerEventName.SpriteAnimation, alienGridAni, Unit.AlienGridMoveEventTime); }
public override void execute(float deltaTime) { IrrKlang.ISoundEngine soundEngine = FactoryManager.getSoundEngine(); if (ufo.launch) { IrrKlang.ISound music = soundEngine.Play2D("ufo_lowpitch.wav"); music.Volume = 0.2f; TimerManager.sortedAdd(TimerEvent.TimerEventName.UFOPlaySound, this, 2.2f); } }
public override void notify() { if (PlayerManager.getCurrentPlayer().ships == 0) { // GameManager.setGameState(new GameEndState()); // GameManager.load(); ActivateGameEnd abs6 = new ActivateGameEnd(); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateGameEnd, abs6, Unit.gameFreezeTime); } }
public override void execute(float deltaTime) { associateBombs(); if (bomb == null) { Debug.WriteLine("bonb null"); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateGameEnd, this, deltaTime); } else { bomb.active = true; } // TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateBomb, this, deltaTime); }
public void loadUFO() { UFOFactory ufoFactory = FactoryManager.getUfoFactry(); UFORoot ufoRoot = (UFORoot)ufoFactory.createUFO(UFO.UFOType.UFORoot, GameObject.GameObjectName.UFORoot, 0, 0, 0); ufoFactory.setParent(ufoRoot); UFO ufo = ufoFactory.createUFO(UFO.UFOType.AlienUFO, GameObject.GameObjectName.AlienUFO, 1, Unit.ufoPosX, Unit.ufoPosY); Random random = new Random(DateTime.UtcNow.Millisecond); int number = random.Next(1, 40); UFOActivate ufoAct = new UFOActivate(ufo); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateUFO, ufoAct, number); }
public void loadBombs() { BombFactory bombFactory = FactoryManager.getBombFactry(); Bomb bombRoot = bombFactory.createBomb(Bomb.BombType.BombRoot, GameObject.GameObjectName.BombRoot); bombFactory.setParent(bombRoot); Bomb ZigZag = null; ZigZag = bombFactory.createBomb(Bomb.BombType.ZigZag, GameObject.GameObjectName.Bomb, 0, 996, 1024); ActivateBombSprite abs = new ActivateBombSprite(ZigZag); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateGameEnd, abs, 1); Bomb FlippingBomb = null; FlippingBomb = bombFactory.createBomb(Bomb.BombType.Flipping, GameObject.GameObjectName.Bomb, 1, 996, 1024); ActivateBombSprite abs2 = new ActivateBombSprite(FlippingBomb); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateGameEnd, abs2, 3); Bomb plungerBomb = null; plungerBomb = bombFactory.createBomb(Bomb.BombType.Plunger, GameObject.GameObjectName.Bomb, 2, 996, 1024); ActivateBombSprite abs3 = new ActivateBombSprite(plungerBomb); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateGameEnd, abs3, 5); Bomb ZigZag1 = null; ZigZag1 = bombFactory.createBomb(Bomb.BombType.ZigZag, GameObject.GameObjectName.Bomb, 0, 996, 1024); ActivateBombSprite abs4 = new ActivateBombSprite(ZigZag1); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateGameEnd, abs4, 6); Bomb FlippingBomb1 = null; FlippingBomb1 = bombFactory.createBomb(Bomb.BombType.Flipping, GameObject.GameObjectName.Bomb, 1, 996, 1024); ActivateBombSprite abs5 = new ActivateBombSprite(FlippingBomb1); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateGameEnd, abs5, 7); Bomb plungerBomb1 = null; plungerBomb1 = bombFactory.createBomb(Bomb.BombType.Plunger, GameObject.GameObjectName.Bomb, 2, 996, 1024); ActivateBombSprite abs6 = new ActivateBombSprite(plungerBomb1); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateGameEnd, abs6, 8); }
public override void notify() { TimerManager.addDelta(delta); FactoryManager.getBombFactry().removeChildren(); UFO ufo = (UFO)FactoryManager.getUfoFactry().cParent.pChild; if (ufo.launch) { ufo.reset(); Random random = new Random(DateTime.UtcNow.Millisecond); int number = random.Next(1, 40); UFOActivate ufoAct = new UFOActivate(ufo); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateUFO, ufoAct, number); } // Game.freezeGame(); }
public override void notify() { Debug.WriteLine("Inside BombCollideObserver"); int random = Utilty.getRandomNum(5, 10); Bomb bomb = (Bomb)this.colSubject.gameObjA; // bomb.reset(); // Debug.Assert(bomb != null); bomb.remove(); ActivateBombSprite abs = new ActivateBombSprite(); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateGameEnd, abs, random); }
// Move to the next image and if at end, start from the first image again public override void execute(float deltaTime) { ImageHolder imageHolder = null; if (cCurrImg.pSNext != null) { imageHolder = (ImageHolder)cCurrImg.pSNext; } else { imageHolder = (ImageHolder)cImgList; } cCurrImg = imageHolder; this.cSpriteGame.changeImage(imageHolder.cImage); // Add itself back to timer TimerManager.sortedAdd(TimerEvent.TimerEventName.SpriteAnimation, this, Unit.AlienImageSwapEventTime); }
public void loadAnimationsTimer() { AlienImageAnimation squidSprite = new AlienImageAnimation(Sprite.SpriteName.Squid); squidSprite.attachImg(Image.ImageName.SquidO); squidSprite.attachImg(Image.ImageName.SquidC); AlienImageAnimation crabSprite = new AlienImageAnimation(Sprite.SpriteName.Crab); crabSprite.attachImg(Image.ImageName.CrabO); crabSprite.attachImg(Image.ImageName.CrabC); AlienImageAnimation octopusSprite = new AlienImageAnimation(Sprite.SpriteName.Octopus); octopusSprite.attachImg(Image.ImageName.OctopusO); octopusSprite.attachImg(Image.ImageName.OctopusC); TimerManager.sortedAdd(TimerEvent.TimerEventName.SpriteAnimation, squidSprite, Unit.AlienImageSwapEventTime); TimerManager.sortedAdd(TimerEvent.TimerEventName.SpriteAnimation, crabSprite, Unit.AlienImageSwapEventTime); TimerManager.sortedAdd(TimerEvent.TimerEventName.SpriteAnimation, octopusSprite, Unit.AlienImageSwapEventTime); // Bomb Animations AlienImageAnimation zigZagSprite = new AlienImageAnimation(Sprite.SpriteName.ZigZag); zigZagSprite.attachImg(Image.ImageName.ZigZagU); zigZagSprite.attachImg(Image.ImageName.ZigZagD); AlienImageAnimation flippingSprite = new AlienImageAnimation(Sprite.SpriteName.Flipping); flippingSprite.attachImg(Image.ImageName.FlippingU); flippingSprite.attachImg(Image.ImageName.FlippingD); AlienImageAnimation plungerSprite = new AlienImageAnimation(Sprite.SpriteName.Plunger); plungerSprite.attachImg(Image.ImageName.PlungerU); plungerSprite.attachImg(Image.ImageName.PlungerD); TimerManager.sortedAdd(TimerEvent.TimerEventName.SpriteAnimation, zigZagSprite, Unit.bombImageSwapTime); TimerManager.sortedAdd(TimerEvent.TimerEventName.SpriteAnimation, flippingSprite, Unit.bombImageSwapTime); TimerManager.sortedAdd(TimerEvent.TimerEventName.SpriteAnimation, plungerSprite, Unit.bombImageSwapTime); }
public override void notify() { Debug.WriteLine("Action after the Alien and Missile hits goes here"); Debug.WriteLine("AlienMissile Observer: {0} {1}", this.colSubject.gameObjA.cGameObjectName, this.colSubject.gameObjB.cGameObjectName); Alien a = (Alien)this.colSubject.gameObjA; Missile missile = (Missile)this.colSubject.gameObjB; missile.remove(); a.explode(Sprite.SpriteName.AlienExplosion); a.markForDeath(); //Update Score if (a.cGameObjectName == GameObject.GameObjectName.Crab) { PlayerManager.getCurrentPlayer().addScore(Unit.crabPoints); } else if (a.cGameObjectName == GameObject.GameObjectName.Squid) { PlayerManager.getCurrentPlayer().addScore(Unit.squidPoints); } else if (a.cGameObjectName == GameObject.GameObjectName.Octopus) { PlayerManager.getCurrentPlayer().addScore(Unit.octopusPoints); } AlienDeathAnimation deathAni = new AlienDeathAnimation(a); TimerManager.sortedAdd(TimerEvent.TimerEventName.DeathAnimation, deathAni, Unit.alienDeathAnimationTime); //Check Columns for death Column column = (Column)a.pParent; column.markForDeathCheck(); //Check Grids for death AlienGrid grid = (AlienGrid)column.pParent; grid.chehckForEmpty(); }
public override void notify() { UFO ufo = null; if (this.colSubject.gameObjA.cGameObjectName == GameObject.GameObjectName.AlienUFO) { ufo = (UFO)this.colSubject.gameObjA; } else { ufo = (UFO)this.colSubject.gameObjB; } Random random = new Random(DateTime.UtcNow.Millisecond); int number = random.Next(Unit.UFOLaunchMin, Unit.UFOLaunchMax); ufo.reset(); ufo.launch = false; UFOActivate ufoAct = new UFOActivate(ufo); TimerManager.sortedAdd(TimerEvent.TimerEventName.ActivateUFO, ufoAct, number); }