Esempio n. 1
0
        public void OpenChest(long mapId, PlayerMapTile tile, Action <PlayerActionResponse> onSuccess = null)
        {
            var request = new MapTileRequest {
                mapId = mapId, posX = tile.posX, posY = tile.posY
            };

            serverAPI.DoPost("/map/open_chest", request, onSuccess);
        }
Esempio n. 2
0
        public void DiscoverBuilding(long mapId, PlayerMapTile tile, Action <PlayerActionResponse> onSuccess = null)
        {
            var request = new MapTileRequest {
                mapId = mapId, posX = tile.posX, posY = tile.posY
            };

            serverAPI.DoPost("/map/new_building", request, onSuccess);
        }
Esempio n. 3
0
        public void GetMapTile()
        {
            var am  = new AzureMapsToolkit.AzureMapsServices(_KEY);
            var req = new MapTileRequest
            {
                Format = TileFormat.png,
                Layer  = StaticMapLayer.basic,
                Style  = MapTileStyle.main,
                Zoom   = 6,
                X      = 10,
                Y      = 22
            };

            var content = am.GetMapTile(req).Result;

            Assert.NotEmpty(content.Result);
        }
Esempio n. 4
0
        /// <summary>
        /// Fetches map tiles in vector or raster format typically to be integrated into a new map control or SDK. By default, Azure uses vector map tiles for its web map control
        /// </summary>
        /// <returns></returns>
        public virtual async Task <Response <byte[]> > GetMapTile(MapTileRequest req)
        {
            try
            {
                string tileFormat   = req.Format == TileFormat.pbf ? "pbf" : "png";
                var    baseAddress  = $"https://atlas.microsoft.com/map/tile/{tileFormat}";
                var    mapLayer     = req.Layer == StaticMapLayer.basic ? "basic" : req.Layer == StaticMapLayer.hybrid ? "hybrid" : "labels";
                var    languagePart = req.Format == TileFormat.png ? "" : $"&language={req.Language}";
                var    size         = req.TileSize == MapTileSize._256 ? "256" : "512";
                var    url          = $"?subscription-key={Key}&api-version=1.0&layer={mapLayer}&style=main&zoom={req.Zoom}&x={req.X}&y={req.Y}&tileSize={size}" + languagePart;
                var    content      = await GetByteArray(baseAddress, url);

                var response = Response <byte[]> .CreateResponse(content);

                return(response);
            }
            catch (AzureMapsException ex)
            {
                return(Response <byte[]> .CreateErrorResponse(ex));
            }
        }