from pathlib import Path ROOT = Path(__file__).resolve().parents[1] FILES = { "AgrarianDebugHUD.h": ROOT / "Source" / "AgrarianGame" / "AgrarianDebugHUD.h", "AgrarianDebugHUD.cpp": ROOT / "Source" / "AgrarianGame" / "AgrarianDebugHUD.cpp", "AGRARIAN_DEVELOPMENT_ROADMAP.md": ROOT / "AGRARIAN_DEVELOPMENT_ROADMAP.md", } EXPECTED = { "AgrarianDebugHUD.h": [ "bShowMvpHudFrame", "DrawMvpHudFrame", ], "AgrarianDebugHUD.cpp": [ "DrawMvpHudFrame(AgrarianCharacter)", "AAgrarianDebugHUD::DrawMvpHudFrame", "AGRARIAN MVP | Ground Zero", "Health %.0f Food %.0f Water %.0f Temp %.1fC", "bShowDebugHUD", ], "AGRARIAN_DEVELOPMENT_ROADMAP.md": [ "[x] Add HUD.", "`bShowMvpHudFrame`", "developer overlay separately toggleable", ], } def main(): missing = [] for label, path in FILES.items(): text = path.read_text(encoding="utf-8") for snippet in EXPECTED[label]: if snippet not in text: missing.append(f"{label}: {snippet}") if missing: raise RuntimeError("MVP HUD frame verification failed: " + "; ".join(missing)) print("Agrarian MVP HUD frame verification complete.") if __name__ == "__main__": main()