<<set $theme to "light">>
<<set $playerName to "">>
<<set $confidence to 10>>
<<set $max_confidence to 10>>
<<set $inventory to []>>
<<set $vocab_list to []>>
<<set $score to 0>>
<<set $mistakes to 0>>
<<set $day to 1>>
<<set $last_roll to 0>>
<<set $roll_needed to "">>
<<set $transport to "">><<if def $theme is false>><<set $theme to "light">><</if>>
<<if $theme == "dark">>
<<run $('body').addClass('theme-dark').removeClass('theme-light')>>
<<else>>
<<run $('body').addClass('theme-light').removeClass('theme-dark')>>
<</if>>
<<if def $confidence is false>><<set $confidence to 10>><</if>>
<<if def $max_confidence is false>><<set $max_confidence to 10>><</if>>
<<set $confidence to Math.clamp($confidence, 0, $max_confidence)>><<nobr>>
<div class="sidebar-panel">
<div class="tracker-card">
<div class="card-header">📅 Day</div>
<div class="day-row">
<<for _d range [1,2,3,4,5,6,7]>>
<<if _d < $day>>
<div class="day-dot day-past"><<print _d>></div>
<<elseif _d == $day>>
<div class="day-dot day-current"><<print _d>></div>
<<else>>
<div class="day-dot day-future"><<print _d>></div>
<</if>>
<</for>>
</div>
</div>
<div class="tracker-card">
<div class="card-header">
<span>
<<if $confidence <= 3>>⚠️ Confidence
<<elseif $confidence <= 6>>😬 Confidence
<<else>>😊 Confidence
<</if>>
</span>
<span class="conf-score"><<print $confidence>>/<<print $max_confidence>></span>
</div>
<div class="conf-bar-bg">
<<set _confClass to "conf-bar-fill " + ($confidence <= 3 ? "conf-low" : ($confidence <= 6 ? "conf-med" : "conf-high"))>>
<<set _confWidth to Math.round(($confidence / Math.max($max_confidence, 1)) * 100) + "%">>
<div @class="_confClass" @style="'width:' + _confWidth + ';'"></div>
</div>
<div class="conf-text">
<<if $confidence <= 3>>You're losing your nerve! Keep going!
<<elseif $confidence <= 6>>A bit shaky... stay focused!
<<else>>Feeling confident!
<</if>>
</div>
</div>
<div class="tracker-card score-card">
<div class="card-header" style="margin: 0;">⭐ Score</div>
<div class="score-badge"><<print $score>> pts</div>
</div>
<!-- 3D VIRTUAL DICE -->
<div class="tracker-card dice-card">
<div class="card-header">🎲 VIRTUAL DICE</div>
<div class="dice-container">
<div class="dice-box">
<div id="cube" class="cube">
<div class="front">1</div>
<div class="back">2</div>
<div class="right">3</div>
<div class="left">4</div>
<div class="top">5</div>
<div class="bottom">6</div>
</div>
</div>
<div class="dice-button <<if $roll_needed == ''>>disabled<</if>>">
<<link "ROLL DIE">>
<<if $roll_needed != "">>
<<set $last_roll to random(1, 6)>>
<<run window.rollDice($last_roll)>>
<<timed 1.2s>>
<<set $roll_needed to "">>
<<run SugarCube.Engine.play(SugarCube.State.passage)>>
<</timed>>
<</if>>
<</link>>
</div>
</div>
</div>
<div class="tracker-card">
<div class="card-header">🎒 Inventory</div>
<<if $inventory.length == 0>>
<div class="empty-state">Empty — go explore!</div>
<<else>>
<<for _item range $inventory>>
<div class="item-pill"><<print _item>></div>
<</for>>
<</if>>
</div>
<div class="tracker-card">
<div class="card-header">
<span>📒 Vocab</span>
<span class="vocab-count"><<print $vocab_list.length>> words</span>
</div>
<<if $vocab_list.length == 0>>
<div class="empty-state">Click blue words to learn!</div>
<<else>>
<div class="vocab-list">
<<for _word range $vocab_list>>
<div class="vocab-word">
<span class="vocab-icon">▸</span>
<span><<print _word>></span>
</div>
<</for>>
</div>
<</if>>
</div>
<div id="theme-toggle-container">
<<button "🌓 Thème (Clair/Sombre)">>
<<if $theme == "dark">>
<<set $theme to "light">>
<<run $('body').addClass('theme-light').removeClass('theme-dark')>>
<<else>>
<<set $theme to "dark">>
<<run $('body').addClass('theme-dark').removeClass('theme-light')>>
<</if>>
<</button>>
</div>
</div>
<</nobr>><h1>Comment fonctionne le jeu ?</h1>
Bienvenue dans <strong>A Week in London</strong> ! 🎉
Ce jeu interactif a été conçu pour vous faire pratiquer et améliorer votre anglais dans des situations de la vie courante.
🔹 <strong>Les mots en bleu</strong> (comme <<linkreplace "celui-ci">><span class="vocab-reveal">celui-ci (<span class="french-trans">this one</span>)</span><</linkreplace>>) sont cliquables ! Cliquez dessus pour découvrir leur traduction ou une explication, cette action les ajoutera automatiquement à votre <strong>vocabulaire</strong>.
Tout au long de votre aventure, gardez un œil sur le <strong>panneau latéral</strong> (la barre à gauche) qui affiche vos statistiques en temps réel :
🔹 Votre <strong>jour</strong> actuel dans l'aventure (📅 Day).
🔹 Votre <strong>niveau de confiance</strong> (⚠️ Confidence). Des erreurs vous en feront perdre, mais pas d'inquiétude, on apprend toujours de ses erreurs !
🔹 Votre <strong>score</strong> (⭐ Score) qui augmente à chaque bonne décision ou découverte de mot de vocabulaire.
🔹 Parfois, la chance décidera pour vous à l'aide d'un <strong>dé virtuel</strong> (🎲 VIRTUAL DICE).
🔹 Un <strong>inventaire</strong> (🎒 Inventory) qui se remplira au fil de vos trouvailles.
🔹 Une liste de votre <strong>vocabulaire</strong> (📒 Vocab) qui regroupe tous les mots que vous ne connaissiez pas et que vous avez appris.
🔹 À la fin de chaque journée, un <strong>petit test de vocabulaire</strong> vous permettra de réviser ces mots pour gagner encore plus de points !
Prenez votre temps, lisez bien les indices et surtout... amusez-vous !
<div style="text-align: center; margin-top: 30px;">
[[J'ai compris, passons à l'histoire !|IntroPage]]
</div><h1>Welcome to London!</h1>
Prêt(e) pour l'aventure ? Avant de commencer, quel est votre nom ?
<div style="margin: 20px 0;">
<<textbox "$playerName" "Traveler" "Start" autofocus>>
</div>
<div style="text-align: center; margin-top: 30px;">
<<button "Continuer">>
<<if $playerName.trim() == "">>
<<set $playerName to "Traveler">>
<</if>>
<<goto "Start">>
<</button>>
</div><h1>Introduction : L'aventure commence pour <span class="player-name">$playerName</span></h1>
Vous avez toujours rêvé de visiter Londres, et aujourd'hui, ce rêve devient réalité !
Vous venez de terminer vos études, ou peut-être prenez-vous juste une semaine de repos bien méritée. Quoi qu'il en soit, vous avez décidé de vous offrir un voyage en solitaire dans la capitale britannique. Vous avez réservé une chambre près de King's Cross, préparé un planning chargé pour vos sept jours sur place, et révisé (un peu) votre anglais de lycée.
L'objectif de cette semaine est simple :
- Visiter les lieux les plus emblématiques de la ville.
- Arriver à vous débrouiller dans toutes les situations (demander votre chemin, commander au restaurant, faire des rencontres...).
- Surmonter la barrière de la langue.
Le vol depuis Paris s'est très bien passé. L'avion vient d'atterrir et les autres passagers se lèvent déjà pour récupérer leurs bagages.
Prenez votre passeport en main, la porte de l'avion s'ouvre... Let's go!
<div style="text-align: center; margin-top: 30px;">
[[Sortir de l'avion et entrer dans l'aéroport|Chapter1_Arrival]]
</div>You step off the plane at <<linkreplace "Heathrow">><span class="vocab-reveal">Heathrow (<span class="french-trans">l'aéroport principal de Londres</span>)</span><<run $vocab_list.push("Heathrow : aéroport principal de Londres")>><<set $score += 1>><</linkreplace>> Airport. After a long flight from Paris, you're finally here — London!
The airport is enormous and full of signs in English. People are walking fast all around you. You take a deep breath: this is it. A whole week speaking nothing but English.
You follow the crowd down a long <<linkreplace "corridor">><span class="vocab-reveal">corridor (<span class="french-trans">couloir</span>)</span><<run $vocab_list.push("Corridor : couloir")>><<set $score += 1>><</linkreplace>> towards <<linkreplace "Border Control">><span class="vocab-reveal">Border Control (<span class="french-trans">le contrôle aux frontières</span>)</span><<run $vocab_list.push("Border Control : contrôle aux frontières")>><<set $score += 1>><</linkreplace>>. There's a big sign with two arrows:
<div class="signage">
🔵 ''"UK and EU Passports"'' — on the left<br>
🔴 ''"All Other Passports"'' — on the right
</div>
You have a French passport. Which <<linkreplace "queue">><span class="vocab-reveal">queue (<span class="french-trans">file d'attente — attention, faux ami !</span>)</span><<run $vocab_list.push("Queue : file d'attente (faux ami !)")>><<set $score += 1>><</linkreplace>> do you join?
[[Join the "UK and EU Passports" queue on the left.|BorderControlEU]]
[[Join the "All Other Passports" queue on the right.|BorderControlOther]]<<set $score += 5>>
<div class="pedagogy-success">✅ Good choice! France is in the European Union, so you join the correct queue.</div>
After a few minutes of waiting, it's your turn. You walk up to the <<linkreplace "booth">><span class="vocab-reveal">booth (<span class="french-trans">guichet</span>)</span><<run $vocab_list.push("Booth : guichet")>><<set $score += 1>><</linkreplace>>. A serious-looking <<linkreplace "border officer">><span class="vocab-reveal">border officer (<span class="french-trans">agent de contrôle aux frontières</span>)</span><<run $vocab_list.push("Border officer : agent aux frontières")>><<set $score += 1>><</linkreplace>> looks at you and says:
<span style="font-style:italic">"Good afternoon. Passport, please."</span>
You hand him your passport. He looks at the photo, then at your face. He nods and asks:
<span style="font-style:italic">"What is the <<linkreplace "purpose">><span class="vocab-reveal">purpose (<span class="french-trans">but/raison</span>)</span><<run $vocab_list.push("Purpose : but, raison")>><<set $score += 1>><</linkreplace>> of your visit?"</span>
How do you answer?
[[Answer: "I come for holiday."|OfficerGrammarMistake]]
[[Answer: "I'm here on holiday for a week."|OfficerCorrectAnswer]]
[[Answer: "Purpose? I don't understand."|OfficerConfused]]<<set $confidence -= 1>>
<<set $mistakes += 1>>
You join the queue on the right. It's very long — much longer than the other one. People around you are holding passports from all over the world: the United States, Japan, Brazil...
After <<linkreplace "nearly">><span class="vocab-reveal">nearly (<span class="french-trans">presque</span>)</span><<run $vocab_list.push("Nearly : presque")>><<set $score += 1>><</linkreplace>> thirty minutes of waiting, you finally reach the <<linkreplace "counter">><span class="vocab-reveal">counter (<span class="french-trans">comptoir/guichet</span>)</span><<run $vocab_list.push("Counter : comptoir, guichet")>><<set $score += 1>><</linkreplace>>. The officer takes your passport, opens it, and <<linkreplace "frowns">><span class="vocab-reveal">frowns (<span class="french-trans">fronce les sourcils</span>)</span><<run $vocab_list.push("To frown : froncer les sourcils")>><<set $score += 1>><</linkreplace>>.
<span style="font-style:italic">"This is a French passport. France is in the EU. You're in the wrong queue, I'm afraid. You need to go back and join the EU line, over there on the left."</span>
<div class="pedagogy pedagogy-error">
😰 Thirty minutes wasted! You feel a bit embarrassed.<br><br>
❌ ''Erreur de compréhension !''<br>
💡 ''Explication :''<br>
Le panneau disait ''"UK and EU Passports"'' à gauche et ''"All Other Passports"'' à droite.<br>
- ''EU'' = ''European Union'' (Union Européenne)<br>
- La France fait partie de l'UE, donc il fallait aller ''à gauche'' !<br>
- ''"I'm afraid"'' est une expression de politesse britannique qui signifie « malheureusement » (et non pas « j'ai peur »).
</div>
You head back to the correct queue. Luckily, this time the queue is <<linkreplace "much shorter">><span class="vocab-reveal">much shorter (<span class="french-trans">bien plus courte</span>)</span><<run $vocab_list.push("Much shorter : bien plus court")>><<set $score += 1>><</linkreplace>>.
[[Join the correct queue.|BorderControlEU]]<<set $score += 5>>
<div class="pedagogy-success">✅ ''Perfect answer!''</div>
The officer nods and gives you a small smile.
<span style="font-style:italic">"A week, very good. Where will you be <<linkreplace "staying">><span class="vocab-reveal">staying (<span class="french-trans">loger/séjourner</span>)</span><<run $vocab_list.push("To stay : loger, séjourner")>><<set $score += 1>><</linkreplace>>?"</span>
You tell him the name of your hotel near <<linkreplace "King's Cross">><span class="vocab-reveal">King's Cross (<span class="french-trans">quartier et gare emblématique de Londres</span>)</span><<run $vocab_list.push("King's Cross : quartier/gare de Londres")>><<set $score += 1>><</linkreplace>> Station.
<span style="font-style:italic">"Right. <<linkreplace "Enjoy your stay">><span class="vocab-reveal">Enjoy your stay (<span class="french-trans">Bon séjour</span>)</span><<run $vocab_list.push("Enjoy your stay : bon séjour")>><<set $score += 1>><</linkreplace>>."</span>
He stamps your passport and hands it back. You made it through! 🎉
You <<linkreplace "pick up">><span class="vocab-reveal">pick up (<span class="french-trans">récupérer — phrasal verb !</span>)</span><<run $vocab_list.push("To pick up : récupérer (phrasal verb)")>><<set $score += 1>><</linkreplace>> your <<linkreplace "luggage">><span class="vocab-reveal">luggage (<span class="french-trans">bagages</span>)</span><<run $vocab_list.push("Luggage : bagages (indénombrable)")>><<set $score += 1>><</linkreplace>> from the <<linkreplace "conveyor belt">><span class="vocab-reveal">conveyor belt (<span class="french-trans">tapis roulant à bagages</span>)</span><<run $vocab_list.push("Conveyor belt : tapis roulant")>><<set $score += 1>><</linkreplace>> and head towards the <<linkreplace "Arrivals hall">><span class="vocab-reveal">Arrivals hall (<span class="french-trans">hall des arrivées</span>)</span><<run $vocab_list.push("Arrivals hall : hall des arrivées")>><<set $score += 1>><</linkreplace>>.
Now you need to get to your hotel. A big sign shows your options:
🚇 ''Underground'' (Tube) — Cheaper but you need to figure out the route
🚕 ''Taxi'' — More expensive but easier
🗺️ ''Information Desk'' — Ask for help first
What do you do?
[[Take the Underground.|TubeStation]]
[[Take a taxi.|TaxiRank]]
[[Go to the Information Desk.|InfoDesk]]<<set $confidence -= 1>>
<<set $mistakes += 1>>
<div class="pedagogy pedagogy-error">
❌ ''Erreur grammaticale !''<br><br>
Vous avez dit : ''"I come for holiday."''<br><br>
En anglais, pour exprimer le but d'un voyage ''en cours'', on utilise :<br>
- ''"I'm here on holiday"'' (le présent continu ou la formule fixe)<br>
- ou ''"I've come for a holiday"'' (present perfect)<br><br>
⚠️ On dit aussi ''"on holiday"'' et non ''"for holiday"''*. La préposition correcte est ''on'' avec le mot *holiday* en anglais britannique.
</div>
The officer looks at you with a slightly confused expression, but he understands what you mean. He continues anyway...
[[Try answering again.|BorderControlEU]]<<set $confidence -= 1>>
<<set $mistakes += 1>>
<div class="pedagogy pedagogy-error">😰 ''Perte de confiance !''</div>
L'agent répète plus lentement :
<span style="font-style:italic">"The PURPOSE... Why are you here? Holiday? Business? Study?"</span>
<div class="pedagogy pedagogy-info">
💡 ''Astuce vocabulaire :''<br>
Le mot ''"purpose"'' signifie ''"but"'' ou ''"raison"''. C'est une question classique au contrôle des frontières :<br>
- ''"What is the purpose of your visit?"'' = Quel est le but de votre visite ?<br><br>
Réponses possibles :<br>
- ''"I'm here on holiday"'' (vacances)<br>
- ''"I'm here on business"'' (affaires)<br>
- ''"I'm here to study"'' (études)
</div>
Now you understand! What do you respond?
[[Answer: "I'm here on holiday for a week."|OfficerCorrectAnswer]]<<set $transport to "tube">>
You follow the signs with the famous red <<linkreplace "roundel">><span class="vocab-reveal">roundel (<span class="french-trans">le logo circulaire du métro londonien</span>)</span><<run $vocab_list.push("Roundel : logo circulaire du métro")>><<set $score += 1>><</linkreplace>> — the symbol of the London Underground. 🔴
You arrive at the ticket hall. A large sign reads:
''"Get your Oyster card here – <<linkreplace "tap in, tap out">><span class="vocab-reveal">tap in, tap out (<span class="french-trans">biper en entrant, biper en sortant</span>)</span><<run $vocab_list.push("Tap in/out : biper sa carte en entrant/sortant")>><<set $score += 1>><</linkreplace>>"''
You see two options:
- A <<linkreplace "ticket machine">><span class="vocab-reveal">ticket machine (<span class="french-trans">distributeur de billets</span>)</span><<run $vocab_list.push("Ticket machine : distributeur de billets")>><<set $score += 1>><</linkreplace>> where you can buy an ''Oyster card'' (a reusable travel card)
- A <<linkreplace "staffed">><span class="vocab-reveal">staffed (<span class="french-trans">avec du personnel</span>)</span><<run $vocab_list.push("Staffed : avec du personnel")>><<set $score += 1>><</linkreplace>> ticket window
The Oyster card costs £5 for the card itself, plus you need to <<linkreplace "top it up">><span class="vocab-reveal">top it up (<span class="french-trans">recharger</span>)</span><<run $vocab_list.push("To top up : recharger (une carte, un téléphone)")>><<set $score += 1>><</linkreplace>> with credit for your journeys.
[[Buy an Oyster card at the machine.|TubeBuyTicket]]
[[Ask for help at the ticket window.|TubeBuyTicketHelp]]<<run $inventory.push("🎫 Oyster Card (£20 credit)")>>
<<set $score += 3>>
You use the touch screen to buy an Oyster card. The machine is in English, but you manage! You top it up with £20.
<<inventory_alert "🎫" "Oyster Card added to your inventory!">>
Now you need to find the right platform. You look at the <<linkreplace "Tube map">><span class="vocab-reveal">Tube map (<span class="french-trans">plan du métro</span>)</span><<run $vocab_list.push("Tube map : plan du métro londonien")>><<set $score += 1>><</linkreplace>> on the wall. Your hotel is near ''King's Cross Station''.
You are currently at ''Heathrow Terminal 5'', which is on the ''Piccadilly Line'' (dark blue).
Looking at the map, King's Cross is also on the ''Piccadilly Line'' — no need to change! But which <<linkreplace "direction">><span class="vocab-reveal">direction (<span class="french-trans">direction / sens</span>)</span><<run $vocab_list.push("Direction : direction, sens")>><<set $score += 1>><</linkreplace>>?
The signs say:
- ⬅️ ''Eastbound'' — towards Cockfosters
- ➡️ ''Westbound'' — towards Heathrow Terminals 1, 2, 3
King's Cross is in ''central London'', to the east of Heathrow.
[[Take the Eastbound platform.|TubeCorrectLine]]
[[Take the Westbound platform.|TubeWrongLine]]<<run $inventory.push("🎫 Oyster Card (£20 credit)")>>
<<set $score += 3>>
You go to the ticket window. A friendly <<linkreplace "clerk">><span class="vocab-reveal">clerk (<span class="french-trans">employé(e) au guichet</span>)</span><<run $vocab_list.push("Clerk : employé(e) au guichet")>><<set $score += 1>><</linkreplace>> smiles at you.
''"Hello! How can I help you?"''
You say: "I'd like an Oyster card, please. I need to go to King's Cross."
''"Of course! That's £5 for the card. How much <<linkreplace "credit">><span class="vocab-reveal">credit (<span class="french-trans">crédit / solde</span>)</span><<run $vocab_list.push("Credit : crédit, solde sur une carte")>><<set $score += 1>><</linkreplace>> would you like to add?"''
You add £20 of credit. The clerk hands you the card and adds:
''"You want the ''Piccadilly Line'', <<linkreplace "Eastbound">><span class="vocab-reveal">Eastbound (<span class="french-trans">en direction de l'est</span>)</span><<run $vocab_list.push("Eastbound : en direction de l'est")>><<set $score += 1>><</linkreplace>>. It's a <<linkreplace "straight ride">><span class="vocab-reveal">straight ride (<span class="french-trans">trajet direct</span>)</span><<run $vocab_list.push("Straight ride : trajet direct")>><<set $score += 1>><</linkreplace>>, no changes needed. About 45 minutes."''
<<inventory_alert "🎫" "Oyster Card added to your inventory!">> The clerk even told you the right platform!
[[Head to the Eastbound Piccadilly Line platform.|TubeCorrectLine]]<<set $score += 5>>
<div class="pedagogy-success">✅ ''Correct!''</div> You tap your Oyster card on the <<linkreplace "barrier">><span class="vocab-reveal">barrier (<span class="french-trans">portillon</span>)</span><<run $vocab_list.push("Barrier : portillon d'accès")>><<set $score += 1>><</linkreplace>> and walk to the Eastbound platform.
The train arrives after a few minutes. You find a seat and relax. The journey takes about 45 minutes. You watch the station names light up on the screen inside the <<linkreplace "carriage">><span class="vocab-reveal">carriage (<span class="french-trans">wagon de métro</span>)</span><<run $vocab_list.push("Carriage : wagon (métro/train)")>><<set $score += 1>><</linkreplace>>:
''Hounslow West... Hammersmith... Earl's Court... South Kensington... Piccadilly Circus...''
Finally, you hear the <<linkreplace "announcement">><span class="vocab-reveal">announcement (<span class="french-trans">annonce</span>)</span><<run $vocab_list.push("Announcement : annonce")>><<set $score += 1>><</linkreplace>>:
''"The next station is King's Cross St Pancras. <<linkreplace "Mind the gap">><span class="vocab-reveal">Mind the gap (<span class="french-trans">Attention à l'espace entre le quai et le train — phrase iconique !</span>)</span><<run $vocab_list.push("Mind the gap : attention à l'espace (phrase iconique !)")>><<set $score += 1>><</linkreplace>> between the train and the platform."''
You grab your luggage and step off the train. You made it to central London! 🎉
[[Exit the station and look for the hotel.|HotelArrival]]<<set $confidence -= 1>>
<<set $mistakes += 1>>
You tap your Oyster card and head to the Westbound platform. After a few minutes, the train arrives and you get on.
But something is wrong... The first station is ''"Heathrow Terminals 1, 2, 3"'' — and then the train <<linkreplace "terminates">><span class="vocab-reveal">terminates (<span class="french-trans">se termine / c'est le terminus</span>)</span><<run $vocab_list.push("To terminate : se terminer (terminus)")>><<set $score += 1>><</linkreplace>>.
''"This train terminates here. All passengers must <<linkreplace "alight">><span class="vocab-reveal">alight (<span class="french-trans">descendre du train — mot formel</span>)</span><<run $vocab_list.push("To alight : descendre (transport, formel)")>><<set $score += 1>><</linkreplace>> the train."''
<div class="pedagogy pedagogy-error">
❌ ''Erreur de compréhension !''<br><br>
💡 ''Explication :''<br>
- ''Westbound'' = vers l'ouest (en s'éloignant de Londres)<br>
- ''Eastbound'' = vers l'est (vers le centre de Londres)<br>
- King's Cross est dans le ''centre de Londres'', donc à l''est'' de Heathrow !
</div>
You cross the platform to take the train in the other direction.
[[Take the Eastbound train.|TubeCorrectLine]]<<set $transport to "taxi">>
You follow the signs to the <<linkreplace "taxi rank">><span class="vocab-reveal">taxi rank (<span class="french-trans">station de taxis</span>)</span><<run $vocab_list.push("Taxi rank : station de taxis")>><<set $score += 1>><</linkreplace>>. A <<linkreplace "queue">><span class="vocab-reveal">queue (<span class="french-trans">file d'attente</span>)</span><<run $vocab_list.push("Queue : file d'attente")>><<set $score += 1>><</linkreplace>> of the famous black London cabs is waiting.
You get into the first one. The driver is a friendly <<linkreplace "bloke">><span class="vocab-reveal">bloke (<span class="french-trans">type/mec — argot britannique</span>)</span><<run $vocab_list.push("Bloke : type, mec (argot britannique)")>><<set $score += 1>><</linkreplace>> with a thick London accent.
''"Afternoon! Where to, <<linkreplace "mate">><span class="vocab-reveal">mate (<span class="french-trans">mon pote — très courant en GB !</span>)</span><<run $vocab_list.push("Mate : pote, ami (courant en GB)")>><<set $score += 1>><</linkreplace>>?"''
You need to give him the hotel address. You look at your booking confirmation on your phone: ''"The Crown Hotel, 42 Argyle Street, King's Cross, London WC1."''
How do you say the address?
[["Forty-two Argyle Street, King's Cross, please."|TaxiCorrectAddress]]
[["The hotel near King Cross, please."|TaxiWrongAddress]]<<set $score += 5>>
<div class="pedagogy-success">✅ ''Well done!'' Clear and precise — the driver knows exactly where to go.</div>
''"Argyle Street, King's Cross. I know it well. Should be about <<linkreplace "forty quid">><span class="vocab-reveal">forty quid (<span class="french-trans">quarante livres — "quid" est l'argot pour "pound"</span>)</span><<run $vocab_list.push("Quid : livre sterling (argot)")>><<set $score += 1>><</linkreplace>>, depending on <<linkreplace "traffic">><span class="vocab-reveal">traffic (<span class="french-trans">circulation</span>)</span><<run $vocab_list.push("Traffic : circulation")>><<set $score += 1>><</linkreplace>>."''
During the ride, the driver is chatty. He points out <<linkreplace "landmarks">><span class="vocab-reveal">landmarks (<span class="french-trans">monuments/sites remarquables</span>)</span><<run $vocab_list.push("Landmark : monument, site remarquable")>><<set $score += 1>><</linkreplace>> along the way.
''"See that over there? That's the <<linkreplace "Shard">><span class="vocab-reveal">Shard (<span class="french-trans">le plus grand gratte-ciel de Londres</span>)</span><<run $vocab_list.push("The Shard : plus haut gratte-ciel de Londres")>><<set $score += 1>><</linkreplace>>. Tallest building in London, that is."''
After about 50 minutes, the taxi stops in front of your hotel.
''"Here we are, <<linkreplace "mate">><span class="vocab-reveal">mate (<span class="french-trans">pote</span>)</span><<run $vocab_list.push("Mate : pote (courant en GB)")>><<set $score += 1>><</linkreplace>>. That'll be £42. Do you want a <<linkreplace "receipt">><span class="vocab-reveal">receipt (<span class="french-trans">reçu/ticket</span>)</span><<run $vocab_list.push("Receipt : reçu, ticket de caisse")>><<set $score += 1>><</linkreplace>>?"''
You pay and step out with your luggage. The hotel is right in front of you!
[[Enter the hotel.|HotelArrival]]<<set $confidence -= 1>>
<<set $mistakes += 1>>
The driver looks confused.
''"King Cross? Do you mean ''King's Cross''? And which hotel exactly? There are <<linkreplace "loads">><span class="vocab-reveal">loads (<span class="french-trans">plein de / beaucoup de — informel</span>)</span><<run $vocab_list.push("Loads : plein de, beaucoup (informel)")>><<set $score += 1>><</linkreplace>> of hotels around there, mate."''
<div class="pedagogy pedagogy-error">
❌ ''Deux erreurs ici !''<br><br>
💡 ''Explication :''<br>
1. On dit ''King's Cross'' avec l'apostrophe + s (c'est un possessif : la croix du roi). En anglais, les noms propres possessifs gardent toujours le '''s''.<br>
2. Donner une adresse vague ne suffit pas dans une grande ville ! Toujours donner le ''numéro + nom de rue'' : ''"42 Argyle Street"''.
</div>
You check your phone and give the correct address.
[["Sorry! Forty-two Argyle Street, King's Cross."|TaxiCorrectAddress]]You walk over to the <<linkreplace "Information Desk">><span class="vocab-reveal">Information Desk (<span class="french-trans">bureau d'information</span>)</span><<run $vocab_list.push("Information Desk : bureau d'information")>><<set $score += 1>><</linkreplace>>. A woman in a blue uniform is sitting behind the counter with a warm smile.
''"Good afternoon! How may I help you?"''
You explain that you need to get to King's Cross. She thinks for a moment.
''"The easiest way is the ''Piccadilly Line'' — it's a <<linkreplace "direct route">><span class="vocab-reveal">direct route (<span class="french-trans">trajet direct</span>)</span><<run $vocab_list.push("Direct route : trajet direct")>><<set $score += 1>><</linkreplace>>, about 45 minutes. Or you could take a taxi, but it would be much more expensive, especially with <<linkreplace "rush hour">><span class="vocab-reveal">rush hour (<span class="french-trans">heure de pointe</span>)</span><<run $vocab_list.push("Rush hour : heure de pointe")>><<set $score += 1>><</linkreplace>> traffic."''
She reaches under the counter and pulls out a folded piece of paper.
''"Here, take this free <<linkreplace "Tube map">><span class="vocab-reveal">Tube map (<span class="french-trans">plan du métro</span>)</span><<run $vocab_list.push("Tube map : plan du métro")>><<set $score += 1>><</linkreplace>>. It should help you <<linkreplace "find your way around">><span class="vocab-reveal">find your way around (<span class="french-trans">vous repérer / vous orienter</span>)</span><<run $vocab_list.push("To find your way around : se repérer, s'orienter")>><<set $score += 1>><</linkreplace>>."''
<<if $last_roll == 0>>
<<set $roll_needed to "InfoDesk">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir si quelque chose de spécial arrive !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>
<div class="signage">
Vous avez obtenu un ''<<print _dice>>'' !
</div>\
<<if _dice >= 4>>
<div class="pedagogy-success">🍀 ''Lucky!'' The woman also gives you a <<linkreplace "voucher">><span class="vocab-reveal">voucher (<span class="french-trans">bon de réduction</span>)</span><<run $vocab_list.push("Voucher : bon de réduction")>><<set $score += 1>><</linkreplace>> for a free coffee at the station café!</div>
<<run $inventory.push("☕ Coffee voucher (station café)")>>
<<set $confidence += 1>>
<<inventory_alert "☕" "Coffee voucher added to inventory! Confidence +1!">>
''"And here's a little something — a free coffee <<linkreplace "voucher">><span class="vocab-reveal">voucher (<span class="french-trans">bon</span>)</span><<set $score += 1>><</linkreplace>> for the café just outside. <<linkreplace "Enjoy">><span class="vocab-reveal">Enjoy (<span class="french-trans">Profitez-en</span>)</span><<run $vocab_list.push("Enjoy! : Profitez-en !")>><<set $score += 1>><</linkreplace>>!"''
<<else>>
''"Have a lovely day. <<linkreplace "Good luck">>Good luck (Bonne chance)<<run $vocab_list.push("Good luck : Bonne chance")>><<set $score += 1>><</linkreplace>>!"''
<</if>>
<</if>>
<<if !$inventory.includes("🗺️ Free Tube Map")>>
<<run $inventory.push("🗺️ Free Tube Map")>>
<<inventory_alert "🗺️" "Tube Map added to your inventory!">>
<</if>>
You thank her and head towards the Underground station, feeling more confident.
[[Head to the Tube station with your new map.|TubeStation]]You stand in front of ''The Crown Hotel''. It's a <<linkreplace "charming">><span class="vocab-reveal">charming (<span class="french-trans">charmant</span>)</span><<run $vocab_list.push("Charming : charmant")>><<set $score += 1>><</linkreplace>> Victorian building with a dark red door and a small sign that reads: ''"Welcome – Reception inside."''
You push open the <<linkreplace "heavy">><span class="vocab-reveal">heavy (<span class="french-trans">lourde</span>)</span><<run $vocab_list.push("Heavy : lourd(e)")>><<set $score += 1>><</linkreplace>> door and step into the <<linkreplace "lobby">><span class="vocab-reveal">lobby (<span class="french-trans">hall d'entrée</span>)</span><<run $vocab_list.push("Lobby : hall d'entrée (hôtel)")>><<set $score += 1>><</linkreplace>>. It smells like tea and old wood. There's a <<linkreplace "reception desk">><span class="vocab-reveal">reception desk (<span class="french-trans">bureau de la réception</span>)</span><<run $vocab_list.push("Reception desk : bureau de la réception")>><<set $score += 1>><</linkreplace>> with a silver bell on it.
A woman with glasses appears from a back room.
''"Good evening! Welcome to The Crown. Do you have a <<linkreplace "reservation">><span class="vocab-reveal">reservation (<span class="french-trans">réservation</span>)</span><<run $vocab_list.push("Reservation : réservation")>><<set $score += 1>><</linkreplace>>?"''
[["Yes, I have a reservation under the name <span class="player-name">$playerName</span>."|HotelCheckIn]]
[["Yes, I have a reservation. It is for one person, one week."|HotelCheckIn]]<<set $score += 3>>
The receptionist types on her computer and smiles.
''"Ah yes, here we are! Room 7, on the <<linkreplace "first floor">><span class="vocab-reveal">first floor (<span class="french-trans">premier étage — ATTENTION : en anglais britannique, le "first floor" = le 1er étage, PAS le rez-de-chaussée !</span>)</span><<run $vocab_list.push("First floor (GB) : 1er étage (≠ rez-de-chaussée !)")>><<set $score += 1>><</linkreplace>>. Here is your <<linkreplace "key card">><span class="vocab-reveal">key card (<span class="french-trans">carte magnétique</span>)</span><<run $vocab_list.push("Key card : carte magnétique (hôtel)")>><<set $score += 1>><</linkreplace>>. <<linkreplace "Breakfast">><span class="vocab-reveal">Breakfast (<span class="french-trans">petit-déjeuner</span>)</span><<run $vocab_list.push("Breakfast : petit-déjeuner")>><<set $score += 1>><</linkreplace>> is served between 7 and 10 in the dining room on the <<linkreplace "ground floor">><span class="vocab-reveal">ground floor (<span class="french-trans">rez-de-chaussée — en anglais GB !</span>)</span><<run $vocab_list.push("Ground floor (GB) : rez-de-chaussée")>><<set $score += 1>><</linkreplace>>."''
<<run $inventory.push("🔑 Hotel Key Card (Room 7)")>>
<<inventory_alert "🔑" "Key Card added to inventory!">>
She points to her left:
''"The <<linkreplace "lift">><span class="vocab-reveal">lift (<span class="french-trans">ascenseur — attention, en américain c'est "elevator" !</span>)</span><<run $vocab_list.push("Lift (GB) / Elevator (US) : ascenseur")>><<set $score += 1>><</linkreplace>> is just over there, or you can take the stairs."''
You walk to the lift and press a button. Which floor do you choose?
[[Press button "G" (Ground floor).|HotelCheckInFloorMistake]]
[[Press button "1" (First floor).|HotelCheckInCorrect]]
[[Press button "2" (Second floor).|HotelCheckInFloorMistake2]]<<set $score += 5>>
<div class="pedagogy-success">✅ ''Well done!''</div> In British English:
- ''Ground floor'' (G) = Rez-de-chaussée
- ''First floor'' (1) = 1er étage
- ''Second floor'' (2) = 2ème étage
C'est différent de l'usage américain et français où le « premier étage » peut correspondre au rez-de-chaussée !
The lift doors open. You walk down a narrow <<linkreplace "hallway">><span class="vocab-reveal">hallway (<span class="french-trans">couloir</span>)</span><<run $vocab_list.push("Hallway : couloir (intérieur)")>><<set $score += 1>><</linkreplace>> with old portraits on the walls. Room 5... Room 6... ''Room 7''.
You tap your key card. The door clicks open.
[[Enter your room.|HotelRoom]]<<set $confidence -= 1>>
<<set $mistakes += 1>>
<div class="pedagogy pedagogy-error">
❌ ''Erreur culturelle !''<br><br>
Vous arrivez au ''Ground floor'' (G) — le rez-de-chaussée. Mais votre chambre est au ''first floor'' !<br><br>
💡 ''Explication — Les étages en anglais britannique :''<br>
| Bouton | 🇬🇧 British English | 🇫🇷 Français |
|--------|---------------------|-------------|<br>
| G | Ground floor | Rez-de-chaussée |<br>
| 1 | First floor | 1er étage |<br>
| 2 | Second floor | 2ème étage |<br><br>
En France, le « premier étage » est juste au-dessus du rez-de-chaussée. C'est exactement pareil en anglais britannique ! Le piège c'est le ''ground floor = G'', pas le ''1''.
</div>
[[Go back into the lift and press "1".|HotelCheckInCorrect]]<<set $confidence -= 1>>
<<set $mistakes += 1>>
<div class="pedagogy pedagogy-error">
❌ ''Erreur !''<br><br>
Vous arrivez au ''Second floor'' (2ème étage). Pas de chambre 7 ici !<br><br>
💡 La réceptionniste avait bien dit ''"first floor"'' — soit le bouton ''1'' dans l'ascenseur.
</div>
[[Go back down to the first floor (button 1).|HotelCheckInCorrect]]The room is small but <<linkreplace "cosy">><span class="vocab-reveal">cosy (<span class="french-trans">douillet — orthographe britannique avec un 'y'</span>)</span><<run $vocab_list.push("Cosy (GB) / Cozy (US) : douillet")>><<set $score += 1>><</linkreplace>>. There's a single bed, a <<linkreplace "wardrobe">><span class="vocab-reveal">wardrobe (<span class="french-trans">armoire</span>)</span><<run $vocab_list.push("Wardrobe : armoire")>><<set $score += 1>><</linkreplace>>, a small desk, and a window with a view of the <<linkreplace "rooftops">><span class="vocab-reveal">rooftops (<span class="french-trans">toits</span>)</span><<run $vocab_list.push("Rooftops : toits")>><<set $score += 1>><</linkreplace>> of London.
You put your luggage down and check the time — it's 6:30 PM. You're tired, but also hungry and excited to explore!
On the desk, you notice a small <<linkreplace "leaflet">><span class="vocab-reveal">leaflet (<span class="french-trans">dépliant / brochure</span>)</span><<run $vocab_list.push("Leaflet : dépliant, brochure")>><<set $score += 1>><</linkreplace>> with local recommendations:
🍺 ''"The Queen's Arms"'' — a traditional <<linkreplace "pub">><span class="vocab-reveal">pub (<span class="french-trans">bar typiquement britannique — abréviation de "public house"</span>)</span><<run $vocab_list.push("Pub : bar britannique (public house)")>><<set $score += 1>><</linkreplace>>, 5 minutes walk
🍝 ''"Bella Napoli"'' — an Italian restaurant, 3 minutes walk
You're getting hungry. What do you do this evening?
[[Go to the pub for a true British experience! 🍺|PubEvening]]
[[Go to the Italian restaurant for dinner. 🍝|RestaurantEvening]]
[[Stay in and rest — it's been a long day. 😴|StayInEvening]]You walk down the street and push open the door of ''The Queen's Arms''. Inside, it's warm and noisy. The walls are covered in dark wood, and there are old photographs of London everywhere. A <<linkreplace "fireplace">><span class="vocab-reveal">fireplace (<span class="french-trans">cheminée</span>)</span><<run $vocab_list.push("Fireplace : cheminée")>><<set $score += 1>><</linkreplace>> is <<linkreplace "crackling">><span class="vocab-reveal">crackling (<span class="french-trans">crépitant</span>)</span><<run $vocab_list.push("To crackle : crépiter")>><<set $score += 1>><</linkreplace>> in the corner.
You walk up to the <<linkreplace "bar">><span class="vocab-reveal">bar (<span class="french-trans">le comptoir — au Royaume-Uni, on commande toujours au comptoir !</span>)</span><<run $vocab_list.push("Bar (UK) : on commande au comptoir, pas à table")>><<set $score += 1>><</linkreplace>>. The <<linkreplace "bartender">><span class="vocab-reveal">bartender (<span class="french-trans">barman/barmaid</span>)</span><<run $vocab_list.push("Bartender : barman, barmaid")>><<set $score += 1>><</linkreplace>> looks at you.
''"Evening! What can I <<linkreplace "get you">><span class="vocab-reveal">get you (<span class="french-trans">vous servir — formule très courante dans les pubs</span>)</span><<run $vocab_list.push("What can I get you? : Qu'est-ce que je vous sers ?")>><<set $score += 1>><</linkreplace>>?"''
<div class="pedagogy pedagogy-info">
💡 ''Culture tip :'' Dans un pub britannique, on ne s'assied PAS pour attendre un serveur. On commande ''au comptoir'', on paie ''immédiatement'', et on emporte son verre soi-même.
</div>
[["I would like a beer, please."|PubOrderBeer]]
[["A pint of lager, please."|PubOrderCorrect]]
[["Can I see the menu? I'm quite hungry."|PubOrderFood]]<<set $score += 5>>
<div class="pedagogy-success">✅ ''Perfect pub English!''</div>
The bartender nods approvingly.
''"A <<linkreplace "pint">><span class="vocab-reveal">pint (<span class="french-trans">environ 568 ml — plus grand qu'un demi français !</span>)</span><<run $vocab_list.push("Pint : ~568 ml (mesure britannique)")>><<set $score += 1>><</linkreplace>> of lager, coming right up. That'll be <<linkreplace "£5.80">><span class="vocab-reveal">£5.80 (<span class="french-trans">five pounds eighty</span>)</span><<run $vocab_list.push("£5.80 : five pounds eighty")>><<set $score += 1>><</linkreplace>>."''
You pay and take your pint to a small table by the fireplace.
<<if $last_roll == 0>>
<<set $roll_needed to "PubOrderCorrect">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir comment se passe votre soirée au pub !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>
<div class="signage">
Vous avez obtenu un ''<<print _dice>>'' !
</div>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 A friendly <<linkreplace "local">><span class="vocab-reveal">local (<span class="french-trans">habitué du quartier</span>)</span><<run $vocab_list.push("Local : habitué du quartier")>><<set $score += 1>><</linkreplace>> sits down next to you!</div>
''"You look like you're not from around here! Where are you from, then?"''
You have a lovely <<linkreplace "chat">><span class="vocab-reveal">chat (<span class="french-trans">conversation — en anglais GB, très courant !</span>)</span><<run $vocab_list.push("Chat : conversation informelle")>><<set $score += 1>><</linkreplace>> about France and London. Your English is getting better already!
<<set $confidence += 1>>
<<inventory_alert "✨" "Confidence +1! Nothing like a real conversation!">>
<<elseif _dice >= 3>>
You sit quietly and enjoy the <<linkreplace "atmosphere">><span class="vocab-reveal">atmosphere (<span class="french-trans">ambiance</span>)</span><<run $vocab_list.push("Atmosphere : ambiance")>><<set $score += 1>><</linkreplace>>, listening to the English conversations around you. Passive learning counts too!
<<else>>
The pub is very loud. You can <<linkreplace "barely">><span class="vocab-reveal">barely (<span class="french-trans">à peine</span>)</span><<run $vocab_list.push("Barely : à peine")>><<set $score += 1>><</linkreplace>> hear anything. But the beer is good!
<</if>>
<</if>>
[[Finish your pint and head back to the hotel.|EndOfDay1]]<<set $score += 2>>
<div class="pedagogy pedagogy-info">💡 ''Acceptable, but not quite natural!''<br><br>💡 ''Astuce pub :''
En GB, on ne dit pas juste ''"a beer"''. On précise :<br>
- Le ''type'' : lager, ale, stout, IPA...<br>
- La ''taille'' : a ''pint'' (~568 ml) ou a ''half'' (~284 ml)
</div>
The bartender understands you, but asks:
''"Sure. What kind? We've got <<linkreplace "lager">><span class="vocab-reveal">lager (<span class="french-trans">bière blonde</span>)</span><<run $vocab_list.push("Lager : bière blonde")>><<set $score += 1>><</linkreplace>>, <<linkreplace "ale">><span class="vocab-reveal">ale (<span class="french-trans">bière ambrée/artisanale</span>)</span><<run $vocab_list.push("Ale : bière ambrée, artisanale")>><<set $score += 1>><</linkreplace>>, <<linkreplace "stout">><span class="vocab-reveal">stout (<span class="french-trans">bière brune épaisse, genre Guinness</span>)</span><<run $vocab_list.push("Stout : bière brune épaisse (ex: Guinness)")>><<set $score += 1>><</linkreplace>>... And do you want a ''pint'' or a ''half''?"''
[["A pint of lager, please."|PubOrderCorrect]]<<set $score += 3>>
The bartender slides a <<linkreplace "menu">><span class="vocab-reveal">menu (<span class="french-trans">la carte — attention, en GB "menu" = la carte complète</span>)</span><<run $vocab_list.push("Menu (GB) : carte du restaurant")>><<set $score += 1>><</linkreplace>> across the bar.
''"Here you go. Our <<linkreplace "fish and chips">><span class="vocab-reveal">fish and chips (<span class="french-trans">poisson pané et frites — le plat national !</span>)</span><<run $vocab_list.push("Fish and chips : poisson pané + frites (plat national)")>><<set $score += 1>><</linkreplace>> is very popular. And I'd recommend the <<linkreplace "shepherd's pie">><span class="vocab-reveal">shepherd's pie (<span class="french-trans">hachis parmentier britannique</span>)</span><<run $vocab_list.push("Shepherd's pie : hachis parmentier (GB)")>><<set $score += 1>><</linkreplace>> as well."''
You decide to order the fish and chips — when in London, do as the Londoners do!
''"Would you like <<linkreplace "mushy peas">><span class="vocab-reveal">mushy peas (<span class="french-trans">purée de petits pois — accompagnement typique !</span>)</span><<run $vocab_list.push("Mushy peas : purée de petits pois (typique)")>><<set $score += 1>><</linkreplace>> with that?"''
You nod, curious to try it. The food arrives quickly and it's delicious!
[[Enjoy your meal and head back to the hotel.|EndOfDay1]]You walk into ''Bella Napoli''. It's a cosy little Italian restaurant with <<linkreplace "chequered">><span class="vocab-reveal">chequered (<span class="french-trans">à carreaux — orthographe GB</span>)</span><<run $vocab_list.push("Chequered (GB) / Checkered (US) : à carreaux")>><<set $score += 1>><</linkreplace>> tablecloths and candles on every table.
A <<linkreplace "waiter">><span class="vocab-reveal">waiter (<span class="french-trans">serveur</span>)</span><<run $vocab_list.push("Waiter : serveur / Waitress : serveuse")>><<set $score += 1>><</linkreplace>> approaches you with a smile.
''"Good evening! Table for one? Right this way. Here's the menu."''
He places a menu in front of you. After looking at it for a few minutes, you're ready to order. The waiter returns.
''"Are you ready to order?"''
[["Yes. I will take pasta carbonara and water, please."|RestaurantOrderMistake]]
[["Yes. Could I have the pasta carbonara and a glass of water, please?"|RestaurantOrderCorrect]]<<set $score += 5>>
<div class="pedagogy-success">✅ ''Excellent English!''</div> Using ''"Could I have..."'' is the polite way to order in a British restaurant.
<span style="font-style:italic">"Of course! <<linkreplace "Sparkling">><span class="vocab-reveal">Sparkling (<span class="french-trans">pétillante</span>)</span><<run $vocab_list.push("Sparkling water : eau pétillante")>><<set $score += 1>><</linkreplace>> or <<linkreplace "still">><span class="vocab-reveal">still (<span class="french-trans">plate</span>)</span><<run $vocab_list.push("Still water : eau plate")>><<set $score += 1>><</linkreplace>>?"</span>
[["Still, please."|RestaurantEnjoy]]
[["Sparkling, please."|RestaurantEnjoy]]<<set $confidence -= 1>>
<<set $mistakes += 1>>
<div class="pedagogy pedagogy-error">
😬 ''Compréhensible, mais pas très naturel.''<br><br>
💡 ''Explication :''<br>
- ❌ ''"I will take"'' → trop direct, ça fait un peu autoritaire<br>
- ✅ ''"Could I have..."'' ou ''"I'd like..."'' → formules polies pour commander<br>
- ❌ ''"water"'' tout court → En GB, le serveur demandera toujours : ''"Sparkling or still?"'' (pétillante ou plate ?). Il faut aussi dire ''"a glass of water"'' plutôt que juste ''"water"''.
</div>
Le serveur sourit et reformule pour vous :
<span style="font-style:italic">"So, the pasta carbonara. And would that be <<linkreplace "sparkling">><span class="vocab-reveal">sparkling (<span class="french-trans">pétillante</span>)</span><<run $vocab_list.push("Sparkling : pétillante")>><<set $score += 1>><</linkreplace>> or <<linkreplace "still">><span class="vocab-reveal">still (<span class="french-trans">plate (eau)</span>)</span><<run $vocab_list.push("Still : plate (eau)")>><<set $score += 1>><</linkreplace>> water?"</span>
[["Still, please."|RestaurantEnjoy]]
[["Sparkling, please."|RestaurantEnjoy]]<<set $score += 2>>
The pasta arrives and it's absolutely <<linkreplace "delicious">><span class="vocab-reveal">delicious (<span class="french-trans">délicieux</span>)</span><<run $vocab_list.push("Delicious : délicieux")>><<set $score += 1>><</linkreplace>>. You enjoy a quiet dinner, practising reading the English newspaper left on the next table.
When you're finished, you need to ask for the bill. In the UK, you don't just get up and leave — you ask the waiter.
<span style="font-style:italic">"<<linkreplace "Excuse me">><span class="vocab-reveal">Excuse me (<span class="french-trans">Excusez-moi — pour attirer l'attention</span>)</span><<run $vocab_list.push("Excuse me : pour attirer l'attention poliment")>><<set $score += 1>><</linkreplace>>, could I have the <<linkreplace "bill">><span class="vocab-reveal">bill (<span class="french-trans">l'addition — en américain on dit "check"</span>)</span><<run $vocab_list.push("The bill (GB) / The check (US) : l'addition")>><<set $score += 1>><</linkreplace>>, please?"</span>
The waiter brings it. The total is £14.50. You notice a line that says: ''"Service not included."''
<div class="pedagogy pedagogy-info">
💡 ''Culture tip :'' Au Royaume-Uni, un <<linkreplace "tip">><span class="vocab-reveal">tip (<span class="french-trans">pourboire</span>)</span><<run $vocab_list.push("Tip : pourboire")>><<set $score += 1>><</linkreplace>> de 10-15% est habituel au restaurant (mais jamais au pub !).
</div>
You leave a £2 tip and head back to the hotel.
[[Walk back to the hotel.|EndOfDay1]]<<set $confidence += 1>>
Sometimes the best thing you can do is rest. You take a hot <<linkreplace "shower">><span class="vocab-reveal">shower (<span class="french-trans">douche</span>)</span><<run $vocab_list.push("Shower : douche")>><<set $score += 1>><</linkreplace>>, put on comfortable clothes, and sit by the window watching the London <<linkreplace "skyline">><span class="vocab-reveal">skyline (<span class="french-trans">horizon / panorama urbain</span>)</span><<run $vocab_list.push("Skyline : horizon, panorama urbain")>><<set $score += 1>><</linkreplace>> as the sun goes down.
You find a small English TV in the corner and turn it on. There's a <<linkreplace "quiz show">><span class="vocab-reveal">quiz show (<span class="french-trans">jeu télévisé</span>)</span><<run $vocab_list.push("Quiz show : jeu télévisé")>><<set $score += 1>><</linkreplace>> on — you try to follow along. You understand about half of it, which is not bad for the first evening!
<<inventory_alert "🌙" "Confidence +1! Rest is important for learning. Your brain is processing...">>
[[Go to sleep.|EndOfDay1]]You're back in your hotel room. What a first day! You lie on the bed and think about everything that happened:
✈️ You landed at Heathrow.
🛂 You passed through Border Control.
<<if $transport == "taxi">>🚕 You took a taxi to King's Cross.<<else>>🚇 You found your way to King's Cross on the Tube.<</if>>
🏨 You checked into your hotel.
Your English is already getting better. Before falling asleep, you open your phone and quickly review the words in your <<linkreplace "vocabulary notebook">><span class="vocab-reveal">vocabulary notebook (<span class="french-trans">carnet de vocabulaire</span>)</span><<run $vocab_list.push("Vocabulary notebook : carnet de vocabulaire")>><<set $score += 1>><</linkreplace>>.
📊 ''Day 1 Summary:''
- Words learned: <<print $vocab_list.length>>
- Score: <<print $score>> ⭐
- Mistakes: <<print $mistakes>>
- Confidence: <<print $confidence>> / <<print $max_confidence>>
<<if $confidence <= 0>>
[[...|GameOver]]
<<else>>
<<set $day to 2>>
Tomorrow is a new day in London. What adventures await?
🌙 ''You close your eyes and fall asleep to the distant sound of the city...''
[[🧠 Take the Daily Vocab Review|VocabReview]] <<set $review_init to true>>
[[☀️ Day 2: Exploring London!|Day2Morning]]
<</if>><div class="pedagogy pedagogy-error">
😰 ''GAME OVER — Confidence Meltdown!''<br><br>
❌ ''Ce n'est pas la fin du monde !''<br><br>
Tout le monde fait des erreurs en apprenant une langue. Les erreurs sont normales et font partie de l'apprentissage. L'important, c'est de reprendre confiance et de réessayer !<br><br>
💡 ''Conseils :''<br>
- Relisez les mots de votre carnet de vocabulaire<br>
- Faites attention aux explications après chaque erreur<br>
- N'ayez pas peur de vous tromper : les Britanniques sont très patients !
</div>
''Your final stats:''
- Words learned: <<print $vocab_list.length>>
- Score: <<print $score>> ⭐
- Mistakes: <<print $mistakes>>
[[🔄 Start the adventure again from the beginning.|Start]]☀️''DAY 2 - Good morning, London!''
You <<linkreplace "wake up">><span class="vocab-reveal">wake up (<span class="french-trans">se réveiller</span>)</span><<run $vocab_list.push("To wake up : se réveiller")>><<set $score += 1>><</linkreplace>> feeling refreshed. The light is filtering through the curtains of your hotel room near King's Cross.
You remember you are on the <<linkreplace "first floor">><span class="vocab-reveal">first floor (<span class="french-trans">1er étage</span>)</span><<run $vocab_list.push("First floor : 1er étage")>><<set $score += 1>><</linkreplace>>. You quickly get ready and head down to the <<linkreplace "ground floor">><span class="vocab-reveal">ground floor (<span class="french-trans">rez-de-chaussée</span>)</span><<run $vocab_list.push("Ground floor : rez-de-chaussée")>><<set $score += 1>><</linkreplace>> for breakfast.
In the dining room, there's a delicious smell of cooking.
[[Go to the breakfast buffet.|Day2Breakfast]]A large sign above the hot plates says: ''"FREE FULL ENGLISH BREAKFAST FOR GUESTS"''
The <<linkreplace "waitress">><span class="vocab-reveal">waitress (<span class="french-trans">serveuse</span>)</span><<run $vocab_list.push("Waitress : serveuse")>><<set $score += 1>><</linkreplace>> greets you:
''"Morning! <<linkreplace "Help yourself">><span class="vocab-reveal">Help yourself (<span class="french-trans">servez-vous</span>)</span><<run $vocab_list.push("Help yourself : servez-vous")>><<set $score += 1>><</linkreplace>> to the buffet. There's tea and coffee on that table over there."''
You look at the options. It's a real British feast! What do you put on your plate?
- <<linkreplace "Scrambled eggs">><span class="vocab-reveal">Scrambled eggs (<span class="french-trans">oeufs brouillés</span>)</span><<run $vocab_list.push("Scrambled eggs : oeufs brouillés")>><<set $score += 1>><</linkreplace>> and <<linkreplace "bacon">><span class="vocab-reveal">bacon (<span class="french-trans">lard/bacon</span>)</span><<run $vocab_list.push("Bacon : lard, bacon")>><<set $score += 1>><</linkreplace>> 🍳
- <<linkreplace "Sausages">><span class="vocab-reveal">Sausages (<span class="french-trans">saucisses</span>)</span><<run $vocab_list.push("Sausages : saucisses")>><<set $score += 1>><</linkreplace>> and <<linkreplace "baked beans">><span class="vocab-reveal">baked beans (<span class="french-trans">haricots à la sauce tomate</span>)</span><<run $vocab_list.push("Baked beans : haricots sauce tomate")>><<set $score += 1>><</linkreplace>> 🥫
- <<linkreplace "Black pudding">><span class="vocab-reveal">Black pudding (<span class="french-trans">boudin noir</span>)</span><<run $vocab_list.push("Black pudding : boudin noir")>><<set $score += 1>><</linkreplace>> and <<linkreplace "mushrooms">><span class="vocab-reveal">mushrooms (<span class="french-trans">champignons</span>)</span><<run $vocab_list.push("Mushrooms : champignons")>><<set $score += 1>><</linkreplace>> 🍄
You also grab some <<linkreplace "toast">><span class="vocab-reveal">toast (<span class="french-trans">pain grillé</span>)</span><<run $vocab_list.push("Toast : pain grillé / tartine")>><<set $score += 1>><</linkreplace>> and a glass of orange juice.
You sit at a table. Near your <<linkreplace "cutlery">><span class="vocab-reveal">cutlery (<span class="french-trans">couverts</span>)</span><<run $vocab_list.push("Cutlery : les couverts")>><<set $score += 1>><</linkreplace>>, there's a free local newspaper. You feel like a real Londoner!
[[Finish breakfast and plan your day.|Day2Choices]]With a full stomach, you're ready to explore! You reach into your pocket for your phone to check the directions, but... oh no! The battery is completely dead. You forgot to charge it! 🔋🪫
<<if $inventory.includes("🗺️ Free Tube Map")>>
<div class="pedagogy-success">Thank goodness! You remember the free Tube map the woman at the airport gave you. You take it out of your pocket. You can navigate like a true Londoner!</div>
London is huge, but you want to see the most iconic places today.
Where do you want to go this morning?
1. 🏰 ''Westminster'' — To see ''Big Ben'', the ''Houses of Parliament'', and ''Westminster Abbey''. (Iconic sightseeing)
2. 🏛️ ''The British Museum'' — One of the world's greatest museums. (History and culture)
3. 🛍️ ''Oxford Street'' — London's most famous shopping street. (Shopping and crowds)
[[Go to Westminster.|WestminsterArrival]]
[[Go to the British Museum.|MuseumArrival]]
[[Go to Oxford Street.|OxfordStreetArrival]]
<<else>>
<div class="pedagogy pedagogy-error">You have no phone and no map! You are completely lost. You cannot explore the city until you find a map.</div>
You need to ask the hotel receptionist for help.
[[Go back to the reception to ask for a map.|Day2AskForMap]]
<</if>>You walk back to the reception desk. The friendly woman from last night is there.
You need to ask for a map. How do you say it?
[["Do you have a map of the city, please?"|Day2GetMapCorrect]]
[["I need map now."|Day2GetMapRude]]<<set $score += 3>>
<<set $confidence += 1>>
''"Of course!"'' she smiles. ''"Here is a complimentary tourist map and a Tube map. Do you need any directions?"''
You say you're fine and thank her.
<<run $inventory.push("🗺️ Free Tube Map")>>
<<inventory_alert "🗺️" "Tube Map acquired! Now you can travel.">>
[[Plan your day!|Day2Choices]]<<set $confidence -= 1>>
The receptionist looks a bit surprised by your directness, but hands you a map.
''"Here you go,"'' she says, a bit coldly.
<div class="pedagogy pedagogy-error">In the UK, politeness is extremely important. Always use "Please", "Excuse me", or "Could you...".</div>
<<run $inventory.push("🗺️ Free Tube Map")>>
<<inventory_alert "🗺️" "Tube Map acquired! Try to be more polite next time.">>
[[Plan your day!|Day2Choices]]<<set $confidence += 1>>
You take the Tube to''Westminster Station''. As soon as you step out of the station, your jaw drops. 😲
Directly in front of you is <<linkreplace "Big Ben">><span class="vocab-reveal">Big Ben (<span class="french-trans">le clocher célèbre — en réalité le nom de la cloche</span>)</span><<run $vocab_list.push("Big Ben : cloche/tour du Parlement")>><<set $score += 1>><</linkreplace>> and the massive <<linkreplace "Houses of Parliament">><span class="vocab-reveal">Houses of Parliament (<span class="french-trans">le Parlement britannique</span>)</span><<run $vocab_list.push("Houses of Parliament : le Parlement")>><<set $score += 1>><</linkreplace>>. The gothic architecture is stunning against the blue sky.
The area is full of tourists from all over the world, all busy with <<linkreplace "sightseeing">><span class="vocab-reveal">sightseeing (<span class="french-trans">le tourisme / la visite de monuments</span>)</span><<run $vocab_list.push("Sightseeing : visite de sites touristiques")>><<set $score += 1>><</linkreplace>>. You walk towards''Westminster Bridge'' to get a better view of the''River Thames''.
Suddenly, a woman with a large camera approaches you.
''"Excuse me! I'm so sorry to <<linkreplace "bother">><span class="vocab-reveal">bother (<span class="french-trans">déranger</span>)</span><<run $vocab_list.push("To bother : déranger")>><<set $score += 1>><</linkreplace>> you..."''
[[Listen to her.|WestminsterInteraction]]The woman holds out her camera and smiles hopefully.
''"Could you possibly <<linkreplace "take a photo">><span class="vocab-reveal">take a photo (<span class="french-trans">prendre une photo</span>)</span><<run $vocab_list.push("To take a photo : prendre une photo")>><<set $score += 1>><</linkreplace>> of me and my husband with Big Ben in the background? Just <<linkreplace "press the button">><span class="vocab-reveal">press the button (<span class="french-trans">appuyer sur le bouton</span>)</span><<run $vocab_list.push("Press the button : appuyer sur le bouton")>><<set $score += 1>><</linkreplace>> here."''
How do you respond?
[["Sure! No problem at all."|WestminsterPhotoSuccess]]
[["Wait... how does it work? I don't know."|WestminsterPhotoConfused]]
[["No, I'm busy. Sorry."|WestminsterPhotoRefuse]]<<set $score += 5>>
<<set $confidence += 1>>
''"Oh, that's lovely! Thank you so much, you're a star!"''
You take a great photo of the couple. They look very happy.
<<inventory_alert "📸" "Confidence +1! Helping others is a great way to use your English.">>
They thank you again and walk away. You feel good about yourself. Your English sounded natural!
[[Continue your walk towards Westminster Abbey.|WestminsterAbbey]]<<set $confidence -= 1>>
The woman's smile fades slightly as she starts explaining how to use the camera. It's a bit complicated and you feel a bit embarrassed by your lack of vocabulary to explain you're just a bit lost.
''"Oh, don't worry, I'll ask someone else. Have a lovely day!"''
She walks away. You feel like you missed a simple opportunity to be helpful.
[[Continue towards the Abbey.|WestminsterAbbey]]<<set $confidence -= 2>>
The woman looks surprised and a bit hurt.
''"Oh... okay. Sorry for bothering you."''
She turns away quickly. You feel a bit cold and rude. In the UK, small polite interactions like this are very common and expected.
[[Walk away towards the Abbey.|WestminsterAbbey]]<<if $last_roll == 0>>
<<set $roll_needed to "WestminsterAbbey">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir si l'entrée de l'Abbaye est très fréquentée !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
You arrive at the entrance of''Westminster Abbey'', where kings and queens are crowned.
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Lucky!'' The queue is very short today. You can enter almost immediately.</div>
<<set $score += 5>>
[[Enter the Abbey.|WestminsterInside]]
<<elseif _dice >= 3>>
The queue is quite long, but it's moving. You decide to wait and listen to the audio guide.
[[Wait in line.|WestminsterInside]]
<<else>>
The queue is enormous! It stretches all the way around the building.
[[Wait anyway (30 minutes).|WestminsterInside]]
[[Change your mind and go somewhere else.|Day2Choices]]
<</if>>
<</if>>"Coming soon: The interior of the Abbey!"
[[Back to choices for now.|Day2Choices]]<<set $confidence -= 1>>
You exit the Tube at''Oxford Circus''. The moment you reach the street level, you are hit by a wall of people and noise. 😵💫
Oxford Street is famous for being incredibly <<linkreplace "crowded">><span class="vocab-reveal">crowded (<span class="french-trans">bondé</span>)</span><<run $vocab_list.push("Crowded : bondé")>><<set $score += 1>><</linkreplace>>. Massive red double-decker buses crawl slowly through the sea of shoppers. There are huge stores everywhere:''Selfridges'',''Marks & Spencer'',''H&M'', and the
massive''Primark''.
You decide to enter a large clothing store to find a souvenir or a new shirt.
[[Enter the store.|OxfordStreetShopping]]Inside, it's a bit quieter but still busy. You find a nice T-shirt with a London design. You need to check the <<linkreplace "size">><span class="vocab-reveal">size (<span class="french-trans">la taille</span>)</span><<run $vocab_list.push("Size : la taille (vêtements)")>><<set $score += 1>><</linkreplace>>.
A <<linkreplace "shop assistant">><span class="vocab-reveal">shop assistant (<span class="french-trans">vendeuse / vendeur</span>)</span><<run $vocab_list.push("Shop assistant : vendeur/se")>><<set $score += 1>><</linkreplace>> approaches you.
''"Hi there! Are you <<linkreplace "looking for">><span class="vocab-reveal">looking for (<span class="french-trans">chercher</span>)</span><<run $vocab_list.push("To look for : chercher")>><<set $score += 1>><</linkreplace>> anything in particular? Or just <<linkreplace "browsing">><span class="vocab-reveal">browsing (<span class="french-trans">jeter un oeil / regarder sans but précis</span>)</span><<run $vocab_list.push("Browsing : jeter un oeil")>><<set $score += 1>><</linkreplace>>?"''
How do you répondre ?
[["I'm looking for this in a 'Medium', please."|OxfordStreetSizeCorrect]]
[["Just browsing, thank you."|OxfordStreetBrowsing]]
[["Where is the clothes for me?"|OxfordStreetGrammarMistake]]<<set $score += 5>>
<<set $confidence += 1>>
''"Certainly! Let me check the <<linkreplace "stockroom">><span class="vocab-reveal">stockroom (<span class="french-trans">la réserve</span>)</span><<run $vocab_list.push("Stockroom : la réserve")>><<set $score += 1>><</linkreplace>> for you."''
She returns a minute later with the T-shirt.
''"Here you go. The <<linkreplace "fitting rooms">><span class="vocab-reveal">fitting rooms (<span class="french-trans">les cabines d'essayage</span>)</span><<run $vocab_list.push("Fitting rooms : cabines d'essayage")>><<set $score += 1>><</linkreplace>> are just in the corner if you want to <<linkreplace "try it on">><span class="vocab-reveal">try it on (<span class="french-trans">l'essayer</span>)</span><<run $vocab_list.push("To try on : essayer (vêtement)")>><<set $score += 1>><</linkreplace>>."''
[[Try the T-shirt on.|OxfordStreetFittingRoom]]<<set $score += 2>>
''"No problem. Just <<linkreplace "shout">><span class="vocab-reveal">shout (<span class="french-trans">appeler / crier — ici : faites-moi signe</span>)</span><<run $vocab_list.push("Give me a shout : faites-moi signe")>><<set $score += 1>><</linkreplace>> if you need any help!"''
You continue looking around.
[[Look for a bargain.|OxfordStreetBargain]]<<set $confidence -= 1>>
<<set $mistakes += 1>>
<div class="pedagogy pedagogy-error">
❌ ''Erreur de grammaire !''<br><br>
💡 ''Explication :''<br>
Le mot ''"clothes"'' (vêtements) est toujours''pluriel'' en anglais. Il faut donc utiliser ''"are"'' : ''"Where are the clothes?"''.
</div>
L'employée sourit poliment et répond :
''"The men's section is just upstairs, sir/madam."''
[[Go upstairs.|OxfordStreetShopping]]<<if $last_roll == 0>>
<<set $roll_needed to "OxfordStreetBargain">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir si vous trouvez une bonne affaire !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Bargain alert!'' You find a high-quality hoodie at''70% off''! It's a real <<linkreplace "steal">><span class="vocab-reveal">steal (<span class="french-trans">une affaire en or / gratuit — figuré</span>)</span><<run $vocab_list.push("A steal : une affaire incroyable")>><<set $score += 5>><</linkreplace>>.</div>
<<run $inventory.push("🧥 Premium London Hoodie")>>
<<inventory_alert "🧥" "Premium Hoodie added to inventory! What a bargain!">>
<<elseif _dice >= 2>>
You find a nice scarf for £10. Not bad.
<<run $inventory.push("🧣 London Scarf")>>
<<else>>
Everything seems very expensive today. You decide not to buy anything yet.
<</if>>
[[Go to the cashier to pay.|OxfordStreetCheckout]]
<</if>>The T-shirt fits perfectly! You decide to buy it.
[[Go to the cashier.|OxfordStreetCheckout]]You join the <<linkreplace "queue">><span class="vocab-reveal">queue (<span class="french-trans">file d'attente</span>)</span><<run $vocab_list.push("Queue : file d'attente")>><<set $score += 1>><</linkreplace>> for the <<linkreplace "tills">><span class="vocab-reveal">tills (<span class="french-trans">les caisses</span>)</span><<run $vocab_list.push("Tills : les caisses")>><<set $score += 1>><</linkreplace>>.
When it's your turn, the <<linkreplace "cashier">><span class="vocab-reveal">cashier (<span class="french-trans">caissier/caissière</span>)</span><<run $vocab_list.push("Cashier : caissier/caissière")>><<set $score += 1>><</linkreplace>> asks:
''"Would you like a <<linkreplace "bag">><span class="vocab-reveal">bag (<span class="french-trans">sac</span>)</span><<run $vocab_list.push("Bag : sac")>><<set $score += 1>><</linkreplace>>? They are 10p."''
You pay for your items and the bag.
''"Would you like the <<linkreplace "receipt">><span class="vocab-reveal">receipt (<span class="french-trans">le reçu / ticket de caisse</span>)</span><<run $vocab_list.push("Receipt : reçu, ticket de caisse")>><<set $score += 1>><</linkreplace>> in the bag?"''
You nod and head back out to the busy street.
[[Time for lunch!|Day2Lunch]]<<set $confidence += 1>>
You walk through the gates of the''British Museum''. The building is enormous, with giant Greek-style columns. 🏛️
Inside, you find yourself in the <<linkreplace "Great Court">><span class="vocab-reveal">Great Court (<span class="french-trans">la Grande Cour — la plus grande place couverte d'Europe</span>)</span><<run $vocab_list.push("Great Court : Grande Cour du British Museum")>><<set $score += 1>><</linkreplace>>. It has a beautiful glass roof that lets in a lot of light.
At the entrance, there's a sign:''"FREE ENTRY - DONATIONS WELCOME"''.
You decide to visit the Ancient Egypt section, which is very famous.
[[Look for the Egyptian Gallery.|MuseumInteraction]]The museum is like a maze. You see many <<linkreplace "galleries">><span class="vocab-reveal">galleries (<span class="french-trans">salles d'exposition</span>)</span><<run $vocab_list.push("Gallery : salle d'exposition")>><<set $score += 1>><</linkreplace>> but you can't find the Rosetta Stone.
You see a museum <<linkreplace "warden">><span class="vocab-reveal">warden (<span class="french-trans">gardien / surveillant</span>)</span><<run $vocab_list.push("Warden : gardien, surveillant")>><<set $score += 1>><</linkreplace>> in a dark suit standing near a statue.
How do you ask for directions?
[["Excuse me, could you tell me where the Rosetta Stone is?"|MuseumDirectionsCorrect]]
[["Where is the big rock from Egypt?"|MuseumDirectionsSimple]]
[["I am lost. Help."|MuseumDirectionsConfused]]<<set $score += 5>>
<<set $confidence += 1>>
''"Certainly! Go through that <<linkreplace "archway">><span class="vocab-reveal">archway (<span class="french-trans">passage sous voûte / arcade</span>)</span><<run $vocab_list.push("Archway : arcade, passage")>><<set $score += 1>><</linkreplace>> over there, turn left, and it's in Room 4. You can't miss it!"''
You thank him and follow his directions.
[[Go to Room 4.|MuseumExplore]]<<set $score += 2>>
The warden smiles.
''"You mean the Rosetta Stone? It's just through those doors, in the main Egyptian gallery. Room 4."''
It wasn't the most elegant way to ask, but it worked!
[[Go to Room 4.|MuseumExplore]]<<set $confidence -= 1>>
The warden looks at you patiently.
''"Are you looking for a specific <<linkreplace "exhibition">><span class="vocab-reveal">exhibition (<span class="french-trans">exposition</span>)</span><<run $vocab_list.push("Exhibition : exposition")>><<set $score += 1>><</linkreplace>>? Egyptian, Greek, or Roman?"''
You eventually manage to explain you want the Egypt section.
''"Room 4, just over there."''
[[Go to Room 4.|MuseumExplore]]<<if $last_roll == 0>>
<<set $roll_needed to "MuseumExplore">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir si vous découvrez quelque chose de rare !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
You spend an hour wandering through time. You see mummies, giant statues, and <<linkreplace "ancient">><span class="vocab-reveal">ancient (<span class="french-trans">ancien / antique</span>)</span><<run $vocab_list.push("Ancient : ancien, antique")>><<set $score += 1>><</linkreplace>> jewelry.
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Special discovery!'' You stumble upon a quiet room filled with ancient clocks. It's fascinating.</div>
<<set $score += 5>>
<<run $vocab_list.push("Artifact : artéfact / objet historique")>>
<</if>>
You feel a bit tired from all the walking. Your brain is full of history!
[[Time for lunch!|Day2Lunch]]
<</if>>Your stomach <<linkreplace "growls">><span class="vocab-reveal">growls (<span class="french-trans">grogne / gargouille</span>)</span><<run $vocab_list.push("To growl : grogner, gargouiller")>><<set $score += 1>><</linkreplace>>. It's time for lunch! 🥪
In London, millions of people do the same thing: they grab a''"Meal Deal"'' from a supermarket like Tesco, Sainsbury's, or Boots. It's the cheapest and fastest way to eat.
A <<linkreplace "Meal Deal">><span class="vocab-reveal">Meal Deal (<span class="french-trans">formule déjeuner (souvent Sandwich + Snack + Boisson)</span>)</span><<run $vocab_list.push("Meal Deal : formule déjeuner économique")>><<set $score += 1>><</linkreplace>> usually costs about £3.50 to £5.00.
You walk into a''Tesco Express'' nearby.
[[Look for the Meal Deal section.|LunchSelection]]You stand in front of a giant fridge. You need to pick three things for your deal:
1.''A Main'': A sandwich, a wrap, or a pasta salad.
2.''A Snack'': A bag of <<linkreplace "crisps">><span class="vocab-reveal">crisps (<span class="french-trans">chips — attention, aux USA on dit "chips" et en GB "crisps" !</span>)</span><<run $vocab_list.push("Crisps (GB) / Chips (US) : chips")>><<set $score += 1>><</linkreplace>>, fruit, or a chocolate bar.
3.''A Drink'': Water, juice, or a soft drink.
You pick a ''Chicken & Bacon sandwich'', a bag of ''Cheese & Onion crisps'', and a ''Smoothie''.
You take your items to the self-checkout machine.
''"Please scan your items."''
Wait, the total is £6.80! That's not a deal!
[[Wait, what happened?|LunchExplain]]<<set $mistakes += 1>>
<<set $confidence -= 1>>
❌ ''Oh no!'' You didn't check the labels!
💡 ''Explication :''
Dans un "Meal Deal", tous les produits ne sont pas inclus. Il faut chercher le petit logo jaune ou bleu qui indique que l'objet fait bien partie de la formule. Si vous prenez un sandwich "Premium", il n'est pas dans le prix réduit !
Vous retournez au rayon et changez pour un sandwich classique. Le prix descend à''£3.90''. Ouf !
[[Go to pay again.|LunchPayment]]<<set $score += 2>>
The machine asks:
''"Follow the instructions on the <<linkreplace "card reader">><span class="vocab-reveal">card reader (<span class="french-trans">lecteur de carte</span>)</span><<run $vocab_list.push("Card reader : lecteur de carte")>><<set $score += 1>><</linkreplace>>."''
You pay with your card. Then the screen asks:
''"Would you like to <<linkreplace "eat in">><span class="vocab-reveal">eat in (<span class="french-trans">manger sur place</span>)</span><<run $vocab_list.push("To eat in : manger sur place")>><<set $score += 1>><</linkreplace>> or <<linkreplace "take away">><span class="vocab-reveal">take away (<span class="french-trans">emporter</span>)</span><<run $vocab_list.push("To take away : emporter")>><<set $score += 1>><</linkreplace>>?"''
*(Note: In the UK, the price is sometimes different if you eat in because of tax!)*
[["Take away, please."|LunchTakeaway]]
[["Eat in, please."|LunchEatIn]]<<set $score += 2>>
You take your brown paper bag and look for a nice place to sit outside.
London has many beautiful <<linkreplace "squares">><span class="vocab-reveal">squares (<span class="french-trans">places / squares</span>)</span><<run $vocab_list.push("Square : place, square")>><<set $score += 1>><</linkreplace>> with benches. You find a spot in a small park and enjoy your sandwich while watching the people walk by.
[[Finish your lunch.|Day2Afternoon]]<<set $score += 2>>
You find a small stool by the window. It's nice to sit down for a while and rest your legs. You watch the red buses pass by just a few meters away.
[[Finish your lunch.|Day2Afternoon]]After lunch, you feel a bit more energized. The sun is still shining, and you have several hours before dinner.
What would you like to do this afternoon?
1. 🎸 ''Camden Market'' — Famous for its alternative style, street food, and unique markets. (Cool and vibrant)
2. 🎭 ''Covent Garden'' — To see the street performers and visit the beautiful market hall. (Atmospheric and fun)
3. 🌳 ''Hyde Park'' — To relax, see the squirrels, and walk around the Serpentine lake. (Relaxing and nature)
[[Go to Camden.|CamdenArrival]]
[[Go to Covent Garden.|CoventGardenArrival]]
[[Go to Hyde Park.|HydeParkArrival]]<<set $confidence += 1>>
You take the Northern Line to''Camden Town''. As you exit the station, you see giant 3D signs on the buildings: Dr. Martens boots, dragons, and electric guitars! 🐉🎸
Camden is the heart of London's alternative scene. You walk past the canals and enter the''Lock Market''.
There are hundreds of small <<linkreplace "stalls">><span class="vocab-reveal">stalls (<span class="french-trans">stands / étals</span>)</span><<run $vocab_list.push("Stall : stand, étal")>><<set $score += 1>><</linkreplace>> selling everything from vintage clothes to handmade jewelry.
You find a cool leather notebook that you'd like to buy as a gift.
[[Ask for the price.|CamdenMarket]]The stall owner is a man with many tattoos and a friendly smile.
''"Hi! That's a lovely bit of work, that. All <<linkreplace "handmade">><span class="vocab-reveal">handmade (<span class="french-trans">fait main</span>)</span><<run $vocab_list.push("Handmade : fait main")>><<set $score += 1>><</linkreplace>> in my workshop."''
How do you ask about the price?
[["How much is this, please?"|CamdenPriceSimple]]
[["Could you give me a discount if I buy two?"|CamdenHaggling]]
[["Price for me?"|CamdenGrammarMistake]]<<set $score += 2>>
''"That one's £15, mate. Real leather, top quality."''
It seems like a fair price.
[[Buy the notebook.|CamdenBuy]]
[[Look elsewhere.|CamdenExplore]]<<if $last_roll == 0>>
<<set $roll_needed to "CamdenHaggling">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir si votre négociation réussit !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Success!'' The seller smiles. "Alright, you drive a hard bargain. Two for £25 it is!"</div>
<<set $score += 10>>
<<set $confidence += 2>>
[[It's a deal!|CamdenBuyTwo]]
<<elseif _dice >= 3>>
''"I can't do a discount on the notebooks, they take too long to make. But I'll tell you what — I'll give you a free bookmark!"''
<<else>>
''"Sorry, mate. Fixed prices here. The rent is too high in Camden these days!"''
[[Buy it anyway at full price.|CamdenBuy]]
[[No thanks.|CamdenExplore]]
<</if>>
<</if>><<set $confidence -= 1>>
<<set $mistakes += 1>>
<div class="pedagogy pedagogy-error">
❌ ''Erreur de communication !''<br><br>
💡 ''Explication :''<br>
C'est un peu trop direct et ça ne suit pas les formes habituelles. Pour demander le prix, utilisez :<br>
- ''"How much is this?"''<br>
- ''"How much does this cost?"''
</div>
Le vendeur comprend quand même.
''"The price is £15, mate."''
[[Continue.|CamdenMarket]]<<run $inventory.push("📔 Leather Notebook")>>
<<inventory_alert "📔" "Handmade Notebook added to inventory!">>
You pay the £15 and the man wraps the notebook in tissue paper.
[[Continue exploring Camden.|CamdenExplore]]<<run $inventory.push("📔 Leather Notebook (x2)")>>
<<inventory_alert "📔" "Two Leather Notebooks added to inventory! Great deal!">>
You pay the £25. You're very happy with your bargain!
[[Continue exploring Camden.|CamdenExplore]]You walk further into the market and reach the''Cyberdog'' store, which is more like a nightclub than a shop, with loud music and neon lights. Camden is definitely a unique place!
[[Time to think about dinner.|Day2Dinner]]<<set $confidence += 1>>
You arrive at''Covent Garden''. The atmosphere here is completely different from Oxford Street or Camden. It feels elegant and joyful. 🎭✨
You walk into the''Piazza'', the large open square. You immediately hear a powerful voice singing opera. It's coming from the courtyard of the''Apple Market''.
There's a large crowd gathered around a <<linkreplace "street performer">><span class="vocab-reveal">street performer (<span class="french-trans">artiste de rue / saltimbanque</span>)</span><<run $vocab_list.push("Street performer : artiste de rue")>><<set $score += 1>><</linkreplace>> who is doing an incredible comedy and juggling act.
[[Watch the performance.|CoventGardenPerformance]]<<if $last_roll == 0>>
<<set $roll_needed to "CoventGardenPerformance">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir si l'artiste vous choisit comme volontaire !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
The performer is hilarious. At the end of the show, he says:
''"Thank you, ladies and gentlemen! If you enjoyed the show, please show your <<linkreplace "applause">><span class="vocab-reveal">applause (<span class="french-trans">applaudissements</span>)</span><<run $vocab_list.push("Applause : applaudissements")>><<set $score += 1>><</linkreplace>> and... I will now <<linkreplace "pass the hat">><span class="vocab-reveal">pass the hat (<span class="french-trans">faire passer le chapeau / faire la quête</span>)</span><<run $vocab_list.push("To pass the hat : faire la quête")>><<set $score += 1>><</linkreplace>>. Every pound helps!"''
<<if _dice >= 5>>
<div class="pedagogy-success">😲 ''Volunteer!'' He points directly at you:</div>
''"You there! You look like a friendly soul. Could you hold this flaming torch for a second?"''
You step forward, a bit nervous, but you follow his instructions perfectly. The crowd cheers!
<<set $score += 15>>
<<set $confidence += 3>>
<<inventory_alert "🔥" "Confidence +3! You were the star of the show for a moment!">>
<<else>>
You join the crowd in cheering and clapping. It was a great show.
<<set $score += 5>>
<</if>>
You decide to give him some <<linkreplace "coins">><span class="vocab-reveal">coins (<span class="french-trans">pièces de monnaie</span>)</span><<run $vocab_list.push("Coins : pièces de monnaie")>><<set $score += 1>><</linkreplace>>.
[[Explore the shops in the Market.|CoventGardenExplore]]
<</if>>You wander through the''Apple Market'' with its beautiful glass roof. You see stalls with antiques, maps, and handmade soaps. Everything looks so polished and British.
You find a small shop selling traditional English tea and decide to have a look.
''"Can I help you find a specific blend, sir/madam?"'' asks the shopkeeper.
[[Buy some Earl Grey tea.|CoventGardenBuyTea]]
[[Just look around.|CoventGardenLeave]]<<run $inventory.push("☕ Earl Grey Tea (Gift Box)")>>
<<inventory_alert "☕" "English Tea added to inventory! A classic gift.">>
<<set $score += 5>>
You pay for the tea. It smells wonderful.
[[Time to think about dinner.|Day2Dinner]]You thank the shopkeeper and head back out to the Piazza. The sun is starting to set, casting long shadows on the cobbles.
[[Time to think about dinner.|Day2Dinner]]<<set $confidence += 1>>
You enter''Hyde Park'' through the impressive gates at''Marble Arch''. Suddenly, the noise of the traffic disappears, replaced by the sound of birds and wind in the trees. 🌳🍃
Hyde Park is one of the largest parks in London. It's a place where people come to escape the <<linkreplace "hustle and bustle">><span class="vocab-reveal">hustle and bustle (<span class="french-trans">l'agitation / le remue-ménage</span>)</span><<run $vocab_list.push("Hustle and bustle : l'agitation")>><<set $score += 1>><</linkreplace>> of the city.
You start walking down one of the many wide <<linkreplace "paths">><span class="vocab-reveal">paths (<span class="french-trans">chemins / allées</span>)</span><<run $vocab_list.push("Path : chemin, allée")>><<set $score += 1>><</linkreplace>>.
[[Explore the park.|HydeParkExplore]]<<if $last_roll == 0>>
<<set $roll_needed to "HydeParkExplore">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir si vous faites une rencontre amicale !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
You reach the''Serpentine'', the large lake in the middle of the park. You see people <<linkreplace "boating">><span class="vocab-reveal">boating (<span class="french-trans">faire du bateau</span>)</span><<run $vocab_list.push("Boating : faire du bateau")>><<set $score += 1>><</linkreplace>> and others just sitting on the grass.
<<if _dice >= 4>>
<div class="pedagogy-success">🐿️ ''Friendly squirrel!''</div> A grey <<linkreplace "squirrel">><span class="vocab-reveal">squirrel (<span class="french-trans">écureuil</span>)</span><<run $vocab_list.push("Squirrel : écureuil")>><<set $score += 1>><</linkreplace>> runs down a tree and stops a few centimeters from your feet. It looks at you with big, curious eyes, hoping for food.
You don't have any nuts, but it's a lovely moment.
<<set $score += 5>>
<<set $confidence += 1>>
<<else>>
You watch the ducks and swans swimming on the lake. It's very peaceful.
<</if>>
You continue your walk towards the north-east corner of the park.
[[Go to Speaker's Corner.|HydeParkSpeakersCorner]]
<</if>>You reach ''Speaker's Corner''. This is a famous area where, especially on Sundays, anyone can stand on a box and give a speech about anything they want! 🎤🗣️
Traditional British <<linkreplace "free speech">><span class="vocab-reveal">free speech (<span class="french-trans">liberté d'expression</span>)</span><<run $vocab_list.push("Free speech : liberté d'expression")>><<set $score += 1>><</linkreplace>> in action!
Today, a man is shouting about the importance of eating more vegetables, while another is debating politics with a small crowd. You listen for a few minutes to practice your ear for different accents.
One of the speakers points at you:
''"And what about you, my friend? Do you agree that broccoli is the king of plants?"''
How do you respond?
[["I'm not sure, but I like salad!"|HydeParkSpeakerCorrect]]
[["Yes, I agree. Very good."|HydeParkSpeakerSimple]]
[["I don't understand. Sorry."|HydeParkSpeakerConfused]]<<set $score += 5>>
<<set $confidence += 1>>
The speaker laughs loudly.
''"A man of peace! I like it! Enjoy your day, sunshine!"''
<div class="pedagogy-success">Using a bit of humor in English is a great sign of progress!</div>
[[Time to think about dinner.|Day2Dinner]]<<set $score += 2>>
''"Exactly! Finally, someone with common sense!"''
The speaker continues his passionate speech. You move on.
[[Time to think about dinner.|Day2Dinner]]<<set $confidence -= 1>>
The speaker smiles kindly.
''"No worries! Just having a bit of fun. Have a lovely walk!"''
[[Time to think about dinner.|Day2Dinner]]Evening is falling on the city. The streetlights are coming on, and the atmosphere changes. You're hungry again! 😋
For dinner tonight, you want to try something typically British, but very different from last night.
What do you choose?
1. 🍛 ''Indian Curry'' — London is often called the "curry capital" of the world! (Flavorful and traditional)
2. 🐟 ''Fish and Chips'' — The most famous British takeaway. (Simple and iconic)
[[Go for a curry.|Day2Curry]]
[[Get some Fish and Chips.|Day2FishAndChips]]<<set $score += 2>>
You find a small, busy Indian restaurant called''The Spice Lounge''. It smells incredible — of cumin, ginger, and garlic.
The waiter gives you the menu. You see many names you don't recognize: *Jalfrezi, Korma, Vindaloo...*
He asks:
''"Are you looking for something <<linkreplace "spicy">><span class="vocab-reveal">spicy (<span class="french-trans">épicé / piquant</span>)</span><<run $vocab_list.push("Spicy : épicé, piquant")>><<set $score += 1>><</linkreplace>> or something <<linkreplace "mild">><span class="vocab-reveal">mild (<span class="french-trans">doux</span>)</span><<run $vocab_list.push("Mild : doux (non épicé)")>><<set $score += 1>><</linkreplace>>?"''
How do you respond?
[["I'd like something mild, but with lots of flavour, please."|Day2CurrySuccess]]
[["Give me the most spicy thing you have!"|Day2CurrySpicy]]
[["No spicy. Chicken please."|Day2CurrySimple]]<<set $score += 5>>
<<set $confidence += 1>>
''"I recommend the''Chicken Tikka Masala'', then. It's the most popular dish in Britain!"''
The curry arrives with warm''Naan bread''. It's creamy, orange, and absolutely delicious. You feel very satisfied.
[[Finish dinner and head back.|EndOfDay2]]<<set $score += 5>>
<<set $confidence += 1>>
''"The''Vindaloo'', then! It's very hot, are you sure?"''
You nod bravely.
The curry is delicious, but your mouth is on fire! 🔥 You drink two glasses of water and your face is very red. The waiter laughs and brings you some cool yogurt.
<div class="pedagogy-success">You've got balls, mate! (C'est courageux, mon pote !)</div>
<<inventory_alert "🔥" "Confidence +1! You survived the hottest curry!">>
[[Finish dinner and head back.|EndOfDay2]]<<set $score += 2>>
''"No problem. The''Chicken Korma'' is perfect for you then."''
The meal is good and you enjoy the calm atmosphere.
[[Finish dinner and head back.|EndOfDay2]]<<set $score += 2>>
You go to a small shop with a sign saying''"The Cod Father"''. It's a classic English <<linkreplace "chippy">><span class="vocab-reveal">chippy (<span class="french-trans">magasin de Fish & Chips</span>)</span><<run $vocab_list.push("Chippy : magasin de Fish & Chips (familier)")>><<set $score += 1>><</linkreplace>>.
The smell of fried fish and <<linkreplace "vinegar">><span class="vocab-reveal">vinegar (<span class="french-trans">vinaigre</span>)</span><<run $vocab_list.push("Vinegar : vinaigre")>><<set $score += 1>><</linkreplace>> is everywhere.
''"Large cod and chips, please?"'' you ask.
''"Sorted! Do you want <<linkreplace "salt and vinegar">><span class="vocab-reveal">salt and vinegar (<span class="french-trans">sel et vinaigre — la base en Angleterre !</span>)</span><<run $vocab_list.push("Salt and vinegar : sel et vinaigre (pour les frites)")>><<set $score += 1>><</linkreplace>> on that?"''
You say yes. They wrap the fish and chips in thick paper. It's burning hot!
You sit on a bench outside to eat it. It's greasy, salty, and perfect. You feel like a real local.
[[Finish dinner and head back.|EndOfDay2]]You walk back to your hotel, feeling the cool evening air. Day 2 is over. You've walked many miles and spoken to many different people.
🏨 You're back in Room 7. You sit on the bed and check your stats:
<div class="pedagogy pedagogy-info">
📊 ''Day 2 Summary:''<br>
- Words learned: <<print $vocab_list.length>><br>
- Total Score: <<print $score>> ⭐<br>
- Mistakes today: <<print $mistakes>><br>
- Confidence Level: <<print $confidence>> / <<print $max_confidence>>
</div>
<<if $confidence <= 0>>
[[...|GameOver]]
<<else>>
<<set $day to 3>>
<<inventory_alert "🌙" "Confidence +1! Your brain is consolidating all those new English words while you sleep.">>
<<set $confidence += 1>>
Tomorrow is''Day 3''. You're starting to feel quite at home in London!
[[🧠 Take the Daily Vocab Review|VocabReview]] <<set $review_init to true>>
[[☀️ Day 3: A trip outside the city?|Day3Morning]]
<</if>>☀️ ''DAY 3 - Greenwich: Where Time Begins!''
You <<linkreplace "wake up">><span class="vocab-reveal">wake up (<span class="french-trans">se réveiller</span>)</span><<run $vocab_list.push("To wake up : se réveiller")>><<set $score += 1>><</linkreplace>> to the sound of rain on the window. ☔ Typical London weather!
You head down to breakfast. The same waitress smiles at you.
''"Morning again! Lovely weather, <<linkreplace "isn't it">><span class="vocab-reveal">isn't it (<span class="french-trans">n'est‑ce pas — les Anglais adorent l'ironie sur la météo !</span>)</span><<run $vocab_list.push("Isn't it? : n'est‑ce pas (ironie)")>><<set $score += 1>><</linkreplace>>?"''
<div class="pedagogy pedagogy-info">
💡 ''Culture tip :'' Les Britanniques parlent ''tout le temps'' de la météo. Quand ils disent ''"Lovely weather, isn't it?"'' sous la pluie, c'est de l'ironie. La réponse correcte est de rire doucement et dire quelque chose comme ''"Gorgeous!"'' (Magnifique !) avec un sourire.
</div>
After breakfast, you look outside. It's still raining. The hotel reception sells umbrellas for £5.
[[Buy an umbrella (£5).|Day3BuyUmbrella]]
[[Brave the rain without an umbrella.|Day3NoUmbrella]]<<set $score += 3>>
You buy a sturdy black umbrella with a wooden handle from the receptionist. "Good choice," she says. "You'll definitely need it today!"
<<run $inventory.push("☂️ London Umbrella")>>
<<inventory_alert "☂️" "Umbrella acquired! Be prepared for British weather.">>
You check your <<linkreplace "guidebook">><span class="vocab-reveal">guidebook (<span class="french-trans">guide touristique (livre)</span>)</span><<run $vocab_list.push("Guidebook : guide touristique (livre)")>><<set $score += 1>><</linkreplace>>. Today you want to go somewhere a bit different — outside central London.
Where do you want to go?
1. 🌍 ''Greenwich'' — Home of the ''Prime Meridian'' and the ''Royal Observatory''. (Science and history)
2. 🏰 ''Tower of London'' — The famous castle with the Crown Jewels. (History and drama)
[[Go to Greenwich.|Day3Greenwich]]
[[Go to the Tower of London.|Day3Tower]]You decide to save your money. It's just a bit of water, right? How bad can it be?
You check your <<linkreplace "guidebook">><span class="vocab-reveal">guidebook (<span class="french-trans">guide touristique (livre)</span>)</span><<run $vocab_list.push("Guidebook : guide touristique (livre)")>><<set $score += 1>><</linkreplace>>. Today you want to go somewhere a bit different — outside central London.
Where do you want to go?
1. 🌍 ''Greenwich'' — Home of the ''Prime Meridian'' and the ''Royal Observatory''. (Science and history)
2. 🏰 ''Tower of London'' — The famous castle with the Crown Jewels. (History and drama)
[[Go to Greenwich.|Day3Greenwich]]
[[Go to the Tower of London.|Day3Tower]]<<set $confidence += 1>>
Today you're going to ''Greenwich'' — the home of time itself! 🌍⏰
You need to take the <<linkreplace "DLR">><span class="vocab-reveal">DLR (<span class="french-trans">Docklands Light Railway — un métro automatique sans conducteur</span>)</span><<run $vocab_list.push("DLR : Docklands Light Railway (métro automatique)")>><<set $score += 1>><</linkreplace>> from Bank station. You tap your Oyster card and get on.
The DLR has no driver — it's <<linkreplace "fully automated">><span class="vocab-reveal">fully automated (<span class="french-trans">entièrement automatisé</span>)</span><<run $vocab_list.push("Fully automated : entièrement automatisé")>><<set $score += 1>><</linkreplace>>! You sit right at the front and watch the city pass by through the windscreen. It feels like you're driving the train! 🚄
The train passes through ''Canary Wharf'', London's second financial centre, with its huge glass towers.
After about 20 minutes, you arrive at ''Cutty Sark'' station.
[[Exit the station.|GreenwichArrival]]You step out of the station and immediately see the ''Cutty Sark'' — a magnificent old <<linkreplace "sailing ship">><span class="vocab-reveal">sailing ship (<span class="french-trans">voilier / navire à voiles</span>)</span><<run $vocab_list.push("Sailing ship : voilier, navire à voiles")>><<set $score += 1>><</linkreplace>> from 1869, now preserved in a glass case. It's much bigger than you expected!
A sign reads: ''"The Cutty Sark was one of the fastest <<linkreplace "tea clippers">><span class="vocab-reveal">tea clippers (<span class="french-trans">clippers à thé — rapides navires marchands</span>)</span><<run $vocab_list.push("Tea clipper : navire rapide pour le transport du thé")>><<set $score += 1>><</linkreplace>> in the world."''
The river <<linkreplace "Thames">><span class="vocab-reveal">Thames (<span class="french-trans">la Tamise — attention, le ''th'' se prononce comme un ''t'' ici !</span>)</span><<run $vocab_list.push("Thames : la Tamise (prononcé 'Temz')")>><<set $score += 1>><</linkreplace>> is right in front of you. On the other side, you can see the massive skyscrapers of Canary Wharf.
What do you want to do first?
[[Go up the hill to the Royal Observatory. 🔭|GreenwichObservatory]]
[[Explore Greenwich Market first. 🛍️|GreenwichMarket]]<<set $score += 3>>
You start walking up the hill through ''Greenwich Park''. The path is steep, but the views are incredible. Behind you, the Thames stretches out across London.
You pass joggers, dog walkers, and <<linkreplace "squirrels">><span class="vocab-reveal">squirrels (<span class="french-trans">écureuils</span>)</span><<run $vocab_list.push("Squirrels : écureuils")>><<set $score += 1>><</linkreplace>> chasing each other up the trees.
After about 15 minutes of walking, you reach the top. The ''Royal Observatory'' is right in front of you — a beautiful old brick building with a dome on top. 🔭
Outside, there's a long bronze line on the ground. This is the ''Prime Meridian'' — <<linkreplace "longitude">><span class="vocab-reveal">longitude (<span class="french-trans">longitude — la ligne de référence 0°</span>)</span><<run $vocab_list.push("Longitude : la mesure est-ouest sur Terre")>><<set $score += 1>><</linkreplace>> zero!
A sign explains: ''"You are standing on the line that divides the Eastern and Western <<linkreplace "hemispheres">><span class="vocab-reveal">hemispheres (<span class="french-trans">hémisphères</span>)</span><<run $vocab_list.push("Hemisphere : hémisphère")>><<set $score += 1>><</linkreplace>>."''
You take a photo with one foot on each side of the line — one in the East, one in the West! 📸
<<inventory_alert "📸" "Meridian selfie taken! A classic Greenwich photo.">>
A tourist next to you asks:
''"<<linkreplace "Excuse me">><span class="vocab-reveal">Excuse me (<span class="french-trans">Excusez-moi</span>)</span><<set $score += 1>><</linkreplace>>, would you mind taking a photo of us on the line?"''
[[\"Of course! Say cheese!\"|GreenwichPhotoSuccess]]
[[\"Sorry, I don't really have time.\"|GreenwichPhotoRefuse]]<<set $score += 5>>
<<set $confidence += 1>>
You take a great photo of the family. They're delighted!
''"Oh, that's brilliant! Where are you from?"''
You have a short conversation. They're from <<linkreplace "Scotland">><span class="vocab-reveal">Scotland (<span class="french-trans">l'Écosse — fait partie du Royaume-Uni</span>)</span><<run $vocab_list.push("Scotland : l'Écosse (partie du Royaume-Uni)")>><<set $score += 1>><</linkreplace>> and they recommend a pub in Greenwich for lunch.
<<inventory_alert "📝" "Confidence +1! Friendly interactions always help.">>
[[Continue exploring the Observatory.|GreenwichObservatoryInside]]<<set $confidence -= 1>>
The tourist looks a bit disappointed but smiles politely.
''"No worries at all! Have a good day."''
You feel a little bad. In Britain, these small social interactions are important — they're called ''small talk''.
[[Continue to the Observatory.|GreenwichObservatoryInside]]<<if $last_roll == 0>>
<<set $roll_needed to "GreenwichObservatoryInside">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir quelle découverte vous faites à l'Observatoire !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
<div class="signage">
Vous avez obtenu un ''<<print _dice>>'' !
</div>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Special event!'' A <<linkreplace "guided tour">><span class="vocab-reveal">guided tour (<span class="french-trans">visite guidée</span>)</span><<run $vocab_list.push("Guided tour : visite guidée")>><<set $score += 1>><</linkreplace>> is about to start — and it's free!</div>
<<set $score += 10>>
<<set $confidence += 1>>
The guide explains how <<linkreplace "Greenwich Mean Time">><span class="vocab-reveal">Greenwich Mean Time (<span class="french-trans">l'heure de Greenwich — la référence mondiale</span>)</span><<run $vocab_list.push("Greenwich Mean Time (GMT) : l'heure de référence mondiale")>><<set $score += 1>><</linkreplace>> was established. You learn that the world's clocks were all set from this very spot!
<<inventory_alert "🎓" "Bonus knowledge! You got a free guided tour.">>
<<elseif _dice >= 3>>
You explore the museum inside the Observatory. You see old <<linkreplace "telescopes">><span class="vocab-reveal">telescopes (<span class="french-trans">télescopes</span>)</span><<run $vocab_list.push("Telescope : télescope")>><<set $score += 1>><</linkreplace>>, ancient clocks, and learn about how sailors used the stars to <<linkreplace "navigate">><span class="vocab-reveal">navigate (<span class="french-trans">naviguer</span>)</span><<run $vocab_list.push("To navigate : naviguer")>><<set $score += 1>><</linkreplace>>.
<<set $score += 5>>
<<else>>
The Observatory is quite <<linkreplace "crowded">><span class="vocab-reveal">crowded (<span class="french-trans">bondé</span>)</span><<run $vocab_list.push("Crowded : bondé, plein de monde")>><<set $score += 1>><</linkreplace>> today. You have a quick look around, but you can't see everything.
<<set $score += 2>>
<</if>>
[[Head back down to the market.|GreenwichMarket]]
<</if>><<set $score += 2>>
''Greenwich Market'' is a beautiful covered market under a glass roof. It's much calmer than Camden — more <<linkreplace "artisan">><span class="vocab-reveal">artisan (<span class="french-trans">artisanal</span>)</span><<run $vocab_list.push("Artisan : artisanal")>><<set $score += 1>><</linkreplace>> and <<linkreplace "upmarket">><span class="vocab-reveal">upmarket (<span class="french-trans">haut de gamme</span>)</span><<run $vocab_list.push("Upmarket : haut de gamme")>><<set $score += 1>><</linkreplace>>.
You see stalls selling handmade <<linkreplace "jewellery">><span class="vocab-reveal">jewellery (<span class="french-trans">bijoux — orthographe GB avec 2 l</span>)</span><<run $vocab_list.push("Jewellery (GB) / Jewelry (US) : bijoux")>><<set $score += 1>><</linkreplace>>, vintage maps, and delicious-smelling street food from all over the world: Thai, Ethiopian, Mexican...
You're hungry! A food stall catches your eye.
The man behind the counter shouts:
''"Come on, <<linkreplace "mate">><span class="vocab-reveal">mate (<span class="french-trans">pote</span>)</span><<set $score += 1>><</linkreplace>>! Best <<linkreplace "pie and mash">><span class="vocab-reveal">pie and mash (<span class="french-trans">tourte à la viande et purée — plat londonien traditionnel</span>)</span><<run $vocab_list.push("Pie and mash : tourte et purée (traditionnel londonien)")>><<set $score += 1>><</linkreplace>> in South London! Six quid!"''
[[Order the pie.|GreenwichOrderPie]]
[[Look for something else.|GreenwichOrderOther]]<<set $score += 5>>
<<set $confidence += 1>>
You say: ''"I'll have a pie and mash, please."''
The man hands you a steaming hot plate. The pie has a golden <<linkreplace "pastry">><span class="vocab-reveal">pastry (<span class="french-trans">pâte feuilletée</span>)</span><<run $vocab_list.push("Pastry : pâte feuilletée / pâtisserie")>><<set $score += 1>><</linkreplace>> crust and the mash is creamy and buttery. There's also a generous helping of <<linkreplace "gravy">><span class="vocab-reveal">gravy (<span class="french-trans">sauce au jus de viande</span>)</span><<run $vocab_list.push("Gravy : sauce au jus de viande")>><<set $score += 1>><</linkreplace>>.
''"Want some <<linkreplace "liquor">><span class="vocab-reveal">liquor (<span class="french-trans">sauce au persil — rien à voir avec l'alcool ici !</span>)</span><<run $vocab_list.push("Liquor (pie shop) : sauce au persil (pas d'alcool !)")>><<set $score += 1>><</linkreplace>> on that?"'' he asks.
<div class="pedagogy pedagogy-info">
💡 ''Culture tip :'' Dans un magasin de ''pie and mash'' traditionnel, ''"liquor"'' n'est PAS de l'alcool ! C'est une sauce verte au persil qui accompagne le plat. Attention au faux ami !
</div>
You nod, and he pours the green sauce over your pie.
<<run $inventory.push("🥧 Pie & Mash Experience")>>
<<inventory_alert "🥧" "Traditional Pie & Mash enjoyed! Proper East London food.">>
[[Sit down and eat.|GreenwichAfterLunch]]<<set $score += 2>>
You decide to try something different. You find a stall selling ''Ethiopian injera'' — a spongy <<linkreplace "flatbread">><span class="vocab-reveal">flatbread (<span class="french-trans">pain plat</span>)</span><<run $vocab_list.push("Flatbread : pain plat")>><<set $score += 1>><</linkreplace>> with spiced lentils.
London's food scene is incredibly <<linkreplace "diverse">><span class="vocab-reveal">diverse (<span class="french-trans">diversifié</span>)</span><<run $vocab_list.push("Diverse : diversifié, varié")>><<set $score += 1>><</linkreplace>> — you can eat food from almost every country in the world.
[[Sit down and eat.|GreenwichAfterLunch]]It's early afternoon. The rain has stopped and the sun is peeking through the clouds. ☀️
You're near the river and you notice something: a large <<linkreplace "pier">><span class="vocab-reveal">pier (<span class="french-trans">embarcadère / quai</span>)</span><<run $vocab_list.push("Pier : embarcadère, quai")>><<set $score += 1>><</linkreplace>> with a sign:
<div class="signage">
🚢 ''Thames Clipper'' — River Bus Service<br>
Greenwich → Westminster → Embankment<br>
''Oyster cards accepted!''
</div>
What a great way to travel back to central London!
[[Take the Thames Clipper boat! 🚢|Day3ThamesClipper]]
[[Take the DLR back instead. 🚆|Day3DLRBack]]<<set $score += 5>>
<<set $confidence += 1>>
You tap your Oyster card and board the ''Thames Clipper''. It's a modern <<linkreplace "catamaran">><span class="vocab-reveal">catamaran (<span class="french-trans">catamaran</span>)</span><<run $vocab_list.push("Catamaran : catamaran (bateau à 2 coques)")>><<set $score += 1>><</linkreplace>> with large windows and comfortable seats.
The boat moves fast along the river. You see Greenwich vanish behind you, and soon the famous <<linkreplace "landmarks">><span class="vocab-reveal">landmarks (<span class="french-trans">monuments célèbres</span>)</span><<set $score += 1>><</linkreplace>> appear:
- The massive ''O2 Arena'' (formerly the Millennium Dome)
- The gleaming towers of ''Canary Wharf''
- ''Tower Bridge'' — the iconic blue and white bridge that opens for tall ships! 🌉
- The ''Tower of London'' on the north bank
- ''Shakespeare's Globe'' — a replica of the famous theatre
- The ''London Eye'' slowly turning in the distance
<<inventory_alert "🚢" "Thames Clipper ride! The best way to see London.">>
<<run $inventory.push("🚢 Thames Clipper Ticket")>>
A man sitting next to you points out the window.
''"<<linkreplace "Stunning">><span class="vocab-reveal">Stunning (<span class="french-trans">magnifique, époustouflant</span>)</span><<run $vocab_list.push("Stunning : magnifique, époustouflant")>><<set $score += 1>><</linkreplace>>, isn't it? You should go to the South Bank — there's <<linkreplace "loads to do">><span class="vocab-reveal">loads to do (<span class="french-trans">plein de choses à faire</span>)</span><<run $vocab_list.push("Loads to do : plein de choses à faire")>><<set $score += 1>><</linkreplace>> there."''
The boat stops at ''Westminster Pier''. You step off right next to ''Big Ben''. What a journey!
[[Walk along the South Bank.|Day3SouthBank]]<<set $score += 2>>
You take the DLR back. It's convenient and quick, but you make a mental note to try the Thames Clipper another time.
You get off at ''Westminster'' station.
[[Walk along the South Bank.|Day3SouthBank]]The ''South Bank'' is one of the most vibrant areas in London, stretching along the south side of the Thames.
You walk past the ''Royal Festival Hall'', where musicians are performing for free in the <<linkreplace "foyer">><span class="vocab-reveal">foyer (<span class="french-trans">hall d'entrée — mot d'origine française !</span>)</span><<run $vocab_list.push("Foyer : hall d'entrée (mot français en anglais !)")>><<set $score += 1>><</linkreplace>>.
Further along, you see the ''Tate Modern'' — a huge art museum in an old <<linkreplace "power station">><span class="vocab-reveal">power station (<span class="french-trans">centrale électrique</span>)</span><<run $vocab_list.push("Power station : centrale électrique")>><<set $score += 1>><</linkreplace>>.
You also pass ''Shakespeare's Globe'', the famous round theatre.
<<linkreplace "Buskers">><span class="vocab-reveal">Buskers (<span class="french-trans">musiciens de rue</span>)</span><<run $vocab_list.push("Busker : musicien de rue")>><<set $score += 1>><</linkreplace>> are playing music, <<linkreplace "skateboarders">><span class="vocab-reveal">skateboarders (<span class="french-trans">skateurs</span>)</span><<run $vocab_list.push("Skateboarder : skateur")>><<set $score += 1>><</linkreplace>> are doing tricks, and people are sitting on benches eating <<linkreplace "ice cream">><span class="vocab-reveal">ice cream (<span class="french-trans">glace</span>)</span><<run $vocab_list.push("Ice cream : glace / crème glacée")>><<set $score += 1>><</linkreplace>>.
A <<linkreplace "street vendor">><span class="vocab-reveal">street vendor (<span class="french-trans">vendeur ambulant</span>)</span><<run $vocab_list.push("Street vendor : vendeur ambulant")>><<set $score += 1>><</linkreplace>> is selling old books and prints from a stall near the ''Waterloo Bridge''.
You stop to look. There's a beautiful old map of London from the 1800s. The price is £8.
[[Buy the vintage map.|Day3BuyMap]]
[[Keep walking.|Day3KeepWalking]]<<set $score += 3>>
<<run $inventory.push("🗺️ Vintage London Map (1800s)")>>
<<inventory_alert "🗺️" "Beautiful vintage map added to inventory!">>
You roll it up carefully and put it in your bag. What a <<linkreplace "souvenir">><span class="vocab-reveal">souvenir (<span class="french-trans">souvenir — même mot en anglais !</span>)</span><<run $vocab_list.push("Souvenir : souvenir (mot français en anglais)")>><<set $score += 1>><</linkreplace>>!
[[Continue your walk.|Day3Evening]]You admire the book stall but decide to save your money. There's still a lot of the week left!
[[Continue your walk.|Day3Evening]]The sun is starting to set over the Thames, painting the sky in shades of orange and pink. 🌅
You've been walking for a while and your feet are tired. You spot a cosy-looking pub by the river called ''The Anchor''.
[[Go in for a drink.|Day3PubEvening]]<<set $score += 2>>
You walk inside. This pub is much older than the one from Day 1. The <<linkreplace "ceiling">><span class="vocab-reveal">ceiling (<span class="french-trans">plafond</span>)</span><<run $vocab_list.push("Ceiling : plafond")>><<set $score += 1>><</linkreplace>> is low and the beams are dark with age. A chalkboard behind the bar lists today's <<linkreplace "specials">><span class="vocab-reveal">specials (<span class="french-trans">plats du jour</span>)</span><<run $vocab_list.push("Specials : plats du jour")>><<set $score += 1>><</linkreplace>>.
The bartender says:
''"Evening! What'll it be?"''
This time you feel more confident. What do you order?
[[\"A pint of ale, please.\"|Day3PubOrderAle]]
[[\"Could I see the menu, please?\"|Day3PubOrderFood]]
[[\"What do you recommend?\"|Day3PubRecommend]]<<set $score += 5>>
<<set $confidence += 1>>
''"Good choice! We've got a lovely local <<linkreplace "bitter">><span class="vocab-reveal">bitter (<span class="french-trans">bière amère traditionnelle</span>)</span><<run $vocab_list.push("Bitter : bière amère traditionnelle (GB)")>><<set $score += 1>><</linkreplace>> on <<linkreplace "tap">><span class="vocab-reveal">tap (<span class="french-trans">pression (bière)</span>)</span><<run $vocab_list.push("On tap : à la pression")>><<set $score += 1>><</linkreplace>> at the moment."''
He pulls the <<linkreplace "pump handle">><span class="vocab-reveal">pump handle (<span class="french-trans">poignée de la pompe à bière</span>)</span><<run $vocab_list.push("Pump handle : poignée de pompe (pub)")>><<set $score += 1>><</linkreplace>> and pours you a perfect pint.
<div class="pedagogy-success">Your pub vocabulary has improved since Day 1!</div>
[[Enjoy your drink.|Day3PubChat]]<<set $score += 3>>
''"Of course! Here you go."''
The menu has classic pub food: ''Fish & Chips'', ''Bangers and Mash'', ''Shepherd's Pie'', ''Sunday Roast''...
You order the <<linkreplace "Bangers and Mash">><span class="vocab-reveal">Bangers and Mash (<span class="french-trans">saucisses et purée — « banger » = argot pour saucisse</span>)</span><<run $vocab_list.push("Bangers and Mash : saucisses et purée (argot)")>><<set $score += 1>><</linkreplace>>.
''"Excellent choice! Do you want <<linkreplace "onion gravy">><span class="vocab-reveal">onion gravy (<span class="french-trans">sauce aux oignons</span>)</span><<run $vocab_list.push("Onion gravy : sauce aux oignons")>><<set $score += 1>><</linkreplace>> on that?"''
You say yes. When the meal arrives, it's huge and absolutely delicious.
[[Enjoy your meal.|Day3PubChat]]<<set $score += 5>>
<<set $confidence += 1>>
''"Well, I'd go for the <<linkreplace "Ploughman's lunch">><span class="vocab-reveal">Ploughman's lunch (<span class="french-trans">assiette froide avec fromage, pain, pickle — typiquement anglais</span>)</span><<run $vocab_list.push("Ploughman's lunch : assiette froide traditionnelle")>><<set $score += 1>><</linkreplace>> if I were you. It's our <<linkreplace "speciality">><span class="vocab-reveal">speciality (<span class="french-trans">spécialité — notez le ''y'' en anglais GB</span>)</span><<run $vocab_list.push("Speciality (GB) / Specialty (US) : spécialité")>><<set $score += 1>><</linkreplace>>."''
<div class="pedagogy pedagogy-info">
💡 ''Astuce :'' Demander ''"What do you recommend?"'' est une excellente stratégie quand on ne connaît pas le menu. Ça montre de la confiance ET vous garantit un bon plat !
</div>
You order the Ploughman's and a <<linkreplace "half pint">><span class="vocab-reveal">half pint (<span class="french-trans">demi-pinte (~284 ml)</span>)</span><<run $vocab_list.push("Half pint : demi-pinte")>><<set $score += 1>><</linkreplace>> of cider.
[[Enjoy your meal.|Day3PubChat]]<<if $last_roll == 0>>
<<set $roll_needed to "Day3PubChat">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir si vous faites une rencontre intéressante au pub !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
<div class="signage">
Vous avez obtenu un ''<<print _dice>>'' !
</div>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Great conversation!'' A couple sitting nearby starts talking to you.</div>
''"Oh, you're French? We went to Paris last year! <<linkreplace "Whereabouts">><span class="vocab-reveal">Whereabouts (<span class="french-trans">dans quel coin / où exactement</span>)</span><<run $vocab_list.push("Whereabouts : dans quel coin, où exactement")>><<set $score += 1>><</linkreplace>> in France are you from?"''
You have a long, friendly conversation about France and London. They teach you the expression: ''"<<linkreplace "Cheers, mate!">><span class="vocab-reveal">Cheers, mate! (<span class="french-trans">Merci, pote ! — très courant en GB, pas juste pour trinquer</span>)</span><<run $vocab_list.push("Cheers : merci / santé (universel en GB)")>><<set $score += 1>><</linkreplace>>"''
<<set $confidence += 2>>
<<inventory_alert "🍻" "Confidence +2! Having a real conversation in a pub is the best English lesson.">>
<<elseif _dice >= 3>>
You sit quietly enjoying the atmosphere. The pub is full of conversation, laughter, and the <<linkreplace "clinking">><span class="vocab-reveal">clinking (<span class="french-trans">tintement (de verres)</span>)</span><<run $vocab_list.push("Clinking : tintement de verres")>><<set $score += 1>><</linkreplace>> of glasses. You feel like a proper Londoner.
<<set $confidence += 1>>
<<else>>
The pub is quite empty tonight. You eat in silence, but it's still a nice moment of peace after a long day of walking.
<</if>>
[[Finish and head back to the hotel.|EndOfDay3]]
<</if>><<set $confidence += 1>>
You take the Tube to ''Tower Hill'' station. As you walk out, you see the ancient stone walls of the ''Tower of London'' rising above you. It's almost 1000 years old! 🏰
The entrance costs £30. You join the queue and buy a <<linkreplace "ticket">><span class="vocab-reveal">ticket (<span class="french-trans">billet d'entrée</span>)</span><<run $vocab_list.push("Ticket : billet d'entrée")>><<set $score += 1>><</linkreplace>>.
Inside, a man in a strange red and black uniform approaches a group of tourists.
''"Good morning! I'm a <<linkreplace "Yeoman Warder">><span class="vocab-reveal">Yeoman Warder (<span class="french-trans">gardien de la Tour — surnommé « Beefeater »</span>)</span><<run $vocab_list.push("Yeoman Warder / Beefeater : gardien de la Tour de Londres")>><<set $score += 1>><</linkreplace>>, but most people call us ''Beefeaters''. I'll be your guide today."''
[[Join the tour.|Day3TowerTour]]<<set $score += 5>>
The Beefeater is an incredible <<linkreplace "storyteller">><span class="vocab-reveal">storyteller (<span class="french-trans">conteur</span>)</span><<run $vocab_list.push("Storyteller : conteur")>><<set $score += 1>><</linkreplace>>. He fills the tour with dark humour and dramatic tales.
''"Two of Henry VIII's six <<linkreplace "wives">><span class="vocab-reveal">wives (<span class="french-trans">épouses</span>)</span><<run $vocab_list.push("Wives : épouses (pluriel de wife)")>><<set $score += 1>><</linkreplace>> were <<linkreplace "beheaded">><span class="vocab-reveal">beheaded (<span class="french-trans">décapitées</span>)</span><<run $vocab_list.push("Beheaded : décapité(e)")>><<set $score += 1>><</linkreplace>> right here, on this very spot. Can you imagine?"''
The crowd gasps. British history is intense!
He then takes you to see the famous ''ravens'' — large black birds that live at the Tower.
''"<<linkreplace "Legend">><span class="vocab-reveal">Legend (<span class="french-trans">légende</span>)</span><<run $vocab_list.push("Legend : légende")>><<set $score += 1>><</linkreplace>> says that if the ravens ever leave the Tower, the <<linkreplace "kingdom">><span class="vocab-reveal">kingdom (<span class="french-trans">royaume</span>)</span><<run $vocab_list.push("Kingdom : royaume")>><<set $score += 1>><</linkreplace>> will fall."''
<<if $last_roll == 0>>
<<set $roll_needed to "Day3TowerTour">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir si vous accédez à quelque chose de spécial !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
<div class="signage">
Vous avez obtenu un ''<<print _dice>>'' !
</div>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''VIP access!'' The Beefeater takes your small group to see the ''Crown Jewels'' without the usual long queue!</div>
<<set $score += 10>>
<<set $confidence += 2>>
You see the magnificent ''Imperial State Crown'' with its 2,868 diamonds. It's <<linkreplace "breathtaking">><span class="vocab-reveal">breathtaking (<span class="french-trans">à couper le souffle</span>)</span><<run $vocab_list.push("Breathtaking : à couper le souffle")>><<set $score += 1>><</linkreplace>>.
<<run $inventory.push("👑 Crown Jewels Visit")>>
<<inventory_alert "👑" "Crown Jewels seen! A once-in-a-lifetime experience!">>
<<elseif _dice >= 3>>
You join the regular queue for the Crown Jewels. It takes about 30 minutes, but it's <<linkreplace "worth the wait">><span class="vocab-reveal">worth the wait (<span class="french-trans">ça vaut l'attente</span>)</span><<run $vocab_list.push("Worth the wait : ça vaut l'attente")>><<set $score += 1>><</linkreplace>>.
<<set $score += 5>>
<<run $inventory.push("👑 Crown Jewels Visit")>>
<<inventory_alert "👑" "Crown Jewels seen!">>
<<else>>
The queue for the Crown Jewels is enormous. You decide to skip it and explore the rest of the Tower instead. <<linkreplace "Perhaps">><span class="vocab-reveal">Perhaps (<span class="french-trans">peut-être</span>)</span><<run $vocab_list.push("Perhaps : peut-être (plus formel que 'maybe')")>><<set $score += 1>><</linkreplace>> another day.
<<set $score += 2>>
<</if>>
[[Head out and walk along the river.|Day3SouthBank]]
<</if>>You walk back to the hotel, your mind full of the day's adventures. The city feels more familiar now — you even <<linkreplace "recognised">><span class="vocab-reveal">recognised (<span class="french-trans">reconnu — orthographe GB avec 's'</span>)</span><<run $vocab_list.push("Recognised (GB) / Recognized (US) : reconnu")>><<set $score += 1>><</linkreplace>> some streets from yesterday!
🏨 You're back in Room 7. Time to check your stats:
<div class="pedagogy pedagogy-info">
📊 ''Day 3 Summary:''<br>
- Words learned: <<print $vocab_list.length>><br>
- Total Score: <<print $score>> ⭐<br>
- Mistakes today: <<print $mistakes>><br>
- Confidence Level: <<print $confidence>> / <<print $max_confidence>>
</div>
<<if $confidence <= 0>>
[[...|GameOver]]
<<else>>
<<set $day to 4>>
<<inventory_alert "🌙" "Confidence +1! Three days down. You're really settling in.">>
<<set $confidence += 1>>
Tomorrow is ''Day 4''. You're halfway through your week!
[[🧠 Take the Daily Vocab Review|VocabReview]] <<set $review_init to true>>
[[☀️ Day 4: What's next?|Day4Morning]]
<</if>>☀️ ''DAY 4 - Culture, Tea & Theatre!''
You wake up and look out the window. The sky is a mix of grey and blue — classic London. You're starting to understand why the British are so <<linkreplace "obsessed">><span class="vocab-reveal">obsessed (<span class="french-trans">obsédé</span>)</span><<run $vocab_list.push("Obsessed : obsédé, passionné")>><<set $score += 1>><</linkreplace>> with talking about the weather.
At breakfast, you overhear two guests having a conversation:
''"Did you see the <<linkreplace "forecast">><span class="vocab-reveal">forecast (<span class="french-trans">prévisions météo</span>)</span><<run $vocab_list.push("Forecast : prévisions (météo)")>><<set $score += 1>><</linkreplace>>? It's supposed to <<linkreplace "clear up">><span class="vocab-reveal">clear up (<span class="french-trans">s'éclaircir</span>)</span><<run $vocab_list.push("To clear up : s'éclaircir (météo)")>><<set $score += 1>><</linkreplace>> this afternoon."''
Good news! You finish your <<linkreplace "toast">><span class="vocab-reveal">toast (<span class="french-trans">pain grillé — en Angleterre, le toaster est sacré !</span>)</span><<run $vocab_list.push("Toast : pain grillé (essentiel du petit-déj anglais)")>><<set $score += 1>><</linkreplace>> and marmalade, and plan your day.
Today, you want to explore a more ''residential'' side of London — the colourful neighbourhoods.
1. 🏘️ ''Notting Hill'' — Pastel-coloured houses, Portobello Road Market, and the famous film location! (Charming and photogenic)
2. 🧱 ''Brick Lane'' — Street art, curry houses, and vintage shops in East London. (Edgy and multicultural)
[[Go to Notting Hill.|Day4NottingHill]]
[[Go to Brick Lane.|Day4BrickLane]]<<set $confidence += 1>>
<<set $score += 3>>
You take the ''Central Line'' to ''Notting Hill Gate'' station. As you walk up the street, the first thing you notice is the colours — rows of houses painted in <<linkreplace "pastel">><span class="vocab-reveal">pastel (<span class="french-trans">pastel — rose pâle, bleu ciel, jaune doux...</span>)</span><<run $vocab_list.push("Pastel : couleurs douces, pastels")>><<set $score += 1>><</linkreplace>> shades of pink, blue, yellow, and mint green. 🎨
It's like walking through a painting!
You recognise the famous blue door from the film ''Notting Hill'' with Hugh Grant. A few tourists are taking photos of it.
A woman next to you laughs:
''"Everyone wants a photo with that <<linkreplace "doorstep">><span class="vocab-reveal">doorstep (<span class="french-trans">pas de porte / seuil</span>)</span><<run $vocab_list.push("Doorstep : pas de porte, seuil")>><<set $score += 1>><</linkreplace>>! The owners must be so <<linkreplace "fed up">><span class="vocab-reveal">fed up (<span class="french-trans">en avoir marre</span>)</span><<run $vocab_list.push("Fed up : en avoir marre")>><<set $score += 1>><</linkreplace>>!"''
You continue down the hill towards ''Portobello Road''.
[[Explore Portobello Road Market.|Day4Portobello]]''Portobello Road Market'' is incredible. It stretches for almost a mile and changes character as you walk.
The first section is full of <<linkreplace "antiques">><span class="vocab-reveal">antiques (<span class="french-trans">antiquités</span>)</span><<run $vocab_list.push("Antiques : antiquités, objets anciens")>><<set $score += 1>><</linkreplace>> — old clocks, silverware, vintage jewellery, and oil paintings.
Further down, it becomes a food market with stalls selling everything from <<linkreplace "paella">><span class="vocab-reveal">paella (<span class="french-trans">plat espagnol à base de riz</span>)</span><<set $score += 1>><</linkreplace>> to <<linkreplace "falafel">><span class="vocab-reveal">falafel (<span class="french-trans">boulettes de pois chiches</span>)</span><<set $score += 1>><</linkreplace>>.
You stop at a stall selling vintage postcards of London. The seller says:
''"Three for a <<linkreplace "quid">><span class="vocab-reveal">quid (<span class="french-trans">livre sterling (argot) — 1 quid = £1</span>)</span><<run $vocab_list.push("Quid : livre sterling (argot, comme 'balle' en français)")>><<set $score += 1>><</linkreplace>>, <<linkreplace "love">><span class="vocab-reveal">love (<span class="french-trans">terme affectueux utilisé par les vendeurs — rien de romantique !</span>)</span><<run $vocab_list.push("Love : terme affectueux (vendeurs, chauffeurs de bus...)")>><<set $score += 1>><</linkreplace>>!"''
<div class="pedagogy pedagogy-info">
💡 ''Culture tip :'' En Angleterre, les vendeurs et certaines personnes utilisent des termes comme ''"love"'', ''"darling"'', ''"mate"'', ou ''"sweetheart"'' avec tout le monde. Ce n'est pas de la drague, c'est de la politesse informelle !
</div>
[[Buy some postcards.|Day4BuyPostcards]]
[[Keep browsing.|Day4KeepBrowsing]]<<set $score += 2>>
<<run $inventory.push("📮 Vintage London Postcards")>>
<<inventory_alert "📮" "Beautiful vintage postcards! Perfect to send home.">>
You pick three cards showing Big Ben in the 1960s, a red telephone box, and the old Routemaster bus. You'll send them to your family in France!
[[Continue exploring.|Day4PortobelloEnd]]You browse the stalls for a while, admiring the variety. London truly is a <<linkreplace "melting pot">><span class="vocab-reveal">melting pot (<span class="french-trans">creuset culturel / mélange de cultures</span>)</span><<run $vocab_list.push("Melting pot : creuset culturel")>><<set $score += 1>><</linkreplace>> of cultures.
[[Continue exploring.|Day4PortobelloEnd]]<<if $last_roll == 0>>
<<set $roll_needed to "Day4PortobelloEnd">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir si vous faites une trouvaille spéciale !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
<div class="signage">
Vous avez obtenu un ''<<print _dice>>'' !
</div>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Amazing find!'' You discover a tiny <<linkreplace "second-hand">><span class="vocab-reveal">second-hand (<span class="french-trans">d'occasion</span>)</span><<run $vocab_list.push("Second-hand : d'occasion")>><<set $score += 1>><</linkreplace>> bookshop hidden down an alley!</div>
Inside, you find a beautiful old edition of ''Alice in Wonderland'' for just £3. The <<linkreplace "shopkeeper">><span class="vocab-reveal">shopkeeper (<span class="french-trans">commerçant / libraire</span>)</span><<run $vocab_list.push("Shopkeeper : commerçant, propriétaire de boutique")>><<set $score += 1>><</linkreplace>> wraps it carefully.
<<set $score += 10>>
<<set $confidence += 1>>
<<run $inventory.push("📚 Alice in Wonderland (vintage)")>>
<<inventory_alert "📚" "Rare find! A vintage Alice in Wonderland.">>
<<elseif _dice >= 3>>
You find a nice <<linkreplace "souvenir">><span class="vocab-reveal">souvenir (<span class="french-trans">souvenir</span>)</span><<set $score += 1>><</linkreplace>> stall and buy a small Union Jack <<linkreplace "fridge magnet">><span class="vocab-reveal">fridge magnet (<span class="french-trans">magnet de frigo</span>)</span><<run $vocab_list.push("Fridge magnet : magnet de réfrigérateur")>><<set $score += 1>><</linkreplace>> for your mum.
<<set $score += 3>>
<<run $inventory.push("🧲 Union Jack Fridge Magnet")>>
<<else>>
The market is very crowded and you feel a bit <<linkreplace "overwhelmed">><span class="vocab-reveal">overwhelmed (<span class="french-trans">submergé, dépassé</span>)</span><<run $vocab_list.push("Overwhelmed : submergé, dépassé")>><<set $score += 1>><</linkreplace>>. You decide to move on.
<<set $score += 1>>
<</if>>
[[Time for something very British...|Day4AfternoonTea]]
<</if>><<set $confidence += 1>>
<<set $score += 3>>
You take the ''Overground'' to ''Shoreditch High Street''. As soon as you exit, you're surrounded by <<linkreplace "street art">><span class="vocab-reveal">street art (<span class="french-trans">art de rue / graffiti artistique</span>)</span><<run $vocab_list.push("Street art : art de rue, graffitis artistiques")>><<set $score += 1>><</linkreplace>> — every wall, every <<linkreplace "shutter">><span class="vocab-reveal">shutter (<span class="french-trans">volet / store métallique</span>)</span><<run $vocab_list.push("Shutter : volet, store (de boutique)")>><<set $score += 1>><</linkreplace>>, every alleyway is covered in colourful murals. 🎨
This is the ''East End'' — London's most creative and multicultural neighbourhood.
You walk down ''Brick Lane''. The street is lined with <<linkreplace "curry houses">><span class="vocab-reveal">curry houses (<span class="french-trans">restaurants indiens</span>)</span><<run $vocab_list.push("Curry house : restaurant indien (typique de Brick Lane)")>><<set $score += 1>><</linkreplace>>, vintage shops, and independent coffee shops where people work on laptops.
A man standing outside a curry restaurant calls out:
''"Best curry on the Lane, <<linkreplace "mate">><span class="vocab-reveal">mate (<span class="french-trans">pote</span>)</span><<set $score += 1>><</linkreplace>>! Come in, come in! I'll give you 20% off and a free <<linkreplace "starter">><span class="vocab-reveal">starter (<span class="french-trans">entrée (plat)</span>)</span><<run $vocab_list.push("Starter : entrée (premier plat)")>><<set $score += 1>><</linkreplace>>!"''
<div class="pedagogy pedagogy-info">
💡 ''Culture tip :'' Sur Brick Lane, les restaurateurs essaient activement de vous attirer. C'est une tradition locale ! Les prix affichés sont souvent le point de départ d'une négociation — comme dans un <<linkreplace "bazaar">><span class="vocab-reveal">bazaar (<span class="french-trans">bazar / marché</span>)</span><<run $vocab_list.push("Bazaar : bazar (marché animé)")>><<set $score += 1>><</linkreplace>>.
</div>
[[Explore the vintage shops.|Day4BrickLaneVintage]]
[[Try the street food market.|Day4BrickLaneFood]]<<set $score += 3>>
You enter a <<linkreplace "charity shop">><span class="vocab-reveal">charity shop (<span class="french-trans">friperie caritative — les bénéfices vont à une association</span>)</span><<run $vocab_list.push("Charity shop : magasin caritatif (comme Oxfam)")>><<set $score += 1>><</linkreplace>> run by ''Oxfam''. Everything is second-hand, but there are some real treasures.
You find a beautiful <<linkreplace "tweed">><span class="vocab-reveal">tweed (<span class="french-trans">tweed — tissu en laine typiquement britannique</span>)</span><<run $vocab_list.push("Tweed : tissu en laine britannique")>><<set $score += 1>><</linkreplace>> jacket for £8 and a vintage London t-shirt for £3.
The woman at the <<linkreplace "till">><span class="vocab-reveal">till (<span class="french-trans">caisse (enregistreuse)</span>)</span><<run $vocab_list.push("Till : caisse enregistreuse (GB)")>><<set $score += 1>><</linkreplace>> says:
''"<<linkreplace "Lovely choices">><span class="vocab-reveal">Lovely choices (<span class="french-trans">beaux choix — « lovely » est LE mot britannique par excellence</span>)</span><<run $vocab_list.push("Lovely : charmant, super (mot très GB)")>><<set $score += 1>><</linkreplace>>! That jacket really <<linkreplace "suits you">><span class="vocab-reveal">suits you (<span class="french-trans">vous va bien</span>)</span><<run $vocab_list.push("It suits you : ça vous va bien")>><<set $score += 1>><</linkreplace>>."''
<<run $inventory.push("🧥 Vintage Tweed Jacket")>>
<<inventory_alert "🧥" "Vintage tweed jacket! Very British.">>
[[Continue exploring the area.|Day4BrickLaneEnd]]<<set $score += 3>>
You find the ''Brick Lane Market'' food section. It's an explosion of smells and colours.
You try a ''salt beef <<linkreplace "bagel">><span class="vocab-reveal">bagel (<span class="french-trans">petit pain rond — spécialité de Brick Lane depuis des décennies</span>)</span><<run $vocab_list.push("Bagel : petit pain rond (tradition juive de l'East End)")>><<set $score += 1>><</linkreplace>>'' from the famous ''Beigel Bake'' — a bakery that's been open 24 hours a day since 1974!
The bagel is enormous, filled with tender salt beef, <<linkreplace "mustard">><span class="vocab-reveal">mustard (<span class="french-trans">moutarde</span>)</span><<run $vocab_list.push("Mustard : moutarde")>><<set $score += 1>><</linkreplace>>, and a <<linkreplace "gherkin">><span class="vocab-reveal">gherkin (<span class="french-trans">cornichon</span>)</span><<run $vocab_list.push("Gherkin : cornichon (aussi le surnom d'un gratte-ciel londonien)")>><<set $score += 1>><</linkreplace>>. It costs just £5 — a real London <<linkreplace "bargain">><span class="vocab-reveal">bargain (<span class="french-trans">bonne affaire</span>)</span><<run $vocab_list.push("Bargain : bonne affaire")>><<set $score += 1>><</linkreplace>>!
<<inventory_alert "🥯" "Legendary Brick Lane bagel eaten!">>
[[Continue exploring the area.|Day4BrickLaneEnd]]<<if $last_roll == 0>>
<<set $roll_needed to "Day4BrickLaneEnd">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir ce que vous découvrez dans le East End !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
<div class="signage">
Vous avez obtenu un ''<<print _dice>>'' !
</div>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Street art tour!'' A local artist offers you a free <<linkreplace "walking tour">><span class="vocab-reveal">walking tour (<span class="french-trans">visite à pied</span>)</span><<run $vocab_list.push("Walking tour : visite guidée à pied")>><<set $score += 1>><</linkreplace>> of the best murals!</div>
He shows you works by ''Banksy'' and other famous artists. You learn that the East End has always been a place for <<linkreplace "outcasts">><span class="vocab-reveal">outcasts (<span class="french-trans">marginaux / exclus</span>)</span><<run $vocab_list.push("Outcast : marginal, exclu")>><<set $score += 1>><</linkreplace>> and artists.
<<set $score += 10>>
<<set $confidence += 2>>
<<inventory_alert "🎨" "Confidence +2! Free street art tour with a local artist!">>
<<elseif _dice >= 3>>
You take some amazing photos of the street art. One mural shows a fox wearing a crown — it's very London.
<<set $score += 5>>
<<else>>
It starts to <<linkreplace "drizzle">><span class="vocab-reveal">drizzle (<span class="french-trans">bruiner / crachin</span>)</span><<run $vocab_list.push("Drizzle : bruine, crachin (pluie fine typique de Londres)")>><<set $score += 1>><</linkreplace>>.
<<if $inventory.includes("☂️ London Umbrella")>>
<div class="pedagogy-success">☂️ Good thing you bought an umbrella yesterday! You pop it open and continue your walk without getting wet. You feel like a true Londoner!</div>
<<set $score += 5>>
<<set $confidence += 1>>
<<else>>
You don't have an umbrella! You have to run and find <<linkreplace "shelter">><span class="vocab-reveal">shelter (<span class="french-trans">un abri</span>)</span><<run $vocab_list.push("Shelter : abri")>><<set $score += 1>><</linkreplace>> in a bookshop for a bit, feeling a bit damp and cold.
<<set $score += 2>>
<</if>>
<</if>>
[[Time for something very British...|Day4AfternoonTea]]
<</if>><<set $score += 5>>
It's mid-afternoon. You've been walking all morning and you fancy something special. Today, you're going to have a proper ''Afternoon Tea'' — one of the most British traditions of all! ☕🍰
You've booked a table at a fancy <<linkreplace "tearoom">><span class="vocab-reveal">tearoom (<span class="french-trans">salon de thé</span>)</span><<run $vocab_list.push("Tearoom : salon de thé")>><<set $score += 1>><</linkreplace>> near ''Covent Garden''.
When you arrive, you're shown to a small table with a white <<linkreplace "tablecloth">><span class="vocab-reveal">tablecloth (<span class="french-trans">nappe</span>)</span><<run $vocab_list.push("Tablecloth : nappe")>><<set $score += 1>><</linkreplace>> and fine <<linkreplace "china">><span class="vocab-reveal">china (<span class="french-trans">porcelaine fine</span>)</span><<run $vocab_list.push("China : porcelaine (vaisselle fine)")>><<set $score += 1>><</linkreplace>> cups with delicate floral patterns.
The waiter brings out a three-tiered <<linkreplace "cake stand">><span class="vocab-reveal">cake stand (<span class="french-trans">présentoir à gâteaux (à étages)</span>)</span><<run $vocab_list.push("Cake stand : présentoir à gâteaux")>><<set $score += 1>><</linkreplace>>:
<div class="signage">
''Afternoon Tea Menu''<br>
🥪 ''Bottom tier'' — Finger sandwiches (cucumber, smoked salmon, egg & cress)<br>
🍰 ''Middle tier'' — Freshly baked scones with clotted cream & jam<br>
🧁 ''Top tier'' — Selection of mini cakes and pastries
</div>
The waiter asks: ''"Would you like ''Earl Grey'', ''English Breakfast'', or ''Darjeeling''?"''
[["Earl Grey, please."|Day4TeaEarlGrey]]
[["English Breakfast, please."|Day4TeaBreakfast]]
[["What would you recommend?"|Day4TeaRecommend]]<<set $score += 3>>
''"Excellent choice. Earl Grey is quite <<linkreplace "fragrant">><span class="vocab-reveal">fragrant (<span class="french-trans">parfumé / aromatique</span>)</span><<run $vocab_list.push("Fragrant : parfumé, aromatique")>><<set $score += 1>><</linkreplace>>, with a hint of <<linkreplace "bergamot">><span class="vocab-reveal">bergamot (<span class="french-trans">bergamote — l'huile essentielle qui donne au Earl Grey son goût unique</span>)</span><<run $vocab_list.push("Bergamot : bergamote (arôme du Earl Grey)")>><<set $score += 1>><</linkreplace>>."''
[[Enjoy your tea.|Day4TeaExperience]]<<set $score += 3>>
''"A classic! Strong and <<linkreplace "full-bodied">><span class="vocab-reveal">full-bodied (<span class="french-trans">corsé</span>)</span><<run $vocab_list.push("Full-bodied : corsé (thé, vin)")>><<set $score += 1>><</linkreplace>>. Would you like <<linkreplace "milk">><span class="vocab-reveal">milk (<span class="french-trans">lait — les Anglais en mettent presque toujours dans leur thé !</span>)</span><<run $vocab_list.push("Milk in tea : les Anglais ajoutent presque toujours du lait")>><<set $score += 1>><</linkreplace>> with that?"''
<div class="pedagogy pedagogy-info">
💡 ''Culture tip :'' La question ''"Milk first or tea first?"'' est un vrai débat national en Grande-Bretagne ! Les puristes disent que le lait doit être versé APRÈS le thé, pour mieux contrôler la couleur. C'est très sérieux ! 🫖
</div>
[[Enjoy your tea.|Day4TeaExperience]]<<set $score += 5>>
<<set $confidence += 1>>
''"Well, if you've never had a proper English tea before, I'd suggest the ''Darjeeling''. It's light, <<linkreplace "delicate">><span class="vocab-reveal">delicate (<span class="french-trans">délicat, fin</span>)</span><<run $vocab_list.push("Delicate : délicat, fin")>><<set $score += 1>><</linkreplace>>, and absolutely lovely with the scones."''
<<inventory_alert "📝" "Confidence +1! Asking for recommendations shows confidence.">>
[[Enjoy your tea.|Day4TeaExperience]]The tea arrives in a beautiful <<linkreplace "teapot">><span class="vocab-reveal">teapot (<span class="french-trans">théière</span>)</span><<run $vocab_list.push("Teapot : théière")>><<set $score += 1>><</linkreplace>>. You pour yourself a cup.
The ''scones'' are warm and soft. You spread <<linkreplace "clotted cream">><span class="vocab-reveal">clotted cream (<span class="french-trans">crème caillée épaisse — spécialité du Devon</span>)</span><<run $vocab_list.push("Clotted cream : crème caillée épaisse (Devon)")>><<set $score += 1>><</linkreplace>> and strawberry <<linkreplace "jam">><span class="vocab-reveal">jam (<span class="french-trans">confiture</span>)</span><<run $vocab_list.push("Jam : confiture")>><<set $score += 1>><</linkreplace>> on top. It's heavenly. 😍
<div class="pedagogy pedagogy-info">
💡 ''Le grand débat :'' Cream first or jam first? Au ''Devon'', on met la crème en premier. En ''Cornwall'', on met la confiture en premier. Les deux régions se disputent depuis des siècles. It's very serious business! 🏴
</div>
The <<linkreplace "finger sandwiches">><span class="vocab-reveal">finger sandwiches (<span class="french-trans">petits sandwiches coupés en rectangle, sans croûte</span>)</span><<run $vocab_list.push("Finger sandwiches : petits sandwiches sans croûte")>><<set $score += 1>><</linkreplace>> are tiny but delicious — especially the cucumber one. Very British!
<<run $inventory.push("☕ Afternoon Tea Experience")>>
<<inventory_alert "☕" "Afternoon Tea completed! A proper British ritual.">>
You feel extremely <<linkreplace "posh">><span class="vocab-reveal">posh (<span class="french-trans">chic / classe / bourgeois</span>)</span><<run $vocab_list.push("Posh : chic, classe (familier)")>><<set $score += 1>><</linkreplace>> right now. 🎩
[[Check your phone for tonight's plans.|Day4WestEnd]]<<set $score += 3>>
It's early evening. You remember that you wanted to see a show in London's famous ''West End'' — the theatre district, equivalent to Broadway in New York! 🎭
You walk towards ''Leicester Square''. The neon signs are glowing and the energy is electric. Every theatre has a different show:
- 🎵 ''Les Misérables'' — The famous <<linkreplace "musical">><span class="vocab-reveal">musical (<span class="french-trans">comédie musicale</span>)</span><<run $vocab_list.push("Musical : comédie musicale")>><<set $score += 1>><</linkreplace>> based on the French novel!
- 🦁 ''The Lion King'' — Disney's spectacular stage show
- 👻 ''The Woman in Black'' — A terrifying <<linkreplace "thriller">><span class="vocab-reveal">thriller (<span class="french-trans">film/pièce à suspense</span>)</span><<run $vocab_list.push("Thriller : film/pièce à suspense")>><<set $score += 1>><</linkreplace>>
- 😂 ''The Play That Goes Wrong'' — A hilarious comedy
You go to the ''<<linkreplace "TKTS">><span class="vocab-reveal">TKTS (<span class="french-trans">kiosque officiel de billets à prix réduit à Leicester Square</span>)</span><<run $vocab_list.push("TKTS : kiosque de billets à prix réduit (Leicester Square)")>><<set $score += 1>><</linkreplace>>'' booth in Leicester Square, which sells <<linkreplace "discounted">><span class="vocab-reveal">discounted (<span class="french-trans">à prix réduit</span>)</span><<run $vocab_list.push("Discounted : à prix réduit")>><<set $score += 1>><</linkreplace>> theatre tickets for same-day performances.
The person behind the counter says:
''"We've got great seats for ''Les Mis'' and ''The Play That Goes Wrong'' tonight. Both with 40% off!"''
<<if $inventory.includes("🎫 Theatre Discount Flyer")>>
<div class="pedagogy-success">🎫 You remember the flyer you picked up this morning! You show it to the vendor.</div>
''"Ah, with this flyer, you get an extra £10 off!"'' the vendor smiles. ''"Brilliant!"''
[[Book Les Misérables (£25).|Day4LesMis]]
[[Book The Play That Goes Wrong (£20).|Day4Comedy]]
<<else>>
[[Book Les Misérables (£35).|Day4LesMis]]
[[Book The Play That Goes Wrong (£30).|Day4Comedy]]
<</if>><<set $score += 5>>
<<set $confidence += 1>>
You buy a ticket for ''Les Misérables'' at the ''Queen's Theatre''. £35 for a <<linkreplace "stalls">><span class="vocab-reveal">stalls (<span class="french-trans">orchestre (places au parterre du théâtre)</span>)</span><<run $vocab_list.push("Stalls : orchestre (places au parterre)")>><<set $score += 1>><</linkreplace>> seat — a real bargain!
<div class="pedagogy pedagogy-info">
💡 ''Fun fact :'' ''Les Misérables'' est basé sur le roman de Victor Hugo. La version musicale a été créée à Londres en 1985 et n'a jamais cessé d'être jouée depuis — c'est le spectacle le plus long de l'histoire du ''West End'' ! Et oui, c'est un roman français qui est devenu le plus grand succès de l'histoire du théâtre britannique. 🇫🇷➡️🇬🇧
</div>
You find your seat. The theatre is beautiful — red <<linkreplace "velvet">><span class="vocab-reveal">velvet (<span class="french-trans">velours</span>)</span><<run $vocab_list.push("Velvet : velours")>><<set $score += 1>><</linkreplace>> seats, golden <<linkreplace "balconies">><span class="vocab-reveal">balconies (<span class="french-trans">balcons</span>)</span><<run $vocab_list.push("Balcony : balcon (théâtre)")>><<set $score += 1>><</linkreplace>>, and a huge <<linkreplace "chandelier">><span class="vocab-reveal">chandelier (<span class="french-trans">lustre — encore un mot d'origine française !</span>)</span><<run $vocab_list.push("Chandelier : lustre (mot français en anglais)")>><<set $score += 1>><</linkreplace>>.
The lights dim. The <<linkreplace "curtain">><span class="vocab-reveal">curtain (<span class="french-trans">rideau (de scène)</span>)</span><<run $vocab_list.push("Curtain : rideau de scène")>><<set $score += 1>><</linkreplace>> rises.
The music starts... and it's absolutely magical. You understand almost every word — it's in English, but the story is so familiar. When they sing ''"Do You Hear the People Sing?"'', you feel a shiver down your spine.
At the <<linkreplace "interval">><span class="vocab-reveal">interval (<span class="french-trans">entracte — en anglais US on dit « intermission »</span>)</span><<run $vocab_list.push("Interval (GB) / Intermission (US) : entracte")>><<set $score += 1>><</linkreplace>>, you buy an <<linkreplace "ice cream">><span class="vocab-reveal">ice cream (<span class="french-trans">glace</span>)</span><<set $score += 1>><</linkreplace>> from a vendor in the <<linkreplace "foyer">><span class="vocab-reveal">foyer (<span class="french-trans">hall d'entrée du théâtre</span>)</span><<set $score += 1>><</linkreplace>>.
The second half is even more emotional. By the end, you have tears in your eyes — and so does everyone else.
<<run $inventory.push("🎭 Les Misérables Programme")>>
<<inventory_alert "🎭" "Les Misérables seen! An unforgettable evening.">>
[[Leave the theatre.|Day4AfterShow]]<<set $score += 5>>
<<set $confidence += 1>>
You buy a ticket for ''The Play That Goes Wrong''. £30 for a great seat in the <<linkreplace "circle">><span class="vocab-reveal">circle (<span class="french-trans">premier balcon (au théâtre)</span>)</span><<run $vocab_list.push("Circle : premier balcon (théâtre GB)")>><<set $score += 1>><</linkreplace>>.
You find your seat. The theatre is smaller and more <<linkreplace "intimate">><span class="vocab-reveal">intimate (<span class="french-trans">intime, à taille humaine</span>)</span><<run $vocab_list.push("Intimate : intime, à taille humaine")>><<set $score += 1>><</linkreplace>> than you expected.
The show is about a group of terrible actors trying to perform a murder mystery — but everything goes wrong. The <<linkreplace "set">><span class="vocab-reveal">set (<span class="french-trans">décor (de théâtre / cinéma)</span>)</span><<run $vocab_list.push("Set : décor (théâtre, cinéma)")>><<set $score += 1>><</linkreplace>> falls apart, the actors forget their lines, and the <<linkreplace "props">><span class="vocab-reveal">props (<span class="french-trans">accessoires de scène</span>)</span><<run $vocab_list.push("Props : accessoires de scène")>><<set $score += 1>><</linkreplace>> don't work.
It's the funniest thing you've ever seen. Even without understanding every joke, the <<linkreplace "slapstick">><span class="vocab-reveal">slapstick (<span class="french-trans">humour physique / burlesque</span>)</span><<run $vocab_list.push("Slapstick : humour physique, burlesque")>><<set $score += 1>><</linkreplace>> humour is universal. You laugh so hard your <<linkreplace "sides hurt">><span class="vocab-reveal">sides hurt (<span class="french-trans">avoir mal aux côtes (de rire)</span>)</span><<run $vocab_list.push("My sides hurt : j'ai mal aux côtes (de trop rire)")>><<set $score += 1>><</linkreplace>>.
<div class="pedagogy-success">Understanding British humour = massive English level boost! 😂</div>
<<run $inventory.push("🎭 Comedy Show Ticket")>>
<<inventory_alert "🎭" "Comedy show seen! British humour: unlocked!">>
[[Leave the theatre.|Day4AfterShow]]You step out of the theatre into the bright lights of the West End. Leicester Square is still buzzing with people — <<linkreplace "night owls">><span class="vocab-reveal">night owls (<span class="french-trans">couche-tard / oiseaux de nuit</span>)</span><<run $vocab_list.push("Night owl : couche-tard, oiseau de nuit")>><<set $score += 1>><</linkreplace>>, tourists, and theatre-goers.
You grab a <<linkreplace "kebab">><span class="vocab-reveal">kebab (<span class="french-trans">kebab — la nourriture de fin de soirée préférée des Londoniens</span>)</span><<run $vocab_list.push("Kebab : le snack de fin de soirée à Londres")>><<set $score += 1>><</linkreplace>> from a small shop near ''Charing Cross'' — the classic post-theatre London meal.
As you eat, you think about your day. You've explored a beautiful neighbourhood, had a proper British afternoon tea, and seen a West End show. Four days in, and you feel like London is becoming your second home.
[[Take the Tube back to the hotel.|EndOfDay4]]You arrive back at the hotel feeling happy and cultured. The <<linkreplace "receptionist">><span class="vocab-reveal">receptionist (<span class="french-trans">réceptionniste</span>)</span><<run $vocab_list.push("Receptionist : réceptionniste")>><<set $score += 1>><</linkreplace>> at the front desk nods at you as you walk past.
''"Evening! How was your day?"''
You smile and say: ''"Brilliant, thanks!"''
She looks <<linkreplace "pleased">><span class="vocab-reveal">pleased (<span class="french-trans">contente / ravie</span>)</span><<run $vocab_list.push("Pleased : content, ravi")>><<set $score += 1>><</linkreplace>>. ''"Glad to hear it!"''
🏨 Back in Room 7:
<div class="pedagogy pedagogy-info">
📊 ''Day 4 Summary:''<br>
- Words learned: <<print $vocab_list.length>><br>
- Total Score: <<print $score>> ⭐<br>
- Mistakes today: <<print $mistakes>><br>
- Confidence Level: <<print $confidence>> / <<print $max_confidence>>
</div>
<<if $confidence <= 0>>
[[...|GameOver]]
<<else>>
<<set $day to 5>>
<<inventory_alert "🌙" "Confidence +1! Day 4 done. You're a proper Londoner now!">>
<<set $confidence += 1>>
Tomorrow is ''Day 5''. Only three days left... but so much more to see!
[[🧠 Take the Daily Vocab Review|VocabReview]] <<set $review_init to true>>
[[☀️ Day 5: What adventures await?|Day5Morning]]
<</if>>☀️ ''DAY 5 - History or High Street?''
You wake up feeling energetic. It's your fifth day in London, and the city is really starting to feel like your <<linkreplace "playground">><span class="vocab-reveal">playground (<span class="french-trans">terrain de jeu</span>)</span><<run $vocab_list.push("Playground : terrain de jeu")>><<set $score += 1>><</linkreplace>>.
At breakfast, you try adding some <<linkreplace "baked beans">><span class="vocab-reveal">baked beans (<span class="french-trans">haricots blancs à la sauce tomate — un classique du petit-déj</span>)</span><<run $vocab_list.push("Baked beans : haricots à la sauce tomate")>><<set $score += 1>><</linkreplace>> to your toast. It's surprisingly good!
Today, you want to dive into London's massive scale — either its world-famous history or its incredible shopping scene.
Where will you go today?
1. 🏛️ ''The British Museum'' — Come face-to-face with mummies, samurai armour, and the Rosetta Stone.
2. 🛍️ ''Oxford Street'' — Walk Europe's busiest shopping street and explore massive department stores.
[[Go to the British Museum.|Day5Museum]]
[[Go shopping on Oxford Street.|Day5Shopping]]<<set $confidence += 1>>
You decide to soak up some history and head to the ''British Museum'' in Bloomsbury. Like most museums in London, entrance is completely <<linkreplace "free of charge">><span class="vocab-reveal">free of charge (<span class="french-trans">gratuit</span>)</span><<run $vocab_list.push("Free of charge : gratuit")>><<set $score += 1>><</linkreplace>>!
You walk into the ''Great Court'', a spectacular space with a massive glass <<linkreplace "roof">><span class="vocab-reveal">roof (<span class="french-trans">toit</span>)</span><<run $vocab_list.push("Roof : toit")>><<set $score += 1>><</linkreplace>>. The museum is vast, containing over 8 million objects.
''"Where to first?"'' you wonder. The signs point to various <<linkreplace "galleries">><span class="vocab-reveal">galleries (<span class="french-trans">les salles du musée</span>)</span><<run $vocab_list.push("Gallery : salle d'exposition (musée)")>><<set $score += 1>><</linkreplace>>.
[[See the Egyptian Mummies.|Day5Mummies]]
[[Find the Rosetta Stone.|Day5Rosetta]]<<set $score += 3>>
You head upstairs to the Ancient Egypt section. The room is filled with ornately painted <<linkreplace "sarcophagi">><span class="vocab-reveal">sarcophagi (<span class="french-trans">sarcophages (pluriel)</span>)</span><<run $vocab_list.push("Sarcophagi / Sarcophaguses : sarcophages")>><<set $score += 1>><</linkreplace>> and real mummies.
<div class="pedagogy pedagogy-info">
💡 ''Culture tip :'' Le British Museum possède la plus grande collection d'antiquités égyptiennes au monde en dehors du Caire.
</div>
You stand in front of the famous ''Mummy of Katebet''. A museum <<linkreplace "curator">><span class="vocab-reveal">curator (<span class="french-trans">conservateur de musée</span>)</span><<run $vocab_list.push("Curator : conservateur (de musée) / commissaire d'exposition")>><<set $score += 1>><</linkreplace>> is giving a short talk nearby. You listen carefully and <<linkreplace "pick up">><span class="vocab-reveal">pick up (<span class="french-trans">comprendre / saisir (informel)</span>)</span><<run $vocab_list.push("To pick up : comprendre (des mots), assimiler")>><<set $score += 1>><</linkreplace>> some interesting facts about how the ancient Egyptians prepared for the afterlife.
[[Keep exploring.|Day5MuseumEnd]]<<set $score += 5>>
You make your way to the ground floor to see the ''Rosetta Stone''. It's crowded, but you manage to get to the front of the <<linkreplace "display case">><span class="vocab-reveal">display case (<span class="french-trans">vitrine</span>)</span><<run $vocab_list.push("Display case : vitrine (d'exposition)")>><<set $score += 1>><</linkreplace>>.
This heavy slab of black stone was the key to unlocking Egyptian <<linkreplace "hieroglyphs">><span class="vocab-reveal">hieroglyphs (<span class="french-trans">hiéroglyphes</span>)</span><<run $vocab_list.push("Hieroglyphs : hiéroglyphes")>><<set $score += 1>><</linkreplace>>, because the same text is written in three different scripts.
A fellow tourist turns to you and says: ''"It's <<linkreplace "mind-blowing">><span class="vocab-reveal">mind-blowing (<span class="french-trans">hallucinant / époustouflant</span>)</span><<run $vocab_list.push("Mind-blowing : hallucinant, époustouflant")>><<set $score += 1>><</linkreplace>>, isn't it? The French discovered it, but the British ended up with it."''
You smile and agree, knowing exactly what happened in history!
[[Keep exploring.|Day5MuseumEnd]]After a few hours, your feet are aching. The museum is so big it's impossible to see everything in one day.
<<if $last_roll == 0>>
<<set $roll_needed to "Day5MuseumEnd">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir comment se termine votre visite au musée !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
<div class="signage">
Vous avez obtenu un ''<<print _dice>>'' !
</div>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Great souvenir!'' You visit the gift shop and find a fantastic book on British history heavily discounted!</div>
<<set $score += 5>>
<<run $inventory.push("📕 Book on British History")>>
<<inventory_alert "📕" "History book added! Perfect reading material for the flight home.">>
<<elseif _dice >= 3>>
You buy a nice <<linkreplace "bookmark">><span class="vocab-reveal">bookmark (<span class="french-trans">marque-page</span>)</span><<run $vocab_list.push("Bookmark : marque-page")>><<set $score += 1>><</linkreplace>> and a coffee from the museum café. A lovely relaxing break.
<<else>>
You try to find the <<linkreplace "exit">><span class="vocab-reveal">exit (<span class="french-trans">sortie</span>)</span><<run $vocab_list.push("Exit : sortie")>><<set $score += 1>><</linkreplace>> but get completely lost in the Greek statues section for twenty minutes before finally finding your way out!
<<set $score += 1>>
<</if>>
[[Head over to Covent Garden to relax.|Day5CoventGarden]]
<</if>><<set $score += 3>>
You decide to explore the <<linkreplace "hustle and bustle">><span class="vocab-reveal">hustle and bustle (<span class="french-trans">l'agitation / le tumulte (de la ville)</span>)</span><<run $vocab_list.push("Hustle and bustle : l'agitation (de la ville)")>><<set $score += 1>><</linkreplace>> of ''Oxford Street'', London's most famous shopping area.
You get off the Tube at ''Oxford Circus''. The intersection is incredibly busy, with people crossing in all directions on the <<linkreplace "pedestrian crossing">><span class="vocab-reveal">pedestrian crossing (<span class="french-trans">passage piéton</span>)</span><<run $vocab_list.push("Pedestrian crossing : passage piéton")>><<set $score += 1>><</linkreplace>>.
You walk past dozens of enormous shops. The <<linkreplace "window displays">><span class="vocab-reveal">window displays (<span class="french-trans">vitrines de magasins</span>)</span><<run $vocab_list.push("Window display : vitrine de magasin")>><<set $score += 1>><</linkreplace>> are extremely creative.
You decide to go into ''Selfridges'', one of the oldest and most <<linkreplace "luxurious">><span class="vocab-reveal">luxurious (<span class="french-trans">luxueux</span>)</span><<run $vocab_list.push("Luxurious : luxueux")>><<set $score += 1>><</linkreplace>> department stores in the world.
Inside, you are immediately approached by a <<linkreplace "sales assistant">><span class="vocab-reveal">sales assistant (<span class="french-trans">vendeur / vendeuse</span>)</span><<run $vocab_list.push("Sales assistant : vendeur / vendeuse")>><<set $score += 1>><</linkreplace>> in the fragrance department.
''"Good morning! Would you like to try our new <<linkreplace "cologne">><span class="vocab-reveal">cologne (<span class="french-trans">eau de toilette / parfum</span>)</span><<run $vocab_list.push("Cologne : eau de toilette, parfum")>><<set $score += 1>><</linkreplace>>?"''
[["Yes, I'd love to."|Day5PerfumeYes]]
[["No, thank you, I'm just looking."|Day5PerfumeNo]]<<set $score += 2>>
She sprays some onto a paper <<linkreplace "tester">><span class="vocab-reveal">tester (<span class="french-trans">échantillonnette (en carton)</span>)</span><<run $vocab_list.push("Tester : testeur, échantillon")>><<set $score += 1>><</linkreplace>> and hands it to you. It smells like wood and citrus.
''"It's very <<linkreplace "uplifting">><span class="vocab-reveal">uplifting (<span class="french-trans">revigorant / joyeux</span>)</span><<run $vocab_list.push("Uplifting : revigorant, qui rend joyeux")>><<set $score += 1>><</linkreplace>>, isn't it?"'' she smiles.
You agree, but check the price tag: £150! You politely say goodbye and keep exploring the massive building.
[[Explore the food hall.|Day5FoodHall]]<<set $score += 3>>
<<set $confidence += 1>>
Politely declining in English is an important skill! You say, ''"No thank you, I'm just <<linkreplace "browsing">><span class="vocab-reveal">browsing (<span class="french-trans">regarder sans intention précise d'acheter</span>)</span><<run $vocab_list.push("To browse : regarder (dans un magasin sans acheter d'emblée)")>><<set $score += 1>><</linkreplace>>."''
She smiles and wishes you a good day.
<div class="pedagogy-success">Good job! "I'm just browsing" is the perfect phrase for this situation.</div>
[[Explore the food hall.|Day5FoodHall]]The food hall in Selfridges is legendary. There are counters selling artisanal <<linkreplace "cheeses">><span class="vocab-reveal">cheeses (<span class="french-trans">fromages</span>)</span><<run $vocab_list.push("Cheese : fromage")>><<set $score += 1>><</linkreplace>>, fresh oysters, and towers of colourful macarons.
<<if $last_roll == 0>>
<<set $roll_needed to "Day5FoodHall">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir ce que vous achetez à Londres !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
<div class="signage">
Vous avez obtenu un ''<<print _dice>>'' !
</div>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Great taste!'' You decide to treat yourself to a box of luxury British fudge!</div>
<<set $score += 5>>
<<run $inventory.push("🍬 Box of Clotted Cream Fudge")>>
<<inventory_alert "🍬" "Clotted Cream Fudge! A deliciously sweet British treat.">>
<<elseif _dice >= 3>>
You buy a nicely designed <<linkreplace "tote bag">><span class="vocab-reveal">tote bag (<span class="french-trans">sac en toile</span>)</span><<run $vocab_list.push("Tote bag : sac en toile (souvent réutilisable)")>><<set $score += 1>><</linkreplace>> with the London underground logo on it to carry your things. Very practical!
<<run $inventory.push("🛍️ London Tube Tote Bag")>>
<<else>>
You spend so long looking at the incredible food that the time flies by! You don't buy anything, but the <<linkreplace "window shopping">><span class="vocab-reveal">window shopping (<span class="french-trans">lèche-vitrine</span>)</span><<run $vocab_list.push("Window shopping : faire du lèche-vitrine")>><<set $score += 1>><</linkreplace>> was fun.
<<set $score += 1>>
<</if>>
[[Take a walk to Covent Garden.|Day5CoventGarden]]
<</if>><<set $score += 2>>
Whether you spent your day with mummies or luxury handbags, you eventually make your way to ''Covent Garden''.
Once a famous fruit and vegetable market, the beautiful 19th-century glass building is now full of <<linkreplace "boutiques">><span class="vocab-reveal">boutiques (<span class="french-trans">boutiques</span>)</span><<run $vocab_list.push("Boutique : petite boutique (souvent de mode)")>><<set $score += 1>><</linkreplace>> and restaurants.
The piazza is famous for its street performers. A huge crowd is gathered around a <<linkreplace "juggler">><span class="vocab-reveal">juggler (<span class="french-trans">jongleur</span>)</span><<run $vocab_list.push("Juggler : jongleur")>><<set $score += 1>><</linkreplace>> who is balancing on a tall unicycle while tossing flaming torches into the air.
He shouts to the crowd:
''"Come on, <<linkreplace "make some noise">><span class="vocab-reveal">make some noise (<span class="french-trans">faites du bruit</span>)</span><<run $vocab_list.push("Make some noise : faites du bruit (pour encourager)")>><<set $score += 1>><</linkreplace>>! I'm risking my life up here!"''
The crowd cheers loudly. You drop a <<linkreplace "pound coin">><span class="vocab-reveal">pound coin (<span class="french-trans">pièce d'une livre</span>)</span><<run $vocab_list.push("Pound coin : pièce d'une livre (£)")>><<set $score += 1>><</linkreplace>> into his hat as he finishes his trick.
As evening approaches, the string lights hanging around the market turn on, giving the area a magical <<linkreplace "glow">><span class="vocab-reveal">glow (<span class="french-trans">lueur</span>)</span><<run $vocab_list.push("Glow : lueur, éclat doux")>><<set $score += 1>><</linkreplace>>.
You're getting hungry. Just a short walk away is ''Chinatown''.
[[Head to Chinatown for dinner.|Day5Chinatown]]You cross Shaftesbury Avenue and enter ''Chinatown'' through massive, beautifully decorated red <<linkreplace "gates">><span class="vocab-reveal">gates (<span class="french-trans">portes monumentales</span>)</span><<run $vocab_list.push("Gate : porte, grille, portail")>><<set $score += 1>><</linkreplace>>.
The streets here are lined with red lanterns hanging from the air. The smell of roasted duck and ginger fills the street. It feels completely different from the rest of London.
You spot a busy restaurant where the <<linkreplace "waiters">><span class="vocab-reveal">waiters (<span class="french-trans">serveurs</span>)</span><<run $vocab_list.push("Waiter / Waitress : serveur / serveuse")>><<set $score += 1>><</linkreplace>> are rushing around carrying bamboo <<linkreplace "steamers">><span class="vocab-reveal">steamers (<span class="french-trans">paniers vapeur</span>)</span><<run $vocab_list.push("Steamer : cuiseur vapeur, panier vapeur")>><<set $score += 1>><</linkreplace>>. The queue moves fast, and soon you're seated at a small table.
You decide to be adventurous and order some ''Dim Sum''.
The waiter asks quickly: ''"Pot of jasmine tea with that?"''
[["Yes please, that sounds great."|Day5ChinatownTea]]
[["I'll just have tap water, please."|Day5ChinatownWater]]<<set $score += 3>>
The jasmine tea arrives instantly in a small white pot. It's incredibly aromatic and <<linkreplace "cleanses the palate">><span class="vocab-reveal">cleanses the palate (<span class="french-trans">nettoie le palais</span>)</span><<run $vocab_list.push("To cleanse the palate : nettoyer le palais (entre les plats)")>><<set $score += 1>><</linkreplace>> perfectly.
The Dim Sum arrive shortly after — <<linkreplace "dumplings">><span class="vocab-reveal">dumplings (<span class="french-trans">raviolis asiatiques</span>)</span><<run $vocab_list.push("Dumpling : ravioli asiatique, boulette")>><<set $score += 1>><</linkreplace>> filled with prawn and chive, fluffy pork buns, and turnip paste. It's a true feast.
<<run $inventory.push("🥢 Chinatown Dim Sum Dinner")>>
<<inventory_alert "🥢" "Delicious Dim Sum eaten! A London classic.">>
[[Finish eating and take the Tube back.|EndOfDay5]]<<set $score += 2>>
''"<<linkreplace "Tap water">><span class="vocab-reveal">Tap water (<span class="french-trans">eau du robinet</span>)</span><<run $vocab_list.push("Tap water : eau du robinet")>><<set $score += 1>><</linkreplace>>"'' is incredibly useful to know when eating out in the UK. By law, licensed restaurants must provide it for free if you ask!
The Dim Sum arrive shortly after — <<linkreplace "dumplings">><span class="vocab-reveal">dumplings (<span class="french-trans">raviolis asiatiques</span>)</span><<run $vocab_list.push("Dumpling : ravioli asiatique, boulette")>><<set $score += 1>><</linkreplace>> filled with prawn and chive, fluffy pork buns, and turnip paste. It's a true feast.
<<run $inventory.push("🥢 Chinatown Dim Sum Dinner")>>
<<inventory_alert "🥢" "Delicious Dim Sum eaten! A London classic.">>
[[Finish eating and take the Tube back.|EndOfDay5]]You make your way back to your hotel room. Your feet are <<linkreplace "exhausted">><span class="vocab-reveal">exhausted (<span class="french-trans">épuisé! — on l'utilise aussi pour les pieds en anglais</span>)</span><<run $vocab_list.push("Exhausted : épuisé, très fatigué")>><<set $score += 1>><</linkreplace>>, but your mind is bursting with the incredible sights and sounds from today.
London is a city where every neighbourhood feels like a different country.
🏨 Back in Room 7:
<div class="pedagogy pedagogy-info">
📊 ''Day 5 Summary:''<br>
- Words learned: <<print $vocab_list.length>><br>
- Total Score: <<print $score>> ⭐<br>
- Mistakes today: <<print $mistakes>><br>
- Confidence Level: <<print $confidence>> / <<print $max_confidence>>
</div>
<<if $confidence <= 0>>
[[...|GameOver]]
<<else>>
<<set $day to 6>>
<<inventory_alert "🌙" "Confidence +1! You've successfully navigated the British Museum and Chinatown!">>
<<set $confidence += 1>>
Tomorrow is ''Day 6''. The weekend has arrived!
[[🧠 Take the Daily Vocab Review|VocabReview]] <<set $review_init to true>>
[[☀️ Day 6: Weekend vibes!|Day6Morning]]
<</if>>☀️ ''DAY 6 - Punks or Posh?''
It's the weekend! London feels different today — a bit more relaxed, but also much busier with locals out enjoying their <<linkreplace "days off">><span class="vocab-reveal">days off (<span class="french-trans">jours de repos, congés</span>)</span><<run $vocab_list.push("Day off : jour de repos / congé")>><<set $score += 1>><</linkreplace>>.
You head down for a traditional English Breakfast. You've officially <<linkreplace "got used to">><span class="vocab-reveal">got used to (<span class="french-trans">s'habituer à</span>)</span><<run $vocab_list.push("To get used to : s'habituer à")>><<set $score += 1>><</linkreplace>> eating sausages and beans in the morning!
Today, you want to explore the extreme <<linkreplace "contrasts">><span class="vocab-reveal">contrasts (<span class="french-trans">contrastes</span>)</span><<run $vocab_list.push("Contrast : contraste")>><<set $score += 1>><</linkreplace>> of London.
Where do you want to start?
1. 🎸 ''Camden Town'' — The absolute centre of London's alternative, punk, and rock culture. Crazy markets and loud music!
2. 🦕 ''South Kensington'' — The most <<linkreplace "posh">><span class="vocab-reveal">posh (<span class="french-trans">chic / huppé</span>)</span><<run $vocab_list.push("Posh : chic, huppé (informel)")>><<set $score += 1>><</linkreplace>> area of London, filled with beautiful architecture and the Natural History Museum.
[[Go to Camden Town.|Day6Camden]]
[[Go to South Kensington.|Day6Kensington]]<<set $confidence += 1>>
<<set $score += 3>>
You take the Northern Line up to ''Camden Town''. The moment you step out of the station, the atmosphere is electric.
The buildings on the high street have massive 3D models attached to them — a giant dragon, huge <<linkreplace "Doc Martens">><span class="vocab-reveal">Doc Martens (<span class="french-trans">célèbre marque de chaussures britanniques à grosses semelles</span>)</span><<run $vocab_list.push("Doc Martens : chaussures typiques du mouvement punk")>><<set $score += 1>><</linkreplace>> boots, and a massive airplane crashing into a wall.
You see people with brightly coloured mohawks, <<linkreplace "leather jackets">><span class="vocab-reveal">leather jackets (<span class="french-trans">vestes en cuir</span>)</span><<run $vocab_list.push("Leather jacket : veste en cuir")>><<set $score += 1>><</linkreplace>>, and multiple piercings. This is the birthplace of British punk!
<div class="pedagogy pedagogy-info">
💡 ''Culture tip :'' Camden a été le cœur des mouvements Punk dans les années 70, de la Britpop dans les années 90, et la maison spirituelle de chanteurs comme Amy Winehouse.
</div>
You walk down to ''Camden Lock'', where the canal runs through the market.
[[Explore the Stables Market.|Day6CamdenStables]]
[[Check out the street food at the Lock.|Day6CamdenFood]]<<set $score += 3>>
You wander into the ''Stables Market''. In the 19th century, this was a massive hospital for the <<linkreplace "horses">><span class="vocab-reveal">horses (<span class="french-trans">chevaux</span>)</span><<run $vocab_list.push("Horse : cheval")>><<set $score += 1>><</linkreplace>> that pulled canal boats. You can still see bronze horse statues everywhere!
Now, it's a labyrinth of vintage clothing stalls, record shops, and alternative fashion.
You hear loud techno music coming from a massive shop called ''Cyberdog''. At the entrance, two huge robot statues are standing guard. You peek inside and see staff dancing in neon clothing under UV lights. It's totally <<linkreplace "surreal">><span class="vocab-reveal">surreal (<span class="french-trans">surréaliste</span>)</span><<run $vocab_list.push("Surreal : surréaliste")>><<set $score += 1>><</linkreplace>>!
[[Buy a souvenir.|Day6CamdenBuy]]
[[Head to the street food area to eat.|Day6CamdenFood]]<<set $score += 4>>
You find a small stall selling t-shirts of classic British bands: The Clash, Sex Pistols, Queen...
You <<linkreplace "haggle">><span class="vocab-reveal">haggle (<span class="french-trans">marchander / négocier le prix</span>)</span><<run $vocab_list.push("To haggle : marchander, négocier")>><<set $score += 1>><</linkreplace>> a little bit with the stall owner — it's expected in Camden! You get a vintage band t-shirt for £15.
<<run $inventory.push("🎸 Vintage Band T-Shirt")>>
<<inventory_alert "🎸" "Rock 'n' roll! Vintage band t-shirt acquired.">>
[[Head to the street food area to eat.|Day6CamdenFood]]<<set $score += 3>>
The food market by the canal is incredible. The smell of a hundred different cuisines hits you at once.
There are people making Colombian <<linkreplace "arepas">><span class="vocab-reveal">arepas (<span class="french-trans">galettes de maïs vénézuéliennes/colombiennes</span>)</span><<run $vocab_list.push("Arepas : galettes de maïs (Amérique du Sud)")>><<set $score += 1>><</linkreplace>>, Korean fried chicken, Halloumi fries, and huge pans of paella.
You decide to try something and sit by the water, watching the painted <<linkreplace "narrowboats">><span class="vocab-reveal">narrowboats (<span class="french-trans">bateaux étroits traditionnels des canaux anglais</span>)</span><<run $vocab_list.push("Narrowboat : péniche longue et étroite typique du R-U")>><<set $score += 1>><</linkreplace>> go through the locks.
<<if $last_roll == 0>>
<<set $roll_needed to "Day6CamdenFood">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir comment se passe votre repas à Camden !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
<div class="signage">
Vous avez obtenu un ''<<print _dice>>'' !
</div>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Fun interaction!'' A guy with a green mohawk sits next to you and starts chatting.</div>
He turns out to be a really nice guy who plays guitar in a local band. He gives you some great recommendations for the rest of your trip.
''"Don't let the look <<linkreplace "fool you">><span class="vocab-reveal">fool you (<span class="french-trans">vous tromper</span>)</span><<run $vocab_list.push("To fool someone : tromper / duper quelqu'un")>><<set $score += 1>><</linkreplace>, mate. We're all softies really!"''
<<set $score += 10>>
<<set $confidence += 2>>
<<inventory_alert "🗣️" "Confidence +2! Making friends in unexpected places.">>
<<elseif _dice >= 3>>
The food is incredibly delicious and spicy! You finish every last bite and feel very satisfied.
<<set $score += 5>>
<<else>>
Just as you're about to take a bite, a <<linkreplace "seagull">><span class="vocab-reveal">seagull (<span class="french-trans">mouette / goéland</span>)</span><<run $vocab_list.push("Seagull : mouette / goéland")>><<set $score += 1>><</linkreplace>> swoops down and tries to steal your lunch! You save it just in time, but it was a close call.
<<set $score += 2>>
<</if>>
[[It's time to head back towards the centre.|Day6DoubleDecker]]
<</if>><<set $confidence += 1>>
<<set $score += 3>>
You take the Piccadilly Line to ''South Kensington''. The contrast with other parts of London is striking.
The streets are incredibly clean, the houses are painted in brilliant white, and luxury cars are parked everywhere. This is the heart of ''Royal Borough of Kensington and Chelsea'' — one of the wealthiest areas in the world. 🏰
You walk down ''Exhibition Road'', which is famous for having three major museums right next to each other.
The architecture of the ''Natural History Museum'' looks like a giant, ornate <<linkreplace "cathedral">><span class="vocab-reveal">cathedral (<span class="french-trans">cathédrale</span>)</span><<run $vocab_list.push("Cathedral : cathédrale")>><<set $score += 1>><</linkreplace>>, with intricate animal carvings all over its terracotta walls.
[[Go inside the Natural History Museum.|Day6KensingtonDino]]
[[Go to the V&A (Victoria and Albert Museum).|Day6KensingtonVA]]<<set $score += 4>>
You enter the incredible main hall of the Natural History Museum. Suspended from the ceiling is ''Hope'' — a massive blue <<linkreplace "whale">><span class="vocab-reveal">whale (<span class="french-trans">baleine</span>)</span><<run $vocab_list.push("Whale : baleine")>><<set $score += 1>><</linkreplace>> skeleton that seems to be diving right towards you! 🐋
You spend an hour in the Dinosaur gallery, staring up at the terrifying teeth of the T-Rex.
The museum is full of excited children and families. A little boy points at a fossil and shouts:
''"Look, mummy! A <<linkreplace "skull">><span class="vocab-reveal">skull (<span class="french-trans">crâne</span>)</span><<run $vocab_list.push("Skull : crâne")>><<set $score += 1>><</linkreplace>><<set $confidence += 1>>!"''
<div class="pedagogy-success">You understood the little boy perfectly! Confidence +1.</div>
[[Take a break in the museum café.|Day6KensingtonEnd]]<<set $score += 4>>
You cross the street to the ''V&A'', the world's leading museum of art, design, and performance. 🖼️
It's much quieter and more <<linkreplace "sophisticated">><span class="vocab-reveal">sophisticated (<span class="french-trans">sophistiqué / élégant</span>)</span><<run $vocab_list.push("Sophisticated : sophistiqué, élégant")>><<set $score += 1>><</linkreplace>> than the Natural History Museum. You wander through galleries containing breathtaking Italian sculptures, centuries-old fashion, and beautiful Asian ceramics.
In the beautiful central <<linkreplace "courtyard">><span class="vocab-reveal">courtyard (<span class="french-trans">cour intérieure</span>)</span><<run $vocab_list.push("Courtyard : cour intérieure")>><<set $score += 1>><</linkreplace>>, people are relaxing by a shallow pool of water. It feels like an oasis of calm in the middle of a bustling metropolis.
[[Take a break in the museum café.|Day6KensingtonEnd]]<<if $last_roll == 0>>
<<set $roll_needed to "Day6KensingtonEnd">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour voir comment se termine votre moment à Kensington !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
<div class="signage">
Vous avez obtenu un ''<<print _dice>>'' !
</div>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Stunning discovery!'' The café in the V&A is actually the oldest museum café in the world, and it's spectacularly beautiful!</div>
You sip a cup of tea under magnificent Victorian <<linkreplace "chandeliers">><span class="vocab-reveal">chandeliers (<span class="french-trans">lustres</span>)</span><<run $vocab_list.push("Chandelier : lustre")>><<set $score += 1>><</linkreplace>>. It feels incredibly luxurious.
<<set $score += 10>>
<<set $confidence += 1>>
<<run $inventory.push("☕ V&A Museum Café Experience")>>
<<inventory_alert "☕" "Tea in the world's most beautiful museum café!">>
<<elseif _dice >= 3>>
You find a quiet spot outside to sit and enjoy the amazing architecture of the buildings. You take some wonderful photos.
<<set $score += 5>>
<<else>>
You try to grab a quick coffee, but the queue is absolutely massive. You decide to just rest your legs on a bench instead.
<<set $score += 1>>
<</if>>
[[It's time to head back towards the centre.|Day6DoubleDecker]]
<</if>><<set $score += 3>>
It's getting late in the afternoon. Instead of taking the Tube, you decide to travel like a true Londoner and take a famous red <<linkreplace "double-decker">><span class="vocab-reveal">double-decker (<span class="french-trans">bus à impériale (à deux étages)</span>)</span><<run $vocab_list.push("Double-decker bus : bus à impériale (à deux ponts/étages)")>><<set $score += 1>><</linkreplace>> bus. 🚌
You wait at the bus stop. When the bus arrives, you tap your Oyster card on the yellow reader and immediately run up the <<linkreplace "stairs">><span class="vocab-reveal">stairs (<span class="french-trans">escaliers</span>)</span><<run $vocab_list.push("Stairs : escaliers")>><<set $score += 1>><</linkreplace>>.
You're in luck! The front seats on the top deck are empty!
<div class="pedagogy pedagogy-info">
💡 ''Culture tip :'' Tout Londonien vous le dira : la toute première place en haut du bus est "the best seat in the house". C'est comme avoir votre propre visite panoramique privée de la ville pour le prix d'un ticket de bus !
</div>
Sitting at the front, you watch the streets unroll below you. You see black cabs dodging traffic, cyclists weaving through cars, and beautiful old pubs on street corners.
You ride the bus all the way to ''Westminster Bridge''. It's almost golden hour, and you have one big thing left on your bucket list.
[[Go to the London Eye.|Day6LondonEye]]<<set $confidence += 1>>
<<set $score += 5>>
The ''London Eye'' is the giant <<linkreplace "Ferris wheel">><span class="vocab-reveal">Ferris wheel (<span class="french-trans">grande roue</span>)</span><<run $vocab_list.push("Ferris wheel : grande roue")>><<set $score += 1>><</linkreplace>> right on the edge of the river Thames. 🎡
You've booked a ticket in advance. As you step into the glass <<linkreplace "pod">><span class="vocab-reveal">pod (<span class="french-trans">nacelle / capsule</span>)</span><<run $vocab_list.push("Pod : nacelle, capsule")>><<set $score += 1>><</linkreplace>>, the wheel continues to turn slowly. It takes 30 minutes to do a full <<linkreplace "rotation">><span class="vocab-reveal">rotation (<span class="french-trans">rotation / tour complet</span>)</span><<run $vocab_list.push("Rotation : rotation, tour complet")>><<set $score += 1>><</linkreplace>>.
As you rise higher and higher, the whole of London reveals itself.
To the west, you can see ''Buckingham Palace'' surrounded by green parks.
Below you, the Thames snakes its way through the city, with boats leaving small white wakes behind them.
To the east, the <<linkreplace "shimmering">><span class="vocab-reveal">shimmering (<span class="french-trans">scintillant / miroitant</span>)</span><<run $vocab_list.push("Shimmering : scintillant, miroitant")>><<set $score += 1>><</linkreplace>> glass towers of the City curve upwards.
The sun begins to set, turning the sky orange and pink behind Big Ben. It is absolutely <<linkreplace "breathtaking">><span class="vocab-reveal">breathtaking (<span class="french-trans">à couper le souffle</span>)</span><<set $score += 1>><</linkreplace>>.
You ask someone to take a photo of you with the incredible <<linkreplace "skyline">><span class="vocab-reveal">skyline (<span class="french-trans">panorama urbain (les silhouettes des bâtiments)</span>)</span><<run $vocab_list.push("Skyline : panorama urbain, silhouette de la ville")>><<set $score += 1>><</linkreplace>> behind you.
"Of course! Smile!" they say.
<<run $inventory.push("🎡 London Eye Sunset Photo")>>
<<inventory_alert "🎡" "Perfect sunset photo on the London Eye!">>
It's the perfect way to end your last full day of tourism.
[[Head back to your hotel for your final night.|EndOfDay6]]You arrive back at the cozy B&B. You feel a strange mix of emotions — you're exhausted, but you're also quite sad that tomorrow is your last day. London has cast its <<linkreplace "spell">><span class="vocab-reveal">spell (<span class="french-trans">sortilège / charme</span>)</span><<run $vocab_list.push("Spell : sortilège, charme (magique)")>><<set $score += 1>><</linkreplace>> on you.
You've navigated the Tube, eaten traditional food, spoken to locals, and survived the British weather.
🏨 Back in Room 7, for the second-to-last time:
<div class="pedagogy pedagogy-info">
📊 ''Day 6 Summary:''<br>
- Words learned: <<print $vocab_list.length>><br>
- Total Score: <<print $score>> ⭐<br>
- Mistakes today: <<print $mistakes>><br>
- Confidence Level: <<print $confidence>> / <<print $max_confidence>>
</div>
<<if $confidence <= 0>>
[[...|GameOver]]
<<else>>
<<set $day to 7>>
<<inventory_alert "🌙" "Confidence +1! Only one day left. Let's make it count.">>
<<set $confidence += 1>>
Tomorrow is ''Day 7''. It will be time to pack your bags... but there's still time for one last breakfast!
[[🧠 Take the Daily Vocab Review|VocabReview]] <<set $review_init to true>>
[[☀️ Day 7: Departure day!|Day7Morning]]
<</if>>☀️ ''DAY 7 - Departure''
Your alarm goes off. It's time to go home.
You spend the morning <<linkreplace "packing your suitcase">><span class="vocab-reveal">packing your suitcase (<span class="french-trans">préparer/faire votre valise</span>)</span><<run $vocab_list.push("To pack a suitcase : faire une valise")>><<set $score += 1>><</linkreplace>>. You make sure to carefully pack your London Tube map, and any souvenirs you've bought.
You head downstairs for your final full English breakfast. The owner of the B&B comes over.
''"Checking out today, are we? Did you have a <<linkreplace "lovely time">><span class="vocab-reveal">lovely time (<span class="french-trans">super séjour</span>)</span><<run $vocab_list.push("A lovely time : un séjour/moment très agréable")>><<set $score += 1>><</linkreplace>>?"''
[["Yes, it was incredible! Thank you."|Day7BreakfastGood]]
[["Yes, but I'm very tired now!"|Day7BreakfastTired]]<<set $score += 2>>
''"I'm so glad to hear that!"'' she smiles. ''"London can be <<linkreplace "overwhelming">><span class="vocab-reveal">overwhelming (<span class="french-trans">écrasant / impressionnant</span>)</span><<run $vocab_list.push("Overwhelming : écrasant, impressionnant")>><<set $score += 1>><</linkreplace>> sometimes, but you seem to have handled it brilliantly."''
[[Head to St Pancras International.|Day7StPancras]]<<set $score += 2>>
''"I'm not surprised!"'' she laughs. ''"It's a big city, and you've been rushing about. Have a safe <<linkreplace "journey">><span class="vocab-reveal">journey (<span class="french-trans">voyage / trajet</span>)</span><<run $vocab_list.push("Journey : voyage, trajet")>><<set $score += 1>><</linkreplace>> home."''
[[Head to St Pancras International.|Day7StPancras]]<<set $confidence += 1>>
With your bag perfectly packed, you take the Tube to ''King's Cross St Pancras''.
The station is breathtaking. The massive vaulted glass ceiling of St Pancras International makes it look like a palace. Just next door is King's Cross, famous for Platform 9 3/4 from <<linkreplace "Harry Potter">><span class="vocab-reveal">Harry Potter (<span class="french-trans">Vous connaissez sûrement !</span>)</span><<set $score += 1>><</linkreplace>>.
You have a little bit of time before you need to pass through Eurostar security.
<<if $inventory.includes("☕ Coffee voucher (station café)")>>
<div class="pedagogy-success">☕ You suddenly remember the coffee voucher the nice lady at the airport gave you on your very first day!</div>
You check the back of the voucher — it's valid here at St Pancras! You head to the station café and get a huge, delicious cappuccino for free. What a perfect way to end the trip!
<<run $inventory.delete("☕ Coffee voucher (station café)")>>
<<set $score += 5>>
<<set $confidence += 1>>
<<inventory_alert "☕" "Voucher used! Free coffee enjoyed. Confidence +1!">>
<</if>>
<<if $last_roll == 0>>
<<set $roll_needed to "Day7StPancras">>
<div class="pedagogy pedagogy-info">
🎲 ''LANCEZ LE DÉ DANS LA BARRE LATERALE'' pour un dernier événement avant de quitter Londres !
</div>
<<else>>
<<set _dice to $last_roll>>
<<set $last_roll to 0>>\
<div class="signage">
Vous avez obtenu un ''<<print _dice>>'' !
</div>\
<<if _dice >= 5>>
<div class="pedagogy-success">🍀 ''Musical goodbye!'' You notice one of the famous public pianos in the station.</div>
Someone is playing an incredible rendition of a Beatles song. A huge crowd is gathered around, clapping. You join in, feeling very happy to experience one last bit of London magic.
<<set $score += 5>>
<<run $inventory.push("🎹 Beautiful musical memory")>>
<<elseif _dice >= 3>>
You go to ''Fortnum & Mason'' in the station and use your last few pounds to buy some extremely fancy English Breakfast <<linkreplace "tea bags">><span class="vocab-reveal">tea bags (<span class="french-trans">sachets de thé</span>)</span><<run $vocab_list.push("Tea bag : sachet de thé")>><<set $score += 1>><</linkreplace>>.
<<run $inventory.push("🫖 Fortnum & Mason Tea")>>
<<else>>
You just sit on a bench and watch the crazy mix of people crossing the station — tourists, business people, musicians, and locals. It's the perfect spot for <<linkreplace "people-watching">><span class="vocab-reveal">people-watching (<span class="french-trans">observer les gens passer</span>)</span><<run $vocab_list.push("People-watching : observer les passants")>><<set $score += 1>><</linkreplace>>.
<<set $score += 2>>
<</if>>
[[Go through security and board the Eurostar.|Day7Eurostar]]
<</if>><<set $score += 5>>
You pass through security, show your passport, and board the Eurostar.
You find your seat, put your suitcase in the <<linkreplace "luggage rack">><span class="vocab-reveal">luggage rack (<span class="french-trans">porte-bagages</span>)</span><<run $vocab_list.push("Luggage rack : porte-bagages")>><<set $score += 1>><</linkreplace>>, and sit down. As the train pulls out of the station, you watch the London suburbs disappear, replaced by the green fields of the Kent countryside.
You did it. You survived an entire week in London, interacting with locals, navigating the Tube, eating the food, and exploring the culture.
Your English has improved, and your confidence is much higher than when you arrived!
[[See your final results!|GameCompleted]]🎉 ''CONGRATULATIONS! YOU COMPLETED YOUR WEEK IN LONDON!'' 🎉
You have successfully navigated through one of the biggest and most exciting cities in the world!
<div class="pedagogy pedagogy-info">
📊 ''--- FINAL STATS ---''<br>
⭐ ''Total Score:'' <<print $score>> points<br>
💪 ''Final Confidence Level:'' <<print $confidence>> / <<print $max_confidence>><br>
📝 ''Mistakes Made:'' <<print $mistakes>><br>
</div>
<div class="signage">
🎒 ''YOUR INVENTORY''<br>
<<if $inventory.length == 0>>
Nothing? You travel very light!
<<else>>
<ul>
<<for _i to 0; _i lt $inventory.length; _i++>>
<li><<print $inventory[_i]>></li>
<</for>>
</ul>
<</if>>
</div>
<div class="signage">
🇬🇧 ''YOUR LONDON VOCABULARY LIST''<br>
You learned ''<<print $vocab_list.length>>'' new words and expressions!<br><br>
<ul>
<<for _i to 0; _i lt $vocab_list.length; _i++>>
<li><<print $vocab_list[_i]>></li>
<</for>>
</ul>
</div>
<<if $score >= 60>>
<h2 style="color: #4CAF50;">🏆 RANK: HONORARY LONDONER</h2>
Fantastic job! You fully embraced the culture, learned tons of vocabulary, and made incredibly smart choices. London will miss you!
<<elseif $score >= 40>>
<h2 style="color: #2196F3;">🥈 RANK: SAVVY TOURIST</h2>
Great effort! You saw the main sights, had some good interactions, and survived the Tube! Next time, try talking to even more people.
<<else>>
<h2 style="color: #FF9800;">🥉 RANK: CAUTIOUS TRAVELLER</h2>
You played it safe, and that's okay! London is overwhelming at first. Come back soon and be a bit more adventurous!
<</if>>
''Thank you for playing "A Week in London"!''
[[Play Again?|Start]]<<widget "trigger_roll">>
<<set $last_roll to random(1, 6)>>
<<run window.rollDice($last_roll)>>
<<timed 1.2s>>
<<replace "#dice-outcome">><<include $roll_needed>><</replace>>
<<set $roll_needed to "">>
<</timed>>
<</widget>>
<<widget "inventory_alert">>
<<run window.showNotification(_args[0], _args[1])>>
<</widget>><<nobr>>
<<if $review_init is true>><<set $review_init to false>><<set $review_score to 0>><<set $review_total to Math.min($vocab_list.length, 5)>><<set $review_queue to [].concat($vocab_list).sort(() => Math.random() - 0.5).slice(0, $review_total)>><<set $review_index to 0>><<set $review_feedback to "">><</if>>
<<set _currentRaw to $review_queue[$review_index]>><<set _splitIdx to _currentRaw.indexOf(" : ")>><<set _english to _currentRaw.slice(0, _splitIdx)>><<set _french to _currentRaw.slice(_splitIdx + 3)>>
<<set _sentence to window.getFillBlank(_english)>>
<<set _type to random(1, 3)>>
<<if _type == 3 and _sentence is null>><<set _type to random(1, 2)>><</if>>
<div class="quiz-container">
<div class="card-header">Question <<print $review_index + 1>> / <<print $review_total>></div>
<<if _type == 1>>
<div class="quiz-question">How do you say "''<<print _english>>''" in French?</div>
<div class="quiz-options"><<set _options to window.getQuizOptions(_currentRaw, $vocab_list)>><<for _opt range _options>><<capture _opt>><<set _optParts to window.vocabSplit(_opt)>><div class="quiz-option"><<link _optParts[1]>><<if _opt == _currentRaw>><<set $review_score += 1>><<set $score += 2>><<set $review_feedback to "✅ Correct! " + _english + " means " + _french + ".">><<run SugarCube.Engine.play("VocabReviewNext")>><<else>><<set $mistakes += 1>><<set $review_feedback to "❌ Not quite. " + _english + " means " + _french + ".">><<run SugarCube.Engine.play("VocabReviewNext")>><</if>><</link>></div><</capture>><</for>></div>
<<elseif _type == 2>>
<div class="quiz-question">Which English word means "''<<print _french>>''"?</div>
<div class="quiz-options"><<set _options to window.getQuizOptions(_currentRaw, $vocab_list)>><<for _opt range _options>><<capture _opt>><<set _optParts to window.vocabSplit(_opt)>><div class="quiz-option"><<link _optParts[0]>><<if _opt == _currentRaw>><<set $review_score += 1>><<set $score += 2>><<set $review_feedback to "✅ Correct! " + _english + " is the right word.">><<run SugarCube.Engine.play("VocabReviewNext")>><<else>><<set $mistakes += 1>><<set $review_feedback to "❌ Wrong one. The correct word was " + _english + ".">><<run SugarCube.Engine.play("VocabReviewNext")>><</if>><</link>></div><</capture>><</for>></div>
<<else>>
<div class="quiz-question">Fill in the blank:<br>''<<print _sentence.replace("___", "<span style='color:#3b82f6;font-size:1.2em'>______</span>")>>''\n<br><span style="font-size:0.85em;color:#94a3b8">(<<print _french>>)</span></div>
<div class="quiz-options"><<set _options to window.getQuizOptions(_currentRaw, $vocab_list)>><<for _opt range _options>><<capture _opt>><<set _optParts to window.vocabSplit(_opt)>><div class="quiz-option"><<link _optParts[0]>><<if _opt == _currentRaw>><<set $review_score += 1>><<set $score += 2>><<set $review_feedback to "✅ Correct! The sentence is: " + _sentence.replace("___", _english) + ".">><<run SugarCube.Engine.play("VocabReviewNext")>><<else>><<set $mistakes += 1>><<set $review_feedback to "❌ Not quite. The answer was: " + _english + ".">><<run SugarCube.Engine.play("VocabReviewNext")>><</if>><</link>></div><</capture>><</for>></div>
<</if>>
</div>
<</nobr>><<nobr>>
<div class="quiz-container">
<div class="quiz-feedback"><<print $review_feedback>></div>
<<set $review_index += 1>>
<<if $review_index < $review_total>>
[[Next Question|VocabReview]]
<<else>>
<h3>Review Complete!</h3>
<p>You got <<print $review_score>> / <<print $review_total>> correct.</p>
<<if $review_score == $review_total and $review_total > 0>>
<div class="perfect-score">
🌟 PERFECT REVIEW! 🌟<br>
<<if $confidence == $max_confidence>><<set $max_confidence += 1>><<set $confidence += 1>>Max Confidence increased to <<print $max_confidence>>!
<<else>><<set $confidence += 1>>Confidence increased!
<</if>>
</div>
<</if>>
<<link "Go to sleep...">><<goto `"Day" + $day`>><</link>>
<</if>>
</div>
<</nobr>><<set $day to 2>>
<<include "Day2Morning">><<set $day to 3>>
<<include "Day3Morning">><<set $day to 4>>
<<include "Day4Morning">><<set $day to 5>>
<<include "Day5Morning">><<set $day to 6>>
<<include "Day6Morning">><<set $day to 7>>
<<include "Day7Morning">>