public Editor(SpriteSheetLoader loader, GameWindow window) { this.loader = loader; this.tiles = new Dictionary <Vector2, Tile>(); this.gameObjectTiles = new Dictionary <Vector2, Tile>(); this.camera = new Camera(new Viewport()); this.mouseTile = GetTileOnCursor(); this.palette = loader.LoadSpriteSheet("blocks", Vector2.Zero, new Vector2(16, 16), 0); this.paletteBackground = loader.CreateFilledTexture(1, 1, new Color(10, 10, 10)); this.viewportSplit = loader.CreateFilledTexture(1, 1, new Color(128, 128, 128)); this.viewportLineSplitWidth = 1; this.selectedPaletteIndex = new Vector2(0, 0); this.selectedPalette = GetSpriteSheetAt((int)selectedPaletteIndex.X, (int)selectedPaletteIndex.Y); this.levelViewport = new Viewport(0, 0, window.ClientBounds.Width - this.palette.Texture.Width, window.ClientBounds.Height); this.paletteViewport = new Viewport(levelViewport.Width, 0, this.palette.Texture.Width, window.ClientBounds.Height); Texture2D rectangleTexture = loader.CreateRectangleTexture(Tile.SIZE, Tile.SIZE, Color.White); this.selectionSprite = new SpriteSheet(rectangleTexture).Sprite; this.currentLevelPath = "Content\\Level1.lvl"; }
public InGameState(SpriteSheetLoader loader, GraphicsDevice graphicsDevice, GameWindow window, HUD hud, SpriteFont font) { this.loader = loader; this.graphicsDevice = graphicsDevice; this.hud = hud; this.level = new Level(loader, LevelData.LoadLevelData("Content\\Level1.lvl"), hud); this.hud.Player = level.MyPlayer; this.font = font; this.debugTexture = loader.CreateRectangleTexture((int)(Tile.SIZE * Game1.Scale.X), (int)(Tile.SIZE * Game1.Scale.Y), new Color(255, 255, 255, 255)); this.collisionTexture = loader.CreateFilledTexture((int)(Tile.SIZE * Game1.Scale.X), (int)(Tile.SIZE * Game1.Scale.Y), new Color(255, 255, 255, 255)); this.camera = new Camera(graphicsDevice.Viewport); backgroundManager = new ParalaxBackgroundManager(level.MyPlayer, loader, graphicsDevice, window); }