about summary refs log tree commit diff stats
path: root/src/game_data.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/game_data.h')
-rw-r--r--src/game_data.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/game_data.h b/src/game_data.h index 8a38264..2c18588 100644 --- a/src/game_data.h +++ b/src/game_data.h
@@ -23,6 +23,14 @@ constexpr int kLOCATION_NORMAL = 1;
23constexpr int kLOCATION_REDUCED = 2; 23constexpr int kLOCATION_REDUCED = 2;
24constexpr int kLOCATION_INSANITY = 4; 24constexpr int kLOCATION_INSANITY = 4;
25 25
26enum class EntranceType {
27 kNormal,
28 kPainting,
29 kSunwarp,
30 kWarp,
31 kPilgrimage,
32};
33
26struct Panel { 34struct Panel {
27 int id; 35 int id;
28 int room; 36 int room;
@@ -66,7 +74,7 @@ struct Door {
66struct Exit { 74struct Exit {
67 int destination_room; 75 int destination_room;
68 std::optional<int> door; 76 std::optional<int> door;
69 bool painting = false; 77 EntranceType type = EntranceType::kNormal;
70}; 78};
71 79
72struct PaintingExit { 80struct PaintingExit {
@@ -107,6 +115,7 @@ int GD_GetRoomByName(const std::string& name);
107const Room& GD_GetRoom(int room_id); 115const Room& GD_GetRoom(int room_id);
108const std::vector<Door>& GD_GetDoors(); 116const std::vector<Door>& GD_GetDoors();
109const Door& GD_GetDoor(int door_id); 117const Door& GD_GetDoor(int door_id);
118int GD_GetDoorByName(const std::string& name);
110const Panel& GD_GetPanel(int panel_id); 119const Panel& GD_GetPanel(int panel_id);
111int GD_GetRoomForPainting(const std::string& painting_id); 120int GD_GetRoomForPainting(const std::string& painting_id);
112const std::vector<int>& GD_GetAchievementPanels(); 121const std::vector<int>& GD_GetAchievementPanels();