#  Make sure you are subscribed to announcements on Moodle.  Activity 4 will be due 48hrs after your lab ends.

## Presentation on theme: " Make sure you are subscribed to announcements on Moodle.  Activity 4 will be due 48hrs after your lab ends."— Presentation transcript:

 Make sure you are subscribed to announcements on Moodle.  Activity 4 will be due 48hrs after your lab ends

 Variables › Script variable  Lists  Loops  Custom Blocks › We can create 3 types of blocks; command, reporter and predicate.

 Hangman Rules: › There is a secret word to be guessed › The player guesses letters in the word until either all letters are guessed and the word is known, or the player runs out of guesses. › The program should give the player feedback on every guess › The program should give the player feedback when they win or lose, say the number of guesses and the secret word.

 Step 1: Choose a word  Step 2: Word  List.  Step 3: Report number of letters in Word  Step 4: Begin Guessing!  Step 5: Report number of guesses  Step 6: Display letters  Step 7: Report win or loss, play again?

 The Setter first enters the secret word by entering a response to an “ask” block. › The first thing we’ll need to do is have the game ask one player for a word. › We can do this using sensing blocks. › We can define answer by setting it to a variable

 Notice we created a block for “ask for word”  What does the shape tell us about the block › Command, reporter, or predicate?

 The word is immediately hidden from view after the Setter finishes entering it. › After we have the word, we’ll need to store it letter by letter. › Create a script that will go through the word and store the letters, one by one, in a list. › Consider the blocks below.

 Create variable letter_list  Again, notice the shape of this block.

 The program starts by telling the Guesser how many letters are in the secret word. › We should tell the other player how long of a word they are guessing › Use the “say” block, “join” block, “length of list” block and the variables we just created.

 “Length of list” block is a reporter block

 Guesser guesses a letter; the program tells the player whether their guess was right or wrong › Now, we want the second player to guess letters until they run out of guesses or they guess the entire word. › What kind of control blocks should we use;  To do something over and over?  To stop when something happens?

 List that shows correct letters as the game is being played. (similar to hangman blanks)  List that shows the guesses made by player

 Repeat until one of two things happen › Lives left equals zero or › Guess word, correctguess_list is equals to letter_list › If we want to repeat until this is TRUE…we will create _______ statements (reporter, predicate, command?)

 What belongs inside this repeat? › Simplify by creating code inside into a block

 Similar to “break word into list” › Use script variables › “Ask” player to make a guess

 When the guesser guesses a letter, we want to show them where it appears in to actual word, if it does. › Already created a list of blanks the same size as the actual word (correctguess_list) › Replace the blanks with the right letters as they are guessed.  What are the current list we have?

 What if the guess is wrong?

 If guess is wrong… › Report incorrect guess › Take away a life › Reports # of lives

 The program displays the letters guessed correctly so far, in their proper location in the word. › Need to make sure the correctguess_list has the correct amount of blanks.  Use “add _ to list” › Allow the list to be seen on the stage.

 We want blanks to appear, and equal the same length of the word

 When the guesser either runs out of guesses or has successfully guessed the word the game ends. › Report a win or loss. › Ask if the player would like to play again  If yes, the game now ask the Guesser to become the Setter.  Repeat game.  If player wants to play again, what variables must be reset?