From e2f4e0165f2a3014171e4176df0ae769e4bc383a Mon Sep 17 00:00:00 2001 From: DylanBarnes Date: Wed, 1 Jul 2026 14:35:00 +0000 Subject: [PATCH] Add SQLite adventure DB initializer --- app/init_db.py | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 app/init_db.py diff --git a/app/init_db.py b/app/init_db.py new file mode 100644 index 0000000..6360324 --- /dev/null +++ b/app/init_db.py @@ -0,0 +1,50 @@ +import sqlite3 + +# Die Datenbank entsteht auf dem Server beim einmaligen Aufruf +# und bleibt dort unverändert erhalten. + +db = sqlite3.connect("adventure.db") + +db.executescript(""" +DROP TABLE IF EXISTS raeume; +DROP TABLE IF EXISTS ausgaenge; + +CREATE TABLE raeume ( + id INTEGER PRIMARY KEY, + name TEXT, + beschreibung TEXT, + raetsel_frage TEXT, + raetsel_antwort TEXT +); +CREATE TABLE IF NOT EXISTS ausgaenge ( + von_raum INTEGER, + richtung TEXT, + nach_raum INTEGER +); + +INSERT INTO raeume (id, name, beschreibung, raetsel_frage, raetsel_antwort) VALUES + (1, 'Schlafkapsel', 'Du erwachst aus dem Kryoschlaf. Die Notbeleuchtung flackert und das Schiff wirkt verlassen.', NULL, NULL), + (2, 'Brücke', 'Die Steuerzentrale ist dunkel. Mehrere Monitore zeigen Fehlermeldungen.', NULL, NULL), + (3, 'Maschinenraum', 'Überall verlaufen Rohre und Kabel. Die Hauptenergie scheint instabil zu sein.', NULL, NULL), + (4, 'Forschungslabor', 'Verlassene Arbeitsplätze und zerbrochene Glasbehälter lassen nichts Gutes vermuten.', NULL, NULL), + (5, 'Hangar', 'Die Landebucht ist leer. Nur ein beschädigtes Shuttle steht noch dort.', NULL, NULL), + (6, 'KI-Kern', 'Vor dir befindet sich der zentrale Computer des Schiffs. Nur hier kann das Notsignal aktiviert werden.', 'Gib den Notcode ein, um das Signal zu senden.', 'SOS'); + +INSERT INTO ausgaenge (von_raum, richtung, nach_raum) VALUES + (1, 'Zur Brücke', 2), + (1, 'Zum Maschinenraum', 3), + (1, 'Durch die Schleuse', 5), + (2, 'Zurück', 1), + (2, 'Zum Forschungslabor', 4), + (3, 'Zurück', 1), + (3, 'Durch den Wartungsschacht', 4), + (3, 'Mit dem Fahrstuhl', 6), + (4, 'Zurück', 2), + (4, 'Zum KI-Kern', 6), + (5, 'Zurück', 1), + (5, 'Mit dem Fahrstuhl', 6); +""") + +db.commit() +db.close() +print("Datenbank adventure.db angelegt.")