К содержимому

SusHudPlayerStatus

SusHudPlayerStatus

Блок identity игрока — avatar, name, ряды прогресса HP / MP / XP.

Пакет

SusGame · HUD (коммерческий)

Открыть в песочнице

SusGame · HUD

Свойства

ИмяТипПо умолчанию
PlayerNameProp<string>"Player"
AvatarImageProp<string>""
AvatarTextProp<string>"P"
HpProp<float>100f
HpMaxProp<float>100f
MpProp<float>100f
MpMaxProp<float>100f
XpProp<float>0f
XpMaxProp<float>100f
ShowMpProp<bool>true
ShowXpProp<bool>true

Слоты

Слотов нет.

События

Публичных событий нет.

Хуки стиля

Контракт USS-классов — внешний вид переопределяется без правки C#. Состояния переключаются этими классами:

  • sus-hud-player-status
  • sus-hud-player-status__avatar
  • sus-hud-player-status__bar
  • sus-hud-player-status__bar-label
  • sus-hud-player-status__bars
  • sus-hud-player-status__name
  • sus-hud-player-status__row

Использование

csharp
var status = new SusHudPlayerStatus();
status.PlayerName.Value = "Hero";
status.AvatarText.Value = "H";
status.AvatarImage.Value = "";
status.Hp.Value = 72f;
status.HpMax.Value = 100f;
status.Mp.Value = 40f;
status.MpMax.Value = 100f;
status.Xp.Value = 55f;
status.XpMax.Value = 100f;
status.ShowMp.Value = true;
status.ShowXp.Value = true;
xml
<template>
  <sus:SusHudPlayerStatus :PlayerName="Name.Value"
                          :AvatarImage="AvatarImg.Value"
                          :AvatarText="AvatarTxt.Value"
                          :Hp="Hp.Value"
                          :HpMax="HpMax.Value"
                          :Mp="Mp.Value"
                          :MpMax="MpMax.Value"
                          :Xp="Xp.Value"
                          :XpMax="XpMax.Value"
                          :ShowMp="ShowMp.Value"
                          :ShowXp="ShowXp.Value" />
</template>

<script>
public Prop<string> Name = new("Hero");
public Prop<string> AvatarImg = new("");
public Prop<string> AvatarTxt = new("H");
public Prop<float> Hp = new(72f);
public Prop<float> HpMax = new(100f);
public Prop<float> Mp = new(40f);
public Prop<float> MpMax = new(100f);
public Prop<float> Xp = new(55f);
public Prop<float> XpMax = new(100f);
public Prop<bool> ShowMp = new(true);
public Prop<bool> ShowXp = new(true);
</script>
PropРоль
PlayerNameПодпись имени
AvatarImageURL/ресурс изображения для SusAvatar
AvatarTextFallback-глиф; пусто → используется PlayerName
Hp / HpMaxПолоса здоровья
Mp / MpMaxПолоса маны (скрыта, если ShowMp false)
Xp / XpMaxПолоса опыта (скрыта, если ShowXp false)
ShowMp · ShowXpПереключает строки MP / XP

Заметки

  • Полосы ограничены [0, Max] при Max ≥ 1.
  • Построен на kit SusAvatar + SusProgressLinear — токены темы каскадируют из SusKit.
  • Для world-меток юнитов используйте SusUnitNameplate, а не этот HUD-блок.