スクラッチでゲームをつくるための練習をゼロからはじめていきます。ここまではひたすらネコの動きだけを練習してきましたが、今回は背景や他のスプライトを登場させていきます。ここからレベル14までで、リンゴキャッチゲームを完成させていきます。これが1作目のゲームになる人もいるかと思います。スクラッチゲームマスターを目指してがんばりましょう!
レベル11:ネコ以外を登場させる(スプライト)
例えばマリオゲームを想像してみましょう。プレイヤーのマリオだけではゲームになりません。背景に加えて、ノコノコなどの敵キャラや、ブロック、ビームなどが重なり合ってゲームが完成します。これらのものをスプライトと呼びます。
ここまではネコが白い画面の中を動いていただけですが、ゲームは背景や他のキャラクターや障害物などが重なり合ってできていきます。
問題1:背景を設定する
以下のとおりに動くようにコードを書きましょう
ルール
を押すと背景(BlueSly)の地面の上にネコが待機
左右キーで画面左右を移動
実際にを押してからネコを左右に動かしてみよう
ネコのスプライトのコードは以下の通りです
正解のコードをみる
背景の設定の方法については以下の動画を参考にしてください。背景を置くだけでグッとゲームっぽくなりますね。
問題2:太陽を追加する
以下のとおりに動くようにコードを書きましょう
ルール
を押すと問題1に加えて太陽が左上に設置されて、クルクル回る
太陽のスプライトを追加し、以下のコードを書けば正解です。
正解のコードをみる
太陽のスプライトの追加方法はこちらの動画を参考にしてください
今回ネコに加えて太陽を追加しましたが、これらをスプライトと呼びます。スプライトごとにコードが書かれていてそれらが連動して1つのゲームになります。例えばマリオゲームの場合も、マリオだけでなく、ノコノコなどの敵キャラ、ブロック、コイン、ファイヤーなど、様々なスプライトの動きでゲームができています。
問題3:りんごを落とす
以下のとおりに動くようにコードを書きましょう
ルール
を押すと問題2に加えて
りんごが上から降ってきて下に落ちると消える
0.5秒待ってまた次のりんごが降ってくる
それを20回繰り返す
※りんごの大きさは60%とする
※りんごが落ちる時すこしだけ回転しながら落ちる
ネコのスプライトに以下のコードを書けば正解です
正解のコードをみる
y座標は最上部が180で最下部が-180なので画面縦は360ピクセルです。つまり上から下までりんごを移動させるためには-360動かさなければならないので、今回は-10×36回としています。これを-20×18回としても良いですがスピードが劇的に早くなります。
また、実はこのコードはあまり良いコードではなく、正しくは演算を使います。演算の使い方については次のレベルで解説します。
問題4:終了を作っておく
以下のとおりに動くようにコードを書きましょう
ルール
を押したときの動きは問題3のまま
終了のスプライトを準備しておく
終了のスプライトを追加してに以下のコードを書けば正解です。隠しておくことが肝心です。
正解のコードをみる
終了のスプライトは元から用意されていないので自分で作る必要があります。終了スプライトの作り方は以下の動画を参考にしてください。
レベル12:演算で細かい調整
ここでは演算を学習していきます。演算に苦手意識を持つ人も多いかもしれませんが、ゲームを細かく設定していくには欠かせませんので頑張ってマスターしましょう。
問題1:りんごが下の端で消える
以下のとおりに動くようにコードを書きましょう
ルール
レベル11で作った動きはそのままで、りんごが下の端で消えるコードを演算を活用したものに変更する。
りんごのスプライトを以下に修正できれば成功です。
正解のコードをみる
ブロックを修正するときはつけたり外したりする必要があります。修正の一連の動作は以下の動画を参考にしてください。
問題2:ネコが画面の端に行くと逆サイドから出てくる
以下のとおりに動くようにコードを書きましょう
ルール
問題1の動きに加えて、ネコが端に行くと逆サイドから出てくる
端まで行って逆サイドから出てくる動きを確認しましょう
問題3:落ちてくる場所をランダムにする
以下のとおりに動くようにコードを書きましょう
りんごのスプライトのコードを以下に変更すれば成功です。
正解のコードをみる
ゲームを作る上で様々な項目をランダムにすることはとても大切です。ランダムにすればするほどゲーム性が出てくるためです。xを-200〜200の乱数にするということは、下図のように左右のどこから落ちてくるかが分からないということです。
問題4:りんごが落ちる間隔をランダムにする
以下のとおりに動くようにコードを書きましょう
ルール
問題3に加え、りんごが落ちてくる感覚を0秒〜0.8秒のランダムにする
次のレベルに行く
関連