pygame.display.set_mode(x, y)设置显示窗口大小
pygame.sprite.Sprite方法中有image, rect, speed等参数
  其中image 可以通过 pygame.image.load('图片路径')进行加载,rect为记录位置信息的元组(x, y, width, hight) pygame.Rect(x, y, width, hight) # 可定义一个矩形变量,和rect一样
pygame.USEREVENT # 可自定义用户事件,常量名最好全是大写字母
pygame.time.set_timer(用户事件名, 频率) # 定义以多快的频率触发用户事件,频率为多少毫秒每次,常和pygame.USEREVENT一起使用
for event in pygame.event.get():
  if event.type == 用户事件名:
    # 捕获事件,注意一定要加type
keys_pressed = pygame.key.get_pressed()
# 判断元组中对应的按键索引值 1
if keys_pressed[pygame.K_RIGHT]:
# 捕获键盘,执行相应操作 clock = pygame.time.Clock()
clock.tick(频率) # 定义游戏循环频率,为没秒钟循环多少次 group = pygame.sprite.Group() # 设置精灵组
group.update()
group.draw(screen) # 更新显示精灵组 pygame.display.update() #更新显示屏幕
# 1. 子弹摧毁敌机,pygame自带碰撞检测
pygame.sprite.groupcollide(self.hero.bullets, self.enemy_group, True, True) # 2. 敌机撞毁英雄
enemies = pygame.sprite.spritecollide(self.hero, self.enemy_group, True) # 返回所有与英雄所碰撞的敌机列表 # 判断列表时候有内容
if len(enemies) > 0: # 让英雄牺牲
self.hero.kill() # 删除精灵 # 结束游戏
PlaneGame.__game_over()
class GameSprite(pygame.sprite.Sprite):
"""飞机大战游戏精灵""" def __init__(self, image_name, speed=1): # 调用父类的初始化方法
super().__init__() # 定义对象的属性
self.image = pygame.image.load(image_name)
self.rect = self.image.get_rect()
self.speed = speed def update(self): # 重写update方法可使精灵按照自定义的方式更新位置 # 在屏幕的垂直方向上移动
self.rect.y += self.speed
 
 

 

pygame小记的更多相关文章

  1. [原]Paste.deploy 与 WSGI, keystone 小记

    Paste.deploy 与 WSGI, keystone 小记 名词解释: Paste.deploy 是一个WSGI工具包,用于更方便的管理WSGI应用, 可以通过配置文件,将WSGI应用加载起来. ...

  2. MySql 小记

    MySql  简单 小记 以备查看 1.sql概述 1.什么是sql? 2.sql发展过程? 3.sql标准与方言的关系? 4.常用数据库? 5.MySql数据库安装? 2.关键概念 表结构----- ...

  3. pygame学习笔记

    pygame参考文档pdf版:pygame API html版 pygame API 石头剪子布的简单小游戏,待改进的地方,自适应大小.感兴趣的小伙伴可以依据get_surface()返回值(即当前窗 ...

  4. Git小记

    Git简~介 Git是一个分布式版本控制系统,其他的版本控制系统我只用过SVN,但用的时间不长.大家都知道,分布式的好处多多,而且分布式已经包含了集中式的几乎所有功能.Linus创造Git的传奇经历就 ...

  5. centos上安装pygame

    安装前依赖包检查及安装 python-devel SDL_image-devel SDL_mixer-devel SDL_ttf-devel SDL-devel numpy subversion po ...

  6. 广州PostgreSQL用户会技术交流会小记 2015-9-19

    广州PostgreSQL用户会技术交流会小记 2015-9-19 今天去了广州PostgreSQL用户会组织的技术交流会 分别有两个session 第一个讲师介绍了他公司使用PostgreSQL-X2 ...

  7. 东哥读书小记 之 《MacTalk人生元编程》

         一直以来的自我感觉:自己是个记性偏弱的人.反正从小读书就喜欢做笔记(可自己的字写得巨丑无比,尼玛不科学呀),抄书这事儿真的就常发生俺的身上. 因为那时经常要背诵课文之类,反正为了怕自己忘记, ...

  8. Paypal支付小记

    Paypal支付小记 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !impo ...

  9. pygame开发PC端微信打飞机游戏

    pygame开发PC端微信打飞机游戏 一.项目简介 1. 介绍 本项目类似曾经火爆的微信打飞机游戏.游戏将使用Python语言开发,主要用到pygame的API.游戏最终将会以python源文件gam ...

随机推荐

  1. python return 及lambda函数

    return有两个作用: 1.用来返回函数的运行结果,或者调用另外一个函数.比如max()函数 >>> def fun(a,b): #返回函数结果. return max(a,b) ...

  2. GsonFormat的使用 (转)

    一.Android Studio快速添加Gson 具体操作:        1.File->Project Structure:   2.app->Dependencies->&qu ...

  3. logic:equal 标签的使用(转)

    <logic:equal name="music" property="distrubute" value="true">    ...

  4. springboot1 缓存前端

    @Configurationpublic class WebMvcConfig extends WebMvcConfigurerAdapter { public void addResourceHan ...

  5. zabbix 短信报警

    使用的短信平台是云片网,接口请看官网短信接口API文档,有示例 进入server服务器存放脚本的文件夹,默认路径是 [root@test zabbix]# cat zabbix_server.conf ...

  6. Centos 下使用VLAN+Bridge 搭建KVM基础网络环境

    一.使用环境介绍 宿主机上同时运行多网段虚拟机,为了解决宿主机网卡资源紧张问题,采用如下网络模式:(本实验vlan 105:192.168.5.x    vlan108:192.168.8.x) 二. ...

  7. Mac上反编译Android apk安装包

    什么是反编译 我们知道,Android的程序打包后会生成一个APK文件,这个文件可以直接安装到任何Android手机上,因此,反编译就是对这个APK进行反编译.Android的反编译分成两个部分: 一 ...

  8. 【python-sql】sql操作时遇到的坑

    针对python的sql语句的封装以及调用: python的db操作类: # -*- coding: utf-8 -*- # coding=utf-8 import MySQLdb class Dat ...

  9. bug定位

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  10. linux小笔记

    1. 安装go并设置环境变量 Add /usr/local/go/bin to the PATH environment variable. You can do this by adding thi ...