feat: report ATL problems only for used transforms; animate moving images
- Unsupported ATL constructs in a transform now block the import only when the transform is used (at clause, another transform, even before its definition). Stock screens.rpy transforms for unused screens no longer fail games - image blocks with one picture plus linear/ease/parallel/repeat keep their animation (image-level ATL); the renderer also starts it - Python: skip @gui.variant/@renpy.variant functions (inactive variants), treat @renpy.pure as transparent, read renpy.store.x as x - Accept renpy.transition, end_replay, block_rollback and music set_pause/set_pan as presentation-only no-ops, and implement them in the player (set_pause and set_pan were allowed by the converter but missing at runtime) - Skip the 0x52-URM add-on directory (in-game console / save editor) when parsing scripts and media - Tests for lazy ATL warnings, moving images and variants Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
ff82d882c0
commit
4418da47eb
9 files changed
+133
-12
No files matched your search
@@ -269,6 +269,8 @@ export class Engine {
|
||||
},
|
||||
stop: (...a: any[]) => this.audio.stop(kwOf(a).channel ?? ch, kwOf(a).fadeout ?? 0),
|
||||
set_volume: () => {},
|
||||
set_pause: () => {},
|
||||
set_pan: () => {},
|
||||
get_playing: () => this.audio.current(ch)?.file ?? null,
|
||||
is_playing: () => this.audio.current(ch) !== null,
|
||||
});
|
||||
@@ -301,6 +303,10 @@ export class Engine {
|
||||
throw new JumpSignal("jump", "__quit__");
|
||||
},
|
||||
version: () => "pgvn",
|
||||
// presentation-only: nothing to roll back or replay, and the next transition is chosen by `with`
|
||||
end_replay: () => null,
|
||||
block_rollback: () => null,
|
||||
transition: () => null,
|
||||
};
|
||||
const renpy = new Proxy(renpyImpl, {
|
||||
get: (t, k: string) => {
|
||||
|
||||
Reference in new issue
Block a user