Skip to main content

Soniq Variabelen: Je boeken interactief maken

Zie Variabelen als het "geheugen" van je interactieve boek. Normaal gesproken speelt een pen alleen een geluid af als je een afbeelding aanraakt. Met variabelen kan de pen onthouden wat je eerder hebt gedaan en zijn gedrag daarop aanpassen.

De twee soorten geheugen

  1. Schakelaar (Ja/Nee): Gebruik dit voor dingen die waar of onwaar zijn.
    • Voorbeelden: "Heeft sleutel", "Lichten aan", "Spel gestart".
  2. Teller (Getallen): Gebruik dit voor dingen die je moet tellen.
    • Voorbeelden: "Munten verzameld", "Levenspunten", "Huidige speler".

Hoe je ze gebruikt

Je communiceert met het geheugen via twee hoofdhulpmiddelen in de Studio:

  • Variabele wijzigen: Dit "schrijft" naar het geheugen van de pen (bijv. "De speler heeft net de sleutel opgepakt, dus zet Heeft sleutel op Ja").
  • Voorwaardelijk blok: Dit "leest" het geheugen en stelt een vraag (bijv. "ALS de speler de Sleutel heeft, DAN speel het geluid 'Deur openen' af").

Voorbeeld: De gesloten schatkist

In dit voorbeeld moet het kind een verborgen sleutel vinden voordat ze een schatkist kunnen openen.

Stap 1: Maak het geheugen aan

Ga naar Projectinstellingen > Logica & Variabelen en klik op Variabele toevoegen:

  • Naam: heeft_sleutel
  • Type: Schakelaar (Boolean)
  • Beginwaarde: Nee (Onwaar)

Stap 2: Verberg de sleutel (De "oude eik")

Zoek de afbeelding van de boom waar de sleutel verborgen is. Voeg in de Regio-editor deze acties toe:

  1. Audio afspelen: "Je kijkt onder de wortels en vindt een roestige oude sleutel!"
  2. Variabele wijzigen: Zet heeft_sleutel op Ja.

Stap 3: Maak de logica voor de kist

Zoek de afbeelding van de schatkist. We hebben twee "Voorwaardelijke blokken" nodig om beide gevallen af te handelen:

Geval A: Ze hebben de sleutel nog niet

  1. Voeg een Voorwaardelijk blok toe: ALS heeft_sleutel is Nee
  2. Binnen het blok voeg je Audio afspelen toe: "De kist zit stevig op slot. Misschien is er ergens een sleutel verborgen?"

Geval B: Ze hebben de sleutel!

  1. Voeg een Voorwaardelijk blok toe: ALS heeft_sleutel is Ja
  2. Binnen het blok voeg je Audio afspelen toe: "De sleutel past! Je draait hem om en de kist kraakt open en onthult... gouden munten!"
  3. Binnen het blok voeg je Variabele wijzigen toe: Zet heeft_sleutel op Nee (optioneel, als de sleutel "verbruikt" is).

Hoe het werkt voor het kind:

  • Als ze eerst de Kist aanraken, "controleert" de pen zijn geheugen, ziet dat heeft_sleutel op Nee staat en vertelt hen dat hij op slot zit.
  • Zodra ze de Boom aanraken, "schrijft" de pen in zijn geheugen dat ze nu de sleutel hebben.
  • Zodra ze de Kist opnieuw aanraken, "controleert" de pen opnieuw, ziet dat heeft_sleutel nu op Ja staat en speelt het geluid van succes af!

Voorbeeld: Dobbelsteenworp & Willekeur

Je kunt variabelen gebruiken om kansspelen te maken, zoals een bordspel met een digitale dobbelsteen.

Stap 1: Maak de dobbelsteen-variabele aan

Ga naar Projectinstellingen > Logica & Variabelen:

  • Naam: dobbelsteen
  • Type: Teller (Getal)
  • Maximale waarde: 6

Stap 2: De actie "Gooi de dobbelsteen"

Zoek de afbeelding van een dobbelsteen in je boek. Voeg in de Regio-editor deze acties toe:

  1. Variabele wijzigen:
    • Variabele: dobbelsteen
    • Bewerking: Instellen (=)
    • Waarde: random(1,6) (Dit vertelt de pen om een willekeurig getal tussen 1 en 6 te kiezen)
  2. Tekst uitspreken: "Dobbelsteen gegooid op {dobbelsteen}." (De pen zal automatisch het getal aankondigen dat hij net heeft gekozen!)

Hoe het werkt:

  • De willekeurige opdracht: Wanneer de pen random(1,6) ziet, gebruikt hij zijn interne hogesnelheidstimer om een getal te kiezen.
  • Het getal uitspreken: Soniq doet het zware werk om de pen de variabele te laten "uitspreken". Wanneer je {dobbelsteen} in een tekst gebruikt, genereert Soniq vooraf de audio voor elke mogelijke uitkomst (1, 2, 3, enz.) zodat de pen altijd het juiste resultaat uitspreekt.