diff --git a/Assets/Zion/Scripts/ModelFunction/UAV/UnmannedAerialVehicle.cs b/Assets/Zion/Scripts/ModelFunction/UAV/UnmannedAerialVehicle.cs
index 52bb312d..e85df8c4 100644
--- a/Assets/Zion/Scripts/ModelFunction/UAV/UnmannedAerialVehicle.cs
+++ b/Assets/Zion/Scripts/ModelFunction/UAV/UnmannedAerialVehicle.cs
@@ -65,13 +65,13 @@ public class UnmannedAerialVehicle : MonoBehaviour
/// 检测范围半径
///
public float detectionRadius = 50; //
-
+
///
/// 爆炸预制体
///
public GameObject explodePrefab;
-
+ public Transform attackTarget;
private void OnTriggerEnter(Collider other)
{
if (unmannedAerialVehicleManage.equipmentCommon.isPlayer && other.tag == "AttackTarget")
@@ -84,9 +84,9 @@ public class UnmannedAerialVehicle : MonoBehaviour
}
///
- /// 设置无人机类型
- ///
- ///
+ /// 设置无人机类型
+ ///
+ ///
public void SetWRJModel(WRJModel _wrjModel)
{
wrjModel = _wrjModel;
@@ -132,7 +132,7 @@ public class UnmannedAerialVehicle : MonoBehaviour
///
public void AddBao(bool isPassMessage)
{
-
+
if (isPassMessage)
{
string nowData = GetSyncDis();
@@ -140,7 +140,7 @@ public class UnmannedAerialVehicle : MonoBehaviour
//_ = SyncCreateRoom.SendMessageAsync(string.Format("send2room {0}", nowData));
DeviceManager.Instance.send2roomStr.Enqueue(nowData);
string currentTime = System.DateTime.Now.ToString();
- string _log= currentTime + " " + unmannedAerialVehicleManage.equipmentCommon.equipmentType + "(" + unmannedAerialVehicleManage.equipmentCommon.deviceID + ")"
+ string _log = currentTime + " " + unmannedAerialVehicleManage.equipmentCommon.equipmentType + "(" + unmannedAerialVehicleManage.equipmentCommon.deviceID + ")"
+ "编号" + serialNumber + "子无人机" + "自杀式攻击自爆了";
UploadLog(_log);
}
@@ -148,7 +148,7 @@ public class UnmannedAerialVehicle : MonoBehaviour
Bao.transform.localPosition = Vector3.zero;
Bao.transform.SetParent(null);
Bao.SetActive(true);
-
+
Destroy(gameObject);
}
@@ -158,19 +158,20 @@ public class UnmannedAerialVehicle : MonoBehaviour
///
public void UploadLog(string _log)
{
-
+
List uploadLogMains = new List();
UploadLogMain uploadLogMain = new UploadLogMain();
uploadLogMain.PracticeId = GlobalFlag.practiceSubjectID;
uploadLogMain.ThinkId = GlobalFlag.currentThinkId;
- string log =
+ string log =
uploadLogMain.log = _log;
uploadLogMains.Add(uploadLogMain);
string uploadLogMainJson = JsonConvert.SerializeObject(uploadLogMains);
WWWForm wWWForm = new WWWForm();
wWWForm.AddField("data", uploadLogMainJson);
Debug.Log(uploadLogMainJson);
- StartCoroutine(PostString(Url_Addpracticelog, wWWForm, data => {
+ StartCoroutine(PostString(Url_Addpracticelog, wWWForm, data =>
+ {
Debug.Log(data);
}));
}
@@ -187,14 +188,15 @@ public class UnmannedAerialVehicle : MonoBehaviour
_ = SyncCreateRoom.SendMessageAsync(string.Format("send2room {0}", nowData));
string currentTime = System.DateTime.Now.ToString();
string _log = currentTime + " " + unmannedAerialVehicleManage.equipmentCommon.equipmentType + "(" + unmannedAerialVehicleManage.equipmentCommon.deviceID + ")"
- + "编号" + serialNumber + "子无人机" + "攻击摧毁了"+ _equipmentCommon.equipmentType + "(" + _equipmentCommon.deviceID + ")";
+ + "编号" + serialNumber + "子无人机" + "攻击摧毁了" + _equipmentCommon.equipmentType + "(" + _equipmentCommon.deviceID + ")";
UploadLog(_log);
- WWWForm headers = new WWWForm();
+ WWWForm headers = new WWWForm();
headers.AddField("id", _equipmentCommon.deviceID);
- //StartCoroutine(PostString(Url_Deletepracticedevicedetail, headers, data => {
- // //Debug.Log(data);
- //}));
+ StartCoroutine(PostString(Url_Deletepracticedevicedetail, headers, data =>
+ {
+ //Debug.Log(data);
+ }));
GameObject Bao = Instantiate(explodePrefab, _transform);
Bao.transform.localPosition = Vector3.zero;
Bao.transform.SetParent(null);
@@ -218,20 +220,24 @@ public class UnmannedAerialVehicle : MonoBehaviour
///
public void AttAck(Transform target)
{
- Debug.Log("开始攻击目标..:" + target.name);
- Vector3 _v3 = target.position;
-
- transform.DOLookAt(_v3, 0.1f).OnComplete(() =>
+ if (attackTarget == null)
{
- float distance = Vector3.Distance(transform.position, target.position);
- transform.DOMove(target.position, distance / FireSpeed).SetEase(Ease.Linear).OnComplete(() =>
+ transform.DOKill();
+ attackTarget = target;
+ Debug.Log("开始攻击目标..:" + target.name);
+ Vector3 _v3 = target.position;
+ transform.DOLookAt(_v3, 0.1f).OnComplete(() =>
{
- if (!target)
+ float distance = Vector3.Distance(transform.position, target.position);
+ transform.DOMove(target.position, distance / FireSpeed).SetEase(Ease.Linear).OnComplete(() =>
{
- BeAssaulted("没有攻击到目标");
- }
+ if (!target)
+ {
+ BeAssaulted("没有攻击到目标");
+ }
+ });
});
- });
+ }
}
///
diff --git a/Assets/Zion/Scripts/ModelFunction/UAV/UnmannedAerialVehicleManage.cs b/Assets/Zion/Scripts/ModelFunction/UAV/UnmannedAerialVehicleManage.cs
index 523c1966..937a3356 100644
--- a/Assets/Zion/Scripts/ModelFunction/UAV/UnmannedAerialVehicleManage.cs
+++ b/Assets/Zion/Scripts/ModelFunction/UAV/UnmannedAerialVehicleManage.cs
@@ -275,7 +275,7 @@ public class UnmannedAerialVehicleManage : MonoBehaviour
///
private void SelectiveAttackDrone()
{
- if (isEngagedTarget) return;
+ //if (isEngagedTarget) return;
if (wrjModel == WRJModel.电子侦察无人机 || wrjModel == WRJModel.光学无人机)
{
List colliders = Physics.OverlapSphere(transform.position, detectionRadius).ToList(); // 检索范围内的所有碰撞体
@@ -290,7 +290,7 @@ public class UnmannedAerialVehicleManage : MonoBehaviour
{
if (attackColliders1.Count > 0)
{
- isEngagedTarget = true;
+ //isEngagedTarget = true;
//colliders1.ForEach(x => Debug.Log(x.transform.name));
int _number = UnityEngine.Random.Range(0, attackColliders1.Count - 1);
List _unmannedAerialVehicles = unmannedAerialVehicles.FindAll(x => x != null && x.gameObject.activeSelf);