1

私はpygameが初めてで、8ビットシューターを開発しようとしています。私が欲しいのは、ユーザーがスペースを押すと、弾丸が発射され、暴徒またはウィンドウの端に当たるまで弾丸が発射されることです。弾丸クラスは次のとおりです。

class BULLET:
    def __init__(self, location):
        self.pos = [0,0]
        self.image = NOBULLET
        self.rect = self.image.get_rect()
        self.direction = 0
    def move(self):
        if self.rect.right >= screen.get_rect().right:
            self.rect.right = self.rect.right - 10
        if self.rect.left <= screen.get_rect().left:
            self.rect.right = self.rect.right + 10
        if self.rect.top <= screen.get_rect().top:
            self.rect.top = self.rect.top + 10
        if self.rect.bottom >= screen.get_rect().bottom:
                self.rect.bottom = self.rect.bottom - 10
    def update(self):
        while True:
            for event in pygame.event.get():
                if event.type == KEYDOWN:
                    if (event.key == K_SPACE and Gun.image == NOGUN):
                        self.pos == Player.pos()
                        self.direction == Player.direction

私が欲しいのは、スペースが押されたときに弾丸がプレーヤーに行き、モブまたはウィンドウの端に当たるまでプレーヤーが向いている方向に移動することです。

[編集] これは主な撮影ループです:

if AMMO > 0:
    if event.type == pygame.KEYDOWN and Gun.image == NOGUN:
        if event.key == pygame.K_SPACE and Gun.image == NOGUN:
            Bullet.direction = Player.direction
            Bullet.pos == Player.pos
            shot.play()
            print "BANG"
            AMMO = AMMO - 1
            time.sleep(0.09)
            Bullet.image == NOBULLET 
4

1 に答える 1