diff options
Diffstat (limited to 'Source/Panel.cpp')
| -rw-r--r-- | Source/Panel.cpp | 16 |
1 files changed, 2 insertions, 14 deletions
| diff --git a/Source/Panel.cpp b/Source/Panel.cpp index c0fb7ec..ea65142 100644 --- a/Source/Panel.cpp +++ b/Source/Panel.cpp | |||
| @@ -12,8 +12,7 @@ int find(const std::vector<T> &data, T search, size_t startIndex = 0) { | |||
| 12 | return -1; | 12 | return -1; |
| 13 | } | 13 | } |
| 14 | 14 | ||
| 15 | Panel::Panel(int id) { | 15 | Panel::Panel(const std::shared_ptr<Memory>& memory, int id) : _memory(memory) { |
| 16 | _memory = std::make_shared<Memory>("witness64_d3d11.exe"); | ||
| 17 | _width = 2 * _memory->ReadPanelData<int>(id, GRID_SIZE_X, 1)[0] - 1; | 16 | _width = 2 * _memory->ReadPanelData<int>(id, GRID_SIZE_X, 1)[0] - 1; |
| 18 | _height = 2 * _memory->ReadPanelData<int>(id, GRID_SIZE_Y, 1)[0] - 1; | 17 | _height = 2 * _memory->ReadPanelData<int>(id, GRID_SIZE_Y, 1)[0] - 1; |
| 19 | _grid.resize(_width); | 18 | _grid.resize(_width); |
| @@ -45,7 +44,7 @@ nlohmann::json Panel::Serialize() { | |||
| 45 | for (int x=0; x<_width; x++) { | 44 | for (int x=0; x<_width; x++) { |
| 46 | for (int y=0; y<_height; y++) { | 45 | for (int y=0; y<_height; y++) { |
| 47 | if (x%2 == 1 && y%2 == 1) { | 46 | if (x%2 == 1 && y%2 == 1) { |
| 48 | puzzle["grid"][x][y] = Decoration::to_json(_grid[x][y]); | 47 | puzzle["grid"][x][y] = Decoration_to_json(_grid[x][y]); |
| 49 | } else { | 48 | } else { |
| 50 | if (_grid[x][y] & IntersectionFlags::HAS_DOT) { | 49 | if (_grid[x][y] & IntersectionFlags::HAS_DOT) { |
| 51 | puzzle["dots"].emplace_back(nlohmann::json({{"x", x}, {"y", y}})); | 50 | puzzle["dots"].emplace_back(nlohmann::json({{"x", x}, {"y", y}})); |
| @@ -69,17 +68,6 @@ nlohmann::json Panel::Serialize() { | |||
| 69 | return puzzle; | 68 | return puzzle; |
| 70 | } | 69 | } |
| 71 | 70 | ||
| 72 | void Panel::Random() { | ||
| 73 | /* | ||
| 74 | for (auto& row : _decorations) { | ||
| 75 | for (auto& cell : row) { | ||
| 76 | cell.SetShape(cell.GetShape() & 0xFFFFFFF0); | ||
| 77 | cell.SetShape(cell.GetShape() | Random::RandInt(1, 10)); | ||
| 78 | } | ||
| 79 | } | ||
| 80 | */ | ||
| 81 | } | ||
| 82 | |||
| 83 | void Panel::ReadDecorations(int id) { | 71 | void Panel::ReadDecorations(int id) { |
| 84 | int numDecorations = _memory->ReadPanelData<int>(id, NUM_DECORATIONS, 1)[0]; | 72 | int numDecorations = _memory->ReadPanelData<int>(id, NUM_DECORATIONS, 1)[0]; |
| 85 | std::vector<int> decorations = _memory->ReadArray<int>(id, DECORATIONS, numDecorations); | 73 | std::vector<int> decorations = _memory->ReadArray<int>(id, DECORATIONS, numDecorations); |
