diff --git a/Infrastructure/AppInfo.cs b/Infrastructure/AppInfo.cs new file mode 100644 index 00000000..651edfce --- /dev/null +++ b/Infrastructure/AppInfo.cs @@ -0,0 +1,29 @@ +using System.Reflection; + +namespace Shigure; + +/// +/// 应用版本信息的单一来源。优先取 csproj 的 <Version>(AssemblyInformationalVersion), +/// 退化到 AssemblyVersion; 随机副本运行时同样从拷贝出的程序集读取, 版本属性保留。 +/// +internal static class AppInfo +{ + public static string Version { get; } = ResolveVersion(); + + private static string ResolveVersion() + { + var assembly = Assembly.GetExecutingAssembly(); + var informational = assembly + .GetCustomAttribute()? + .InformationalVersion; + + if (!string.IsNullOrWhiteSpace(informational)) + { + // 去掉构建元数据后缀(如 "1.1.0+abc123")。 + var plus = informational.IndexOf('+'); + return plus >= 0 ? informational[..plus] : informational; + } + + return assembly.GetName().Version?.ToString() ?? "未知"; + } +} diff --git a/Modules/ModuleStore.cs b/Modules/ModuleStore.cs index a17287f1..581a3051 100644 --- a/Modules/ModuleStore.cs +++ b/Modules/ModuleStore.cs @@ -10,6 +10,9 @@ public sealed class ModuleDefinition { public string Id { get; set; } = string.Empty; public string Name { get; set; } = "新模块"; + public string Author { get; set; } = string.Empty; + // 保存时写入当时的 Shigure 版本(AppInfo.Version)。 + public string Version { get; set; } = string.Empty; public bool Enabled { get; set; } = true; public ModuleMatch Match { get; set; } = new(); public List Units { get; set; } = new(); @@ -26,6 +29,8 @@ public sealed class ModuleDefinition { Id = Id, Name = Name, + Author = Author, + Version = Version, Enabled = Enabled, FilePath = FilePath, Match = Match.Clone(), diff --git a/Shigure.csproj b/Shigure.csproj index 8d0081d7..30a4c735 100644 --- a/Shigure.csproj +++ b/Shigure.csproj @@ -9,9 +9,9 @@ Shigure Shigure Arasaka Corporation - 1.0.1 - 1.0.0.1 - 1.0.0.1 + 1.1.0 + 1.1.0.0 + 1.1.0.0 Assets\arasaka-icon.ico diff --git a/UI/ModuleEditorControl.cs b/UI/ModuleEditorControl.cs index 20d673cd..2724c2de 100644 --- a/UI/ModuleEditorControl.cs +++ b/UI/ModuleEditorControl.cs @@ -10,6 +10,7 @@ public sealed class ModuleEditorControl : UserControl private readonly KeymapCatalog _keymapCatalog; private readonly ListBox _moduleList = new(); private readonly TextBox _nameBox = new(); + private readonly TextBox _authorBox = new(); private readonly ComboBox _classBox = new(); private readonly ComboBox _specBox = new(); private readonly ComboBox _partyTypeBox = new(); @@ -23,6 +24,7 @@ public sealed class ModuleEditorControl : UserControl private readonly DataGridViewComboBoxColumn _adjustmentTypeColumn = new(); private readonly ListView _unitsList = new(); private readonly Label _pathLabel = new(); + private readonly Label _versionLabel = new(); private readonly Label _unitsEmptyHint = new(); private readonly Label _editorEmptyHint = new(); private Button _saveButton = null!; @@ -433,13 +435,16 @@ public sealed class ModuleEditorControl : UserControl { Dock = DockStyle.Fill, BackColor = UiTheme.SurfaceRaised, - ColumnCount = 2, + ColumnCount = 4, RowCount = 2, Padding = new Padding(10, 8, 10, 2), Margin = new Padding(0, 0, 0, 8) }; + // 名称/作者各占剩余宽度的一半, 两个输入框等宽并铺满窗口。 row.ColumnStyles.Add(new ColumnStyle(SizeType.Absolute, 58)); - row.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 100)); + row.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 50)); + row.ColumnStyles.Add(new ColumnStyle(SizeType.Absolute, 58)); + row.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 50)); row.RowStyles.Add(new RowStyle(SizeType.Absolute, 30)); row.RowStyles.Add(new RowStyle(SizeType.Absolute, 24)); @@ -448,12 +453,26 @@ public sealed class ModuleEditorControl : UserControl _nameBox.Dock = DockStyle.Fill; row.Controls.Add(_nameBox, 1, 0); + var authorLabel = CreateLabel("作者"); + authorLabel.Margin = new Padding(10, 0, 0, 0); + row.Controls.Add(authorLabel, 2, 0); + UiTheme.StyleTextBox(_authorBox); + _authorBox.Dock = DockStyle.Fill; + row.Controls.Add(_authorBox, 3, 0); + _pathLabel.Dock = DockStyle.Fill; _pathLabel.ForeColor = UiTheme.Muted; _pathLabel.TextAlign = ContentAlignment.MiddleLeft; _pathLabel.AutoEllipsis = true; row.Controls.Add(_pathLabel, 0, 1); - row.SetColumnSpan(_pathLabel, 2); + row.SetColumnSpan(_pathLabel, 3); + + // 版本号紧贴窗口右侧, 右对齐显示在"路径"同一行。 + _versionLabel.Dock = DockStyle.Fill; + _versionLabel.ForeColor = UiTheme.Muted; + _versionLabel.TextAlign = ContentAlignment.MiddleRight; + _versionLabel.AutoEllipsis = true; + row.Controls.Add(_versionLabel, 3, 1); return row; } @@ -2353,6 +2372,7 @@ public sealed class ModuleEditorControl : UserControl private void FillEditor(ModuleDefinition module) { _nameBox.Text = module.Name; + _authorBox.Text = module.Author; SetEditorEnabled(hasModule: true); // 先填充动态单位/数量, 后续目标下拉与条件字段都依赖它们。 _units.Clear(); @@ -2367,6 +2387,7 @@ public sealed class ModuleEditorControl : UserControl SelectPartyType(module.Match.PartyType); SelectHeroTalent(module.Match.HeroTalent); _pathLabel.Text = module.FilePath ?? "尚未保存"; + _versionLabel.Text = string.IsNullOrWhiteSpace(module.Version) ? "版本 未知" : $"版本 {module.Version}"; _adjustmentsGrid.Rows.Clear(); _formulaAdjustmentsGrid.Rows.Clear(); RefreshAdjustmentFieldColumn(); @@ -2414,6 +2435,7 @@ public sealed class ModuleEditorControl : UserControl { _selectedModule = null; _nameBox.Clear(); + _authorBox.Clear(); _units.Clear(); _counts.Clear(); _valueAdjustments.Clear(); @@ -2423,6 +2445,7 @@ public sealed class ModuleEditorControl : UserControl SelectPartyType(null); SelectHeroTalent(null); _pathLabel.Text = "无模块"; + _versionLabel.Text = string.Empty; _adjustmentsGrid.Rows.Clear(); _formulaAdjustmentsGrid.Rows.Clear(); RefreshAdjustmentFieldColumn(); @@ -2524,6 +2547,9 @@ public sealed class ModuleEditorControl : UserControl { module = _selectedModule!.Clone(); module.Name = string.IsNullOrWhiteSpace(_nameBox.Text) ? "新模块" : _nameBox.Text.Trim(); + module.Author = _authorBox.Text.Trim(); + // 保存时记录当前 Shigure 版本。 + module.Version = AppInfo.Version; module.Match = new ModuleMatch { ClassId = ReadMatchCombo(_classBox), diff --git a/UI/StatusForm.cs b/UI/StatusForm.cs index 48f6e641..abedce9d 100644 --- a/UI/StatusForm.cs +++ b/UI/StatusForm.cs @@ -317,7 +317,7 @@ public sealed class StatusForm : Form panel.Controls.Add(title, 0, 0); var assembly = Assembly.GetExecutingAssembly(); - var version = assembly.GetName().Version?.ToString() ?? "未知"; + var version = AppInfo.Version; var company = assembly.GetCustomAttribute()?.Company; company = string.IsNullOrWhiteSpace(company) ? "Arasaka Corporation" : company; var details = new TableLayoutPanel diff --git a/keymap/shaman.json b/keymap/shaman.json index 83a859cd..9e119f91 100644 --- a/keymap/shaman.json +++ b/keymap/shaman.json @@ -1096,7 +1096,7 @@ }, "220": { "unit": 0, - "技能": "", + "技能": "风剪(焦点)", "热键": "CTRL-SHIFT-F11" }, "221": { @@ -1364,4 +1364,4 @@ "技能": "", "热键": "ALT-CTRL-SHIFT-=" } -} +} \ No newline at end of file diff --git a/module/奶萨-团队-图腾-By-abcdefg.json b/module/奶萨-团队-图腾.json similarity index 98% rename from module/奶萨-团队-图腾-By-abcdefg.json rename to module/奶萨-团队-图腾.json index e6f5bc05..0b353ce1 100644 --- a/module/奶萨-团队-图腾-By-abcdefg.json +++ b/module/奶萨-团队-图腾.json @@ -1,6 +1,8 @@ { "Id": "新模块1-20260618110034803", - "Name": "奶萨-团队-图腾 By abcdefg", + "Name": "奶萨-团队-图腾", + "Author": "abcdefg", + "Version": "1.1.0", "Enabled": true, "Match": { "ClassId": 7, diff --git a/module/奶萨-队伍-图腾-By-abcdefg.json b/module/奶萨-队伍-图腾.json similarity index 98% rename from module/奶萨-队伍-图腾-By-abcdefg.json rename to module/奶萨-队伍-图腾.json index 4e95d3d4..8cb0f4ec 100644 --- a/module/奶萨-队伍-图腾-By-abcdefg.json +++ b/module/奶萨-队伍-图腾.json @@ -1,6 +1,8 @@ { "Id": "新模块1-20260618002420140", - "Name": "奶萨-队伍-图腾 By abcdefg", + "Name": "奶萨-队伍-图腾", + "Author": "abcdefg", + "Version": "1.1.0", "Enabled": true, "Match": { "ClassId": 7, diff --git a/module/奶骑大秘境-by-Laoer.json b/module/奶骑大秘境.json similarity index 96% rename from module/奶骑大秘境-by-Laoer.json rename to module/奶骑大秘境.json index e824d729..9938684e 100644 --- a/module/奶骑大秘境-by-Laoer.json +++ b/module/奶骑大秘境.json @@ -1,286 +1,288 @@ -{ - "Id": "奶骑大秘境-20260614103400001", - "Name": "奶骑大秘境 by Laoer", - "Enabled": true, - "Match": { - "ClassId": 2, - "SpecId": 1 - }, - "Units": [ - { - "Name": "最低单位", - "HealthName": "最低血量", - "Kind": "LowestHealth", - "HealthThreshold": 100, - "Reverse": false - }, - { - "Name": "无火最低", - "HealthName": "无火血量", - "Kind": "LowestHealthWithoutAura", - "HealthThreshold": 101, - "Reverse": false, - "AuraNames": [ - "永恒之火" - ] - }, - { - "Name": "驱散-魔法", - "Kind": "UnitWithDispelType", - "Reverse": false, - "DispelType": 1 - }, - { - "Name": "驱散-疾病", - "Kind": "UnitWithDispelType", - "Reverse": false, - "DispelType": 3 - }, - { - "Name": "驱散-中毒", - "Kind": "UnitWithDispelType", - "Reverse": false, - "DispelType": 4 - } - ], - "Counts": [ - { - "Name": "HP90", - "Kind": "UnitsBelowHealth", - "HealthThreshold": 90 - }, - { - "Name": "HP80", - "Kind": "UnitsBelowHealth", - "HealthThreshold": 80 - }, - { - "Name": "HP75", - "Kind": "UnitsBelowHealth", - "HealthThreshold": 75 - }, - { - "Name": "HP60", - "Kind": "UnitsBelowHealth", - "HealthThreshold": 60 - } - ], - "ValueAdjustments": [], - "Rules": [ - { - "Enabled": true, - "Condition": "引导 > 0 || spells.延迟 > 0", - "Spell": "暂停", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "", - "Unit": 0, - "Spell": "插入法术", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "spells.清洁术 == 0 && 驱散-魔法 && 首领战 != 64", - "UnitName": "驱散-魔法", - "Spell": "清毒术", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "spells.清洁术 == 0 && 驱散-疾病", - "UnitName": "驱散-疾病", - "Spell": "清毒术", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "spells.清洁术 == 0 && 驱散-中毒", - "UnitName": "驱散-中毒", - "Spell": "清毒术", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "spells.清洁术 == 0 && 目标类型 in (12, 13, 15)", - "Unit": 0, - "Spell": "清毒术", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "spells.大红冷却 == 0 && 生命值 < 30", - "Unit": 0, - "Spell": "银月城生命药水", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "spells.圣疗术 == 0 && spells.大红冷却 > 1 && 生命值 < 25", - "Unit": 1, - "Spell": "圣疗术", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "spells.圣疗术 == 0 && spells.大红冷却 == 0 && 最低血量 < 20", - "UnitName": "最低单位", - "Spell": "圣疗术", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "spells.美德道标 == 0 && HP75 >= 3 && 爆发开关 == 1", - "Unit": 0, - "Spell": "美德道标", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "施法 == 0 && auras.神性层数 > 0 && 最低血量 < 50", - "UnitName": "最低单位", - "Spell": "圣光术", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "auras.美德道标 > 0 && spells.圣洁鸣钟 == 0 && 神圣能量 <= 2 && HP80 >= 3", - "Unit": 1, - "Spell": "圣洁鸣钟", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "auras.美德道标 == 0 && spells.圣洁鸣钟 == 0 && 神圣能量 <= 2 && HP75 >= 3", - "Unit": 1, - "Spell": "圣洁鸣钟", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "spells.圣洁鸣钟 == 0 && 神圣能量 < 2 && HP60 >= 2", - "Unit": 1, - "Spell": "圣洁鸣钟", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "神圣能量 >= 3 && 无火血量 <= 80 || auras.神圣意志 > 0 && 无火血量 <= 80", - "UnitName": "无火最低", - "Spell": "荣耀圣令", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "神圣能量 >= 3 && 最低血量 <= 75 || auras.神圣意志 > 0 && 最低血量 <= 75", - "UnitName": "最低单位", - "Spell": "荣耀圣令", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "神圣能量 >= 3 && HP90 >= 3 || auras.神圣意志 > 0 && HP90 >= 3", - "Unit": 0, - "Spell": "黎明之光", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "神圣能量 == 5 && 战斗时间 > 0 && 目标类型 in (1, 2, 3) && 目标距离 <= 5 && auras.圣光灌注 > 0 || 神圣能量 == 5 && 战斗时间 > 0 && 目标类型 in (1, 2, 3) && 目标距离 <= 5 && auras.圣光灌注 > 0 || 神圣能量 == 5 && 战斗时间 > 0 && 目标类型 in (1, 2, 3) && 目标距离 <= 5 && spells.神圣震击 == 0", - "Unit": 0, - "Spell": "正义盾击", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "神圣能量 <= 4 && auras.神圣意志 == 0 && 施法 == 0 && 移动 == false && 最低血量 < 50 && 能量值 >= 60 && 神圣能量 <= 1 || 神圣能量 <= 4 && auras.神圣意志 == 0 && 施法 == false && 移动 == false && 最低血量 < 50 && 能量值 >= 60 && 神圣能量 == 2 && spells.审判 >= 1", - "UnitName": "最低单位", - "Spell": "圣光术", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "神圣能量 <= 4 && auras.神圣意志 == 0 && 施法 == false && auras.圣光灌注 > 0 && 最低血量 <= 90", - "UnitName": "最低单位", - "Spell": "圣光闪现", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "神圣能量 <= 4 && auras.神圣意志 == 0 && spells.神圣震击 == 0 && 施法 == false && auras.圣光灌注 == 0 && 最低血量 < 90", - "UnitName": "最低单位", - "Spell": "神圣震击", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "神圣能量 <= 4 && auras.神圣意志 == 0 && 施法 == false && 移动 == false && 最低血量 < 50 && 能量值 >= 60", - "UnitName": "最低单位", - "Spell": "圣光术", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "神圣能量 <= 4 && auras.神圣意志 == 0 && 战斗时间 > 0 && 目标类型 in (1, 2, 3) && 神圣能量 == 2 && spells.审判 == 0", - "Unit": 0, - "Spell": "审判", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "神圣能量 <= 4 && auras.神圣意志 == 0 && 施法 == false && 移动 == false && 最低血量 <= 90 && auras.圣光灌注 == 0", - "UnitName": "最低单位", - "Spell": "圣光闪现", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "战斗时间 > 0 && 目标类型 in (1, 2, 3) && 神圣能量 <= 4 && spells.审判 == 0", - "Unit": 0, - "Spell": "审判", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "战斗时间 > 0 && 目标类型 in (1, 2, 3) && 神圣能量 <= 4 && 施法 == 0 && spells.神圣震击 == 0 && 神圣能量 >= 2", - "Unit": 0, - "Spell": "神圣震击", - "Hotkey": "", - "Step": "" - }, - { - "Enabled": true, - "Condition": "战斗时间 > 0 && 目标类型 in (1, 2, 3) && 神圣能量 <= 4 && 施法 == 0 && spells.神圣震击 == 0 && spells.震击充能 == 0", - "Unit": 0, - "Spell": "神圣震击", - "Hotkey": "", - "Step": "" - } - ] +{ + "Id": "奶骑大秘境-20260614103400001", + "Name": "奶骑大秘境", + "Author": "Laoer", + "Version": "1.1.0", + "Enabled": true, + "Match": { + "ClassId": 2, + "SpecId": 1 + }, + "Units": [ + { + "Name": "最低单位", + "HealthName": "最低血量", + "Kind": "LowestHealth", + "HealthThreshold": 100, + "Reverse": false + }, + { + "Name": "无火最低", + "HealthName": "无火血量", + "Kind": "LowestHealthWithoutAura", + "HealthThreshold": 101, + "Reverse": false, + "AuraNames": [ + "永恒之火" + ] + }, + { + "Name": "驱散-魔法", + "Kind": "UnitWithDispelType", + "Reverse": false, + "DispelType": 1 + }, + { + "Name": "驱散-疾病", + "Kind": "UnitWithDispelType", + "Reverse": false, + "DispelType": 3 + }, + { + "Name": "驱散-中毒", + "Kind": "UnitWithDispelType", + "Reverse": false, + "DispelType": 4 + } + ], + "Counts": [ + { + "Name": "HP90", + "Kind": "UnitsBelowHealth", + "HealthThreshold": 90 + }, + { + "Name": "HP80", + "Kind": "UnitsBelowHealth", + "HealthThreshold": 80 + }, + { + "Name": "HP75", + "Kind": "UnitsBelowHealth", + "HealthThreshold": 75 + }, + { + "Name": "HP60", + "Kind": "UnitsBelowHealth", + "HealthThreshold": 60 + } + ], + "ValueAdjustments": [], + "Rules": [ + { + "Enabled": true, + "Condition": "引导 > 0 || spells.延迟 > 0", + "Spell": "暂停", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "", + "Unit": 0, + "Spell": "插入法术", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "spells.清洁术 == 0 && 驱散-魔法 && 首领战 != 64", + "UnitName": "驱散-魔法", + "Spell": "清毒术", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "spells.清洁术 == 0 && 驱散-疾病", + "UnitName": "驱散-疾病", + "Spell": "清毒术", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "spells.清洁术 == 0 && 驱散-中毒", + "UnitName": "驱散-中毒", + "Spell": "清毒术", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "spells.清洁术 == 0 && 目标类型 in (12, 13, 15)", + "Unit": 0, + "Spell": "清毒术", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "spells.大红冷却 == 0 && 生命值 < 30", + "Unit": 0, + "Spell": "银月城生命药水", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "spells.圣疗术 == 0 && spells.大红冷却 > 1 && 生命值 < 25", + "Unit": 1, + "Spell": "圣疗术", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "spells.圣疗术 == 0 && spells.大红冷却 == 0 && 最低血量 < 20", + "UnitName": "最低单位", + "Spell": "圣疗术", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "spells.美德道标 == 0 && HP75 >= 3 && 爆发开关 == 1", + "Unit": 0, + "Spell": "美德道标", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "施法 == 0 && auras.神性层数 > 0 && 最低血量 < 50", + "UnitName": "最低单位", + "Spell": "圣光术", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "auras.美德道标 > 0 && spells.圣洁鸣钟 == 0 && 神圣能量 <= 2 && HP80 >= 3", + "Unit": 1, + "Spell": "圣洁鸣钟", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "auras.美德道标 == 0 && spells.圣洁鸣钟 == 0 && 神圣能量 <= 2 && HP75 >= 3", + "Unit": 1, + "Spell": "圣洁鸣钟", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "spells.圣洁鸣钟 == 0 && 神圣能量 < 2 && HP60 >= 2", + "Unit": 1, + "Spell": "圣洁鸣钟", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "神圣能量 >= 3 && 无火血量 <= 80 || auras.神圣意志 > 0 && 无火血量 <= 80", + "UnitName": "无火最低", + "Spell": "荣耀圣令", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "神圣能量 >= 3 && 最低血量 <= 75 || auras.神圣意志 > 0 && 最低血量 <= 75", + "UnitName": "最低单位", + "Spell": "荣耀圣令", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "神圣能量 >= 3 && HP90 >= 3 || auras.神圣意志 > 0 && HP90 >= 3", + "Unit": 0, + "Spell": "黎明之光", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "神圣能量 == 5 && 战斗时间 > 0 && 目标类型 in (1, 2, 3) && 目标距离 <= 5 && auras.圣光灌注 > 0 || 神圣能量 == 5 && 战斗时间 > 0 && 目标类型 in (1, 2, 3) && 目标距离 <= 5 && auras.圣光灌注 > 0 || 神圣能量 == 5 && 战斗时间 > 0 && 目标类型 in (1, 2, 3) && 目标距离 <= 5 && spells.神圣震击 == 0", + "Unit": 0, + "Spell": "正义盾击", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "神圣能量 <= 4 && auras.神圣意志 == 0 && 施法 == 0 && 移动 == false && 最低血量 < 50 && 能量值 >= 60 && 神圣能量 <= 1 || 神圣能量 <= 4 && auras.神圣意志 == 0 && 施法 == false && 移动 == false && 最低血量 < 50 && 能量值 >= 60 && 神圣能量 == 2 && spells.审判 >= 1", + "UnitName": "最低单位", + "Spell": "圣光术", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "神圣能量 <= 4 && auras.神圣意志 == 0 && 施法 == false && auras.圣光灌注 > 0 && 最低血量 <= 90", + "UnitName": "最低单位", + "Spell": "圣光闪现", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "神圣能量 <= 4 && auras.神圣意志 == 0 && spells.神圣震击 == 0 && 施法 == false && auras.圣光灌注 == 0 && 最低血量 < 90", + "UnitName": "最低单位", + "Spell": "神圣震击", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "神圣能量 <= 4 && auras.神圣意志 == 0 && 施法 == false && 移动 == false && 最低血量 < 50 && 能量值 >= 60", + "UnitName": "最低单位", + "Spell": "圣光术", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "神圣能量 <= 4 && auras.神圣意志 == 0 && 战斗时间 > 0 && 目标类型 in (1, 2, 3) && 神圣能量 == 2 && spells.审判 == 0", + "Unit": 0, + "Spell": "审判", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "神圣能量 <= 4 && auras.神圣意志 == 0 && 施法 == false && 移动 == false && 最低血量 <= 90 && auras.圣光灌注 == 0", + "UnitName": "最低单位", + "Spell": "圣光闪现", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "战斗时间 > 0 && 目标类型 in (1, 2, 3) && 神圣能量 <= 4 && spells.审判 == 0", + "Unit": 0, + "Spell": "审判", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "战斗时间 > 0 && 目标类型 in (1, 2, 3) && 神圣能量 <= 4 && 施法 == 0 && spells.神圣震击 == 0 && 神圣能量 >= 2", + "Unit": 0, + "Spell": "神圣震击", + "Hotkey": "", + "Step": "" + }, + { + "Enabled": true, + "Condition": "战斗时间 > 0 && 目标类型 in (1, 2, 3) && 神圣能量 <= 4 && 施法 == 0 && spells.神圣震击 == 0 && spells.震击充能 == 0", + "Unit": 0, + "Spell": "神圣震击", + "Hotkey": "", + "Step": "" + } + ] } \ No newline at end of file diff --git a/module/官方一键-DH-复仇.json b/module/官方一键-DH-复仇.json index f4fd2293..9d429efe 100644 --- a/module/官方一键-DH-复仇.json +++ b/module/官方一键-DH-复仇.json @@ -1,6 +1,8 @@ { "Id": "新模块1-20260614234025366", "Name": "官方一键 DH 复仇", + "Author": "", + "Version": "1.1.0", "Enabled": true, "Match": { "ClassId": 12, diff --git a/module/官方一键-冰DK.json b/module/官方一键-冰DK.json index eb74094c..14b91c09 100644 --- a/module/官方一键-冰DK.json +++ b/module/官方一键-冰DK.json @@ -1,6 +1,8 @@ { "Id": "新模块1-20260617224608824", "Name": "官方一键 冰DK", + "Author": "", + "Version": "1.1.0", "Enabled": true, "Match": { "ClassId": 6, diff --git a/module/官方一键.json b/module/官方一键.json index 80d70b9d..98b56f52 100644 --- a/module/官方一键.json +++ b/module/官方一键.json @@ -1,6 +1,8 @@ { "Id": "新模块1-20260614114605703", "Name": "官方一键", + "Author": "", + "Version": "1.1.0", "Enabled": true, "Match": {}, "Units": [], diff --git a/module/惩戒骑-By-zyx1.json b/module/惩戒骑.json similarity index 98% rename from module/惩戒骑-By-zyx1.json rename to module/惩戒骑.json index 13a54079..d320a80a 100644 --- a/module/惩戒骑-By-zyx1.json +++ b/module/惩戒骑.json @@ -1,6 +1,8 @@ { "Id": "新模块2-20260616213400001", - "Name": "惩戒骑 By zyx1", + "Name": "惩戒骑", + "Author": "zyx1", + "Version": "1.1.0", "Enabled": true, "Match": { "ClassId": 2, diff --git a/module/戒律队伍神谕者-by-Wayne.json b/module/戒律队伍神谕者.json similarity index 99% rename from module/戒律队伍神谕者-by-Wayne.json rename to module/戒律队伍神谕者.json index 74f26c17..7beaa6e9 100644 --- a/module/戒律队伍神谕者-by-Wayne.json +++ b/module/戒律队伍神谕者.json @@ -1,6 +1,8 @@ { "Id": "新模块1-20260612100954681", - "Name": "戒律队伍神谕者 by Wayne", + "Name": "戒律队伍神谕者", + "Author": "Wayne", + "Version": "1.1.0", "Enabled": true, "Match": { "ClassId": 5, diff --git a/module/牧师测试模块.json b/module/牧师测试模块.json index fb088819..f9824b39 100644 --- a/module/牧师测试模块.json +++ b/module/牧师测试模块.json @@ -1,6 +1,8 @@ { "Id": "新模块1-20260617152514709", "Name": "牧师测试模块", + "Author": "", + "Version": "1.1.0", "Enabled": true, "Match": { "ClassId": 5, diff --git a/module/邪DK-By-Wayne.json b/module/邪DK.json similarity index 99% rename from module/邪DK-By-Wayne.json rename to module/邪DK.json index 2f265ae0..1f78f98b 100644 --- a/module/邪DK-By-Wayne.json +++ b/module/邪DK.json @@ -1,6 +1,8 @@ { "Id": "新模块1-20260615104504550", - "Name": "邪DK By Wayne", + "Name": "邪DK", + "Author": "Wayne", + "Version": "1.1.0", "Enabled": true, "Match": { "ClassId": 6,