最火的python编程开发,小白都可以完成,最简单的猫抓老鼠游戏源码

 

 

import  turtle
import  time
import  random

def  up():
        jerry.setheading(90)
        jerry.forward(20)

def  down():
        jerry.setheading(270)
        jerry.forward(20)

def  left():
        jerry.setheading(180)
        jerry.forward(20)

def  right():
        jerry.setheading(0)
        jerry.forward(20)

def  play_game():
        tom.goto(random.randint(-200,  200),  random.randint(-200,  200))
        jerry.goto(random.randint(-200,  200),  random.randint(-200,  200))
        start  =  time.time()
        while  True:
                tom.setheading(tom.towards(jerry))
                tom.forward(5)
                if  tom.distance(jerry)  <  10:
                        end  =  time.time()
                        playground.clear()
                        jerry.goto(0,  0)
                        jerry.write("GAME  OVER",  align='center',  font=("Comic  Sans  MS",  50,  'bold'))
                        jerry.goto(0,  -50)
                        jerry.write("YOU  SURVIVED  {:.1f}  SECONDS".format(end  -  start),  align='center',
                                                font=("Comic  Sans  MS",  20,  'bold'))
                        tom.pu()
                        tom.goto(-50,  -70)
                        tom.stamp()
                        jerry.pu()
                        jerry.goto(50,  -70)
                        jerry.stamp()
                        turtle.ontimer(play_game,  3000)    #  3秒后重新开始游戏
                        break

playground  =  turtle.Screen()
playground.register_shape('tom.gif')
playground.register_shape('jerry.gif')

playground.onkey(up,  'Up')
playground.onkey(down,  'Down')
playground.onkey(left,  'Left')    #  将playground.onkey(left,  'Left')移出left函数,只执行一次即可
playground.onkey(right,  'Right')
playground.listen()

writer  =  turtle.Turtle()
writer.color('brown')
writer.hideturtle()
writer.penup()
writer.home()
writer.write("TOM  &  JERRY",  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'))

turtle.ontimer(writer.clear,  3000)    #  3秒后清除提示信息,开始游戏
turtle.ontimer(play_game,  3000)    #  3秒后开始游戏

tom  =  turtle.Turtle()
tom.shape('tom.gif')
tom.penup()
tom.pendown()
tom.pensize(3)
tom.color('blue')

jerry  =  turtle.Turtle()
jerry.shape('jerry.gif')
jerry.speed(0)
jerry.penup()
jerry.color('brown')

turtle.mainloop()    #  主循环,必须在最后执行

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值