Files
AetherBags/KamiToolKit/Nodes/Basic/IconIndicator.cs
T
KnackAtNite 8db4ce6094
Debug Build and Test / Build against Latest Dalamud (push) Has been cancelled
Debug Build and Test / Build against Staging Dalamud (push) Has been cancelled
Initial commit: AetherBags + KamiToolKit for FC Gitea
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-08 14:46:31 -05:00

45 lines
1.5 KiB
C#

using System.Numerics;
using FFXIVClientStructs.FFXIV.Component.GUI;
using KamiToolKit.Enums;
using KamiToolKit.Timelines;
namespace KamiToolKit.Nodes;
public class IconIndicator : ResNode {
public readonly ImageNode IconNode;
public IconIndicator(uint innerNodeId) {
IconNode = new ImageNode {
NodeId = innerNodeId,
Size = new Vector2(18, 18),
NodeFlags = NodeFlags.Visible | NodeFlags.Enabled | NodeFlags.EmitsEvents,
WrapMode = WrapMode.Stretch,
PartId = (uint)(innerNodeId == 5 ? 25 : 30),
};
IconNodeTextureHelper.LoadIconAFrameTexture(IconNode);
IconNode.AttachNode(this);
BuildTimeline();
}
private void BuildTimeline() {
IconNode.AddTimeline(new TimelineBuilder()
.AddFrameSetWithFrame(11, 20, 11, partId: 14)
.AddFrameSetWithFrame(21, 30, 21, partId: 15)
.AddFrameSetWithFrame(31, 40, 31, partId: 21)
.AddFrameSetWithFrame(41, 50, 41, partId: 22)
.AddFrameSetWithFrame(51, 60, 51, partId: 23)
.AddFrameSetWithFrame(61, 70, 61, partId: 24)
.AddFrameSetWithFrame(71, 79, 71, partId: 29)
.AddFrameSetWithFrame(80, 89, 80, partId: 30)
.AddFrameSetWithFrame(90, 99, 90, partId: 25)
.AddFrameSetWithFrame(100, 109, 100, partId: 26)
.AddFrameSetWithFrame(110, 119, 110, partId: 27)
.AddFrameSetWithFrame(120, 129, 120, partId: 28)
.Build());
}
}