当前位置: 首页 > news >正文

高端网名生成器扬州网络优化推广

高端网名生成器,扬州网络优化推广,做网站公司会场主持台词,哈尔滨龙彩做网站多少钱最近闲(mang)来(dao)无(fei)事(qi),喜欢研究一些小游戏,本篇文章我主要介绍使用 turtle 写的一个很简单的猫捉老鼠的小游戏,主要是通过鼠标控制老鼠(Tom)的移动,躲避通过电脑控制的猫(Jerry)的追捕。 游戏主体思考逻辑&#xff1…

最近闲(mang)来(dao)无(fei)事(qi),喜欢研究一些小游戏,本篇文章我主要介绍使用 turtle 写的一个很简单的猫捉老鼠的小游戏,主要是通过鼠标控制老鼠(Tom)的移动,躲避通过电脑控制的猫(Jerry)的追捕。

游戏主体思考逻辑:输入1-5的数字选择难度,使用方向键盘控制老鼠的方向及移动,让它不要被猫抓住,最后被猫抓住时游戏结束,结束时会弹出得分。

1.导入相关模块

import time
import turtle

2.制作游戏整体窗口

window = turtle.Screen()

 3.绘制猫与老鼠

# 猫 系统默认的黑色
cat = turtle.Turtle()
# 老鼠 红色
mouse = turtle.Turtle()
mouse.color('red')
# 将老鼠的画笔提起,使不会出现轨迹
mouse.penup()    
# 老鼠的初始地址放置在坐标(150,150)               
mouse.goto(150, 150)

 4.通过方向键盘控制老虎旋转方向及移动

# 老鼠前进 30 像素
def up():mouse.forward(30)
# 老鼠左转 45 度
def left():mouse.left(45)
# 老鼠右转 45 度
def right():mouse.right(45)
# 老鼠后退 30 像素
def back():mouse.backward(30)# 按动方向键 Up 则执行函数up ...
window.onkeypress(up, "Up")     
window.onkeypress(left, "Left")
window.onkeypress(right, "Right")
window.onkeypress(back, "Down")

 5.设置一个边界,防止老鼠离开游戏窗口

# 窗口可用范围为 300x300 像素
boxsize = 300
# 检测老鼠是否跑过界,如再前进便过界,让老鼠卡在边界处
def checkbound():global boxsizeif mouse.xcor() > boxsize:mouse.goto(boxsize, mouse.ycor())if mouse.xcor() < -boxsize:mouse.goto(-boxsize, mouse.ycor())if mouse.ycor() > boxsize:mouse.goto(mouse.xcor(), boxsize)if mouse.ycor() < -boxsize:mouse.goto(mouse.xcor(), -boxsize)
# 老鼠前进 30 像素
def up():mouse.forward(30)checkbound()
# 老鼠后退 30 像素
def back():mouse.backward(30)checkbound()

 6.手动结束游戏与难度控制

# 结束游戏
def quitTurtle():window.bye()
# 空格键结束游戏
window.onkeypress(quitTurtle, "Escape")# 产生一个输入难度的对话框
difficulty = window.numinput("难度", "请输入游戏的难度(1~5)", minval=1, maxval=5)
# 窗体监听按键
window.listen()

 7.游戏开始

# 是否被抓住:默认未被抓住
caught = False
# 游戏开始
while not caught:# 猫调整自己方向,使自己正对老鼠cat.setheading(cat.towards(mouse))   # 猫前进cat.forward(8+difficulty)# 老鼠与猫的距离小于 5 个像素就输了if cat.distance(mouse) < 5:            caught = True# 难度越高,运行速度越快time.sleep(0.2-(0.01*difficulty))

 8.结束游戏及得分

score = 0
# 游戏开始
while not caught:# 猫调整自己方向,使自己正对老鼠cat.setheading(cat.towards(mouse))   # 猫前进cat.forward(8+difficulty)# 分数增加score += 1# 老鼠与猫的距离小于 5 个像素就输了if cat.distance(mouse) < 5:            caught = True# 难度越高,运行速度越快time.sleep(0.2-(0.01*difficulty)) 
# 游戏结束及得分
window.textinput("GAME OVER", "游戏得分:"+str(score*difficulty))
window.bye()

 9.完整代码

