"""二维码的梦.py操作一个二维码图片闯关找到扫描枪的小游戏。
"""
from square import *def init_audio():fail_sound , success_sound = None,Nonetry:import pygamepygame.mixer.init()except:print("pygame初始化不成功,请用pip install pygame --user重新安装pygame")if "pygame" in dir():   #如果 pygame标识符在全局名字空间列表中try:pygame.mixer.music.load("audios/TheAvengers.wav")pygame.mixer.music.play(-1,0)except:print("背景音乐播放不成功!")try:fail_sound = pygame.mixer.Sound("audios/Fail.wav")except:print("加载失败音效不成功!请检测aiduos/Fail.wav是否存在.")try:success_sound = pygame.mixer.Sound("audios/success.wav")except:print("加载成功音效不成功!请检测audios/success.wav是否存在.")return fail_sound,success_sounddef init_screen():"""初始化屏幕"""screen = Screen()              #新建屏幕对象screen.delay(0)                #延时screen.setup(500,500)          #屏幕大小screen.title(game_name)        #标题screen.addshape(qrcode_image)  #增加二维码图像,这里引用的是全局变量screen.addshape(gun_image)     #扫描枪gif图screen.addshape(cry_image)     #哭脸gif图screen.bgpic(cover_image)      #封面png图return screendef produce_scanner():"""产生scanner对象"""scanner = Turtle(visible = False)scanner.shape(gun_image)      #形状为扫描枪scanner.penup()               #抬笔scanner.goto(0,150)           #坐标定位return scannerdef scanner_alt_status():"""每隔10秒秒通二维码的关卡设定隐藏/显示状态""" passdef check_condition():"""到第四关时如果二维码和扫描枪距离小于30并且是可见的,那么表示闯关成功"""condition = qrcode.distance(scanner)<30 and scanner.isvisible() if condition == True :         #碰到了扫码枪则隐藏try:success_sound.play()except:passscanner.hideturtle()qrcode.hideturtle()qrcode.dead = Truescreen.clear()screen.bgpic("images/二维码.png")screen.title("请帮忙实现二维码的梦,拿出手机扫一扫!")return"如果qrcode闯入禁区,那么显示哭脸"if qrcode.dead == True:try:fail_sound.play()except:passscreen.clear()screen.bgcolor("black")screen.title(game_name)Turtle(shape=cry_image)returnscreen.ontimer(check_condition,10)def start_game():"""生成二维码对象和扫描枪对象"""pass  if __name__ == "__main__":game_name = "二维码的梦,作者:李兴球"fail_sound,success_sound = init_audio()qrcode,scanner = None,Noneqrcode_image = "images/二维码.gif"gun_image   = "images/gun.gif"cry_image = "images/哭脸.gif"cover_image = "images/封面.png"    bglist = ['images/level1.png','images/level2.png','images/level3.png','images/level4.png']bump_area_condition = []                           #禁区的x和y坐标条件列表bump_area_condition.append("y >50 or y < -50 or x < - 200")bump_area_condition.append("y >50 or x >50 or  ( x<-50 and y<-50) ")bump_area_condition.append(" (x<-50 and y>50) or x > 50 or y <-50")bump_area_condition.append("y < -50 or x < -50 or y >200 or (x>50 and y>50)")backlist = ["False","x<-250","y>250","x>250"]      #第一关无法回到上一关,所以第一个值为Falseforwardlist = ["x>250","y<-250","x<-250","False"]  #最后一关到底了,所以最后的值为Falsescreen = init_screen()screen.onkeypress(start_game,"Return")screen.listen()screen.mainloop()

