🚀 Обучение программированию в виде онлайн игры: курс Full-Stack JavaScript 💪

Задача #250, Этап #13 - Золотая Шахта

Дальше, мы улучшим UX с помощью отображения текущего списка производителей. Реализуй функцию updateProducerList(term, state) в functions.js Она должна вывести список производителей на экран, каждый с новой строки, начиная на строке 5....

August 15, 2020 · 1 мин · Coderslang Master

Задача #250, Этап #14 - Золотая Шахта

Ух ты! Предыдущий этап должен был быть сложным, но ты сделал это! У нас осталось еще немного работы, но ты справляешься отлично! Для пользователя было бы очень удобно видеть текущую производительность его золотодобывающей империи....

August 15, 2020 · 1 мин · Coderslang Master

Задача #250, Этап #15 - Золотая Шахта

Ты мог заметить, что у нас иногда возникают проблемы с отображением чисел в нашей игре. Иногда, у чисел появляются длинные хвосты после запятой. А бывает, что числа становятся настолько большими, что сложно понять, миллионы это или миллиарды....

August 15, 2020 · 1 мин · Coderslang Master

Задача #250, Этап #16 - Золотая Шахта

Сейчас, мы обновляем UI раз в секунду. Это нормально, но игра смотрелась бы лучше, если бы обновление было чаще. Например, в 10 раз. Ты должен будешь внести изменения в нескольких местах....

August 15, 2020 · 1 мин · Coderslang Master

Задача #250, Этап #2 - Золотая Шахта

Наша игра будет взаимодействовать с пользователем двумя способами. Она будет перехватывать ввод с клавиатуры и печатать сообщения в консоль. Ты уже знаком с console.log, но в этот раз я советую использовать npm модуль terminal-kit....

August 15, 2020 · 1 мин · Coderslang Master

Задача #250, Этап #3 - Золотая Шахта

Итак, ты уже экспортировал константу term, которая даст нам контроль над терминалом. Давай воспользуемся ей! Создай файл functions.js и экспортируй из него функцию init. init должна принимать один параметр term....

August 15, 2020 · 1 мин · Coderslang Master

Задача #250, Этап #4 - Золотая Шахта

Поздравляю с прохождением третьего этапа! Тебе может показаться, что мы сделали слишком много действий, создали 4 файла, добавили новый модуль, а в результате выводим только одну строку на экран… Это, конечно, жаль, но в итоге код будет логично структурирован,...

August 15, 2020 · 1 мин · Coderslang Master

Задача #250, Этап #5 - Золотая Шахта

Теперь, давай поработаем над функцией, которая будет использована, когда пользователь нажмет на кнопку G на клавиатуре. Создай и экспортируй функцию handleKeyPress(term, state) в файле handlers.js. handleKeyPress, должна вернуть другую функцию, другими словами замыкание....

August 15, 2020 · 1 мин · Coderslang Master

Задача #250, Этап #6 - Золотая Шахта

Обработчик готов, теперь мы должны соединить его с событием нажатия клавиши. Но сначала улучшим функцию init. Она принимает один параметр и должна вызвать у него методы: clear(), чтобы очистить экран hideCursor(), чтобы спрятать курсор grabInput(), чтобы обрабатывать нажатия клавиш Внутри функции startMiningGame, после вызова init, вызови функцию term....

August 15, 2020 · 1 мин · Coderslang Master

Задача #250, Этап #7 - Золотая Шахта

Итак, мы можем копать золото нажимая на клавишу ‘G’. Давай выведем результат наших действий на экран. Реализуй и экспортируй функцию updateGold(term, state) из functions.js Она должна переместить нас на координаты (25, 2), стереть остаток строки и вывести значение поля state....

August 15, 2020 · 1 мин · Coderslang Master