t1 = turtle t2 = new Turtle red t2.bk 170 t2.rt 90 play1 = true play2 = true speed Infinity tick 60, -> if play1 if pressed "up" then t1.fd 1 if pressed "left" then t1.lt 1 if not t1.touches gold write "#1 Game Over" play1 = false if play2 if pressed "W" then t2.fd 1 if pressed "A" then t2.lt 1 if not t2.touches gold write "#2 Game Over" play2 = false
To make a new turtle, pick a name like
x = new Turtle.
The turtle can be moved by putting
in front of commands for that turtle.
x.fd 100 moves it forward.
This program creates a new red turtle (using
t2) by writing
t2 = new Turtle red
t2.bk 170 and
are used to move it into position.
The main turtle comes with a predefined name:
fd 1 and
turtle.fd 1 do exactly
the same thing. This program sets up
t1 = turtle, so
t1.fd 1 will also do exactly the same thing.
Why do you think the author of this program set up
the new name
"Game over" is handled in a new way here.
Since there are two players, we want to let
one player play after the other player runs off the
track. So this program uses two new
to keep track of which of the players is still playing.
At the start, both
play1 = true and
play2 = true, which means both players
are playing. If just player 1 runs off the track, we set
play1 = false, and then the line
if play1 will stop player 1's
keyboard controls from running, even as the timer
continues running for player 2.