こんにちは! Tuskです!
今回は、ツクールmz / mv 向けプラグイン「ph_warehouse」についてを書かせて頂こうと思います。
「ph_warehouse」は、下記のリンク先にて日本語版が配布されています。
また、当サイトの記事は、あくまで僕の初心者な目線からの情報共有です。
当サイトの情報の確認・精査は、自己責任にてお願い致します。
下記の記事を見て頂けますと幸いです。
・今後、書いていきたい記事について
さて、この「ph_warehouse」ですが、どの様なプラグインかと言いますと、アイテムを倉庫の様に保存する事ができるという、便利なプラグインです。
言ってみれば、マイクラのチェストみたいな感じです。
クラフト要素のあるゲームやサバイバルゲーム、ローグライクなんかを作ろうと思うと、是非とも使いたいプラグインですね!
しかしこれ、ちょっと使い方にクセがある(個人の感想)のと、意外とできないこともあり、僕は少しばかりハマってしまったので、その辺をまとめていきたいと思います。
「ph_warehouse」をお使いの初心者さんの参考になれば幸いです。
プラグインの導入
プラグインの導入は普通のプラグインと同じです。
プロジェクトフォルダ→「js」フォルダ→「plugins」フォルダの中に 「ph_warehouse」 を保存。
ツクールの「プラグイン管理」からプラグインをインポートし、有効にしてください。
他に必要なプラグインなどは特にありませんので、この辺はいつも通りでOKです。
プラグインの設定
プラグインを使用していく上での設定です。
「ph_warehouse」 プラグインの設定には、以下の様なものがあります。
・アイテムのカテゴリ分け
通常メニューの「アイテム」と同じように、アイテムをカテゴリーに分けて表示するか否かの設定です。
ここで要注意なのが、アイテムをカテゴリー別け(false)にすると、アイテムカテゴリー拡張プラグインなどでアイテムのメモ欄にタグを記述したアイテムが表示されません。
カテゴリーの表示を「全て」にしなければ表示されないです。
これはどうやらプラグインの仕様の様です。
僕はアイテムカテゴリー拡張プラグインを使っていましたので、表示されない事にしばらく悩みました笑
・容量基準
複数の同じアイテムを、一つの容量をみなすかどうかの設定です。
falseにすると、アイテム1つ1つが1容量とみなされます。
trueにすると、同じアイテムの複数が、まとめて1容量とみなされます。
・引き出すテキスト
「ph_warehouse」 の倉庫のシーンにおいて、アイテムを引き出す項目に表示されるテキストを設定する項目です。
・預けるテキスト
「ph_warehouse」 の倉庫のシーンにおいて、アイテムを預ける項目に表示されるテキストを設定する項目です。
・全てテキスト
「ph_warehouse」 の倉庫のシーンにおいて、アイテムのカテゴリー表示欄の「全て」の項目に表示されるテキストを設定する項目です。
・表示可能容量テキスト
「ph_warehouse」 で倉庫を作成する際、倉庫の容量を設定する事ができますが、プラグインの情報ウィンドウにおいて、表示可能容量の項目に表示されるテキストを設定する項目です。
プラグインの使い方
プラグインコマンドを使用して、実際に 「ph_warehouse」 の機能の使い方について書いていきます。
あくまで初心者な僕でも分かった基本的な部分ですので、そこはご了承ください。
倉庫の作成
このプラグインでアイテムを保存できる様にするには、まずはプラグインコマンドで倉庫を作成しなくてはなりません。
倉庫作成時の設定は以下の様な項目です。
・倉庫の名前: 倉庫の名前をつけます。日本語もOK
・倉庫の容量: 倉庫の容量を設定します。初期値は50
・ルール: 倉庫にルール(アイテムのみ入れられるなど)を設定します。
そしてここで要注意なのが、倉庫のルールを設ける場合、コモンイベントに 「ph_warehouse」 という名前のイベントを作っておく必要があります。
そして、そのコモンイベントの中に注釈でルールを記述します。
コモンイベントの注釈でルールを記述しないと、倉庫のカテゴリー欄に何も表示されず、アイテム倉庫として機能しません。
倉庫を開く
作成した倉庫にアイテムの出し入れをするシーンを開くコマンドです。
これをイベント内で実行するだけでメニューの様に倉庫を呼び出せるので、とても便利ですね!
その他のプラグインコマンド
倉庫の作成と倉庫を開く事さえわかれば、基本的な使い方は可能ですが、 ph_warehouse には他にも下記の様なプラグインコマンドがあります。
・倉庫を削除: そのまんま、名前指定で倉庫を削除します。
・戦利品ボーナスアイテム追加: 倉庫に戦利品のアイテムを追加します。
・戦利品ボーナス武器追加: 倉庫に戦利品の武器を追加します。
・戦利品ボーナス防具追加: 倉庫に戦利品の防具を追加します。
・戦利品ボーナス大事なもの追加: 倉庫に戦利品の大事なものを追加します。
・アイテム追加: 倉庫にアイテムを追加します。
・武器追加: 倉庫に武器を追加します。
・防具追加: 倉庫に防具を追加します。
・大事なもの追加: 倉庫に大事なものを追加します。
・最大容量を設定: 名前指定で倉庫の容量設定を変えられます。
・最大容量を拡張: 名前指定で倉庫の最大容量を加算できます。
・最大容量を削減: 名前指定で倉庫の最大容量を削減できます。
使い方によって、モンハンの支給品ボックスや報酬宝箱などが作れそうですね。
ちなみに、倉庫にアイテムを追加するのと戦利品を追加するのの何が違うかは、
僕がこの機能を使っていないのでよく分かりませんww
今後、使って見る事があればこの記事に追記したいと思います。
スクリプトコマンド
これはプラグインコマンドとは違い、スクリプトでph_warehouse を操作できるコマンドです。
イベントコマンドからスクリプトを呼び出し、その中に以下のスクリプトをルール通りに記述すれば、欲しい情報を取得する事が出来ます。
スクリプトで情報を取得し、変数に代入するなどして条件分岐させれば、倉庫をかなり様々な用途で操作する事ができます。
PHPlugins.PHWarehouse.exist(“預かり所の名前”);
>指定の名前の倉庫があるかどうかを確認する。
PHPlugins.PHWarehouse.getMaxCapacity(“預かり所の名前”);
>倉庫の最大容量を取得する。
PHPlugins.PHWarehouse.getCurrentCapacity(“預かり所の名前”);
>倉庫の現在の容量を取得する。
PHPlugins.PHWarehouse.hasItem(“預かり所の名前”, id);
>倉庫にある特定のアイテムの数量を取得する。
PHPlugins.PHWarehouse.hasWeapon(“預かり所の名前”, id);
>倉庫にある特定の武器の数量を取得する。
PHPlugins.PHWarehouse.hasArmor(“預かり所の名前”, id);
>倉庫にある特定の防具の数量を取得する。
PHPlugins.PHWarehouse.hasKeyItem(“預かり所の名前”, id);
>倉庫にある特定の大事なものの数量を取得する。
これらのスクリプトが使いこなせれば、倉庫に特定のアイテムが保存されている場合にのみ実行されるイベントや、店の在庫管理システムなどが作れそうですね。
ところで、このスクリプトコマンドについての余談ですが、プラグインのヘルプには何故かprototypeというプロパティが書かれた状態で記載されています。
そのままスクリプトに書くとエラーになるので要注意です。
僕はこれが分からず、いくらかハマってしまいました。
このプラグインではできない事
アイテムを一括で引き出したり、一括で預けたりと言った事はできない様です。
……というか、倉庫のシーンを開かずに直接アイテムを引き出したり、預け入れたりといったことはできない様です。
MVであれば、にゃたま様がそう言った事ができるプラグインを作成しておられますが、MZの場合はプラグインを自作するか、イベントコマンドでなんとかするしか、今のところは方法が無さそう。
僕の場合は、スクリプトコマンドを使って強引な形で一括引き出しや預け入れを再現してます。
……でも、これはスキルの高い人が見たら鼻で笑われるヤツだと思います笑
コメント