Initial release: HSUI v1.0.0.0 - HUD replacement with configurable hotbars

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-01-30 23:52:46 -05:00
commit f37369cdda
202 changed files with 40137 additions and 0 deletions
+83
View File
@@ -0,0 +1,83 @@
using HSUI.Config;
using HSUI.Config.Attributes;
using HSUI.Enums;
using HSUI.Interface.GeneralElements;
using System.Numerics;
namespace HSUI.Interface.Bars
{
[Exportable(false)]
public class ChunkedBarConfig : BarConfig
{
[DragInt("Padding", min = -4000, max = 4000)]
[Order(45)]
public int Padding = 2;
public ChunkedBarConfig(
Vector2 position,
Vector2 size,
PluginConfigColor fillColor,
int padding = 2) : base(position, size, fillColor)
{
Padding = padding;
}
}
[Exportable(false)]
public class ChunkedProgressBarConfig : ChunkedBarConfig
{
[Checkbox("Show In Chunks", spacing = true)]
[Order(46)]
public bool UseChunks = true;
[RadioSelector("Show Text on All Chunks", "Show Text on Active Chunk")]
[Order(47, collapseWith = nameof(UseChunks))]
public LabelMode LabelMode;
[Checkbox("Use Partial Fill Color", spacing = true)]
[Order(50)]
public bool UsePartialFillColor = false;
[ColorEdit4("Partial Fill Color")]
[Order(55, collapseWith = nameof(UsePartialFillColor))]
public PluginConfigColor PartialFillColor;
[NestedConfig("Bar Text", 1000, separator = false, spacing = true)]
public NumericLabelConfig Label;
public ChunkedProgressBarConfig(
Vector2 position,
Vector2 size,
PluginConfigColor fillColor,
int padding = 2,
PluginConfigColor? partialFillColor = null) : base(position, size, fillColor, padding)
{
Label = new NumericLabelConfig(Vector2.Zero, "", DrawAnchor.Center, DrawAnchor.Center);
Label.Enabled = false;
PartialFillColor = partialFillColor ?? new PluginConfigColor(new(180f / 255f, 180f / 255f, 180f / 255f, 100f / 100f));
}
}
[DisableParentSettings("LabelMode", "UsePartialFillColor", "PartialFillColor")]
[Exportable(false)]
public class StacksWithDurationBarConfig : ChunkedProgressBarConfig
{
public StacksWithDurationBarConfig(
Vector2 position,
Vector2 size,
PluginConfigColor fillColor,
int padding = 2,
PluginConfigColor? partialFillColor = null) : base(position, size, fillColor, padding)
{
UseChunks = true;
UsePartialFillColor = false;
}
}
public enum LabelMode
{
AllChunks,
ActiveChunk
}
}