48 lines
2.1 KiB
C#
48 lines
2.1 KiB
C#
using System.Numerics;
|
|
using FFXIVClientStructs.FFXIV.Component.GUI;
|
|
using KamiToolKit.Enums;
|
|
using KamiToolKit.Timelines;
|
|
|
|
namespace KamiToolKit.Nodes;
|
|
|
|
public class AlternateCooldownNode : ResNode {
|
|
|
|
public readonly ImageNode CooldownImage;
|
|
|
|
public AlternateCooldownNode() {
|
|
CooldownImage = new ImageNode {
|
|
NodeId = 15,
|
|
Size = new Vector2(44.0f, 46.0f),
|
|
Position = new Vector2(0.0f, 2.0f),
|
|
Origin = new Vector2(22.0f, 23.0f),
|
|
NodeFlags = NodeFlags.Visible | NodeFlags.Enabled | NodeFlags.EmitsEvents,
|
|
WrapMode = WrapMode.Tile,
|
|
PartId = 80,
|
|
};
|
|
|
|
IconNodeTextureHelper.LoadIconARecast2Texture(CooldownImage);
|
|
|
|
CooldownImage.AttachNode(this);
|
|
|
|
BuildTimeline();
|
|
}
|
|
|
|
private void BuildTimeline() {
|
|
CooldownImage.AddTimeline(new TimelineBuilder()
|
|
.BeginFrameSet(11, 92)
|
|
.AddFrame(11, alpha: 255, scale: new Vector2(1.0f), multiplyColor: new Vector3(100.0f), addColor: new Vector3(0.0f), partId: 1)
|
|
.AddFrame(92, alpha: 255, scale: new Vector2(1.0f), multiplyColor: new Vector3(100.0f), addColor: new Vector3(0.0f), partId: 79)
|
|
.EndFrameSet()
|
|
.BeginFrameSet(93, 174)
|
|
.AddFrame(93, alpha: 255, scale: new Vector2(1.0f), multiplyColor: new Vector3(100.0f), addColor: new Vector3(0.0f), partId: 82)
|
|
.AddFrame(174, alpha: 255, scale: new Vector2(1.0f), multiplyColor: new Vector3(100.0f), addColor: new Vector3(0.0f), partId: 160)
|
|
.EndFrameSet()
|
|
.BeginFrameSet(175, 205)
|
|
.AddFrame(175, alpha: 255, scale: new Vector2(1.0f), multiplyColor: new Vector3(100.0f), addColor: new Vector3(0.0f), partId: 80)
|
|
.AddFrame(191, alpha: 255, scale: new Vector2(1.2f), multiplyColor: new Vector3(100.0f), addColor: new Vector3(200.0f), partId: 80)
|
|
.AddFrame(205, alpha: 0, scale: new Vector2(1.25f), multiplyColor: new Vector3(100.0f), addColor: new Vector3(200.0f), partId: 80)
|
|
.EndFrameSet()
|
|
.Build());
|
|
}
|
|
}
|