Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private void OnStartDownloadTile(OnlineMapsTile tile)
- {
- tile.status = OnlineMapsTileStatus.loading;
- string filePath = Path.Combine(Application.persistentDataPath, tile.resourcesPath + ".png");
- if (File.Exists(filePath))
- {
- StartCoroutine(TryLoadFromResources(tile, filePath));
- }
- else
- {
- if (isMapOnline)
- {
- OnlineMapsTileManager.StartDownloadTile(tile);
- }
- else
- {
- tile.status = OnlineMapsTileStatus.error;
- }
- }
- }
- private IEnumerator TryLoadFromResources(OnlineMapsTile tile, string path)
- {
- var req = UnityWebRequestTexture.GetTexture(path);
- yield return req.SendWebRequest();
- if (tile.map == null)
- {
- tile.MarkError();
- yield break;
- }
- Texture2D texture = DownloadHandlerTexture.GetContent(req);
- if (texture != null)
- {
- texture.wrapMode = TextureWrapMode.Clamp;
- if (tile.map.control.resultIsTexture)
- {
- (tile as OnlineMapsRasterTile).ApplyTexture(texture);
- tile.map.buffer.ApplyTile(tile);
- OnlineMapsUtils.Destroy(texture);
- }
- else
- {
- tile.texture = texture;
- tile.status = OnlineMapsTileStatus.loaded;
- }
- tile.MarkLoaded();
- //tile.loadedFromResources = true;
- tile.map.Redraw();
- }
- else if (tile.map.source == OnlineMapsSource.Resources)
- {
- tile.MarkError();
- }
- req.Dispose();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement