最終更新日:2024年3月19日
今日のポイント
① 細かい当たり判定は、「色に触れた」かどうかを調べる
② コスチュームを上手に使えば「変数」の数を減らすことができる
目次
【はじめに】完成した作品を見る
【考え方】作品の全体像を理解する
主なスプライト
今回使用する主なスプライトは、①から⑤までと多いです。スプライト同士を連携して動かすために「メッセージ」を使いますよ。
①「プレイヤー」のコスチューム
プログラムを簡単にするため、「プレイヤー」のコスチュームは1種類だけにしました。銃を撃った時や回復したときのアニメーションを作るとよりリアルな作品ができますよね。
②「ボタン類」のコスチューム
ボタンは3つ用意します。それぞれ別々のスプライトで作成すると、プログラムが簡単になります。「このスプライトが押されたとき」のブロックを使えば、どのボタンが押されたか判別できるためです。
スプライト「攻撃ボタン」
スプライト「建築ボタン」
スプライト「回復ボタン」
③「壁」のコスチューム
「壁あり」と「壁なし」のコスチュームを用意します。「壁なし」のほうは、何も描かずに空白にしておきます。「壁なし」のコスチュームを用意した理由は、コスチュームの番号や名前で、壁があるのかないのかを判別できるようにするためです。
スプライトを「隠す」ことで壁がない状態にすることもできますが、そうすると「壁がある」「壁がない」を変数で管理しないといけなくなるためプログラムが複雑になってしまいます。
④「銃」のコスチューム
真ん中を「黒」にします。それ以外の部分は、「黒」以外の色を使います。このように色を使い分けることが今回の作品のポイントになります。銃を撃ったことが分かるように、「銃を撃った時」のコスチュームも用意しました。
⑤「敵」のコスチューム
「敵」のコスチュームは1種類だけにしました。「プレイヤー」と同様に、銃を撃った時のアニメーションを作るとよりリアルな作品ができますよ。
スプライト間のイベント
スプライトのイベントの関係を示した図です。「メッセージ」を出す側と、「メッセージ」を受け取る側をよく確認しておきましょう。
「攻撃ボタンを押した」を受け取る側は2か所あることに注意しましょう。④「銃」のところでは、攻撃したときのアニメーションをプログラミングしています。⑤「敵」のところでは、銃に触れているかどうか調べてダメージの処理をしています。
【プログラミング】してみよう
変数を作成する
まずは、変数を用意しましょう。今回使用した変数は2個です。
No | 変数名 | 変数の種類 | 使い方 | どんな値が入る? |
---|---|---|---|---|
1 | 自分の体力 | 変数 全てのスプライト用 | 変数名の通り | 0~100までの数字 |
2 | 敵の体力 | 変数 全てのスプライト用 | 変数名の通り | 0~100までの数字 |
すべてのプログラム
①「プレイヤー」のプログラム
「緑の旗が押されたとき」に、体力を最初の状態に戻します。
②「ボタン類」のプログラム
「攻撃ボタン」のプログラム
メッセージを送るだけです。
「建築ボタン」のプログラム
メッセージを送るだけです。
「回復ボタン」のプログラム
「回復ボタン」を押したとき、「自分の体力」を「+5」します。100 を超えないように作っています。
③「壁」のプログラム
壁の「あり」と「なし」は、コスチュームを切り替えることで表現しています。
④「銃」のプログラム
「スペース」キーが押されたとき、ゲームがスタートします。「攻撃ボタンを押した」を受け取ったときは、攻撃したときのアニメーションをプログラミングしています。
⑤「敵」のプログラム
「敵」の位置と体力を、最初の状態に戻します。
「スペース」キーが押されてゲームがスタートすると、敵は1秒おきに攻撃してくるようにしました。
プレイヤーの攻撃が、敵に当たったかどうか判定します。銃の中央の「黒」い点に触れているときだけ、攻撃が成功することにします。
【リミックス】してみよう
アニメーションやアイテムなどを追加して、好きなように改造してみよう。
ワンポイントアドバイス
どの色に触れたかどうかを指定する時、上図のように「スポイド」を使うと便利です。ゲームの中から色を取ってくることができます。
ここで注意したいのは、色を使った判定は100%正確ではないということです。これはスクラッチの仕様上の問題のため対処方法が難しいです。ただし、座標を使えば厳密に判定することができます。気になる人は、ぜひオンラインレッスンを受講してみてください。
まとめ
スプライトとの当たり判定に「色が触れた」を追加すると、より細かく場合分けができます。ただし、色による判定は、100%正確ではないということも覚えておきましょう。
変数が増えるとプログラムは難しくなります。コスチュームを使うことで変数の数を減らせる可能性があります。変数を作る際はこのことを思い出し、むやみに変数を増やさないようにしましょう。
その他の人気ゲームの作り方
最終更新日:2024年3月19日
広告
最終更新日:2024年3月19日