ThePowerOfTheRings/Hexagon.h

61 lines
1.4 KiB
C++

#ifndef HEXAGON_H
#define HEXAGON_H
#include<iostream>
#include "City.h"
#include "Ressource.h"
#include "Decoration.h"
class Hexagon {
private:
Hexagon* top_m;
Hexagon* top_right_m;
Hexagon* top_left_m;
Hexagon* bottom_right_m;
Hexagon* bottom_left_m;
Hexagon* bottom_m;
City city_m;
Ressource ressource_m;
Decoration decoration_m;
public:
// Constructors
Hexagon();
Hexagon(const City& city);
Hexagon(const Ressource& ressource);
Hexagon(const Decoration& decoration);
// Getters
Hexagon* getTop() const;
Hexagon* getTopRight() const;
Hexagon* getTopLeft() const;
Hexagon* getBottomRight() const;
Hexagon* getBottomLeft() const;
Hexagon* getBottom() const;
City getCity() const;
Ressource getRessource() const;
// Setters
void setTop(Hexagon* top);
void setTopRight(Hexagon* top_right);
void setTopLeft(Hexagon* top_left);
void setBottomRight(Hexagon* bottom_right);
void setBottomLeft(Hexagon* bottom_left);
void setBottom(Hexagon* bottom);
void setCity(City city);
void setRessource(Ressource ressource);
// Others
void printHexagon() const;
void printTopLeft() const;
void printTop() const;
void printTopRight() const;
void printBottomRight() const;
void printBottom() const;
void printBottomLeft() const;
void printAll() const;
};
#endif // HEXAGON_H