私はPython 2.7とpygameを使用して、OOPとスプライトクラスを使用して小惑星ゲームを作成しています。私は選手と小惑星を持っています。 spritecollideを使ってプレーヤーと任意の小惑星との衝突を検出すると、グループから小惑星が削除され、killを使用してプレーヤーを削除します。プレーヤーは画面から消えますが、まだ隠れています。他の小惑星が以前のどこかを通過すると、それは衝突を記録し、プレイヤーがまだそこにいるかのように消える。これは正しい動作ですか?どのようにプレイヤーを完全にゲームから取り除くのですか?それとも、ゲームフレームの外に移動するだけですか?Python OOP sprite.Sprite.killは実際にそれを削除します
-2
A
答えて
1
kill()
スプライトは、それを含むすべてのグループから削除されます。スプライトの状態については何も変わりません。このメソッドが呼び出された後、SpriteをGroupsに追加することを含め、引き続き使用することは可能です。
これは、プレイヤーを強制終了すると、すべてのスプライトグループからプレイヤーを削除するだけです。私はあなたがグループを使用してblitしたと仮定します。これは、あなたのプレイヤーがもう引かれない理由です。しかし、あなたのガメループのどこかで、特定の選手オブジェクトが小惑星と衝突していないかどうかをチェックすると、これは動作します。
どのように対処するかは、ご希望のゲームの動作によって異なります。 ゲームが終了するはずですか?その後、メインループを終了し、画面上にゲームを描きます。 プレイヤーは再生成する必要がありますか?次に、プレーヤーの位置をリセットし、プレーヤースプライトをそれぞれのグループに再度追加します。
関連する問題
- 1. Pythonはファイルを実行し、それを削除します。
- 2. Selenium(python)テキストはそれ自身で削除します
- 3. は、Androidのデバッグログは実際に実行時に削除されますか?
- 4. 選択/ドロップは実際に列を削除しませんか?
- 5. pleskのリポジトリを削除しても実際に削除されない
- 6. Django model.delete()メソッドは成功した削除を返しますが、実際には削除しません
- 7. CoreDataのSQLite - データが削除されたように見えますが、実際には、それは
- 8. 実際は、それは
- 9. それは実際に
- 10. Django:ファイルへの関連付けを削除しますが、実際にはファイルを削除しません。
- 11. OOP削除クラスのインスタンス
- 12. Settings.bundle - それを削除しますか?
- 13. Windows 7のC:/ ProgramDataからファイルを削除しても、実際にファイルは削除されませんか?
- 14. Elasticsearchインデックス(またはすべてのインデックス)を削除すると、実際のデータも削除されますか?
- 15. アンカータグを削除するには、それぞれの行を削除したい
- 16. 削除ファイルはそれを
- 17. Android sqlite deleteは実際に行を削除しない
- 18. pythonはそれを横切ってリストから要素を削除します
- 19. Googleドキュメントアプリスクリプト - 実際に空の段落を削除するには
- 20. Grid.Children.Clear()は実際にすべてのコントロールを削除しますか?
- 21. zipファイルは実際には「PHP unlink」で削除されていません。
- 22. qlayout pyqt4 pythonのアイテムを削除する際にエラーが発生しました
- 23. Pythonは重複を削除します。
- 24. ソフト削除可能な動作と実際にエンティティを削除する
- 25. SQL削除コマンドは実際にテーブルからレコードを削除していませんか?
- 26. FirefoxとChromeのNPAPIサポートが実際に削除されましたか?
- 27. JQuery Remove()は実際にグリッドから行を削除しません。
- 28. OOP - 投稿を削除する必要がありますか?
- 29. xxx.hbm.xml見つかりましたが、それは実際に
- 30. Pythonのバイナリ検索ツリーで削除を実装する際の問題
ようこそSOようこそ、最小、完全、および検証可能な例(MCVE)http://stackoverflow.com/help/mcveを示すコードを含めると、より良い回答が得られます。 – dbugger