Textsystem: Bis-Strich mit Leerzeichen (Zahl – Zahl) per Agent-Sweep
562 Ersetzungen in 50 Dateien: Halbgeviertstrich zwischen zwei Ziffern (= "bis"-Bereich) bekommt Leerzeichen davor/danach (3–4 -> 3 – 4). Regex /([0-9])\s*–\s*(?=[0-9])/ auf Rohtext (format-erhaltend, CRLF/Einrueckung unveraendert), Bindestriche in Woertern und Minuszeichen unangetastet, alle JSON weiter gueltig. Energiemanager-Zeitbloecke sind Display-Labels (kein Logik-Key) -> safe. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -1885,14 +1885,14 @@ const KD_FUNDSACHEN = [
|
||||
{ id:'adapter', emoji:'🔌', name:'Reiseadapter', info:
|
||||
'Steckdosen sind weltweit unterschiedlich geformt — Typ C in der EU, Typ G in Großbritannien, Typ A/B in den USA, Typ I in Australien. Ein '+_g('reiseadapter','Reiseadapter')+' macht aus deinem Stecker einen passenden für die fremde Steckdose. '+
|
||||
'<br><br>Achtung: Ein Adapter ändert nur die Form — nicht die '+_g('netzspannung','Spannung')+'. In den USA und Japan kommen nur 110 Volt aus der Steckdose, bei uns 230 Volt. '+
|
||||
'<br><br>Moderne Lade-Geräte (Handy, Laptop) sind meist universell („INPUT: 100–240V"). Alte Föhne oder Rasierer brauchen zusätzlich einen Spannungs-Wandler — sonst brennen sie durch.' },
|
||||
'<br><br>Moderne Lade-Geräte (Handy, Laptop) sind meist universell („INPUT: 100 – 240V"). Alte Föhne oder Rasierer brauchen zusätzlich einen Spannungs-Wandler — sonst brennen sie durch.' },
|
||||
{ id:'powerbank',emoji:'🔋', name:'Powerbank', info:
|
||||
'Powerbanks und Ersatz-Akkus müssen ins '+_g('akku-handgepaeck','Handgepäck')+' — nie in den aufgegebenen Koffer. Im Frachtraum eines Flugzeugs wäre ein Akkubrand zu spät zu bemerken; im Handgepäck kann das Personal sofort eingreifen. '+
|
||||
'<br><br>Regel weltweit (ICAO): Bis 100 Wattstunden problemlos erlaubt, 100–160 Wh nur mit Erlaubnis der Fluglinie, über 160 Wh komplett verboten. Eine typische 10.000-mAh-Powerbank hat 37 Wh — also kein Problem. '+
|
||||
'<br><br>Regel weltweit (ICAO): Bis 100 Wattstunden problemlos erlaubt, 100 – 160 Wh nur mit Erlaubnis der Fluglinie, über 160 Wh komplett verboten. Eine typische 10.000-mAh-Powerbank hat 37 Wh — also kein Problem. '+
|
||||
'<br><br>2010 sind drei UPS-Frachter wegen brennender Lithium-Akkus abgestürzt — daher die strengen Regeln. Lithium-Akkus in seltenen Fällen Feuer fangen.' },
|
||||
{ id:'sonnenbr', emoji:'🕶️', name:'Sonnenbrille', info:
|
||||
'Je näher am '+_g('aequator','Äquator')+' und je höher die Lage, desto stärker die '+_g('uv-strahlung','UV-Strahlung')+'. In Schnee- und Wüstenregionen reflektieren bis zu 80 Prozent der Strahlen — Sonnenbrille mit UV-400-Filter ist Pflicht. '+
|
||||
'<br><br>Die WHO veröffentlicht den UV-Index als Skala 1–11+. In Australien werden im Sommer regelmäßig Werte von 13–14 gemessen — die höchsten weltweit. '+
|
||||
'<br><br>Die WHO veröffentlicht den UV-Index als Skala 1 – 11+. In Australien werden im Sommer regelmäßig Werte von 13 – 14 gemessen — die höchsten weltweit. '+
|
||||
'<br><br>UV-Strahlung verursacht Sonnenbrand und auf Dauer auch Hautkrebs. Schutz vor allem mittags zwischen 11 und 15 Uhr ist wichtig — auch bei bewölktem Wetter.' },
|
||||
{ id:'kamera', emoji:'📷', name:'Reisekamera', info:
|
||||
'In manchen Ländern ist das '+_g('fotografie-verbot','Fotografieren')+' von Flughäfen, Grenzen, Militär oder Regierungsgebäuden streng verboten. Was bei uns selbstverständlich ist, kann woanders eine Geldstrafe oder Festnahme bedeuten. '+
|
||||
@@ -1916,7 +1916,7 @@ const KD_FUNDSACHEN = [
|
||||
'<br><br>Sicher: Flaschenwasser aus versiegelter Plastikflasche, abgekochtes Wasser (3 Min sprudelnd), Filter mit Aktivkohle. Auch Eiswürfel im Drink und ungeschältes Obst können belastet sein.' },
|
||||
{ id:'geld', emoji:'💶', name:'Reisegeld', info:
|
||||
'Viele Länder haben eine eigene Währung. Der '+_g('wechselkurs','Wechselkurs')+' sagt, wie viel deine Euro dort wert sind — und er ändert sich täglich. '+
|
||||
'<br><br>Am Flughafen tauschen ist meistens teurer (schlechter Kurs + Gebühren). Mit Bankkarte zahlen ist oft günstiger — viele Banken nehmen aber 1–2 % Auslandsgebühr. '+
|
||||
'<br><br>Am Flughafen tauschen ist meistens teurer (schlechter Kurs + Gebühren). Mit Bankkarte zahlen ist oft günstiger — viele Banken nehmen aber 1 – 2 % Auslandsgebühr. '+
|
||||
'<br><br>An Bankomaten im Ausland: immer in Lokalwährung wählen, nie in Euro abrechnen lassen („Dynamic Currency Conversion"). Die Konvertierung der lokalen Bank ist eigentlich immer schlechter.' },
|
||||
{ id:'karte_kred',emoji:'💳',name:'Bankkarte', info:
|
||||
'Mit Karte zahlst du oft auch im Ausland. Beim Abheben in fremder '+_g('waehrung','Währung')+' können Gebühren anfallen — vorher den '+_g('wechselkurs','Wechselkurs')+' und die Auslandskonditionen prüfen lohnt sich. '+
|
||||
@@ -1944,7 +1944,7 @@ const KD_FUNDSACHEN = [
|
||||
'<br><br>Tipp: Hut mit Sturmband oder Klemme verwenden — bei Wind am Strand oder im Wüstenwind verlierst du ihn sonst leicht.' },
|
||||
{ id:'jacke', emoji:'🧥', name:'Reisejacke', info:
|
||||
'Auf der '+_g('suedhalbkugel-jahreszeiten','Südhalbkugel')+' sind die Jahreszeiten umgekehrt: Ist bei uns Sommer, ist es in Australien, Argentinien oder Südafrika Winter. Kleidung also ans Reiseziel anpassen. '+
|
||||
'<br><br>Sydney im Juli: 8–15 °C, regnerisch. Buenos Aires im August: ähnlich. Kapstadt im Juni/Juli: kalt und nass. Wer ohne Jacke reist, friert sich schon im Flugzeug-Hotel an. '+
|
||||
'<br><br>Sydney im Juli: 8 – 15 °C, regnerisch. Buenos Aires im August: ähnlich. Kapstadt im Juni/Juli: kalt und nass. Wer ohne Jacke reist, friert sich schon im Flugzeug-Hotel an. '+
|
||||
'<br><br>Tipp: Multi-Layer-Prinzip — mehrere dünne Schichten statt einer dicken. Anpassbar an wechselndes Wetter, leichter im Gepäck.' },
|
||||
{ id:'schirm', emoji:'☂️', name:'Reiseschirm', info:
|
||||
'In der tropischen Regenzeit oder im '+_g('monsun','Monsun')+' fällt sehr viel Regen in sehr kurzer Zeit. Ein Schirm gehört dann ins Handgepäck. '+
|
||||
@@ -1980,7 +1980,7 @@ const KD_FUNDSACHEN = [
|
||||
'<br><br>Tipp: Kontaktlinsen-Träger:innen sollten neben Linsen und Reinigungslösung immer auch eine Brille mitnehmen. Im Flugzeug ist die Luft so trocken, dass Linsen oft nicht vertragen werden.' },
|
||||
{ id:'fotoapp', emoji:'🧳', name:'Kulturbeutel', info:
|
||||
'Im Kulturbeutel sammeln sich viele kleine Flüssigkeiten und Hygiene-Artikel: Zahnpasta, Shampoo, Duschgel, Sonnencreme. Alles über 100 ml besser in den aufgegebenen Koffer legen ('+_g('handgepaeck-fluessigkeit','100-ml-Regel')+'). '+
|
||||
'<br><br>Universal-Reisegröße: 50–100 ml. Viele Hotels stellen Shampoo und Duschgel — du sparst Platz im Koffer. '+
|
||||
'<br><br>Universal-Reisegröße: 50 – 100 ml. Viele Hotels stellen Shampoo und Duschgel — du sparst Platz im Koffer. '+
|
||||
'<br><br>Tipp: Kleine Umfüll-Flaschen kaufen (gibts in jeder Drogerie). Deine eigenen Produkte umfüllen statt teure Reisegrößen kaufen. Kulturbeutel mit Haken zum Aufhängen sind in jedem Hotel praktisch.' },
|
||||
{ id:'stift', emoji:'🖊️', name:'Kugelschreiber', info:
|
||||
'Praktisch fürs Ausfüllen von Einreise- und '+_g('zoll-einfuhr','Zollkarten')+', die man in vielen Ländern noch von Hand ausfüllt. Manche Länder verlangen ein Kugelschreiber-Original, kein Kopierer. '+
|
||||
|
||||
@@ -114,7 +114,7 @@ const PA = {
|
||||
this.timer = setTimeout(() => {
|
||||
if (S && !Sound.muted) Sound.playPA(this.POOL[this.idx++ % this.POOL.length], 0.32);
|
||||
next();
|
||||
}, 90000 + Math.random() * 120000); // alle 1,5–3,5 min
|
||||
}, 90000 + Math.random() * 120000); // alle 1,5 – 3,5 min
|
||||
};
|
||||
next();
|
||||
},
|
||||
@@ -816,7 +816,7 @@ const World = {
|
||||
const ox = -this.player.x * 0.0045 + t * 0.0006;
|
||||
skies.forEach(s => { s.tex.offset.x = ox; });
|
||||
}});
|
||||
// Überflug-Animation: alle 15–45 s quert eine Maschine ein Dachsegment
|
||||
// Überflug-Animation: alle 15 – 45 s quert eine Maschine ein Dachsegment
|
||||
let flyIdx = -1, flyX = 0, flyWait = 8;
|
||||
this.animated.push({ update: (dt) => {
|
||||
if (flyIdx < 0) {
|
||||
@@ -873,7 +873,7 @@ const World = {
|
||||
panoTex = new THREE.TextureLoader().load(BASE + 'assets/img/panorama-nacht.webp');
|
||||
panoTex.colorSpace = THREE.SRGBColorSpace;
|
||||
panoTex.wrapS = THREE.MirroredRepeatWrapping;
|
||||
// Bildzone so legen, dass Jet + Tower durchs Fensterband (y ≈ 1–7,5 m) sichtbar sind
|
||||
// Bildzone so legen, dass Jet + Tower durchs Fensterband (y ≈ 1 – 7,5 m) sichtbar sind
|
||||
panoTex.repeat.set(2, 0.7); panoTex.offset.y = 0.15;
|
||||
}
|
||||
const pano = new THREE.Mesh(new THREE.PlaneGeometry(240, 16),
|
||||
@@ -1012,7 +1012,7 @@ const World = {
|
||||
} catch (_) {}
|
||||
},
|
||||
|
||||
/* ============ Flughafen-Objekte (Sketchfab-Props, je 10–80 KB) ============
|
||||
/* ============ Flughafen-Objekte (Sketchfab-Props, je 10 – 80 KB) ============
|
||||
* Ersetzen die wichtigsten prozeduralen Möbel; Positionen handgesetzt.
|
||||
* mode: 'h' = auf Höhe normieren, 'long' = auf längste Seite normieren */
|
||||
PROP_DEFS: [
|
||||
@@ -1638,7 +1638,7 @@ const World = {
|
||||
this.addBox(x, 2.6, -25, 1.6, 1.0, 0.1, 0x0e1d2a, { emissive: 0x2a6a8a, emissiveIntensity: 0.8 });
|
||||
}
|
||||
}
|
||||
this.sign('Check-in 1–10', -35, 4.2, -29.4, 14, 1.8, 0, true);
|
||||
this.sign('Check-in 1 – 10', -35, 4.2, -29.4, 14, 1.8, 0, true);
|
||||
|
||||
// Gepäckkarusselle (stehen nach Dienstschluss still): flaches Band
|
||||
// mit Metall-Seitenwänden und Mittelinsel statt des alten „Donuts“
|
||||
@@ -1832,9 +1832,9 @@ const World = {
|
||||
// gap 0.27 rückt die Schilder vor/hinter die Säule (sonst verdeckt sie die Mitte)
|
||||
lines.forEach((txt, i) => this.sign(txt, x, 2.45 - i * 0.55, z, 2.6, 0.48, rotY, true, 0.27));
|
||||
};
|
||||
mk(4, 14, 0, ['→ Abflug · Gates 11–13', '← Gepäckausgabe']);
|
||||
mk(-26, 2, Math.PI / 2, ['→ Check-in 1–10', '← Eingangshalle']);
|
||||
mk(26, -8, -Math.PI / 2, ['→ Duty-free · Sicherheit', '← Gates 11–13']);
|
||||
mk(4, 14, 0, ['→ Abflug · Gates 11 – 13', '← Gepäckausgabe']);
|
||||
mk(-26, 2, Math.PI / 2, ['→ Check-in 1 – 10', '← Eingangshalle']);
|
||||
mk(26, -8, -Math.PI / 2, ['→ Duty-free · Sicherheit', '← Gates 11 – 13']);
|
||||
mk(-48, 4, Math.PI / 2, ['→ Gepäcksortierung', '← Gepäckausgabe']);
|
||||
},
|
||||
|
||||
@@ -2939,10 +2939,10 @@ const World = {
|
||||
this.addInfo(-64, -6, '⚙️', 'Gepäcksortierung',
|
||||
'Hinter den Kulissen laufen kilometerlange Förderanlagen. Scanner lesen die Barcodes der Anhänger und Weichen lenken jeden Koffer zum richtigen Flug — oft in unter 10 Minuten. Große Flughäfen sortieren so über 100.000 Gepäckstücke pro Tag.');
|
||||
this.addInfo(46, -2, '🛫', 'Gates & Boarding',
|
||||
'Am Gate wird die Bordkarte gescannt, dann geht es über die Fluggastbrücke ins Flugzeug. Die Gate-Nummer steht auf der Anzeigetafel — sie kann sich kurzfristig ändern, darum lohnt der Blick auf die Tafeln. „Boarding“ beginnt meist 30–45 Minuten vor dem Abflug.');
|
||||
'Am Gate wird die Bordkarte gescannt, dann geht es über die Fluggastbrücke ins Flugzeug. Die Gate-Nummer steht auf der Anzeigetafel — sie kann sich kurzfristig ändern, darum lohnt der Blick auf die Tafeln. „Boarding“ beginnt meist 30 – 45 Minuten vor dem Abflug.');
|
||||
this.addInfo(49, 24, '🗃️', 'Fundbüro',
|
||||
'Was im Flughafen liegen bleibt — vom Schal bis zum Laptop — landet hier. Fundstücke werden katalogisiert und mehrere Monate aufbewahrt. Gepäck von Flügen läuft getrennt über die Gepäckermittlung: genau dort arbeitest du heute.',
|
||||
'Allein an den Sicherheitskontrollen der USA bleiben jeden Monat rund 90.000–100.000 Gegenstände liegen. Nur etwa 15–20 % finden zu ihren Besitzern zurück; der Rest wird gespendet, versteigert oder entsorgt.',
|
||||
'Allein an den Sicherheitskontrollen der USA bleiben jeden Monat rund 90.000 – 100.000 Gegenstände liegen. Nur etwa 15 – 20 % finden zu ihren Besitzern zurück; der Rest wird gespendet, versteigert oder entsorgt.',
|
||||
'US-Transportation Security Administration (TSA)',
|
||||
'https://www.tsa.gov/contact/lost-and-found');
|
||||
this.addInfo(0, 0, '🖥️', 'Abflugtafel lesen',
|
||||
|
||||
Reference in New Issue
Block a user