about summary refs log tree commit diff stats
path: root/ap_state.h
diff options
context:
space:
mode:
authorStar Rauchenberger <fefferburbia@gmail.com>2023-05-02 21:00:00 -0400
committerStar Rauchenberger <fefferburbia@gmail.com>2023-05-02 21:00:00 -0400
commit1ec273825497fd6feda19079fa8006096777b11d (patch)
tree6b705070cde43de5dbf167f636bd13428e26b3a0 /ap_state.h
parenta3eaefcd38f5f92dc342a2a43d37b6571d2a7a6d (diff)
downloadlingo-ap-tracker-1ec273825497fd6feda19079fa8006096777b11d.tar.gz
lingo-ap-tracker-1ec273825497fd6feda19079fa8006096777b11d.tar.bz2
lingo-ap-tracker-1ec273825497fd6feda19079fa8006096777b11d.zip
Support door shuffle
Diffstat (limited to 'ap_state.h')
-rw-r--r--ap_state.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/ap_state.h b/ap_state.h index d818b40..d815f93 100644 --- a/ap_state.h +++ b/ap_state.h
@@ -11,7 +11,7 @@
11#include "game_data.h" 11#include "game_data.h"
12#include "tracker_frame.h" 12#include "tracker_frame.h"
13 13
14enum class DoorShuffleMode { kNone, kSimple, kComplex }; 14enum DoorShuffleMode { kNO_DOORS = 0, kSIMPLE_DOORS = 1, kCOMPLEX_DOORS = 2 };
15 15
16class APState { 16class APState {
17 public: 17 public:
@@ -27,6 +27,8 @@ class APState {
27 27
28 bool HasColorItem(LingoColor color) const; 28 bool HasColorItem(LingoColor color) const;
29 29
30 bool HasItem(const std::string& item) const;
31
30 DoorShuffleMode GetDoorShuffleMode() const { return door_shuffle_mode_; } 32 DoorShuffleMode GetDoorShuffleMode() const { return door_shuffle_mode_; }
31 33
32 bool IsColorShuffle() const { return color_shuffle_; } 34 bool IsColorShuffle() const { return color_shuffle_; }
@@ -46,11 +48,10 @@ class APState {
46 std::set<int64_t> checked_locations_; 48 std::set<int64_t> checked_locations_;
47 49
48 std::map<std::tuple<int, int>, int64_t> ap_id_by_location_id_; 50 std::map<std::tuple<int, int>, int64_t> ap_id_by_location_id_;
49 std::map<int, int64_t> ap_id_by_door_id_; 51 std::map<std::string, int64_t> ap_id_by_item_name_;
50 std::map<int, int64_t> ap_id_by_door_group_id_;
51 std::map<LingoColor, int64_t> ap_id_by_color_; 52 std::map<LingoColor, int64_t> ap_id_by_color_;
52 53
53 DoorShuffleMode door_shuffle_mode_ = DoorShuffleMode::kNone; 54 DoorShuffleMode door_shuffle_mode_ = kNO_DOORS;
54 bool color_shuffle_ = false; 55 bool color_shuffle_ = false;
55}; 56};
56 57