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,