scratch 大乱闘スマッシュブラザーズ風ゲーム パート3
名古屋市瑞穂区で子供を対象としたプログラミングサークルを開いているサハラです!
パート2の続きを書きます。
5.ゲージに応じたダメージを受けた時のアクションを作ろう
次はゲージを作り、ゲージの値に応じてダメージを受けたときの挙動をかえる処理を作りましょう。
ダメージを受けた時、ゲージが
0%から100%の場合、キャラクターの色が変わる
101%から151%の場合、キャラクターが後ろに少し飛ぶ
151%から200%の場合、キャラクターが後ろに大きく飛ぶ
201%以上の場合、空中にぶっ飛ばされてリングアウト(=負け)
実際の処理としては下記のコードを書きます。
0%から100%の場合、キャラクターがコスチュームを変える
101%から151%の場合、キャラクターが後ろに30歩移動する
151%から200%の場合、キャラクターが後ろに80歩移動する
201%以上の場合、キャラクターが真上(y座標のプラス方向)に移動し続ける
キャラクターがy座標240に達した時にWinを表示する
1.ゲージを用意しよう
ゲージは既に作成したHPを使用します。初期値を0として、ダメージを受けるたびに値を増やしましょう。
2.ブロックを使用をしてダメージを受けたときのコードを作成しよう
ダメージを受けた時の処理を作成しましょう。ダメージを受けた時のゲージの値に応じて処理を変更します。今回はブロックを使用してみましょう。作ったブロックボタン、ブロックを作るボタンを押してください。
「ダメージを受けた時の処理」とブロックに名前をつけてください。またゲージをブロックに渡すため「引数を追加」を押して「number or text」をブロックに追加してください。
ブロックの処理を作成しましょう。キャラクターがコスチュームを変えるコードは既に用意したので、残りの下記の処理を追加します。
・101%から151%の場合、キャラクターが後ろに30歩移動する
・151%から200%の場合、キャラクターが後ろに80歩移動する
・201%以上の場合、キャラクターが真上(y座標のプラス方向)に移動し続ける
「もし〜なら」ブロックを使って下記のようにコードを作成してください。ゲージの値は引数として受け取るので、判定のブロックに「number or text」をはめてください。
用意したブロックを使用するコード側のコードは下記です。Batterのダメージを受けたコードで使用する場合は下記のように「Batter_HP」を引数部分にはめてください。
同じようにWizardのコードにも追加しましょう。まずはBatterで用意したブロックをWizardにコピーしてください。
本当はBatterとWizardと同じブロックを使用したかったのですが、絵が向いている向きと実際の「向き」が逆なので少しだけコードを修正します。
用意したブロックを使用するコード側のコードは下記です。Wizard_HPを引数に追加してください。
これでダメージを受けた時のコードは終わりです。
6.Winを表示するプログラムを書こう
次にキャラクターがy座標240に達した時にWinを表示するコードを書きましょう。下記のような感じで表示します。ただWinが表示されるだけだとつまらないので、上下に動くWINを作ってみましょう。
1.スプライトを追加しよう
まず「W」「I」「N」のスプライトを追加しましょう。
これらスプライトはゲーム開始時は隠しておき、キャラクターがy座標240に達した時にキャラクターから「Winを表示する」メッセージを受け取って、「W」「I」「N」のスプライトを表示させます。
2. スプライトにメッセージを送信しよう
キャラクターがy座標240に達した時にキャラクターが「Winを表示する」を送信するコードは下記になります。Batter、Wizard両方のスプライトに追加してください。
3. メッセージを受け取ってWinを表示しよう
「W」「I」「N」のコードは下記になります。「Winを表示する」メッセージを受け取ったら表示して、その後sinを使用して座標を変え続けます。意味がわからなくてもこの通り作れば動きます。もっと大きく動かしたい場合には、「50」の数字を変更してください。早く動かしたい場合には、角度を増やす数字を増やしてください。
これでWinを表示させるコードの完成です。
プログラミングサークルについて
CoderDojo瑞穂という団体名でプログラミングのボランティアサークルをやっています。scratch(スクラッチ)やプログラミングの体験ができる他、Viscuit、テキストプログラミングも体験ができます。非営利団体のため、特に参加料を徴収しておりません。
月2回開催しているので、良かったら遊びに来てください!! 申し込み等、詳細は下記からご確認ください。
Dojoの写真やニンジャのビスケット作品を上げてます。
インスタの写真+
https://www.facebook.com/CoderDojo%E7%91%9E%E7%A9%82-296874087614515/