Scratch(スクラッチ)

【スクラッチゲームの作り方】はじめての当たり判定を使ったゲームの作り方

このシリーズでは、Scratchではじめてゲームをつくりはじめた方向けに、ゲームをつくるときに便利な機能について解説していきます。

今回は、当たり判定の使い方です。

当たり判定は、自分と敵が触れた時にライフ(残り機体数)を減らすなど、ゲームの中で何かと何かが触れたことをとらえて、続きの処理を実行することをいいます。

ゲームを作るときによく使う機能でなので、ここで身につけておきましょう!

目次

当たり判定がどんなものか実験で確かめてみましょう

まず、スクラッチで新しいプロジェクトをつくって、何か一つスプライトを追加して、ネコから少しはなしておいておきましょう。

下の図では、ボールを追加しています。

次に、コードタブの「調べる」カテゴリから、「マウスのポインターに触れた」というブロックを出してください。

「マウスのポインター」になっていたところを、自分が選んだスプライトの名前に変更し、このブロックをクリックしてみましょう。

すると、ブロックの下に「false」という文字が表示されると思います。「false」は、この調べるブロックの条件が満たされていないという意味です。

上の例でいうと、「ネコがボールに触れた」という条件が満たされていない、つまり、「ネコとボールが触れていない」という意味です。

今度は、ボールを、ネコと触れている場所まで移動させ、もう一度ブロックをクリックしてみましょう。

すると、ブロックの下に「true」という文字が表示されると思います。

「true」は、この調べるブロックの条件が満たされているという意味です。

上の例でいうと、「ネコがボールに触れた」という条件が満たされている、つまり、「ネコとボールが触れている」という意味です。

当たり判定を使って、ネコを鳴かせてみよう!

この性質を使うと、例えば下の画像のように、ネコがニャーとなくプログラムを作ることができます。

「もし〜なら」でかこまれたプログラム(上の例では「終わるまでニャーの音を鳴らす)は、「もし〜なら」の条件が「true」のとき(上の例では「Ballに触れた」という条件が満たされている時)に動きます。

逆に「false」のときは、「もし〜なら」でかこまれたプログラムは動きません。

上の例では、ネコとボールが触れているときはニャーの音がなりますが、はなれているときは鳴りません。

シューティングゲームで当たり判定を使う

実際のゲームで、当たり判定がどんなふうに使われるのが見てみましょう。

まずは、シューティングゲームです。

シューティングゲーム

シューティングゲームで、「自分の飛行機と敵の飛行機が当たったら、ゲームオーバーにしたい」ときに、当たり判定を使うことができます。

下の図のように、自分の飛行機(Rocketship)のコードタブ中に、「もしPlanet2(敵キャラ)に触れたなら」というプログラムを作り、その中にゲームオーバーをスタートさせるメッセージを入れます。

すると、自分の飛行機と敵キャラがぶつかった瞬間に、ゲームオーバーの処理が実行されます。

くわしい作り方は、下の記事を確認してみてください。

ピンポンゲームでボールを打ち返す

次に、ピンポンゲームでボールを打ち返すときの当たり判定を見てみましょう。

ピンポンゲームは、画面の下にボールが落ちないように、パドルを動かしてボールを打ち返すゲームです。

ピンポンゲーム

ボールを打ち返すという動きを分解すると、ボールとボールを打ち返すパドルが触れたら、ボールが進む方向を変えるとなります。

この動きは、下のようなプログラムで実現されています。

ピンポンゲームの詳しい作り方は、以下の記事をご覧ください。

ゲーム制作やプログラミングをさらに学びたい方へ!

本ブログでは、Scratchを使ったゲーム制作の基本について解説していますので、ぜひご覧ください!

「お家でやったけれども、うまくいかなかった」「さらに高度なことをやってみたい!」という方へ

最近は、プログラミングを学習するためのアプリや本、無料のプラットフォームも増えてきて、子どもがプログラミングを学習する機会や環境も整ってきました。

しかし、保護者の方とお話ししていると

  • あきてしまって、長続きしなかった
  • 本やアプリで自習してみたけど、うまくいかなかった
  • 保護者の方がプログラミングの経験がなく、子どもに教えるのが難しい

といったお話をよくうかがうことも多いです。

そんな方は、一度当ブログを運営するプログラミング教室MYLABのレッスンを体験してみませんか?

