Example #1
0
        public UFO(Game game, UFOModel ufoModel, Vector2 position, int strength)
            : base(game)
        {
            this.ufoModel = ufoModel;

            SetXY((int)position.X, (int)position.Y);

            this.strength = strength;

            timeSinceLastShot = TimeSpan.FromMilliseconds(1000 + RandomManager.Instance.Next(500));

            int factor = 30;

            switch (InvasionGame.Scoreboard.DifficultyLevel) {
                case DifficultyLevel.Easy:
                    factor = 50;
                    break;

                case DifficultyLevel.Medium:
                    factor = 35;
                    break;

                case DifficultyLevel.Hard:
                    factor = 30;
                    break;
            }

            switch (ufoModel) {
                case UFOModel.SilverUFO:
                    msDelayShoot = 100*factor;
                    break;

                case UFOModel.OrangeUFO:
                    msDelayShoot = 10*factor;
                    break;

                case UFOModel.RedUFO:
                    msDelayShoot = 70*factor;
                    break;
            }

            extraType = SelectExtra();
        }