Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.03.2018, 14:00
Новичок на форуме
Отправить личное сообщение для m_lulu Посмотреть профиль Найти все сообщения от m_lulu
 
Регистрация: 29.03.2018
Сообщений: 1

Игра-квест на JS, помогите разобраться в структуре
Всем доброго времени суток!
Нужна консультация) только начала осваивать js. Есть задача: дополнить игру условиями, а я не могу разобраться в структуре данного кода. Очень прошу написать комментарии по структуре, буду благодарна.

var event, ok;

do {//Выводим первый вопрос
ok = false;
event = +prompt(works.a00 + works.a1 + works.a2 + '-1 - Выход из игры');
if (event == -1) {
break;
}
else {
ok = isAnswer(works.a0, event);
}
} while (!ok);
switch (event) {
case 1: // Первое действие - если в первом окне ввели 1 то открываем серию окон - окно 2
do {
ok = false;
event = +prompt(works.b00 + works.b1 + works.b2 + '-1 - Выход из игры');
if (event == -1) {
break;
}
else {
ok = isAnswer(works.b0, event);
}
} while (!ok);
switch (event) {
case 1: // Второе действие, если во 2 окне ввели 1 то переходим на 4 окно
do {
ok = false;
event = +prompt(works.d00 + works.d1 + works.d2 + '-1 - Выход из игры');
if (event == -1) {
break;
}
else {
ok = isAnswer(works.d0, event);
}
} while (!ok);

break;
case 2: // Второе действие Если ввели 2 то также переходим на 4 окно
do {
ok = false;
event = +prompt(works.d00 + works.d1 + works.d2 + '-1 - Выход из игры');
if (event == -1) {
break;
}
else {
ok = isAnswer(works.d0, event);
}
} while (!ok);

break;
case -1: // Второе действие
break;
default:
alert('Ошибка');
}
break;
case 2: // Первое действие Если в 1 окне ввели 2 то переходим к 3 окну
do {
ok = false;
event = +prompt(works.c00 + works.c1 + works.c2 + '-1 - Выход из игры');
if (event == -1) {
break;
}
else {
ok = isAnswer(works.c0, event);
}
} while (!ok);
switch (event) {
case 1: // Второе действие
do {
ok = false;
event = +prompt(works.d00 + works.d1 + works.d2 + '-1 - Выход из игры');
if (event == -1) {
break;
}
else {
ok = isAnswer(works.d0, event);
}
} while (!ok);

break;
case 2: // Второе действие
do {
ok = false;
event = +prompt(works.d00 + works.d1 + works.d2 + '-1 - Выход из игры');
if (event == -1) {
break;
}
else {
ok = isAnswer(works.d0, event);
}
} while (!ok);

break;
case -1: // Второе действие
break;
default:
alert('Ошибка');
}
break;
case -1: // Первое действие
break;
default:
alert('Ошибка');
}
alert('Спасибо за игру');

//------------------------------------------
function isAnswer(q, event) {
if (isNaN(event) || !isFinite(event)) {
alert('Вы ввели недопустимый символ');
return false;
}
else if (event < 1 || event > q) {
alert('Ваше число выходит из допустимого диапозона');
return false;
}
else {
return true;
}
}


var works = {
a00:'Вы живёте в тихой и уютной деревеньке на окрайне страны.\n' +
'Здесь есть практчески всё: речка, лес, горы, озеро, луга и поля, есть даже школа в соседнем селе.\n' +
'Сейчас начало лета, воскресенье, раннее утро, Вы просыпаетесь и собираетесь ...\n',
a0: 2,
a1: '1 - Поспать до обеда\n',
a2: '2 - Пойти прогуляться\n',
b00: 'Вы решили поспать до обеда.\n' +
'После того как Вы проснулись первое, что вы ощутили, это приятный запах, который шёл с кухни.\n' +
'После Вы замечаете, какая за окном прекрасная погода, и Вы думаете ...\n',
b0: 2,
b1: '1 - Пойти прогуляться\n',
b2: '2 - Пойти пообедать\n',
c00: 'Вы решили пойти прогуляться.\n' +
'Вы выходите из своего дома и видите прекрасный рассвет, блики солнца так и играют на озёрной глади.\n' +
'Вы решаете дойти до озера, полюбоваться его красотойю\n' +
'С одной стороны тропинки Вы видите пшеничное поле, за которым веднеется лес.\n' +
'С другой стороны течёт речка, а в далеке виднеются горы.\n' +
'Вы наслаждаетесь пейзажами и не замечаете как летит время.\n' +
'Домой Вы приходите только к обеду, но до обеда ещё есть время и Вы решаете ...\n',
c0: 2,
c1: '1 - Подождать обед в столовой\n',
c2: '2 - Поколоть дров перед обедом\n',
d00: 'Здесь пишем текст повествования.\n' +
'Потом пишем несколько действий, например, два\n',
d0: 2, // кол-во ответов
d1: '1 - 1-й ответ\n',
d2: '2 - 2-й ответ\n',
};
Ответить с цитированием
  #2 (permalink)  
Старый 29.03.2018, 14:02
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,736

Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите разобраться с функцией .height() kos0760 Элементы интерфейса 2 24.05.2017 23:51
помогите разобраться с this uroboros7 jQuery 4 02.01.2015 00:56
Помогите разобраться с калькулятором Maksim858 Ваши сайты и скрипты 1 27.12.2014 13:23
Получение ответа сервера через iframe и xhr. Помогите разобраться. Arconas AJAX и COMET 0 26.02.2013 10:38
помогите написать аналог строки include("index.php?open=1") на js bushstas Общие вопросы Javascript 1 19.07.2009 02:48