3テラバイト

プログラム関連備忘録サイト。主にゲーム。

RPGツクールMV スクリプト

RPGツクールMV – スクリプトで”防具の増減”を行う方法

投稿日:2020年6月3日 更新日:

こんにちは、今日はRPGツクールMVでイベントコマンドの”スクリプト”から、同じくイベントコマンドの”防具の増減”の処理を行う方法についてまとめていきます。

確認環境

RPGツクールMV Version 1.6.2

防具の増減を行うコード

以下のようなコードにてスクリプトで防具の増減が行えます。

増やす

ex) 防具ID1を2つ増やす

$gameParty.gainItem($dataArmors[1], 2);

減らす

ex) 防具ID1を1つ減らす

$gameParty.gainItem($dataArmors[1], -1);

ex) 防具ID1を1つ減らす、所持数が1に満たない場合は装備中の防具も含める

$gameParty.gainItem($dataArmors[1], -1, true);

変数を用いて増減する

ex)防具ID1を変数ID3の値分増減する

$gameParty.gainItem($dataArmors[1], $gameVariables.value(3), true);

コード解説

$gameParty.gainItem関数を使用します。
引数については以下の通りです。

第一引数増減する$dataArmorsを渡します。
[1]の数字部分にその武器のIDを指定します。
第二引数増減する数値を指定します。
第三引数減らす場合にtrueを指定すると、所持防具が減少数より少なかった場合に、装備中の防具も含めて減少処理を行います。

$dataArmorsはjs/rpg_managers.jsの19行目に定義されており、データベースの防具で設定したデータが全て格納されています。

イベントコマンド”防具の増減”で呼び出される関数

イベントコマンド”防具の増減”が実行されるときに呼び出される関数は、js/rpg_objects.jsの9611行目に定義されている以下の関数です。

// Change Armors
Game_Interpreter.prototype.command128 = function() {
    var value = this.operateValue(this._params[1], this._params[2], this._params[3]);
    $gameParty.gainItem($dataArmors[this._params[0]], value, this._params[4]);
    return true;
};

this._paramsに格納されている値はそれぞれ以下の通りです。

インデックス値の内容
0防具ID
1増やす : 0
減らす : 1
2オペランドが定数 : 0
オペランドが変数 : 1
3オペランドが定数の場合 : 増減する数値
オペランドが変数の場合 : 増減に使用する変数ID
4装備品を含む : true
装備品を含まない : false

-RPGツクールMV, スクリプト


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です


reCaptcha の認証期間が終了しました。ページを再読み込みしてください。

関連記事

no image

RPGツクールMVで隊列歩行の変更をスクリプトから行う

イベントコマンドの2ページ目、キャラクター > 隊列歩行の変更…と同様の操作を、イベントコマンドの3ページ目、上級 > スクリプトから行う方法です。 スクリプトコード ON 以下のコードで隊列歩行をを …

no image

RPGツクールMVでレベルの増減をスクリプトから行う

RPGツクールMVでレベルの増減をスクリプトから行う方法についてまとめていきます。 イベントコマンドの1ページ目、アクター > レベルの増減…と同様の操作を、イベントコマンドの3ページ目、上級 > ス …

no image

RPGツクールMVでSEの演奏をスクリプトから行う

RPGツクールMVでSEの演奏をスクリプトから行う方法についてまとめていきます。 イベントコマンドの2ページ目、オーディオ・ビデオ > SEの演奏…と同様の操作を、イベントコマンドの3ページ目、上級 …

no image

RPGツクールMVでBGMの保存をスクリプトから行う

RPGツクールMVでBGMの保存をスクリプトから行う方法についてまとめていきます。 イベントコマンドの2ページ目、オーディオ・ビデオ > BGMの保存…と同様の操作を、イベントコマンドの3ページ目、上 …

no image

RPGツクールMVでコモンイベントをスクリプトから実行する

イベントコマンドの1ページ目、フロー制御 > コモンイベント…と同様の操作を、イベントコマンドの3ページ目、上級 > スクリプトから行う方法です。 スクリプトコード setupChild関数の第一引数 …