2026-02-02 22:26:41 +08:00
|
|
|
#pragma once
|
|
|
|
|
#include "../Rule.hpp"
|
|
|
|
|
|
|
|
|
|
namespace BMapInspector::Rule {
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief Gamepiaynmo Rule 1
|
|
|
|
|
* @details
|
|
|
|
|
* The most comprehensive group checker inspired from Ballance Blender Plugin.
|
|
|
|
|
*/
|
2026-02-04 20:46:04 +08:00
|
|
|
class GpRule1 : public IRule {
|
2026-02-02 22:26:41 +08:00
|
|
|
public:
|
2026-02-04 20:46:04 +08:00
|
|
|
GpRule1();
|
|
|
|
|
virtual ~GpRule1();
|
|
|
|
|
YYCC_DELETE_COPY_MOVE(GpRule1)
|
2026-02-02 22:26:41 +08:00
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
std::u8string_view GetRuleName() const override;
|
2026-02-04 17:03:53 +08:00
|
|
|
void Check(Reporter::Reporter& reporter, Map::Level& level) const override;
|
2026-02-02 22:26:41 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief Gamepiaynmo Rule 2
|
|
|
|
|
* @details
|
2026-02-20 16:00:00 +08:00
|
|
|
* This rule will:
|
|
|
|
|
* \li Show how many sector located in given map.
|
|
|
|
|
* \li Check whether there is sector group.
|
|
|
|
|
* \li Check whether use intuitive sector name for sector 9.
|
|
|
|
|
* \li Warn for sector count is equal to 1. It will cause mosaic issue on the flames of checkpoint.
|
|
|
|
|
* \li Warn for sector count greater than 8. It will cause vanilla game freezed without 999 sector loader.
|
|
|
|
|
* \li Check whether sector group is successive.
|
2026-02-02 22:26:41 +08:00
|
|
|
*/
|
2026-02-04 20:46:04 +08:00
|
|
|
class GpRule2 : public IRule {
|
2026-02-02 22:26:41 +08:00
|
|
|
public:
|
2026-02-04 20:46:04 +08:00
|
|
|
GpRule2();
|
|
|
|
|
virtual ~GpRule2();
|
|
|
|
|
YYCC_DELETE_COPY_MOVE(GpRule2)
|
2026-02-02 22:26:41 +08:00
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
std::u8string_view GetRuleName() const override;
|
2026-02-04 17:03:53 +08:00
|
|
|
void Check(Reporter::Reporter& reporter, Map::Level& level) const override;
|
2026-02-02 22:26:41 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
}
|