Eile Mit Weile
Loading...
Searching...
No Matches
HomeField.hpp
1#ifndef EILEMITWEILE_HOMEFIELD_HPP
2#define EILEMITWEILE_HOMEFIELD_HPP
3#include "common/gameState/board/Figure.hpp"
4#include <vector>
5#include "Space.hpp"
6
15class HomeField: public Space {
16 public:
17 HomeField(unsigned int space_idx, unsigned color_idx);
18 [[nodiscard]] unsigned int GetColorIdx() const;
20 [[nodiscard]] unsigned int GetTypeOfSpace() const override;
22 static HomeField* FromJson(const rapidjson::Value& json);
23 void WriteIntoJson(rapidjson::Value& json, rapidjson::Document::AllocatorType& allocator) const override;
24 unsigned AddFigure(Figure* figure) override;
26 private:
27 unsigned _color_idx;
28 HomeField(std::string id, unsigned int space_idx, unsigned int color_idx, std::vector<Figure *> figures);
29};
30#endif //EILEMITWEILE_HOMEFIELD_HPP
Represents a figure on the board.
Definition Figure.hpp:16
Represents a home space on the board.
Definition HomeField.hpp:15
unsigned int GetTypeOfSpace() const override
Definition HomeField.cpp:19
void WriteIntoJson(rapidjson::Value &json, rapidjson::Document::AllocatorType &allocator) const override
Definition HomeField.cpp:41
unsigned AddFigure(Figure *figure) override
Definition HomeField.cpp:48
static HomeField * FromJson(const rapidjson::Value &json)
Definition HomeField.cpp:27
unsigned int GetColorIdx() const
Definition HomeField.cpp:23
unsigned _color_idx
Definition HomeField.hpp:27
HomeField(unsigned int space_idx, unsigned color_idx)
HomeField(std::string id, unsigned int space_idx, unsigned int color_idx, std::vector< Figure * > figures)
Abstract Base Class. Represents a space on the board.
Definition Space.hpp:28