MYLABのレッスンの特徴は以下のような特徴があります。

  • お子さまが楽しくプログラミングを続けることができるカリキュラム
  • 一人ひとりの「創りたい!」にこたえられる知識を持ち、成長をサポートできるメンター陣
  • 初学者だけでなく、ロボコンにチャレンジしたり、本格的な3Dゲームをつくったりする上級コースまで継続できる

「本当に楽しめるのかな?」「うちの子に合うかしら?」「飽きっぽいうちの子が続けられるかしら?」と思う方もいるかもしれません。

そんな方は、ぜひ一度無料で開催している体験レッスンに来て、実際に体験してみてください!

ゲーム・プログラミング体験(70分)

  • どんなゲームをつくることができるのか、まずは遊んでみる
  • ミッションをクリアするためのアイデアを考える
  • コーチのサポートを受けながら、自分のアイデアを実現する!

体験会では、お子さまが集中してプログラミングしたり、作品を作ったりしている普段とは違う姿をみられるはずです!

ご興味をもっていただいた方は、ぜひ下のボタンからお申し込みください!

オンラインまたはMYLAB中目黒校での
体験授業お申込みはこちら

小学生の習い事に
MYLAB(マイラボ)のプログラミング教室&ロボット教室!

東京中目黒にあるMYLABでは、マサチューセッツ工科大学(MIT)メディアラボの教授であるミッチェル・レズニック氏が提唱する「創造的な学び」という学習理論をベースにカリキュラムを作っています。

お子さまが熱中できる問いを中心にレッスンが進行し、試行錯誤しながらミッションクリアを目指していきます。理科のように実験を行いながら“プログラミングとはどういう役割なのか?”がスムーズに理解でき、継続することで“自分で確かめる習慣”が身につきます。

またMYLABでは、世界最大級のロボコン「FIRST LEGO League」へチャレンジするカリキュラム(教室受講のみ)を通して、お子さまたちが世界にチャレンジする機会もご提供しています。

教室受講

短期集中講座

Minecraft動画クリエイター講座

通年コース

  • ロボット・プログラミング コース
  • ゲーム・プログラミング コース
  • エレメンタリーコース
  • FIRST®LEGO®League(ロボコン)チャレンジコース
  • Unityコース

オンライン受講

通年コース

  • ゲーム・プログラミング(Scratch)コース
  • 3Dゲームプログラミング(Unity)コース

無料の体験授業について

MYLABでは体験授業として、ロボット・プログラミング体験とオリジナルゲーム制作体験をご用意しています。複雑で難しいように思うかもしれませんが、少しのサポートでほとんどのお子さまが仕組みを理解し、ゴールに向けて取り組めるようになります。ゴールを導き出すまでの過程は子供によってそれぞれで、講師陣は子供たちの考えや作品を受け止め、よいところを認めながらレッスンを進めていきます。

この体験授業では、お子さまが成長できるイメージを持っていただけるかと思いますので、興味がある方はお気軽にお申し込みください。

ロボット・プログラミング教室のMYLAB(マイラボ)
教室受講・オンライン受講のコース詳細

教室受講 コース一覧

短期集中講座

Minecraft動画クリエイター講座 Minecraftチームビルディグ講座
対象 小学3年生~小学6年生 小学3年生~小学6年生
レッスン時間 4ヶ月間の短期集中講座。
90分/回
4ヶ月間の短期集中講座。
90分/回
受講料(税込) 17,600円/月 17,600円/月
学習内容 Minecraft(マイクラ)の実況動画制作 人と協力するヒューマンスキルの養成
使用ツール Minecraft Java Edition
備考

※入会金・設備利用料等はございません。

※Minecraft Java版のライセンスをお持ちでない方は、ご購入いただきます。

詳細 詳細はこちら 詳細はこちら

通年コース

エレメンタリーコース ロボット・プログラミング コース
対象 未就学~小学1年生 小学2年生~小学6年生
レッスン時間 90分/回 90分/回
受講料(税込) 18,150円/月 24,200円/月
学習内容 ブロック等を使った科学工作、
タブレットでプログラミング
ロボット・プログラミング
使用ツール Gigoブロック、Scratch Jr. レゴ©マインドストーム©EV3
備考

※上記に加え、入会金24,200円(税込、入会時のみ)と教室維持費3,630円/月を別途頂戴いたします。

