Возможности Mimimo
Каждая страница содержит живой пример, описание методов и вкладки Vanilla, React и Vue. Начните с создания питомца, затем подключите нужные возможности.
Создание питомца
Создавайте один экземпляр на смонтированный компонент или страницу. Передайте пакет персонажа, локальный контейнер и нужный размер. Возвращаемый Pet позволяет управлять питомцем.
Свой персонаж
Храните описание графики отдельно от живого экземпляра. В нём находятся id, имя, размеры и именованные анимации. Одно описание можно использовать для нескольких питомцев, не связывая ядро с пакетом персонажа.
Добавление состояний
Состояние описывает графику, а не компонент фреймворка. Зарегистрируйте состояния при создании или добавляйте позже. Повторное имя заменяет графику; первое состояние запускается автоматически, если питомец ещё ничего не показывает.
Запуск состояния
Используйте play для основного режима: отдыха, сна или размышления. В отличие от временной реакции он меняет базовое состояние. Переключайте сон и отдых в демо и следите за текущим состоянием.
Реакции на действия
Реакция подходит для короткой эмоции без потери основного режима. react получает имя состояния; addReaction связывает действие пользователя с состоянием. Нажмите «Порадоваться» или включите реакцию на клик и нажмите на самого питомца.
Реплики и облачка
Покажите приветствие, подсказку или поздравление. Строка создаёт простую реплику, объект — заголовок с описанием. Измените текст ниже, покажите его и сравните закрытие реплики с отключением всего облачка.
Позиция и привязка
Выберите координаты для свободного размещения или привязку к углу, чтобы питомец следовал за изменением доступной области. Координаты относятся к активному окружению, а не всегда к документу.
Размер питомца
Меняйте размер без пересоздания питомца или замены графики. Это полезно для компактных виджетов и крупных приветственных сцен. Попробуйте оба размера ниже.
Перетаскивание
Разрешите посетителю двигать питомца или закрепите его в сцене. Изменение draggable не меняет состояние и видимость. Перетащите питомца, выключите перетаскивание и попробуйте снова.
Предзагрузка медиа
Подготовьте анимацию до её показа. Дождитесь preload перед синхронизированным приветствием или поздравлением. Без names загружаются все зарегистрированные состояния; для больших пакетов выбирайте только нужные.
Пауза и продолжение
Поставьте воспроизведение на паузу, не убирая персонажа. resume возвращает управление обычным правилам воспроизведения. Статичное изображение не изменится; разницу видно на анимированном Mochi.
Скрытие и показ
Временно скройте питомца без пересоздания. Это удобно, когда посетителю нужен спокойный интерфейс или приложение переходит в режим сосредоточенной работы. show возвращает тот же экземпляр.
Подписка на события
Свяжите питомца с приложением через типизированные события. on возвращает функцию отписки. Нажмите на питомца, отпишитесь и нажмите снова, чтобы увидеть разницу в журнале.
Свои элементы управления
Разместите собственную панель под персонажем. Mimimo принимает настоящий DOM-элемент, а приложение отвечает за его поведение. Используйте textContent для подписей и очищайте свои слушатели.
Отправка сообщения
Подключите обработчик ответа через chat.onMessage при создании питомца. sendMessage вызывает его и показывает возвращённый текст. В примере работает локальное эхо без AI и сетевых запросов.
Удаление экземпляра
Вызывайте destroy при размонтировании владельца. Метод убирает персонажа и панели, останавливает отрисовку, освобождает жесты и отменяет внутреннюю асинхронную работу. Повторный вызов безопасен.