スクラッチプログラミング - カードシャッフルゲームのつくりかた

ごちゃまぜになったたくさんのカードの中から、アタリをさがすゲームをつくってみましょう。「メッセージをおくってまつ」ブロックと変数(へんすう)で、カードをめくるタイミングをきめますよ。

スクラッチプログラミング - カードシャッフルゲームのつくりかた
Photo by Amanda Jones on Unsplash

サンプルさくひんであそんでみよう

今回(こんかい)しょうかいするのは、カードシャッフルゲームのつくりかたです。

シャッフルがおわったら、カードをタップ(クリック)してください。アタリのカードはどれでしょう?

(プロジェクトがひょうじされないばあいは、ScratchのPyxofyページをごらんください)

このきじをよむとわかること

  • 「メッセージをおくってまつ」ブロックのつかいかた
  • 変数(へんすう)のつかいかた

カードシャッフルゲームをつくろう

カードをごちゃまぜにシャッフルして、アタリをあてるゲームをつくってみましょう。

  1. カードをよういする
  2. カードをシャッフルする
  3. カードをめくる
  4. カードをめくれないようにする
  5. プログラムかんせい

【アタリカードのかんせいプログラム】

アタリカードの完成コード

【ハズレカードのかんせいプログラム】

ハズレカードの完成コード
アタリカードとハズレカードのスプライト

【アタリ】

アタリカードの表のコスチュームにはアタリと書いてある

【ハズレ】

ハズレカードの表のコスチュームにはハズレと書いてある

アタリカード

  • さいしょはコスチュームを「おもて」にして、アタリのカードだとわかるようにする
アタリと書いてあるコスチュームを表示する
  • 2びょうごに、「うら」のコスチュームにかえる
表のコスチュームを2秒表示した後裏のコスチュームにする

ハズレカード

  • ハズレのカードは、さいしょから「うら」のコスチュームにしておく
ハズレカードを裏のコスチュームで表示する

カードをごちゃまぜにうごかします(シャッフルする)。アタリカードをプログラミングしていきますよ。

メッセージをおくってまつ

アタリカードをうらがえしてから2びょうごに、シャッフルをはじめましょう。うごきだす合図(あいず)につかうのは、メッセージです。

  • (2)びょうまつ
  • (シャッフル)をおくってまつ
カードを裏返してから2秒後にメッセージを送って待つ

メッセージをうけとったとき

メッセージをうけとったとき、シャッフルをはじめます。

ステージの中をアチコチうごくように、「(0.5)びょうでどこかのばしょへいく」をくりかえしましょう。

カードをアチコチに動かすコード

カードがかさならないようにしよう

シャッフルがおわってカードがとまったときに、下のようにかさなってしまうことがあります。これだと、カードをえらびにくくなってしまいますね。

2枚のカードが重なって表示されている

シャッフルがおわったときにカードがかさなっていたら、かさならなくなるまで「0.5びょうでどこかのばしょへいく」をくりかえすようにします。かさなっているかどうかは、「カードのいろにふれた」かどうかでチェックしますよ。

カードにふれたかどうかをチェックするコード

ステージからはみ出さないようにしよう

シャッフルがおわったとき、下のようにカードがステージからはみ出してしまうこともあります。

カードがステージからはみ出して表示されている

このようなときも、「0.5びょうでどこかのばしょへいく」をくりかえすようにしましょう。はみ出しているかどうかは、「はしにふれた」かどうかでチェックしますよ。

かつ」ブロックをつかって、カードのいろにふれたかどうかをチェックするブロックとくみあわせてください。

カードとステージの端にふれたかどうかをチェックするコード

ブロックをコピーしよう

メッセージをうけとったとき、ハズレカードもおなじようにうごかします。「シャッフルをうけとったとき」のブロックを、ハズレカードにコピーしましょう。

  • ブロックをドラッグして、「ハズレ」の上でドロップする
シャッフルをうけとったときブロックを押さえてドラッグする

メッセージをうけとったとき、2まいのカードがシャッフルされるようになりました!

2枚のカードがシャッフルされた画像

カードをタップ(クリック)して、えらんだカードが「アタリ」か「ハズレ」かをわかるようにしましょう。

コスチュームをかえよう

アタリカードにブロックを追加(ついか)していきますよ。

  • タップ(クリック)されたら、「おもて」のコスチュームにかえる
スプライトが押された時にコスチュームを変えるコード

カードをタップ(クリック)すると、コスチュームがかわるようになりました!

スプライトをクリックしてコスチュームが変わった画像

でもこれだと、シャッフルされているとちゅうでも、カードをタップ(クリック)できてしまいます。

うごいているとちゅうでアタリがわかってしまったら、ゲームになりませんね。

シャッフルしているあいだは、カードをタップ(クリック)してもコスチュームがかわらないようにしましょう。

へんすうをつくろう

カードをめくるタイミングをきめるのは、変数(へんすう)です。

  • めくる」というなまえの変数(へんすう)をつくる
  • さいしょは、「めくるを(バツ)にする」
変数をつくって初期化する

変数(へんすう)の値(あたい)によって、カードをめくれるかめくれないかをきめます。

  • 「めくる」がバツのとき…カードをめくれない
  • 「めくる」がマルのとき…カードをめくれる

とまったら、めくれるようにしよう

シャッフルをおくってまつ」ブロックは、すべてのカードのうごきがおわるのをまちます。カードがぜんぶとまってから、変数(へんすう)の値(あたい)をかえて、カードをめくれるようにしましょう。

  • 「シャッフルをおくってまつ」の下に、「めくるを(マル)にする」をつなげる
カードをめくれるように変数の値を変える

カードをタップ(クリック)したときに、変数(へんすう)の値(あたい)をチェックするようにします。

  • もし、めくるがマルなら、コスチュームをおもてにする
スプライトが押されたときに変数の値を確認するコード

シャッフルしているあいだは、カードをタップ(クリック)してもコスチュームがかわらないようになりました!

ブロックをコピーしよう

ハズレカードも、タップ(クリック)してめくれるようにしましょう。「このスプライトがおされたとき」のブロックを、ハズレカードにコピーしてください。

  • ブロックをドラッグして、「ハズレ」の上でドロップする
このスプライトがおされたときブロックを押さえてドラッグする

カードシャッフルゲームができました!

ハズレのカードをふくせいすれば、もっとたくさんのカードであそぶことができますよ。ぜひつくってみてください!

カードシャッフルゲームの完成プログラム

まとめ

今回(こんかい)は、シャッフルされたカードの中からアタリをあてるゲームのつくりかたをしょうかいしました。

「メッセージをおくってまつ」と変数(へんすう)をつかって、カードをめくるタイミングをきめることができましたね。

次回(じかい)は、車をはしらせるドライブゲームをしょうかいします。

\この記事が参考になったら おねがいします/

Start Here - Scratch (スクラッチ)
Scratch (スクラッチ)記事(きじ)のレベル別一覧です。初級、中級、上級、拡張機能にわけてまとめました。
Scratch Programming ebook for Beginners - 入門
スクラッチ初心者の方へ向けた内容を ebook にまとめました。スクラッチの基本から簡単なスクリプト(プログラム)の作り方まで、全108ページ。ぜひダウンロードしてご活用ください。