Corrige la mauvaise interprétation de la demande initiale : la page dédiée "🗺️ Quêtes" (nav du jeu) est retirée au profit d'un nouvel onglet "🗺️ Quêtes" DANS l'éditeur de scène 2D, juste à côté de "🧩 Collision" — même liste tabulaire que l'onglet "📣 Événements" (titre/objectif/récompense/statut/résultat par ligne, pas des cartes), un clic sur une ligne ouvrant la modale d'arbre de dialogue déjà construite. L'assistant "+ Action" de l'éditeur de collision ouvre toujours cette même modale pour "Déclencher une quête". Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
19 lines
800 B
Python
19 lines
800 B
Python
from ..connection import connect
|
|
from .ensure_quests_schema import ensure_quests_schema
|
|
from .get_quest import get_quest
|
|
|
|
|
|
def create_quest(slug, title="Nouvelle quête"):
|
|
"""Titre par défaut plutôt qu'un refus — créée d'un clic depuis la
|
|
liste (voir l'onglet "🗺️ Quêtes", templates/scene_edit.html) ou depuis l'assistant "+ Action"
|
|
de l'éditeur de collision (voir collision-rules-editor.js), avant
|
|
même que l'auteur ait choisi un titre."""
|
|
ensure_quests_schema(slug)
|
|
title = (title or "").strip() or "Nouvelle quête"
|
|
conn = connect(slug)
|
|
conn.execute("INSERT INTO _quests (title) VALUES (?)", (title,))
|
|
new_id = conn.execute("SELECT last_insert_rowid() AS id").fetchone()["id"]
|
|
conn.commit()
|
|
conn.close()
|
|
return get_quest(slug, new_id)
|