Star Logo TNG 101 Treasure Hunt Game Unit

  • Slides: 16
Download presentation
Star. Logo. TNG 101 Treasure Hunt Game Unit Lesson 4: Forever and Procedures

Star. Logo. TNG 101 Treasure Hunt Game Unit Lesson 4: Forever and Procedures

Today’s Agenda • • Review Mini-lesson on new programming blocks Create v 1 of

Today’s Agenda • • Review Mini-lesson on new programming blocks Create v 1 of treasure hunt game Wrap-up

Review • What is the purpose of the Setup block? What blocks typically go

Review • What is the purpose of the Setup block? What blocks typically go in the Setup block? • If you don’t put a “scatter” block, where are the agents placed when you create them? • Program a collision block between turtle and treasure agents so that the treasure moves up into the air 1 step and change its color to purple.

Programming Tip Use the canvas sections to keep your program organized

Programming Tip Use the canvas sections to keep your program organized

Programming Tip Use the mini-map on the upper right corner of the canvas to

Programming Tip Use the mini-map on the upper right corner of the canvas to quickly navigate to different sections of your program.

Treasure Game v. 1 • File menu > Open Project > “treasure game” •

Treasure Game v. 1 • File menu > Open Project > “treasure game” • Save as “treasure game your initials. sltng” • About the treasure game – Setup: creates 1 player agent; creates treasure agents and non-moving hazards agents – Run (forever): player agent(s) calls a procedure that executes movement when the player presses various keyboard keys to control the player agent from 1 st person point of view – Collisions: between player and treasure and hazard agents

Guided Programming 1: Setup • Breed Editor: – Rename turtle breed to “player” (or

Guided Programming 1: Setup • Breed Editor: – Rename turtle breed to “player” (or your choice) and select a new character – Make new breed called “treasure” (or your choice) – Make new breed called “hazard” (or your choice) • Drag setup block to setup section of canvas – Attach “clear everyone” block – Create 1 player agent – Create treasure and hazard agents and randomly scatter them • Click on setup in runtime window to check that the setup does what you want.

New Block: Forever • Found in the “Setup and Run” drawer • Repeats instructions

New Block: Forever • Found in the “Setup and Run” drawer • Repeats instructions placed in this block over and over again, in order from top to bottom, and then starts at the top again. • Each breed has its own section. • Turn on/off by clicking on the green arrow • Can also run from runtime window

Guided Programming 2: Forever • Drag a Forever block to the runtime section of

Guided Programming 2: Forever • Drag a Forever block to the runtime section of canvas. • Rename the Forever block “Run. ” • Attach the If/then keyboard controls stack to the Player section of the Run block. • Turn on the Run block and test the keyboard controls. • What would happen if you move the Keyboard Controls stack to the treasure section?

About Procedures • Recall the cake making analogy: procedures are like those sub-tasks (make

About Procedures • Recall the cake making analogy: procedures are like those sub-tasks (make the batter, bake the cake, decorate the cake) • Procedures make programs easier to build and to understand. Make a cake Make the batter Bake the cake Decorate the cake

New Block: Procedure Guided Programming 3: Make a procedure of the keyboard movement controls

New Block: Procedure Guided Programming 3: Make a procedure of the keyboard movement controls that are currently in the player section of the run block. Replace those instructions with a call to the procedure. To make (or “define”) a procedure: • Position your canvas in the Player section. • Drag a green “procedure” block from the “Procedure” drawer. • Rename the procedure “keyboard controls. ” • Drag the if/then blocks and connect them to the procedure block.

New Block: Procedure • • To “call” a procedure is to use a block

New Block: Procedure • • To “call” a procedure is to use a block with the procedure’s name; the procedure’s instructions are executed in the place where it’s called. Each breed and programming section has its own procedures (found in “my blocks” palette). To call the “keyboard controls” procedure: • Go to the “my blocks” palette and open the “Player” drawer. • Find the procedure that’s labeled “keyboard controls” and drag it to the empty player section of the run block. • Start the run block to make sure that the keyboard controls are working properly.

New Blocks: Score • • Score is a variable. This means that it represents

New Blocks: Score • • Score is a variable. This means that it represents a number that can change. You can change the value of score using set score, found in the “Setup and Run” palette. Set score takes either a single number or a mathematical expression that is evaluated to a single number. For example, if you want to increase the score, you can drag out the addition block from the “Math” palette. The pink score block represents the current value of score. Drop that in the left side of the expression. Drag a pink number block on the right side of the expression and change the number to the amount you want the score to increase. You can also change the sign of the math expression block by clicking on the down arrow next to the operator symbol. Think: What are some ways to use score in your treasure game? When should the score be changed?

New Blocks: Score • A simpler way of increasing or decreasing the score is

New Blocks: Score • A simpler way of increasing or decreasing the score is to use “inc score” and “dec score” • So instead of “set score (score + 5)”, you can just use “inc score 5” • Similarly, instead of “set score (score – 5)”, you can just use “dec score 5”

Programming Activities • Implement collision results between the treasure and hazard agents and the

Programming Activities • Implement collision results between the treasure and hazard agents and the player. • Implement score-keeping. (Hint: don’t forget to attach the “show score” and “set score 0” blocks in the setup block!) • Explore different starting conditions. (Hint: you can have more than 1 setup block)

Wrap Up • • • What What collision results did you try? worked? What

Wrap Up • • • What What collision results did you try? worked? What didn’t work? challenges did you have? was fun? questions do you have? new game ideas do you have?