diff --git a/Fate/Archaeotania.cs b/Fate/Archaeotania.cs index 6bf6efc..468fa4d 100644 --- a/Fate/Archaeotania.cs +++ b/Fate/Archaeotania.cs @@ -14,6 +14,7 @@ using ECommons; using ECommons.DalamudServices; using ECommons.GameFunctions; using ECommons.MathHelpers; +using Lumina.Excel.Sheets; namespace TheHead_theTail_theWholeDamnedThing; @@ -32,6 +33,15 @@ public class Archaeotania // Todo. // 龙卷前进方向线 + public static string GetBNpcName(uint key) + { + var sheet = Svc.Data.GetExcelSheet(); + if (sheet == null) return $"Invalid sheet: ({key})"; + var row = sheet.GetRow(key); + + return row.Singular.ToString() ?? $"Invalid Rowid: ({key})"; + } + [ScriptMethod(name: "迷失连线", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:regex:^758[67]$"])] public void 迷失连线(Event @event, ScriptAccessory accessory) { @@ -50,10 +60,13 @@ public class Archaeotania accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Displacement, dp); } - [ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, eventCondition: ["DataId:regex:^758[67]$"], userControl: false)] + [ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, userControl: false)] public void 迷失连线销毁(Event @event, ScriptAccessory accessory) { - accessory.Method.RemoveDraw("迷失连线"); + if (@event.TargetName() == GetBNpcName(6737) || @event.TargetName() == GetBNpcName(6738)) + { + accessory.Method.RemoveDraw("迷失连线"); + } } [ScriptMethod(name: "文明毁灭(直线)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:regex:^(16441|17089)$"])] diff --git a/Fate/Chi.cs b/Fate/Chi.cs index 5dbbaab..fc47204 100644 --- a/Fate/Chi.cs +++ b/Fate/Chi.cs @@ -14,6 +14,7 @@ using ECommons; using ECommons.DalamudServices; using ECommons.GameFunctions; using ECommons.MathHelpers; +using Lumina.Excel.Sheets; namespace Omicron_Recall_Killing_Order; @@ -29,6 +30,15 @@ public class Chi 侵略兵器召回指令:破坏侵略兵器希 """; + public static string GetBNpcName(uint key) + { + var sheet = Svc.Data.GetExcelSheet(); + if (sheet == null) return $"Invalid sheet: ({key})"; + var row = sheet.GetRow(key); + + return row.Singular.ToString() ?? $"Invalid Rowid: ({key})"; + } + [ScriptMethod(name: "迷失连线", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:regex:^758[67]$"])] public void 迷失连线(Event @event, ScriptAccessory accessory) { @@ -47,10 +57,13 @@ public class Chi accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Displacement, dp); } - [ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, eventCondition: ["DataId:regex:^758[67]$"], userControl: false)] + [ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, userControl: false)] public void 迷失连线销毁(Event @event, ScriptAccessory accessory) { - accessory.Method.RemoveDraw("迷失连线"); + if (@event.TargetName() == GetBNpcName(6737) || @event.TargetName() == GetBNpcName(6738)) + { + accessory.Method.RemoveDraw("迷失连线"); + } } [ScriptMethod(name: "终端攻击(月环)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:regex:^(25172|2595[356])$"])] @@ -73,7 +86,7 @@ public class Chi var dp = accessory.Data.GetDefaultDrawProperties(); dp.Name = "直线"; dp.Owner = @event.SourceId(); - dp.Color = new Vector4(1f, 1f, 0f, 0.8f); + dp.Color = new Vector4(1f, 1f, 0f, 0.6f); dp.Scale = new(32f, 120f); dp.DestoryAt = @event.ActionId() == 25954 ? 4700 : 7700; accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Straight, dp); @@ -161,7 +174,7 @@ public class Chi var dp = accessory.Data.GetDefaultDrawProperties(); dp.Name = "地下贯通爆弹1"; dp.Owner = @event.SourceId(); - dp.Color = new Vector4(1f, 0f, 0f, 1f); + dp.Color = new Vector4(1f, 0f, 0f, 0.8f); dp.Scale = new(20f, 20f); dp.Delay = 7700; dp.DestoryAt = 2000; @@ -174,7 +187,7 @@ public class Chi var dp = accessory.Data.GetDefaultDrawProperties(); dp.Name = "地下贯通爆弹2"; dp.Owner = @event.SourceId(); - dp.Color = new Vector4(1f, 0f, 0f, 1f); + dp.Color = new Vector4(1f, 0f, 0f, 0.8f); dp.Scale = new(20f, 20f); dp.Delay = 9800; dp.DestoryAt = 2000; @@ -187,7 +200,7 @@ public class Chi var dp = accessory.Data.GetDefaultDrawProperties(); dp.Name = "地下贯通爆弹3"; dp.Owner = @event.SourceId(); - dp.Color = new Vector4(1f, 1f, 0f, 0.2f); + dp.Color = new Vector4(1f, 1f, 0f, 0.4f); dp.Scale = new(20f, 20f); dp.Delay = 8800; dp.DestoryAt = 1000; diff --git a/Fate/Daivadipa.cs b/Fate/Daivadipa.cs index 32d9234..5cb375c 100644 --- a/Fate/Daivadipa.cs +++ b/Fate/Daivadipa.cs @@ -14,6 +14,7 @@ using ECommons; using ECommons.DalamudServices; using ECommons.GameFunctions; using ECommons.MathHelpers; +using Lumina.Excel.Sheets; namespace DevoutPilgrimsVSDaivadipa; @@ -29,6 +30,15 @@ public class Daivadipa 兽道诸神信仰:伪神降临 """; + public static string GetBNpcName(uint key) + { + var sheet = Svc.Data.GetExcelSheet(); + if (sheet == null) return $"Invalid sheet: ({key})"; + var row = sheet.GetRow(key); + + return row.Singular.ToString() ?? $"Invalid Rowid: ({key})"; + } + [ScriptMethod(name: "迷失连线", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:regex:^758[67]$"])] public void 迷失连线(Event @event, ScriptAccessory accessory) { @@ -47,10 +57,13 @@ public class Daivadipa accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Displacement, dp); } - [ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, eventCondition: ["DataId:regex:^758[67]$"], userControl: false)] + [ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, userControl: false)] public void 迷失连线销毁(Event @event, ScriptAccessory accessory) { - accessory.Method.RemoveDraw("迷失连线"); + if (@event.TargetName() == GetBNpcName(6737) || @event.TargetName() == GetBNpcName(6738)) + { + accessory.Method.RemoveDraw("迷失连线"); + } } [ScriptMethod(name: "操焰仪 弹窗提示", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:regex:^2649[89]$"])] diff --git a/Fate/Formidable.cs b/Fate/Formidable.cs index 61a8a36..a0a1a33 100644 --- a/Fate/Formidable.cs +++ b/Fate/Formidable.cs @@ -15,6 +15,7 @@ using ECommons.DalamudServices; using ECommons.GameFunctions; using ECommons.MathHelpers; using System.Threading.Tasks; +using Lumina.Excel.Sheets; namespace A_Finale_Most_Formidable; @@ -31,6 +32,15 @@ public class Formidable 激斗畏惧装甲之秘密武器 """; + public static string GetBNpcName(uint key) + { + var sheet = Svc.Data.GetExcelSheet(); + if (sheet == null) return $"Invalid sheet: ({key})"; + var row = sheet.GetRow(key); + + return row.Singular.ToString() ?? $"Invalid Rowid: ({key})"; + } + [ScriptMethod(name: "迷失连线", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:regex:^758[67]$"])] public void 迷失连线(Event @event, ScriptAccessory accessory) { @@ -49,10 +59,13 @@ public class Formidable accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Displacement, dp); } - [ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, eventCondition: ["DataId:regex:^758[67]$"], userControl: false)] + [ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, userControl: false)] public void 迷失连线销毁(Event @event, ScriptAccessory accessory) { - accessory.Method.RemoveDraw("迷失连线"); + if (@event.TargetName() == GetBNpcName(6737) || @event.TargetName() == GetBNpcName(6738)) + { + accessory.Method.RemoveDraw("迷失连线"); + } } [ScriptMethod(name: "护卫自走人偶 击杀提示", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:10868"])] diff --git a/Fate/Mica_the_MagicalMu.cs b/Fate/Mica_the_MagicalMu.cs index 9970472..48cc5af 100644 --- a/Fate/Mica_the_MagicalMu.cs +++ b/Fate/Mica_the_MagicalMu.cs @@ -14,6 +14,7 @@ using ECommons; using ECommons.DalamudServices; using ECommons.GameFunctions; using ECommons.MathHelpers; +using Lumina.Excel.Sheets; namespace Mascot_Murder; @@ -30,6 +31,15 @@ public class Mica_the_Magical_Mu 亩鼠米卡:盛装巡游皆大欢喜 """; + public static string GetBNpcName(uint key) + { + var sheet = Svc.Data.GetExcelSheet(); + if (sheet == null) return $"Invalid sheet: ({key})"; + var row = sheet.GetRow(key); + + return row.Singular.ToString() ?? $"Invalid Rowid: ({key})"; + } + [ScriptMethod(name: "迷失连线", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:regex:^758[67]$"])] public void 迷失连线(Event @event, ScriptAccessory accessory) { @@ -48,10 +58,13 @@ public class Mica_the_Magical_Mu accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Displacement, dp); } - [ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, eventCondition: ["DataId:regex:^758[67]$"], userControl: false)] + [ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, userControl: false)] public void 迷失连线销毁(Event @event, ScriptAccessory accessory) { - accessory.Method.RemoveDraw("迷失连线"); + if (@event.TargetName() == GetBNpcName(6737) || @event.TargetName() == GetBNpcName(6738)) + { + accessory.Method.RemoveDraw("迷失连线"); + } } [ScriptMethod(name: "卡牌戏法_抽卡安全区", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:39156"])] diff --git a/Fate/Ttokrrone.cs b/Fate/Ttokrrone.cs index 21bc82d..45b5dad 100644 --- a/Fate/Ttokrrone.cs +++ b/Fate/Ttokrrone.cs @@ -14,6 +14,7 @@ using ECommons; using ECommons.DalamudServices; using ECommons.GameFunctions; using ECommons.MathHelpers; +using Lumina.Excel.Sheets; namespace The_Serpentlord_Seethes; @@ -30,6 +31,15 @@ public class Ttokrrone 已知问题:回旋沙暴可能会无法销毁、可能存在方向绘制错误 """; + public static string GetBNpcName(uint key) + { + var sheet = Svc.Data.GetExcelSheet(); + if (sheet == null) return $"Invalid sheet: ({key})"; + var row = sheet.GetRow(key); + + return row.Singular.ToString() ?? $"Invalid Rowid: ({key})"; + } + [ScriptMethod(name: "迷失连线", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:regex:^758[67]$"])] public void 迷失连线(Event @event, ScriptAccessory accessory) { @@ -48,10 +58,13 @@ public class Ttokrrone accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Displacement, dp); } - [ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, eventCondition: ["DataId:regex:^758[67]$"], userControl: false)] + [ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, userControl: false)] public void 迷失连线销毁(Event @event, ScriptAccessory accessory) { - accessory.Method.RemoveDraw("迷失连线"); + if (@event.TargetName() == GetBNpcName(6737) || @event.TargetName() == GetBNpcName(6738)) + { + accessory.Method.RemoveDraw("迷失连线"); + } } [ScriptMethod(name: "单侧沙暴", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:regex:^3731[3-6]$"])]