スクリーンショット_2018-11-07_21

Scratchでポケモンぽいゲームを作る制作過程 #4

今回はPachiMon-4の解説をしていきます。今回はちょっと多めです。

PachiMon-4ではバトルがスタートしたら最初にメッセージを表示して、そのあとにバトルコマンド「FIGHT」を表示。「FIGHT」をクリックしたら攻撃のアクションをするところまで作成しました。

PachiMon-3からの主な追加要素は以下の通りです。

・メッセージを表示するためのスプライトを作成
・バトルコマンドのスプライトを作成
・攻撃エフェクト(爪)のスプライトを作成
・バトルコマンド「FIGHT」のスプライトを作成
・バトルコマンド「FIGHT」をクリックしたら表示させるスキル(Claw)のスプライトを作成
・バトルコマンド「CANCEL」のスプライトを作成
・バトル開始時にメッセージを表示するスクリプトを作成
・「Claw」をクリックしたらmpmが攻撃アクションをするスクリプトを作成
・「Claw」をクリックしたら攻撃エフェクト(爪)が表示されるスクリプトを作成
・バトルコマンド「CANCEL」をクリックしたらバトルコマンドに戻るスクリプトを作成
・epm(敵キャラ)のパラメータを表示する

やることが多そうですが、ほとんどはコマンドがクリックされたら「表示/非表示」を切り替えるだけなのでスクリプト自体は単純です。

敵キャラのパラメータの表示は前回説明したことの繰り返しなので説明は省略します。


バトル開始時にメッセージを表示する

バトル開始時に「Dragon came out!」と表示させる部分は上記画像のように作成しました。メッセージはコスチューム側で用意しておき、play_mode=battleになったら表示するようにしてあります。

操作するとわかりますが、「Dragon」と「came out!」が時間差で表示されたり、次の「What will PachiMon do?」というメッセージを表示する前に自動で消えるようにしたりと見た目が楽しくなるような工夫もしました。


これはスプライト「came out!」のスクリプトです。最初に表示して1.5秒待って非表示、その後「what-will-pachimon-do?」というスクリプトメッセージを送るようにしています。

これはスプライト「what-will-pachimon-do?」のスクリプトです。先ほど送ったスクリプトメッセージをこちらで受け取り、その時に表示するようにしています。これによって「Dragon came out!」のメッセージが表示された後に「What will PachiMon do?」というメッセージが続けて表示されます。

バトルコマンドの表示やスキルの表示、攻撃エフェクトの表示もほぼ同じです。


作ってて気づいたんですがこのゲームを作っていくにあたって、この表示/非表示の切り替えはいたる所で出てきそうなんですよね。

例えば今後、フィールドを作成した時にフォールドからバトルに切り替わる時やフィールドで誰かに話しかけた時などが考えられます。

実際、このあとでバトル中にPachiMonを切り替えるシステムを作った時にPachiMon一覧の表示のところで表示/非表示はめちゃくちゃ使いました。そのせいかわかりませんが、部分的に動作が遅くなるバグが発生。しかもこの記事を書いている時点でまだ修正できてません。まぁ動くの動くんだけど、動作が遅いと遊びにくいですからね。今後修正方法を考えてみたいと思います。

ということで今回はここまで。

初めましてヒロです。勉強プロデューサー/コーチ:Lv50。無人島:Lv2。サバイバル:Lv2。YouTuber:Lv1。ブログ:Lv3。Twitter:Lv5。Note:Lv2。Lvは全て自称です。