Scratchでじゃんけんゲームをつくろう!
今回は、じゃんけんゲームを作ります。
ルールは言わずもがなですね。今回作るゲームは2人対戦型です。
キー操作で選んでグー・チョキ・パーを出す自分と、ランダムに出てくるCPUのを対決。
そして、勝ち負けとあいこの表示までします。
ちなみに、3秒のカウントダウンの間に選択しないと、勝てない構造になってます。(後出し防止)
イメージはこんな感じ
https://scratch.mit.edu/projects/616635776
今回習う単元は、
- コスチュームの使い方(「コスチュームを〇〇にする」など)
- 乱数の使い方
- 変数の使い方
- 「かつ」と「=」の使い方
- 自分の選ぶグー・チョキ・パーをつくろう
- 自分のじゃんけん:キーを押したらコスチュームが変わる
- CPU:自動でランダムに出してみよう
- 勝ち負けあいこ判定をつけるため、変数をつくろう!
- 勝ち負けあいこを表示させよう
- チャレンジ
それでは、早速つくっていきましょう!
自分の選ぶグー・チョキ・パーをつくろう
新しく開いたかな?
まずは、ねこちゃんの右上のゴミ箱を押してねこちゃんを削除
ねこちゃんが消えたぜ!
そのあと、「描く」をクリック!
こんな感じに、グー・チョキ・パー、そして最初の画面の「じゃんけん」を作成。
名前もわかりやすいように変えておこう!
うん!いい感じだね。わたしは画力があんまりなので文字にしたけど、、
みんなはイケてる絵を描いてね!
では、実際にコードを組み立てるよ!
自分のじゃんけん:キーを押したらコスチュームが変わる
最初は、コスチュームを「じゃんけん」にする。
ずっと、もしキーが押されたらコスチュームを変更する。
いけたかな?
以前に、射撃(しゃげき)のゲームで、銃の移動を左右矢印キーを押したら移動するコードを組み立てたね!
もしつくっていたら、思い出してみよう!
ちなみに、わたしはこんな感じに組み立てたよ。
「1」が押されたら、グーのコスチュームにする
「2」が押されたら、チョキのコスチュームにする
「3」が押されたら、パーのコスチュームにする
こんな感じかな。
今回、1・2・3のキーを使ったけど、みんなは押しやすいキーを選んでね!
これで一回、コスチュームが変わるか確かめてみよう!
どうかな?コスチュームが変わったかな?
でも、このままだと何回でも選び放題だよね。これを改良してみるよ!
コスチュームが変わったらちょっと待って、このコスチュームの動きを止めてみよう!
ちなみに、わたしはこんな感じに組み立ててみたよ!
コスチュームを〇〇にするの下に2秒待つ+このスクリプトを止める
を加えたよ。
「このスクリプトを止める」はオレンジ色の制御の「すべて止める」をクリックすると出てくるよ!
CPU:自動でランダムに出してみよう
次は、キー操作で選んだ自分と戦うためのCPUの作成にいこう。
CPUの作成には、乱数を使ってみるよ。
補足(ほそく)乱数について
「〇〇から〇〇までの乱数」というのを入れると、ランダムにその範囲の数字が選べること。
たとえば、、1から3までの乱数というと、1、2、3のどれかになるということ。
イメージはサイコロを思い出してもらえるとOK!
サイコロは1から6までの目のうち何の目が出るか分からないよね。
そういう数字のことを乱数と言います。
金魚すくいのときに、軽く触れたかも!
では、実際にコードを組み立てるよ。まずは、ヒントから!
今回は、グー・チョキ・パー3つの乱数から1つを選ぶ。
選ばれると、それぞれのコスチュームに変える。
いけたかな?
ちなみにわたしはこんな感じに組み立てたよ。
これも同じように、コスチュームが変わったら、2秒待ってこのスクリプトを止めてみよう。
うん、いい感じだね。
ランダムにグー・チョキ・パーが出現したかな?出来たら次に進もう!
勝ち負けあいこ判定をつけるため、変数をつくろう!
勝ち負けあいこの判定をつくる方法は何通りかあるよ。
今回は、その中でも変数を使った判定の方法を作ります。
自分のじゃんけんで何を選んだかの情報をつくる
勝ち負けやあいこを判定するには、まず何を出したか?グーなのか、チョキなのか、パーなのかの情報をつくる必要があるんだ。
今回は、変数を使って情報をつくろうかと思います!
(何通りもやり方があるので、そのうちの1つを紹介します。
メッセージでも可能でっせー!別解に興味がある方はぜひ!)
自分でグー・チョキ・パーを選んだらそれぞれ変数を作って数字を変えよう
まずは変数をつくろう!
濃いオレンジ色の変数のバーから「変数をつくる」をクリック!
新しい変数の名前を入れてみよう!
これを繰り返す!
ちなみに、あと3個(CPU)もついでに作っとこう!
ちなみに、グー1、チョキ2、パー3が自分のじゃんけんの変数!
コードはこんな感じに追記するよ!
どうかな?グー、チョキ、パーのコスチュームになったらそれぞれの変数が1になったかな?
でも、このままだと2回目も3回目もずっと変数が1のままで、これだと1回しかゲームができないよ。。
だから、最初はすべての変数を0にする必要があるね!
うん!いい感じ!これで緑のはたが押されたら0に戻ったかな?
CPUのじゃんけんで何を選んだかの情報をつくる
今度はCPUバージョン。変数の名前を変えるだけでほとんど一緒なので、ちょっと作ってみて!!
ちなみに、わたしはこんな感じに組み立てたよ。
変数の名前はグー4、チョキ5、パー6の3つ。そのほかは全て同じ!
これでじゃんけんできるかな?
CPUのじゃんけんが早すぎて、キー操作で全然グーチョキパーを選べないね。
これでは楽しくないからちょっと改良しよう。
CPUに3・2・1のカウントをつけよう!
まずは、3・2・1のコスチュームを追記しよう。
こんな感じに作れたら次は、コード!
1秒待つとコスチュームを〇〇にするをはさむとOK
ちなみに、わたしはこんな感じ!
6行目から1秒待つとコスチュームを3、2、1にするを交互に入れてます。
もちろんスタートのコスチュームは「最初(じゃんけん)」
最初にカウントダウンが表示されたかな?
勝ち負けあいこを表示させよう
いよいよ、情報は変数を使って作れたので、次は勝ち負けあいこのコードだね!
これで終われるからあともう少し!
まずは、自分がグーを出したときを作ってみよう。
グー1=1かつ〇〇=1のとき、勝ちor負けorあいこ
こんな感じの実装だね!
わたしは、こんな感じに組み立てたよ。
これでグーは完成!同じようにチョキとパーについても組み立ててみよう!
こんな感じだね!これで完成!
じゃんけん出来たかな?
チャレンジ
みんなも色々とデザインを作ったり、機能を追加してみたりしてね!
Levelを5段階で分けてます。もし良かったらチャレンジしてね!
- 勝敗数のカウント(得点のコードが参考になるかも!)(Level2)
- もう一回ボタンの作成(Level3)
- 3人で戦う(Level4)