Я не любитель видеоигр. Последней игрой, в которую я (охотно) играл, была Mario Kart для Nintendo 64 в начальной школе. Думаю, я упустил возможность пролить слезы над старшими братьями и сестрами, отключившими вашу консоль прямо на краю пропасти.

Однако на этой неделе я сделал обнаружил, насколько чертовски круты игры для обучения программированию.

Краткий обзор моего внутреннего монолога на этой неделе:

  1. Почему я ничего не вижу на странице?
  2. Что, вы имеете в виду, что DOMDisplay не определен ?? Буквально правильно. там.
  3. Почему мой персонаж движется так, будто у него под задницей ракета ??
  4. Клянусь, я ничего не менял. Почему сейчас работает ?? Не трогай, Камила. Не трогай его.

На этой неделе я боролся с тем, чтобы чувствовать себя хорошо, не зная всего. Моя игра-платформер была построена по принципу туториала. Там было много кода и подробные объяснения, но я не чувствовал себя комфортно из-за того, насколько я знал, что не смог бы реализовать эту игру самостоятельно.

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

Все сказано - я понял ~ 80% моего кода, что на 100% больше, чем я понял в понедельник. Мне нужно быть добрым к себе.

Вот несколько самородков, которые я вынес на этой неделе:

  1. ES6 значительно упрощает мне разделение мыслей и следование игровой логике. Возможность видеть классы с четко организованными объявлениями методов - это просто рай. Несмотря на то, что в этом руководстве использовался синтаксис ES5, я планирую через несколько недель провести рефакторинг этого проекта с использованием ES6, чтобы увидеть, не смогу ли я глубже понять некоторую логику.
  2. Мне нужно еще раз изучить .appendChild(). Он часто использовался в коде учебника, и я хочу быть уверенным, что у меня есть четкое представление о нем.
  3. Реализация игрового движения - это тонна проб и ошибок. Отсюда и вышеупомянутое «почему мой персонаж движется, как будто у него под задницей ракета ???». Требуется множество попыток, чтобы персонажи двигались в логичном и плавном темпе, имитируя «гравитацию», когда они падают с платформы на платформу.
  4. Меня на 100% больше не пугает необходимость соединять файлы HTML, CSS и JavaScript вместе. Не знаю, почему эта задача всегда казалась мне сложной. Я счастлив, что эту компетенцию проверили.