Тетрис На Javascript (30+ Строк)

Решил поддержать тему!

Тетрис на javascript (30+ строк)

Тетрис в более чем 30 строках js-кода.

  • Знает все части Тетриса.

  • Управление с клавиатуры
  • ВВЕРХ – цифры вращаются по часовой стрелке
  • ВНИЗ - ускорить падение
  • Скорость падения постепенно увеличивается
  • Очки засчитываются
ссылка на jsfiddle Принцип действия.

1. Получаем цифры Все цифры хранятся в переменной fs="1111:01|01|01|01*011|110:010|011|001*.

" в виде строки.

Чтобы получить массив фигур, мы делаем Split('*'), тогда каждая фигура имеет от 1 (для «палки») до 4 (для L, G и «пирамиды») состояний (чтобы их можно было переворачивать).

) — они разделяются знаком «:» — соответственно для получения одного состояния — Split(':').

Допустим, у нас получилась «пирамида» — «010|111», здесь мы делаем разбиение('|') — и получаем итоговый двумерный массив для одного состояния одной фигуры.

«0» — пустое место (рисовать не нужно), «1» — рисовать.

2. Все перемещение фигур осуществляется двумя функциями – «стереть фигуру» и «попробовать построить».

При любых движениях вправо-влево или вниз, а то и перевороте фигуры - сначала стираем отображаемую в данный момент фигуру, затем пытаемся построить фигуру на новом месте - если при построении один из квадратов вылезает за край «стакан», либо оказывается в месте, где уже есть закрашенный квадрат из предыдущих фигур – стираем «активную фигуру» и ставим ее на предыдущее место.

3. Движения производятся с клавиатуры.

Таймер просто вызывает функцию, которая обрабатывает нажатия клавиатуры с кодом кнопки ВНИЗ.

Каждый раз, когда вызывается таймаут, время до вызова уменьшается.

4. Если не удалось переместить фигуру вниз, значит, она попала в предыдущие фигуры или в дно.

В этом случае мы проверяем, есть ли заполненные линии, и рисуем новую фигуру вверху стакана.

Если вам не удастся нарисовать фигуру наверху стакана, игра окончена! Теги: #JavaScript #Дурацкое программирование #Разработка веб-сайтов #JavaScript

Вместе с данным постом часто просматривают: