Crossin的编程教室

标题: pygame敌机增加方向的尝试 [打印本页]

作者: Lizero    时间: 2018-11-23 15:56
标题: pygame敌机增加方向的尝试
花了4个星期左右断断续续看完基础教程,接下来可能去看看crossin先生推荐的书籍。

上一贴敌机增加了血量,越快的敌机血量越少,感觉最后效果还不错。这次尝试增加横向移动,不过感觉最后效果一般。

*******************************************************************************************************************************
#敌机类
class Enemy:
    def __init__(self):
        self.image = pygame.image.load('enemy.png').convert_alpha()
        self.x = random.uniform(0,450 - self.image.get_width())
        self.y = -self.image.get_height()
        self.speed = random.random()
        # 此处增加了个功能,敌机状态用血量衡量
        # self.state = False
        self.blood = 0

       #横向改变间隔
        self.xinterval = 0

       #横向改变的方向
        self.xdirection = (-1)**random.randint(0,3
)

    def move(self):
        if self.blood > 0:
            if self.y < 850:
                self.y += self.speed
               
#本次增加的内容
                if self.xinterval % 20 == 0:#改变方向的频率
                    if not random.randint(0,30):#二十五分之一改变方向
                        self.xdirection = (-1)**random.randint(0,3)#随机产生左中右三个方向
                    self.x += 2*random.random()*self.xdirection#改变的速度
                self.xinterval +=1


            else:
                self.blood = 0
        else:
            self.y = -100

飞机.zip

1.53 KB, 下载次数: 1

完整代码


作者: crossin先生    时间: 2018-11-24 12:11
挺好啊
作者: Lizero    时间: 2018-11-25 19:10
crossin先生 发表于 2018-11-24 12:11
挺好啊

谢谢先生




欢迎光临 Crossin的编程教室 (https://bbs.crossincode.com/) Powered by Discuz! X2.5