pygameでスプライトシートを使った見下ろし型RPGを作りたいと思っています。
たとえば、スペースバーを押して攻撃できるようにしたいと考えています。これにより、攻撃アニメーションがトリガーされ、その後通常に戻ります
リーリー上記のコードは私が持っているものです。スペースバーを 1 回押すと、アニメーションが終了して停止しますが、スペースバーを 2 回押すと、プログラムされているためループします。
アニメーションについて助けが必要です、ありがとう
この問題は、スペースが2回目に押されたときの次の呼び出しによって発生します:
リーリーこれにより、「以前」と「現在」のステータスが「攻撃」に設定されます。
その結果、animate_attach()
メソッドで状態がリセットされると、
「攻撃」ステータスのままになります:
簡単な修正方法として、ステータスがまだ設定されていない場合にのみステータスを変更するようにしてください。 リーリー
より良い修正として、状態をカプセル化する必要があります。 このようにして、プレーヤー クラスのみが独自の状態を処理できます。例: リーリー
この方法では、クラスの外部の状態を知る必要はありません:リーリー
以上がpygameアニメーションのスプライトシートの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。