[RPGツクールMV Trinity]隠しアイテムの使い方を解説!選択肢を表示させよう![2019/3/9追記あり]

2019年7月15日

Pocket

小さな我が家へようこそ。いろはです。

最近は主にドラクエビルダーズ2をプレイしていましたが、「RPGツクールMV Trinity」でのゲーム開発も進行中です。

開発状況は50%といったところでしょうか。
大枠のゲームシステムはできて、後はイベントの作り込みやパラメーター、ゲームバランスの調整、テストなどをすれば完成です。
アップデートされてから無限ロードは発生していませんが、データ破損しないかヒヤヒヤです。

今回は少しわかりづらい「隠しアイテム」と「アイテム選択の処理」の使い方をご紹介します。

スポンサーリンク

隠しアイテム

アイテムには下記のいずれかの「アイテムタイプ」を設定します。
  • 通常アイテム
  • 大事なもの
  • 隠しアイテムA
  • 隠しアイテムB
ドラクエの「やくそう」などは「通常アイテム」に該当します。
そして、ストーリー上、重要なキーアイテムは「大事なもの」に設定するのが基本です。

では、「隠しアイテムA」と「隠しアイテムB」は何かと言うと、プレイヤーが持っていてもアイテム欄に表示されないアイテムになります。

これは主に「アイテム選択の処理」と組み合わせて使います。

アイテム選択の処理

「アイテム選択の処理」では、指定した「アイテムタイプ」の中から、持っているアイテムをプレイヤーに選択させ、選択されたアイテムの「アイテムID」を指定した変数に格納します。

これを利用すれば、「脱出ゲームで正しいアイテムが選択されたらステージクリア」のようなことができます。

選択肢を表示させる方法

「選択肢の表示」の処理を使えば一度に最大6個までの選択肢を表示できます。

しかし、それより多くの選択肢を一度に表示させたい場合があります。

そのような場合に「隠しアイテム」と「アイテム選択の処理」が使えます。
また、この方法では条件によって選べる選択肢を増減させることもできます。

下記のような手順で一度に7個以上の選択肢を表示できます
  1. 選択肢として表示させたい内容を「隠しアイテムA」または「隠しアイテムB」として作成
  2. 作成した隠しアイテムをプレイヤーに持たせる
  3. 「アイテム選択の処理」で「隠しアイテムA」または「隠しアイテムB」のアイテム(選択肢)を表示する
  4. 「アイテム選択の処理」で変数に格納された「アイテムID」を判定して条件分岐
  5. プレイヤーに持たせた隠しアイテムを回収する

アイテム選択の処理で表示順序が変わる!?[2019/3/9追記分]

隠しアイテムを回収するとき、追加した順番とは逆の順番に回収しないと、2回目以降の「アイテム選択の処理」で表示される選択肢の順序が変わってしまうことがあります。

「RPGツクールMV Trinity」の仕様/処理に依存する部分となりますが、バージョン1.0.5では、隠しアイテムを回収するときは、最後に追加したものから回収していくと順番が変わらないことを確認できました。
スポンサーリンク

サンプル(カロリーゼロ理論)

サンプルとして、「隠しアイテム」と「アイテム選択の処理」を利用して、一度に7個の選択肢を表示させるイベントを作りました。

好きな食べ物を質問されて、7個の選択肢の中から選んで答えると、それぞれの食べ物についてコメントを表示するだけの簡単なものです。

実行内容としては下記になります。
  1. 下記の隠しアイテムを追加する
  2. アイテムID 名前 アイテムタイプ
    300 ドーナツ 隠しアイテムA
    301 カステラ 隠しアイテムA
    302 ポテトチップス 隠しアイテムA
    303 アイスクリーム 隠しアイテムA
    304 肉まん 隠しアイテムA
    305 唐揚げ 隠しアイテムA
    306 柿の種 隠しアイテムA
  3. メッセージ「好きな食べ物は?」を表示する
  4. 「アイテム選択の処理」で「隠しアイテムA」の中からアイテムを選択させ、選択された「アイテムID」を変数「temp(変数ID:1)」に格納する
  5. 変数「temp」の値に応じて条件分岐、選択されたアイテム(食べ物)に応じたメッセージを表示する
  6. 追加した隠しアイテムを減らす


実際にこのイベントで選択肢を表示させたときのスクリーンショットがこちら。



条件によって選択肢を増減させたい場合は、最初の隠しアイテムを追加するところで判定処理を入れれば対応できます。

制御文字を使って選択されたアイテム名をメッセージ表示する方法

メッセージ中のアイテム名や通貨単位などは制御文字を利用して表示させると、後でアイテム名や通貨単位を変更する場合に楽です。

「アイテム選択の処理」で選択されたアイテム名を、メッセージ中に表示させる制御文字の書き方をご紹介します。

サンプルでも使っていますが、変数ID「1」の変数にアイテムIDを格納している場合は「\ni[\V[1]]」で該当するアイテム名が表示されます。
(\はバックスラッシュです)

制御文字「\V[n]」で変数ID「n」の変数の値、「\ni[n]」でアイテムID「n」のアイテム名を表示できます。

つまり、「\ni[\V[n]]」とすると、「アイテム選択の処理」で選択された「アイテムID」に応じたアイテム名を表示させる書き方になります。
([n]にはアイテムIDを格納している変数の変数IDを入力)

実際に選択肢の中から「ドーナツ」を選択したときの表示がこちら。


制御文字で正しくアイテム名「ドーナツ」を表示できていますね。

あ、このイベントはサンプルとして作ったものなので、私が開発中のゲームで実際には発生しません。

まとめ

一度に表示させる選択肢が6個以内で済むならアイテムIDを覚えておく必要のない「選択肢の表示」の方が簡単ですが、7個以上の選択肢を表示させたい場合や、条件によって選べる選択肢を増減させたい場合には、ご紹介した方法が使えます。
ご参考になれば幸いです。

ツクール広場に作品を投稿していますので、よかったら遊んでみてください。
下記の記事でご紹介しています。
[RPGツクールMV Trinity]作品「ニナの神隠し」を広場に投稿!ゲームシステムやストーリーを紹介します!

よかったら下記の記事もどうぞです。
以上、いろはでした。
スポンサーリンク

Pocket