De zetten onthouden

In deze les, ga je verder met het Boter-Kaas-en-Eierenproject uit Hoofdstuk 2 om een programma te maken dat het bord analyseert en een gewonnen of gelijk spel detecteert.

Op deze pagina, ga je je programma voorbereiden door gedane zetten op te slaan.

Toen je voor het eerst boter, kaas en eieren maakte, was het gemakkelijk om 'illegale' zetten te detecteren (wanneer je iets probeert te plaatsen in een hokje waar al een X of O staat). Dit is zo omdat je alleen naar 1 hokje hoefde te kijken. Maar om winst en gelijkspel te detecteren, moeten we het programma leren om de staat van hele spelbord te controleren en niet alleen een hokje. Dus gebruiken we een globale variabele, Geen Afbeelding, om bij te houden of een hokje leeg of gevuld is met een X of O.

Je hebt geleerd over globale variabelen in Hoofdstuk 2 Les 1 Pagina 3: De Score Bijhouden met Globale Variabelen.
Geen Afbeelding

  1. Open je H2L4-BoterKaasEieren-project en sla deze op als H3L2-BoterKaasEieren zodat je nog steeds de oude versie hebt en je alleen aanpassingen maakt in het nieuwe project.
  2. Maak een globale variabele genaamd bord, die aan het begin van het spel een lijst bevat met daarin negen keer het woord "Leeg".

Elke sprite moet zijn eigen plek op het bord weten, zodat we het item van blok kunnen gebruiken om daar een X of O in te zetten. Dus maken we een sprite-lokale variabele, Geen Afbeelding en elke clone zal zijn eigen versie van deze variabele hebben.

Je hebt geleerd over script-lokale variabelen in Hoofdstuk 2 Les 1 Pagina 1: Raad-het-getal Spel verbeteren met variabelen.

Een sprite-lokale variabele is net als een globale variabele in de zin van dat het niet bij een specifiek script hoort (zoals een script-lokale variabele), maar wel bij een specifieke sprite.

  1. Je hebt geleerd over het initialiseren van variabelen in Hoofdstuk 2 Les 1 Pagina 1: Raad-het-getal Spel verbeteren met variabelen.

    Maak een lokale (sprite)-variabele aan, positienummer.

    Je maakt een lokale variabele op een gelijke manier aan als een globale variabele:

    • Klik op Geen Afbeelding in het variabelenpalet.
    • Selecteer "alleen voor dit object" om een lokale (sprite) variabele aan te maken.

    Geen Afbeelding
  2. Geef terwijl je clones aanmaakt elk positienummer zijn bijbehorende waarde (1-9).
    In de lus die clones aanmaakt, verhoog de waarde van de variabele bij elke nieuwe kloon zodat elke kloon een unieke waarde heeft.
    Zorg ervoor dat het positienummer van de ouder geen waarde van 1-9 krijgt zodat het niet in conflict komt met een kloon.
  3. Wanneer er op een hokje geklikt wordt, vervang dan het invoerblokje van het hokje in de bord-lijst met een X of O.
  4. Kijk naar de waardes van de bord-variabele terwijl je Boter-Kaas en Eieren speelt. Zorg ervoor dat het werkt zoals het hoort, en los eventuele bugs (fouten) op.
  5. Geen Afbeelding
Terug Volgende