50 lines
1.8 KiB
Python
50 lines
1.8 KiB
Python
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.")
|