42
Harry Potter Scratch Game 1

Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Embed Size (px)

Citation preview

Page 1: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 1

Page 2: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 2

The Game •  Use the arrow keys

to move Harry Potter –  to catch the golden

snitch –  to avoid being hit

by the bludger

Page 3: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 3

Getting Started •  Start Scratch •  Delete the cat

–  Click on scissors and then the cat

–  or right click on the cat and pick delete

Page 4: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 4

Change the Background •  Click on the stage

to select it •  Click on the

Backgrounds tab •  Click on the import

button

Page 5: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 5

Select New Background •  Navigate to the

HarryPotter folder Select the Stadium and click OK

Page 6: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 6

The Stage is Set

Page 7: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 7

Add Harry Potter •  Click on the folder

with a star on it to add a sprite from a file

•  Navigate to the HarryPotter folder

•  Add Harry

Page 8: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 8

The Game so Far

Page 9: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 9

Scratch is Event Driven •  You can make

things happen when events occur –  such as a key is

pressed –  the green flag is

clicked on –  a message is

received

Page 10: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 10

Making Harry Move •  Click on the Scripts Tab •  Click on Control and drag

out –  when space key pressed –  Change to left arrow key

•  Click on Looks and drag out –  switch to costume –  Change to Harry_Left

•  Click on Motion and drag out –  change x by 1 –  click on 1 and change to -4

Page 11: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 11

The Scratch Stage •  The Scratch stage is 480 pixels wide and

360 pixels high.

-240 240

180

-180

x increases x decreases

y increases

y decreases

Page 12: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 12

Add Other Key Scripts •  When right arrow

–  change to Harry_Right costume

–  change x by 4 •  When down arrow

–  change y by -4 •  When up arrow

–  change y by 4

Page 13: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 13

Add the Golden Snitch •  Click on the folder

with a star on it to add a sprite from a file

•  Navigate to the HarryPotter folder

•  Add the snitch

Page 14: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 14

Harry and the Snitch

Page 15: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 15

Snitch Behavior •  In a 'normal' Quidditch game the game is

over when the snitch is caught •  But, in this game you will have to catch 10

snitches to win. –  you will need to keep track of the number

caught •  Each time the snitch is caught it will hide

and reappear in a new random location

Page 16: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 16

Variables •  To remember how many

snitches were caught we will need a variable –  the value stored in a

variable can change (vary) •  Click on the Variables

button •  Then click on Make a

Variable •  Enter a name for the

variable •  Use the default of For all

sprites •  Click on OK

Page 17: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 17

Starting •  Scratch games and

animations usually start when you click the green flag

•  Click on Stage to select it •  Click on Scripts to program •  Click on Control to see the

control blocks •  Drag the "when green flag

clicked" block out •  Click on Variables

–  drag the "set Snitches Caught to 0"

Page 18: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 18

Messages •  Scripts can receive messages

and broadcast messages –  blocks are in the Control

area •  Click on the snitch sprite,

then Scripts then Control •  To create a message drag out

the "when I receive" and click on the down arrow –  then on new…

•  Give the message the name Caught –  click on OK

Page 19: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 19

More about Messages •  Broadcasting and receiving messages is

how sprites communicate with each other –  it doesn't cause anything to be printed or

appear –  it does execute scripts that receive the

message –  All broadcasted messages should have one or

more sprites that receive the message

Page 20: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 20

Responding to Caught •  Hide the snitch

–  drag hide from Looks •  Add one to the number

of snitches caught

–  drag from Variables •  Change the x and y

values –  drag from motion –  replace values with

random numbers •  from Number

•  Show the snitch –  drag from Looks

•  Play a sound –  drag from Sound

Page 21: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 21

Conditional Execution •  Sometimes we want to execute a block or

several blocks if some condition is true –  use sensing blocks or number blocks that

return true or false –  these have 6 sides (hexagon)

•  The snitch is captured if Harry is touching it

•  Use an if from Control to check if Harry is touching the snitch sprite

Page 22: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 22

Catching the Snitch •  If the Harry Potter sprite is

touching the snitch sprite –  add if

•  from Control –  add "touching …" and change

to "Sprite3" •  from Sensing

•  Broadcast the Caught message

•  from Control •  Right click on the if block and

pick "duplicate" –  and add to all the other

scripts for Harry Potter

Page 23: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 23

Catching the Snitch •  Right click on the

if block and select duplicate

•  Drop the copy on the other scripts

•  Move the scripts to see them better

Page 24: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 24

More on Conditionals •  Sometimes we want to execute some

