AR骑行loading页面&附近的人距离延迟问题
This commit is contained in:
parent
8150b99411
commit
3532978762
@ -18226,7 +18226,7 @@ GameObject:
|
||||
- component: {fileID: 4544646319704206804}
|
||||
- component: {fileID: -6554056549816092667}
|
||||
m_Layer: 0
|
||||
m_Name: OnlineVideoPlayer1
|
||||
m_Name: OnlineVideoPlayer
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
@ -18240,7 +18240,7 @@ Transform:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 7920966205500188480}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: -1, z: 3}
|
||||
m_LocalPosition: {x: 0, y: -1, z: 0}
|
||||
m_LocalScale: {x: 0.75, y: 0.75, z: 0.75}
|
||||
m_Children:
|
||||
- {fileID: 3808671237483285868}
|
||||
@ -18596,6 +18596,8 @@ MonoBehaviour:
|
||||
distance: 0
|
||||
totalClimb: 0
|
||||
currentIndex: 0
|
||||
bearing: 0
|
||||
target: {fileID: 0}
|
||||
diff: 0
|
||||
frames: 0
|
||||
--- !u!1 &7930809532632780446
|
||||
|
||||
@ -7,24 +7,26 @@
|
||||
2800~2942:3
|
||||
3058~3171:-3
|
||||
3300~3390:35
|
||||
6000~6150:10
|
||||
7708~7793:2
|
||||
6000~6150:5
|
||||
7708~7793:3
|
||||
7793~7911:-3
|
||||
8610~8707:3
|
||||
8842~8920:2
|
||||
8920~9165:-2
|
||||
8842~8920:3
|
||||
8920~9165:-3
|
||||
9272~9461:3
|
||||
9494~9641:-3
|
||||
9295~9460:2
|
||||
9510~9600:-2
|
||||
11822~12064:-2
|
||||
12200~12514:2
|
||||
12514~12644:-2
|
||||
13072~13388:2
|
||||
13400~13600:8
|
||||
14000~14090:8
|
||||
14524~14660:8
|
||||
14839~14920:8
|
||||
16350~16440:-8
|
||||
16563~16700:-8
|
||||
18250~18310:2
|
||||
9295~9460:3
|
||||
9510~9600:-3
|
||||
11400~11600:3
|
||||
11822~12064:-3
|
||||
12200~12514:3
|
||||
12514~12644:-3
|
||||
13072~13388:3
|
||||
13400~13600:5
|
||||
14000~14100:5
|
||||
14524~14660:5
|
||||
14839~14920:5
|
||||
15600~15650:-3
|
||||
16350~16440:-5
|
||||
16563~16700:-5
|
||||
18250~18310:3
|
||||
File diff suppressed because it is too large
Load Diff
@ -81,7 +81,6 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
{
|
||||
try
|
||||
{
|
||||
ComputeAnimator();//控制动画
|
||||
ComputeNextSlope();//计算下一个坡度
|
||||
ComputePlayer();//计算人物属性
|
||||
if (GetStart())
|
||||
@ -93,7 +92,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
RayCastHit();
|
||||
Turn();
|
||||
}
|
||||
|
||||
ComputeAnimator();//控制动画
|
||||
timer += 1f;
|
||||
}
|
||||
catch (Exception e)
|
||||
|
||||
@ -72,6 +72,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
//var currenList = FindObjectsOfType<ListItem>();//当前列表
|
||||
var currenList = GetComponentsInChildren<ListItem>(true);
|
||||
var list = MapUDPService.GetOnlineUsers(App.RouteIdParam);//最新列表
|
||||
var currentPlayerInfo = list.Where(c => c.Id.ToString() == manager.CurrentPlayer.UserId.ToString()).FirstOrDefault();
|
||||
list = list.Where(c => c.Id != App.CurrentUser.Id).ToList();
|
||||
if (currenList.Count() == 0 && list.Count() > 0)
|
||||
{
|
||||
@ -91,9 +92,9 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
if (currentPlayer.UserId.ToString() == o.Id)
|
||||
continue;
|
||||
var needUpdate = list.Where(c => c.Id.ToString() == o.Id).FirstOrDefault();
|
||||
if (needUpdate != null)
|
||||
if (needUpdate != null && currentPlayerInfo != null)
|
||||
{
|
||||
var left = Math.Round((needUpdate.EndDistance - manager.CurrentPlayer.totalDistance) * 1000);
|
||||
var left = Math.Round((needUpdate.EndDistance - currentPlayerInfo.EndDistance) * 1000);
|
||||
o.UpdateItem(needUpdate.Name, left.ToString() + "M", needUpdate.Id.ToString());
|
||||
o.gameObject.SetActive(true);
|
||||
}
|
||||
|
||||
@ -10,6 +10,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
{
|
||||
public class OnlineVideoPlayer : AbstractVideoPlayer
|
||||
{
|
||||
public Transform target;
|
||||
public double diff;
|
||||
public int frames;
|
||||
protected override void Update()
|
||||
@ -37,15 +38,15 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
{
|
||||
base.Turn();
|
||||
var current = manager.CurrentPlayer;
|
||||
var z = current.transform.position.z + diff * 0.5f;
|
||||
var z = current.transform.position.z + diff*1000 * 0.5f;
|
||||
transform.DOMoveZ((float)z, 1f);
|
||||
//x轴位移
|
||||
|
||||
//var x = bearing + current.bearing;
|
||||
//transform.DOMove(new Vector3(x, transform.position.y, (float)z), 1); // ((float)z, 1f);
|
||||
//人物转向
|
||||
//transform.Rotate(new Vector3(0,1,0), bearing);
|
||||
//z轴位移
|
||||
|
||||
//人物转向
|
||||
|
||||
|
||||
//try
|
||||
//{
|
||||
// var offsetX = 1f;
|
||||
@ -108,7 +109,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
}
|
||||
|
||||
//设置当前玩家属性
|
||||
public void SetPlayer(string name, double distance, double totalDistance, double cadance,double heartRate, double wkg, int userId,double power)
|
||||
public void SetPlayer(string name, double distance, double totalDistance, double cadance,double heartRate, double wkg, int userId,double power,double currentPlayerDistance)
|
||||
{
|
||||
this.wkg = wkg;
|
||||
this.UserName = name;
|
||||
@ -118,6 +119,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
this.UserId = userId;
|
||||
this.power = power;
|
||||
this.speed = distance * 3600;
|
||||
this.diff = currentPlayerDistance - totalDistance;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -121,7 +121,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
}
|
||||
VideoLoading videoLoading { get; set; }
|
||||
// Update is called once per frame
|
||||
float timer = 1f;
|
||||
float timer = 0.5f;
|
||||
void Update()
|
||||
{
|
||||
timer -= Time.deltaTime;
|
||||
@ -137,7 +137,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
{
|
||||
Debug.Log(e.Message);
|
||||
}
|
||||
timer += 1f;
|
||||
timer += 0.5f;
|
||||
}
|
||||
}
|
||||
MapRouteRankingList rankingList;
|
||||
@ -165,14 +165,16 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
var onlineRider = currentPlayer as OnlineRiderModel;
|
||||
var obj = Instantiate(OnlinePlayer, transform);
|
||||
var online = obj.GetComponent<OnlineVideoPlayer>();
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance-onlineRider.PreDistance, onlineRider.EndDistance, onlineRider.Cadence, onlineRider.HeartRate, onlineRider.TotalTicks, onlineRider.UserId, onlineRider.Power);
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance-onlineRider.PreDistance, onlineRider.EndDistance, onlineRider.Cadence, onlineRider.HeartRate, onlineRider.TotalTicks, onlineRider.UserId, onlineRider.Power, onlineRider.EndDistance);
|
||||
obj.transform.DOMoveX(0, 1);
|
||||
ChangePlayer(currentPlayer.UserId);
|
||||
CurrentPlayer = online;
|
||||
}
|
||||
}
|
||||
//list = list.Where(c => c.UserId != CurrentPlayer?.UserId).ToList();
|
||||
|
||||
var onlinelist = MapUDPService.GetOnlineUsers(App.RouteIdParam);//最新列表
|
||||
var currentPlayerInfo = onlinelist.Where(c => c.Id == CurrentPlayer.UserId).FirstOrDefault();
|
||||
|
||||
var players = FindObjectsOfType<OnlineVideoPlayer>();
|
||||
//移除
|
||||
foreach (var item in players)
|
||||
@ -196,18 +198,21 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
{
|
||||
var online = exsit.GetComponent<OnlineVideoPlayer>();
|
||||
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance - onlineRider.PreDistance, onlineRider.EndDistance, item.Cadence, item.HeartRate, onlineRider.WeightKg, item.UserId, onlineRider.Power);
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance - onlineRider.PreDistance, onlineRider.EndDistance, item.Cadence, item.HeartRate, onlineRider.WeightKg, item.UserId, onlineRider.Power, currentPlayerInfo.EndDistance);
|
||||
}
|
||||
else
|
||||
{
|
||||
var diff = item.EndDistance % mapData.TotalDistance - CurrentPlayer.totalDistance % mapData.TotalDistance;
|
||||
if (Math.Abs(diff*1000) <= 50)
|
||||
if (currentPlayerInfo != null)
|
||||
{
|
||||
var obj = Instantiate(OnlinePlayer, transform);
|
||||
var online = obj.GetComponent<OnlineVideoPlayer>();
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance - onlineRider.PreDistance, onlineRider.EndDistance, item.Cadence, item.HeartRate, onlineRider.WeightKg, item.UserId, onlineRider.Power);
|
||||
obj.transform.DOMoveX(slots[currentOnlineCount], 1);
|
||||
currentOnlineCount++;
|
||||
var diff = item.EndDistance % mapData.TotalDistance - currentPlayerInfo.EndDistance % mapData.TotalDistance;
|
||||
if (Math.Abs(diff * 1000) <= 50)
|
||||
{
|
||||
var obj = Instantiate(OnlinePlayer, transform);
|
||||
var online = obj.GetComponent<OnlineVideoPlayer>();
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance - onlineRider.PreDistance, onlineRider.EndDistance, item.Cadence, item.HeartRate, onlineRider.WeightKg, item.UserId, onlineRider.Power, currentPlayerInfo.EndDistance);
|
||||
obj.transform.DOMoveX(slots[currentOnlineCount], 1);
|
||||
currentOnlineCount++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -255,7 +260,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
var onlineRider = currentPlayer as OnlineRiderModel;
|
||||
var obj = Instantiate(OnlinePlayer, transform);
|
||||
var online = obj.GetComponent<OnlineVideoPlayer>();
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance-onlineRider.PreDistance, onlineRider.EndDistance, onlineRider.Cadence, onlineRider.HeartRate, 0, onlineRider.UserId, onlineRider.Power);
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance-onlineRider.PreDistance, onlineRider.EndDistance, onlineRider.Cadence, onlineRider.HeartRate, 0, onlineRider.UserId, onlineRider.Power, onlineRider.EndDistance);
|
||||
obj.transform.position = origin;
|
||||
CurrentPlayer = online;
|
||||
var currentFrames = DistanceToFrames(CurrentPlayer.totalDistance);
|
||||
|
||||
@ -16,10 +16,8 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
{
|
||||
public class VideoLoading : MonoBehaviour
|
||||
{
|
||||
Button download { get; set; }
|
||||
UnityWebRequest request { get; set; }
|
||||
VideoGameManager manager { get; set; }
|
||||
// Start is called before the first frame update
|
||||
|
||||
protected Text mapName;
|
||||
protected RawImage mapRouteImage;
|
||||
@ -34,6 +32,8 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
protected Text elevaction;
|
||||
protected Text slope;
|
||||
protected GameObject panel;
|
||||
protected GameObject download;
|
||||
protected GameObject watch;
|
||||
|
||||
protected GameObject loadingPanel { get; set; }
|
||||
|
||||
@ -50,7 +50,10 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
protected float process = 0;//0-100 %
|
||||
public float targetAlpha = 0f;
|
||||
public float alphaSpeed = 2.0f;
|
||||
private bool depressFlag = false;
|
||||
|
||||
protected Transform ui;
|
||||
|
||||
protected MapRoute route;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
@ -59,62 +62,8 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
void Start()
|
||||
{
|
||||
manager = FindObjectOfType<VideoGameManager>();
|
||||
|
||||
var button = transform.Find("Panel/Button").GetComponent<Button>();
|
||||
var Start = transform.Find("Panel/Start").GetComponent<Button>();
|
||||
var Back = transform.Find("Panel/Back").GetComponent<Button>();
|
||||
var Inspect = transform.Find("Panel/Inspect").gameObject;
|
||||
UIManager.AddEvent(Inspect, UnityEngine.EventSystems.EventTriggerType.PointerClick, InspectHandler);
|
||||
var canvasGroup = transform.GetComponent<CanvasGroup>();
|
||||
var ui = manager.GetCanvasTransform();
|
||||
var route = manager.GetMapRoute();
|
||||
var text = transform.GetComponentInChildren<Text>();
|
||||
var fileName = route.FileName;// "12067924_720p.mp4";
|
||||
var url = route.Url; //@"http://192.168.0.97:6031/12067924_720p.mp4";
|
||||
var currentPath = "";
|
||||
var path = PFConstants.VideoFolder;
|
||||
var filepath = path + "/" + fileName;
|
||||
|
||||
if (File.Exists(filepath))
|
||||
{
|
||||
button.gameObject.SetActive(false);
|
||||
Start.gameObject.SetActive(true);
|
||||
manager.SetMedia(filepath);
|
||||
}
|
||||
else
|
||||
{
|
||||
//检查本地文件是否存在 如果存在直接设置mediaPlayer 否则显示下载按钮
|
||||
button.onClick.AddListener(() =>
|
||||
{
|
||||
StartCoroutine(Utils.DownloadVideo(fileName, url
|
||||
, (p, req) =>
|
||||
{
|
||||
text.text = Math.Round(p * 100, 2).ToString() + "%";
|
||||
request = req;
|
||||
}
|
||||
, (p) =>
|
||||
{
|
||||
text.text = "100%";
|
||||
currentPath = p;
|
||||
Start.gameObject.SetActive(true);
|
||||
manager.SetMedia(p);
|
||||
}
|
||||
));
|
||||
});
|
||||
}
|
||||
var g = gameObject;
|
||||
Start.onClick.AddListener(() =>
|
||||
{
|
||||
canvasGroup.DOFade(0, 1).onComplete+=()=> {
|
||||
g.SetActive(false);
|
||||
manager.SetCurrentMode(VideoGameManager.ARMode.RIDE);
|
||||
ui.Find("Panel").gameObject.SetActive(true);
|
||||
};
|
||||
});
|
||||
Back.onClick.AddListener(() =>
|
||||
{
|
||||
SceneManager.LoadScene("MainScene");
|
||||
});
|
||||
ui = manager.GetCanvasTransform();
|
||||
route = manager.GetMapRoute();
|
||||
}
|
||||
|
||||
public void Init()
|
||||
@ -122,17 +71,6 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
InitGameObject();
|
||||
InitGameObjectData();
|
||||
}
|
||||
//进入观察模式
|
||||
private void InspectHandler(BaseEventData data)
|
||||
{
|
||||
manager.SetCurrentMode(VideoGameManager.ARMode.INSPECT);
|
||||
var canvasGroup = transform.GetComponent<CanvasGroup>();
|
||||
var ui = manager.GetCanvasTransform();
|
||||
canvasGroup.DOFade(0, 1).onComplete += () => {
|
||||
gameObject.SetActive(false);
|
||||
ui.Find("Panel").gameObject.SetActive(true);
|
||||
};
|
||||
}
|
||||
|
||||
private void InitGameObject()
|
||||
{
|
||||
@ -143,7 +81,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
slope = panel.transform.Find("Slope").GetComponent<Text>();
|
||||
mapRouteImage = panel.transform.Find("MapRouteImage").GetComponent<RawImage>();
|
||||
slider = panel.transform.Find("Process").GetComponent<Slider>();
|
||||
slider.gameObject.SetActive(false);
|
||||
slider.gameObject.SetActive(true);
|
||||
processText = panel.transform.Find("ProcessText").GetComponent<Text>();
|
||||
processText.gameObject.SetActive(false);
|
||||
mapDescText = panel.transform.Find("MapDesc").GetComponent<Text>();
|
||||
@ -157,6 +95,30 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
processText.text = $"{(f).ToString("#0")}%";
|
||||
});
|
||||
|
||||
|
||||
download = transform.Find("Panel/Download").gameObject;
|
||||
watch = transform.Find("Panel/Watch").gameObject;
|
||||
|
||||
UIManager.AddEvent(watch, UnityEngine.EventSystems.EventTriggerType.PointerClick, WatchHandler);
|
||||
canvasGroup = transform.GetComponent<CanvasGroup>();
|
||||
|
||||
var fileName = route.FileName;// "12067924_720p.mp4";
|
||||
var url = route.Url; //@"http://192.168.0.97:6031/12067924_720p.mp4";
|
||||
var path = PFConstants.VideoFolder;
|
||||
var filepath = path + "/" + fileName;
|
||||
|
||||
if (File.Exists(filepath))
|
||||
{
|
||||
slider.value = 100;
|
||||
download.gameObject.SetActive(false);
|
||||
manager.SetMedia(filepath);
|
||||
}
|
||||
else
|
||||
{
|
||||
//检查本地文件是否存在 如果存在直接设置mediaPlayer 否则显示下载按钮
|
||||
UIManager.AddEvent(download.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerClick, Download);
|
||||
}
|
||||
#region
|
||||
level = panel.transform.Find("level/Text").GetComponent<Text>();
|
||||
rideNum = panel.transform.Find("RideNum").GetComponent<Text>();
|
||||
uploadByUserName = panel.transform.Find("UploadByUserName").GetComponent<Text>();
|
||||
@ -166,16 +128,50 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
altitudeGraph = panel.transform.Find("AltitudeGraph").GetComponent<RawImage>();
|
||||
mapRanking = panel.transform.Find("MapRanking");
|
||||
mapId = panel.transform.Find("MapId").GetComponent<Text>();
|
||||
|
||||
UIManager.RemoveEvent(distance.gameObject);
|
||||
UIManager.RemoveEvent(slope.gameObject);
|
||||
UIManager.RemoveEvent(elevaction.gameObject);
|
||||
UIManager.RemoveEvent(rideNum.gameObject);
|
||||
UIManager.AddEvent(distance.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerEnter, b =>
|
||||
{
|
||||
panel.transform.Find("DistanceTip").GetComponent<CanvasGroup>().DOFade(1, 0.5f);
|
||||
});
|
||||
UIManager.AddEvent(distance.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerExit, b =>
|
||||
{
|
||||
panel.transform.Find("DistanceTip").GetComponent<CanvasGroup>().DOFade(0, 0.5f);
|
||||
});
|
||||
|
||||
UIManager.AddEvent(slope.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerEnter, b =>
|
||||
{
|
||||
panel.transform.Find("SlopeTip").GetComponent<CanvasGroup>().DOFade(1, 0.5f);
|
||||
});
|
||||
UIManager.AddEvent(slope.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerExit, b =>
|
||||
{
|
||||
panel.transform.Find("SlopeTip").GetComponent<CanvasGroup>().DOFade(0, 0.5f);
|
||||
});
|
||||
UIManager.AddEvent(elevaction.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerEnter, b =>
|
||||
{
|
||||
panel.transform.Find("ElevactionTip").GetComponent<CanvasGroup>().DOFade(1, 0.5f);
|
||||
});
|
||||
UIManager.AddEvent(elevaction.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerExit, b =>
|
||||
{
|
||||
panel.transform.Find("ElevactionTip").GetComponent<CanvasGroup>().DOFade(0, 0.5f);
|
||||
});
|
||||
UIManager.AddEvent(rideNum.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerEnter, b =>
|
||||
{
|
||||
panel.transform.Find("RideTip").GetComponent<CanvasGroup>().DOFade(1, 0.5f);
|
||||
});
|
||||
UIManager.AddEvent(rideNum.gameObject, UnityEngine.EventSystems.EventTriggerType.PointerExit, b =>
|
||||
{
|
||||
panel.transform.Find("RideTip").GetComponent<CanvasGroup>().DOFade(0, 0.5f);
|
||||
});
|
||||
#endregion
|
||||
}
|
||||
protected void InitGameObjectData()
|
||||
{
|
||||
var route = manager.mapRoute;
|
||||
#region 绑定路书基本信息
|
||||
//mapName.text = route.Name;
|
||||
#if UNITY_IOS || UNITY_ANDROID
|
||||
enable3D = panel.transform.Find("Enable3D").gameObject;
|
||||
enable3D.SetActive(route.Enable3D);
|
||||
#endif
|
||||
mapName.text = GetMaxString(route.Name, 40);
|
||||
level.text = route.Hard;
|
||||
elevaction.text = Math.Round(route.TotalClimb.GetValueOrDefault(0), 2).ToString() + "M";
|
||||
@ -194,7 +190,8 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
mapCountry.texture = manager.GetCountryImageByCode(route.CountryCode);//路书国家
|
||||
}
|
||||
#endregion
|
||||
|
||||
//显示线路背景图
|
||||
DrawMapRouteAsync(route.Id);
|
||||
//查询排行榜
|
||||
var list = ConfigHelper.mapApi.GetRouteRanking(route.Id, "1", 0, 10000, "");
|
||||
if (list.result)
|
||||
@ -202,31 +199,91 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
CreateRankingList(list.data.list);
|
||||
}
|
||||
}
|
||||
protected void StartRide(BaseEventData baseEvent)
|
||||
protected void StartRide(BaseEventData baseEvent)
|
||||
{
|
||||
var ui = manager.GetCanvasTransform();
|
||||
canvasGroup.DOFade(0, 1).onComplete += () => {
|
||||
gameObject.SetActive(false);
|
||||
manager.SetCurrentMode(VideoGameManager.ARMode.RIDE);
|
||||
ui.Find("Panel").gameObject.SetActive(true);
|
||||
};
|
||||
}
|
||||
protected void Cancel(BaseEventData baseEvent)
|
||||
|
||||
protected void Download(BaseEventData baseEvent)
|
||||
{
|
||||
StartCoroutine(Utils.DownloadVideo(route.FileName, route.Url
|
||||
, (p, req) =>
|
||||
{
|
||||
slider.value = (float)Math.Round(p * 100, 2);
|
||||
request = req;
|
||||
download.SetActive(false);
|
||||
}
|
||||
, (p) =>
|
||||
{
|
||||
if (!string.IsNullOrEmpty(p)) {
|
||||
slider.value = 100;
|
||||
manager.SetMedia(p);
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.LogError("");
|
||||
}
|
||||
}
|
||||
));
|
||||
}
|
||||
//进入观察模式
|
||||
private void WatchHandler(BaseEventData data)
|
||||
{
|
||||
manager.SetCurrentMode(VideoGameManager.ARMode.INSPECT);
|
||||
var canvasGroup = transform.GetComponent<CanvasGroup>();
|
||||
var ui = manager.GetCanvasTransform();
|
||||
canvasGroup.DOFade(0, 1).onComplete += () => {
|
||||
gameObject.SetActive(false);
|
||||
ui.Find("Panel").gameObject.SetActive(true);
|
||||
};
|
||||
}
|
||||
protected void Cancel(BaseEventData baseEvent)
|
||||
{
|
||||
SceneManager.LoadScene("MainScene");
|
||||
}
|
||||
// Update is called once per frame
|
||||
void Update()
|
||||
protected async void DrawMapRouteAsync(int routeId, int type = 0)
|
||||
{
|
||||
|
||||
var result = await ConfigHelper.mapApi.GetMapLoadingCoverageUrl(routeId, type);
|
||||
if (!result.result)
|
||||
return;
|
||||
var url = result.data;
|
||||
if (App.TextureCache.ContainsKey(url))
|
||||
{
|
||||
mapRouteImage.texture = App.TextureCache[url];
|
||||
var canvasGroup = mapRouteImage.GetComponent<CanvasGroup>();
|
||||
canvasGroup.DOFade(1, 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
Utils.DisplayImageAysnc(StartCoroutine, mapRouteImage, url, DowloadCallBack);
|
||||
}
|
||||
}
|
||||
protected void DowloadCallBack(string url, RawImage rawImage)
|
||||
{
|
||||
if (!App.TextureCache.ContainsKey(url))
|
||||
{
|
||||
App.TextureCache.Add(url, rawImage?.texture);
|
||||
}
|
||||
else
|
||||
{
|
||||
App.TextureCache[url] = rawImage?.texture;
|
||||
}
|
||||
var canvasGroup = rawImage.GetComponent<CanvasGroup>();
|
||||
canvasGroup?.DOFade(1, 1);
|
||||
}
|
||||
|
||||
private int RankingPageSize = 10;
|
||||
//创建排行榜
|
||||
public void CreateRankingList(List<MapRouteRanking> list)
|
||||
{
|
||||
#if UNITY_IOS || UNITY_ANDROID
|
||||
var prefab = Resources.Load<GameObject>("UI/Prefab/Ride/Mobile/RankingItem");
|
||||
var myprefab = Resources.Load<GameObject>("UI/Prefab/Ride/Mobile/MySelfRankingItem");
|
||||
var viewAllbtn = Resources.Load<GameObject>("UI/Prefab/Ride/Mobile/ViewAll");
|
||||
#else
|
||||
var prefab = Resources.Load<GameObject>("UI/Prefab/Ride/RankingItem");
|
||||
var myprefab = Resources.Load<GameObject>("UI/Prefab/Ride/MySelfRankingItem");
|
||||
var viewAllbtn = Resources.Load<GameObject>("UI/Prefab/Ride/ViewAll");
|
||||
#endif
|
||||
var parent = panel.transform.Find("MapRanking");
|
||||
var title = panel.transform.Find("RankingTitle").gameObject;
|
||||
title.SetActive(list.Count != 0);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user