RPGツクールMZ用のプラグイン。
マップにアイテムスロットを表示する。
-
プラグインをダウンロードする。以下のリンクをクリックすると最新のバイナリを落とせる。
-
ダウンロードしたZIPファイルを展開する。
-
ItemSlot.jsをRPGツクールMZのプロジェクトのプラグインフォルダにコピーする。
-
エディタのプラグイン管理からItemSlotを読み込んでONにする。
- 所有しているアイテムをマップに表示する。
- マップに表示するアイテムはアイテムメニュー画面で設定することができる。
- このプラグインで選択されたアイテムを使用する場合は、独自に使用効果をエディタ等で実装する必要がある。
- データベースのみだとマップ画面でアイテムを使用することが仕様として想定されていないため。
- 実装例はアイテム使用の実装例を参考にすること。
- このプラグインで選択されたアイテムを使用する場合は、独自に使用効果をエディタ等で実装する必要がある。
プラグインが実行されると同時に以下のキーのインプット判定が有効になる。競合に注意すること。
Input.keyMapper['49'] = '1';
Input.keyMapper['50'] = '2';
Input.keyMapper['51'] = '3';
Input.keyMapper['52'] = '4';
Input.keyMapper['53'] = '5';
Input.keyMapper['54'] = '6';
Input.keyMapper['55'] = '7';
Input.keyMapper['56'] = '8';
Input.keyMapper['57'] = '9';
- 本プラグインを導入すると自動的にメニュー画面におけるアイテム画面での挙動がカスタマイズされる。
- アイテム画面表示中に画面上部にスロットへアイテムを設定するためのボタンが表示される。
- アイテム選択中にキーボードの[1~9]のいずれかのキーまたはボタンを押すと対応するスロットへアイテムをセットする。
プラグインでアイテムスロット生成時に以下の関数が有効になる。イベントエディタのスクリプトで呼び出せる。
window.$gameItemSlot.currentItem(key)
- アイテムスロットで選択中のアイテム情報を取得する。
key
には取得したいアイテム情報のキーを指定する。使用例はアイテム使用の実装例にある。
アイテムスロットでアイテムを使用するための実装例を以下に示す。
以下の様なコモンイベントを実装する。※ 考え方の1つです。
◆変数の操作:#0019 選択アイテム名称 = $gameItemSlot.currentItem('name')
◆変数の操作:#0020 選択アイテムID = $gameItemSlot.currentItem('id')
◆条件分岐:選択アイテムID = 1
◆ウェイト:10フレーム
◆アニメーションの表示:プレイヤー, 回復/単体1
◆SEの演奏:Heal1 (90, 100, 0)
◆HPの増減:パーティ全体, + 500
◆アイテムの増減:さくらんぼ - 1
◆プラグインコマンド:ItemSlot, 更新
◆
:それ以外のとき
◆条件分岐:選択アイテムID = 0
◆ウェイト:20フレーム
◆文章:なし, なし, ウィンドウ, 下
: :アイテムが選択されていません。
◆
:それ以外のとき
◆ウェイト:10フレーム
◆文章:なし, なし, ウィンドウ, 下
: :スロットで選択されている
: :アイテムは「\V[19]」です。
◆ウェイト:20フレーム
◆文章:なし, なし, ウィンドウ, 下
: :スロットに設定されたアイテムの処理を
: :コモンイベントで実装してください。
◆
:分岐終了
◆
:分岐終了
※ データベース側はアイテムを使用できる状態のみに設定しておく。
上述のようなコモンイベントを定義し何らかのタイミングで呼び出すことでアイテムスロットで選択中のアイテムを使用できる。
スロットに設定されたアイテムはセーブデータで保持されるため、アイテムスロットを再度生成することで以前の状態を再現できる。
いわゆる、メニュー画面からのゲーム終了後のニューゲーム時における対応方法。
- プラグインのアイテムスロットのインスタンスが既に生成されているため、ゲーム開始時にアイテムスロットを表示または更新することでスロットを表示できる。
プラグインが動作しているデモを以下のGIFで示す。
プラグインのコマンド自体は連続で呼び出されても動作に影響がないように実装しているが、基本的には1シーンにつき1回呼び出すように実装することを推奨する。
- イベントの並列実行でただ呼び出すだけだと連発で実行されるためセルフスイッチ等を駆使して一度のみ呼び出すように工夫すること。
アプリケーション | バージョン |
---|---|
node.js | >=8.11.4 |
npm | >=5.6.0 |
gulp | >=2.3.0 |
parcel | >=1.12.4 |
Gulpを以下のコマンドでインストールする。
npm install -g gulp
Parcelを以下のコマンドでインストールする。
npm install -g parcel-bundler
リポジトリをクローンする。
git clone https://github.com/sevenspice/ItemSlot.git
ディレクトリを移動する。
cd ItemSlot
設定ファイルを編集する。
copy mz.origin.json mz.json
- mz.jsonの
dest
に、インポートしたいRPGツクールMZプロジェクトのプラグインフォルダを指定すること。
モジュールをインストールする。
npm install
コンパイルとプロジェクトへのコピーを実行する。
gulp
以上で、ゲームプロジェクトにプラグインがインポートされる。