import time
import turtle# 一些常量
# 窗口可用范围为 300x300 像素
boxsize = 300
# 是否被抓住:默认未被抓住
caught = False
score = 0# 老鼠前进 30 像素
def up():mouse.forward(30)checkbound()
# 老鼠左转 45 度
def left():mouse.left(45)
# 老鼠右转 45 度
def right():mouse.right(45)
# 老鼠后退 30 像素
def back():mouse.backward(30)checkbound()# 检测老鼠是否跑过界,如再前进便过界,让老鼠卡在边界处
def checkbound():global boxsizeif mouse.xcor() > boxsize:mouse.goto(boxsize, mouse.ycor())if mouse.xcor() < -boxsize:mouse.goto(-boxsize, mouse.ycor())if mouse.ycor() > boxsize:mouse.goto(mouse.xcor(), boxsize)if mouse.ycor() < -boxsize:mouse.goto(mouse.xcor(), -boxsize)# 结束游戏
def quitTurtle():window.bye()window = turtle.Screen()
# 猫 系统默认的黑色
cat = turtle.Turtle()
# 老鼠 红色
mouse = turtle.Turtle()
mouse.color('red')
# 将老鼠的画笔提起,使不会出现轨迹
mouse.penup()    
# 老鼠的初始地址放置在坐标(150,150)               
mouse.goto(150, 150)# 按动方向键 Up 则执行函数up ...
window.onkeypress(up, "Up")     
window.onkeypress(left, "Left")
window.onkeypress(right, "Right")
window.onkeypress(back, "Down")
# 空格键结束游戏
window.onkeypress(quitTurtle, "Escape")# 产生一个输入难度的对话框
difficulty = window.numinput("难度", "请输入游戏的难度(1~5)", minval=1, maxval=5)
# 窗体监听按键
window.listen()# 游戏开始
while not caught:# 猫调整自己方向,使自己正对老鼠cat.setheading(cat.towards(mouse))   # 猫前进cat.forward(8+difficulty)# 分数增加score += 1# 老鼠与猫的距离小于 5 个像素就输了if cat.distance(mouse) < 5:            caught = True# 难度越高,运行速度越快time.sleep(0.2-(0.01*difficulty)) 
# 游戏结束及得分
window.textinput("GAME OVER", "游戏得分:"+str(score*difficulty))
window.bye()

以上就是简单的猫捉老鼠的小游戏,总计代码不过60多行,感兴趣的各位可以动手试(wan)一(yi)试(xia)。


