无线电功能

This commit is contained in:
yulong 2023-12-20 15:30:51 +08:00
parent 3b13b574df
commit b1e7696d78
8 changed files with 145 additions and 59 deletions

View File

@ -167,7 +167,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 154ea33a68384034b8bef474a9a6440d, type: 3}
m_Name:
m_EditorClassIdentifier:
prefabItem: {fileID: 7985558213978141209, guid: 088baeb890d17754287a1161c0b1dceb,
prefabItem: {fileID: 6865737300552731157, guid: 8425122cf585dcc47bbf3eff95ecf176,
type: 3}
model: {fileID: 0}
huoPaoCtrls:

View File

@ -1 +1 @@
192.168.6.15:48888
192.168.244.15:48888

View File

@ -1 +1 @@
192.168.6.15
192.168.244.15

View File

@ -38,7 +38,7 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 1113159741}
m_IndirectSpecularColor: {r: 0.16235358, g: 0.30609837, b: 0.66879046, a: 1}
m_IndirectSpecularColor: {r: 0.16230208, g: 0.3061382, b: 0.6693564, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
@ -48847,6 +48847,36 @@ MonoBehaviour:
m_Spacing: {x: 10, y: 30}
m_Constraint: 0
m_ConstraintCount: 2
--- !u!1 &1435558104
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1435558105}
m_Layer: 0
m_Name: GameObject
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1435558105
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1435558104}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -500, y: 160, z: 1650}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 12
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1436809528
GameObject:
m_ObjectHideFlags: 0
@ -63057,7 +63087,7 @@ MonoBehaviour:
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
randSeed: 461563218
randSeed: 322846390
isDoingTransition: 0
minimumHeight: 0
--- !u!114 &1820978574

View File

