- SFML
mkdir build
cmake -B build
cd build
make
./slotAutomat
-
RenderHelper - класс, отвечающий за вывод всех графических элементов в окне
-
State - интерфейс для состояний.
-
StateMachine - машина состояний, хранит в себе вектор состояний (переход на следующее состояние происходит при установки finishStatus).
-
StartState - начальное состояние, ждёт нажатия кнопки "start".
-
SpinState - состояние вращения, имеет конструктор с параметрами времени (для таймера) и скорости. Проверяет нажатие кнопки "stop", обеспечивает рандомизацию слотов, проверяет слоты на выход за границы окна и устанавливает им позицию в начало, увеличивает счётчик времени.
-
StopState - состояние остановки. Проверяет нажатие кнопки "start" и попадание комбинации в границы (redLine). Также подсчитывает количество одинаковых слотов в комбинации. Сравнение текстур проводил с помощью индексов.
- После "stop" для вывода выигрыша надо нажать "start". Произойдёт увеличение счёта. Затем нажмите ещё раз "start" для запуска вращения барабанов. Первый клик делает переход от StopState в StartState, а второй - из StartState в SpinState.