public LevelIntro(Level level) { Level = level; ContentManager contentManager = GameServices.GetService<ContentManager>(); GraphicsDevice graphicsDevice = GameServices.GetService<GraphicsDevice>(); GraphicsDeviceManager graphicsDeviceManager = GameServices.GetService<GraphicsDeviceManager>(); LevelIntroFont = contentManager.Load<SpriteFont>(GeneralSettings.FontsPath + "HandOfSean"); int Width = graphicsDeviceManager.PreferredBackBufferWidth; int Height = graphicsDeviceManager.PreferredBackBufferHeight; //Overlay IntroScreen = new Rectangle(0, 0, Width, Height); Texture = new Texture2D(graphicsDevice, 1, 1); Texture.SetData(new [] { Color.Black }); //Font Vector2 FontSize = LevelIntroFont.MeasureString(level.Name) * 0.5f; FontPosition = new Vector2(graphicsDeviceManager.PreferredBackBufferWidth / 2f - FontSize.X / 2, graphicsDeviceManager.PreferredBackBufferHeight / 2f); }
public Level GenerateNextLevel() { var random = new Random(); var level = new Level(); var levelid = CurrentLevel == null ? 1 : CurrentLevel.Id + 1; level.Name = "Level " + levelid; level.Id = levelid; var amountOfSpawners = level.Id/2 + 1; for (int i = 0; i < amountOfSpawners; i++) { var amountOfEnemies = random.Next(5, 15) * level.Id * random.Next(1, 4); var spawner = SpawnerFactory.Instance.CreateSpawnerWIthRandomPositionAndRandomEnemies(amountOfEnemies); spawner.SpawnRate = 2000 - random.Next(10, 80); level.AddSpawner(spawner); } level.Initialize(); Levels.Add(level); return level; }