Game.h 786 B

123456789101112131415161718192021222324252627282930313233343536
  1. #ifndef GAME_H
  2. #define GAME_H
  3. #include "String.h"
  4. #include "Types.h"
  5. class Game final {
  6. public:
  7. enum FieldState {
  8. BLACK, WHITE, EMPTY
  9. };
  10. Game();
  11. void reset(String& output);
  12. void parse(const String& input, String& output);
  13. private:
  14. bool isDigit(char c) const;
  15. void reset();
  16. void print(String& s) const;
  17. void printLine(String& s, int index) const;
  18. void markActive(int x, int y, String& output);
  19. void move(int x, int y, String& output);
  20. void removeLine(int x, int y, int x2, int y2, FieldState remove);
  21. void revertToSelection(String& output);
  22. bool areNeighbours(int x, int y, int x2, int y2) const;
  23. void botMove(String& output);
  24. FieldState fields[9][5];
  25. int activeX;
  26. int activeY;
  27. };
  28. #endif