- スターター作品
- なし
- 今回の完成サンプル
- なし
さぁ、スクラッチでナニ作る!?
ずっとループの中でスペースキーを毎フレーム監視する設計が効いている。キー入力イベントブロックではなくif文で検出することで、押し続けるとクローンが連続生成され、離せばその瞬間に止まるという感触を生んでいる。クローンが端に触れると自動削除される仕組みも組み合わさって、画面が際限なく増殖しない整理された状態を保ちながら何度でも分身を飛ばせる。この組み合わせがどう実装されているのか、作り方を見ていこう。 参考資料:スクラッチプログラミング事例大全集
動画で見てみよう
[talk]チャンネル登録して応援よろしく!チャンネル登録する[/talk]チュートリアルの元になった作品
[prj-embed prj="1313440132" mini="1" title="プレイしておこう" prj-title="sb3_20260428193914" prj-author="ok-scratch"]今回の[prj-link prj="1313440132" title="sb3_20260428193914" author="ok-scratch"]スクラッチを作る参考作品[/prj-link]です。[/prj-embed]今回の目標
スターター作品をリミックスしよう
このチュートリアルにはスターター作品があります。使わなくても大丈夫だけど、最低限の素材などが用意されてるので便利です。
スターター作品をダウンロード
#1ネコの初期設定
[talk class="m-l-n"]前回はクローンでネコのアートを作ったよね。今回もクローンを使うんだけど、スペースキーでネコの分身をバンバン飛ばすインタラクティブな作品を作るよ。[/talk]準備
スプライト「魔法使いネコ」を開く
| スプライトについて |
|---|
| 左右に動きながら端で跳ね返るネコのスプライト。スペースキーでクローンを生成し、クローンはランダムな方向に飛んで端に当たると消える。 |
| どんな役割か |
| ネコが左右に動き回るよ。スペースキーを押すとクローンが飛び出して、ランダムな方向に進んでいくんだ。端に当たったらクローンが消えるぞ! |
実装
#2ネコの自動移動
[talk class="m-l-n"]ネコがずっと画面内を跳ね返りながら動く仕組みを作ろう。[/talk]まず回転方法を ( ) にするを「左右のみ」にする。これがないと端で跳ね返ったときにネコがひっくり返って逆さまになっちゃうんだよね。
ずっとループの中で10歩ずつ動かして、もし端に着いたら、跳ね返るで端に当たったら自動で跳ね返る。これだけでネコが画面中を縦横無尽に走り回るんだ。
[talk]「端に着いたら跳ね返る」って、DVDのスクリーンセーバーと同じ原理なんだよね。壁に当たる角度と跳ね返る角度が等しくなるように動いてて、だから最初の向き(このネコだと110度)をちょっと変えるだけで軌道がガラッと変わる。試しに90度ぴったりにするとひたすら同じラインを往復するだけになるから、角度をいじって遊んでみて。[/talk]
#3キー入力でクローン生成
[talk class="m-l-n"]ネコの移動が完成したところで、次はスペースキーでクローンを飛ばす仕組みだ。[/talk]さっき作ったずっとループの中に、もし ( ) ならでスペースキーが押されているかをチェックする条件を追加しよう。条件を満たしたら自分自身のクローンを作る。ループの中で毎フレーム監視し続けるから、スペースキーを押し続ければどんどんクローンが生まれるし、離せばピタッと止まるよ。
#4クローンの初期動作
[talk class="m-l-n"]本体の動きが完成したから、ここからはクローンが生まれた瞬間の動作を作っていこう。[/talk]クローンされたときがクローン専用コードの始まり。コスチュームを「コスチューム2」に切り替えて本体と見分けがつくようにし、「Meow」の音を鳴らす。そして( ) 度に向けるで-180から180までの乱数の方向を向かせると、クローンごとに向く方向がバラバラになって花火みたいにパーッと全方向に散らばるよ。
[talk]この「ランダムな方向に飛ばす」やり方、ゲーム業界では「パーティクル」って呼ばれるテクニックの基本形なんだ。爆発エフェクト、魔法の演出、紙吹雪──派手な見た目の裏側は全部このシンプルな仕組みの応用だよ。クローン+乱数だけでゲームっぽいエフェクトが作れるの、なかなかアツいよね。[/talk]
#5クローンの飛行と消滅
[talk class="m-l-n"]クローンの初期設定ができたから、あとは飛んでいって画面端で消える動きを入れれば完成だ。[/talk]ずっとループで15歩ずつ前に進ませよう──本体の10歩より速いんだよね。( ) に触れたで端に触れたらこのクローンを削除するで消す。画面外に飛んでいったクローンを放置すると見えないところで溜まっていくから、ちゃんと片付けるのが大事だよ。
これでスペースキーを連打するとネコの分身が花火みたいに飛び散る作品の完成!次回は街を走る車を作るよ。
まとめ
クローン+ずっとループの組み合わせで、こんなにインタラクティブな作品が作れるんだね。スペースキーを連打するほどネコが増えていく感じ、なかなか病みつきになるよ。最初の向きをちょっと変えるだけで軌道がガラッと変わるから、角度をいじって遊んでみてね。次回は街を走る車を作るよ!