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.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/game_data.h b/src/game_data.h index 31a1e78..ac911e5 100644 --- a/src/game_data.h +++ b/src/game_data.h
@@ -57,6 +57,7 @@ struct Panel {
57 int ap_location_id = -1; 57 int ap_location_id = -1;
58 bool hunt = false; 58 bool hunt = false;
59 int panel_door = -1; 59 int panel_door = -1;
60 int solve_index = -1;
60}; 61};
61 62
62struct ProgressiveRequirement { 63struct ProgressiveRequirement {
@@ -85,10 +86,10 @@ struct Door {
85}; 86};
86 87
87struct PanelDoor { 88struct PanelDoor {
88 int room;
89 int ap_item_id = -1; 89 int ap_item_id = -1;
90 int group_ap_item_id = -1; 90 int group_ap_item_id = -1;
91 std::vector<ProgressiveRequirement> progressives; 91 std::vector<ProgressiveRequirement> progressives;
92 std::string item_name;
92}; 93};
93 94
94struct Exit { 95struct Exit {
@@ -102,8 +103,10 @@ struct PaintingExit {
102 int id; 103 int id;
103 int room; 104 int room;
104 std::string internal_id; 105 std::string internal_id;
106 std::string display_name;
105 std::optional<int> door; 107 std::optional<int> door;
106 bool entrance = false; 108 bool entrance = false;
109 int map_area;
107}; 110};
108 111
109struct Room { 112struct Room {
@@ -154,8 +157,9 @@ struct SubwayItem {
154 int id; 157 int id;
155 int x; 158 int x;
156 int y; 159 int y;
160 bool tilted = false;
157 std::optional<int> door; 161 std::optional<int> door;
158 std::vector<std::string> paintings; 162 std::optional<std::string> painting;
159 std::vector<std::string> tags; // 2-way teleports 163 std::vector<std::string> tags; // 2-way teleports
160 std::vector<std::string> entrances; // teleport entrances 164 std::vector<std::string> entrances; // teleport entrances
161 std::vector<std::string> exits; // teleport exits 165 std::vector<std::string> exits; // teleport exits
@@ -173,7 +177,9 @@ const std::vector<Door>& GD_GetDoors();
173const Door& GD_GetDoor(int door_id); 177const Door& GD_GetDoor(int door_id);
174int GD_GetDoorByName(const std::string& name); 178int GD_GetDoorByName(const std::string& name);
175const Panel& GD_GetPanel(int panel_id); 179const Panel& GD_GetPanel(int panel_id);
180int GD_GetPanelBySolveIndex(int solve_index);
176const PanelDoor& GD_GetPanelDoor(int panel_door_id); 181const PanelDoor& GD_GetPanelDoor(int panel_door_id);
182const std::vector<PaintingExit>& GD_GetPaintings();
177const PaintingExit& GD_GetPaintingExit(int painting_id); 183const PaintingExit& GD_GetPaintingExit(int painting_id);
178int GD_GetPaintingByName(const std::string& name); 184int GD_GetPaintingByName(const std::string& name);
179const std::vector<int>& GD_GetAchievementPanels(); 185const std::vector<int>& GD_GetAchievementPanels();
@@ -184,5 +190,8 @@ const std::vector<SubwayItem>& GD_GetSubwayItems();
184const SubwayItem& GD_GetSubwayItem(int id); 190const SubwayItem& GD_GetSubwayItem(int id);
185std::optional<int> GD_GetSubwayItemForPainting(const std::string& painting_id); 191std::optional<int> GD_GetSubwayItemForPainting(const std::string& painting_id);
186int GD_GetSubwayItemForSunwarp(const SubwaySunwarp& sunwarp); 192int GD_GetSubwayItemForSunwarp(const SubwaySunwarp& sunwarp);
193std::string GD_GetItemName(int id);
194
195LingoColor GetLingoColorForString(const std::string& str);
187 196
188#endif /* end of include guard: GAME_DATA_H_9C42AC51 */ 197#endif /* end of include guard: GAME_DATA_H_9C42AC51 */