#ifndef GAME_STATE_H #define GAME_STATE_H #include #include #include #include enum class Scene { Menu, Playing, }; constexpr int MENU_ITEM_COUNT = 3; struct GameState { volatile uint16_t ticks = 0; volatile uint16_t snakelength = 0; volatile uint16_t snakeDirection = 1; volatile uint16_t score = 0; volatile uint16_t applesEaten = 0; bool gameOver = false; bool paused = false; bool hardMode = false; Scene scene = Scene::Menu; int menuSelection = 0; uint16_t curseTicksRemaining = 0; std::deque> snake; std::vector> apples; std::vector> bad_apples; std::vector> cursed_apples; }; #endif