🔍この記事では、Scratch迷路ゲーム 「Escape the MAZE3」 を作りながら、
制作方法を解説しています。
第2回では、以下の内容を進めていきます。
- 迷路の壁を描く方法
- プレイヤーとの当たり判定
- ゴールの作成と判定処理
✅第1回【背景の設定・スタートボタン・移動処理の実装】はこちら👇
Contents
迷路の壁を作成する
プレイヤーが端まで移動したときに画面を切り替えたり、
当たり判定を付けるために「壁」をスプライトで作成します。
① 画面いっぱいにマスを並べる
- 新しいスプライトを作成
- 1マス 60×60 の正方形を描く
- コピー&貼り付けで縦一列に並べる
※マス同士が重ならないように配置する
👉 画面切り替え時に壁に挟まらないようにするため - 縦1列をグループ化し、横に等間隔で並べる

② 通路を作る
- 全体を選択してグループ化を解除
- 通路作成前にコスチュームを複製
- 任意のマスを削除して通路を作る
👉 連続したマスを削除すると道になる

③ 隣接する迷路を作成「右に抜けたとき」
- 新しいコスチュームを選択
- 先ほどの右端の通路とつながるように左端のマスを削除
- 行き止まりや分岐を作って迷路感を出す

④フロア全体を作る
- 次のコスチュームに切り替えて隣接する通路を追加
- 迷路の外枠部分は残しておく
💡行き止まり部分をうまく配置すると「ダンジョン感」が出る

⑤コスチューム名を設定
⭐コスチュームは変数で管理するため「数字」で統一
例:00, 01, 02 …

壁のコードを作成する
- スタート時に変数「タテ」「ヨコ」を”0”にリセット
- ずっとコスチュームを「タテ」「ヨコ」に設定

例:
(00)からスタート → プレイヤーが右に抜ける
👉 「ヨコ」が+1 され、コスチュームが「01」に変わる
壁を立体的にしたい場合
- スプライトをコードごと複製し、上から四角形を重ねる
👉変数初期化のコードは削除して重複を防ぐ - ただしコスチュームのズレで壁に埋まることがあるため、
👉 当たり判定用と見た目用でスプライトを分けるのがおすすめ
👉迷路完成後に作成するのがおすすめ

プレイヤーが壁に当たったときの判定
「プレイヤー(仮)」のコードに以下を追加します。
- 「スプライト『壁』に触れた」を判定に利用
- 進む速さと同じだけ反対側に戻す
- 「→」「↑」「←」「↓」の処理にそれぞれ追加

🏴動作確認
💡チェックポイント
- 画面切り替え時に壁に埋まって動けなくならないか
- プレイヤーが壁に当たると動きが止まるか
ゴールを作成する
- 新しいスプライトを作成し、壁の間に収まる四角形を描く
- ゴールを置きたい場所の座標に設置
- 「○○に触れた」ブロックを利用し、
👉 プレイヤーに触れたら「ゴール」を送信 - ゴール後は変数「タテ」を変更し、再度触れないように管理

🏴動作確認
💡チェックポイント
- 指定の画面でのみゴールが表示されるか
- プレイヤーがゴールに触れたらゴール画面に切り替わるか
まとめ
今回は、以下の内容を解説しました。
- 迷路の壁を作成して通路を作る方法
- プレイヤーと壁の当たり判定
- ゴールの配置と判定処理
次回は、階段と2階部分を作成して、フロアの移動方法 を紹介します!
✅次の記事はこちら👇




コメント