Trivia — различия между версиями
Denisov (обсуждение | вклад) (→Параметры) |
Denisov (обсуждение | вклад) (→Параметры) |
||
Строка 13: | Строка 13: | ||
Кроме стандартных параметров, свойственных всем объектам, Trivia имеет дополнительные поля для настройки. | Кроме стандартных параметров, свойственных всем объектам, Trivia имеет дополнительные поля для настройки. | ||
− | '''количество категорий''' (''catNum'') - указываем число категорий для вопросов. Примеры категорий: страны, животные, музыка.<br> | + | *'''количество категорий''' (''catNum'') - указываем число категорий для вопросов. Примеры категорий: страны, животные, музыка.<br> |
− | '''вопрос''' (''textQuest'') - указываем текстовый объект проекта, в котором будут отображаться вопросы.<br> | + | *'''вопрос''' (''textQuest'') - указываем текстовый объект проекта, в котором будут отображаться вопросы.<br> |
− | '''ответ 1 текст''' (''txtA1'') - указываем текстовый объект проекта для отображения ответа<br> | + | *'''ответ 1 текст''' (''txtA1'') - указываем текстовый объект проекта для отображения ответа<br> |
− | '''ответ 2 текст, ответ 3 текст, ответ 4 текст''' (''txtA2, txtA3, txtA4'') - здесь размещены поля для текстовых объектов остальных ответов<br> | + | *'''ответ 2 текст, ответ 3 текст, ответ 4 текст''' (''txtA2, txtA3, txtA4'') - здесь размещены поля для текстовых объектов остальных ответов<br> |
Текстовые объекты для вопроса и ответов необходимы для визуализации подгружаемого текста. Сами они не содержат ссылок | Текстовые объекты для вопроса и ответов необходимы для визуализации подгружаемого текста. Сами они не содержат ссылок | ||
на текстовый редактор и текст в них для этих целей не прописывается (хотя можно внести вручную значения по умолчанию)<br> | на текстовый редактор и текст в них для этих целей не прописывается (хотя можно внести вручную значения по умолчанию)<br> | ||
− | '''ответ 1 индикатор''' (''objA1'') - здесь указывается машина состояний для индикации верного или неверного ответа. Машина состояний | + | *'''ответ 1 индикатор''' (''objA1'') - здесь указывается машина состояний для индикации верного или неверного ответа. Машина состояний |
отдельно создается в проекте, ей указывают состояния off, wrong, right (не обязательно называть их именно так, однако рекомендуется | отдельно создается в проекте, ей указывают состояния off, wrong, right (не обязательно называть их именно так, однако рекомендуется | ||
в целях унификации). Если сложность машины трудно уместить в эти состояния, то добавляются дополнительные. Здесь можно | в целях унификации). Если сложность машины трудно уместить в эти состояния, то добавляются дополнительные. Здесь можно | ||
задать изменение цвета, прозрачности, масштаба для ответа, указать изменения других объектов.<br> | задать изменение цвета, прозрачности, масштаба для ответа, указать изменения других объектов.<br> | ||
− | '''ответ 2 индикатор, ответ 3 индикатор, ответ 4 индикатор''' (''objA2, objA3, objA4'') - аналогично для всех остальных ответов создаем | + | *'''ответ 2 индикатор, ответ 3 индикатор, ответ 4 индикатор''' (''objA2, objA3, objA4'') - аналогично для всех остальных ответов создаем |
и описываем собственные машины состояний<br> | и описываем собственные машины состояний<br> | ||
− | '''текущий вопрос''' (''objCurrent'') - машина состояний для индикации текущего вопроса<br> | + | *'''текущий вопрос''' (''objCurrent'') - машина состояний для индикации текущего вопроса<br> |
− | '''количество вопросов''' (''qNum'') - количество вопросов в раунде. Следует учитывать, что для каждого вопроса необходимо использовать | + | *'''количество вопросов''' (''qNum'') - количество вопросов в раунде. Следует учитывать, что для каждого вопроса необходимо использовать |
"индикатор для миллионера", добавляемый правой кнопкой мыши в свойствах Trivia. Таким образом qNum не может превышать число | "индикатор для миллионера", добавляемый правой кнопкой мыши в свойствах Trivia. Таким образом qNum не может превышать число | ||
"индикаторов для миллионера"<br> | "индикаторов для миллионера"<br> | ||
− | '''хранить последних''' (''usedlistsize'') - сколько последних заданных вопросов нужно хранить<br> | + | *'''хранить последних''' (''usedlistsize'') - сколько последних заданных вопросов нужно хранить<br> |
− | '''current_question''' - номер последнего вопроса, записывается при выигрыше или проигрыше ( при проигрыше сбрасывается вниз до первой несгораемой суммы);<br> | + | *'''current_question''' - номер последнего вопроса, записывается при выигрыше или проигрыше ( при проигрыше сбрасывается вниз до первой несгораемой суммы);<br> |
− | '''correct ''' - номер правильного ответа для текущего вопроса ( начиная с 0); | + | *'''correct ''' - номер правильного ответа для текущего вопроса ( начиная с 0); |
=Состояния= | =Состояния= |
Версия 11:13, 24 ноября 2015
Основные сведения
Trivia - объект, реализующий логику по типу игр "Кто хочет стать миллионером?".
Особенности
- содержит поле для вопроса
- содержит поля для 4-х ответов. Число этих полей изменять нельзя
- может иметь связь с объектом типа economics
- вопросам можно установить сложность
Параметры
Кроме стандартных параметров, свойственных всем объектам, Trivia имеет дополнительные поля для настройки.
- количество категорий (catNum) - указываем число категорий для вопросов. Примеры категорий: страны, животные, музыка.
- вопрос (textQuest) - указываем текстовый объект проекта, в котором будут отображаться вопросы.
- ответ 1 текст (txtA1) - указываем текстовый объект проекта для отображения ответа
- ответ 2 текст, ответ 3 текст, ответ 4 текст (txtA2, txtA3, txtA4) - здесь размещены поля для текстовых объектов остальных ответов
Текстовые объекты для вопроса и ответов необходимы для визуализации подгружаемого текста. Сами они не содержат ссылок
на текстовый редактор и текст в них для этих целей не прописывается (хотя можно внести вручную значения по умолчанию)
- ответ 1 индикатор (objA1) - здесь указывается машина состояний для индикации верного или неверного ответа. Машина состояний
отдельно создается в проекте, ей указывают состояния off, wrong, right (не обязательно называть их именно так, однако рекомендуется
в целях унификации). Если сложность машины трудно уместить в эти состояния, то добавляются дополнительные. Здесь можно
задать изменение цвета, прозрачности, масштаба для ответа, указать изменения других объектов.
- ответ 2 индикатор, ответ 3 индикатор, ответ 4 индикатор (objA2, objA3, objA4) - аналогично для всех остальных ответов создаем
и описываем собственные машины состояний
- текущий вопрос (objCurrent) - машина состояний для индикации текущего вопроса
- количество вопросов (qNum) - количество вопросов в раунде. Следует учитывать, что для каждого вопроса необходимо использовать
"индикатор для миллионера", добавляемый правой кнопкой мыши в свойствах Trivia. Таким образом qNum не может превышать число
"индикаторов для миллионера"
- хранить последних (usedlistsize) - сколько последних заданных вопросов нужно хранить
- current_question - номер последнего вопроса, записывается при выигрыше или проигрыше ( при проигрыше сбрасывается вниз до первой несгораемой суммы);
- correct - номер правильного ответа для текущего вопроса ( начиная с 0);
Состояния
Основные состояния:
- choose_category - генерируем категорию ( объект _категория_ (catMachine) должна иметь состояния cat0,cat1 ...);
- start_single - начать игру, передавать после выбора категории;
- answer_1 - передаём при нажатии на первый ответ;
- answer_2 - передаём при нажатии на второй ответ;
- answer_3 - передаём при нажатии на третий ответ;
- answer_4 - передаём при нажатии на четвёртый ответ;
- replace - заменить один вопрос;
- fiftyfifty - убрать два неправильных ответа ( у 'кнопок' должно быть состояние hide );
- load - загрузить игру с последней несгораемой суммы;
- question - сгенерить следующий вопрос ( после ответа на предыдущий);
Обратная связь ( важно - отправлять только перед переходом на новый вопрос или выходе из игры - не отправлять статистику по нажатию на кнопку, пользователь может раз 5-6 кликать like и dislike):
- like - лайкнуть текущий вопрос, отправляется на сервер;
- dislike - дизлайкнуть текущий вопрос, отправляется на сервер;
- resetlike - сбросить лайк на текущий вопрос, отправляется на сервер;