完成品の確認
準備をしよう
下のURLをクリックして、スクラッチを開いてください。
https://scratch.mit.edu/projects/869293031/editor/
プログラミングする
「ケンちゃん」のプログラム(前半)
初めの設定
下のプログラムを入れて下さい。
このゲームで使う変数を初期化しておきます。
ケンちゃんは審判役で、最初は画面真ん中に表示しておきます。
セリフを言ってゲームスタート
下のプログラムを追加して下さい。
対戦シーンに移ると、奥に行ったようにしたいので、大きさを小さくして上の方にもってきます。
また背景を変えて、対戦の場面にしています。
3回じゃんけんをする
下のプログラムを追加して下さい。
具体的なじゃんけんの処理は、メッセージ「じゃんけん開始」を送った先で行います。
これは「みかた」と「てき」のスプライトで行っており、後で作ります。
手を決定したときに「ポン」と言う
下のプログラムを入れて下さい。
メッセージ「手を決定」は、後ほどスプライト「みかた」から送られます。
これが送られたら「ポン」というようにします。
プログラム確認
緑の旗を押して、動きを確認してください。以下が確認できればOKです。
- ゲームスタート後、「ケンちゃん」が画面中央でセリフを言う
- 「3回勝負だよ」の後に、少し奥の方に位置が変わり、対戦シーンになる
「ケンちゃん」のプログラムは、半分ほど完成です。
一旦ここまでにして、後ほど続きを作ります。
「みかた」のプログラム
初めの設定
下のプログラムを入れて下さい。
背景に、手が収まる場所を作っていますので、その場所にうまく位置を決めておきます。
最初と結果発表のときは隠しておきます。
じゃんけん開始時
下のプログラムを入れて下さい。
以下のようにキーで手を決められるようにします。
左:グー、上:チョキ、右:パー
スペースキーをおしたら決定されるようにして、メッセージ「手を決定」を送っています。
この後作る「てき」の方で受け取り、順に敵の手も決まるようにします。
「てき」のプログラム
初めの設定
下のプログラムを入れて下さい。
「みかた」と反対の位置にありますが、基本的に同じプログラムです。
じゃんけん開始時
下のプログラムを入れて下さい。
「みかた」の手が決まるまで、スロットのように手をずっとぐるぐる回しておきます。
「みかた」の手が決まったら、スロットの回しを遅くして、最終的にはランダムに手が決まるようにします。
プログラム確認
緑の旗を押して、動きを確認してください。以下が確認できればOKです。
- じゃんけんが始まると、左上右キーで「みかた」の手を選べる
- 「みかた」の手を決めると、「てき」の手も自動で決まる
「みかた」と「てき」のプログラムはこれで完成です。
「ケンちゃん」のプログラム(後半)
「勝ちの処理」と「負けの処理」
下のプログラムを入れて下さい。(このプログラムは定義ブロックで作ります。)
定義ブロックについては、別の記事で詳しく解説しています。
これらの処理は、このあと作る条件分岐の処理で何度も使うので、定義ブロックにしています。「勝ち」の場合、変数「勝ち」を上げて、「負け」の場合、変数「負け」を上げています。
じゃんけんの勝敗判定
ここで作るプログラムは少しややこしいので、まずは整理しましょう。
じゃんけんの勝ち負けのパターンは、下の図のようになります。
味方の手が3パターン(グー・チョキ・パー)です。敵の出す手も同じように、それぞれ3パターンあるので、3×3=9で全部で9パターンあります。
上記を参考に、下のプログラムを入れて下さい。こちらも定義ブロックとして作ります(長いのでスクショを分けていますが、1つのものと思ってください)
勝ちの場合は、さきほど作った「勝ちの処理」、負けの場合は、「負けの処理」、あいこの場合は、単純に「あいこ」と言わせるだけです。
「〇のコスチューム#」というブロックを使うと、あるスプライトのコスチュームのデータを取ってくることができます。
この定義ブロックを、最初の方で作ったプログラムの「3回繰り返す」の中に追加します。
ゲームの勝敗判定(ゲーム全体の勝敗)
下のプログラムを、追加してください。
「勝ち」(回)が「負け」(回)よりも多ければ、「勝ち」(ゲーム全体)、逆なら「負け」(ゲーム全体)にしています。
結果発表のセリフ
下のプログラムを、追加してください。
「ケンちゃん」を再度画面真ん中に戻して、結果発表のセリフを言わせています。
「〇と〇」ブロックで文字をつなげています。
プログラム確認
緑の旗を押して、動きを確認してください。以下が確認できればOKです。
- じゃんけんをした後、1回ごとに勝敗を判定してくれる
- 3回終わった時に、ゲーム全体の勝敗を判定してくれる
「ケンちゃん」のプログラムはこれで完成です。
おめでとうございます。これでこのゲームは完成です。
すべてのプログラム(完成コード)
今回は、上級の第4回ということで、「じゃんけんゲーム」を紹介しました。次回もお楽しみに♪