跳转到内容

SusHudTargetPanel

SusHudTargetPanel

目标 chip 行——图标 + 命中率(+ 可选标签);点击 / Enter 选择目标 id。

SusGame · HUD(商业)

在 Playground 中打开

SusGame · HUD

属性

没有公开属性。

插槽

没有插槽。

事件

名称字段载荷
TargetSelectedOnTargetSelectedstring

样式钩子

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

  • sus-hud-target-panel
  • sus-hud-target-panel__icon
  • sus-hud-target-panel__item
  • sus-hud-target-panel__item--selected
  • sus-hud-target-panel__label
  • sus-hud-target-panel__pct
  • sus-hud-target-panel__row
  • sus-hud-target-panel__title

用法

列表驱动:用 SetTargets 从代码填充。XML 只负责外框(固定的 "TARGETS" 标题)。

csharp
var panel = new SusHudTargetPanel();
panel.OnTargetSelected += id => { /* lock target */ };

panel.SetTargets(new List<SusHudTargetData>
{
    new() { Id = "e1", Icon = "crosshair", Label = "Raider", HitChance01 = 0.72f, Selected = true },
    new() { Id = "e2", Icon = "crosshair", Label = "Scout", HitChance01 = 0.45f },
});

panel.UpdateHitChance("e1", 0.80f);
panel.SetSelected("e2");
xml
<template>
  <sus:SusHudTargetPanel @target-selected="OnTargetSelected" />
</template>

<script>
void OnTargetSelected(string id) { /* … */ }
// Call SetTargets / UpdateHitChance / SetSelected from combat code after mount.
</script>
Prop / APIRole
SetTargets(list)SusHudTargetData 重建 chip 列表
UpdateHitChance(id, hitChance01)只更新命中率百分比,不整体重建
SetSelected(id)切换 --selected
ClearTargets()移除所有 chip
OnTargetSelected被选中目标的 Idstring

备注

  • 在调用 SetTargets 前为空(挂载前的调用会排队,等到 Mounted 后执行)。
  • SusHudTargetDataId(必填)、Icon(默认 crosshair)、LabelHitChance010…1N%)、Selected
  • 键盘操作:获得焦点的 chip 可通过 Enter / Space 激活。