using System; using Assets.Scripts; using Assets.Scripts.Apis; using Assets.Scripts.Apis.Models; using Cysharp.Threading.Tasks; using DG.Tweening; using System.Collections.Generic; using System.IO; using System.Threading.Tasks; using Assets.AR; using Assets.Core; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI; public class GameRoomMapItem : MonoBehaviour, IPointerExitHandler, IPointerEnterHandler, IPointerUpHandler { private GameObject downloadBtn; private GameObject downloading; private GameObject downloadTxt; public class PropNames { public static List icons = new List { "icon1", "icon2", "icon3" }; public static List texts = new List { "DistanceText", "EleText", "SlopeText" }; public static Dictionary colorDict = new Dictionary { { true,"#ffffff"},{false,"#5c5c6e" } }; } public bool isModal = false; float width; float height; float? localY = null; MapRoute map; Dictionary caches; private MapRouteAreaItem area = null; Slider slider; GameRoomListController listController; NearRouteModel model { get; set; } private ARDownloader downloader { get; set; } private float _videoProgress; public float VideoProgress { get => _videoProgress; set { _videoProgress = value; ComputeProgress(); } } private float _dataProgress = 0f; public float DataProgress { get => _dataProgress; set { _dataProgress = value; ComputeProgress(); } } private float _routeProgress = 0f; public float RouteProgress { get => _routeProgress; set { _routeProgress = value; ComputeProgress(); } } private void Awake() { width = this.GetComponent().rect.width; height = this.GetComponent().rect.height; } private void Start() { listController = FindObjectOfType(); } public void Initial(MapRoute myMap, Dictionary caches, MapRouteAreaItem area = null) { if (caches != null) { this.caches = caches; } this.area = area; map = myMap; if (!isModal) { transform.GetComponent