feat: full math module and small renpy helpers
CI / frontend (push) Successful in 34s
CI / backend (push) Successful in 57s

- math: sin/cos/tan/asin/acos/atan/atan2, exp, log, log10, fabs, fmod, modf, trunc,
  hypot, degrees, radians, isnan, isinf, copysign, e
- renpy.curry, get_showing_tags, run(action), pop_call; _preferences.get_mute/get_volume
- The compatibility check knows these names

Removes a few more blockers in TheFixer and That_New_Teacher; the rest are custom
systems of those games (AlphaMask wardrobe, custom statements) and authoring defects.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
mrleo1nidandClaude Sonnet 5.5 committed 2026-10-25 14:47:34 +03:00
1 parent 3ac4f0371f
commit 52f6e7c18f
2 files changed
+34 -2

No files matched your search

+7 -1
View File
@@ -222,7 +222,13 @@ ENGINE_LABELS = {"main_menu_screen", "_main_menu_screen", "main_menu"}
BLOCKING_BUILTINS = {"renpy.input", "renpy.say", "renpy.pause", "renpy.display_menu", "renpy.with_statement",
"renpy.call_screen"}
CALLS |= BLOCKING_BUILTINS | {"renpy.show", "renpy.hide", "renpy.scene", "Borders", "renpy.set_tag_attributes",
"eval", "exec", "Replay", "EndReplay", "renpy.end_replay"}
"eval", "exec", "Replay", "EndReplay", "renpy.end_replay",
"renpy.get_showing_tags", "renpy.run", "renpy.pop_call",
"renpy.curry", "_preferences.get_mute", "_preferences.get_volume",
"preferences.get_mute", "preferences.get_volume"}
CALLS |= {"math." + name for name in (
"sin cos tan asin acos atan atan2 exp fabs trunc hypot log log10 fmod modf degrees radians isnan isinf "
"copysign").split()}
def blocking_names(data) -> list[str]: