._pageIndexは簡単に言えば現在表示中のイベントページのインデックス番号を保持する為のもので
現在実行中のイベントリストを持つページのインデックス番号を保持している訳ではないので
反映されないのは当然ですね。
本来であればこの二つはイコールですけどCallEventPageで強引に呼び出しているので齟齬が生じています。
そみや さんが書きました:※イベントID:1にて「ページID:5を代入」していますが、この時の値を取得する方法もありますが、
あくまで「 this._eventId 」と同じ方法で取得したいです。
上記の通りイレギュラーが起こっているのでその上で該当する変数、というと
存在しません。
純粋なスクリプトだけでページ番号の取得というと出来なくもなくないですが
普通にCallEventPageの時にpageIndexを控えておいた方が良いと思いますね…
一応自分が思いついたpageIndexの取得方法を載せておきます。
このコードを呼び出すまでに並列処理を混ぜていない事が条件です。
コード: 全て選択
// このコードを書いたコモンイベントを呼び出したイベントのページ番号を逆引きする
let i;
for ( i = $gameMap._interpreter; i._depth < this._depth - 1; i = i._childInterpreter );
const pageIndex = this.character(0).event().pages.findIndex(page => page.list === i._list);
$gameVariables.setValue(1, pageIndex); // ページインデックスを変数一番に格納
listの参照を比較しているだけだから重くはないはず…
でも非常に繊細なので正確な挙動を理解していない限り軽々に使えるものではないですね。