2016-12-05 6 views
0

私は、衝突が検出された後に表示するためにpygameの画像を取得しようとしています。しかし、私が抱えている問題は、IF条件が真である場合にのみイメージが表示されることです。状態が一度だけ真実なら、イメージを残すことができる方法はありますか?条件が真である場合のイメージの表示方法は?

構文/

#Game Over 
if collision == True: 
    SCREEN.blit(start_menu, (0, 0)) 
    SCREEN.blit(final_score, (800, 5)) 

注:私はすでにwhile文を持っており、ここでは、このプログラム

+1

イメージが表示されたら、別のフラグをtrueに設定して、それをチェックして次のコリジョンで表示しないのはなぜですか? –

+0

私はそれを試みましたが、衝突が検出されていなくてもイメージを表示するだけです。 – nipkip

+1

'if collision == Trueとimage_shown == False:画像を表示する、set image_shown = True' –

答えて

1

の下で実行されているループのための方法である:

  1. は、変数を作成します。

    GameOver = False 
    
  2. は、あなたが、これが役立った場合は、この変数

    if GameOver == True: 
        SCREEN.blit(start_menu, (0, 0)) 
        SCREEN.blit(final_score, (800, 5)) 
    

であなたのブリットを表示教えてください衝突

if collision == True: 
    GameOver = True 
  • を検出するために使用するif文を使用してください!

  • +0

    3番目のif文に等号を追加する必要があります。また、変数名にはCamelCaseではなく、小文字のみを使用する必要があります。 CamelCaseはクラス名用です。ブール値との等価性をチェックしないで 'if collision:game_over = True'を実行するのはよくあることです。 –

    +0

    ああ、私は間違いをしました!私に知らせるためのタンク! – Qwerty

    +0

    Omg、ありがとう! Yahそれは働いた:3 – nipkip

    関連する問題