添加销毁逻辑

This commit is contained in:
南沢响也
2025-03-04 01:07:23 +08:00
parent ff3e5c3662
commit 9fe493ff37
6 changed files with 84 additions and 104 deletions

View File

@@ -14,7 +14,6 @@ using ECommons;
using ECommons.DalamudServices;
using ECommons.GameFunctions;
using ECommons.MathHelpers;
using Lumina.Excel.Sheets;
namespace TheHead_theTail_theWholeDamnedThing;
@@ -33,15 +32,6 @@ public class Archaeotania
// Todo.
// 龙卷前进方向线
public static string GetBNpcName(uint key)
{
var sheet = Svc.Data.GetExcelSheet<BNpcName>();
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)
{
@@ -60,13 +50,10 @@ public class Archaeotania
accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Displacement, dp);
}
[ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, userControl: false)]
[ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:regex:^758[67]$"],userControl: false)]
public void 迷失连线销毁(Event @event, ScriptAccessory accessory)
{
if (@event.TargetName() == GetBNpcName(6737) || @event.TargetName() == GetBNpcName(6738))
{
accessory.Method.RemoveDraw("迷失连线");
}
accessory.Method.RemoveDraw("线");
}
[ScriptMethod(name: "文明毁灭(直线)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:regex:^(16441|17089)$"])]
@@ -106,7 +93,7 @@ public class Archaeotania
dp.Color = new Vector4(1f, 0f, 0f, 1.2f);
dp.Owner = @event.SourceId();
dp.Scale = new Vector2(5f);
dp.DestoryAt = long.MaxValue;
dp.DestoryAt = 60000;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
@@ -116,6 +103,12 @@ public class Archaeotania
accessory.Method.RemoveDraw("龙卷");
}
[ScriptMethod(name: "海呱死亡销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:10157"],userControl: false)]
public void (Event @event, ScriptAccessory accessory)
{
accessory.Method.RemoveDraw(".*");
}
}

View File

