ゲームオーバーを実装
ゲームオーバーになる条件は
- プレイヤーが画面下端まで落ちる
 - プレイヤーがブロックに衝突する
 
だったが、このうち 1. は 2. より簡単そうなので、このタイミングで実装する
加えて、ゲームオーバー後にクリックしたらリセット → もう一度遊べるようにする
準備: setup/draw の中身を整理する
理由
- 初期化処理が 
setup()の中にあると「リセットして最初に戻る」のがやりにくい draw()の中身が増えてきたので、更新処理/描画処理 の2つに分けて整理したい- 
              
setup()/draw()は p5.js スケッチを実行するときの入り口にあたる。
入り口をシンプルに保っておくと全体の複雑化に対応できる 
やること
            以下のそれぞれについて、新たに専用の関数を用意し、
            「setup/draw 他」セクションから「ゲーム全体に関わる部分」セクションへ引っ越す
          
setup()の中の初期化処理draw()の中の更新処理draw()の中の描画処理mousePressed()の中身(マウスボタンが押されたときの処理)
まず引越し先を用意する
                    
                   | 
                  
                    
                   | 
                
引っ越す
            「setup/draw 他」セクションに書いてあった処理が、特に変更されることなく
            「ゲーム全体に関わる部分」セクションにごっそり移動している
          
                    
                   | 
                  
                    
                   | 
                
プレイ/ゲームオーバー の2状態を作って切り替える
ゲームオーバー状態がプレイ状態と異なる点
- 画面の動きが止まる
 - “GAME OVER” と表示される
 - マウスボタンを押したらリセットされる
 
やること
- プレイ/ゲームオーバー の状態を管理する変数を用意する
 - 
              ゲームのリセット処理
              
- プレイ状態で始まるようにする
 
 - 
              ゲームの更新処理
              
- ゲームオーバー状態のときは動きを止める(エンティティを更新しない)
 - プレイヤーが死んでいたらゲームオーバー状態にする
 
 - 
              ゲームの描画処理
              
- ゲームオーバー状態のときは通常の描画に加えて “GAME OVER” と表示する
 
 - 
              マウスボタンを押したときの処理
              
- プレイ状態ならジャンプ(従来どおり)
 - ゲームオーバー状態ならリセット
 
 
必要な関数が揃っている、と仮定して書いてみる
            ※ このコードは動きません(playerIsAlive() と
            drawGameoverScreen() が存在しないため)
          
                    
                   | 
                  
                    
                   | 
                
必要な関数を実装して完成
playerIsAlive() と drawGameoverScreen() を実装しただけ
                    
                   | 
                  
                    
                   | 
                
動かしてみて、
- プレイヤーが画面下端まで来たらゲームオーバーになる
 - ゲームオーバーになっているとき、マウスボタンを押すとリセットされる
 などを確認してください。