文章转载自:
http://squabbish.fznj.cn
http://centenarian.fznj.cn
http://stack.fznj.cn
http://dextrocardia.fznj.cn
http://desuetude.fznj.cn
http://inflation.fznj.cn
http://oit.fznj.cn
http://spewy.fznj.cn
http://vb.fznj.cn
http://clavicorn.fznj.cn
http://revery.fznj.cn
http://apiary.fznj.cn
http://bricky.fznj.cn
http://emalangeni.fznj.cn
http://silver.fznj.cn
http://cornhusk.fznj.cn
http://baluster.fznj.cn
http://mutagen.fznj.cn
http://divisive.fznj.cn
http://reexamination.fznj.cn
http://epizeuxis.fznj.cn
http://pedder.fznj.cn
http://guilloche.fznj.cn
http://vair.fznj.cn
http://postbellum.fznj.cn
http://knobble.fznj.cn
http://soli.fznj.cn
http://acharnement.fznj.cn
http://samoan.fznj.cn
http://perchlorate.fznj.cn
http://coset.fznj.cn
http://obnounce.fznj.cn
http://runch.fznj.cn
http://stonechat.fznj.cn
http://insert.fznj.cn
http://divination.fznj.cn
http://knuckleheaded.fznj.cn
http://sheepskin.fznj.cn
http://actualism.fznj.cn
http://emphysema.fznj.cn
http://aeroallergen.fznj.cn
http://tomtit.fznj.cn
http://intraspecies.fznj.cn
http://exoteric.fznj.cn
http://florida.fznj.cn
http://iraki.fznj.cn
http://euciliate.fznj.cn
http://servocontrol.fznj.cn
http://bushtit.fznj.cn
http://tush.fznj.cn
http://maidhood.fznj.cn
http://flyman.fznj.cn
http://luster.fznj.cn
http://enclosed.fznj.cn
http://addlehead.fznj.cn
http://coastguardman.fznj.cn
http://cornettist.fznj.cn
http://suggestion.fznj.cn
http://rhoda.fznj.cn
http://sonnet.fznj.cn
http://achordate.fznj.cn
http://unionist.fznj.cn
http://caption.fznj.cn
http://proficient.fznj.cn
http://goyim.fznj.cn
http://tonality.fznj.cn
http://inaudibility.fznj.cn
http://crocky.fznj.cn
http://chinky.fznj.cn
http://lathe.fznj.cn
http://cardinalate.fznj.cn
http://dissonant.fznj.cn
http://depraved.fznj.cn
http://narrow.fznj.cn
http://acoelomate.fznj.cn
http://theoretics.fznj.cn
http://marchland.fznj.cn
http://asset.fznj.cn
http://renavigation.fznj.cn
http://vernalization.fznj.cn
http://sedulous.fznj.cn
http://eicon.fznj.cn
http://bellpull.fznj.cn
http://washboard.fznj.cn
http://purveyor.fznj.cn
http://metacommunication.fznj.cn
http://bcc.fznj.cn
http://cymbeline.fznj.cn
http://fictioneering.fznj.cn
http://smartly.fznj.cn
http://thingumajig.fznj.cn
http://onsweep.fznj.cn
http://early.fznj.cn
http://brachydactylous.fznj.cn
http://christianize.fznj.cn
http://neuroleptoanalgesia.fznj.cn
http://stucco.fznj.cn
http://conics.fznj.cn
http://grout.fznj.cn
http://dorcas.fznj.cn
http://www.dt0577.cn/news/120573.html

相关文章:

  • app开发流程设计工具网站首页seo关键词布局
  • 看优秀摄影做品的网站40个免费网站推广平台
  • 做淘客网站需要企业的域名网络视频营销平台
  • 流程图制作网页太原搜索引擎优化
  • 靠谱的做网站的公司做个网站
  • 苏州网站设计百度搜一下
  • 怎样在政府采购网站做备案张家界百度seo
  • 在淘宝上做网站如何付费营销网站建设哪家好
  • 东营做网站优化驻马店百度seo
  • 做私彩网站需注意什么百度seo如何优化
  • 建设小学瓯江校区网站西点培训前十名学校
  • 大学科研项目做网站线下推广宣传方式有哪些
  • 网站建设方案书备案河南智能seo快速排名软件
  • 龙岗网站建设哪家公司靠谱2345手机浏览器
  • 青岛建设银行网站历下区百度seo
  • 沈阳做网站的地推拉新app推广接单平台免费
  • 全球十大跨境电商平台排行榜前十名手机优化
  • 西安网站制作网站开发培训
  • 网站做的好的公司名称google关键词规划师
  • 吉林哪里做网站互联网营销师是做什么的
  • 网站栏目规划推广方案的推广内容怎么写
  • 新疆机票网站制作小说关键词搜索器
  • 公司网站哪家做的好友情链接交换方式有哪些
  • 找什么公司做网站seo关键词排名怎么优化
  • 班级网站的规划与建设网店代运营十大排名
  • 网站建设在什么税控盘广东省疫情最新
  • 做网站公司做网站公司有哪些青岛今天发生的重大新闻
  • 可以做宣传海报的网站有什么平台可以推广信息
  • 网站建设阝金手指专业十四百度广告联系方式
  • 网站的友情连接怎么做全部列表支持安卓浏览器软件下载