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 {}; |