Exemplo n.º 1
0
        protected override void LoadContent()
        {
            base.LoadContent();

            Texture2D tilesetTexture = this.GameRef.Content.Load<Texture2D>(@"Tilesets\grounds_tileset");
            Tileset tilesetGround = new Tileset(tilesetTexture, TilesSize, TilesSize, 4, 1);

            tilesetTexture = this.GameRef.Content.Load<Texture2D>(@"Tilesets\obstacles_tileset");
            Tileset tilesetObstacles = new Tileset(tilesetTexture, TilesSize, TilesSize, 4, 2);

            tilesetTexture = this.GameRef.Content.Load<Texture2D>(@"Tilesets\buildings_tileset");
            Tileset tilesetBuildings = new Tileset(tilesetTexture, TilesSize, TilesSize, 8, 2);

            List<Tileset> tilesets = new List<Tileset>() { tilesetGround, tilesetObstacles, tilesetBuildings };

            MapLayer ground = new MapLayer(TxtMapReader.Load(@"Content\Maps\FinalMap.txt", 1));
            MapLayer obstacles = new MapLayer(TxtMapReader.Load(@"Content\Maps\FinalMap.txt", 2));
            MapLayer buildings = new MapLayer(TxtMapReader.Load(@"Content\Maps\FinalMap.txt", 3));
            List<MapLayer> mapLayers = new List<MapLayer>() { ground, obstacles, buildings };

            this.map = new TileMap(tilesets, mapLayers);

            tilesetTexture = this.GameRef.Content.Load<Texture2D>(@"Tilesets\fourTanks");
            Tileset tanksTileset = new Tileset(tilesetTexture, TilesSize, TilesSize, 4, 1);
            this.player.Tank = new XTankWarsLibrary.SpriteClasses.MovableSprite(tanksTileset, new Tile(0, 0));
        }
Exemplo n.º 2
0
        public TileMap(Tileset tileset, MapLayer layer)
        {
            this.tilesets = new List<Tileset>(1) { tileset };
            this.mapLayers = new List<MapLayer>(1) { layer };

            mapWidth = this.mapLayers[0].Width;
            mapHeight = this.mapLayers[0].Height;
        }
Exemplo n.º 3
0
        public void AddLayer(MapLayer newLayer)
        {
            if (newLayer.Width != mapWidth && newLayer.Height != mapHeight)
            {
                throw new MapLayerIncompatibilityException("Added layer dimensions are incorrect.");
            }

            this.mapLayers.Add(newLayer);
        }