1
0

feat: add new 2 rules for BMapInspector

This commit is contained in:
2026-02-20 16:00:00 +08:00
parent d31a98a859
commit 8dbce47d8a
8 changed files with 277 additions and 18 deletions

View File

@@ -1,13 +1,44 @@
#include "Shared.hpp"
#include <yycc.hpp>
#include <yycc/string/op.hpp>
#include <yycc/carton/termcolor.hpp>
#include <filesystem>
#include <stdexcept>
#include <cmath>
namespace strop = yycc::string::op;
namespace termcolor = yycc::carton::termcolor;
namespace BMapInspector::Rule::Shared {
#pragma region Utility Classes
#pragma region Sector Name Builder
SectorNameBuilder::SectorNameBuilder() {}
SectorNameBuilder::~SectorNameBuilder() {}
SectorName SectorNameBuilder::get_name(L::CKDWORD sector) const {
if (sector < MIN_SECTOR || sector > MAX_SECTOR) {
throw std::logic_error("invalid sector number");
} else {
if (sector < 9) {
return strop::printf(u8"Sector_%02" PRIuCKDWORD, sector);
} else {
return strop::printf(u8"Sector_%" PRIuCKDWORD, sector);
}
}
}
Sector9Names SectorNameBuilder::get_sector9_names() const {
return Sector9Names{.legacy_name = u8"Sector_9", .intuitive_name = u8"Sector_09"};
}
#pragma endregion
#pragma endregion
#pragma region Check Functions
bool FPEqual(L::CKFLOAT lhs, L::CKFLOAT rhs, L::CKFLOAT tolerance) {