首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Easy Games With Python and Pygame(三)- Pygame Event

---- 我正在参加掘金社区游戏创意投稿大赛个人赛,详情请看:游戏创意投稿大赛” 一、Pygame Event 事件既发生的某件事,在Pygame中事件有移动或者点击鼠标、按下按键、松开按键或者是经过一定的时间等...只有有按键按下或者鼠标点击都会发生事件,这个事件会存储在队列中等待处理 键盘事件 键盘事件包括KEYUP和KEYDOWN,KEYUP表示松开键盘按键,KEYDOWN表示按下键盘按键,Escape是默认的退出键...新增一个event脚本 import pygame from pygame.locals import * pygame.init() # 创建一个surface对象 surface_size =...() pygame.quit() 这段代码实现了一个外星人可以在窗口中不断的移动反弹 我们可以增加一个键盘事件处理器,当按下上方向键或者下方向键时外星人可以上下移动,也就是说需要检测KEYDOWN事件并且检测按键是上方向键还是下方向键...Q键或者ESC键退出创建的窗口,除此之外还有其他很多Event,比较常用的有除了QUIT,还有鼠标事件,可以通过pygame.event.get()获取所有的事件 QUIT KEYDOWN KEYUP

1.5K10

如何在Python 3中安装pygame并创建用于开发游戏的模板

从这里开始,我们可以通过学习如何退出游戏来完成我们的模板。 退出 要退出pygame程序,我们可以先取消初始化相关模块,然后像往常一样退出Python。...虽然用户可能知道点击游戏窗口上角的“X”,但我们可能希望让某些其他用户事件触发退出程序的请求。我们可以使用KEYDOWN事件类型和一个或多个键来完成此操作。...该KEYDOWN事件意味着用户正在按下键盘上的键。为了我们的目的,让我们说Q密钥(如“退出”)或ESC密钥可以退出程序。...() quit() 我们添加了布尔逻辑运算符,以便程序可以在用户单击游戏窗口上角的“X”时退出,或者如果用户按下了一个键,即退出键或Q键(注意这不区分大小写)。...此时,如果使用该python our_game.py命令运行程序,您将能够测试正在运行的游戏的功能,然后通过使用“X”图标退出窗口或按Q或ESC键来退出。

