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.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/game_data.h b/src/game_data.h index cd09627..37d1eb3 100644 --- a/src/game_data.h +++ b/src/game_data.h
@@ -62,6 +62,7 @@ struct ProgressiveRequirement {
62}; 62};
63 63
64struct Door { 64struct Door {
65 int id;
65 int room; 66 int room;
66 std::string name; 67 std::string name;
67 std::string location_name; 68 std::string location_name;
@@ -118,6 +119,28 @@ struct MapArea {
118 bool hunt = false; 119 bool hunt = false;
119}; 120};
120 121
122enum class SubwaySunwarpType {
123 kEnter,
124 kExit,
125 kFinal
126};
127
128struct SubwaySunwarp {
129 int dots;
130 SubwaySunwarpType type;
131};
132
133struct SubwayItem {
134 int id;
135 int x;
136 int y;
137 std::optional<int> door;
138 std::vector<std::string> paintings;
139 std::vector<std::string> tags;
140 std::optional<SubwaySunwarp> sunwarp;
141 std::optional<std::string> special;
142};
143
121const std::vector<MapArea>& GD_GetMapAreas(); 144const std::vector<MapArea>& GD_GetMapAreas();
122const MapArea& GD_GetMapArea(int id); 145const MapArea& GD_GetMapArea(int id);
123int GD_GetRoomByName(const std::string& name); 146int GD_GetRoomByName(const std::string& name);
@@ -131,5 +154,7 @@ const std::vector<int>& GD_GetAchievementPanels();
131int GD_GetItemIdForColor(LingoColor color); 154int GD_GetItemIdForColor(LingoColor color);
132const std::vector<int>& GD_GetSunwarpDoors(); 155const std::vector<int>& GD_GetSunwarpDoors();
133int GD_GetRoomForSunwarp(int index); 156int GD_GetRoomForSunwarp(int index);
157const std::vector<SubwayItem>& GD_GetSubwayItems();
158const SubwayItem& GD_GetSubwayItem(int id);
134 159
135#endif /* end of include guard: GAME_DATA_H_9C42AC51 */ 160#endif /* end of include guard: GAME_DATA_H_9C42AC51 */