实时位置

This commit is contained in:
账号名 2024-01-23 18:00:55 +08:00
parent 32798355eb
commit 56692e0244
5 changed files with 74 additions and 6 deletions

View File

@ -1 +1 @@
127.0.0.1:48888 172.20.10.5:48888

View File

@ -1 +1 @@
127.0.0.1 172.20.10.5

View File

@ -288,6 +288,13 @@ public class EquipmentCommon : MonoBehaviour
} }
} }
break; break;
case "WRJExpel"://驱离无人机
UnmannedAerialVehicleManage unmannedAerialVehicleManageExpel = GetComponent<UnmannedAerialVehicleManage>();
if (unmannedAerialVehicleManageExpel)
{
unmannedAerialVehicleManageExpel.CheckSatellitePositioningFrequency(data[2], int.Parse(data[2]));
}
break;
case "DroneWasDestroyed"://单个无人机被销毁 case "DroneWasDestroyed"://单个无人机被销毁
UnmannedAerialVehicleManage _unmannedAerialVehicleManage = GetComponent<UnmannedAerialVehicleManage>(); UnmannedAerialVehicleManage _unmannedAerialVehicleManage = GetComponent<UnmannedAerialVehicleManage>();
if (_unmannedAerialVehicleManage) if (_unmannedAerialVehicleManage)
@ -299,6 +306,17 @@ public class EquipmentCommon : MonoBehaviour
} }
} }
break; break;
case "WRJDitch"://
UnmannedAerialVehicleManage _unmannedAerialVehicleManageDitch = GetComponent<UnmannedAerialVehicleManage>();
if (_unmannedAerialVehicleManageDitch)
{
UnmannedAerialVehicle unmannedAerialVehicle = _unmannedAerialVehicleManageDitch.unmannedAerialVehicles.Find(x => x.serialNumber == data[2]);
if (unmannedAerialVehicle)
{
unmannedAerialVehicle.CheckSatellitePositioningFrequency(data[3], int.Parse(data[4]));
}
}
break;
case "Planedata": case "Planedata":
UnmannedAerialVehicleManage unmannedAerialVehicleManage1 = GetComponent<UnmannedAerialVehicleManage>(); UnmannedAerialVehicleManage unmannedAerialVehicleManage1 = GetComponent<UnmannedAerialVehicleManage>();
if (unmannedAerialVehicleManage1) if (unmannedAerialVehicleManage1)

View File

@ -11,6 +11,7 @@ using UnityEngine.UI;
using UnityEngine.EventSystems; using UnityEngine.EventSystems;
using Random = UnityEngine.Random; using Random = UnityEngine.Random;
using static UnityEngine.GraphicsBuffer; using static UnityEngine.GraphicsBuffer;
using UnityEngine.UIElements;
/* /*
线 线
@ -313,17 +314,41 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
/// </summary> /// </summary>
public void Interferencemode(Transform wrj) public void Interferencemode(Transform wrj)
{ {
UnmannedAerialVehicleManage unmannedAerialVehicleManage = null; UnmannedAerialVehicleManage unmannedAerialVehicleManage = wrj.GetComponent<UnmannedAerialVehicleManage>();
if (wrj.GetComponent<UnmannedAerialVehicleManage>()) if (unmannedAerialVehicleManage)
{ {
unmannedAerialVehicleManage = wrj.GetComponent<UnmannedAerialVehicleManage>(); unmannedAerialVehicleManage = wrj.GetComponent<UnmannedAerialVehicleManage>();
unmannedAerialVehicleManage.CheckSatellitePositioningFrequency( unmannedAerialVehicleManage.CheckSatellitePositioningFrequency(
InterferenceMode, InterferenceMode,
ground); ground);
var nowData = GetSyncData(unmannedAerialVehicleManage);
DeviceManager.Instance.send2roomStr.Enqueue(nowData);
}
UnmannedAerialVehicle unmannedAerialVehicle = wrj.GetComponent<UnmannedAerialVehicle>();
if (unmannedAerialVehicle)
{
unmannedAerialVehicle = wrj.GetComponent<UnmannedAerialVehicle>();
unmannedAerialVehicle.CheckSatellitePositioningFrequency(
InterferenceMode,
ground);
var nowData = GetSyncData(unmannedAerialVehicle);
DeviceManager.Instance.send2roomStr.Enqueue(nowData);
} }
isDo = true; isDo = true;
} }
/// <summary>
/// 无人机整体驱离
/// </summary>
/// <returns></returns>
protected string GetSyncData(UnmannedAerialVehicleManage unmannedAerialVehicleManage)
{
return string.Format("{0},{1},{2},{3}", "WRJExpel", unmannedAerialVehicleManage.equipmentCommon.deviceID, InterferenceMode, LayerMask.LayerToName(ground));
}
protected string GetSyncData(UnmannedAerialVehicle unmannedAerialVehicle)
{
return string.Format("{0},{1},{2},{3},{4}", "WRJDitch", unmannedAerialVehicle.unmannedAerialVehicleManage.equipmentCommon.deviceID, unmannedAerialVehicle.serialNumber, InterferenceMode, LayerMask.LayerToName(ground));
}
/// <summary> /// <summary>
/// 开启无线电干扰 /// 开启无线电干扰
/// </summary> /// </summary>

View File

@ -194,7 +194,32 @@ public class UnmannedAerialVehicle : MonoBehaviour
})); }));
} }
public void CheckSatellitePositioningFrequency(
string interferenceMode,
LayerMask ground)
{
if (interferenceMode == "驱离")
{
transform.DOKill();
transform.LookAt(new Vector3(-500, 160, 1600));
transform.DOMove(new Vector3(-500, 160, 1600), 60);
}
else if (interferenceMode == "迫降")
{
transform.DOKill();
RaycastHit hit;
if (Physics.Raycast(transform.position, Vector3.down, out hit, Mathf.Infinity, ground))
{
if (hit.distance > 1f)
{
hit.point = new Vector3(hit.point.x, hit.point.y + 3, hit.point.z);
transform.DOMove(hit.point, 6);
}
}
}
}
private void OnBecameInvisible() private void OnBecameInvisible()