【スクラッチ】マリオブラザーズ風ゲームの鬼滅の刃Ver.9:「善逸」を追加

2021年12月28日火曜日

Scratch スクラッチ プログラミング 鬼滅の刃

t f B! P L

マリオ風のアクションゲームを鬼滅の刃バージョンにする(その9)






作り方まとめページがあるよ→ 記事まとめ


操作キャラクターに「善逸」を追加しました。

ゲーム中はちょっと怖がっている表情です。

前回のVer8 で完成してからちょうど1年後の更新となりました。

アニメの第2期と合わせたわけではないですよ。。。^^;




番外編9-1:「善逸」のキャラクター絵を描く



スクラッチの描画エディタを使って「善逸」を描きました。

詳しい内容は↓のブログにまとめています。

【スクラッチプログラミング】鬼滅の刃の「我妻善逸」を描いてみました



なかなかうまく描けなくて娘にたくさんアドバイスをもらいました。^^





番外編9-2:キャラクター選択画面を追加する


キャラクターが炭治郎だけのときは必要なかったですが、キャラクターが2人になったのでゲームを開始する前に「キャラクター選択画面」を追加する必要があります。


キャラクターに番号を割り振る


0:炭治郎

1:善逸



「停止画面」スプライトに必要なコスチュームを追加




「タイトル画面」を描いたスプライトに「キャラクター選択画面」に必要なコスチュームを追加していきます。


キャラ選択:炭治郎


炭治郎が選択されているときの表示画面です。



キャラ選択:善逸



善逸が選択されているときの表示画面です。



判定用:START


スタートボタンのタップの当たり判定用です。



判定用:炭治郎



炭治郎をタップした時の当たり判定用です。



判定用:善逸



善逸をタップした時の当たり判定用です。



操作方法


決定: 「スタートボタン」をタップ「S」キー

キャラ変更:キャラクターをタップ「←」キー、「→」キー




追加プログラム概要


今回はキャラクター選択を後付けするので、「タイトル画面」を表示しているところで「キャラ選択」変数を使って表示を切り分けています。


停止画面」スプライトのコードにある「タイトルを表示」ブロックにコードを追加しました。

キャラ選択」変数は「はじめからスタート」ブロックでOFFに初期化しておきます。



選択したキャラクターの番号はグローバル変数の「キャラ番号」に設定されます。




番外編9-3:ゲーム中に「善逸」キャラクターを追加する


「キャラクター」スプライトのコスチュームに「善逸」用のコスチュームを追加します。

炭治郎のすぐ下に同じパターンで追加していきます。




コスチューム番号1~4炭治郎
コスチューム番号5~8善逸




追加プログラム概要


キャラクター」スプライトのコードで「右向きのアニメーション」ブロックと「左向きのアニメーション」ブロックを修正します。

表示するコスチューム番号を設定している箇所を「キャラ番号」の値で切り替わるようにします。


最初に「アニメ位置」と「アニメ番号」の値を算出しておきます。




アニメ位置」はキャラクター毎の最初のコスチューム番号になります。

炭治郎なら1、善逸なら4です。


アニメ番号」はキャラクター内のパターン番号になります。

それぞれのキャラクターが1~4のパターン番号で表示されます。

右向きで足を開いているパターンは炭治郎も善逸も1です。



コードの微調整


キャラクターが右端や左端に到達したときは反対側から出てくるようにしていますが、その判定範囲に指定している値がキャラクターの絵の幅によって到達できないことがあります。

スクラッチではコスチュームに描かれている絵の半分ぐらいが外にでる座標になると勝手に適正範囲に戻されてしまいます

今回は善逸が炭治郎より少し幅が広かったので右端に設定している値に到達することができなくなってしまいました。
そのため、左右の端の判定値を修正しています。


キャラクター」スプライトの「ワープする」ブロック引数として渡している値が左右の判定値なので、ブロックを呼び出しているところで値を変更しました。




これで左右へのワープもできるようになりました。^^

次のキャラクターを追加するときも幅が広くなったらさらに調整が必要になります。
余り手前に設定してしまうとキャラクターがパッと消えてしまう感じになってしまうので出来ればキャラクター毎に判定値を変える方が良いかもしれません。

人面蜘蛛といえば善逸なので今回追加できてよかったです。^^




今回作ったのは、こういう感じになるよ → 鬼滅の刃風 ver:Step9(善逸を追加)


プロジェクトが作れなかった場合は、動きだけでも見てみてね。




他の作品記事もよければ読んでみてください。


このブログを検索

ブログをよくする

自己紹介

自分の写真
はじめまして。はるはるです。 中2の息子と小5の娘を抱える2児の父です。今はゲーム会社で働いています。 子供のプログラミング学習に協力できるように教え方を勉強中です。 このブログでは簡単なゲームを作りながら自分が学んだことを少しずつ共有していきます。 情報処理の試験をたまに受けます。 第二種情報処理技術者 ソフトウェア開発技術者 基本情報処理技術者 応用情報処理技術者 twitter: https://twitter.com/amaruchan007

連絡フォーム

名前

メール *

メッセージ *

QooQ