詳細 詳細はこちら 詳細はこちら
ゲーム・プログラミング コース 3Dゲーム・プログラミング(Unity)コース
対象 小学2年生~小学6年生 小学5年生~高校1年生
レッスン時間 90分/回 90分/回
受講料(税込) 24,200円/月 30,250円/月
学習内容 ゲーム・プログラミング、
アニメーション作成
Unityによる2D・3Dゲームの開発
使用ツール Scratch Unity
備考

※上記に加え、入会金24,200円(税込、入会時のみ)と教室維持費3,630円/月を別途頂戴いたします。

詳細 詳細はこちら 詳細はこちら
FIRST®LEGO®League(ロボコン)チャレンジコース
対象 小学4年生~高校1年生
レッスン時間 90分/回
受講料(税込) 24,200円/月
学習内容 ロボット・プログラミング、
コラボレーション、
課題解決、
プレゼンテーション
使用ツール SPIKE™ プライム
備考

※上記に加え、入会金24,200円(税込、入会時のみ)と教室維持費3,630円/月を別途頂戴いたします。

※別途大会参加費([参考]2022-2023シーズンは41,800円 (税込))をチームの参加人数に応じてご負担いただきます。

詳細 詳細はこちら

オンライン受講 コース一覧

通年コース

ゲーム・プログラミング(Scratch)コース 3Dゲームプログラミング(Unity)コース
対象 小学2年生~中学3年生 小学5年生~高校3年生
レッスン時間 60分/回 90分/回
受講料(税込) 17,820円/月 24,200円/月
学習内容 ゲーム・プログラミング Unityを使ったゲーム・プログラミング
使用ツール Scratch Unity
備考

※オンラインコースは、入会金・教室維持費はございません。

詳細 詳細はこちら 詳細はこちら

ロボット・プログラミング教室のMYLAB(マイラボ)
入会までの流れ

体験会

体験会

  1. フォームより体験会のお申し込みをお願い致します。
  2. 教室よりお電話差し上げて、体験会の日程を決定致します。
  3. 体験会にご参加ください。

体験会は、下記の2つから選択が可能です。

  1. オンラインでのプログラミング授業(スクラッチ)のみ
  2. 教室でのプログラミング授業(スクラッチ)と、
    EV3を活用したロボットプログラミングの両方を体験出来る体験会があります。

どちらも無料となっておりますので、ぜひ、ご気軽にご参加ください。

ご面談

ご面談

体験会に参加いただいた上で、保護者様とお子さまとご面談をさせていただきます。
お子さまの現在の状況や性格などお話を聞かせていただきながら、ご家庭で考えていらっしゃる教育方針も含めて、大事なお子さまの将来のために、どのようにMYLABをご利用いただくと効果的か?
話し合いをさせていただき、入会に関するご判断をしていただきます。

ご契約

ご契約

入会に関する正式なご希望をいただきましたら、入会に向けた契約手続きをしていただきます。
MYLABの規約・契約事項・注意点をお伝えしながら、入会手続きのご契約をしていただきます。
お申し込みは、教室に来ることなくオンライン上のみでの契約手続きが可能です。

入会

入会

MYLABのカリキュラムがスタートします!
MYLABを通じて、お子さまが楽しくプログラミングを学びながら、創造性と自主性を育くんで成長していく様子を、見守ってください。
MYLABでは、子どもたちの成長の様子を保護者様にブログやSNSを通して積極的に共有させていただきます。

ぜひ、MYLABのロボット・プログラミング教室を楽しみにしていてください。

東京でロボット・プログラミング教室をお探しなら
オンライン対応のMYLAB

屋号 MYLAB(マイラボ)
運営会社 株式会社明光ネットワークジャパン(東証プライム 4668)
スクールマネージャー 楠田 健介・出射 寛人
教室住所 〒153-0051 東京都目黒区上目黒3丁目6−18 Tyビル 6階
教室電話番号 03-3760-5252
メールアドレス info@my-laboratory.jp
URL https://my-laboratory.jp/

ABOUT ME
柿沼 功
MYLAB事業責任者。経営学修士(MBA)。株式会社明光ネットワークジャパンにて、明光義塾のeラーニングシステム開発・運用の責任者をつとめ、2020年2月よりMYLAB事業に従事。
Home > 最新のお知らせ > コラム > Scratch(スクラッチ) > 【スクラッチゲームの作り方】はじめての当たり判定を使ったゲームの作り方