@ -38,7 +38,7 @@ RenderSettings:
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0.16521391, g: 0.30764452, b: 0.6578343, a: 1}
m_IndirectSpecularColor: {r: 0.165218, g: 0.3075422, b: 0.6572481, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
@ -48422,17 +48422,17 @@ MonoBehaviour:
m_Value: 0
m_Options:
m_Options:
- m_Text: 430~470MHz
- m_Text: 1227.60 MHz
m_Image: {fileID: 21300000, guid: ab029b3f9356df54eb7dfe16e97c79ea, type: 3}
- m_Text: 832~940MHz
- m_Text: 1575.42 MHz
m_Image: {fileID: 21300000, guid: ab029b3f9356df54eb7dfe16e97c79ea, type: 3}
- m_Text: 1.2~1.3GHz
- m_Text: 1381.05 MHz
m_Image: {fileID: 21300000, guid: ab029b3f9356df54eb7dfe16e97c79ea, type: 3}
- m_Text: 1.56~1.62GHz
- m_Text: 2GHz
m_Image: {fileID: 21300000, guid: ab029b3f9356df54eb7dfe16e97c79ea, type: 3}
- m_Text: 2.4~2.5GHz
- m_Text: 4GHz
m_Image: {fileID: 21300000, guid: ab029b3f9356df54eb7dfe16e97c79ea, type: 3}
- m_Text: 5.725~5.85GHz
- m_Text: 5GHz
m_Image: {fileID: 21300000, guid: ab029b3f9356df54eb7dfe16e97c79ea, type: 3}
m_OnValueChanged:
m_PersistentCalls:
@ -49746,7 +49746,7 @@ MonoBehaviour:
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: 430~470MHz
m_Text: 1227.60 MHz
--- !u!222 &638510552
CanvasRenderer:
m_ObjectHideFlags: 0
@ -103196,7 +103196,7 @@ MonoBehaviour:
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
randSeed: 320610828
randSeed: 479014125
isDoingTransition: 0
minimumHeight: 0
--- !u!114 &1820978574

View File

@ -9,7 +9,7 @@ using Newtonsoft.Json.Linq;
public static class InterfaceManager
{
private static string _IP = "192.168.6.15";
private static string _IP = "192.168.244.15";
public static string IP
{
get { return _IP; }

View File

@ -185,7 +185,7 @@ public class LaserFireControlPlatformManger : MonoBehaviour
/// </summary>
public void Lasing()
{
if (targetPoint != null)
if (targetPoint != null)
{
LaserModer.transform.DOLookAt(targetPoint.position, 0.1f).OnComplete(()=> {
Debug.Log("目标点位..:"+targetPoint.position);

View File

@ -85,11 +85,17 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
/// <summary>
/// 飞机迫降的速度
/// </summary>
public float speed = 50;
public float speed = 1;
/// <summary>
/// 地面的图层
/// </summary>
public LayerMask ground;
/// <summary>
/// 驱离返回坐标
/// </summary>
[SerializeField]
public Transform backtransform;
void Start()
{
equipmentCommon = GetComponent<EquipmentCommon>();
@ -111,9 +117,13 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
AddBao(unmannedAerialVehicle);
});
}
Interferencemode();
//Interferencemode();
//Angularrange();
}
void LateUpdate()
{
Interferencemode();
}
#region
/// <summary>
/// 导条变化调用
@ -188,22 +198,22 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
switch (weaponitemone[i].para_value)
{
case "0":
InterferingFrequency = "430~470MHz";
InterferingFrequency = "1227.60 MHz";
break;
case "1":
InterferingFrequency = "832~940MHz";
InterferingFrequency = "1575.42 MHz";
break;
case "2":
InterferingFrequency = "1.2~1.3GHz";
InterferingFrequency = "1381.05 MHz";
break;
case "3":
InterferingFrequency = "1.56~1.62GHz";
InterferingFrequency = "2GHz";
break;
case "4":
InterferingFrequency = "2.4~2.5GHz";
InterferingFrequency = "4GHz";
break;
case "5":
InterferingFrequency = "5.725~5.85GHz";
InterferingFrequency = "5GHz";
break;
default:
break;
@ -263,54 +273,100 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
/// </summary>
public void Interferencemode()
{
Collider[] colliders = Physics.OverlapSphere(transform.position, 300);//检索范围
Collider[] colliders = Physics.OverlapSphere(transform.position, detectionRadius * 100);//检索范围
for (int i = 0; i < colliders.Length; i++)
{
if (colliders[i].transform.tag == "WRJ")
{
UnmannedAerialVehicle unmannedAerialVehicle = colliders[i].GetComponent<UnmannedAerialVehicle>();
UnmannedAerialVehicleManage unmannedAerialVehicleManage = colliders[i].GetComponent<UnmannedAerialVehicleManage>();
if (InterferenceMode == "驱离")
UnmannedAerialVehicle unmannedAerialVehicle = null;
if (colliders[i].GetComponent<UnmannedAerialVehicle>())
{
unmannedAerialVehicleManage.transform.DOKill();
//unmannedAerialVehicle.transform.DOKill();
Debug.LogError(unmannedAerialVehicle.name);
unmannedAerialVehicle.transform.parent = null;
unmannedAerialVehicle.transform.Translate(Vector3.forward * speed * Time.deltaTime);
unmannedAerialVehicle = colliders[i].GetComponent<UnmannedAerialVehicle>();
}
else if (InterferenceMode == "迫降")
UnmannedAerialVehicleManage unmannedAerialVehicleManage = null;
if (colliders[i].GetComponent<UnmannedAerialVehicleManage>())
{
unmannedAerialVehicleManage.transform.DOKill();
//unmannedAerialVehicle.transform.DOKill();
Debug.LogError(unmannedAerialVehicle.name);
RaycastHit hit;
if (Physics.Raycast(unmannedAerialVehicle.transform.position, Vector3.down, out hit, Mathf.Infinity, ground))
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)
{
if (hit.distance > 0.5f)
Debug.LogError("相同频率进来了1");
Debug.LogError(InterferenceMode);
Debug.LogError(unmannedAerialVehicleManage != null);
if (InterferenceMode == "驱离" && unmannedAerialVehicleManage != null)
{
Debug.LogError(hit.distance);
unmannedAerialVehicle.transform.parent = null;
unmannedAerialVehicle.transform.Translate(Vector3.down * speed * Time.deltaTime);
Debug.LogError("驱离");
//unmannedAerialVehicle.transform.DOKill();
//Vector3 trans = unmannedAerialVehicleManage.transform.position;
//unmannedAerialVehicleManage.modeSwitch(0);
unmannedAerialVehicleManage.transform.DOKill();
unmannedAerialVehicleManage.transform.LookAt(new Vector3(-500, 160, 1650));
unmannedAerialVehicleManage.transform.DOMove(new Vector3(-500, 160, 1650), 40);
//unmannedAerialVehicle.transform.DOKill();
//Debug.LogError(unmannedAerialVehicle.name);
//unmannedAerialVehicle.transform.parent = null;
//unmannedAerialVehicle.transform.Translate(Vector3.forward * speed * Time.deltaTime);
//unmannedAerialVehicleManage.transform.position = trans;
//unmannedAerialVehicleManage.transform.position = Vector3.Lerp(unmannedAerialVehicleManage.transform.position, new Vector3(-500, 160, 1650), speed * Time.deltaTime);
////unmannedAerialVehicle.transform.position = Vector3.Lerp(unmannedAerialVehicle.transform.position, new Vector3(-500, 160, 1650), speed * Time.deltaTime);
}
else
else if (InterferenceMode == "迫降" && unmannedAerialVehicleManage != null)
{
speed = 0;
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);
//unmannedAerialVehicle.transform.parent = null;
//unmannedAerialVehicleManage.transform.Translate(Vector3.down * speed * Time.deltaTime);
hit.point = new Vector3(hit.point.x, hit.point.y + 3, hit.point.z);
unmannedAerialVehicleManage.transform.LookAt(hit.point);
unmannedAerialVehicleManage.transform.DOMove(hit.point, 6);
//unmannedAerialVehicleManage.transform.position = Vector3.Lerp(unmannedAerialVehicleManage.transform.position, hit.point, speed * Time.deltaTime);
}
else
{
speed = 0;
}
}
}
}
}
Vector3 one = unmannedAerialVehicle.transform.position - transform.position;
float angue = Vector3.Angle(transform.forward, one);
if (float.Parse(InterferenceAngle) >= angue)
if (TransmittedPower == "50~100W" && unmannedAerialVehicleManage != null)
{
unmannedAerialVehicle.transform.DOKill();
Debug.LogError("目标出现在范围内");
}
else
{
unmannedAerialVehicle.transform.DOKill();
Debug.LogError("目标没有出现在范围里面");
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(transform.forward, one);
if (float.Parse(InterferenceAngle) >= angue)
{
//unmannedAerialVehicleManage.transform.DOKill();
Debug.LogError("目标出现在范围内");
unmannedAerialVehicleManage.maximumFlyingSpeed = (float.Parse(unmannedAerialVehicleManage.maximumFlyingSpeed) - 5).ToString();
}
else
{
//unmannedAerialVehicle.transform.DOKill();
Debug.LogError("目标没有出现在范围里面");
}
}
}
}
}
}
@ -324,12 +380,12 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
Collider[] collider = Physics.OverlapSphere(transform.position, 300);
for (int i = 0; i < collider.Length; i++)
{
if (collider[i].transform.tag=="WRJ")
if (collider[i].transform.tag == "WRJ")
{
UnmannedAerialVehicle unmannedAerialVehicle = collider[i].GetComponent<UnmannedAerialVehicle>();
Vector3 one =unmannedAerialVehicle.transform.position-transform.position;
Vector3 one = unmannedAerialVehicle.transform.position - transform.position;
float angue = Vector3.Angle(transform.forward, one);
if (float.Parse(InterferenceAngle)>=angue)
if (float.Parse(InterferenceAngle) >= angue)
{
Debug.LogError("目标出现在范围内");