protected override void Draw(GameTime gameTime) { GraphicsDevice.Clear(Color.White); spriteBatch.Begin(SpriteSortMode.BackToFront, BlendState.NonPremultiplied, SamplerState.PointClamp, null, null, null, camera.TranslationMatrix); map.Draw(spriteBatch); trainingDummy.Draw(spriteBatch); player.Draw(spriteBatch); spriteBatch.Draw(tempCrate, tempCrateRect, Color.White); tempChest.Draw(spriteBatch); spriteBatch.Draw(torchTexture, torchRect, new Rectangle(currentFrame * 16, 0, 16, 16), Color.White); spriteBatch.Draw(torchTexture, new Rectangle(160, 32, 32, 32), new Rectangle(currentFrame * 16, 0, 16, 16), Color.White); spriteBatch.Draw(textureHandler.cursorTexture, new Rectangle((int)cursorPosition.X, (int)cursorPosition.Y, 8, 8), Color.White); spriteBatch.End(); //UI spriteBatch.Begin(SpriteSortMode.Deferred); //Dev devConsole.Draw(spriteBatch); spriteBatch.End(); base.Draw(gameTime); }
public void Generate() { Load(); DungeonGenerator.AddRooms(rooms); Game.world.Draw(); DungeonGenerator.AddBridges(rooms, bridges); AddEnemyes(); if (Game.currentDungeonLevel >= 19) { Enemy enemy = new Enemy(EnemyesList.diablo); enemy.SetInRoom(Game.world.dungeon.rooms.Count - 1); enemy.Draw(); enemyes.Add(enemy); } else { AddPortal(rooms.Count - 1, EPortalStatus.HUB); } int chestCount = DungeonGenerator.random.Next(3, 6) + (Game.player.perksSystem.CheckPerk(PerksList.givesMoreChestPerk) ? 2 : 0); for (int i = 0; i < chestCount; ++i) { Chest chest = new Chest(); chest.SetInRoom(DungeonGenerator.random.Next(0, rooms.Count - 1)); chest.Draw(); units.Add(chest); } ++Game.maxDungeonLevel; Game.currentDungeonLevel = Game.maxDungeonLevel; }