blocks if a condition is true and other blocks if it is false

•  Use a if and else block from Control for this

Page 25: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 25

Winning the Game •  In the snitch script

that receives the caught message –  drag in a if and else

•  from Control –  place it after the

change Snitches Caught by 1

–  move the last 3 tiles into the else part

•  if you have won these don't need to execute

Page 26: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 26

Winning the Game –  drag in a "blank = blank"

•  from Number –  drag in "Snitches

Caught" to the first blank area

•  from Variables –  click on second blank

area and type in 10 –  drag in a broadcast

block •  Create new message

"Won"

Page 27: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 27

Telling the User •  Click on Stage •  Click on

Backgrounds •  Click on Import •  Navigate to

HarryPotter folder •  Select Congrats

–  click on OK

Page 28: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 28

Stage Scripts •  Click on Stage and Scripts •  Set the initial background

to the stadium –  when the green flag is

clicked •  from Looks

•  When the stage receives a Won message –  from Control –  switch background to

Congrats •  from Looks

Page 29: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 29

Hide Other Sprites •  If the user has won

–  hide the other sprites •  Harry Potter •  Snitch

–  You can click on the "when I receive Won"

•  and drag it to the snitch sprite to copy it

•  then click on the snitch sprite and scripts to check the copy worked

Page 30: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 30

When Game Starts •  If the user wins and

Harry and the Snitch hide when you restart the game –  they won't show again

if you start a new game •  Add "when green flag

clicked" show to: –  Harry –  Golden Snitch

Page 31: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 31

Making it Harder •  add a Bludger •  if the Bludger hits

Harry he "dies" –  start with 3 lives –  lose a life each time

Harry dies •  if Harry loses all 3

lives you lose the game

Page 32: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 32

Add Lives Variable •  Click on Variables •  Click on Make a

variable •  Enter Lives •  Drag display to top

right

Page 33: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 33

Start with 3 Lives •  Click on Stage •  Click on Scripts •  Add "set Lives to

0" •  Click on 0 and

change to 3

Page 34: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 34

Painting a Bludger •  You can paint a new

sprite –  click on the paintbrush

with a star on it •  Click the color •  Click the circle shape

tool •  Click and drag to make

the circle •  Click on OK

Page 35: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 35

Loops •  Sometimes you want to repeat blocks until

the game ends or something happens •  Use a forever block to repeat actions until

the game ends –  use a stop all block to stop all scripts

•  Use a repeat block to repeat some actions a given number of times

Page 36: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 36

Bludger Scripts •  When the green flag

is clicked loop forever –  set x to 260 –  hide the bludger –  wait for some

random amount of time between 3 and 5 seconds

–  show the bludger –  Glide to the

opposite side •  x is -260 •  random y from

-145 to 145

Page 37: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 37

Bludger Scripts •  When the green flag

is clicked, loop forever –  check if touching Harry

•  play a sound •  reduce the number of

lives •  check if lost

–  lives = 0 •  wait till not touching

Harry –  or you will die

quickly

Page 38: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 38

Tell User Game Over •  Click on Stage •  Click on

Backgrounds •  Click on Import •  Select HarryPotter

folder •  Select Game Over •  Click OK

Page 39: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 39

New Stage Script •  Click on Scripts •  Add "when I receive Lost"

–  from Control •  Add "switch background

Game Over" –  from Looks

•  Add "stop all" –  from Control

•  Add "stop all" to the end of when receive "Won" script too

Page 40: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 40

Hide Sprites When Lose •  When the game is

lost –  hide Harry –  hide the Snitch

Page 41: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 41

Project Notes •  Click on the notepad in

the top right corner •  Type in project notes •  You can upload your

project to the Scratch web site –  Click on Share! –  See it at http://

scratch.mit.edu

Page 42: Harry Potter Scratch Game 1 - Nova Scotiaschools.ednet.ns.ca/avrsb/.../page24/files/HarryPotterScratchGame.pdf · Harry Potter Scratch Game 3 Getting Started • Start Scratch •

Harry Potter Scratch Game 42

Extensions •  Speed up the Bludger each time a snitch has been caught

–  Will need a variable for "Time to Cross" –  Reduce the variable each time each time the snitch is caught

•  Add background music –  Import Theme.wav –  Add a script to the stage

•  When the green flag is clicked •  Loop forever playing the theme and waiting for it to finish

•  Make the Bludger come from any direction –  and glide across to the opposite side

•  Add Beaters who can hit the Bludger away –  Using the space key

•  Add a time limit –  That counts done