From c56dd0c8651038583baf7f251caf2f670892095d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8D=97=E6=B2=A2=E5=93=8D=E4=B9=9F?= <72963826+Hibiya615@users.noreply.github.com> Date: Wed, 12 Mar 2025 01:42:59 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=8C=E4=BB=87=E9=A1=BA?= =?UTF-8?q?=E5=8A=88=E7=BB=98=E5=88=B6=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 04-Stormblood/Emanation.cs | 51 ++++++++++++++++++++++++++++++-------- 1 file changed, 41 insertions(+), 10 deletions(-) diff --git a/04-Stormblood/Emanation.cs b/04-Stormblood/Emanation.cs index 4861d53..0100733 100644 --- a/04-Stormblood/Emanation.cs +++ b/04-Stormblood/Emanation.cs @@ -17,16 +17,39 @@ using ECommons.MathHelpers; namespace Emanation; [ScriptType(guid: "214f8fbd-ad04-430f-8bba-fd7319581780", name: "吉祥天女歼灭战", territorys: [719], - version: "0.0.0.1", author: "Tetora", note: noteStr)] + version: "0.0.0.2", author: "Tetora", note: noteStr)] public class Emanation { const string noteStr = """ - v0.0.0.1: + v0.0.0.2: LV70 吉祥天女歼灭战 初版绘制 """; + public static class IbcHelper + { + public static IBattleChara? GetById(uint id) + { + return (IBattleChara?)Svc.Objects.SearchByEntityId(id); + } + + public static IBattleChara? GetMe() + { + return Svc.ClientState.LocalPlayer; + } + + public static IGameObject? GetFirstByDataId(uint dataId) + { + return Svc.Objects.Where(x => x.DataId == dataId).FirstOrDefault(); + } + + public static IEnumerable GetByDataId(uint dataId) + { + return Svc.Objects.Where(x => x.DataId == dataId); + } + } + [ScriptMethod(name: "元气刷新提示", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:regex:^93(47|74)$"])] public void 元气刷新(Event @event, ScriptAccessory accessory) { @@ -59,14 +82,22 @@ public class Emanation public void 光之波动(Event @event, ScriptAccessory accessory) { var dp = accessory.Data.GetDefaultDrawProperties(); - dp.Name = "光之波动"; - dp.Owner = @event.SourceId(); - dp.TargetObject = @event.TargetId(); - dp.Color = accessory.Data.DefaultDangerColor; - dp.Scale = new Vector2(40); - dp.Radian = 125f.DegToRad(); - dp.DestoryAt = 5400; - accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Fan, dp); + + var Lakshmis = Svc.Objects.Where(x => x.DataId == 7712); + foreach (var Lakshmi in Lakshmis) + { + if (Lakshmi.IsTargetable) + { + dp.Owner = Lakshmi.EntityId; + } + } + dp.Name = "光之波动"; + dp.TargetObject = @event.TargetId(); + dp.Color = accessory.Data.DefaultDangerColor; + dp.Scale = new Vector2(40); + dp.Radian = 125f.DegToRad(); + dp.DestoryAt = 5400; + accessory.Method.SendDraw(DrawModeEnum.Default, DrawTypeEnum.Fan, dp); } [ScriptMethod(name: "光之瀑布(分摊)", eventType: EventTypeEnum.StartCasting, eventCondition: ["ActionId:9361"])]