1#ifndef YAZE_SRC_ZELDA3_DUNGEON_DUNGEON_LIMITS_H_
2#define YAZE_SRC_ZELDA3_DUNGEON_DUNGEON_LIMITS_H_
32inline constexpr int kNoHardLimit = std::numeric_limits<int>::max();
57 return "Tile Objects";
67 return "Special Doors";
69 return "Stairs (Transition)";
77 return "Somaria Line";
79 return "Stairs North";
81 return "Stairs South";
83 return "General Manipulable";
134 for (
const auto& [limit, count] : counts) {
139 if (count > max_val) {
148 const std::map<DungeonLimit, int>& counts) {
149 std::vector<DungeonLimitInfo> result;
150 for (
const auto& [limit, count] : counts) {
155 if (count > max_val) {
Zelda 3 specific classes and functions.
std::vector< DungeonLimitInfo > GetExceededLimits(const std::map< DungeonLimit, int > &counts)
constexpr int kNoHardLimit
constexpr size_t kMaxTileObjects
constexpr int GetDungeonLimitMax(DungeonLimit limit)
bool HasExceededLimits(const std::map< DungeonLimit, int > &counts)
constexpr size_t kMaxDoors
constexpr size_t kMaxActiveSprites
constexpr const char * GetDungeonLimitLabel(DungeonLimit limit)
std::map< DungeonLimit, int > CreateLimitCounter()
constexpr size_t kMaxChests
constexpr size_t kMaxTotalSprites