@@ -14,7 +14,6 @@ using ECommons;
using ECommons.DalamudServices;
using ECommons.GameFunctions;
using ECommons.MathHelpers;
using Lumina.Excel.Sheets;
namespace Omicron_Recall_Killing_Order;
@@ -30,15 +29,6 @@ public class Chi
""";
public static string GetBNpcName(uint key)
{
var sheet = Svc.Data.GetExcelSheet<BNpcName>();
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)
{
@@ -57,13 +47,10 @@ public class Chi
accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Displacement, dp);
}
[ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, userControl: false)]
[ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:regex:^758[67]$"],userControl: false)]
public void 迷失连线销毁(Event @event, ScriptAccessory accessory)
{
if (@event.TargetName() == GetBNpcName(6737) || @event.TargetName() == GetBNpcName(6738))
{
accessory.Method.RemoveDraw("迷失连线");
}
accessory.Method.RemoveDraw("线");
}
[ScriptMethod(name: "终端攻击(月环)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:regex:^(25172|2595[356])$"])]
@@ -206,6 +193,12 @@ public class Chi
dp.DestoryAt = 1000;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Straight, dp);
}
[ScriptMethod(name: "电视死亡销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:13515"],userControl: false)]
public void (Event @event, ScriptAccessory accessory)
{
accessory.Method.RemoveDraw(".*");
}
}

View File

@@ -14,7 +14,6 @@ using ECommons;
using ECommons.DalamudServices;
using ECommons.GameFunctions;
using ECommons.MathHelpers;
using Lumina.Excel.Sheets;
namespace DevoutPilgrimsVSDaivadipa;
@@ -30,15 +29,6 @@ public class Daivadipa
""";
public static string GetBNpcName(uint key)
{
var sheet = Svc.Data.GetExcelSheet<BNpcName>();
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)
{
@@ -57,13 +47,10 @@ public class Daivadipa
accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Displacement, dp);
}
[ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, userControl: false)]
[ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:regex:^758[67]$"],userControl: false)]
public void 迷失连线销毁(Event @event, ScriptAccessory accessory)
{
if (@event.TargetName() == GetBNpcName(6737) || @event.TargetName() == GetBNpcName(6738))
{
accessory.Method.RemoveDraw("迷失连线");
}
accessory.Method.RemoveDraw("线");
}
[ScriptMethod(name: "操焰仪 弹窗提示", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:regex:^2649[89]$"])]
@@ -128,10 +115,15 @@ public class Daivadipa
// 技能ID 26500 红色 26501 蓝色
var dp = accessory.Data.GetDefaultDrawProperties();
var dp1 = accessory.Data.GetDefaultDrawProperties();
dp.Color = accessory.Data.DefaultDangerColor;
dp.Scale = new(10f, 50f);
dp.DestoryAt = 2700;
dp.DestoryAt = 7700;
dp1.Color = accessory.Data.DefaultDangerColor;
dp1.Scale = new(10f, 50f);
dp1.DestoryAt = 2000;
switch (@event.ActionId())
{
@@ -145,10 +137,10 @@ public class Daivadipa
foreach (var item in IbcHelper.GetByDataId(13680))
{
dp.Name = "圣火猛击蓝";
dp.Owner = item.EntityId;
dp.Delay = 3000;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Rect, dp);
dp1.Name = "圣火猛击蓝";
dp1.Owner = item.EntityId;
dp1.Delay = 7700;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Rect, dp1);
}
break;
@@ -159,6 +151,14 @@ public class Daivadipa
dp.Owner = item.EntityId;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Rect, dp);
}
foreach (var item in IbcHelper.GetByDataId(13679))
{
dp1.Name = "圣火猛击红";
dp1.Owner = item.EntityId;
dp1.Delay = 7700;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Rect, dp1);
}
break;
}
}
@@ -170,10 +170,15 @@ public class Daivadipa
// 操焰仪26498 红色先炸 26499 蓝色先炸
// 技能ID 26506 红色 26507 蓝色
var dp = accessory.Data.GetDefaultDrawProperties();
var dp1 = accessory.Data.GetDefaultDrawProperties();
dp.Color = accessory.Data.DefaultDangerColor;
dp.Scale = new Vector2(10f);
dp.DestoryAt = 2700;
dp.DestoryAt = 7200;
dp1.Color = accessory.Data.DefaultDangerColor;
dp1.Scale = new Vector2(10f);
dp1.DestoryAt = 4000;
switch (@event.ActionId())
{
@@ -184,6 +189,14 @@ public class Daivadipa
dp.Owner = item.EntityId;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
foreach (var item in IbcHelper.GetByDataId(13682))
{
dp1.Name = "燃烧蓝";
dp1.Owner = item.EntityId;
dp1.Delay = 7200;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp1);
}
break;
case 26499:
@@ -193,10 +206,24 @@ public class Daivadipa
dp.Owner = item.EntityId;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp);
}
foreach (var item in IbcHelper.GetByDataId(13681))
{
dp1.Name = "燃烧红";
dp1.Owner = item.EntityId;
dp1.Delay = 7200;
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Circle, dp1);
}
break;
}
}
[ScriptMethod(name: "大象死亡销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:13677"],userControl: false)]
public void (Event @event, ScriptAccessory accessory)
{
accessory.Method.RemoveDraw(".*");
}
}

View File

