This commit is contained in:
南沢响也
2025-12-01 15:16:20 +08:00
parent 6092e220e2
commit 5b0280d65b
2 changed files with 22 additions and 38 deletions

View File

@@ -26,13 +26,13 @@ namespace Pilgrims_Traverse;
[ScriptType(guid: "3f65b3c0-df48-4ef8-89ae-b8091b7690f1", name: "朝圣交错路", author: "Tetora", [ScriptType(guid: "3f65b3c0-df48-4ef8-89ae-b8091b7690f1", name: "朝圣交错路", author: "Tetora",
territorys: [1281, 1282, 1283, 1284, 1285, 1286, 1287, 1288, 1289, 1290, 1311, 1333], territorys: [1281, 1282, 1283, 1284, 1285, 1286, 1287, 1288, 1289, 1290, 1311, 1333],
version: "0.0.1.9",note: noteStr)] version: "0.0.1.91",note: noteStr)]
public class Pilgrims_Traverse public class Pilgrims_Traverse
{ {
const string noteStr = const string noteStr =
""" """
v0.0.1.9: v0.0.1.91:
(Pilgrim's Traverse) (Pilgrim's Traverse)
dcARR录像文件反馈 dcARR录像文件反馈
线 线
@@ -3646,8 +3646,9 @@ public class Pilgrims_Traverse
} }
else else
{ {
if (isTTS)accessory.Method.TTS("挡枪分摊"); string tname = @event["TargetName"]?.ToString() ?? "未知目标";
if (isEdgeTTS)accessory.Method.EdgeTTS("挡枪分摊"); if (isTTS) accessory.Method.TTS($"挡枪分摊点{tname}");
if (isEdgeTTS) accessory.Method.EdgeTTS($"挡枪分摊点{tname}");
} }
var dp = accessory.Data.GetDefaultDrawProperties(); var dp = accessory.Data.GetDefaultDrawProperties();
@@ -3875,47 +3876,29 @@ public class Pilgrims_Traverse
[ScriptMethod(name: "罪积蓄(毒)点名播报 / Sin Bearer Calling out names", eventType: EventTypeEnum.StatusAdd, eventCondition: ["StatusID:4567", "Param:1"])] [ScriptMethod(name: "罪积蓄(毒)点名播报 / Sin Bearer Calling out names", eventType: EventTypeEnum.StatusAdd, eventCondition: ["StatusID:4567", "Param:1"])]
public void (Event @event, ScriptAccessory accessory) public void (Event @event, ScriptAccessory accessory)
{ {
try
{
string tname = @event["TargetName"]?.ToString() ?? "未知目标"; string tname = @event["TargetName"]?.ToString() ?? "未知目标";
if (isTTS && accessory?.Method != null) accessory.Method.TTS($"毒点{tname}"); if (isTTS) accessory.Method.TTS($"毒点{tname}");
if (isEdgeTTS && accessory?.Method != null) accessory.Method.EdgeTTS($"毒点{tname}"); if (isEdgeTTS) accessory.Method.EdgeTTS($"毒点{tname}");
}
catch (Exception ex)
{
}
}
private async Task SafeExecuteAsync(Func<Task> func, string methodName)
{
try
{
await func();
}
catch (Exception ex)
{
}
} }
[ScriptMethod(name: "罪积蓄(毒)绘制 / Sin Bearer Draw", eventType: EventTypeEnum.StatusAdd, eventCondition: ["StatusID:4567"])] [ScriptMethod(name: "罪积蓄(毒)绘制 / Sin Bearer Draw", eventType: EventTypeEnum.StatusAdd, eventCondition: ["StatusID:4567"])]
public async void (Event @event, ScriptAccessory accessory) public async void (Event @event, ScriptAccessory accessory)
{ {
await SafeExecuteAsync(async () =>
{
uint layerCount = @event.StatusParam; uint layerCount = @event.StatusParam;
var dp = accessory.Data.GetDefaultDrawProperties(); var dp = accessory.Data.GetDefaultDrawProperties();
var dp1 = accessory.Data.GetDefaultDrawProperties();
dp1.Name = dp.Name = $"罪积蓄{layerCount}";
dp1.Owner = dp.Owner = @event.TargetId();
if (layerCount == 1) if (layerCount == 1)
{ {
accessory.Method.RemoveDraw($"罪积蓄.*"); accessory.Method.RemoveDraw($"罪积蓄.*"); // 清除上一个人的爆炸范围,改为显示点名小圈
await Task.Delay(50); await Task.Delay(50);
dp.Color = new Vector4(1f, 1f, 1f, 2f); dp.Color = new Vector4(1f, 1f, 1f, 2f); // 毒点名填充颜色
var dp1 = accessory.Data.GetDefaultDrawProperties(); // 毒点名描边绘制
dp1.Name = dp.Name = $"罪积蓄{layerCount}";
dp1.Color = new Vector4(1f, 1f, 1f, 10f); dp1.Color = new Vector4(1f, 1f, 1f, 10f);
dp1.Scale = dp.Scale = new Vector2(0.7f); // 描边外径 dp1.Scale = dp.Scale = new Vector2(0.7f);
dp1.Owner = dp.Owner = @event.TargetId();
dp1.InnerScale = new Vector2(0.65f); dp1.InnerScale = new Vector2(0.65f);
dp1.Radian = float.Pi * 2; dp1.Radian = float.Pi * 2;
dp1.DestoryAt = dp.DestoryAt = 30000; dp1.DestoryAt = dp.DestoryAt = 30000;
@@ -3924,14 +3907,16 @@ public class Pilgrims_Traverse
} }
else if (layerCount == 12) else if (layerCount == 12)
{ {
accessory.Method.RemoveDraw($"罪积蓄.*"); accessory.Method.RemoveDraw($"罪积蓄.*"); // 清除点名绘制的小圈,改为显示爆炸范围
await Task.Delay(50); await Task.Delay(50);
dp.Color = new Vector4(1f, 1f, 1f, 0.8f); dp.Name = $"罪积蓄{layerCount}";
dp.Color = new Vector4(1f, 1f, 1f, 1f);
dp.Owner = @event.TargetId();
dp.Scale = new Vector2(4f); dp.Scale = new Vector2(4f);
dp.DestoryAt = 12000; dp.DestoryAt = 12000;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp); accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
} }
else if (layerCount >= 12 && layerCount <= 15) else if (layerCount >= 12 && layerCount <= 15) // 快爆炸时TTS播报毒层数
{ {
if (isTTS) accessory.Method.TTS($"{layerCount}"); if (isTTS) accessory.Method.TTS($"{layerCount}");
if (isEdgeTTS) accessory.Method.EdgeTTS($"{layerCount}"); if (isEdgeTTS) accessory.Method.EdgeTTS($"{layerCount}");
@@ -3940,7 +3925,6 @@ public class Pilgrims_Traverse
{ {
return; return;
} }
}, "罪积蓄绘制");
} }
[ScriptMethod(name: "罪积蓄销毁", eventType: EventTypeEnum.StatusRemove, eventCondition: ["StatusID:4567"],userControl: false)] [ScriptMethod(name: "罪积蓄销毁", eventType: EventTypeEnum.StatusRemove, eventCondition: ["StatusID:4567"],userControl: false)]

View File

@@ -712,12 +712,12 @@
{ {
"Name": "朝圣交错路", "Name": "朝圣交错路",
"Guid": "3f65b3c0-df48-4ef8-89ae-b8091b7690f1", "Guid": "3f65b3c0-df48-4ef8-89ae-b8091b7690f1",
"Version": "0.0.1.9", "Version": "0.0.1.91",
"Author": "Tetora", "Author": "Tetora",
"Repo": "https://github.com/Hibiya615/TetoraKAScript", "Repo": "https://github.com/Hibiya615/TetoraKAScript",
"DownloadUrl": "https://raw.githubusercontent.com/Hibiya615/TetoraKAScript/refs/heads/main/Deep_Dungeon/Pilgrims_Traverse.cs", "DownloadUrl": "https://raw.githubusercontent.com/Hibiya615/TetoraKAScript/refs/heads/main/Deep_Dungeon/Pilgrims_Traverse.cs",
"Note": "v0.0.1.9:\r\n朝圣交错路绘制\r\n更新日志见dc\r\n注方法设置中的层数仅做分割线效果并不是批量开关\r\n出现问题请携带ARR反馈", "Note": "v0.0.1.91:\r\n朝圣交错路绘制\r\n更新日志见dc\r\n注方法设置中的层数仅做分割线效果并不是批量开关\r\n出现问题请携带ARR反馈",
"UpdateInfo": "v0.0.1.9: 增加安全检查", "UpdateInfo": "v0.0.1.91: 回退至相对稳定版本",
"TerritoryIds": [ "TerritoryIds": [
1281, 1281,
1282, 1282,