50 lines
1.7 KiB
Python
50 lines
1.7 KiB
Python
from pathlib import Path
|
|
|
|
|
|
ROOT = Path(__file__).resolve().parents[1]
|
|
HUD_HEADER = ROOT / "Source" / "AgrarianGame" / "AgrarianDebugHUD.h"
|
|
HUD_SOURCE = ROOT / "Source" / "AgrarianGame" / "AgrarianDebugHUD.cpp"
|
|
CHARACTER_HEADER = ROOT / "Source" / "AgrarianGame" / "AgrarianGameCharacter.h"
|
|
|
|
|
|
EXPECTED_HUD_HEADER_SNIPPETS = [
|
|
"void DrawPlayerStatus(const class AAgrarianGameCharacter* AgrarianCharacter, float X, float& Y);",
|
|
]
|
|
|
|
EXPECTED_HUD_SOURCE_SNIPPETS = [
|
|
"#include \"GameFramework/CharacterMovementComponent.h\"",
|
|
"DrawPlayerStatus(AgrarianCharacter, X, Y);",
|
|
"void AAgrarianDebugHUD::DrawPlayerStatus",
|
|
"Role:",
|
|
"Location:",
|
|
"Speed:",
|
|
"Stance:",
|
|
"Move Mult:",
|
|
"Age %.1f | Cond %.2f | Str %.2f | End %.2f | Terrain %.2f",
|
|
]
|
|
|
|
EXPECTED_CHARACTER_HEADER_SNIPPETS = [
|
|
"float GetAgeYears() const",
|
|
"float GetPhysicalConditionMultiplier() const",
|
|
"float GetStrengthMultiplier() const",
|
|
"float GetEnduranceMultiplier() const",
|
|
"float GetTerrainMovementMultiplier() const",
|
|
]
|
|
|
|
|
|
def assert_contains(label, text, snippets):
|
|
missing = [snippet for snippet in snippets if snippet not in text]
|
|
if missing:
|
|
raise RuntimeError(f"{label} is missing expected debug overlay snippets: {missing}")
|
|
|
|
|
|
def main():
|
|
assert_contains("AgrarianDebugHUD.h", HUD_HEADER.read_text(encoding="utf-8"), EXPECTED_HUD_HEADER_SNIPPETS)
|
|
assert_contains("AgrarianDebugHUD.cpp", HUD_SOURCE.read_text(encoding="utf-8"), EXPECTED_HUD_SOURCE_SNIPPETS)
|
|
assert_contains("AgrarianGameCharacter.h", CHARACTER_HEADER.read_text(encoding="utf-8"), EXPECTED_CHARACTER_HEADER_SNIPPETS)
|
|
print("Agrarian player debug overlay verification complete.")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|