跳转到内容

SusUnitNameplate

SusUnitNameplate

面向世界空间的铭牌 —— faction 条、图标、name / level、可选 HP;可从单位 Transform 自动绑定。

SusKit · 世界(商业)

在 Playground 中打开

SusKit · World

属性

名称类型默认值
UnitNameProp<string>""v-model
LevelProp<int>0v-model
FactionProp<string>""v-model
IconProp<string>""v-model
HpFractionProp<float>1fv-model
ShowHealthBarProp<bool>falsev-model
TargetProp<Transform>nullv-model
AutoBindProp<bool>truev-model

插槽

没有插槽。

事件

没有公开事件。

样式钩子

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

  • sus-unit-nameplate
  • sus-unit-nameplate__content
  • sus-unit-nameplate__faction
  • sus-unit-nameplate__faction--ally
  • sus-unit-nameplate__faction--enemy
  • sus-unit-nameplate__faction--neutral
  • sus-unit-nameplate__hp
  • sus-unit-nameplate__hp-fill
  • sus-unit-nameplate__hp-fill--critical
  • sus-unit-nameplate__hp-fill--warning
  • sus-unit-nameplate__icon
  • sus-unit-nameplate__level
  • sus-unit-nameplate__name
  • sus-unit-nameplate__plate
  • sus-unit-nameplate__row

用法

手动 props(Storybook 默认值 —— AutoBind=false):

csharp
var unit = new SusUnitNameplate();
unit.UnitName.Value = "Captain";
unit.Level.Value = 12;
unit.Faction.Value = "ally";
unit.Icon.Value = "shield";
unit.HpFraction.Value = 0.55f;
unit.ShowHealthBar.Value = true;
unit.AutoBind.Value = false;
xml
<template>
  <sus:SusUnitNameplate :UnitName="Name.Value"
                        :Level="Level.Value"
                        :Faction="Faction.Value"
                        :Icon="Icon.Value"
                        :HpFraction="Hp.Value"
                        :ShowHealthBar="ShowHp.Value"
                        :AutoBind="AutoBind.Value" />
</template>

<script>
public Prop<string> Name = new("Captain");
public Prop<int> Level = new(12);
public Prop<string> Faction = new("ally");
public Prop<string> Icon = new("shield");
public Prop<float> Hp = new(0.55f);
public Prop<bool> ShowHp = new(true);
public Prop<bool> AutoBind = new(false);
// Optional: assign Target (Transform) + AutoBind=true to pull IWorldUnit* data.
</script>
Prop作用
UnitName / Level / Icon身份信息行
Factionally · enemy · neutral(faction 条颜色)
HpFractionHP 填充 0…1
ShowHealthBar切换 HP 条可见性
Target用于自动绑定的单位 Transform
AutoBind为 true 且设置了 Target 时,从 IWorldUnit* 同步数据

备注

  • SusNameplate 更丰富:内置 faction 条 + 图标;可选 Transform 绑定。
  • HP 条始终存在于 DOM 中;通过 ShowHealthBar 切换其可见性。