30 lines
679 B
C++
30 lines
679 B
C++
//
|
|
// Created by sebastian on 02.08.26.
|
|
//
|
|
|
|
#ifndef COLORRACE_LUDOGAMESTATE_H
|
|
#define COLORRACE_LUDOGAMESTATE_H
|
|
#include <vector>
|
|
|
|
#include "LudoTypes.h"
|
|
#include "game/GameState.h"
|
|
|
|
|
|
namespace ludo {
|
|
class LudoGameState: public engine::GameState {
|
|
public:
|
|
[[nodiscard]] const std::vector<Piece> &getPieces() const;
|
|
[[nodiscard]] int getDiceValue() const;
|
|
[[nodiscard]] TurnPhase getPhase() const;
|
|
private:
|
|
friend class LudoGameMode;
|
|
std::vector<Piece> m_pieces;
|
|
int m_diceValue = 0;
|
|
TurnPhase m_phase = TurnPhase::AwaitingRoll;
|
|
int m_consecutiveSixes = 0;
|
|
};
|
|
|
|
}
|
|
|
|
#endif //COLORRACE_LUDOGAMESTATE_H
|