Пример #1
0
        public void Reset()
        {
            this.FlipSprite(SpriteName.Ufo);
            isDying = false;

            this.direction.X = 0;
            this.Position.X  = -70;

            Random X = new Random();
            int    s = X.Next(3);

            switch (s)
            {
            case 0:
                score = 50;
                break;

            case 1:
                score = 100;
                break;

            case 2:
                score = 150;
                break;
            }

            Sound Effect = SoundManager.getInstance().Find(SoundName.UFOMove);

            Effect.PauseSoundLooped();

            TimeSpan FrameInterval = new TimeSpan(0, 0, 20);
            UFO      ufo           = (UFO)GameObjMananger.getInstance().Find(GameObjName.UFO);

            TimeEventManager.getInstance().Add(TimeEventManager.getInstance().GetCurrentTime() + FrameInterval, ufo, delegate { Actions.Act(ufo); });
        }
Пример #2
0
        public static void Act(UFO ufo)
        {
            ufo.setDir(new Vector2(2, 0));
            Sound Effect = SoundManager.getInstance().Find(SoundName.UFOMove);

            Effect.PlaySoundLooped();
        }
Пример #3
0
        public static void Animate(Animation Anim, Ship player)
        {
            if (player.Status == playerStatus.Live)
            {
                player.FlipSprite(Anim.getNextFrame());
                TimeSpan FrameInterval = new TimeSpan(25000000);
                TimeEventManager.getInstance().Add(TimeEventManager.getInstance().GetCurrentTime() + FrameInterval, Anim, delegate { Actions.Animate(Anim, player); });

                Sound Effect = SoundManager.getInstance().Find(SoundName.ShipDeath);
                Effect.PlaySound();

                player.Status = playerStatus.Hit;
            }
            else if (player.Status == playerStatus.Hit)
            {
                GameManager.getInstance().Hit();
                player.FlipSprite(Anim.getNextFrame());

                if (GameManager.getInstance().isDead())
                {
                    TimeSpan FrameInterval = new TimeSpan(0);
                    TimeEventManager.getInstance().Add(TimeEventManager.getInstance().GetCurrentTime() + FrameInterval, Anim, delegate { Actions.Animate(Anim, player); });
                    player.Status = playerStatus.Dead;
                }
                else
                {
                    player.Status = playerStatus.Live;
                }
            }
            else if (player.Status == playerStatus.Dead)
            {
                player.score = GameManager.getInstance().getCurrentScore();
                player.lives = GameManager.getInstance().getCurrentLives();
            }
        }
Пример #4
0
        public bool ShootMissile()
        {
            if (_missile == null)
            {
                Rectangle inRect = ((Ship)(GameObjMananger.getInstance().Find(GameObjName.Ship))).getRectangle();
                _missile = GameObjMananger.getInstance().CreateMissile(new Rectangle(inRect.X + inRect.Width / 2 - 10 / 2, inRect.Y, 10, 16));
                _missile.setStatus(false);

                Sound Effect = SoundManager.getInstance().Find(SoundName.Missile);
                Effect.PlaySound();

                return(true);
            }
            else
            {
                if (!_missile.getStatus())
                {
                    _missile.Position.Y = Position.Y - 2;
                    _missile.setStatus(true);


                    Sound Effect = SoundManager.getInstance().Find(SoundName.Missile);
                    Effect.PlaySound();

                    return(true);
                }
            }

            return(false);
        }
Пример #5
0
        public static void Act(Super Supah)
        {
            Supah.Action();

            TimeSpan FrameInterval = new TimeSpan(0, 0, 0, 0, 1000 - GameManager.getInstance().getDifficulty());//new TimeSpan(5750000);

            TimeEventManager.getInstance().Add(TimeEventManager.getInstance().GetCurrentTime() + FrameInterval, Supah, delegate { Actions.Act(Supah); });

            Sound Effect = (Sound)SoundManager.getInstance().Find(SoundName.AlienMove);

            Effect.PlaySoundLib();
        }
        public void Reset()
        {
            Sound Effect = SoundManager.getInstance().Find(SoundName.UFOMove);

            Effect.PauseSoundLooped();

            CurrLevel  = 0;
            Difficulty = CurrLevel * 2;

            ((Ship)(GameObjMananger.getInstance().Find(GameObjName.Ship))).Reset();
            ((UI)(GameObjMananger.getInstance().Find(GameObjName.Score))).ChangeText(0);
            getCurrentPlayerData();
            GameObjMananger.getInstance().ResetLevel();
        }
        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;
        }
Пример #8
0
        public static void Animate(Animation Anim, UFO Ufo)
        {
            if (!Ufo.isDying)
            {
                Ufo.FlipSprite(Anim.getNextFrame());
                TimeSpan FrameInterval = new TimeSpan(1750000);
                TimeEventManager.getInstance().Add(TimeEventManager.getInstance().GetCurrentTime() + FrameInterval, Anim, delegate { Actions.Animate(Anim, Ufo); });
                Ufo.isDying = true;

                Sound Effect = SoundManager.getInstance().Find(SoundName.UFOKill);
                Effect.PlaySound();
            }
            else
            {
                Ufo.Reset();
                GameManager.getInstance().ScoreUp(Ufo.getScore());
                UI Score = (UI)GameObjMananger.getInstance().Find(GameObjName.Score);
                Score.ChangeText(GameManager.getInstance().getCurrentScore());
            }
        }
Пример #9
0
        public static void Animate(Animation Anim, Alien alien)
        {
            if (!alien.isDying)
            {
                alien.FlipSprite(Anim.getNextFrame());
                TimeSpan FrameInterval = new TimeSpan(1750000);
                TimeEventManager.getInstance().Add(TimeEventManager.getInstance().GetCurrentTime() + FrameInterval, Anim, delegate { Actions.Animate(Anim, alien); });
                alien.isDying = true;

                Sound Effect = SoundManager.getInstance().Find(SoundName.AlienKill);
                Effect.PlaySound();
            }
            else
            {
                GameObjMananger.getInstance().KillObject(alien, SpriteBatchName.Scene);
                GameManager.getInstance().ScoreUp(alien.getScore());
                UI Score = (UI)GameObjMananger.getInstance().Find(GameObjName.Score);
                Score.ChangeText(GameManager.getInstance().getCurrentScore());
                GameManager.getInstance().AlienDead();
            }
        }
Пример #10
0
 protected override void LoadContent()
 {
     TextureManager.getInstance().load(Content, GraphicsDevice);
     SoundManager.getInstance().LoadContent(Content);
 }