python弹球游戏双球代码键盘操作_python编写弹球游戏的实现代码
弹球游戏: from tkinter import *
import time
import random
tk=Tk() #创建一个界面
tk.title("弹球游戏")
canvas=Canvas(tk,width=800,height=600,bg="skyblue",bd=0,highlightthickness = 0)
tk.resizable(0,0) #表示边框不能被拉伸
canvas.pack() #使部件放在主窗口中
tk.update() #刷新界面
class Ball: #球的类
def __init__(self,canvas,paddle,color):
self.canvas=canvas
self.paddle=paddle
self.id=canvas.create_oval(10,10,25,25,fill=color) #在画布上画出一个球
self.canvas.move(self.id,240,100) #初始球的位置
stat=[-3,-2,-1,1,2,3]
random.shuffle(stat)
self.x=stat[0]
self.y=-3
self.canvas_height=self.canvas.winfo_height() #获取画布的的高度
self.canvas_width=self.canvas.winfo_width()
self.hit_bottom=False
def hit_paddle(self, pos): #判断输赢
paddle_pos = self.canvas.coords(self.paddle.id )
if pos[2]>= paddle_pos[0] and pos[0]<= paddle_pos[2]:
if pos[3]>= paddle_pos[1] and pos[3]<= paddle_pos[3]:
return True
return False
def draw(self): #小球移动
self.canvas.move(self.id,self.x,self.y)
pos=self.canvas.coords(self.id)
if pos[1]<=0: #判断小球是否碰到边框,如果碰到回弹
self.y=3
if pos[3]>=self.canvas_height: #判断球拍是否有接到球 ,如果没接到游戏结束
self.hit_bottom=True
if self.hit_paddle(pos)==True: #判断求是否碰到了球拍,如果碰到了使小球回弹
self.y=-3
if pos[0]<=0: #来判断球拍是不是碰到了边框,,
self.x=3
if pos[2]>=self.canvas_width:
self.x=-3
class Paddle: #球拍的的类
def __init__(self,canvans,color):
self.canvas=canvas
self.id=canvas.create_rectangle(0,0,150,10,fill=color)
self.canvas.move(self.id,400,450)
self.x=0
self.canvas_width=self.canvas.winfo_width()
self.canvas.bind_all("",self.turn_left) #通过按键来使球拍移动
self.canvas.bind_all("", self.turn_right)
def turn_left(self,event): #每次按键球拍移动的距离
self.x=-5
def turn_right(self,event):
self.x=5
def draw(self): #球拍移动的方法
pos=self.canvas.coords(self.id)
self.canvas.move(self.id, self.x, 0)
if pos[0]<=0:
self.x=0
if pos[2]>=self.canvas_width:
self.x=0
paddle=Paddle(canvas,"blue")
ball=Ball(canvas,paddle,"red")
while True: #用循环 如果球怕没有接到球就推出
if ball.hit_bottom==False:
ball.draw()
paddle.draw()
else:
break
tk.update_idletasks()# 不停的刷新画布
tk.update()
time.sleep(0.01)
总结
以上所述是小编给大家介绍的python编写弹球游戏的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对聚米学院网站的支持!
python弹球游戏双球代码键盘操作_python编写弹球游戏的实现代码相关推荐
- python弹球游戏双球代码键盘操作_python运用pygame库实现双人弹球小游戏
使用python pygame库实现一个双人弹球小游戏,两人分别控制一个左右移动的挡板用来拦截小球,小球会在两板间不停弹跳,拦截失败的一方输掉游戏,规则类似于简化版的乒乓球. 因为是第一次用pygam ...
- Python获取鼠标位置,虚拟键盘操作
Python获取鼠标位置,虚拟键盘操作 PS: 也是从网上各个帖子中学习的Python,因此代码的格式以及内容有粘贴网上其他大神的代码,如有侵权请告知删除 代码转载:https://blog.csdn ...
- 弹球游戏python代码含记分模式_python编写弹球游戏的实现代码
用Blender制作一个兵乓球小游戏,要编写Python代码需要安装pygame 包没有面对困难的勇气,也就没有享受快乐的权利. python 怎么写双人弹球游戏最难过的事不是别人又得罪你了,而是你自 ...
- python弹球游戏移动球拍_python编写弹球游戏的实现代码
弹球游戏: from tkinter import * import time import random tk=Tk() #创建一个界面 tk.title("弹球游戏") can ...
- python模拟按键包_今天玩点啥:利用python之PyUserInput实现模拟鼠标键盘操作,抢红包?聊天?自动下载?...
一.PyUserInput安装 python3.5的PyMouse和PyKeyboard模块都集成到了PyUserInput模块中.在python3.5中,直接安装PyUserInput模块即可 Py ...
- python代码桌面壁纸_Python实现设置windows桌面壁纸代码
Python实现设置windows桌面壁纸代码 发布于 2015-04-07 16:59:42 | 122 次阅读 | 评论: 0 | 来源: 网友投递 Python编程语言Python 是一种面向对 ...
- python字符串加双引号是什么意思_python字符串表示什么?
原标题:python字符串表示什么? python的字符串就是表示一串字符,字符可以是中文,英文或者数字,或者混合的文本. python字符串的几种表达方式 1 使用单引号扩起来字符串 >> ...
- python两层循环 循环完整体一个_Python编写循环的两个建议 | 鹅厂实战(文末有福利)...
循环是一种常用的程序控制结构.我们常说,机器相比人类的最大优点之一,就是机器可以不眠不休的重复做某件事情,但人却不行.而**"循环"**,则是实现让机器不断重复工作的关键概念. 在 ...
- js装修计算器java代码_用js编写的简单的计算器代码程序
最近编写的一个简单的计算器代码程序,先给大家展示一下 分享代码如下 #box{width: 295px; margin: 0 auto; text-align: justify; border: 1p ...
最新文章
- 使用LoadRunner对Web Services进行调用--Add Service Call
- java 数据结构 快速入门_Java 数据结构快速入门
- SharePoint Designer 2010创建限制筛选器
- c语言斐波那契数列_神奇的数列——斐波那契数列
- 【图论】【最短路】【SPFA】香甜的黄油 Sweet Butter (luogu 1828)
- 论文浅尝 - ICLR2021 | BERTology 遇上生物学:在蛋白质语言模型中解释注意力
- VSCode自定义代码片段9——JS中的面向对象编程
- ip subnet-zero 和ip classless 的用法
- LINQ学习之旅——再次拾起
- Java中BigDecimal类型的加减乘除及大小比对
- 预处理器loader总结
- verifycode.php,php验证码|php图片验证码|php image.verifyCode.class.php
- Delphi中使用ReportMachine 6.5中汇总行不进行汇总的设置问题
- Revit二次开发记录
- 渗透测试 - KALI Linux 学习 - kali linux如何启动METASPLOIT服务
- Python中的逻辑运算符:‘and‘与‘or‘的用法
- fopen用java代码实现_C语言基础(20)-文件操作(fopen,getc,fclose)
- 【 Kotlin 脚本编程Kotlin Scripting 】Linux Shell 脚本与Kotlin Scripting
- UC搭档云计算:前景广阔
- OSChina 周一乱弹 ——老东西!爷爷我!帮你拿!