from flask import jsonify, request from werkzeug.wrappers import Response import game_engine from core.flask_app import app @app.route("/game//scene-objects//role", methods=["POST"]) def scene_object_role(slug: str, object_id: int) -> Response | tuple[Response, int]: """Rôle d'un personnage (joueur/ennemie/pnj — voir "🏷️ Rôle" dans le panneau Personnage, templates/game/scene_edit.html) : seul un personnage "joueur" est déplacé/animé automatiquement au clavier (voir static/game/js/play/personnage-controller.js).""" body = request.get_json(silent=True) or {} obj = game_engine.get_scene_object(slug, object_id) if not obj: return jsonify({"error": "objet introuvable"}), 404 role = body.get("role") if role not in game_engine.PERSONNAGE_ROLES: role = game_engine.DEFAULT_PERSONNAGE_ROLE game_engine.set_scene_object_role(slug, object_id, role) return jsonify({"ok": True, "role": role})