-1

私のゲームは弾丸を発射しますが、問題は、入力した量よりも多くの弾丸を発射できないことです (imageA、imageB、imageC など...)。そのため、「blit blah blah imageA」を約 30 回記述する必要があります。すべてのプレーヤーのすべての銃に。これはイライラするだけです。

キャラクターが撃った弾丸の数に応じてコードを生成し、それをブリットするコードを生成する方法はありますか? 新しいコードが画面から消えると、そのコードを削除できます。(画面から消えたときに削除する方法ではなく、削除する方法を知りたいだけです。それは知っています。)

4

1 に答える 1

2

あなたは間違った方法で問題に取り組んでいると思います。銃を持っているプレーヤーがいるとしましょう。したがって、プレーヤークラスは部分的に次のようになります。

class Player
    def __init__(self):
        self.position = [0,0]
        self.bullets = []

また、弾丸クラスも必要になります。これで、たとえばプレーヤーがスペースバーを押すたびに、リストに新しい箇条書きが追加されます。

def shoot(self):
    self.bullets += Bullet(self.position)

次に、プレーヤーを描画するwhileループで、弾丸も描画するためにforeachを実行する必要があります。それぞれの弾丸に名前を付ける必要はなく、独自の写真を持っていることさえあります。

于 2013-02-28T20:40:41.893 に答える