This commit is contained in:
YangHua 2024-01-23 15:34:40 +08:00
commit 20017077d1
5 changed files with 50 additions and 74 deletions

View File

@ -58,7 +58,7 @@ Camera:
far clip plane: 500 far clip plane: 500
field of view: 60 field of view: 60
orthographic: 1 orthographic: 1
orthographic size: 300 orthographic size: 500
m_Depth: 0 m_Depth: 0
m_CullingMask: m_CullingMask:
serializedVersion: 2 serializedVersion: 2

View File

@ -155,28 +155,34 @@ public class EquipmentCommon : MonoBehaviour
case "激光火控平台": case "激光火控平台":
LaserFireControlPlatformManger laserFireControlPlatformManger = GetComponent<LaserFireControlPlatformManger>(); LaserFireControlPlatformManger laserFireControlPlatformManger = GetComponent<LaserFireControlPlatformManger>();
laserFireControlPlatformManger.FillInTheData(weaponitemone); laserFireControlPlatformManger.FillInTheData(weaponitemone);
laserFireControlPlatformManger.isStartRehearsing = isStartRehearsing; //laserFireControlPlatformManger.isStartRehearsing = isStartRehearsing;
break; break;
case "探测雷达": case "探测雷达":
RadarManger radarManger = GetComponent<RadarManger>(); RadarManger radarManger = GetComponent<RadarManger>();
radarManger.FillInTheData(weaponitemone); radarManger.FillInTheData(weaponitemone);
radarManger.isStartRehearsing = isStartRehearsing;
break; break;
case "地面无线电干扰": case "地面无线电干扰":
TerrestrialRadioInterferenceManger terrestrialRadioInterferenceManger = GetComponent<TerrestrialRadioInterferenceManger>(); TerrestrialRadioInterferenceManger terrestrialRadioInterferenceManger = GetComponent<TerrestrialRadioInterferenceManger>();
terrestrialRadioInterferenceManger.FillInTheData(weaponitemone); terrestrialRadioInterferenceManger.FillInTheData(weaponitemone);
terrestrialRadioInterferenceManger.isStartRehearsing = isStartRehearsing;
break; break;
case "蜂群无人机": case "蜂群无人机":
UnmannedAerialVehicleManage unmannedAerialVehicleManage = GetComponent<UnmannedAerialVehicleManage>(); UnmannedAerialVehicleManage unmannedAerialVehicleManage = GetComponent<UnmannedAerialVehicleManage>();
unmannedAerialVehicleManage.MatrixFormation(30, 1); unmannedAerialVehicleManage.MatrixFormation(30, 1);
unmannedAerialVehicleManage.FillInTheData(weaponitemone); unmannedAerialVehicleManage.FillInTheData(weaponitemone);
unmannedAerialVehicleManage.isStartRehearsing = isStartRehearsing;
break; break;
case "频谱探测": case "频谱探测":
Spectrumdetection spectrumdetection = GetComponent<Spectrumdetection>(); Spectrumdetection spectrumdetection = GetComponent<Spectrumdetection>();
spectrumdetection.FillInTheData(weaponitemone); spectrumdetection.FillInTheData(weaponitemone);
spectrumdetection.isStartRehearsing = isStartRehearsing;
break; break;
case "微波武器": case "微波武器":
Microwaveweapon microwaveweapon = GetComponent<Microwaveweapon>(); Microwaveweapon microwaveweapon = GetComponent<Microwaveweapon>();
microwaveweapon.FillInTheData(weaponitemone); microwaveweapon.FillInTheData(weaponitemone);
microwaveweapon.isStartRehearsing = isStartRehearsing;
break; break;
default: default:
break; break;

View File

