diff options
Diffstat (limited to 'Source/Puzzle.h')
| -rw-r--r-- | Source/Puzzle.h | 25 |
1 files changed, 13 insertions, 12 deletions
| diff --git a/Source/Puzzle.h b/Source/Puzzle.h index fdf51be..962874e 100644 --- a/Source/Puzzle.h +++ b/Source/Puzzle.h | |||
| @@ -38,25 +38,26 @@ struct Decoration { | |||
| 38 | }; | 38 | }; |
| 39 | 39 | ||
| 40 | struct Cell { | 40 | struct Cell { |
| 41 | inline static Cell Undefined() { | ||
| 42 | Cell c; | ||
| 43 | c.undefined = true; | ||
| 44 | return c; | ||
| 45 | } | ||
| 46 | bool undefined = false; | ||
| 47 | |||
| 48 | bool start = false; | ||
| 49 | enum class Dir {NONE, LEFT, RIGHT, UP, DOWN}; | ||
| 50 | Dir end = Dir::NONE; | ||
| 51 | std::shared_ptr<Decoration> decoration = nullptr; | ||
| 52 | enum class Dot {NONE, BLACK, BLUE, YELLOW, INVISIBLE}; | 41 | enum class Dot {NONE, BLACK, BLUE, YELLOW, INVISIBLE}; |
| 53 | Dot dot = Dot::NONE; | 42 | Dot dot = Dot::NONE; |
| 54 | enum class Gap {NONE, BREAK, FULL}; | 43 | enum class Gap {NONE, BREAK, FULL}; |
| 55 | Gap gap = Gap::NONE; | 44 | Gap gap = Gap::NONE; |
| 56 | |||
| 57 | // Line color | 45 | // Line color |
| 58 | enum class Color {NONE, BLACK, BLUE, YELLOW}; | 46 | enum class Color {NONE, BLACK, BLUE, YELLOW}; |
| 59 | Color color = Color::NONE; | 47 | Color color = Color::NONE; |
| 48 | |||
| 49 | std::shared_ptr<Decoration> decoration = nullptr; | ||
| 50 | |||
| 51 | bool start = false; | ||
| 52 | enum class Dir {NONE, LEFT, RIGHT, UP, DOWN}; | ||
| 53 | Dir end = Dir::NONE; | ||
| 54 | |||
| 55 | inline static Cell Undefined() { | ||
| 56 | Cell c; | ||
| 57 | c.undefined = true; | ||
| 58 | return c; | ||
| 59 | } | ||
| 60 | bool undefined = false; | ||
| 60 | }; | 61 | }; |
| 61 | 62 | ||
| 62 | struct Negation {}; | 63 | struct Negation {}; |
