Complimentengenerator in Scratch
- Inhoudsopgave
Inleiding
Scratch Complimenten generator
In deze Scratch-opdracht ga je stempelen met sprites. Door lettersprites achter elkaar te stempelen ontstaat een zin. Deze zin ga je samenstellen uit 2 zinsdelen, een “opening” zoals “lieve papa” en een “complimentje” zoals “wat kan jij toch lekker koken”. Deze zinsdelen haal je willekeurig uit een lijst van verschillende openingen en verschillende complimentjes zodat je iedere keer een andere zin in beeld krijgt. De complimentjes komen pas tevoorschijn als je vader/moeder op een bewegende 2e sprite klikt, in het voorbeeld de vlinder.
Ga naar https://scratch.mit.edu om met Scratch te werken.
Maak letters
-
Open een nieuwe scratch door op
Maak
te klikken. -
Gooi de bestaande sprite weg en kies een nieuwe.
-
Klik op letters en kies de letter a van de letterstijl die je wil gebruiken.
-
Hernoem deze sprite naar
Letters
. -
Ga nu naar
Uiterlijken
van de letters sprite en klik opKies een uiterlijk
.
-
Kies nu de letter B van dezelfde stijl.
-
Ga door tot je alle letters B t/m Z als uiterlijk hebt toegevoegd aan deze sprite.
Als je leestekens wilt gebruiken (een komma, punt en uitroepteken) zul je deze in een blanco uiterlijk zelf moeten tekenen.
Tweede sprite
- Voeg nu een 2e sprite toe, in dit voorbeeld de Butterfly sprite (vlinder).
-
Kies ook een leuke achtergrond die er bij past.
-
Met onderstaande code kun je de vlinder laten vliegen over je scherm door de positie na klikken op het groene vlaggetje in een lus te laten verschuiven naar een willekeurig punt.
In het voorbeeld is het startpunt altijd hetzelfde en begint de vlinder pas te vliegen na 5 seconden. Je moet een variabele “positie_butterfly” aanmaken.
In een tweede stuk code verandert het uiterlijk van de vlinder elke 0.2 seconden.
- Als er op de vlinder wordt geklikt zendt deze het signaal
schrijftekst
dat door de lettersprite opgepikt kan worden.
Pen
-
Ga nu weer terug naar de letters sprite.
-
Je kunt met de pen blokken stempelen en de stempels weer wissen. Deze functie kun je gebruiken om de letters uit een zin te stempelen op het scherm.
Als de pen functie nog niet aan staat kun je deze aan zetten door links onder in het scherm op het onderstaande symbool te klikken en dan op de pen functie.
Zinnen maken
- Eerst gaan we zinnen maken om weer te geven. We maken 2 lijsten: opening en complimentje. Je kunt deze functie vinden in het menu variabelen. Je ziet in je scherm rechts twee lege lijsten verschijnen.
Daarna gaan we teksten in de twee lijsten zetten. Klik linksonder op de + en je ziet een vakje verschijnen. Typ teksten die je zelf leuk vindt.
- Nu ga je de code schrijven om de teksten uit je lijst op het scherm te gebruiken.
Je kunt een willekeurig item uit een lijst kiezen met hetwillekeurig getal
blok. Een willekeurig getal tussen 1 en het aantal waarden dat je in je lijst hebt staan.
- Creëer nu de variabelen die je nodig gaat hebben. Dat doe je in het menu Variabelen door op
Maak een variabele
te klikken.
Maak de variabelezin
waar je de willekeurige zin in gaat stoppen; maak de variabeleletter
waar je opeenvolgend elke letter uit je zin in gaat laden en maak de variabele#teken
die je gaat gebruiken om bij te houden bij welk teken uit de zin je was gebleven.
- Schrijf onderstaande code in de letters sprite. Met deze code wordt een zin gemaakt door eerst een willekeurig zinsdeel te kiezen uit je lijst opening en daarachter een willekeurig zinsdeel uit je lijst complimentje.
Tussen de twee zinsdelen staat een spatie. Hetmaak
blok vind je bij variabelen.
- Voeg nu een
zeg
blok toe en kijk wat dit doet!
Als je de lijsten en variabelen niet in beeld wil zien dan moet je in het menu Variabelen de blauwe vinkjes weghalen.
Blokken
-
Nu je een willekeurige tekst hebt is het tijd om deze in een aan te roepen Blok te zetten en de andere functies te maken die je nodig hebt voor het hele programma.
-
Ga naar het menu Mijn Blokken en definieer 5 blokken:
a. Willekeurige_tekst: waar je de willekeurige zin gaat samenstellen (code die je net gemaakt hebt)
b. Schrijf_tekst: dit is om de zin binnen te krijgen (let op dat hier een parameter in kan om de tekst van de zin binnen te kunnen krijgen!)
c. Type: dat de grafische weergave van de zin moet gaan regelen
d. Toelichting: instructies hoe het werkt
e. Wis: om de zin te wissen.
- Begin met het blok Schrijf_tekst. Dit blok loopt door alle letters uit de zin.
Het pakt het eerste teken, zet dat in de variabeleletter
, “typt” deze via deze variabele op het scherm via het bloktype
, schuift de sprite op naar rechts (tot dicht bij het eind van het scherm, begint dan op een nieuwe regel zodra hij een spatie tegenkomt in de tekst), en gaat door naar de volgende letter uit de zin.
De code staat hieronder. Let op dat bovenintext
staat in het lege vakje.
- Schrijf nu het blok
type
. Dit blok stempelt de letter die op dat moment in de variabeleteken
staat op het scherm (op de plaats waar de sprite op dat moment staat) door de sprite het uiterlijk te geven dat overeenkomt met de letter uit de variabeleletter
en dan zichzelf te stempelen.
Maak eerst het als-dan blok voor de letter a en kopieer dit voor alle letters van het alfabet. Als je ook leestekens gebruikt, zoals een komma en een uitroepteken, dan moet je die ook toevoegen. De code staat hieronder:
- Maak nu de
Letters
sprite zelf onzichtbaar.
- Een aantal stappen terug heb je de vlinder sprite al geprogrammeerd om het signaal
schrijftekst
uit te zenden. Door bij ontvangst van dit signaal het scherm te wissen, de willekeurige tekst samen te stellen en de ontstane zin te schrijven verschijnt je willekeurige boodschap op het scherm.
- Start je programma en klik op de vlinder.
Als je letters niet de juiste grootte hebben en bijvoorbeeld heel er groot over elkaar heen komen, dan kun je bij de letters sprite de grootte aanpassen. In dit voorbeeld moest de grootte op35
gezet worden.
- Definieer nu nog het toelichting blok en het wis blok:
Afronding
- Je maakt het programma af door een welkomst toelichting op het scherm te laten verschijnen bij de start van het programma.
Zorg er ook voor dat het scherm gewist wordt bij het indrukken van de spatiebalk met het blok wis.
Het complete spel staat ook in onze studio.
En verder?
Eenvoudig: Voeg een type geluid toe aan elke letter die gestempeld wordt.
Gemiddeld: Laat de vlinder steeds sneller heen en weer vliegen.
Complex: Laat elk complimentje maar 1 keer zien tot er weer op de groene vlag wordt geklikt.