スクラッチに挑戦している皆さん、どうも!スクラッチコーチです。
- ① まず2Dマップを動き回れるようにしよう!
- ② さっそく3D化しちゃおうぜ!
- ③ 壁にスキマがあって敵から丸見え!?やっば
- ④ 陰影をつけて立体感マシマシにしよう
- ⑤ トゲトゲやユガミを補正してハイクオリティ3Dの一歩を踏み出そう(爆速オンライン3Dゲームの作り方 #05)
- ⑥ 壁の衝突判定の基本を作ろう
- ⑦ 壁に触れてると進めない!?移動を改善しよう
- ⑧ ついに敵が現れた!距離感の計算ってどうやる?
- ⑨ 奥行きを実装して壁の後ろに隠れられるようにする
- ⑩ エンティティに陰影をつける
- ⑪ 敵がプレイヤーに向かって迫ってくるように実装する
- ⑫ スターを実装しよう!(いまここ)
- ⑬ 爆速3D爆誕
- ⑭ 壁に画像(テクスチャ)を貼り付けてリッチな3D空間を演出する
- ⑮ テクスチャの壁を洗練させて本格3D完成!
- ⑯ シメだ!モバイル & オンライン化をするぞ
- ⑰ 【おまけ】敵がプレイヤーを見つけたら追いかけるロジック
ゴンザレスからの挑戦状
![](https://scratch.coach/wp-content/uploads/2024/03/fcc6ee91e32a64d3ef57c229767d704e.png)
動く敵をかわしながら進んでいるとホワーンと光る何かが……す、スターだ!ついにスターを見つけたぞ!ってなるように実装するw
今回の目標「ゲットできるアイテムを実装する」
スターを作るわけだけど、本質は「プレイヤーが取得できるアイテム」を作り込むということ。今まで作ったのは敵だけだったよね。敵は当たるとヒットポイントが減るけど、たとえばゲットしたらヒットポイントが回復するようなアイテムを作ったり、敵を倒せる武器を作ったり、そういう仕様も今回の実装で可能になっていくよ。
スター(アイテム)を実装する
グリフパッチさんは最初、エンティティを使いまわして敵もアイテムも管理していく予定だったらしいんだけど、動画を取り進めて気が変わったんだって。だからエンティティを複製して、新しいスプライトを作っていくよ。
スプライト「アイテム」を作る(複製)
![](https://scratch.coach/wp-content/uploads/2024/03/1d65d79fc826ee9784f3dd954340f18d.png)
新しいスプライトの名前はアイテムにしよう。
![](https://scratch.coach/wp-content/uploads/2024/03/07797256a67872e8bb1c582574316582.png)
スプライト「アイテム」の緑の旗がおされたときから、フランクのスポーン部分を除去しよう。
![](https://scratch.coach/wp-content/uploads/2024/03/3cae11418c5119f34564459f4ca7756d-740x1024.png)
そして1つ目のスポーンについては引数を変えておこう。
![](https://scratch.coach/wp-content/uploads/2024/03/15183e49a7c41b77c4e5d35651819462.png)
さらにクローンされたときのブロックもいったんループ内をきれいにしておいて。
![](https://scratch.coach/wp-content/uploads/2024/03/91a3b14366147f439d57b1212082eaa1.png)
↓こんなかんじ。
![](https://scratch.coach/wp-content/uploads/2024/03/709c42bc92f2a7597b46432700d72e2b.png)
スプライト「ペン」を開く
![](https://scratch.coach/wp-content/uploads/2024/03/51232c2731745965dae0f96bc02e52a4.png)
コスチュームを選ぶよ。
![](https://scratch.coach/wp-content/uploads/2024/03/4992f9ab41b0aa9ad4a68826896828cf.png)
「star」っていうコスチュームを見つけよう。
![](https://scratch.coach/wp-content/uploads/2024/03/602b13f47bea849e0beff29a6353b164.png)
このスターをちょっと加工する。まず全選択しよう。
![](https://scratch.coach/wp-content/uploads/2024/03/fab232337365e8f1380f0e6815734598.png)
この状態でグループ化しておくとのちのち扱いやすい。
![](https://scratch.coach/wp-content/uploads/2024/03/adb3d391d22c15408403f8f3936dbcb2.png)
ナノから透明な大枠をコピーしておく。十字もある人は十字も選択しとこう。選択してからコピーボタンを押す。
![](https://scratch.coach/wp-content/uploads/2024/03/37a8bcedc413f53dc6e3dc6bd1ee982e.png)
コピーできたらスターのコスチュームに戻ろう。
![](https://scratch.coach/wp-content/uploads/2024/03/58f3a1ef31bc2961567f7bbbb6c7ac84.png)
そして貼り付ける。
![](https://scratch.coach/wp-content/uploads/2024/03/5c4f173687cba7dbed79040b65511bae.png)
これでスターにも大枠ができたはず。
![](https://scratch.coach/wp-content/uploads/2024/03/71c230e5b0675053da5bc06dd594cce4.png)
スターの周りを少し発光させたい。
円形ツールを選択する。
![](https://scratch.coach/wp-content/uploads/2024/03/d27a09c3c7e89d9ab5c319a5120dd6b5.png)
スターに多いかぶるようにマルを描こう。
![](https://scratch.coach/wp-content/uploads/2024/03/3f6df7983a414f76313dcef50a7e9d9c.png)
最背面をクリックする。
![](https://scratch.coach/wp-content/uploads/2024/03/c02a0bffc3a84e12b498b98824a6e363.png)
そしたら星が前に出てくるはず。
![](https://scratch.coach/wp-content/uploads/2024/03/16c5a6e0e8042a2d0a07fe08ac542941.png)
円が選択された状態で「塗りつぶし」から円形グラデーションを選択する。色も白にしておこう。
![](https://scratch.coach/wp-content/uploads/2024/03/5dcedca6752811694d2cb4bb5de5a90b.png)
そしたら発光しているになる。エディタだと分かりにくいけど3D空間に出現させればけっこう目立つよ。
![](https://scratch.coach/wp-content/uploads/2024/03/3b1f7e37686572e0ba31c07ccd7490ac.png)
プレビューが画面で見ると一目瞭然っしょ。
![](https://scratch.coach/wp-content/uploads/2024/03/11f9126bcda150a26741c356917fac9a.png)
スプライト「アイテム」を開く
このスターをゲットできるようにコーディングしていく!プレイヤーが当たったらスターを消して音を鳴らすつもり。
![](https://scratch.coach/wp-content/uploads/2024/03/f56dfc6c6266e0e9bd5c7673df7e2ee0.png)
クローンされたときに、「プレイヤーに触れたら」という条件ブロックを置く。
![](https://scratch.coach/wp-content/uploads/2024/03/6e16c866d2cae9c4b196c8da790225ed.png)
音を選ぶよ。
![](https://scratch.coach/wp-content/uploads/2024/03/e094926603cfd1b1abc36041f7bccf61.png)
「collect」という音を選ぼう!
![](https://scratch.coach/wp-content/uploads/2024/03/fa6481d5be36a55c4f310c22c59b3a4e.png)
これを鳴らして、クローンを削除すればOK!
![](https://scratch.coach/wp-content/uploads/2024/03/28acd3244729dc549d9a9d80c134ea85.png)
変数「★スター」を作る
![](https://scratch.coach/wp-content/uploads/2024/03/6c48eee9c012847252583fb0ae8b18cd.png)
ゼロで初期化しよう。
![](https://scratch.coach/wp-content/uploads/2024/03/8740dcc586ae626b2a00d94303bfddde.png)
クローンされた段階で★スターに1加算する。
![](https://scratch.coach/wp-content/uploads/2024/03/c15a0042886fcc93f4c0421a92e4f407.png)
そしてプレイヤーに触れたらマイナス1しよう。
![](https://scratch.coach/wp-content/uploads/2024/03/dbf56813372402224a00e3257455c6ab.png)
これで残りのスターが何個あるか、という情報がゲームに加わった!
CHECK! スターをゲットできるかテストしよう
スターが7から6に減ってることが見て取れるね!ついでにヒットポイントが減ってるのも分かるね。いまはゲームオーバー処理はなにもないからとくに何も起きないけどね。
まとめ
いよいよスターが登場したね。
今回は次のことが実装できた。
- 敵とは違う、アイテムという新しい物体を3D空間に出現させることができた
- アイテムをプレイヤーがゲットできるようになった
敵は動くようになったけど、マップを見やすくしたし、アイテムも出現させることができた。あとはスクラッチキャットならなんとかしてくれるよね!ピコの家宝にしてたスターを見つけて脱出してほしいところ……って、あれ?なんかスクラッチキャットの動きがカクカクしはじめて……ええぇ!?次回もチェックしてくれ!
グリフパッチさんの動画
このチュートリアルは世界No.1スクラッチャーとして名高いグリフパッチさんの動画を参考にしているよ。ただし手順を一部変えているところもあるんだ。
- ① まず2Dマップを動き回れるようにしよう!
- ② さっそく3D化しちゃおうぜ!
- ③ 壁にスキマがあって敵から丸見え!?やっば
- ④ 陰影をつけて立体感マシマシにしよう
- ⑤ トゲトゲやユガミを補正してハイクオリティ3Dの一歩を踏み出そう(爆速オンライン3Dゲームの作り方 #05)
- ⑥ 壁の衝突判定の基本を作ろう
- ⑦ 壁に触れてると進めない!?移動を改善しよう
- ⑧ ついに敵が現れた!距離感の計算ってどうやる?
- ⑨ 奥行きを実装して壁の後ろに隠れられるようにする
- ⑩ エンティティに陰影をつける
- ⑪ 敵がプレイヤーに向かって迫ってくるように実装する
- ⑫ スターを実装しよう!(いまここ)
- ⑬ 爆速3D爆誕
- ⑭ 壁に画像(テクスチャ)を貼り付けてリッチな3D空間を演出する
- ⑮ テクスチャの壁を洗練させて本格3D完成!
- ⑯ シメだ!モバイル & オンライン化をするぞ
- ⑰ 【おまけ】敵がプレイヤーを見つけたら追いかけるロジック