跳转到内容

SusHudTurnActions

SusHudTurnActions

回合外框列——Wait / End Turn 按钮,外加作为长按按钮的 Confirm。

SusGame · HUD(商业)

在 Playground 中打开

SusGame · HUD

属性

名称类型默认值
WaitLabelProp<string>"Wait"
EndTurnLabelProp<string>"End Turn"
ConfirmLabelProp<string>"Confirm"
ConfirmEnabledProp<bool>true
WaitVisibleProp<bool>true
EndTurnVisibleProp<bool>true
ConfirmVisibleProp<bool>true

插槽

没有插槽。

事件

名称字段载荷
WaitOnWait
EndTurnOnEndTurn
ConfirmHoldOnConfirmHold

样式钩子

USS 类契约 — 无需改 C# 即可覆盖外观。状态通过这些类切换:

  • sus-hold-button
  • sus-hud-turn-actions
  • sus-hud-turn-actions__btn
  • sus-hud-turn-actions__confirm

用法

绑定按钮文本 / 可见性,或用 ApplyData 批量推送。

csharp
var actions = new SusHudTurnActions();
actions.WaitLabel.Value = "Wait";
actions.EndTurnLabel.Value = "End Turn";
actions.ConfirmLabel.Value = "Confirm";
actions.ConfirmEnabled.Value = true;
actions.WaitVisible.Value = true;
actions.EndTurnVisible.Value = true;
actions.ConfirmVisible.Value = true;
actions.OnWait += () => { /* skip AP */ };
actions.OnEndTurn += () => { /* commit turn */ };
actions.OnConfirmHold += () => { /* confirm aim / fire */ };

// Or batch:
actions.ApplyData(new SusHudTurnActionsData
{
    ConfirmEnabled = false,
    WaitVisible = false,
});
xml
<template>
  <sus:SusHudTurnActions :WaitLabel="Wait.Value"
                         :EndTurnLabel="End.Value"
                         :ConfirmLabel="Confirm.Value"
                         :ConfirmEnabled="ConfirmOk.Value"
                         :WaitVisible="ShowWait.Value"
                         :EndTurnVisible="ShowEnd.Value"
                         :ConfirmVisible="ShowConfirm.Value"
                         @wait="OnWait"
                         @end-turn="OnEndTurn"
                         @confirm-hold="OnConfirmHold" />
</template>

<script>
public Prop<string> Wait = new("Wait");
public Prop<string> End = new("End Turn");
public Prop<string> Confirm = new("Confirm");
public Prop<bool> ConfirmOk = new(true);
public Prop<bool> ShowWait = new(true);
public Prop<bool> ShowEnd = new(true);
public Prop<bool> ShowConfirm = new(true);
void OnWait() { /* … */ }
void OnEndTurn() { /* … */ }
void OnConfirmHold() { /* … */ }
</script>
Prop / APIRole
WaitLabel · EndTurnLabel · ConfirmLabel按钮文本(默认 Wait / End Turn / Confirm)
ConfirmEnabledfalse 时禁用 Confirm 长按
WaitVisible · EndTurnVisible · ConfirmVisible显示 / 隐藏各控件
ApplyData(SusHudTurnActionsData)批量设置文本与标志位
OnWait · OnEndTurn · OnConfirmHold点击 / 长按完成

备注

  • Confirm 使用 kit 的 SusHoldButtonProgressMode=stripHoldDurationMs=700)。
  • Wait / End Turn 使用 kit 的 SusButtonoutlined secondary / elevated primary,Size=small)。
  • 当外框每个阶段都会变化时,优先从 Assembler / 战术宿主调用 ApplyData