гидралиск
Не хочешь запилить игрушку на своём движке для конкурса текстовых игр?
Как раз бы и проверил свой движок на практике.
В папку helpers добавил SoundController.
Долго не хотел писать очередную звуковую либу, однако она хорошо ложится в общий набор, будучи при этом на порядок проще и на два порядка легковеснее, чем популярные библиотеки работы с аудио.
Также сделал мини-игру на реакцию, которую планирую использовать вместо боёвки в моей игре на (уже видимо потонувший) конкурс текстовых игр. Если всё-таки буду участвовать, разбавлю ей болтовню персонажей.
Обновил скрипт для выгрузки слоёв из aseprite-файла: лучше продуманы отдельные вещи, появилась оптимизация (склейка) повторяющихся кадров.
Добавил классы PixelSprite и PixelScreen, которые позволяют отображать эти ресурсы как анимированные экраны новеллы. Ещё есть, что дорабатывать, примеры использования будут позже.
v0.4.0 "Sasuke"
1. Добавлена раскраска/форматирование текста через теги.
тег::слово // или [тег::несколько слов]
Встроенных эффектов у тегов нет, эффекты задаются через стандартный колбек. Движок только сообщает, что такому-то элементу-букве соответствует такой-то тег.
2. Добавлен управляющий символ "!" для мгновенной печати заданного текста.
3. Breaking: setName переименован в setLabel
Апдейт, конечно, связан с игрой на конкурс стратегий, в которой захотелось иметь больше красивостей.
Версия 0.4.1
Главное нововведение - внутристроковые паузы (числа в квадратных скобках). Ну и ещё добавил в пример демонстрацию обработки нескольких тегов.
"Is it really you[500], [slow, blue::Black Raven]?"Версия 0.4.2
Теги теперь работают и в опциях выбора. Формат тот же.
const answer_num = await select("Bring me a [yellow::mug of beer]!", // 0 "I'd like a [blue::glass of water]." // 1 )

Дизайн красивый. И шрифт и палитра.
За последние месяцы движок подвергся масштабному рефакторингу.
С нуля переписал рендер текста, простой побуквенный вывод заменил на более гибкий "от паузы до паузы". Кое-где добавил синтаксического сахара, кое-что убрал как избыточное.
Появилась возможность делать текстовые квесты: теперь у движка есть отдельная функция для вывода повествовательного текста, куда можно вставлять триггеры событий и ссылки-переходы по сценам.
гидралиск
> на более гибкий "от паузы до паузы"
это как?
skalogryz
Посмотри обновлённую демку, да и всё. Там в произвольные места реплик можно добавлять паузы. Отображается разом весь кусок от паузы до паузы (если пауз нет - просто сразу весь текст). Побуквенный вывод всё ещё можно эмулировать вставкой микропауз после каждой буквы (ближе к концу демки такой пример есть).
руками паузы расставлять?! почему нет!
Я за последние полгода много во что поиграл из ВН. В итоге решил, что побуквенный способ вывода если и нужен, то как вспомогательный, а не основной.