Klima: iPad-Polish übernommen + Status-Update
Externer Plattform-Sweep hat in allen Klima-HTML-Files iPad-spezifische Polish-Änderungen ergänzt: - viewport-fit=cover in 2D / 3D / preview-sounds (Notch-Handling) - 100dvh statt 100vh in plane-test + preview-sounds (dynamic viewport) - Cockpit-Link in 3D-Endscreen auf '../../schueler' präzisiert Inhaltlich keine Modul-Änderung von mir, nur Sicherung der externen Edits, damit nichts verloren geht. _status.md auf bereit-warte-auf-go gesetzt — Atlas-Antwort vom 23.04. liegt vor (alle 6 Fragen beantwortet, End-Screen-Komponente verfügbar, 2D+3D parallel umbauen, Sammel-Commit-Subject vorgegeben). Klima- Instanz ist arbeitsbereit, wartet auf Thomas-Go fürs Loslegen. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,43 +1,74 @@
|
||||
---
|
||||
instanz: klima
|
||||
zuletzt_aktualisiert: 2026-04-23
|
||||
session_id: integrations-auftrag-koordination
|
||||
status: re-aktiviert-warte-auf-atlas
|
||||
zuletzt_aktualisiert: 2026-04-27
|
||||
session_id: integrations-auftrag-bereit
|
||||
status: bereit-warte-auf-go
|
||||
---
|
||||
|
||||
# Aktueller Stand — reaktiviert, warte auf Atlas-Rückmeldung
|
||||
# Aktueller Stand — Atlas-Antworten da, warte auf Thomas-Go
|
||||
|
||||
Thomas hat die Instanz wieder aufgerufen. Postfach gelesen:
|
||||
## Atlas-Antwort (2026-04-23 18:00)
|
||||
|
||||
- **Neu (2026-04-23):** Atlas-Integrations-Auftrag — drei Pflicht-
|
||||
Umbauten (mode-check, Assessment-Calls, End-Screen)
|
||||
- **Übersehen (2026-04-19):** Level-Class-Rename (kw-level-* → ggs-level-*),
|
||||
mache ich im selben Durchgang mit
|
||||
- **Alt (2026-04-19):** Drama-Track + Status-Konvention, erledigt
|
||||
`_inbox/klima/2026-04-23-1800-antwort-6-fragen.md`. Alle sechs Fragen
|
||||
beantwortet:
|
||||
|
||||
Atlas-Rückfrage liegt in:
|
||||
`_inbox/zentrale/2026-04-23-klima-reaktivierung-integrations-frage.md`
|
||||
1. Reihenfolge OK: mode-check → Assessment → End-Screen
|
||||
2. End-Screen-Komponente VERFÜGBAR (`.ggs-endscreen` ab design-system.css
|
||||
Abschnitt 22, ~Zeile 990) — sofort mit umbauen
|
||||
3. Demo-UUID: kein Cookie → `mode=free`, kein Persistenz. Pattern bei
|
||||
`App/pages/logistik.php` ab Z. 18
|
||||
4. Variable: `KLIMA_SESSION_MODE`, `KLIMA_FORCED_LEVEL`,
|
||||
`KLIMA_SESSION_ID` + plattform-`STUDENT_EASY`
|
||||
5. Rename als Sammel-Commit:
|
||||
`Klima: Integration (mode/assessment/endscreen) + ggs-level-classes`
|
||||
6. 2D + 3D parallel umbauen
|
||||
|
||||
Warte auf Prio-/Details-Rückmeldung, dann starte ich den Umbau
|
||||
(Pattern bei `App/pages/logistik.php` abschauen).
|
||||
## Was inzwischen passiert ist (von außen)
|
||||
|
||||
Externer iPad-Polish hat Klima-Files leicht touched (vermutlich Atlas
|
||||
oder Helfer-Sweep über alle Module):
|
||||
- `viewport-fit=cover` in 2D-/3D-/preview-sounds-Meta
|
||||
- `100dvh` statt `100vh` in plane-test + preview-sounds
|
||||
- Cockpit-Link in 3D-Endscreen `'../../'` → `'../../schueler'`
|
||||
|
||||
Diese Änderungen jetzt committet — sind konsistent mit Plattform-Polish.
|
||||
|
||||
## Aktuelle Modul-Komponenten
|
||||
|
||||
- `App/sims/klima/engine.js` (Engine, SSoT)
|
||||
- `App/sims/klima/game-2d.html` (~4100 Z.)
|
||||
- `App/sims/klima/game-3d.html` (~5100 Z.)
|
||||
- `App/sims/klima/plane-test.html` (Dev-Sandbox)
|
||||
- `App/pages/klima-2d.php` + `klima-3d.php`
|
||||
- Save-Slots `ggs-save-klima-{2d|3d}-L{n}`
|
||||
- Drama-Track `rising-pressure.mp3` integriert
|
||||
|
||||
## Als nächstes
|
||||
|
||||
Sobald Thomas Go gibt:
|
||||
|
||||
1. `App/pages/logistik.php` als Vorlage anschauen (Z. 18+)
|
||||
2. `klima-2d.php` + `klima-3d.php` parallel umbauen:
|
||||
- mode-check via `GET /api/modules?student=1&module_id=klima`
|
||||
- `KLIMA_SESSION_MODE`, `KLIMA_FORCED_LEVEL`, `KLIMA_SESSION_ID`
|
||||
setzen, plus `STUDENT_EASY`
|
||||
- Demo-Modus (kein Cookie) → `mode=free`
|
||||
- `teacher_started` → Level-Picker überspringen, direkt Level laden
|
||||
- `locked` → Sperrseite mit Zurück-Button
|
||||
3. Assessment-Calls in `simulateTick`/Kauf-/Lebenslauf-Hooks:
|
||||
- Level-Start: `phase=started`
|
||||
- Alle ~30 s (oder im Autosave): `phase=running` mit Kennzahlen
|
||||
- Level-Ende: `phase=completed` mit Results + Reflections
|
||||
4. End-Screen auf `.ggs-endscreen`-Komponente umstellen (HTML-Schnipsel
|
||||
in Atlas-Antwort)
|
||||
5. `.kw-level-*` → `.ggs-level-*` Rename als Side-Quest mitziehen
|
||||
6. Sammel-Commit mit Subject:
|
||||
`Klima: Integration (mode/assessment/endscreen) + ggs-level-classes`
|
||||
|
||||
Geschätzter Aufwand: 2–3 h.
|
||||
|
||||
## Blocker
|
||||
|
||||
Warte auf Atlas-Antworten zu:
|
||||
1. End-Screen-Komponente verfügbar?
|
||||
2. Demo-Session-Pattern bei Logistik
|
||||
3. Globaler Name für `*_SESSION_MODE`
|
||||
4. Rename-Sammel-Commit ok?
|
||||
5. 2D/3D parallel oder nacheinander?
|
||||
Keine. Warte auf Thomas „Los".
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<html lang="de">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
|
||||
<title>GeoGraSim — Klimawächter 2D</title>
|
||||
<link rel="icon" type="image/svg+xml" href="../../favicon.svg">
|
||||
<link rel="stylesheet" href="../../assets/fonts/inter.css">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<html lang="de">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
|
||||
<title>GeoGraSim — Klimawächter 3D</title>
|
||||
<link rel="icon" type="image/svg+xml" href="../../favicon.svg">
|
||||
<link rel="stylesheet" href="../../assets/fonts/inter.css">
|
||||
@@ -909,7 +909,7 @@
|
||||
</div>
|
||||
|
||||
<div style="display:flex;gap:8px;justify-content:center;margin-top:12px">
|
||||
<button class="ggs-btn ggs-btn-secondary" onclick="location.href='../../'">Zurück zum Cockpit</button>
|
||||
<button class="ggs-btn ggs-btn-secondary" onclick="location.href='../../schueler'">Zurück zum Cockpit</button>
|
||||
<button class="ggs-btn ggs-btn-primary" id="level-next-btn" onclick="goNextLevel()">Nächstes Level →</button>
|
||||
</div>
|
||||
</div>
|
||||
@@ -934,7 +934,7 @@
|
||||
<div style="display:flex;gap:12px;justify-content:center;flex-wrap:wrap">
|
||||
<button class="ggs-btn ggs-btn-secondary" onclick="hideOverlay('end-overlay')">Weiter arbeiten</button>
|
||||
<button class="ggs-btn ggs-btn-primary" onclick="startFreshSimulation()">Neue Simulation</button>
|
||||
<button class="ggs-btn ggs-btn-secondary" onclick="location.href='../../'">Zurück zum Cockpit</button>
|
||||
<button class="ggs-btn ggs-btn-secondary" onclick="location.href='../../schueler'">Zurück zum Cockpit</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<title>Flugzeug-Orientierungs-Test</title>
|
||||
<style>
|
||||
body { margin: 0; font-family: sans-serif; background: #e4ecf0; }
|
||||
#scene { width: 100vw; height: calc(100vh - 200px); }
|
||||
#scene { width: 100vw; height: calc(100dvh - 200px); }
|
||||
#controls {
|
||||
position: fixed; bottom: 0; left: 0; right: 0; height: 200px;
|
||||
background: #1a2a32; color: #fff; padding: 14px 22px;
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
<html lang="de">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
|
||||
<title>Klimawächter · Sound-Preview</title>
|
||||
<link rel="stylesheet" href="../../../assets/fonts/inter.css">
|
||||
<link rel="stylesheet" href="../../../assets/css/design-system.css">
|
||||
<style>
|
||||
body { overflow: auto; height: auto; min-height: 100vh; background: var(--ggs-bg); padding: 32px; }
|
||||
body { overflow: auto; height: auto; min-height: 100dvh; background: var(--ggs-bg); padding: 32px; }
|
||||
h1 { color: var(--ggs-fjord-dark); font-size: 28px; margin-bottom: 8px; }
|
||||
.lead { color: var(--ggs-text-muted); margin-bottom: 24px; max-width: 700px; line-height: 1.5; }
|
||||
.group { margin-bottom: 28px; }
|
||||
|
||||
Reference in New Issue
Block a user