Scratch Cheat Sheet
A one-page printable reference for Motion, Looks, Events, Control, Sensing, Variables, Operators and the most-used block patterns in Scratch. Pin it next to your monitor!
A one-page printable reference for Motion, Looks, Events, Control, Sensing, Variables, Operators and the most-used block patterns in Scratch. Pin it next to your monitor!
move 10 steps turn โป 15 degrees turn โบ 15 degrees go to x: 0 y: 0 glide 1 secs to x: 0 y: 0 point in direction 90 change x by 10 change y by 10
Motion blocks move and rotate the sprite. glide animates the move smoothly over time.
say "Hello!" for 2 secs think "Hmm..." switch costume to "costume2" next costume change size by 10 set size to 100 % show hide
Looks blocks control what the sprite displays and how it appears on stage.
when ๐ณ๏ธ clicked when space key pressed when this sprite clicked when I receive "go" broadcast "go" broadcast "go" and wait
Events start scripts. broadcast lets sprites talk to each other across the project.
wait 1 secs repeat 10 { // runs 10 times } forever { // runs forever } ifthen { // ... } else { // ... } repeat until { }
touching "Sprite2"? touching color ? key "space" pressed? mouse down? mouse x / mouse y ask "Name?" and wait answer
Sensing blocks check the world around the sprite touching, keys, mouse, and user input via ask.
set [score] to 0 change [score] by 1 show variable [score] add "apple" to [inventory] delete 1 of [inventory] item 1 of [inventory] length of [inventory]
Variables store a single value; lists store many. Both can be made global or sprite-only.
() + () () - () () * () () / () () < () () = () () > () <<>> and <<>> <<>> or <<>> not <<>> pick random 1 to 10 join "Hello " "World"
Operators combine numbers, strings and booleans for math, comparisons and logic.
// A complete simple game loop when ๐ณ๏ธ clicked set [score] to 0 go to x: 0 y: 0 forever { if <key "right arrow" pressed?> then { change x by 5 } if <key "left arrow" pressed?> then { change x by -5 } // collision check if <touching "Coin"?> then { change [score] by 1 broadcast "coin collected" } if <touching "Enemy"?> then { broadcast "game over" stop "all" } }
This loop reads movement keys, checks collisions every frame using forever + if, and updates a score variable a pattern used in almost every Scratch game.
Follow one of our free step-by-step workshops in the Workshop hub.
๐ง Browse Workshops โ