from flask import render_template import db import screens from core.flask_app import app @app.route("/game/") def game_dashboard(slug): """Vue d'ensemble du jeu : tout ce qui a été créé (écrans, objets, éléments de jeu réutilisables, variables), en un coup d'œil, avec un accès direct à chaque élément — la barre de navigation du jeu (voir base.html) permet déjà de sauter directement vers chaque éditeur, cette page sert donc de résumé/point d'entrée plutôt que de répéter les mêmes liens.""" game = db.game_meta(slug) definitions = db.list_definitions(slug) # Détail complet (avec ses champs) de chaque objet, pour le panneau # d'édition déplaçable (voir game_dashboard.html) ouvert par le crayon # ✏️ de l'onglet Objets — un panneau par objet, pré-rendu ici et # simplement montré/masqué en JS, plutôt qu'un aller-retour serveur à # l'ouverture (voir openObjectEditPanel()). definitions_full = {d["id"]: db.get_definition(slug, d["id"]) for d in definitions} screen_list = screens.list_screens(slug) element_types = screens.list_element_types(slug) element_type_usage = {t["id"]: screens.element_type_usage_count(slug, t["id"]) for t in element_types} variables = db.list_global_variables(slug) return render_template( "game_dashboard.html", game=game, definitions=definitions, definitions_full=definitions_full, screen_list=screen_list, element_types=element_types, element_type_usage=element_type_usage, variables=variables, variable_types=db.GLOBAL_VARIABLE_TYPES, field_types=db.FIELD_TYPES, )