![ロング体験会](https://manabiail-steam.com/wp-content/uploads/2023/03/263f08deef99ee29c35bfdad3906e03d.png)
Scratch ステージのコードに何を書くべきか
![Scratchステージに書くべきコード](https://manabiail-steam.com/wp-content/uploads/2023/09/7284cdf5d1939cd66be3ea009dad709a-1.png)
Scratchの”ステージ”は、おもに背景を選ぶときに開くと思います。
知らない方もいらっしゃるかもしれませんが、ステージにもコードを書くことができます。
ステージに何も書かずに、全てのコードをスプライトに書いてももちろん動きますが、「ステージに書くと分かりやすくていいよ」と、1000以上のScratchプロジェクトを見てきた私が考えるものを今回は解説します。
ステージのコードに書くといいもの
BGMを流す
ゲームやアニメーションの雰囲気を出すために、BGM(音楽)を流すことがあります。
このBGMは、どのスプライトとも関係しないので、ステージに書きましょう。
![BGMを流す処理](https://manabiail-steam.com/wp-content/uploads/2023/09/BGMwo.png)
「すべてのスプライト用」変数のはじめの処理
複数のスプライトで使う変数のはじめの処理を書きます。
例えば、制限時間や回数、得点などです。
はじめの処理なので、これらの変数のリセットをするコードですね。
![すべてのスプライト用変数の初期処理](https://manabiail-steam.com/wp-content/uploads/2023/09/bfab7ab0a252c5eee2883530149c79fb.png)
制限時間の処理
ゲームをつくるときには、制限時間を設けることが多いと思いますが、この制限時間のコードをステージに書きます。
もちろん、メインのスプライト(Catなど)に書いてもいいのですが、スプライトはコードが多くなってしまうので、比較的コードが少ないステージに書くのがおすすめです。
![制限時間のコード](https://manabiail-steam.com/wp-content/uploads/2023/09/20a9e18df57bd355fc6fa52a61b14e72.png)
このように制限時間の処理を書きます。
最後にメッセージ「終わり」を送っていますので、各スプライトでメッセージを受け取って、終わりの処理をします。
もちろん、ステージで「すべてを止め」てしまってもいいでしょう。
![制限時間のコード_すべてを止めるバージョン](https://manabiail-steam.com/wp-content/uploads/2023/09/96e9305f3ef7f754dc71d3b6973b4a8b.png)
クローンをつくる
たとえばシューティングゲームで、たくさんの敵をクローンでつくることがあると思います。
クローンは、各スプライトで書くよりも、ステージに書いた方がいいことが多いです。
理由は、各スプライトで「自分自身のクローン」をつくると、倍々になっていく原因になりやすいからです。(もちろん、そうしないように注意して書くこともできます)
詳しくは、こちらの記事で解説しています。
![](https://manabiail-steam.com/wp-content/uploads/2023/02/8b518343f3fa88b1a3bb9df5eb3043c6-300x169.png)
10秒ごとに敵を増やしていくゲームだとすると、ステージにこんな風に書けますね。
![敵のクローンをつくる](https://manabiail-steam.com/wp-content/uploads/2023/09/3391361ee0d9ea58c94f5da034e160ef.png)
まとめ
ステージに書くといいコードを4つ挙げました。
繰り返しになりますが、絶対にステージに書いてくださいということではありません。
スプライトに書いてもいいけど、スプライトはコードが多くなるし、どのスプライトに書いているか分からなくなるので、スプライトに書かなくていいものはステージに書いた方がすっきりするよということです。
(終わり)