Civilization
RuleArgsStruct.hpp
1 // Generated by dia2code
2 #ifndef SHARED__RULEARGSSTRUCT__H
3 #define SHARED__RULEARGSSTRUCT__H
4 
5 #include <memory>
6 #include <array>
7 #include <vector>
8 #include <string>
9 #include <boost/serialization/access.hpp>
10 #include <boost/serialization/vector.hpp>
11 
12 namespace shared {
13  class Player;
14  class Map;
15 }
16 
17 #include "CardsEnum.hpp"
18 #include "Player.hpp"
19 #include "Map.hpp"
20 #include "ResourceEnum.hpp"
21 
22 namespace shared {
23 
26  // Attributes
27  public:
28  CardsEnum ruleId = CardsEnum::notDefine;
29  std::shared_ptr<Player> currentPlayer;
30  unsigned numberOfBoxUsed = 0;
31  std::shared_ptr<Map> gameMap;
32  std::vector<std::array<unsigned,2>> caravanMovementPath = {};
33  ResourceEnum resourceToGet = ResourceEnum::notDefine;
34  CardsEnum cardToGetABox = CardsEnum::notDefine;
35  std::array<unsigned,2> positionToNuke = {0,0};
36  std::vector<std::array<unsigned, 2>> pawnsPositions = {};
37  bool militaryCardAttack = false;
38  bool industryCardBuildWonder = false;
39  std::array<unsigned, 2> positionOfWonder = {0,0};
40  std::array<unsigned,2> positionOfCity = {0,0};
41  std::vector<CardsEnum> cardsToImprove = {};
42  std::string playerName = "notDefine";
43  private:
44  friend class boost::serialization::access ;
45  // Operations
46  private:
47  template <class Archive> void serialize (Archive & ar, const unsigned int version);
48  // Setters and Getters
49  };
50 
51 };
52 
53 #endif
class RuleArgsStruct -
Definition: RuleArgsStruct.hpp:25