scratch 大乱闘スマッシュブラザーズ風ゲーム パート5
名古屋市瑞穂区で子供を対象としたプログラミングサークルを開いているサハラです!
パート4の続きを書きます。
今回はステージにギミックを追加します。追加するギミックは以下です。
・クマがステージを横切る。クマに攻撃したキャラクターは大ダメージをくらう
・はりねずみが現れる。触れたキャラクターはダメージをくらう。
8.クマ(Bear)のギミックを追加しよう
1.クマを追加しよう
ステージをBearが歩いているときにキャラクターが攻撃すると、Bearがリアクションするようなギミックを追加します。このため、BearとBear-walkingの2つのスプライトを使用します。ステージにクマを歩かせるときにBear-walkingを使用して、キャラクターが攻撃されたときにBearにスプライトを切り替えます。この2つのスプライトを追加してください。
Bear-walkingをステージを横切らせるため下記を追加して下さい。一定時間経ったらクマを出現させるためのコードが赤丸部分です。ゲーム開始時は隠しておき、10~30秒の間のランダムの時間待ったあと、ステージに出現させます。
次にBear-walkingをステージの左から右にゆっくり歩かせます。終点をx座標300に達するまで、30歩動かしながら、次のコスチュームに切り替えることを「ずっと」ブロックの中で繰り返すことで歩いているように見せます。ゆっくり歩いているように見せるため、「0.5秒待つ」ブロックを入れましょう。
また歩いている途中にキャラクターが攻撃してきたことを判定するための処理も行いますが、これは次の章で説明していきます。
2.クマ(Bear-walking)とキャラクターの衝突を判定しよう
Bear-walkingに対してキャラクターが攻撃してきたことを判定するためのコードは下記です。ブロックのかたまりが長くなると読みにくくなるのでブロックを使用しました。
BatterがBear-walkingを攻撃したことを判定するためには、Bear-walkingとBatterの衝突を「もしBatterに触れたなら」で判定します。判定がNOのときは何も処理せずにこのブロックを抜けます。判定がYESのときは次にBatterが攻撃していること、つまり「Batterのコスチューム名がbatter-c」であることを判定し、Bear-walkingに対してBatterが攻撃していると判断することができます。
Bear-walkingに対してBatterが攻撃していることがわかったら、Bear-walkingをBearに切り替えるため、Bear-walkingを隠し、その後Bearのクローンを作ります。
最後に「Batterへ大ダメージを送って待つ」ブロックを用意して、Batterへダメージを与える処理を動かすためにメッセージを送ります。ダメージを与える処理の中身については次のブログで説明します。
次にBearのコードを用意しましょう。クローンされたときに「Bear-walkingの方へ行く」ブロックでBearの位置を移動します。これでBearとBear-walkingを切り替えます。その後の処理は演出なので好きに作れば良いですが、私はクマが驚いて立ち上がり、その後ゲームからフェードアウトするように作りたかったので、「次のコスチュームにする」、幽霊の効果を1ずつ変えるを100回繰り返してBearを消すようにしました。(補足 幽霊の効果の値が0から100に向かって増えるごとにスプライトの透明度が増え、100になるとスプライトが完全に透明になります)
また、ゲームがはじまったときに、「Bearを最背面へ移動する」に設定することで、メインのキャラクターが隠れないようにしましょう。
この続きはパート6で。
遊んでみよう
プロジェクトを下記に公開しています。
https://scratch.mit.edu/projects/277410593/
プログラミングサークルについて
CoderDojo瑞穂という団体名でプログラミングのボランティアサークルをやっています。scratch(スクラッチ)やプログラミングの体験ができる他、Viscuit、テキストプログラミングも体験ができます。非営利団体のため、特に参加料を徴収しておりません。
月2回開催しているので、良かったら遊びに来てください!! 申し込み等、詳細は下記からご確認ください。
Dojoの写真やニンジャのビスケット作品を上げてます。
インスタの写真+
https://www.facebook.com/CoderDojo%E7%91%9E%E7%A9%82-296874087614515/