From dfcfd33ad0d4163f29138d2c3cb67a47d8f0decf Mon Sep 17 00:00:00 2001 From: YangHua <1475658476@qq.com> Date: Thu, 29 Feb 2024 11:10:31 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=97=A0=E4=BA=BA=E6=9C=BA?= =?UTF-8?q?=E7=AB=AF=E9=87=8D=E6=96=B0=E7=99=BB=E5=BD=95=E7=BC=96=E7=BB=84?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E4=B8=8D=E5=90=8C=E6=AD=A5=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Zion/Scripts/Adam/FormationManager.cs | 29 ++++++++++++-------- 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/Assets/Zion/Scripts/Adam/FormationManager.cs b/Assets/Zion/Scripts/Adam/FormationManager.cs index f46e9553..b9b15181 100644 --- a/Assets/Zion/Scripts/Adam/FormationManager.cs +++ b/Assets/Zion/Scripts/Adam/FormationManager.cs @@ -203,23 +203,28 @@ public class FormationManager : MonoSingleton } - formationInfo = new FormationInfo(); - for (int i = 0; i < allUavms.Count; i++) + foreach (var uam in allUavms) { - if (allUavms[i].groupId == wrjCount) + if (uam.groupId != -1) { - formationInfo.groupIndex = wrjCount; - formationInfo.uavms.Add(allUavms[i]); + FormationInfo existingCategory = formationInfos.Find(tt => tt.groupIndex == uam.groupId); + if (existingCategory != null) + { + if (!existingCategory.uavms.Contains(uam)) + existingCategory.uavms.Add(uam); + } + else + { + FormationInfo newCategory = new FormationInfo { groupIndex = uam.groupId }; + if (!newCategory.uavms.Contains(uam)) + newCategory.uavms.Add(uam); + if (!formationInfos.Contains(newCategory)) + formationInfos.Add(newCategory); + } } } - - //wrjCount = -1; - //formationInfo = null; - - //allUavms = .Where(x => x != null && x.gameObject.layer == 11 && x.GetComponent()).ToList(); - //List uavms = DeviceManager.Instance.devices; } - +