Команди RPG Maker MV та MZ/Показати емоцію
Показати емоцію (анг. Show Balloon Icon, рос. Показать эмоцию) — команда подій в RPG Maker MV та MZ, яка дозволяє показати анімовану хмаринку з емоцією над персонаж_кою.
Ця команда знаходиться на другій сторінці команд подій, в лівому стовпчику. Це п'ята команда в розділі Персонаж_ка (анг. Character, рос. Персонаж).
Налаштування[ ]
У команди є наступні налаштування:
- Персонаж_ка (анг. Character, рос. Персонаж) — над ким чи над чим буде анімована хмаринка (наприклад, якщо це анімована хмаринка з лампочкою, у кого з'явиться ідея):
- Грав_чиня (анг. Player, рос. Игрок),
- Ця подія (анг. This Event, рос. Это событие) — подія, з якої викликається команда «Показати емоцію»,
- або можна вказати конкретну подію;
- Емоція (анг. Balloon Icon, рос. Эмоция) — яка емоція буде показуватися:
- Оклик (анг. Exclamation, рос. Восклицание),
- Питання (анг. Question, рос. Вопрос),
- Нота (анг. Music Note, рос. Музыкальная нота),
- Серце (анг. Heart, рос. Сердце),
- Гнів (анг. Anger, рос. Гнев),
- Капля (анг. Sweat),
- Павутиння (анг. Cobweb, рос. Паутина),
- Мовчання (анг. Silence, рос. Молчание),
- Ідея (анг. Light Bulb, рос. Идея),
- Сон (анг. Zzz),
- Користувацька 1..5 (анг. User-defined 1...5, рос. Пользовательская 1...5) — одна з емоцій, для яких в стандартному файлі немає графіки (передбачається, що її домалюють);
- Чекати на закінчення (анг. Wait for Completion) — якщо ця галочка вибрана, виконання наступної команди події буде відтерміновано до закінчення анімації хмаринки.
Зовнішній вигляд емоцій[ ]
Емоції беруться з файла img/system/Balloon.png. Цей файл має розмір 384*720 пікселів, якій ділиться на клітини 48*48 пікселів. Кожен рядок послідовно відповідає одній емоції, кожна клітина в рядку — кадр анімації.
Кожен кадр анімації показується 8 ігрових кадрів (тобто 2/15 долі секунди). Останній кадр показується на 1/5 секунду довше. Таким чином, емоція показується 76 ігрових кадрів (тобто 19/15 секунди ≈ 1.27 секунди).
Використання в JavaScript[ ]
Показ емоції[ ]
Код для RPG Maker MV[ ]
Щоб почати показ емоції над грав_чинею, можна використовувати такий код:
$gamePlayer.requestBalloon(2); //2 треба замінити на номер емоції //(1 — оклик, 2 — питання, тощо)
Щоб показати емоцію над подією, код буде наступним:
$gameMap.event(1).requestBalloon(2); //1 треба замінити на номер події //2 треба замінити на номер емоції (1 — оклик, тощо)
Код для RPG Maker MZ[ ]
Щоб почати показ емоції над грав_чинею, можна використовувати такий код:
$gameTemp.requestBalloon($gamePlayer, 2); //2 треба замінити на номер емоції //(1 — оклик, 2 — питання, тощо)
Щоб показати емоцію над подією, код буде наступним:
$gameTemp.requestBalloon($gameMap.event(1), 2); //1 треба замінити на номер події //2 треба замінити на номер емоції (1 — оклик, тощо)
Код для RPG Maker MV та MZ одночасно[ ]
Щоб писати код, який працюватиме і в MV, і в MZ, можна додати в кінець або на початок свого плагіну такий код:
if (!Game_CharacterBase.prototype.requestBalloon) { Game_CharacterBase.prototype.requestBalloon = function(animationId) { $gameTemp.requestBalloon(this, animationId); }; }
Після цього можна буде використовувати варіанти коду для MV (наприклад, $gamePlayer.requestBalloon(2);
тепер працюватиме) у обидвох версіях: і в RPG Maker MV, і MZ.
Перевірка, чи закінчився показ емоції[ ]
Щоб довідатися, чи закінчилася анімація емоції, можна використовувати метод isAnimationPlaying()
того об'єкту, для якого викликається емоція (тобто $gamePlayer.isAnimationPlaying()
для грав_чині та $gameMap.event(1).isAnimationPlaying()
для події №1).