Pythonが間違ったリストに追加されていますか?

チーフキーフ

私はこの問題を理解できません。クラスから継承するPlayerオブジェクトといくつかのEnemyオブジェクトがありますActorどちらPlayerEnemy持っているshoot(self)彼らは弾丸を撃つ作る方法を。この弾丸はそれぞれの発射物のリストに追加されることになっていますが、プログラムがself.projectiles.append(Projectile())敵を要求すると、プレイヤーの発射物のリストに追加されます。

私は、弾丸を撃っている唯一の俳優が敵であるプログラムを実行しましたlen(player.projectiles)、そして、それが成長するべきではないにもかかわらず、私はますます大きな値返すのを見ます。どんな助けでも大歓迎です。このブロックは、プログラムが更新されるたびに実行され、Gameオブジェクトの敵のリストを調べて、それぞれを更新します。

for enemy in self.enemies:
    enemy.update(self.player)

ここだEnemyクラスは:

class Enemy(Actor):

    def shoot(self):
        image = pygame.transform.rotate(ProjectileImage, self.angle)
        self.projectiles.append(Projectile(self.getCenter()[0] - 6, self.getCenter()[1] - 16, 12, 32, image, 5, self.angle, True))
        shootingSound.play()

    def tryToShoot(self):
        if self.attackCoolDown >= 30:
            self.attackCoolDown = 0
            self.shoot()

    def update(self, player):
        self.pointTowards(player.x, player.y)
        Actor.update(self)
        self.tryToShoot()

Actorクラスの初期化projectiles

class Actor(Entity):
    projectiles = []
プルーン

投稿されたコードはインスタンス属性ではなく、クラス属性projectilesとして表示さます。したがって、すべてが1つのリストを共有します。個別のリストを作成するには、メソッド内の属性を初期化しますActorprojectiles__init__

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

EventSourceHandlerが間違ったイベントによってトリガーされていますか?

分類Dev

間違ったスクリプトURLが要求されています

分類Dev

参照によって追加されたリストのリストにリストを追加していますか?

分類Dev

やあみんなこのコードで私が間違っているのは何ですか。13195のすべての素因数を空のリストに追加しようとしていますが、空のリストが表示されます

分類Dev

間違ったSOAPリクエストが作成されます

分類Dev

Python-スクリプトは間違ってカウントされますが、なぜですか?

分類Dev

ブートストラップグリッドが中央に配置されていませんか?私は何が間違っているのですか

分類Dev

Python heapqのソートリストが間違っていますか?

分類Dev

RailsがPolymorphic_urlとSTIを使用してネストされたリソースに間違ったパスを生成しています

分類Dev

ネストされた配列を更新していますが、間違った要素が更新されます

分類Dev

ストーリーボードで作成されたUIImageViewのフレーム値が間違っています

分類Dev

laravelリストが列の値に間違ったIDを与えています

分類Dev

Laravelフォームの送信が間違ったルートに送信されていますか?

分類Dev

パッケージリストファイルには、MySQLの間違ったバージョンがリストされています

分類Dev

PHPが間違ったMySQLホスト名に接続していますか?

分類Dev

ソートされたリンクリストの実装に関する私のロジックは間違っていますか?

分類Dev

R:リストにネストされた文字ベクトル間の(追加、減算、または置換された1つの要素の)位置によってすべての違いを見つけてカウントします

分類Dev

どこが間違っているのですか?1桁を返す前に、数値が追加された回数を印刷しようとしています

分類Dev

リクエストが間違ったエンコーディングで送信されているか、リクエストに間違って入力しました

分類Dev

AndroidDebugKeyキーストアが改ざんされたか、パスワードが間違っていました

分類Dev

グーグルリッチスニペット(レビュー)が完全に間違って表示されていますか?

分類Dev

Codewarsカタツムリテストが間違っていますか、それともコードが間違っていますか?

分類Dev

キーリスナーをJFrameに追加するのに何が間違っていますか?

分類Dev

クエリ、メッセージの順序が間違っています(製品が正常に追加されました)

分類Dev

ビューの列に間違った値が表示されています。私は何が間違っているのですか?

分類Dev

テキストが間違ったhtml要素に追加されるのはなぜですか?

分類Dev

ファイルstatus_codeから読み取られたPythonリクエストが間違っています

分類Dev

AndroidStudioが間違ったテストを実行します-ユニットテストがandroidTestパッケージから実行されています

分類Dev

間違ったonclickリスナーがトリガーされます

Related 関連記事

  1. 1

    EventSourceHandlerが間違ったイベントによってトリガーされていますか?

  2. 2

    間違ったスクリプトURLが要求されています

  3. 3

    参照によって追加されたリストのリストにリストを追加していますか?

  4. 4

    やあみんなこのコードで私が間違っているのは何ですか。13195のすべての素因数を空のリストに追加しようとしていますが、空のリストが表示されます

  5. 5

    間違ったSOAPリクエストが作成されます

  6. 6

    Python-スクリプトは間違ってカウントされますが、なぜですか?

  7. 7

    ブートストラップグリッドが中央に配置されていませんか?私は何が間違っているのですか

  8. 8

    Python heapqのソートリストが間違っていますか?

  9. 9

    RailsがPolymorphic_urlとSTIを使用してネストされたリソースに間違ったパスを生成しています

  10. 10

    ネストされた配列を更新していますが、間違った要素が更新されます

  11. 11

    ストーリーボードで作成されたUIImageViewのフレーム値が間違っています

  12. 12

    laravelリストが列の値に間違ったIDを与えています

  13. 13

    Laravelフォームの送信が間違ったルートに送信されていますか?

  14. 14

    パッケージリストファイルには、MySQLの間違ったバージョンがリストされています

  15. 15

    PHPが間違ったMySQLホスト名に接続していますか?

  16. 16

    ソートされたリンクリストの実装に関する私のロジックは間違っていますか?

  17. 17

    R:リストにネストされた文字ベクトル間の(追加、減算、または置換された1つの要素の)位置によってすべての違いを見つけてカウントします

  18. 18

    どこが間違っているのですか?1桁を返す前に、数値が追加された回数を印刷しようとしています

  19. 19

    リクエストが間違ったエンコーディングで送信されているか、リクエストに間違って入力しました

  20. 20

    AndroidDebugKeyキーストアが改ざんされたか、パスワードが間違っていました

  21. 21

    グーグルリッチスニペット(レビュー)が完全に間違って表示されていますか?

  22. 22

    Codewarsカタツムリテストが間違っていますか、それともコードが間違っていますか?

  23. 23

    キーリスナーをJFrameに追加するのに何が間違っていますか?

  24. 24

    クエリ、メッセージの順序が間違っています(製品が正常に追加されました)

  25. 25

    ビューの列に間違った値が表示されています。私は何が間違っているのですか?

  26. 26

    テキストが間違ったhtml要素に追加されるのはなぜですか?

  27. 27

    ファイルstatus_codeから読み取られたPythonリクエストが間違っています

  28. 28

    AndroidStudioが間違ったテストを実行します-ユニットテストがandroidTestパッケージから実行されています

  29. 29

    間違ったonclickリスナーがトリガーされます

ホットタグ

アーカイブ