Files
jakub 6a667d8deb Capture current mission, AI, map and administration development
Include the current addon, terrain integrations, tools, regression tests and recorded development evidence.
2026-10-13 22:52:53 +02:00

26 lines
1.1 KiB
Python

"""Execute the production rescue departure hold; no native-flight claim."""
from policy_harness import ROOT, body, run
source = ROOT / "addons/core/Scripts/Game/ERR/00_Core/ERR_ExtractionService.c"
methods = "\n".join(body(source, signature) for signature in (
"static float BoardingSince(", "static bool CanDepart("))
run("#include <cassert>\nstruct Rules {\n" + methods + r"""
};
int main() {
assert(Rules::BoardingSince(0,0,-1,1000)==-1);
assert(Rules::BoardingSince(3,2,1000,9000)==-1);
assert(Rules::BoardingSince(3,3,-1,1000)==1000);
assert(Rules::BoardingSince(3,3,1000,8999)==1000);
assert(!Rules::CanDepart(1000,8999));
assert(Rules::CanDepart(1000,9000));
assert(!Rules::CanDepart(-1,10000));
assert(!Rules::CanDepart(1000,999));
assert(Rules::BoardingSince(3,3,1000,999)==999);
float since=Rules::BoardingSince(2,2,-1,1000);
since=Rules::BoardingSince(2,1,since,8000);
since=Rules::BoardingSince(2,2,since,9000);
assert(!Rules::CanDepart(since,16000));
assert(Rules::CanDepart(since,17000));
}
""")
print("PASS: all survivors required, continuous eight-second boarding hold, reset on exit and clock rollback")