diff --git a/screens/payload/full_game_payload.py b/screens/payload/full_game_payload.py index 8be22e47..69fd2894 100644 --- a/screens/payload/full_game_payload.py +++ b/screens/payload/full_game_payload.py @@ -24,6 +24,21 @@ def full_game_payload(slug): for s in screens_: elements = list_elements(slug, s["id"], enforce_visibility=True) payload_screens.append({**s, "elements": elements}) + + # Le graphe de logique et les animations sont, eux, lus pour TOUS les + # écrans, écrans-modèles compris (include_templates=True) — pas + # seulement les "vrais" écrans ci-dessus. Un élément de jeu réutilisable + # (ex. "mail content") peut avoir son propre déclencheur/sa propre + # animation posée dans l'éditeur de SON écran-modèle (voir + # screen_edit.html) : sans ses entrées ici, gameData.flows/ + # gameData.animations n'auraient jamais contenu cet écran-modèle côté + # client, et findTriggerNode()/collectAnimationClips() (templates/ + # play.html) — pourtant déjà écrits pour les chercher — n'auraient + # jamais rien trouvé. On ne les ajoute PAS à payload_screens : un + # écran-modèle ne doit jamais être rendu comme un vrai