3テラバイト

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

RPGツクールMV スクリプト

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

投稿日:2021年2月12日 更新日:

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

確認環境

RPGツクールMV Version 1.6.2

プレイヤーやイベントの位置を取得する

js/rpg_objects.js 9028行目に定義されているGame_Interpreterクラスのcharacter関数を使用します。

引数に数値を渡すと、以下の通りのキャラクターデータが返されます。

  • 0より小さい数値の場合 – プレイヤー
  • 0より大きい数値の場合 – 現在のマップのイベントIDに対応するイベント
  • 0の場合 – このイベント
Game_Interpreter.prototype.character = function(param) {
    if ($gameParty.inBattle()) {
        return null;
    } else if (param < 0) {
        return $gamePlayer;
    } else if (this.isOnCurrentMap()) {
        return $gameMap.event(param > 0 ? param : this._eventId);
    } else {
        return null;
    }
};

上記関数から返ってきたデータのx, yのプロパティにアクセスするとそのキャラクターの位置座標が確認できます。

this.character(-1).x
$gameMap._interpreter.character(17).x;

developer toolsから確認する

developer toolsの方では以下のようなコードでプレイヤーの情報は取得できますが、イベントの情報は同様には取得できません。

$gameMap._interpreter.character(-1);

$gameMap変数からevents関数を呼び出すと、現在のマップにあるイベントのリストが取得できるため、そこから位置を取得したいイベントのデータにアクセスします。

$gameMap.events()

イベントID001のX座標を取得る場合は以下のようなコードで取得できます。

$gameMap.events()[0].x

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


comment

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


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

関連記事

no image

戦闘画面で使用できないスキルを非表示にするRPGツクールMVプラグインHiddenSkillsCannotUseの使い方

戦闘画面でもメニュー画面同様に通常MPが足りない等で使用不可能なスキルも表示自体は行われますが、このプラグインを導入すると使用できないスキルは戦闘画面では非表示になります。 このプラグインはトリアコン …

no image

RPGツクールMV – スクリプトで変数の操作を行う

こんにちは、今日はRPGツクールMVでスクリプトから変数の操作を行う方法についてまとめていきます。 イベントコマンドだと1ページ目、ゲーム進行の変数の操作から行うものです。 確認環境 RPGツクールM …

no image

RPGツクールMVでマップ名表示の変更をスクリプトから行う

こんにちは、今日はRPGツクールMVでマップ名表示の変更をスクリプトから行う方法についてまとめていきます。 イベントコマンドの3ページ目、マップ > マップ名表示の変更…と同様の操作を、イ …

no image

RPGツクールMVでマップの明るさ変更や灯りを設置できるプラグインMPP_MapLightの使い方

本プラグインを導入すると、マップのメモに特定の書式で設定を記述しマップの明るさを変更、指定箇所に灯りの設置が可能です。 確認環境 RPGツクールMV Version 1.6.3MPP_MapLight …

no image

RPGツクールMVで乗り物の画像変更をスクリプトから行う

イベントコマンドの3ページ目、システム設定 > 乗り物の画像変更…と同様の操作を、イベントコマンドの3ページ目、上級 > スクリプトから行う方法です。 スクリプトコード vehicle関数には変更する …