diff --git a/docs/对接文档_Unity前端.md b/docs/对接文档_Unity前端.md index fcedf12..60eefec 100644 --- a/docs/对接文档_Unity前端.md +++ b/docs/对接文档_Unity前端.md @@ -442,13 +442,14 @@ public ModelInfo Get(string id); ### 6.1 有官方中文翻译的枚举(GetEnums() 返回) -这 12 个枚举通过 `scenario.GetEnums()` 获取中英文对照,可直接用于下拉框: +这 13 个枚举通过 `scenario.GetEnums()` 获取中英文对照,可直接用于下拉框: ```csharp var enums = scenario.GetEnums(); // enums.DroneType, enums.PowerType, enums.PlatformType, enums.AerosolType, // enums.WeatherType, enums.WindDirection, enums.SceneType, enums.FormationMode, -// enums.TriggerMode, enums.ReleaseMode, enums.EquipmentRole, enums.EntityType +// enums.TriggerMode, enums.ReleaseMode, enums.EquipmentRole, enums.EntityType, +// enums.SensorType ``` | 枚举 | 成员 = 值 | 中文 | @@ -465,6 +466,7 @@ var enums = scenario.GetEnums(); | **ReleaseMode** | Single=0, Continuous=1, Pulse=2 | 单次齐射/连续释放/脉冲释放 | | **EquipmentRole** | Detection=0, LaunchPlatform=1 | 探测设备/发射平台 | | **EntityType** | Drone=0, Platform=1, DetectionEquip=2, Cloud=3, Munition=4 | 无人机/发射平台/探测设备/云团/弹药 | +| **SensorType** | Radar=0, EO=1, IR=2 | 雷达/光电/红外 | ### 6.2 无官方翻译的枚举(前端需自行映射中文) @@ -568,6 +570,7 @@ public class EnumMetadata public List ReleaseMode { get; set; } public List EquipmentRole { get; set; } public List EntityType { get; set; } + public List SensorType { get; set; } } ``` diff --git a/src/CounterDrone.Core/Models/Enums.cs b/src/CounterDrone.Core/Models/Enums.cs index 3b39003..171e06c 100644 --- a/src/CounterDrone.Core/Models/Enums.cs +++ b/src/CounterDrone.Core/Models/Enums.cs @@ -60,6 +60,13 @@ namespace CounterDrone.Core.Models LaunchPlatform = 1 } + public enum SensorType + { + Radar = 0, + EO = 1, + IR = 2 + } + // === 气溶胶 & 毁伤 === public enum AerosolType { diff --git a/src/CounterDrone.Core/Services/EnumMetadata.cs b/src/CounterDrone.Core/Services/EnumMetadata.cs index 18c56bc..5b72716 100644 --- a/src/CounterDrone.Core/Services/EnumMetadata.cs +++ b/src/CounterDrone.Core/Services/EnumMetadata.cs @@ -25,5 +25,6 @@ namespace CounterDrone.Core.Services public List ReleaseMode { get; set; } = new(); public List EquipmentRole { get; set; } = new(); public List EntityType { get; set; } = new(); + public List SensorType { get; set; } = new(); } } diff --git a/src/CounterDrone.Core/Services/ScenarioService.cs b/src/CounterDrone.Core/Services/ScenarioService.cs index 130af8b..ea7bd2b 100644 --- a/src/CounterDrone.Core/Services/ScenarioService.cs +++ b/src/CounterDrone.Core/Services/ScenarioService.cs @@ -246,6 +246,7 @@ namespace CounterDrone.Core.Services ReleaseMode = EnumToList(TranslateRelease), EquipmentRole = EnumToList(TranslateEquipmentRole), EntityType = EnumToList(TranslateEntityType), + SensorType = EnumToList(TranslateSensorType), }; } @@ -350,6 +351,14 @@ namespace CounterDrone.Core.Services _ => r.ToString(), }; + private static string TranslateSensorType(Models.SensorType t) => t switch + { + Models.SensorType.Radar => "雷达", + Models.SensorType.EO => "光电", + Models.SensorType.IR => "红外", + _ => t.ToString(), + }; + private static string TranslateEntityType(Models.EntityType t) => t switch { Models.EntityType.Drone => "无人机", diff --git a/src/Unity/Assets/Plugins/CounterDrone.Core/CounterDrone.Core.dll b/src/Unity/Assets/Plugins/CounterDrone.Core/CounterDrone.Core.dll index 33e8949..7fd208b 100644 Binary files a/src/Unity/Assets/Plugins/CounterDrone.Core/CounterDrone.Core.dll and b/src/Unity/Assets/Plugins/CounterDrone.Core/CounterDrone.Core.dll differ diff --git a/unity_plugins/CounterDrone.Core.dll b/unity_plugins/CounterDrone.Core.dll index 33e8949..7fd208b 100644 Binary files a/unity_plugins/CounterDrone.Core.dll and b/unity_plugins/CounterDrone.Core.dll differ