public void Kill() { TimeSpan FrameInterval = new TimeSpan(0); Animation An = AnimationManager.getInstance().Find(AnimName.UfoDeath); TimeEventManager.getInstance().Add(TimeEventManager.getInstance().GetCurrentTime() + FrameInterval, An, delegate { Actions.Animate(An, this); }); }
public static void Animate(Animation Anim, Bomb bomb) { bomb.FlipSprite(Anim.getNextFrame()); if (bomb.getStatus()) { TimeSpan FrameInterval = new TimeSpan(2000000); Animation An = AnimationManager.getInstance().Find(AnimName.BombAnim); TimeEventManager.getInstance().Add(TimeEventManager.getInstance().GetCurrentTime() + FrameInterval, An, delegate { Actions.Animate(An, bomb); }); } }
public override void VisitBomb(Bomb inBomb) { ((Super)(GameObjMananger.getInstance().Find(GameObjName.Super))).ReloadBomb(inBomb); if (Status == playerStatus.Live) { TimeSpan FrameInterval = new TimeSpan(0); Animation An = AnimationManager.getInstance().Find(AnimName.ShipDeath); TimeEventManager.getInstance().Add(TimeEventManager.getInstance().GetCurrentTime() + FrameInterval, An, delegate { Actions.Animate(An, this); }); } }
public void Update(Column inColumn) { if (usedBomb < MaxBomb) { bool drop = DropBomb(inColumn); if (drop) { TimeSpan FrameInterval = new TimeSpan(1750000); Animation An = AnimationManager.getInstance().Find(AnimName.BombAnim); TimeEventManager.getInstance().Add(TimeEventManager.getInstance().GetCurrentTime() + FrameInterval, An, delegate { Actions.Animate(An, inColumn.getAssignedBomb()); }); } } }
public void Initialize(GraphicsDeviceManager graphics, SpriteBatch spritebatch) { TextureManager.getInstance().Initialize(); TextureManager.getInstance().CreateGameTextures(); SoundManager.getInstance().Initialize(); SoundManager.getInstance().CreateSounds(); ImageManager.getInstance().Initialize(); ImageManager.getInstance().CreateGameImages(); SpriteManager.getInstance().Initialize(); SpriteManager.getInstance().CreateAllSprites(); AnimationManager.getInstance().Initialize(); AnimationManager.getInstance().CreateAnimations(); SpriteBatchManager.getInstance().Initialize(); SpriteBatchManager.getInstance().CreateAllSpriteBatches(graphics.GraphicsDevice); SpriteBatchManager.getInstance().CreateMenu(graphics.GraphicsDevice); ColObjManager.getInstance().Initialize(); GameObjMananger.getInstance().Initialize(); ColGroupManager.getInstance().Initialize(); ColGroupManager.getInstance().Create(); ColPairManager.getInstance().Initialize(); ColPairManager.getInstance().CreateCollisionPairs(); GameObjMananger.getInstance().CreateSuper(); GameObjMananger.getInstance().CreateLevel(graphics.GraphicsDevice); GameObjMananger.getInstance().CreateShield(); GameObjMananger.getInstance().CreateShip(); GameObjMananger.getInstance().CreateUI(); GameObjMananger.getInstance().CreateUfo(); InputManager.Instance().Initialize(); TimeEventManager.getInstance().Initialize(); TimeEventManager.getInstance().StartTimedEvents(); ScreenManager.Instance().CurrentScreen = Screen.MainMenu; ScreenManager.Instance().switchScreen(); getCurrentPlayerData(); CurrLevel = 0; Difficulty = CurrLevel * 2; }
public void CreateAnimations() { ///Create Bomb Animation Animation Bombs = new Animation(SpriteManager.getInstance().find(SpriteName.Bomb), 2, AnimSpeed.Medium, AnimName.BombAnim); Frame Bomb_Frame_1 = new Frame(SpriteName.Bomb, 0); Frame Bomb_Frame_2 = new Frame(SpriteName.BombRev, 1); Bombs.Add(Bomb_Frame_1); Bombs.Add(Bomb_Frame_2); AnimationManager.getInstance().Add(Bombs); ///Create Explosion Animation (Crab) Animation Explosion = new Animation(SpriteManager.getInstance().find(SpriteName.Explosion), 1, AnimSpeed.Medium, AnimName.AlienDeath); Frame Explosion_Frame_1 = new Frame(SpriteName.Explosion, 0); Explosion.Add(Explosion_Frame_1); AnimationManager.getInstance().Add(Explosion); ///Create Explosion Animation (Squid) ///Create Explosion Animation (Octopus) ///Create Explosion Animation (Ship) Animation Death = new Animation(SpriteManager.getInstance().find(SpriteName.Ship), 2, AnimSpeed.Medium, AnimName.ShipDeath); Frame Death_Frame_1 = new Frame(SpriteName.Explosion2, 0); Frame Death_Frame_2 = new Frame(SpriteName.Ship, 0); Death.Add(Death_Frame_1); Death.Add(Death_Frame_2); AnimationManager.getInstance().Add(Death); ///Create Explosion Animation (UFO) Animation UfoExp = new Animation(SpriteManager.getInstance().find(SpriteName.Explosion3), 1, AnimSpeed.Medium, AnimName.UfoDeath); Frame UfoExp_Frame_1 = new Frame(SpriteName.Explosion3, 0); //Frame Bomb_Frame_2 = new Frame(SpriteName.BombRev, 1); UfoExp.Add(UfoExp_Frame_1); AnimationManager.getInstance().Add(UfoExp); }
public void Update(GameTime gameTime) { currentPlayerStatus = ((Ship)(GameObjMananger.getInstance().Find(GameObjName.Ship))).Status; InputManager.Instance().Update(ScreenManager.Instance().CurrentScreen); if (currentPlayerStatus != playerStatus.Dead && ScreenManager.Instance().CurrentScreen == Screen.Game) { ColPairManager.getInstance().Collide(); GameObjMananger.getInstance().Update(gameTime); TimeEventManager.getInstance().Update(gameTime); AnimationManager.getInstance().Update(gameTime); UpdateHIScore(); } if (currentPlayerStatus == playerStatus.Dead && ScreenManager.Instance().CurrentScreen == Screen.Game) { GAMEOVER(); } }