25.2K22
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Python | Time Marker时间标签(附详细注释)

    一、展示 按下空格键,时刻会被记录到Times.log ?...—>记录时间——>手动关闭窗口 时间显示使用的是Pygame提供的图形库 监听键盘使用的也是Pygame提供的功能 至于记录时间,仅仅是简单的文件操作 而手动关闭窗口,可以使用ESC或者点右上角的X 三...# repeating loop while True : # 监听键盘 和退出 for event in pygame.event.get(): if event.type...]: # 如果按下ESC键 screen.fill((0, 0, 100)) f.close() exit() # 获取事件 today...我一直强调一个软件的关键在于你想让它做什么,比如用文件操作可以写一个清单软件,比如Pygame是用来开发2d游戏的,但是它提供了很丰富的功能,用来监听键盘,用来做一个时钟,或者是计时器都是不错的选择。

    84410

    python小游戏设计入门5-捡金币游戏(下)

    开始界面 创建一个开始界面函数,用来显示开始界面,因为要一直停在开始界面,在showstartscreen函数里需要有一个死循环,直到按下任意按键(除了ESC键或者退出游戏)进入游戏,在while循环里一直检测按键按下...,按下后就return退出循环。...游戏暂停 添加一个游戏暂停界面,放在游戏主循环中的事件检测中,当按下s键后,游戏进入暂停界面,再按下s键回到游戏中。 ? ? ?...游戏结束 新添加一个结束界面的方法 ,在游戏主循环中进行调用,收集完所有金币就进入游戏结束画面,按下任意按键就退出程序。 ? ? ?...(): # 遍历所有事件 if event.type == pygame.QUIT: # 如果单击关闭窗口,则退出 sys.exit() elif event.type ==

    1.7K20

    PyGame:Python 游戏编程入门-1

    如果你现在运行这个程序,那么你会看到一个窗口短暂地弹出,然后在程序退出时立即消失。不要眨眼,否则您可能会错过!在下一节中,您将专注于主游戏循环,以确保您的程序仅在给出正确输入时才退出。...帧继续出现,直到满足退出游戏的某些条件。在您的设计中,有两个条件可以结束游戏循环: 玩家与障碍物相撞。(稍后您将介绍碰撞检测。) 播放器关闭窗口。...要退出循环和游戏,请设置running = False. 游戏循环从第 29 行开始。 第 31 行启动事件处理程序,遍历事件队列中当前的每个事件。...如果是,则程序通过查看event.key属性来检查按下了哪个键。如果键是Esc键,用 表示K_ESCAPE,则通过设置 退出游戏循环running = False。...当您将这些行添加到前面的代码并运行它时,您会看到一个带有空白或黑屏的窗口: 在您按下该键之前,该窗口不会消失Esc,或者QUIT通过关闭窗口来触发事件。

    2.2K40

    Python | Time Marker时间标签(附详细注释)

    easybill” ‍Python | "写了个钟"‍ 从实现角度讲,这个程序完成的功能是这样的: 启动——>显示时间——>按下空格键——>记录时间——>手动关闭窗口 时间显示使用的是Pygame提供的图形库...监听键盘使用的也是Pygame提供的功能 至于记录时间,仅仅是简单的文件操作 而手动关闭窗口,可以使用ESC或者点右上角的X 三、完整代码(附详细注释) import pygame from pygame.locals...# repeating loop while True : # 监听键盘 和退出 for event in pygame.event.get(): if event.type...]: # 如果按下ESC键 screen.fill((0, 0, 100)) f.close() exit() # 获取事件 today...我一直强调一个软件的关键在于你想让它做什么,比如用文件操作可以写一个清单软件,比如Pygame是用来开发2d游戏的,但是它提供了很丰富的功能,用来监听键盘,用来做一个时钟,或者是计时器都是不错的选择。

    49310

    从零开始学习PYTHON3讲义(十四)写一个mp3播放器

    break #有键盘抬起 elif event.type == pygame.KEYUP: #q键 if event.key...一是自己定义的,如果音乐播放结束,应当退出;二是用户用鼠标关闭窗口,程序应当退出;三是按q键表示用户希望退出播放。...按下按键游戏采取相应动作是很常见的游戏处理工作,我们在这里等待用户按下按键然后再松开的这一刻退出,这样防止用户按下q键一直没有松手所导致的程序退出后,屏幕上还会出现很多q字符的情况。...我们直接进入练习的环节: 以本讲前面最终版代码code5.py为蓝本,修改程序,实现由命令行参数接受mp3文件名,并播放 除了q键之外,请设定ESC键也作为退出按键。...提示,ESC键的代码为:pygame.K_ESCAPE ---- 本讲小结 python并不是很适合进行游戏编程,但游戏编程的学习能让你的程序更友好,并具有丰富的表现力 并行、事件驱动的编程思想,是现代程序开发的前沿思想

    1.6K40

    pygame系列_小球完全弹性碰撞游戏_源码下载

    之前做了一个基于python的tkinter的小球完全碰撞游戏: python开发_tkinter_小球完全弹性碰撞游戏_源码下载 今天利用业余时间,写了一个功能要强大一些的小球完全碰撞游戏: 游戏名称...,左键进行对小球减速   6.玩家可以按键盘:f键实现全屏显示   7.玩家可以按键盘:Esc键实现退出全屏操作   8.窗口左下角显示小球个数,右下角显示作者邮箱...:Esc键实现退出全屏操作 19 8.窗口左下角显示小球个数,右下角显示作者邮箱 20 21 ''' 22 __author__ = {'name' : 'Hongten...:Esc键实现退出全屏操作 19 8.窗口左下角显示小球个数,右下角显示作者邮箱 20 21 v1.1修改如下: 22 1.增加了背景音乐 23...:下,左键进行对小球减速 17 6.玩家可以按键盘:f键实现全屏显示 18 7.玩家可以按键盘:Esc键实现退出全屏操作 19 8.窗口左下角显示小球个数

    1.5K30

    python项目练习十:DIY街机游戏

    这个练习是一个小游戏程序,如果要是给它起个名字的话,应该叫:快躲,香蕉。...主要的游戏内容就是,游戏开始会从屏幕上方不断随便的掉一些铁块,在屏幕下方有一个小香蕉是受你控制的,你需要不断的左右移动来躲避铁块。在你躲避完一定数量的铁块之后,就会进入下一关。...在游戏中你可以按下任意键暂停,再次按则继续,按下ESC键退出。这就是全部的功能了,下面我们来看游戏的实现。 无论是在实现功能时还是在代码分析的时候,分类归纳总是一个好习惯,这里自然也不例外。...2、然后是有一个元素模块,即游戏中的两个元素落下来的铁块以及被砸的香蕉,其中还要包含他们具有的行为。...) class GameOver(Paused): nextState = Level text = ''' Game Over Click to Restart, Esc

    79030

    10分钟用Python编写一个贪吃蛇小游戏

    今天,我们用Python编程一个贪吃蛇游戏,下面我们先看看效果: ? 好了,先介绍一个思路 所有的游戏最主要的内容都是程序的内循环,这才是保证一个游戏能够正常运行的前提。...在Python编写游戏时,pygame是一个很简单上手的第三方库,可以通过pip直接安装。安装方法在之前的文章中已经讲过,就不再赘述。想要了解更多pygame功能的朋友也可以查阅官方的文档。...changeDirection = direction # 改变方向 score = 0 # 得分 2 .键盘输入判断蛇的运动 我们需要通过键盘输入的上下左右键或WASD来控制蛇类运动,同时加入按下Esc...就退出游戏的功能。...elif event.type == KEYDOWN: # 键盘输入 if event.key == K_RIGHT or event.key == ord('d'): # 方向键和

    87110

    10分钟教你用python打造贪吃蛇超详细教程

    因为我们的游戏设置是,当GameOver以后,我们可以按任意键重新开始游戏,或者退出。因此最后不断循环判断用户是否想重新开始游戏,就这样而已。...('按任意键开始游戏~~~', True, (65, 105, 225)) 5 gamestart = pygame.image.load('gamestart.png') 6 screen.blit...监听键盘 按任意键继续或者ESC退出…… 04 running_game-让我们开始游戏吧 running_game(screen, snake_speed_clock)是游戏主要功能,在这里给大家慢慢讲解...('myfont.ttf', 40) 155 tip = font.render('按任意键开始游戏~~~', True, (65, 105, 225)) 156 gamestart = pygame.image.load...tip = font.render('按Q或者ESC退出游戏, 按任意键重新开始游戏~', True, (65, 105, 225)) 174 gamestart = pygame.image.load

    2.6K20

    为了练习自己的Python基础语法,我用pygame写了一个打砖块闯关的游戏

    本文内容:为了练习自己的Python基础语法,我用pygame写了一个打砖块闯关的游戏 ---- 为了练习自己的Python基础语法,我用pygame写了一个打砖块闯关的游戏 1.事件之始 2.萌新复现经典游戏打砖块...random.randint( 100, 200), random.randint(100, 200))) beginsurf, beginrect = f1.render("键开始游戏...# 屏幕的更新 screen.fill(Black) # 小提示 tip1surf, tip1rect = f1.render("键暂停游戏...>", fgcolor=White, size=20) tip2surf, tip2rect = f1.render("ESC键退出游戏>", fgcolor=White, size...这里我就不贴代码了,更新的东西虽然不多,但是我还是试着写了更新日志: 1.1版本更新日志 更新了少量bug 提高了默认速度 增加了音效与得分系统 新增两场BOSS战 这里的BOSS战是我自己想的

    45210

    10分钟教你用Python写一个贪吃蛇小游戏,适合练手项目

    今天,我们用Python编程一个贪吃蛇游戏,下面我们先看看效果:所有的游戏最主要的内容都是程序的内循环,这才是保证一个游戏能够正常运行的前提。以下是编写贪吃蛇小游戏的主要思路。...在Python编写游戏时,pygame是一个很简单上手的第三方库,可以通过pip直接安装。安装方法在之前的文章中已经讲过,就不再赘述。想要了解更多pygame功能的朋友也可以查阅官方的文档。...方向changeDirection = direction # 改变方向score = 0 # 得分2 .键盘输入判断蛇的运动我们需要通过键盘输入的上下左右键或WASD来控制蛇类运动,同时加入按下Esc...就退出游戏的功能。...elif event.type == KEYDOWN: # 键盘输入 if event.key == K_RIGHT or event.key == ord('d'): # 方向键和AWSD

    96810

    Easy Games With Python and Pygame(一)- Pygame Quickstart

    ---- 我正在参加掘金社区游戏创意投稿大赛个人赛,详情请看:游戏创意投稿大赛” 一、Pygame Introduce Pygame is a set of Python modules designed...Pygame 是一个可以用于编写游戏的Python第三方模块,可以使用Pygame在基于Python语言的基础上开发出功能齐全的多媒体程序或者游戏。 Pygame is free....Pygame 是开源免费的,基于LGPL协议,可以使用该模块创建开源的软件或者游戏 更多关于 Pygame 的介绍可以参考 Pygame Wiki Install Pygame 安装 Pygame 推荐使用...(): # Q键、删除键、ESC键终止程序 if event.type in (QUIT, KEYDOWN, K_ESCAPE): sys.exit...# Q键、删除键、ESC键终止程序 if event.type in (QUIT, KEYDOWN, K_ESCAPE): sys.exit() cust_window.fill

    1.2K10
    领券