Pseudochat
Объект Pseudochat - Менеджер реплик для задач из Taskorganizer. Он используется для имитации чата с заданным количеством собеседников.
Основные параметры
- файл уровня - Имя файла с уровнями в фомате *.json
- номер уровня - Номер уровня в файле начиная с 0
- etasktemplate - объект типа Etasktemplate, использующийся для названия, описания, прогресса и т.п.
- taskorganizer - taskorganizer
- таблица тасков - Таблица темплейтов тасков
- таблица реплик - Таблица в которую будем помещать темплейты реплик
- реплик в таблице - хранить в таблице историю диалога или только одну реплику
- плашка НОВЫЕ СООБЩЕНИЯ - Плашка с надписью НОВЫЕ СООБЩЕНИЯ. Будет добавлена в таблицу
- плашка СОБЕСЕДНИК ПЕЧАТАЕТ (не 0 темплейт) - Плашка с надписью СОБЕСЕДНИК ПЕЧАТАЕТ (не 0 темплейт). Будет добавлена в таблицу
- плашка СОБЕСЕДНИК ПЕЧАТАЕТ (0 темплейт) - Плашка с надписью СОБЕСЕДНИК ПЕЧАТАЕТ (0 темплейт). Будет добавлена в таблицу
времена между репликами
- ms на символ - Число милисекунд на один символ следующей реплики
- max ms - Максимальное время на сообщение не може превышать это значение
Добавляемые параметры
темплейт реплики - темплейт реплики - объект визуализатор ячейки реплики; таких объектов может быть сколько угодно (по количеству участников в чате)
- объект - Объект типа Pseudochattemplate
связанный таск неактивен - связанный таск неактивен - обработчик...
- объект - объект, состояние которого меняем
- состояние - значение нового состояния
диалог загружен - диалог загружен - обработчик...
- объект - объект, состояние которого меняем
- состояние - значение нового состояния
реплика добавлена - реплика добавлена - обработчик...
- объект - объект, состояние которого меняем
- состояние - значение нового состояния
Состояния
- idle - Состояние по умолчанию (не вызывается)
- show_dialog - Показать диалог для последнего кликнутого таска в таблице
- add_one - Добавить одну реплику в текущий диалог
- add_all - Добавить все реплики в текущий диалог
- pause - Чат на паузе
- show_dialog_by_owner - Показать диалог, взяв owner из param
Структура файла уровней
Файл уровней должен быть в формате *.json и иметь следующую структуру:
{
"dialogs": [
{
"id": 511,
"owner": 3,
"task": 511,
"messages": [
{
"text": 568,
"template": 0
},
{
"text": 569,
"template": 1
}]
},
{
"id": 517,
"owner": 4,
"task": 517,
"messages": [
{
"text": 646,
"template": 1
},
{
"text": 648,
"template": 0
}]
}]
}
Расшифровка параметров:
- "id": 511 - это id таска, по которому мы тапнули в таблице, он же id самого диалога,
- "owner": 3 - владелец таска должен соответствовать владельцу таска в таскорганайзере,
- "task": 511 - таск, активность которого проверяем для показа диалога (необязательный параметр),
- "text": 568 - текстовый id самой реплики,
- "template": 0 - номер темплейта реплики (по порядку начиная с нуля) из добавленных в объект Pseudochat.