Фоны и персонажи

scene

Меняет фон, а также автоматически убирает все спрайты персонажей на экране.

Синтаксис
scene [type] [name] {with} {spritecolor} |skip|
Параметры
Примеры использования
# выводит фон akihibara_night
scene bg akihibara_night

"..."

# выводит цг sakura с переходом dissolve
scene cg sakura with dissolve

"..."

# выводит синий фон с переходом fade
scene color blue with fade

"..."

# выводит фон school_corrdior с переходом slideout right и окрашивает спрайты персонажей в зелёный цвет
scene bg school_corridor spritecolor green with slideout right

"..."

# вывод спрайтов
show hi at center with dissolve
show ca at right with dissolve

"..."
Демонстрация

show

Показывает спрайт персонажа.

Синтаксис

Описание синтаксиса данной команды будет разделёно на две части.

В первой будет описан синтаксис основных параметров, во второй — синтаксис дополнительных параметров.
Оба синтаксиса одинаково применимы к обоим видов спрайтов (статичным и Live2D) с небольшими отличиями, о которых будет написано далее.

Основные параметры

show [charID или alias] ([poseInfo]) (animations)
Параметры

Дополнительные параметры

{at} {size} ({layer} или {behind} или {ahead}) {spritecolor} {with} {as} (|skip| или |await|)
Параметры

Примеры использования

# выводит фон akihibara_night
scene bg akihibara_night

# спавн спрайта Химицу под псевдонимом test_sprite с переходом dissolve
show hi with dissolve as test_sprite

"..."

# перемещает спрайт в левую часть экрана и меняет ему размер
show test_sprite at left size close with dissolve

"..."
Демонстрация

# выводит фон akihibara_night
scene bg akihibara_night

# спавн спрайта Химицу
show hi at left size close with dissolve

"..."

# выводит спрайт Кетрин поверх спрайта Химицу
show ca at left size close ahead hi with dissolve

"..."

# выводит копию спрайта Кетрин под псевдонимом ca2 справа
show ca at right as ca2 with dissolve

"..."

# меняет спрайту ca2 скин
show ca2 ca_front dom with dissolve

# перемещает Химицу в центр экрана, а также меняет ей позу и скин
show hi himitsu_l plate at center with dissolve

"..."
Демонстрация

Анимации

У всех Live2D спрайтов, встроенных в игру, существуют следующие слои анимации:

Указанный выше порядок действителен только для встроенных в игру спрайтов. Для Live2D спрайтов, определённых модом, порядок и названия слоёв определяются в resources.yaml

Все слои, кроме additive, принимают название одной конкретной анимации. В additive могут прописываться несколько анимаций одновременно, т.к. этот параметр объединяет все вспомогательные слои.

Данное правило распространяется только на встроенные в игру спрайты.

Синтаксис

Анимации для Live2D-спрайтов могут прописываться двумя способами — кратким и полным.

Краткий

Краткий синтаксис выглядит так:

(emotions) (head) (hands) (legs) (additive)

Названия анимаций для конкретных слоёв прописываются друг за другом, при этом необязательно указывать анимации для всех слоёв — допустим, можно указать только название эмоции (emotions) и положение рук (hands), пропустив положение головы (head). При использовании данного синтаксиса необходимо строго соблюдать порядок слоёв.

Пример:

# выводит спрайт Химицу с эмоцией angry, положением головы head2left и положеним рук hands3
show hi angry head2left hands3
Полный

В полном же синтаксисе указываются названия слоя и анимации, разделённые двоеточием:

layer:animation layer:animation layer:animation

При этом порядок, в котором они указываются, неважен.

Пример:

# выводит спрайт Химицу с эмоцией angry, положением головы head2left и положеним рук hands3
# порядок, в котором прописываются анимации, неважен
show hi emotions:angry head:head2left hands:hands3

При использовании полного синтаксиса, для вспомогательных анимаций также необходимо указывать названия слоёв.

Статичные спрайты

Статичные спрайты — это спрайты, которые собираются из изображений. У них нет анимации. Такие спрайты можно определить внутри файла resources.yaml, и они могут содержать различные части, которые могут меняться.

Для отображения или скрытия тех или иных частей спрайта используется синтаксис, аналогичный синтаксису анимаций, только вместо названия анимаций (и слоев) используются названия частей и их групп.

Например, мы определили в моде спрайт mt, в котором определена группа uniform — различные вариации одежды, и группа face — различные вариации эмоций:

# resources.yaml
---
  characters:
    mt:
      poses:
        front_1:
          parts:
            body: sprites/mt/mt_1_body.png # это постоянная часть, которую мы определили ранее
            ~face:
              default: normal # по умолчанию будет отображаться эмоция normal
              parts:
                normal: sprites/mt/mt_1_normal.png # нейтральное выражение лица
                smile: sprites/mt/mt_1_smile.png # улыбка
                sad: sprites/mt/mt_1_sad.png # грусть
            ~uniform: # группа uniform
              default: pioneer # по умолчанию при вызове спрайта будет выводиться пионерская форма
              parts:
                pioneer: sprites/mt/mt_1_pioneer.png # пионерская форма
                dress: sprites/mt/mt_1_dress.png # платье
                swimsuit: sprites/mt/mt_1_swim.png # купальник                
              
      # остальные параметры

Чтобы поменять эмоцию и одежду, мы можем воспользоваться кратким синтаксисом:

# выводит спрайт mt с улыбкой и в платье
show mt smile dress

Как и в случае с анимациями, при использовании краткого синтаксиса важен порядок групп. В данном случае порядок определяется внутри файла ресурсов.

Также мы можем воспользоваться полным синтаксисом:

# выводит спрайт mt с улыбкой и в платье
# порядок групп неважен
show mt face:smile uniform:dress

Кроме того, можно убрать какую-то часть при необходимости. Для этого достаточно прописать точку вместо названия части спрайта:

# выводит спрайт mt с улыбкой и без одежды, краткий синтаксис
show mt smile .

# делает то же самое, полный синтаксис
show mt face:smile uniform:.

hide

Убирает спрайт персонажа со сцены.

Синтаксис
hide [charName] {with}
Параметры
Примеры использования
# убирает спрайт Химицу без перехода
hide hi
Демонстрация

# убирает спрайт Химицу с переходом dissolve
hide hi with dissolve
Демонстрация