タテ方向にシーンを切り替える|スクラッチでアスレチックゲームの作り方⑩

タテ方向にシーンを切り替える|スクラッチでアスレチックゲームの作り方⑩
グリフパッチ(動画)
ok-scratch(解説)

和訳解説は動画作者のグリフパッチさんご本人から許可をいただいて掲載しております。
チャンネルはYOUTUBE ( by griffpatch )からどうぞ。

天井の空白に飛び込むと、そこは新しい天上界だった!雲の上のシーンや洞穴のシーンなども創れるタテ構造化にチャレンジしよう!
スターター
プロジェクト
リミックス用プロジェクトへ
難しさ

任意)自分の作業中のスクラッチ作品URLを記録しておこう!再開するときに便利だよ。

LOADING...

※ この記録は今使ってるPCに保存されます。別のPCで作業するときは表示されません。

スクラッチに挑戦している皆さん、どうも!スクラッチコーチです。

壁ジャンプができてアクロバティックな動きが加速された。もうこうなったら天井なんて取っ払ってどこまでステージを上に続けられるようにしていこうぜ!そう、ステージのタテ構造化に挑戦するときが来たのだ!

今回の目標

  • 天井のないところで画面の端までいくと、上のシーンに切り替わる
  • 上のシーンに切り替わったときは、画面の下から少し余裕のある場所にプレイヤーをスポーンさせる

イメージしておくと分かりやすいので、まずは完成動画を見てほしい↓

これを作っていく!

ステージを拡張しよう

スプライト「ステージ」のコスを開いて、シーン1を複製しよう。

複製したコスのすべての要素を選択状態にして、上下反転ボタンを押そう。

その後に整えて、シーン1の天井部分と続く壁を整えよう。

ok-scratch ok-scratch

スクショないけど、シーン1も少し形を変えて、水色の壁を用意してある。ちょうど壁が上に続くようにX座標を合わせて描いてあるよ。イメージがつかない人は今回の目標のところに掲載した完成動画を観てみてね。

上になるシーン名は「シーン101」にしておこう。

ここは命名規則が重要になる。

  • シーン1の上はシーン101
  • シーン2の上はシーン102
  • シーン3の上はシーン103

という感じで管理していくぞ。

スプライト「プレイヤー」のシーン切り替え処理を改修する

つぎはプレイヤーだ。

定義「シーンの切り替え処理を行う」に引数を追加する

すでに作った定義を編集して、引数Yを追加しよう。

メッセージ「メインループの最終処理を行う」に追加する

すでにいくつかシーンの切り替え処理があると思うので、条件ブロックごと複製しよう。

この条件ブロックを下部に2つ用意してほしい。上シーンに上がるとき、下シーンに下るときの2つだよ。

引数の中身は下のスクショを見て注意深く値を入れてね。

ok-scratch ok-scratch

上に上がるときはシーン1に100をプラスして、シーン101へ行く。逆に下に下るときはシーン101から100を引いてシーン1へ行く、という処理になるよ。

定義「シーンの切り替え処理を行う」を改修する

今まではX座標だけだったけどY座標も渡されるケースができたから、どっち側の座標を指定すればいいのか、条件ブロックを使って調べる処理を追加する。

まずXへの処理を条件ブロックで囲おう。

条件式で引数Xが空白かどうかを調べる。空白でなければX座標に割り当てる。空白ならX座標は変更したくない。

Y座標についても同じように作っていくよ。

引数Yが空白でなければY座標にセットしよう。

埋もれの修正処理もXとYで変える

シーンを切り替えた際に埋もれを処理する定義を作ったよね。ちょっとした段差ならスムーズにシーンが切り替わるための定義だったね。

今まではX方向にしかシーンが切り替わらなかったから、埋もれを修正する定義の引数はゼロで固定だった。このゼロというのはヨコにシーンが切り替わったとき、プレイヤーの向きをゼロ度(上向き)にしてタテの段差に埋もれないようにするための数字だった。

これをY方向にも対応させるにはどうしたらいいだろうか。今度はXと逆で、タテにシーンが切り替わったとき、プレイヤーの向きを90度(横向き)にして段差に埋もれてないかをチェックしていけばOKだよ。

つまり、Xなら引数をゼロ、Yなら引数を90にするっていうことだ。

定義「シーンの切り替え処理を行う」の下の方に条件を追加する

さらに下の方にも条件ブロックを追加するよ。

条件式では引数Xが空白かどうかを調べるようにしよう。

今まで条件ブロックでは囲っていなかった定義「_埋もれを修正する」を条件ブロック内に移動してほしい。

さらに「でなければ」のところに引数を90にした定義「_埋もれを修正する」を実行するようにしてね。

これでOKなはず。

タテ方向へのシーン切り替えがスムーズにいくかテストする

よっしゃあ!ステージも夢も広がったぜ!

シーンを下にも拡張しよう

さらにシーンを増やしてみよう。

シーン101を複製する。

シーン102にするよ。

すべての要素を選択して左右反転させる。

↓こんなかんじにした。

下にも降りれるかテストする

上方向のシーン切替時は少しゆとりを設ける

上にシーンが切り替わったときにY座標でマイナス180のところにプレイヤーを表示すると、ふとしたはずみでスグにまた下のシーンに戻ってしまうことが多かったから、マイナス160くらいのところにスポーンするように調整してみた。このほうがゲームバランスがよさそう。

まとめ

なんと、シーンがタテにも広がってしまった。。。こりゃとんでもなく広大なアスレワールドを創れる予感。しかも壁ジャンプとかできちゃうし、ゲーム体験もバッチリ過ぎる。なにこれ楽しすぎん?

プレイヤーも自由自在にワールドを散策できてストレスフリー。。。っと、それだけじゃあ1回のプレイで飽きちゃうよね。

もちろん、そうは簡単にはいかないぜ。プレイヤーの行く手をさえぎる存在を用意して「チャレンジ」をつくることもゲームの面白みの1つ。

次回は当たっちゃダメな障害物を作る方法を紹介するぞ。

たとえば↓こんなマグマとかな!

うわーどんどんハイクオリティになっていくで〜。

当連載で取り上げるグリフパッチさんの動画はこちら

完成サンプルがあるよ
おつかれさま!今回のチュートリアルには完成サンプルがあるから、作ってて分からなくなったり、 動作確認をしたいときはチェックしてみてね。
ブクマよろしくお願いします! ブクマよろしくお願いします!
どんどん追記・更新していくので、ブックマークやシェアよろしくお願いします!

スクラッチゲーム攻略

スクラッチゲーム

    • 厳選されたスクラッチ人気作品リストがレビュー付きで楽しめます
      趣味に関するスクラッチ作品例
      勉強になるスクラッチ作品