Python学习笔记46:游戏篇之外星人入侵(七)

前言

到目前为止,我们已经完成了游戏窗口的创建,飞船的加载,飞船的移动,发射子弹等功能。很高兴的说一声,基础的游戏功能已经完成一半了,再过几天我们就可以尝试驾驶 飞船击毁外星人了。当然,计分,游戏次数,背景音乐,开始启动等按钮的功能需要我们慢慢添加,这些功能不影响游戏的使用,影响的是体验,所以作为后续的迭代,这个功能大家可以看我怎么加,也可以按自己的想法去添加。

废话不多说,开始今天的学习。

加载外星人

作为游戏的重要组成元素,外星人,今天我们正式进行它的加载模块。

在最开始分析项目的时候,我们已经对外星人模块有了基础的了解,外星人的加载其实和飞船一样是图片接矩形渲染成的,所以基础模块和飞船模块是有点相似的。

我们就已经编写好了外星人模块的基础功能代码,今天继续根据功能进行填充编写的步骤。

在这里先展示一下外星人模块的基础代码:

import pygame


class Alien:
    """外星人类"""
    def __init__(self, setting, screen):
        """初始化外星人并设置其初始位置"""
        super(Alien, self).__init__()
        self.screen = screen
        self.setting = setting
        # 加载图片并外接矩形
        self.image = pygame.transform.scale(
            pygame.image.load('F:/python_project/AlienTrespass/src/main/xq/images/alien.bmp'), (50, 50))
        self.rect = self.image.get_rect()
        self.screen_rect = screen.get_rect()
    
    def move(self):
        """移动外星人"""
        pass

外星人组

外星人的数量不像飞船,同一时间窗口中只有一个。外星人是可以成堆出现的,所以外星人模块要需要继承Sprite,方便后续外星人组的操作。

修改外星人模块如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值