Santa Delivery Scroller Game

  1. Make Santa Sleigh Sprite fly left and right with Arrow keys

  2. Make the background mountains continuously scroll left

  3. Make House Sprite scroll left at variable speed

  4. Make Snowman Sprite scroll left at variable speed

  5. Have Santa Sprite drop presents with the Space key

  6. Drop Presents on houses for points and to squash Snowmen just for fun!

  7. Show Ending Message and Score when game ends (25 houses pass by)

Sign in at Scratch

Go To: http://scratch.mit.edu/

scratch-signin

CoderDojo Indigo Studio

Go To: http://scratch.mit.edu/studios/585122/ and click Santa Delivery (Starter)

CoderDojo Indigo

Click the "See inside" button

Notice the sections: Title, Instructions and Notes and Credits

see-inside

Click the "Remix" button

This will make a copy of the project under your name

remix

Rename the Project

It's a good practice to name your project something unique

rename

Music Loop

Shortcut: You already have looping music code attached to your Stage!

music-loop

Santa Sleigh Control with Keys

Shortcut: Rotation, Direction and Arrow keys control already coded...

santa-move

Multi-Sprite Scroll Technique

Use 2 or more sprites animated at matched speed, but offset...
When moving sprite gets to its own end, it jumps back to other side.

background-scroll0

Multi-Sprite Scroll Technique

Use 2 or more sprites animated at matched speed, but offset...
Mountains Sprite continuously scroll left (start x = 0), then loop.

background-scroll1

Multi-Sprite Scroll Technique

Use 2 or more sprites animated at matched speed, but offset...
Mountains2 Sprite continuously scroll left (start x = 480), then loop.

background-scroll2

We Need Houses!

Set up a few variables. Make House Sprite scroll left and loop... but it's too easy!

house-move

Variability: Random Wait Delay

Set a random number of seconds (1-4) to wait before a new house comes.

house-delay

Variability: House Speed

We'll use the "modulo" (mod) math function to set house speed after every 4 houses.

house-speed

Do You Want to Move a Snowman?

We'll use a slightly different technique to move our Snowman (and loop). (Note: multiply by -1 to move the Sprite Left.)

snowman-move

Set up the Present Drop Position

Initiatize PresentsDelivered variable count. Make a new Present always drop from Santa's sleight with Space key. (Note: Offset x position based on sleigh direction.)

present-setup

"Drop" the Present!

Make the present fall (- y movement) with a repeat loop UNTIL a condition is met (touches house roof color OR gets to bottom of screen).

present-drop

Did the Present get to the House?

If the Present DID hit the target house color, play a sound and add +1 to PresentsDelivered variable count. (Always hide the Present Sprite after!)

present-score

Squash the Snowman!

Go back to the Snowman Sprite and add a few code blocks to squash him when hit with a Present! (Just for mischievous fun!)

snowman-squash

Remember the Broadcast?

Back on the House Sprite, you should have already added a "GameOver" broadcast message after 25 houses passed.

broadcast-end

Let's Listen for the Broadcast

The EndMessage Sprite will hide itself and the PresentsDelivered variable at Start and show both when it receives the "GameOver" broadcast.

gameover-message

Congratulations!

You built a scrolling game! Now, here are a few Challenges:

  1. Make new costumes to animate Santa and Rudolf as they fly

  2. Make new costumes for different types of houses

  3. Create a variable for number of snowmen squashed and display

  4. Come up with a better way to display score and decide when game will end

  5. Look for "1 Sprite 1 Script" (1S1S) Costume / Stamp methods for background scrolling

  6. Add a "Start Over" button

If you got stuck anywhere, see the completed project with comments here: http://scratch.mit.edu/projects/36762558/!

/