小游戏
1.创建封面
import turtle
import time
playground = turtle.Screen()
Writer = turtle.Turtle()
Writer.color('pink')
Writer.hideturtle()
Writer.penup()
Writer.home()
Writer.write('你追我赶',align='center',font=('Comic Sans MS',50,'bold'))
Writer.goto(0,-50)
Writer.write('Ready?3 2 1,go',align='center',font=('Comic Sans MS',20,'bold'))
time.sleep(3)
Writer.clear()
如图:
2.创建角色
import turtle
import time
import random
playground = turtle.Screen()
playground.register_shape('01.gif')
playground.register_shape('00.gif')
Writer = turtle.Turtle()
Writer.color('pink')
Writer.hideturtle()
Writer.penup()
Writer.home()
Writer.write('你追我赶',align='center',font=('Comic Sans MS',50,'bold'))
Writer.goto(0,-50)
Writer.write('Ready?3 2 1,go',align='center',font=('Comic Sans MS',20,'bold'))
time.sleep(3)
Writer.clear()
sam = turtle.Turtle()
sam.shape('01.gif')
sam.penup()
sam.goto(random.randint(-200,200),random.randint(-200,200))
tom = turtle.Turtle()
tom.shape('00.gif')
tom.penup()
tom.goto(random.randint(-200,200),random.randint(-200,200))
如图:
3.控制其中一个角色的逃跑
import turtle
import time
import random
def up():
tom.setheading(90)
tom.forward(20)
def down():
tom.setheading(270)
tom.forward(20)
def left():
tom.setheading(180)
tom.forward(20)
def right():
tom.setheading(0)
tom.forward(20)
playground = turtle.Screen()
playground.register_shape('01.gif')
playground.register_shape('00.gif')
playground.onkey(up,'Up')
playground.onkey(down,'Down')
playground.onkey(left,'Left')
playground.onkey(right,'Right')
playground.listen()
Writer = turtle.Turtle()
Writer.color('pink')
Writer.hideturtle()
Writer.penup()
Writer.home()
Writer.write('你追我赶',align='center',font=('Comic Sans MS',50,'bold'))
Writer.goto(0,-50)
Writer.write('Ready?3 2 1,go',align='center',font=('Comic Sans MS',20,'bold'))
time.sleep(3)
Writer.clear()
sam = turtle.Turtle()
sam.shape('01.gif')
sam.penup()
sam.goto(random.randint(-200,200),random.randint(-200,200))
tom = turtle.Turtle()
tom.shape('00.gif')
tom.speed(0)
tom.penup()
tom.goto(random.randint(-200,200),random.randint(-200,200))
如图:
4.让另一个角色自动追逐
import turtle
import time
import random
def up():
tom.setheading(90)
tom.forward(20)
def down():
tom.setheading(270)
tom.forward(20)
def left():
tom.setheading(180)
tom.forward(20)
def right():
tom.setheading(0)
tom.forward(20)
playground = turtle.Screen()
playground.register_shape('01.gif')
playground.register_shape('00.gif')
playground.onkey(up,'Up')
playground.onkey(down,'Down')
playground.onkey(left,'Left')
playground.onkey(right,'Right')
playground.listen()
Writer = turtle.Turtle()
Writer.color('pink')
Writer.hideturtle()
Writer.penup()
Writer.home()
Writer.write('你追我赶',align='center',font=('Comic Sans MS',50,'bold'))
Writer.goto(0,-50)
Writer.write('Ready?3 2 1,go',align='center',font=('Comic Sans MS',20,'bold'))
time.sleep(3)
Writer.clear()
sam = turtle.Turtle()
sam.shape('01.gif')
sam.penup()
sam.goto(random.randint(-200,200),random.randint(-200,200))
sam.pendown()
sam.pensize(3)
sam.color('black')
tom = turtle.Turtle()
tom.shape('00.gif')
tom.speed(0)
tom.penup()
tom.goto(random.randint(-200,200),random.randint(-200,200))
while True:
sam.setheading(sam.towards(tom))
sam.forward(5)
if sam.distance(tom)<10:
playground.clear()
break
如图:
5.被抓住,游戏清空,显示秒数
import turtle
import time
import random
def up():
tom.setheading(90)
tom.forward(20)
def down():
tom.setheading(270)
tom.forward(20)
def left():
tom.setheading(180)
tom.forward(20)
def right():
tom.setheading(0)
tom.forward(20)
playground = turtle.Screen()
playground.register_shape('01.gif')
playground.register_shape('00.gif')
playground.onkey(up,'Up')
playground.onkey(down,'Down')
playground.onkey(left,'Left')
playground.onkey(right,'Right')
playground.listen()
Writer = turtle.Turtle()
Writer.color('pink')
Writer.hideturtle()
Writer.penup()
Writer.home()
Writer.write('你追我赶',align='center',font=('Comic Sans MS',50,'bold'))
Writer.goto(0,-50)
Writer.write('Ready?3 2 1,go',align='center',font=('Comic Sans MS',20,'bold'))
time.sleep(3)
Writer.clear()
sam = turtle.Turtle()
sam.shape('01.gif')
sam.penup()
sam.goto(random.randint(-200,200),random.randint(-200,200))
sam.pendown()
sam.pensize(3)
sam.color('black')
tom = turtle.Turtle()
tom.shape('00.gif')
tom.speed(0)
tom.penup()
tom.goto(random.randint(-200,200),random.randint(-200,200))
start = time.time()
while True:
sam.setheading(sam.towards(tom))
sam.forward(5)
if sam.distance(tom)<10:
end = time.time()
playground.clear()
tom.goto(0,0)
tom.write("被追上了",align='center',font=('Comic Sans MS',50,'bold'))
tom.goto(0,-50)
tom.write("你成功出逃{:.1f}秒".format(end - start),align='center',font=('Comic Sans MS',20,'bold'))
break
如图: