From bff40e55c9c55fbc8439bb225d1937b2d805e629 Mon Sep 17 00:00:00 2001 From: jbzdarkid Date: Mon, 18 Nov 2019 09:16:16 -0800 Subject: Cleanup & progress on tutorial --- Source/PuzzlerSerializer.h | 62 ---------------------------------------------- 1 file changed, 62 deletions(-) delete mode 100644 Source/PuzzlerSerializer.h (limited to 'Source/PuzzlerSerializer.h') diff --git a/Source/PuzzlerSerializer.h b/Source/PuzzlerSerializer.h deleted file mode 100644 index d9b9edd..0000000 --- a/Source/PuzzlerSerializer.h +++ /dev/null @@ -1,62 +0,0 @@ -#pragma once -#include -#include - -#include "Puzzle.h" - -class Memory; - -class PuzzleSerializer { -public: - PuzzleSerializer(const std::shared_ptr& memory); - Puzzle ReadPuzzle(int id); - void WritePuzzle(const Puzzle& p, int id); - -private: - // @Bug: Blue and orange are swapped? - enum Flags { - IS_ENDPOINT = 0x1, - IS_STARTPOINT = 0x2, - HAS_NO_CONN = 0x8, - HAS_DOT = 0x20, - DOT_IS_BLUE = 0x100, - DOT_IS_ORANGE = 0x200, - DOT_IS_INVISIBLE = 0x1000, - HAS_ONE_CONN = 0x100000, - HAS_VERTI_CONN = 0x200000, - HAS_HORIZ_CONN = 0x400000, - }; - - void ReadIntersections(Puzzle& p); - void ReadExtras(Puzzle& p); - void ReadDecorations(Puzzle& p, int id); - void ReadSequence(Puzzle& p, int id); - - void WriteIntersections(const Puzzle& p); - void WriteDots(const Puzzle& p); - void WriteGaps(const Puzzle& p); - void WriteEndpoints(const Puzzle& p); - void WriteDecorations(const Puzzle& p, int id); - void WriteSequence(const Puzzle& p, int id); - - std::tuple loc_to_xy(const Puzzle& p, int location) const; - int xy_to_loc(const Puzzle& p, int x, int y) const; - // Decoration location - std::tuple dloc_to_xy(const Puzzle& p, int location) const; - int xy_to_dloc(const Puzzle& p, int x, int y) const; - // Grid coordinates - std::tuple xy_to_pos(const Puzzle& p, int x, int y) const; - Cell::Dot FlagsToDot(int flags) const; - // Iterate connection lists for another location which is connected to us; return that other location. - int FindConnection(int location) const; - - std::shared_ptr _memory; - - std::vector _intersectionLocations; - std::vector _intersectionFlags; - std::vector _connectionsA; - std::vector _connectionsB; - std::vector> _endpointLocations; - - float MIN, MAX, WIDTH_INTERVAL, HEIGHT_INTERVAL, HORIZ_GAP_SIZE, VERTI_GAP_SIZE; -}; -- cgit 1.4.1