from .ensure_global_vars_schema import PLAYER_SHARED def resolve_player_key(conn, name, player_id): """Détermine le player_id à utiliser RÉELLEMENT pour lire/écrire cette variable : celui du joueur (variable per_player=1, le cas par défaut), ou toujours PLAYER_SHARED (variable explicitement partagée entre tous les joueurs, per_player=0) — décidé par le réglage de la ligne "modèle" créée par le créateur du jeu (voir create_global_variable.py). Une variable encore inconnue (aucune ligne modèle) est traitée comme per_player=1 par défaut.""" row = conn.execute( "SELECT per_player FROM _global_variables WHERE name = ? AND player_id = ?", (name, PLAYER_SHARED), ).fetchone() per_player = row["per_player"] if row else 1 return player_id if per_player else PLAYER_SHARED