Files
EscapistsReintroduced/docs/evidence/extraction-finish-2026-10-31/setup.py
T
2026-10-31 15:01:51 +01:00

17 lines
1.2 KiB
Python

from pathlib import Path
import sys,shutil
root=Path(__file__).resolve().parents[3];sys.path.insert(0,str(root/'tools'))
from source_manifest import addon_manifest
from headless_game import assert_prefix_idle
assert_prefix_idle(root/'.local/playtest-compat-20260920')
target=Path('/tmp/erri-extraction-end-source');target.mkdir(exist_ok=True)
for rel in addon_manifest(root):
p=target/rel;p.parent.mkdir(parents=True,exist_ok=True);shutil.copy2(root/rel,p)
shutil.copytree(root/'tools',target/'tools',ignore=shutil.ignore_patterns('__pycache__'),dirs_exist_ok=True)
(target/'docs').mkdir(exist_ok=True);shutil.copy2(root/'docs/external-addons.json',target/'docs/external-addons.json')
core=target/'addons/core/Scripts/Game/ERR/00_Core'
(core/'ERR_ZExtractionEndProbe.c').write_text(Path(__file__).with_name('native-probe.c').read_text())
p=core/'ERR_NativeBaseSmoke.c';p.write_text(p.read_text().replace('array<string> independentFixtures = {','array<string> independentFixtures = {"extraction-end", '))
p=target/'tools/headless_workbench.py';s=p.read_text().replace("choices=['coordinated-ai',","choices=['extraction-end', 'coordinated-ai',").replace("a.smoke not in {'coordinated-ai',","a.smoke not in {'extraction-end', 'coordinated-ai',");p.write_text(s)
print(target)