@ -168,8 +168,6 @@ public class LaserFireControlPlatformManger : MonoBehaviour
InnerLaserlineRenderer.SetPosition(1, LaserPoint.transform.position); // 设置线段终点为目标点 InnerLaserlineRenderer.SetPosition(1, LaserPoint.transform.position); // 设置线段终点为目标点
} }
GameObject _OuterLaserlineRenderer = Instantiate(OuterLaserlineRendererPrefab); GameObject _OuterLaserlineRenderer = Instantiate(OuterLaserlineRendererPrefab);
_OuterLaserlineRenderer.transform.position = Vector3.zero; _OuterLaserlineRenderer.transform.position = Vector3.zero;
OuterLaserlineRenderer = _OuterLaserlineRenderer.GetComponent<LineRenderer>(); OuterLaserlineRenderer = _OuterLaserlineRenderer.GetComponent<LineRenderer>();
@ -274,21 +272,7 @@ public class LaserFireControlPlatformManger : MonoBehaviour
Debug.LogError("没有目标"); Debug.LogError("没有目标");
} }
} }
///// <summary>
///// 十字准星架视角
///// </summary>
//public void Crosshair()
//{
// if (targetPoint != null)
// {
// camera.transform.DOLookAt(targetPoint.position, 0.5f).SetEase(Ease.Linear).OnComplete(() =>
// {
// Debug.LogError("看向进来了");
// Launchanattack();
// });
// }
//}
/// <summary> /// <summary>
/// 激光显示 /// 激光显示
/// </summary> /// </summary>

View File

@ -140,8 +140,8 @@ public class RadarManger : MonoBehaviour
// Update is called once per frame // Update is called once per frame
void Update() void Update()
{ {
if (equipmentCommon.isPlayer) //if (equipmentCommon.isPlayer)
RetrievalUAV();//看向无人机 // RetrievalUAV();//看向无人机
} }
#region #region
/// <summary> /// <summary>
@ -169,7 +169,7 @@ public class RadarManger : MonoBehaviour
{ {
//Debug.Log("Timer fired at: " + Time.time); //Debug.Log("Timer fired at: " + Time.time);
yield return new WaitForSeconds(5); // 等待一段时间后继续执行 yield return new WaitForSeconds(5); // 等待一段时间后继续执行
//RetrievalUAV(); RetrievalUAV();
} }
} }

View File

