#ifndef Wagnis_Player_h #define Wagnis_Player_h #include "OrxonoxPrereqs.h" #include "core/CoreIncludes.h" #include "core/XMLPort.h" #include "WagnisProvince.h" #include "WagnisGameboard.h" #include #include enum MoveType { ATTACK, MOVE, SET_TROOPS, SET_TROOPS_INITIAL }; namespace orxonox { class WagnisPlayer : public BaseClass { public: WagnisPlayer(Context*,WagnisGameboard*); virtual ~WagnisPlayer(); void playerTurn(); bool checkMove(WagnisProvince*,WagnisProvince*,MoveType); void setTroops(WagnisProvince*); void attack(WagnisProvince*,WagnisProvince*); void moveTroops(WagnisProvince*,WagnisProvince*); std::string toString(); private: int Player_ID; WagnisGameboard* gameBoard; WagnisProvince* origin; WagnisProvince* target; bool isNeighbour(WagnisProvince*,WagnisProvince*); bool existPath(WagnisProvince*,WagnisProvince*); }; } #endif