# Verschillende schermen in een spel [Programmeergidsen](LEESMIJ.md) Een spel heeft vaak verschillende **schermen**: een titelscherm, het spel zelf, een winnend scherm en een verliezend scherm. Dat hoeven geen aparte programma’s te zijn. Eén programma kan onthouden welk scherm actief is. Dit artikel bouwt voort op [toestand](toestand.md). We beschrijven de veranderingen eerst met tekst, voordat we tekeningen of knoppen toevoegen. ## Kies de volgende kamer Stel je de schermen voor als kamers met deuren ertussen. Start brengt je van de titel naar het spelen. Winnen brengt je van het spelen naar de winnaarskamer. Sommige deuren mogen alleen vanuit bepaalde kamers werken. Een verandering van de ene toestand naar de andere heet een **overgang**. Met een overgangstabel bepaal je de regels voordat je iets tekent. | Huidig scherm | Actie | Volgend scherm | | --- | --- | --- | | Titel, gewonnen of verloren | Start | Spelen | | Spelen | Winnen | Gewonnen | | Spelen | Verliezen | Verloren | Ons prototype laat Start ook tijdens het spelen toe om een ronde opnieuw te beginnen. ## Oefen een spelverloop De actielijst is verzonnen invoer. Zo testen we een hele reeks zonder op knoppen te klikken. ```pliro # taal: nl laat scherm = "titel" zeg scherm voor actie in ["start", "win", "start", "verlies"]: als actie == "start": zet scherm = "spelen" anders: als scherm == "spelen": als actie == "win": zet scherm = "gewonnen" als actie == "verlies": zet scherm = "verloren" zeg scherm ``` ## Voorspel en probeer Kan de tweede Start ons terugbrengen vanaf het winnende scherm? ```text titel spelen gewonnen spelen verloren ``` Ja. Het huidige scherm is één tekstwaarde. Dat voorkomt combinaties zoals ‘tegelijk gewonnen en verloren’. Die maak je makkelijk per ongeluk met verschillende losse waar/onwaar-vlaggetjes. ## Jouw uitdaging Zet `"win"` aan het begin van de actielijst, vóór Start. Het titelscherm moet dan onveranderd blijven. Leg uit welke voorwaarde voorkomt dat een speler al wint voordat die speelt. ## Een veelgemaakte fout Een afbeelding veranderen zonder de onthouden toestand bij te werken, kan knoppen laten reageren alsof het vorige scherm nog actief is. Teken in een grafische versie de scène die bij `scherm` past. Verwerk alleen de acties die daar mogen. De teksten hier zijn jouw eigen labels, geen bijzondere Pliro-sleutelwoorden. ## Verder leren [Toestand](toestand.md) · [Gebeurtenissen](gebeurtenissen.md) · [Tekenen](tekenen.md)