Python实现弹球小游戏


Posted in Python onAugust 01, 2020

本文主要给大家分享一个实战项目,通过python代码写一款我们儿时大多数人玩过的游戏---小弹球游戏。只不过当时,我们是在游戏机上玩,现在我们通过运行代码来玩,看看大家是否有不一样的体验,是否可以重温当年的乐趣呢!

整个游戏实现比较简单,只需在安装python的电脑上即可运行,玩游戏,通过键盘键控制弹球挡板的移动即可。原理不多说,且让我们去看看吧。

1、代码运行后,游戏界面如下所示:

Python实现弹球小游戏

2、游戏过程中,界面如下所示:

Python实现弹球小游戏

3、游戏结束后,界面如下所示:

Python实现弹球小游戏

游戏实现部分源码如下:

def main():
  tk = tkinter.Tk()

  # call back for Quit
  def callback():
    if mb.askokcancel("Quit", "Do you really wish to quit?"):
      Ball.flag = False
      tk.destroy()

  tk.protocol("WM_DELETE_WINDOW", callback)

  # Init parms in Canvas
  canvas_width = 600
  canvas_hight = 500
  tk.title("小弹球游戏V1版")
  tk.resizable(0, 0)
  tk.wm_attributes("-topmost", 1)
  canvas = tkinter.Canvas(tk, width=canvas_width, height=canvas_hight, bd=0, highlightthickness=0, bg='#00ffff')
  canvas.pack()
  tk.update()

  score = Score(canvas, 'red')
  paddle = Paddle(canvas, "magenta")
  ball = Ball(canvas, paddle, score, "grey")

  game_over_text = canvas.create_text(canvas_width / 2, canvas_hight / 2, text='Game over', state='hidden',
                    fill='red', font=(None, 18, "bold"))
  introduce = '欢迎来到小弹球游戏 V1版:\n点击任意键--开始\n停止--回车键\n继续--回车键\n'
  game_start_text = canvas.create_text(canvas_width / 2, canvas_hight / 2, text=introduce, state='normal',
                     fill='magenta', font=(None, 18, "bold"))
  while True:
    if (ball.hit_bottom == False) and ball.paddle.started:
      canvas.itemconfigure(game_start_text, state='hidden')
      ball.draw()
      paddle.draw()
    if ball.hit_bottom == True:
      time.sleep(0.1)
      canvas.itemconfigure(game_over_text, state='normal')
    tk.update_idletasks()
    tk.update()
    time.sleep(0.01)


if __name__ == '__main__':
  main()

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

以上就是Python实现弹球小游戏的详细内容,更多关于Python 弹球游戏的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
使用Python编写Linux系统守护进程实例
Feb 03 Python
python简单读取大文件的方法
Jul 01 Python
在pycharm下设置自己的个性模版方法
Jul 15 Python
与Django结合利用模型对上传图片预测的实例详解
Aug 07 Python
python实现横向拼接图片
Mar 23 Python
使用pandas库对csv文件进行筛选保存
May 25 Python
基于Python编写一个计算器程序,实现简单的加减乘除和取余二元运算
Aug 05 Python
详解python实现可视化的MD5、sha256哈希加密小工具
Sep 14 Python
Python+logging输出到屏幕将log日志写入文件
Nov 11 Python
为2021年的第一场雪锦上添花:用matplotlib绘制雪花和雪景
Jan 05 Python
详解Python生成器和基于生成器的协程
Jun 03 Python
Python 中 Shutil 模块详情
Nov 11 Python
序列化Python对象的方法
Aug 01 #Python
Python 忽略文件名编码的方法
Aug 01 #Python
Python 如何展开嵌套的序列
Aug 01 #Python
Python 日期与时间转换的方法
Aug 01 #Python
Python 执行矩阵与线性代数运算
Aug 01 #Python
Python实现数字的格式化输出
Aug 01 #Python
Python实现一个简单的递归下降分析器
Aug 01 #Python
You might like
PHP基于自定义类随机生成姓名的方法示例
2017/08/05 PHP
PHP基于curl模拟post提交json数据示例
2018/06/22 PHP
PHP pthreads v3在centos7平台下的安装与配置操作方法
2020/02/21 PHP
php中使用array_filter()函数过滤数组实例讲解
2021/03/03 PHP
js实现的网站首页随机公告随机公告
2007/03/14 Javascript
Js 获取当前日期时间及其它操作实现代码
2021/03/04 Javascript
return false,对阻止事件默认动作的一些测试代码
2010/11/17 Javascript
actionscript与javascript的区别
2011/05/25 Javascript
js实现杯子倒水问题自动求解程序
2013/03/25 Javascript
jQuery把表单元素变为json对象
2013/11/06 Javascript
NodeJS制作爬虫全过程(续)
2014/12/22 NodeJs
JavaScript中的console.log()函数详细介绍
2014/12/29 Javascript
js+html5通过canvas指定开始和结束点绘制线条的方法
2015/06/05 Javascript
全面解析Bootstrap表单使用方法(表单控件状态)
2015/11/24 Javascript
JavaScript利用HTML DOM进行文档操作的方法
2016/03/28 Javascript
基于JS实现省市联动效果代码分享
2016/06/06 Javascript
Nodejs进阶之服务端字符编解码和乱码处理
2017/09/04 NodeJs
JavaScript中创建原子的方法总结
2018/08/26 Javascript
对vue中v-on绑定自定事件的实例讲解
2018/09/06 Javascript
在node中使用jwt签发与验证token的方法
2019/04/03 Javascript
layui 实现表单和文件上传一起传到后台的例子
2019/09/16 Javascript
layUI的验证码功能及校验实例
2019/10/25 Javascript
[06:04]DOTA2国际邀请赛纪录片:Just For LGD
2013/08/11 DOTA
[44:58]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第二场
2018/04/06 DOTA
python实现批量改文件名称的方法
2015/05/25 Python
Bottle框架中的装饰器类和描述符应用详解
2017/10/28 Python
Python hashlib模块的使用示例
2020/10/09 Python
python安装mysql的依赖包mysql-python操作
2021/01/01 Python
印度婴儿用品在线商店:Firstcry.com
2016/12/05 全球购物
跑步、骑行和铁人三项的高性能眼镜和服装:ROKA
2018/07/06 全球购物
如何在Oracle中查看各个表、表空间占用空间的大小
2015/10/31 面试题
个人自我鉴定写法
2013/11/30 职场文书
车队司机自我鉴定
2014/03/02 职场文书
2014年教师党员自我评议
2014/09/19 职场文书
2014年度思想工作总结
2014/11/27 职场文书
百年校庆感言
2015/08/01 职场文书