在Pygame中引用

时间:2017-12-16 21:28:34

标签: python pygame

使用指南帮助我制作一个pygame平台游戏,我遇到了一个编码概念,令我感到困惑,就我的代码而言。

https://youtu.be/G8pYfkIajE8?t=4m1s

在本教程中,他谈到创建一个'参考'以便该类识别已经创建的对象。

因此,一个文件中的精灵组可以在另一个文件中被识别。

在我的代码中,我需要添加一个子弹精灵,它是在' PlayerClass'中创建的。文件,进入精灵组,该组位于' base'文件。

我的子弹对象由此代码调用(来自第三个文件GameClass):

def shoot(self):
    print('Pew pew')

    bullet=Bullet.movebullet(self)

上面一行Bullet.movebullet(self)

中引用了以下代码
class Bullet(pygame.sprite.Sprite):

    def __init__(self,speed,Game):
        self.speed=speed
        self.image=pygame.Surface((10,10))
        self.rect=self.image.get_rect()

    def movebullet(self):
        self.rect.center=((self.x+self.speed),self.y)
        print('pew spew again')

精灵组在我的游戏类中定义,位于GameClass文件中。

class Game:
    def __init__(self):
        pass

    def run(self):
        sprites=pygame.sprite.Group()
        platforms=pygame.sprite.Group()
        ground=GameClass.Platform(0,700,1920,80,BLACK)
        middlewall=GameClass.Platform(500,600,30,100,BLACK)

        platforms.add(ground)
        platforms.add(middlewall)

        platforms.draw(display)

        player1=PlayerClasses.Player('Spy',1.5,5,5,200,200)
        sprites.add(player1)

        return sprites,platforms,player1

如何在项目符号文件中引用Game类中创建的组?

0 个答案:

没有答案