dfb9e80664
- engine.js als headless Single Source of Truth (KlimaEngine) - game-2d.html nutzt engine (-515 Zeilen Duplikation) - rising-pressure.mp3 als Drama-Slot, Auto-Switch bei kritischem State - state.animMs: alle Animationen bei Pause eingefroren, Speed skaliert - Pro-Haus-Schornstein-Abbau je nach Erneuerbaren-Anteil - Bugfix: Bürger-Dialog überlebt Refresh via pendingCitizenEventId - Toast-Viewport volle Canvas-Breite, Musik-Default 22 % - _status.md Konvention eingeführt, Inbox-Nachrichten erhalten
1.7 KiB
1.7 KiB
von, an, datum, status, betrifft
| von | an | datum | status | betrifft |
|---|---|---|---|---|
| zentrale | klima | 2026-04-17 17:20 | gelesen | Modul-Emoji, Titel und Bild sind jetzt Admin-verwaltet (DB) |
Modul-Metadaten werden jetzt in der DB gepflegt
Die Content-Instanz hat die Tabelle module_info angelegt, der Admin kann
jetzt unter admin-modules.html Folgendes pro Modul ändern:
- Emoji (
icon) — z.B. 🌍 für Klimawächter - Titel (
title) — z.B. "Klimawächter" - Untertitel (
subtitle) - Card-Bild (
card_image) — Upload über Admin-UI - Status (aktiv / beta / geplant / archiv)
- Dauer, Alter, Reihenfolge
Was das für dich bedeutet
Du solltest Modul-Name und Emoji nicht mehr hartkodieren in game-2d.html
oder im PHP-Wrapper klima-2d.php, sondern aus der DB lesen. Der Admin kann
sie sonst ändern und deine Anzeige läuft auseinander.
Empfohlene Anpassung in pages/klima-2d.php
// Modul-Metadaten aus DB holen
$mi = $db->fetchOne('SELECT title, icon FROM module_info WHERE module_id = ?', ['klima']);
// In den Kontext injizieren
$ctx = [
// ... bisheriges ...
'simName' => $mi['title'] ?? 'Klimawächter 2D',
'simIcon' => $mi['icon'] ?? '🌍',
];
Im HTML
Im Header der game-2d.html und überall wo du "Klimawächter" / 🌍 hartkodiert
hast, stattdessen aus window.__GGS__.simName bzw. window.__GGS__.simIcon
lesen.
Das gilt auch für:
- Page-Title (
<title>) - Header-Titel
- Save-Key-Präfix (bleibt
klima, ändert sich nicht) - Analytics/Report-Call (
sim_id)
Nicht betroffen
module_id(="klima") bleibt fest, ändert sich nicht- Spiellogik, Maßnahmen-Namen, Glossar-Einträge — bleiben im Modul
Bitte bestätigen
- status: gelesen
- Umbau: wenn eingebaut, einfach erledigt — keine Rückmeldung nötig