Диалог
Как использовать, настраивать и управлять объектами диалога в Pixi’VN, включая "клей"(glue)и интеграцию с UI.
Экран UI
Пример экрана UI нарративного диалога можно найти в разделе примеры интерфейса.
Что такое диалог? Письменное произведение, в котором два или более персонажа представлены в процессе разговора.
В Pixi’VN dialogue — это объект, содержащий информацию о том, кто и что говорится в данный момент. Его функциональность может быть шире: он также может использоваться для других целей, таких как монологи, рассуждения вслух или отображение сообщений для игрока. По этой причине точнее рассматривать его как текст, который может быть связан с персонажем.
Установка
Для установки текущего диалога используйте narration.dialogue.
import { narration, newLabel } from "@drincs/pixi-vn";
import { eggHead } from "@/content/characters";
export const startLabel = newLabel("start", [
// A simple dialogue with only text, without a character
() => (narration.dialogue = "Hello, world!"),
// A dialogue with a character
() => {
narration.dialogue = {
character: eggHead,
text: "My name is ${eggHead.name}!",
};
},
// A dialogue with a character, but the character is not defined in the characters list
() => {
narration.dialogue = {
character: "Narrator",
text: "This is a narration without a character.",
};
},
]);Получение
Для получения текущего диалога используйте narration.dialogue. Возвращаемое значение — DialogueInterface.
const currentDialogue: DialogueInterface = narration.dialogue;Удаление
Чтобы очистить текущий диалог, установите narration.dialogue в undefined.
narration.dialogue = undefined;Пользовательский класс
Вы можете настроить интерфейс диалога, добавив дополнительные свойства в DialogueInterface. Например, можно добавить свойство color для изменения цвета текста.
Для этого «переопределите» интерфейс DialogueInterface в файле .d.ts:
declare module "@drincs/pixi-vn" {
interface DialogueInterface {
color?: string;
}
}