ページ 11

パーティ外にいる指定アクターのステータス画面表示について(解決済み)

Posted: 2016年5月06日(金) 22:40
by まひる
パーティにいない指定のアクターのステータス画面をイベント呼び出しをしたいのですが顔グラフィックが表示されず困っています。

Scene_MenuBase.prototype.updateActor = function() {
if ($gameSwitches.value(1)==true){
this._actor = $gameActors.actor($gameVariables.value(1))
} else {
this._actor = $gameParty.menuActor();
}
};
スイッチ1がONの時、アクターIDを変数1で指定するように再定義し、
イベントコマンドのスクリプトでSceneManager.push(Scene_Status);を実行した場合に
指定アクターのステータス画面は表示されるのですが顔グラフィックが表示されません。
一度ステータス画面を閉じ、再度呼び出すと今度は顔グラフィックが表示されます。
一度目で顔グラフィックを表示させるにはどうすればいいのでしょうか?
どうかご教授していただけないでしょうか。

Re: パーティ外にいる指定アクターのステータス画面表示について

Posted: 2016年5月07日(土) 00:27
by 奏ねこま
顔グラフィック等は、表示する前に一度裏でロードしておかないと
ゲーム起動後1回目は表示されない可能性があります。
そのための処理がWindow_MenuStatusの中にあります。

// rpg_window.js:1727行目

コード: 全て選択

Window_MenuStatus.prototype.loadImages = function() {
    $gameParty.members().forEach(function(actor) {
        ImageManager.loadFace(actor.faceName());
    }, this);
};
上記、デフォルトだとパーティーメンバーの顔画像だけをロードしているので
パーティー外のメンバーの顔画像もロードするように作り変えれば、1回目で表示されると思います。

Re: パーティ外にいる指定アクターのステータス画面表示について

Posted: 2016年5月07日(土) 01:05
by まひる
ご回答ありがとうございます!
ロードして試してみたところ上手く表示できました!
本当にありがとうございました!