initial monopoly test
This commit is contained in:
47
games/monopoly/monopoly_game.h
Normal file
47
games/monopoly/monopoly_game.h
Normal file
@@ -0,0 +1,47 @@
|
||||
// ============================================================================
|
||||
// MONOPOLY GAME HEADER
|
||||
// ============================================================================
|
||||
// Concrete implementation of the Game interface for Monopoly
|
||||
|
||||
#ifndef MONOPOLY_GAME_H
|
||||
#define MONOPOLY_GAME_H
|
||||
|
||||
#include "../../lib/game.h"
|
||||
#include "player.h"
|
||||
#include "monopoly_board.h"
|
||||
#include "chance.h"
|
||||
#include "community_chest.h"
|
||||
|
||||
/**
|
||||
* @brief Monopoly game implementation for the custom console
|
||||
*
|
||||
* - Button/touch input for actions
|
||||
* - Board and player state
|
||||
* - Rendering and input handling
|
||||
*/
|
||||
class MonopolyGame : public Game {
|
||||
public:
|
||||
MonopolyGame(uint16_t width, uint16_t height, LowLevelRenderer* renderer, LowLevelGUI* gui, InputManager* input_manager);
|
||||
void init() override;
|
||||
bool update(const InputEvent& event) override;
|
||||
void draw() override;
|
||||
|
||||
private:
|
||||
// Game state and helpers
|
||||
Player players[MAX_PLAYERS];
|
||||
int players_count;
|
||||
int current_player_idx;
|
||||
bool has_rolled;
|
||||
int double_rolls;
|
||||
bool just_sent_to_jail;
|
||||
|
||||
// UI selection state
|
||||
int selected_action; // 0: Roll, 1: Buy, 2: End Turn
|
||||
static constexpr int ACTION_COUNT = 3;
|
||||
|
||||
// Modal property window state
|
||||
bool show_property_modal = false;
|
||||
int modal_property_index = -1;
|
||||
};
|
||||
|
||||
#endif // MONOPOLY_GAME_H
|
||||
Reference in New Issue
Block a user