feat: build profile for The Lewdest House; panoramas as GPU hints, live2d-only init branches, drag/at syntax
The build (fingerprint of its scripts) skips third-party code written against Ren'Py's render API (colour picker demo, Kinetic Text Tags, cps_preview) and waives its one missing test screen. Converter: xpan/ypan/matrixtransform/matrixanchor are skipped like other GPU hints, `if renpy.has_live2d()` in an init block keeps only its else branch, `crop(...)xpos` and `crop (1, 2, 3, 4)` parse, `drag` is a screen container, `at icon["at"]` becomes a dynamic entry, and the whitelist gains Matrix, Move, absolute and the no-op helpers. The game now passes the strict check and converts fully (3272 files, 288 MB). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
353cd5e49e
commit
6d78b8b847
9 files changed
+94
-10
No files matched your search
@@ -235,3 +235,14 @@ def test_atl_pause_with_brackets():
|
||||
steps = data.atl["t"]["steps"] if "t" in data.atl else data.transforms["t"]
|
||||
assert not data.blockers
|
||||
assert [(s["op"], s["t"]) for s in steps] == [("move", 1.0), ("pause", 1.5), ("move", 1.0)]
|
||||
|
||||
|
||||
def test_dynamic_at_value_and_draggable_box():
|
||||
data = parse('transform spin:\n rotate 5\nscreen s(icon):\n imagebutton:\n idle "a" at icon["at"]\n'
|
||||
' drag:\n drag_name "box"\n draggable True\n text "x"\n'
|
||||
'label start:\n call screen s({"at": spin})\n')
|
||||
audit_ir(data)
|
||||
require_supported_scripts(data)
|
||||
body = data.screens["s"]["body"]
|
||||
assert body[0]["props"]["at"][0]["dyn"]["k"] == "sub"
|
||||
assert body[1]["w"] == "drag" and "draggable" in body[1]["props"]
|
||||
Reference in new issue
Block a user