/Tetris

Primary LanguageC++

Тетрис

[N|Solid]

Описание возможностей приложения

Приложение написано с использованием библиотеки Qt 5.9, протестировано на ОС Windows,Ubuntu,Android. Есть возможность управления как клавиатурой, так и свайпами на телефоне. Приложение масштабируется под любой размер окна более 320*240. Есть возможность выбирать 9 уровней сложности(скорости падения), включать/выключать музыку, программа запоминает лучший счет.

[N|Solid

Логика работы приложения

Игровое поле представляет из себя массив, где хранятся цифры(0, если пусто, 1, если заполнено), соответствующие текущему состоянию игры. По таймеру, каждый шаг времени состояние меняется.

Отрисовка выполнена с использованием Qt Widgets(сцена в GraphicsView). Имитация свайпа происходит за счет вычисления разницы предыдущего нажатия пользователя и следующего, если разница в пискелях более 20, то определяется направление свайпа в зависимости от разницы по x и y координатам.