Python013__pygame飞机大战

飞机大战

小编刚刚写完飞机大战,哈哈哈,代码量大概是200行,怎么说也是一个小项目,当然了,项目可没那么容易做出来,为什么才200行代码呢,当然是应用的第三方的插件功能多一些了,说几个功能吧,希望你们在做这个项目之前能有一点了解,或者是体会一下pygame的强大功能

介绍几个功能

  • pygame.Rect(x, y, 宽,高)
    rect 表示一个矩形,这个功能主要记录一些数据

  • sdreen = pygame.display.set_mode(宽,高)
    这个是建立一个游戏界面,参数可以写一个 rect

  • pygame.image.load(图片地址)
    向内存中加载一张图片

  • image.get_rect()
    获得图片的矩形数据 x ,y 默认是0

  • pygame.display.update()
    更新当前窗口的所有图片位置

  • screen.blit(gb, (0, 0))
    向一张图片中绘制一张图片

  • pygame.time.set_timeer(事件,毫秒)
    多少毫秒之后就会调用这个方法

  • clock = pygema.time.Clock()
    定义一个侦测器配合 clock.tick(60) 一块使用表示一秒侦测60次

  • pygame.sprite.Group(精灵)
    定义一个精灵组

  • 类(pygame.sprite.Sprite)
    继承之后就是一个精灵类,精灵类需要两个方法

def __init__(self, image_name, speed=1):
	super().__init()   # 完成父类的初始化
	
	self.image = pygema.image.load(image_name)
	self.rect = self.image.get_rect()
	self.speed = speed
def update(self):
	self.rect.y += self.speed
  • rect.bottom
    获得图片底部 y 的值数据

  • rect.centerx
    获取图片中心 x 的值

  • groups.update()
    调用精灵组中所有对象的update方法

  • groups.draw(screen)
    把精灵组中的精灵绘制到屏幕上

  • pygame.event.get()
    获得这一事件所有的事件,返回一个列表,包括自定义的事件,donw, up, press等等

  • pygame.key.get_pressed()
    返回一个bool序列 被按下的显示True

  • pygame.sprite.groupcollide(精灵组1, 精灵组2, 1dokill, 2dokill)
    当两个精灵组碰撞在一起的时候kill 精灵对象

  • enms = pygame.sprite.spritecollide(图片对象, 精灵组, 是否kill精灵组)
    返回一个序列,当序列长度大于0 的时候表示图片对象与精灵组碰撞在了一起

猜你喜欢

转载自blog.csdn.net/weixin_40639095/article/details/84339526