SusAbilitySlot

Single ability cell — icon, name, keybind, cooldown overlay, optional hold-to-cast.
Package
SusGame · HUD (commercial)
Props
| Name | Type | Default | |
|---|---|---|---|
Icon | Prop<string> | "" | |
Label | Prop<string> | "" | |
Description | Prop<string> | "" | |
Keybind | Prop<string> | "" | |
Cooldown01 | Prop<float> | 0f | |
CooldownText | Prop<string> | "" | |
CooldownStyle | Prop<string> | "Radial" | |
Disabled | Prop<bool> | false | |
UseHold | Prop<bool> | false | |
HoldDurationMs | Prop<int> | 800 |
Slots
No slots.
Events
| Name | Field | Payload |
|---|---|---|
Activate | OnActivate | — |
HoldComplete | OnHoldComplete | — |
HoldCancel | OnHoldCancel | — |
Style hooks
USS class contract — override appearance without touching C#. States toggle via these classes:
breakpoint-smsus-ability-slotsus-ability-slot__cdsus-ability-slot__cd-labelsus-ability-slot__cd-wipesus-ability-slot__hold-hostsus-ability-slot__icon-hostsus-ability-slot__keysus-ability-slot__namesus-ability-slot--disabledsus-ability-slot--holdsus-ability-slot--on-cd
Usage
csharp
var slot = new SusAbilitySlot();
slot.Icon.Value = "sword";
slot.Label.Value = "Strike";
slot.Description.Value = "Melee hit — 1 AP";
slot.Keybind.Value = "1";
slot.Cooldown01.Value = 0.4f;
slot.CooldownText.Value = "2s";
slot.Disabled.Value = false;
slot.UseHold.Value = false;
slot.OnActivate += () => { /* … */ };xml
<template>
<sus:SusAbilitySlot :Icon="Icon.Value"
:Label="Label.Value"
:Description="Desc.Value"
:Keybind="Key.Value"
:Cooldown01="Cd.Value"
:CooldownText="CdText.Value"
:Disabled="Disabled.Value"
:UseHold="Hold.Value"
:HoldDurationMs="HoldMs.Value"
@activate="OnActivate"
@hold-complete="OnHoldComplete"
@hold-cancel="OnHoldCancel" />
</template>
<script>
public Prop<string> Icon = new("sword");
public Prop<string> Label = new("Strike");
public Prop<string> Desc = new("Melee hit — 1 AP");
public Prop<string> Key = new("1");
public Prop<float> Cd = new(0.4f);
public Prop<string> CdText = new("2s");
public Prop<bool> Disabled = new(false);
public Prop<bool> Hold = new(false);
public Prop<int> HoldMs = new(800);
void OnActivate() { /* … */ }
void OnHoldComplete() { /* … */ }
void OnHoldCancel() { /* … */ }
</script>| Prop | Role |
|---|---|
Icon | Icon name for inner SusIcon |
Label | Name under the icon |
Description | Tooltip body (with label) |
Keybind | Corner key text |
Cooldown01 | 0 ready · 1 full remaining |
CooldownText | Overlay label while on CD |
Disabled | Blocks activate / hold |
UseHold | Embeds SusHoldButton instead of click |
HoldDurationMs | Hold length when UseHold |
Notes
- Cooldown class kicks in when
Cooldown01 > 0.01. - Inside a bar, prefer SusAbilityBar
SetAbilities— it writes these props for you.