@@ -16,8 +16,6 @@ using ECommons.GameFunctions;
using ECommons.MathHelpers;
using System.Threading.Tasks;
using FFXIVClientStructs.FFXIV.Client.Game.Character;
using Lumina.Excel.Sheets;
namespace A_Finale_Most_Formidable;
@@ -33,15 +31,6 @@ public class Formidable
""";
public static string GetBNpcName(uint key)
{
var sheet = Svc.Data.GetExcelSheet<BNpcName>();
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)
{
@@ -60,13 +49,10 @@ public class Formidable
accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Displacement, dp);
}
[ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, userControl: false)]
[ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:regex:^758[67]$"],userControl: false)]
public void 迷失连线销毁(Event @event, ScriptAccessory accessory)
{
if (@event.TargetName() == GetBNpcName(6737) || @event.TargetName() == GetBNpcName(6738))
{
accessory.Method.RemoveDraw("迷失连线");
}
accessory.Method.RemoveDraw("线");
}
[ScriptMethod(name: "护卫自走人偶 击杀提示", eventType: EventTypeEnum.AddCombatant, eventCondition: ["DataId:10868"])]
@@ -240,6 +226,11 @@ public class Formidable
accessory.Method.TTS("停止行动");
}
[ScriptMethod(name: "地瓜死亡销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:10573"],userControl: false)]
public void (Event @event, ScriptAccessory accessory)
{
accessory.Method.RemoveDraw(".*");
}
}

View File

@@ -14,7 +14,6 @@ using ECommons;
using ECommons.DalamudServices;
using ECommons.GameFunctions;
using ECommons.MathHelpers;
using Lumina.Excel.Sheets;
namespace Mascot_Murder;
@@ -31,15 +30,6 @@ public class Mica_the_Magical_Mu
""";
public static string GetBNpcName(uint key)
{
var sheet = Svc.Data.GetExcelSheet<BNpcName>();
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)
{
@@ -58,13 +48,10 @@ public class Mica_the_Magical_Mu
accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Displacement, dp);
}
[ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, userControl: false)]
[ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:regex:^758[67]$"],userControl: false)]
public void 迷失连线销毁(Event @event, ScriptAccessory accessory)
{
if (@event.TargetName() == GetBNpcName(6737) || @event.TargetName() == GetBNpcName(6738))
{
accessory.Method.RemoveDraw("迷失连线");
}
accessory.Method.RemoveDraw("线");
}
[ScriptMethod(name: "卡牌戏法_抽卡安全区", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:39156"])]
@@ -171,6 +158,12 @@ public class Mica_the_Magical_Mu
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Straight, dp);
}
[ScriptMethod(name: "鼠鼠死亡销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:17387"],userControl: false)]
public void (Event @event, ScriptAccessory accessory)
{
accessory.Method.RemoveDraw(".*");
}
}

View File

@@ -14,7 +14,6 @@ using ECommons;
using ECommons.DalamudServices;
using ECommons.GameFunctions;
using ECommons.MathHelpers;
using Lumina.Excel.Sheets;
namespace The_Serpentlord_Seethes;
@@ -31,15 +30,6 @@ public class Ttokrrone
""";
public static string GetBNpcName(uint key)
{
var sheet = Svc.Data.GetExcelSheet<BNpcName>();
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)
{
@@ -58,13 +48,10 @@ public class Ttokrrone
accessory.Method.SendDraw(DrawModeEnum.Imgui, DrawTypeEnum.Displacement, dp);
}
[ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, userControl: false)]
[ScriptMethod(name: "迷失连线销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:regex:^758[67]$"],userControl: false)]
public void 迷失连线销毁(Event @event, ScriptAccessory accessory)
{
if (@event.TargetName() == GetBNpcName(6737) || @event.TargetName() == GetBNpcName(6738))
{
accessory.Method.RemoveDraw("线");
}
}
[ScriptMethod(name: "单侧沙暴", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:regex:^3731[3-6]$"])]
@@ -351,14 +338,10 @@ public class Ttokrrone
accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Rect, dp);
}
[ScriptMethod(name: "蛇王死亡销毁", eventType: EventTypeEnum.Death, userControl: false)]
[ScriptMethod(name: "蛇王死亡销毁", eventType: EventTypeEnum.Death, eventCondition: ["TargetDataId:16863"],userControl: false)]
public void (Event @event, ScriptAccessory accessory)
{
string NpcName = GetBNpcName(12733);
if (@event.TargetName() == NpcName)
{
accessory.Method.RemoveDraw(".*");
}
accessory.Method.RemoveDraw(".*");
}
}