@ -105,16 +105,11 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
// Update is called once per frame // Update is called once per frame
void Update() void Update()
{ {
if (unmannedAerialVehicles.Count > 0 && isDo) if (WRJs.Count > 0 && isDo)
{ {
isDo = false; isDo = false;
UnmannedAerialVehicle unmannedAerialVehicle = unmannedAerialVehicles.Dequeue(); Transform wrj = WRJs.Dequeue();
Vector3 _pos = unmannedAerialVehicle.transform.position - new Vector3(0, 50, 0); Interferencemode(wrj);
unmannedAerialVehicle.transform.LookAt(_pos);
unmannedAerialVehicle.transform.DOMove(_pos, 1).OnComplete(() =>
{
AddBao(unmannedAerialVehicle);
});
} }
//Interferencemode(); //Interferencemode();
//Angularrange(); //Angularrange();
@ -122,7 +117,7 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
void LateUpdate() void LateUpdate()
{ {
Detection(); Detection();
Interferencemode();
} }
/// <summary> /// <summary>
/// 点击无线电显示UI /// 点击无线电显示UI
@ -203,7 +198,14 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
} }
} }
#endregion #endregion
/// <summary>
/// 检索到的同频段无人机
/// </summary>
Queue<Transform> WRJs = new Queue<Transform>();
/// <summary>
/// 逐个驱离
/// </summary>
private bool isDo = true;
/// <summary> /// <summary>
/// 数据写入 /// 数据写入
/// </summary> /// </summary>
@ -297,28 +299,21 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
/// <summary> /// <summary>
/// 干扰模式 /// 干扰模式
/// </summary> /// </summary>
public void Interferencemode() public void Interferencemode(Transform wrj)
{ {
Collider[] colliders = Physics.OverlapSphere(transform.position, detectionRadius * 100);//检索范围 Collider[] colliders = Physics.OverlapSphere(transform.position, detectionRadius * 100);//检索范围
UnmannedAerialVehicle unmannedAerialVehicle = null;
if (wrj.GetComponent<UnmannedAerialVehicle>())
for (int i = 0; i < colliders.Length; i++)
{ {
if (colliders[i].transform.tag == "WRJ") unmannedAerialVehicle = wrj.GetComponent<UnmannedAerialVehicle>();
{
UnmannedAerialVehicle unmannedAerialVehicle = null;
if (colliders[i].GetComponent<UnmannedAerialVehicle>())
{
unmannedAerialVehicle = colliders[i].GetComponent<UnmannedAerialVehicle>();
}
UnmannedAerialVehicleManage unmannedAerialVehicleManage = null;
if (colliders[i].GetComponent<UnmannedAerialVehicleManage>())
{
unmannedAerialVehicleManage = colliders[i].GetComponent<UnmannedAerialVehicleManage>();
unmannedAerialVehicleManage.CheckSatellitePositioningFrequency(this.transform, InterferenceMode, TransmittedPower, InterferingFrequency, InterferenceAngle, ground);
}
}
} }
UnmannedAerialVehicleManage unmannedAerialVehicleManage = null;
if (wrj.GetComponent<UnmannedAerialVehicleManage>())
{
unmannedAerialVehicleManage = wrj.GetComponent<UnmannedAerialVehicleManage>();
unmannedAerialVehicleManage.CheckSatellitePositioningFrequency(this.transform, InterferenceMode, TransmittedPower, InterferingFrequency, InterferenceAngle, ground);
}
isDo = false;
} }
/// <summary> /// <summary>
/// 干扰无人机角度范围 /// 干扰无人机角度范围
@ -368,7 +363,20 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
{ {
Debug.Log("干扰...:" + colliders[i].name + "成功。"); Debug.Log("干扰...:" + colliders[i].name + "成功。");
//unmannedAerialVehicle.BeAssaulted("无线电干扰"); //unmannedAerialVehicle.BeAssaulted("无线电干扰");
unmannedAerialVehicles.Enqueue(unmannedAerialVehicle); WRJs.Enqueue(unmannedAerialVehicle.transform);
}
}
UnmannedAerialVehicleManage unmannedAerialVehicleManage = colliders[i].GetComponent<UnmannedAerialVehicleManage>();
if (unmannedAerialVehicleManage)
{
//Debug.Log(col.name+"数据链通信频点...:" + unmannedAerialVehicle.dataLinkCommunicationFrequency);
if (unmannedAerialVehicleManage.dataLinkCommunicationFrequency == "" || InterferingFrequency == "") continue;//无数据不执行
if (unmannedAerialVehicleManage.dataLinkCommunicationFrequency == InterferingFrequency)
{
Debug.Log("干扰...:" + colliders[i].name + "成功。");
//unmannedAerialVehicle.BeAssaulted("无线电干扰");
WRJs.Enqueue(unmannedAerialVehicleManage.transform);
} }
} }
@ -376,29 +384,7 @@ public class TerrestrialRadioInterferenceManger : MonoBehaviour
} }
} }
Queue<UnmannedAerialVehicle> unmannedAerialVehicles = new Queue<UnmannedAerialVehicle>();
private bool isDo = true;
/// <summary>
/// 销毁单体无人机
/// </summary>
public void AddBao(UnmannedAerialVehicle unmannedAerialVehicle)
{
string nowData = GetSyncDis(unmannedAerialVehicle);
Debug.Log(nowData);
DeviceManager.Instance.send2roomStr.Enqueue(nowData);
string currentTime = System.DateTime.Now.ToString();
string _log = currentTime + " " + equipmentCommon.equipmentType + "(" + equipmentCommon.deviceID + ")" +
"攻击了销毁了" + unmannedAerialVehicle.unmannedAerialVehicleManage.equipmentCommon.equipmentType + "(" + unmannedAerialVehicle.unmannedAerialVehicleManage.equipmentCommon.deviceID + ")"
+ "编号" + unmannedAerialVehicle.serialNumber + "子无人机";
UploadLog(_log);
GameObject Bao = Instantiate(explodePrefab, unmannedAerialVehicle.transform);
Bao.transform.localPosition = Vector3.zero;
Bao.transform.SetParent(null);
Bao.SetActive(true);
Destroy(unmannedAerialVehicle.gameObject);
isDo = true;
}
/// <summary> /// <summary>
///上传日志 ///上传日志