This commit is contained in:
yulong 2024-01-19 15:07:13 +08:00
commit af1f1e48b3
1 changed files with 3 additions and 74 deletions

View File

@ -301,6 +301,8 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
public void Interferencemode()
{
Collider[] colliders = Physics.OverlapSphere(transform.position, detectionRadius * 100);//检索范围
for (int i = 0; i < colliders.Length; i++)
{
if (colliders[i].transform.tag == "WRJ")
@ -315,81 +317,8 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
{
unmannedAerialVehicleManage = colliders[i].GetComponent<UnmannedAerialVehicleManage>();
}
if (TransmittedPower == "10~30W" || TransmittedPower == "30~50W" && unmannedAerialVehicleManage != null)
{
Debug.LogError("发射功率进来了1");
Debug.LogError(unmannedAerialVehicleManage.satellitePositioningFrequency);
Debug.LogError(InterferingFrequency);
if (unmannedAerialVehicleManage.satellitePositioningFrequency == InterferingFrequency && unmannedAerialVehicleManage != null)
{
Debug.LogError("相同频率进来了1");
Debug.LogError(InterferenceMode);
Debug.LogError(unmannedAerialVehicleManage != null);
if (InterferenceMode == "驱离" && unmannedAerialVehicleManage != null)
{
Debug.LogError("驱离");
unmannedAerialVehicleManage.transform.DOKill();
unmannedAerialVehicleManage.transform.LookAt(new Vector3(-500, 160, 1600));
unmannedAerialVehicleManage.transform.DOMove(new Vector3(-500, 160, 1600), 60);
}
else if (InterferenceMode == "迫降" && unmannedAerialVehicleManage != null)
{
Debug.LogError("迫降");
unmannedAerialVehicleManage.transform.DOKill();
//unmannedAerialVehicle.transform.DOKill();
//Debug.LogError(unmannedAerialVehicle.name);
RaycastHit hit;
if (Physics.Raycast(unmannedAerialVehicleManage.transform.position, Vector3.down, out hit, Mathf.Infinity, ground))
{
if (hit.distance > 1f)
{
Debug.LogError(hit.distance);
hit.point = new Vector3(hit.point.x, hit.point.y + 3, hit.point.z);
unmannedAerialVehicleManage.transform.DOMove(hit.point, 6);
}
else
{
speed = 0;
}
}
}
}
}
if (TransmittedPower == "50~100W" && unmannedAerialVehicleManage != null)
{
Debug.LogError("功率进来了2");
if (unmannedAerialVehicleManage.dataLinkCommunicationFrequency == InterferingFrequency && unmannedAerialVehicleManage != null)
{
Debug.LogError("频率进来了");
if (unmannedAerialVehicleManage != null)
{
Vector3 one = unmannedAerialVehicleManage.transform.position - transform.position;
float angue = Vector3.Angle(one, transform.forward);
if (float.Parse(InterferenceAngle) >= angue)
{
//unmannedAerialVehicleManage.transform.DOKill();
Debug.LogError("目标出现在范围内");
Debug.LogError(unmannedAerialVehicleManage.maximumFlyingSpeed);
unmannedAerialVehicleManage.maximumFlyingSpeed = (float.Parse(unmannedAerialVehicleManage.maximumFlyingSpeed) - 5).ToString();
Debug.LogError(unmannedAerialVehicleManage.maximumFlyingSpeed);
}
else
{
Debug.LogError("目标没有出现在范围里面");
}
}
}
}
unmannedAerialVehicleManage.CheckSatellitePositioningFrequency(this.transform, InterferenceMode, TransmittedPower, InterferingFrequency, InterferenceAngle, ground);
}
}
}