<< Chapter < Page | Chapter >> Page > |
The code that calls the custom block is shown in the top script in Image D . (I will refer to this as the driver script.) When the green flag is clicked, the custom block named test is called by the driver, passing a numeric value of 10 as a parameter. When the test block terminates, control is returned to the driver. The driver script causes the cat sprite to display the value stored inthe variable named var for 20 seconds. Then the program terminates.
The program output showing the cat on the stage is shown in Image E .
A numeric value of 10 is passed to the test block by the driver. Code in the test block multiplies that value by a factor of 2 storing the product value of 20 in the variable named var . Code in the driver then causes that value to be displayed by the cat sprite onthe stage. Thus, the program displays the value 20 as shown in Image E .
This program illustrates some of the benefits of custom blocks. The two scripts that comprise the program are shown in Image F .
The top script in Image F is the driver script. This code calls the custom block (shown in the bottom script) three times.
The purpose of the custom block is to cause the cat to take a walk with the duration of the walk and the initial direction of the walk determined by a pairof incoming parameters.
As you will see later, the cat is facing to the right each time the custom block named walk is called. The incoming parameter named angle is used to cause the cat to turn and face in a particular direction before beginning the walk. The same parameter is used later in thewalk to cause the cat to make a much smaller turn in the same direction at the end of each segment of the walk. Thus, the cat tends to walk in a somewhatcircular path unless it collides with the edge of the stage, in which case it bounces off the edge.
The incoming parameter named numberLoops is used to determine the number of segments in the walk or the duration of the walk.
The last two blocks in the custom block cause the cat to return to the center of the stage and face to the right.
By now you shouldn't need an explanation for the remaining code in the custom block.
The driver script initially causes the cat to move to the center of the screen and face to the right.
Then it executes three pairs of blocks in sequence. The first block in each pair causes the cat to say "Morning stroll", "Noon stroll", or "Eveningstroll".
The second block in each pair is a call to the custom block named walk . Each time the walk block is called, it is passed random values for numberLoops and angle . Therefore, the duration and direction of each walk will be different each time you run theprogram.
Because of the dynamic nature of the program, there is no point in me presenting a static snapshot of the output. Instead, I will simply suggest thatyou run the program online at CustomBlockTest02 and observe the output.
Notification Switch
Would you like to follow the 'Teaching beginners to code' conversation and receive update notifications?