3テラバイト

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

RPGツクールMV スクリプト

RPGツクールMVで能力値の増減をスクリプトから行う

投稿日:2021年3月29日 更新日:

RPGツクールMVで能力値の増減をスクリプトから行う方法についてまとめていきます。

イベントコマンドの1ページ目、アクター > 能力値の増減と同様の操作を、
イベントコマンドの3ページ目、上級 > スクリプトから行う方法です。

スクリプトコード

iterateActorExを使用する場合

以下のようにthis.iterateActorEx関数を使用して対象アクターを取得、アクタークラスのaddParam関数を使用してスクリプトから能力値の増減を行うことができます。

iterateActorExの第一引数には、第二引数でアクターのIDを固定で指定するか、変数で指定するかを示す値を渡します。(固定の場合は0、変数の場合は1)
第二引数にはアクターのID、または変数のIDを指定します。
第三引数にはfunctionを渡していますが、この関数の引数に対象のアクターが渡されるため、その値を用いて対象アクターに処理を行っていきます。

addParam関数の第一引数にはどのパラメータの操作を行うかを示す値を指定します。
第二引数にはレベルアップを表示するかをtrueまたはfalseで指定します。

以下の例では、パーティ全体の最大HPに10加算しています。

this.iterateActorEx(0, 0, function(actor) {
    actor.addParam(0, 10);
}.bind(this));

第一引数の値と対象のパラメータの対応は以下の通りです。

パラメータ
0最大HP
1最大MP
2攻撃力
3防御力
4魔法力
5魔法防御
6敏捷性
7

iterateActorExを使用しない場合

上記の例は、実際にイベントコマンドで能力値の増減が設定されている場合に使用されている関数ですが、アクター単体であれば以下のようにアクターのデータは$gameActors.actor関数で取得し、取得したアクターのaddParam関数を呼び出すことで能力値の増減を行う方法もあります。

$gameActors.actor関数の引数にはアクターIDを指定します。

$gameActors.actor(1).addParam(0, 10);

イベントコマンドの内容

イベントコマンドの能力値の増減を追加した場合、内部的には以下のようなデータが挿入されており、
js\rpg_objects.jsの10272行目に定義されているcommand317関数が呼び出され、引数にparametersの値が渡されています。

{"code":317,"indent":0,"parameters":[0,0,5,0,0,1]}

parametersの値の内容は以下の通りです。

インデックス内容
[0][1]に格納されている値が固定か変数かを示す値(0 : 固定、1 : 変数)
[1]アクターのID、または変数のID
[2]どの能力値に対して捜査を行うか
0 : 最大HP
1 : 最大MP
2 :攻撃力
3 :防御力
4 :魔法力
5 :魔法防御
6 :敏捷性
7 :運
[3]どの操作を行うかを示す値(0 : 増やす、1 : 減らす)
[4][4]に格納されている値が定数か変数かを示す値(0 : 定数、1 : 変数)
[5]オペランドの定数の値、または変数のID

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


comment

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

関連記事

no image

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

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

no image

エラー画面表示を変更するRPGツクールMVプラグインCustomizeErrorScreenの使い方

このプラグインを導入すると、ゲーム中にエラーが発生した場合に表示される画面の表示が変更できます。 このプラグインはトリアコンタン様が制作されたものです。 確認環境 RPGツクールMV Version …

no image

RPGツクールMV – System.jsonとデータベースの対応表

こんにちは、今日はRPGツクールMVのデータベースで設定できるシステム情報の格納先とエディタ上での設定との対応についてまとめたいと思います。 プロジェクトフォルダ/data/System.json S …

no image

セーブデータを単一にするRPGツクールMVプラグインUseOnlyOneSaveの使い方

このプラグインを導入すると、セーブやロード時にファイルを選択する画面がスキップされ、ファイル1が自動で使用されるようになり、メニューからセーブを行った際には上の画像のようなセーブ完了の旨を知らせるウィ …

no image

RPGツクールMVでスクリプトからプレイヤーやイベントの位置を取得する

こんにちは、今日はRPGツクールMVでスクリプトからプレイヤーやイベントの位置を取得する方法についてまとめていきます。 確認環境 RPGツクールMV Version 1.6.2 プレイヤーやイベントの …