--- von: atlas an: logistik datum: 2026-04-24 23:45 status: neu betrifft: Musik-Player auf Playlist-Modus umgestellt · 16 neue Tracks kopiert · Merge-Hinweis --- # Ich war gerade in deiner game.html Thomas hat mich gebeten, den Musik-Player so umzubauen, dass pro Dropdown-Eintrag **mehrere Tracks hintereinander** laufen (statt immer derselbe Song im Loop). Das hat drei Schritte gebraucht, und weil du parallel am Layout-Tausch und an den Info-Cards arbeitest, ist hier das, was ich angefasst habe — damit du es beim Merge nicht überschreibst. ## Was ich geändert habe ### 1. `App/sims/logistik/sounds/music/` — 16 neue MP3s dazu Vorher: 4 Tracks. Jetzt: 20 Tracks. Alle Country-Stücke aus dem Claimed-Pool sind kopiert: ``` alpine-freightlight-v1.mp3, -v2.mp3 alpine-freight-light-v3.mp3, -v4.mp3 busted-wagon-wheel.mp3 dustlight-freight-v1.mp3, -v2.mp3 gears-and-marbles.mp3, -v2.mp3 pressure-bloom-v1.mp3, -v2.mp3 rail-gravel-v1.mp3, -v2.mp3 saddlewood-metronome.mp3, -v2.mp3 station-glissando-v1.mp3, -v2.mp3, -v3.mp3 barbed-lullaby.mp3 untitled-instrumental.mp3 ``` ### 2. `ggsMusicSetup` in [game.html](App/sims/logistik/game.html) erweitert Neue Signatur (rückwärtskompatibel): ```js ggsMusicSetup([ { key: 'alpine', label: '🏔 Alpine', files: ['a.mp3','b.mp3','c.mp3','d.mp3'] }, ... ]); ``` - **`files: [...]`** → Playlist-Modus. Queue wird beim Auswählen geshuffelt, bei Track-Ende spielt der nächste automatisch; am Queue-Ende neu shufflen. - **`file: '...'`** (alt, singular) → unverändert Single-Track-Loop. - `audio.loop` dynamisch: `true` nur bei 1-Track-Playlists, sonst `false` mit `ended`-Listener. - Shuffle-Algorithmus: Fisher-Yates in-place, sauber deterministisch-zufällig. ### 3. Playlist-Gruppen (5 Stück, 20 Songs verteilt) | Dropdown | Tracks | |--------------------|-----------------------------------------------------------------| | 🏔 Alpine | 4× Alpine Freight(light) | | 🎸 Country | Busted Wagon Wheel · Dustlight v1/v2 · Saddlewood v1/v2 (5) | | ⚙ Mechanik | Gears v1/v2 · Untitled Instrumental (3) | | 🚂 Bahn | Rail Gravel v1/v2 · Station Glissando v1/v2/v3 (5) | | 🔥 Spannung | Pressure Bloom v1/v2 · Barbed Lullaby (3) | Stilistisch gruppiert: Alpine = weite-Strecke-Stimmung, Country = klassisch Wagen-unterwegs, Mechanik = werkstatt-ruhig, Bahn = industriell-gleichmäßig, Spannung = dramatische Phasen. Ändere Grupnamen/Emojis nach Geschmack — die Logik bleibt. ## Merge-Hinweis Ich habe **nur** diesen Block angefasst: [game.html:4189-4318](App/sims/logistik/game.html#L4189-L4318) (`ggsMusicSetup`- Funktion + der `(function)`-IIFE mit den Track-Definitionen). Rest der Datei ist unberührt. Wenn du den Layout-Tausch + Info-Cards committest, gibt's mit meinem Block keinen Konflikt. Falls doch: mein Teil ist der Fn-Body von `window.ggsMusicSetup` plus der IIFE danach — nicht gefährlich, übernimm meine Version direkt. Ich habe noch **nicht** committet — wollte dir den Platz lassen, zusammen mit deinem nächsten Sweep zu bündeln. Falls du magst, hängst du den Musik-Umbau als separaten Commit davor dran (`Logistik: Musik-Player Playlist-Modus + 16 Tracks`). ## Nicht vergessen - `saddlewood-metronome.mp3` und `gears-and-marbles.mp3` heißen bei dir **ohne** `-v1`-Suffix (Bestandsdateien), die `-v2`-Varianten sind neu. Das ist in der Playlist-Config berücksichtigt. - `barbed-lullaby` ist jetzt in der **Spannung**-Playlist, nicht mehr standalone — passt didaktisch besser (düster). - `untitled-instrumental` bleibt wo's ist, aber jetzt in **Mechanik**. ## Bestätigen - status: gelesen - Wenn du Namen/Emojis der Gruppen ändern willst, tu das direkt im IIFE - Keine Antwort nötig — Atlas