アイストマトバズーカのゲーム制作日記

いろいろ超初心者がゲーム制作に挑戦。現在RPGツクールMZでフリーゲーム制作中。フリー素材も作って置いてます。

MENU

【RPGツクールMZ】スクリプト無しでも入力判定するのだ(`・ω・´) STEP8 コマンド入力判定

こんにちは。

 

RPGツクールMZ(RPGMakerMZ)でプラグイン・スクリプトを使わない入力判定作成メモ&サンプルプロジェクト企画第8回目。

解説内容はRPGツクールでスクリプトは使わないものの、変数やスイッチなどの基本を知っている方向けくらいのものになります。

※イベントの組み方は様々であるためここの方法が最善とは限りません。予めご了承ください。

※キーとボタンという単語が混在しますが同じと思ってください。

他のステップ・サンプルプロジェクトはこちら!

 

テーマはコマンド入力判定。今までは1つのボタンを1回押したり、長押ししたり、連打したりしてきました。

 

今回は複数のボタンを使います。例えば最初は決定キーだけを判定し、決定キーが押されたら次はキャンセルキーだけ判定する、というような判定を切り替えていく仕組みを作り、最終的に指定したコマンドが入力されたかどうかを判定するものを作ります。

 

作り方は様々な方法があるとは思いますが、サンプルではどこまで入力が進んでいるかを識別するための変数を1つ用意し、判定用コモンイベントで値を操作しています。

コマンドインデックスというやつがソレで、判定するキーが入力されたときに1加算しています。こうすると入力がどこまで進んだかがわかるのでそれぞれの数値のときの分岐を作り、その中に判定の条件分岐を入れています。判定用イベントは今まで同様、並列処理です。

 

上の例ではコマンドインデックス(=入力されたキーの個数)が0からスタートし、最初は左キーだけを判定、左キーが押されたらインデックスが1増える、インデックスが1になったら右キーだけを判定、右キーが押されたらインデックスが1増える、インデックスが2になったら・・・という作りになっており、”左・右・キャンセル・決定”の順に判定するようになっています。最後のインデックスが3の分岐だけコマンド完成時の処理の呼び出しをしています(コモンイベント:STEP8-リセット)。

 

そのコマンド完成時に呼び出す処理↓

このイベントは呼び出して使うので並列処理ではありません。中身はコマンドが成功したときに文章を表示、次にコマンドインデックスを初期値に戻しています。その次のピクチャの消去は後述しますが入力状況をプレイヤーに示すための画像を表示していたのでそれを消しています。

次に"コモンイベント:STEP7-リセット"を呼び出しているのはSTEP7でやった"入力判定以外の禁止"をしているからです。判定を発動するためのスイッチを押したときにSTEP7の入力判定以外禁止のコモンイベントを再利用しているのです。

で、最後に発動用のスイッチをオフ、という流れ。

 

判定発動用イベントの中身はこう↓

STEP7のコモンイベントを使いメニューと移動を禁止。次にプレイヤーにコマンドを知らせるためのピクチャを表示。10フレームおいて判定開始。

 

ピクチャ表示のコモンイベントを一応↓

表示させてるだけです。

 

こんな感じになってます↓

この表示、それぞれキーが押されたら切り替えたいですよね?

 

そのためにはやはり並列処理を使います。

入力がどこまで進んだかはコマンドインデックスで判りますから、値ごとに分岐させて切替後のピクチャを表示するようにします。

 

キーを入力するとこんな感じで画像が切り替わります↓

サンプルでは画像を瞬時に切り替えるだけなのでこれでいいんですけど、”ピクチャの移動”を使ってアニメーションさせるとか、時間がかかる演出を加えようとするとこう単純には行きませんのでご注意を。なぜなら入力が早い場合アニメーション等の処理の途中でインデックスが変わり、処理が完結せず止まってしまうからです。実際のインデックスと表示が食い違うということも起こり得ます。

 

最もシンプルな解決法はそれぞれのコマンドのアニメーション(等)を別々の並列処理イベントで作り、別々のスイッチで管理することです。見た目がとても複雑になり入力判定の解説には邪魔になると思ったのでサンプルへは取り入れておりません。

 

コマンド入力判定の解説は以上です。

 

ここまで来たらピクチャを使ったオリジナルメニュー画面を作ったりオリジナルミニゲームを作ったりすることも不可能では無いハズ(労力の問題は別)。プラグインを探せばさらに可能性を広げられるものがたくさんあるので使いたいものを使いつつ理想の形を目指しましょう!

 

 

プレミアムツクールデーのツイートで既に動画をお披露目しておりますがタイトル画面はこんな感じになってます↓

背景、キャラクターはツクール素材。タイトルロゴとVサインが自作です。

もうちょっと指を広げて元気な感じにしてもよかったかなー。あと他の装飾の色合いの指輪とかつけてもっと馴染ませるとか。

 

 

・・・いや別にどうでもいいか。