diff --git a/app/app.py b/app/app.py index 9eaa847..d9b40b9 100644 --- a/app/app.py +++ b/app/app.py @@ -1,37 +1,63 @@ -from flask import Flask, request, redirect +from flask import Flask, request +import sqlite3 app = Flask(__name__) +def get_db(): + db = sqlite3.connect("adventure.db") + db.row_factory = sqlite3.Row + return db + @app.route("/") -def hello(): - return "Hallo aus meiner Flask-App!" +def start(): + return """""" + '

Verlassenes Raumschiff

' \ + '

Du bist der einzige Überlebende an Bord. Erkunde das Schiff und aktiviere das Notsignal.

' \ + 'Mission starten
' -@app.route("/frage", methods=["GET", "POST"]) -def frage(): - if request.method == "POST": - if request.form.get("antwort") == "8": - return "Richtig!" - return "Leider falsch." - return '
Was ist 3 + 5? ' \ - '
' +@app.route("/raum/", methods=["GET", "POST"]) +def raum(id): + db = get_db() + r = db.execute("SELECT * FROM raeume WHERE id=?", (id,)).fetchone() + if not r: + db.close() + return '

Raum nicht gefunden

' -# Pinnwand (in-memory) -eintraege = [] + if r["raetsel_frage"]: + if request.method == "POST": + if request.form.get("antwort", "").strip() == r["raetsel_antwort"]: + db.close() + return '

Notsignal erfolgreich aktiviert. Rettung ist unterwegs.

' + db.close() + return '

Falscher Code

Der KI-Kern reagiert nicht.

' \ + 'nochmal versuchen' -@app.route("/pinnwand", methods=["GET", "POST"]) -def pinnwand(): - if request.method == "POST": - nachricht = request.form.get("nachricht", "").strip() - if nachricht: - eintraege.append(nachricht) - return redirect("/app/pinnwand") - liste = "" - for e in eintraege: - liste = liste + "
  • " + e + "
  • " - return '

    Pinnwand

    ' \ - '
    ' \ - '
    ' + db.close() + return '

    ' + r["name"] + '

    ' \ + '

    ' + r["beschreibung"] + '

    ' \ + '
    ' + r["raetsel_frage"] + \ + '
    ' + + ausgaenge = db.execute( + "SELECT richtung, nach_raum FROM ausgaenge WHERE von_raum=?", (id,) + ).fetchall() + db.close() + + html = '

    ' + r["name"] + '

    ' + html += '

    ' + r["beschreibung"] + '

    ' + for a in ausgaenge: + html += '' + a["richtung"] + ' ' + return html if __name__ == "__main__": - # Assuming room number 04 based on home directory isa4 -> port 9004 app.run(host="0.0.0.0", port=9004)