python创意迷宫游戏二维码的梦相关推荐

  1. python qrcode库生成二维码的代码

    如下内容内容是关于python qrcode库生成二维码的内容,希望能对各位有所用. import qrcode img = qrcode.make('Some data here')高级用法impo ...

  2. Python如何生成彩色二维码和动态二维码

    Python如何生成彩色二维码和动态二维码 第一步,导入二维码图片,为黑白图片: 查看图片 第二步,生成彩色的二维码: 查看彩色背景 将图片插入二维码中,生成彩色二维码: 查看生成的二维码. 第三步, ...

  3. 用 Python 生成炫酷二维码及解析

    用 Python 生成炫酷二维码及解析 我们通过 Python 生成以及识别二维码需要用到的库为:qrcode.myqr.zxing, 安装通过 pip install qrcode/myqr/zxi ...

  4. 如何使用Python识别图片中的二维码

    如何使用Python识别图片中的二维码 二维码是一种方便快捷的信息传递方式,它们广泛应用于电子商务.广告和其他领域.在许多情况下,我们需要识别图片中的二维码,以便从中获取信息.Python是一种流行的 ...

  5. 使用Python制作酷炫二维码(myqr)

    使用Python制作酷炫二维码 本篇参考自微信公众号,二三四张图片有改博主知乎的链接哦,https://mp.weixin.qq.com/s/Fq6_KKeN5T28DbfyDsGYDw 平时你见到的 ...

  6. python制作微信个人二维码_Python实现 | 微信带参数的二维码

    微信运营越来越多了,这种带参数二维码的使用场景还挺多的,但是网上的实现大都是PHP啥的,还不想写PHP的我只好用Python实现一下了. 关于带参二维码的介绍,记得先看官网:生成带参数的二维码. 先大 ...

  7. 一行Python代码制作动态二维码

    目录 1.普通二维码 2.艺术二维码 3.动态二维码 在GitHub上发现了一个比较有意思的项目,只需要一行Python代码就可以快捷方便生成普通二维码.艺术二维码(黑白/彩色)和动态GIF二维码. ...

  8. python怎么安装myqr_python二维码操作:对QRCode和MyQR入门详解

    python是所有编程语言中模块最丰富的 生活中常见的二维码功能在使用python第三方库来生成十分容易 三个大矩形是定位图案,用于标记二维码的大小.这三个定位图案有白边,通过这三个矩形就可以标识一个 ...

  9. 教你用1行Python代码制作动态二维码

    在GitHub上发现了一个比较有意思的项目,只需要一行Python代码就可以快捷方便生成普通二维码.艺术二维码(黑白/彩色)和动态GIF二维码. GitHub网站参见:https://github.c ...

最新文章

  1. codeforces #310 div1 C
  2. 美国韩国科学家纷纷开发出电子机器人“皮肤”,据称具有比人类更好的触觉...
  3. Html做网络硬盘系统交互,教你做网络硬盘(上)
  4. CSS3 Flex布局(伸缩布局盒模型)学习
  5. Android 系统(158)---Android O、N 减少占用ROM空间或者加快安装速度
  6. Prometheus Alertmanager 报警模块
  7. 通俗易懂!视觉slam第三部分——slam数学表示
  8. 探秘ReSharper 8新功能——XAML编辑
  9. 删除或添加最大化、最小化按钮 - 回复 Tommy the CAT 的问题
  10. python 初步学习
  11. java插件已崩溃怎么处理_java.lang.IllegalArgumentException:插件已初始化
  12. 网易新闻iOS版开发使用的第三方框架和组件列表
  13. 什么快捷键切换仅计算机,什么是电脑屏幕切换快捷键
  14. matlab2017百度百科,沸石粉里的吸蓝量是什么意思
  15. 数据库系统---数据挖掘
  16. 正则表达式系列:匹配正数、负数和小数 (正负整数)
  17. 选择器的分类及其优先级
  18. 使用 NumPy 来模拟随机游走(Random Walk)
  19. 解决安装import nonebot后报错importError问题
  20. 浅谈PageRank算法

热门文章

  1. 主键约束和唯一约束的区别
  2. C语言--修改字符串方式
  3. Python爬虫入门级(二)
  4. C++丨常见的四种求最大公约数方法!赶紧收藏!
  5. 远程控制软件TeamViewer的替代解决方案——AnyDesk
  6. 考研英语面试自我介绍
  7. element-ui实现table表格的嵌套(table表格嵌套)功能实现
  8. SQL查询去除重复行
  9. Mybatis入门程序一(环境搭建,入门程序)
  10. Arduino Nano 读取ADS1100实例