From 1db3bbd488ffa0bd056a842614c1210f55c5b7ed Mon Sep 17 00:00:00 2001 From: ElenaRJ Date: Wed, 1 Jul 2026 16:40:33 +0200 Subject: [PATCH] =?UTF-8?q?Schatzsuche;=20Truhe=20kann=20mit=20Code=20ge?= =?UTF-8?q?=C3=B6ffnet=20werden?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/app.py | 14 ++++++++++++-- app/init_db.py | 28 +++++++++++++--------------- 2 files changed, 25 insertions(+), 17 deletions(-) diff --git a/app/app.py b/app/app.py index 1c09608..65541ef 100644 --- a/app/app.py +++ b/app/app.py @@ -1,4 +1,4 @@ -from flask import Flask +from flask import Flask, request import sqlite3 app = Flask(__name__) @@ -12,10 +12,20 @@ def get_db(): def start(): return '

Verlies

Abenteuer starten' -@app.route("/raum/") +@app.route("/raum/", methods=["GET", "POST"]) def raum(id): db = get_db() r = db.execute("SELECT name, beschreibung FROM raeume WHERE id=?", (id,)).fetchone() + + if r["raetsel_frage"]: # Rätselraum? + if request.method == "POST": + if request.form["antwort"].strip() == r["raetsel_antwort"]: + return "

Du findest einen geilen Schatz. Herzlichen Glückwunsch!

" + return 'Leider falsch. nochmal' + return "

" + r["name"] + "

" + r["beschreibung"] + "

" \ + + '
' + r["raetsel_frage"] \ + + '
' + ausgaenge = db.execute( "SELECT richtung, nach_raum FROM ausgaenge WHERE von_raum=?", (id,) ).fetchall() diff --git a/app/init_db.py b/app/init_db.py index d01c43d..4066181 100644 --- a/app/init_db.py +++ b/app/init_db.py @@ -3,31 +3,29 @@ import sqlite3 db = sqlite3.connect("adventure.db") # Datei wird angelegt, falls nicht da db.executescript(""" -CREATE TABLE IF NOT EXISTS raeume ( +DROP TABLE IF EXISTS raeume; +DROP TABLE IF EXISTS ausgaenge; + +CREATE TABLE raeume ( id INTEGER PRIMARY KEY, name TEXT, - beschreibung TEXT -); -CREATE TABLE IF NOT EXISTS ausgaenge ( - von_raum INTEGER, - richtung TEXT, - nach_raum INTEGER + beschreibung TEXT, + raetsel_frage TEXT, + raetsel_antwort TEXT ); +CREATE TABLE ausgaenge (von_raum INTEGER, richtung TEXT, nach_raum INTEGER); -DELETE FROM raeume; -DELETE FROM ausgaenge; - -INSERT INTO raeume (id, name, beschreibung) VALUES +INSERT INTO raeume (id, name, beschreibung, raetsel_frage, raetsel_antwort) VALUES (1, 'Eingangshalle', 'Eine schwere Tür fällt hinter dir zu. Zwei Gänge führen ins Dunkel.'), (2, 'Krypta', 'Kaltes Kerzenlicht flackert an den Wänden.'), - (3, 'Bibliothek', 'Staubige Bücher stapeln sich bis zur Decke.'), - (4, 'Schatzkammer', 'Eine verschlossene Truhe glänzt im Halbdunkel.'), + (3, 'Bibliothek', 'Staubige Bücher stapeln sich bis zur Decke. Ein abgeranzter Zettel liegt am Boden, du erkennst die Zahlen 5674'), + (4, 'Schatzkammer', 'Eine verschlossene Truhe glänzt im Halbdunkel.', 'Gib den Code ein:", '5674'), (5, 'Ritterinnensaal', 'Eine festlich gedeckte Tafel erstreckt sich so weit dein Auge reicht.'); INSERT INTO ausgaenge (von_raum, richtung, nach_raum) VALUES (1, 'links', 2), - (1, 'rechts', 3), - (1, 'gerade aus', 5), + (1, 'gerade aus', 5), + (1, 'rechts', 3), (2, 'zurück', 1), (3, 'zurück', 1), (5, 'Falltür', 2),