系列文章目录
1.发射子弹
2.碰撞检测
一、发射子弹
1.1 添加发射子弹事件
Pygame的定时器使用套路非常固定:
- 定义定时器常量——eventtid
- 在初始化方法中,调用set_timer方法设置定时器事件
- 在游戏循环中,监听定时器事件
在Hero中定义fire方法
控制台输出结果:
1.2 定义子弹类
Bullet——子弹
·初始化方法
指定子弹图片
初始速度 = -2——子弹需要向上方飞行
·重写update()方法
判断是否飞出屏幕,如果是,从精灵族删除
定义子弹类
·在plane_sprites新建Bullet继承自GameSprite
·重写初始化方法,直接指定图片名称,并且设置初始速度
·重写update()方法,判断子弹飞出屏幕从精灵族删除
代码:
class Bullet(GameSprite):
"""子弹精灵"""
def __init__(self):
# 调用父类方法,设置子弹图片,设置初始速度
super().__init__("./images/bullet.png", -2)
def update(self):
# 调用父类方法,让子弹沿垂直方向飞行
supe