SusSpeechBubble

Мировой речевой пузырь с хвостом, опциональным auto-hide и reveal через SusTextFx; привязка к 3D — снаружи через WorldSpaceService, сам пузырь камеру не проецирует.
Пакет
SusKit · Мир (коммерческий)
Свойства
| Имя | Тип | По умолчанию | |
|---|---|---|---|
Text | Prop<string> | "" | v-model |
SpeakerName | Prop<string> | "" | |
Tail | Prop<string> | "down" | |
MaxWidth | Prop<float> | 240f | |
AutoHideSeconds | Prop<float> | 0f | |
Reveal | Prop<string> | "Instant" | |
CharsPerSecond | Prop<float> | 30f |
Слоты
Слотов нет.
События
| Имя | Поле | Payload |
|---|---|---|
Hidden | OnHidden | — |
Хуки стиля
Контракт USS-классов — внешний вид переопределяется без правки C#. Состояния переключаются этими классами:
sus-speech-bubblesus-speech-bubble__chromesus-speech-bubble__speakersus-speech-bubble__speaker--emptysus-speech-bubble__tailsus-speech-bubble__textsus-speech-bubble--hiddensus-speech-bubble--tail-downsus-speech-bubble--tail-leftsus-speech-bubble--tail-nonesus-speech-bubble--tail-rightsus-speech-bubble--tail-up
Использование
Тот же путь reveal, что у диалога (SusTextFx). Следование в мире — снаружи: вызовите WorldSpaceService.BindToWorld на пузыре (или его хосте); компонент сам камеру не проецирует.
csharp
var bubble = new SusSpeechBubble();
bubble.Tail.Value = "down"; // down | up | left | right | none
bubble.MaxWidth.Value = 240f;
bubble.AutoHideSeconds.Value = 3f; // 0 = stay until Hide()
bubble.Reveal.Value = "PerChar";
bubble.Show("Over here!", "Scout");
// WorldSpaceService.BindToWorld(bubble, unitTransform, offset);
bubble.OnHidden = () => { /* pooled / disposed */ };| Prop / API | Роль |
|---|---|
Text / SpeakerName | тело и опциональная подпись имени |
Tail | USS-класс направления хвоста |
MaxWidth | мягкий потолок ширины |
AutoHideSeconds | скрыть после reveal (0 = вручную) |
Reveal / CharsPerSecond | те же режимы, что у SusDialogueBox |
Show / Hide / OnHidden | жизненный цикл видимости |
Заметки
- Storybook story Speech Bubble (
speech-bubble). - Hub shot
kit-speech-bubble.png— витрина, снято в Play mode.