Yesterday we spoken about Scratch being an “Event Driven” programming language – which means when the user clicks on the sprite, types on the keyboard, or clicks the flag something will happen – today we’ll look at the other blocks under the “Event” section.
July 8th – A Week With Scratch
This is a tough post to write – personally I don’t think most people start thinking about events beyond the three mentioned yesterday for a few days as they get used to Scratch, but most people (including my students) see the additional blocks and have questions.
Three additional blocks you see that might peak your interest are the “When I receive ___”, “broadcast ____” and “broadcast ___ and wait”.
Notice that only one of these blocks are like yesterdays blocks, only “When I Receive ___” is curved on the top like the Event blocks of yesterday. This means that the other two, “broadcast ____” and “broadcast ___ and wait” don’t have to be at the start of a script.
This means that a Sprite can trigger an event using the “broadcast ____” and “broadcast ___ and wait” blocks and a completely different Sprite can start based on another Sprites action.
My classic example is the “Knock Knock” joke. I tell students to program the two sprites talking – but quickly they realize that the Sprites talk over each other – or a few might use the “say __ and wait __ sec” block, but there is a better way… these blocks.
Again, this post might be one you want to read again – after you’ve played around with blocks and gotten used to them – at some point you’ll want something to happen AFTER something else and then you jump back to these blocks.
Tomorrow we look at variables and how they can drive events and Sprites in Scratch.