在线用户和影子选手信息面板,小地图已经骑行路线

This commit is contained in:
lishuo committed 2021-05-12 18:51:03 +08:00
1 parent 53ec9c60ac
commit 87d581291b
25 files changed
+4332 -3675

No files matched your search

+29 -13
View File
@@ -28,6 +28,8 @@ public class CyclingController : DeviceServiceMonoBase
public RouteResultParam selectParamModel;
public RouteResult routeResult;
public Dictionary<int, SeletedPlayerScript> selectPlayerDic { set; get; } = new Dictionary<int, SeletedPlayerScript>();
public int preticks;
#region 参数
@@ -212,12 +214,13 @@ public class CyclingController : DeviceServiceMonoBase
AutoStart();
InitPlayer();
}
PlayerController playerController;
//初始化人物位置角度
private void InitPlayer()
{
lockView = true;
TrailRenderer trail = player.GetComponent<TrailRenderer>();
PlayerController playerController = player.GetComponent<PlayerController>();
playerController = player.GetComponent<PlayerController>();
Vector2d lastLatLon = Along(recorderData.EndDistance);
Vector3 currentPos = map.GeoToWorldPosition(lastLatLon);
currentPos.y += 1f;
@@ -284,7 +287,7 @@ public class CyclingController : DeviceServiceMonoBase
otherList.Add(onlinePlayerController);
onlinePlayerController.UserId = onlineRider.UserId;
//onlinePlayerController.SetDistance(onlineDistance);
onlinePlayerController.SetTotalDistance(onlineTotalDistance, onlineDistance);
onlinePlayerController.SetDataSource(onlineTotalDistance, onlineDistance, onlineRider.NickName, onlineRider.WeightKg);
onlinePlayerController.SetHead(onlineRider.WxHeadImg);
//小地图人物
GameObject miniPlayer = (GameObject)Instantiate(miniMapPlayerPrefab, transform);
@@ -294,19 +297,31 @@ public class CyclingController : DeviceServiceMonoBase
}
else
{
//currentUser.SetDistance(onlineDistance);
currentUser.SetTotalDistance(onlineTotalDistance, onlineDistance);
currentUser.SetDataSource(onlineTotalDistance, onlineDistance, onlineRider.NickName, onlineRider.WeightKg);
}
}
////移除
//foreach (var item in currentOnlineUserList)
//{
// var currentItem = onlineRiders.Where(c => c.UserId == item.UserId).FirstOrDefault();
// if (currentItem == null)
// {
// item.RemoveSelf();
// }
//}
//移除
foreach (var item in currentOnlineUserList)
{
var currentItem = onlineRiders.Where(c => c.UserId == item.UserId).FirstOrDefault();
if (currentItem == null)
{
item.RemoveSelf();
}
var s = playerController.TotalDistance - item.TotalDistance;
}
//显示面板信息
var others = FindObjectsOfType<AbstractPlayer>();
foreach (var item in others)
{
item.IsShowInfo = false;
}
var frontPlayer = others.Where(c => c.TotalDistance - playerController.TotalDistance < 0.5 && c.TotalDistance - playerController.TotalDistance >= 0 && !(c is PlayerController)).OrderBy(c=>c.TotalDistance).FirstOrDefault();
var bakePlayer = others.Where(c => c.TotalDistance - playerController.TotalDistance >-0.5 && c.TotalDistance - playerController.TotalDistance < 0 && !(c is PlayerController)).OrderByDescending(c=>c.TotalDistance).FirstOrDefault();
if(frontPlayer != null)
frontPlayer.IsShowInfo = true;
if (bakePlayer != null)
bakePlayer.IsShowInfo = true;
}
#endregion
@@ -461,6 +476,7 @@ public class CyclingController : DeviceServiceMonoBase
CaptureCamera(Camera.main, new Rect(Screen.width * 0f, Screen.height * 0f, Screen.width * 0.5f, Screen.height * 0.5f), imageFileName);
cyclingController.recorderData.StartTime = startTime;
cyclingController.recorderData.EndTime = UIManager.Now.GetDateTime();
cyclingController.recorderData.IsCompleted = totalDistance == mapData.TotalDistance;
cyclingController.recorderData.EndDistance = totalDistance;
cyclingController.recorderData.AntModelId = AntModelId;