https://fungamemake.com/archives/15507
上記のサイトを参考に、闘技場のようなイベントを作成しているのですが、
途中スクリプトでアクターステータスウィンドウを非表示にする部分で
プラグイン「FTKR_CSS_BattleStatus」を使用しているためかと思うのですが非表示になりません。
(プラグインなしであれば非表示になります)
FTKR_CSS_BattleStatusを使用しながら非表示にする方法が分かれば教えていただきたいのですが、
どなか分かる方はいませんか?よろしくお願いします。
【解決済み】プラグイン「FTKR_CSS_BattleStatus」で、戦闘中一時的にステータスウィンドウを非表示にしたい。
【解決済み】プラグイン「FTKR_CSS_BattleStatus」で、戦闘中一時的にステータスウィンドウを非表示にしたい。
最後に編集したユーザー なっぱ [ 2024年10月29日(火) 18:41 ], 累計 1 回
-
- 記事: 752
- 登録日時: 2018年12月23日(日) 13:55
Re: プラグイン「FTKR_CSS_BattleStatus」で、戦闘中一時的にステータスウィンドウを非表示にしたい。
こんにちは。
FTKR_FVActorAnimation によって、顔画像やカスタム画像へのアニメーション表示が有効だと、
アクター選択ウィンドウ、エネミー選択ウィンドウ、メッセージウィンドウ
のいずれかが表示されている場合を除いて、常にステータスウィンドウを表示するようになっているようです。
FTKR_CSS_BattleStatus を OFF にして、正常にステータスウィンドウを非表示にできるのは、
OFF になることで、顔グラフィックの表示が無くなって、
FTKR_FVActorAnimation の機能が使用できなくなるからだと思われます。
アクターウィンドウを閉じられるようにするためには、
FTKR_FVActorAnimation.js を編集する必要があります。
FTKR_FVActorAnimation.js ファイルのバックアップを取ってから、
JavaScript を編集できるソフトで FTKR_FVActorAnimation.js ファイルを開き、
以下の編集を行ってください。
ステータスウィンドウを非表示にするスクリプトとして、
を記入してください。
これで、ステータスウィンドウを非表示にすることができるかと思います。
以上、ご確認ください。
原因は、FTKR_CSS_BattleStatus ではなく、FTKR_FVActorAnimation の方にあるようで、なっぱ さんが書きました:https://fungamemake.com/archives/15507
上記のサイトを参考に、闘技場のようなイベントを作成しているのですが、
途中スクリプトでアクターステータスウィンドウを非表示にする部分で
プラグイン「FTKR_CSS_BattleStatus」を使用しているためかと思うのですが非表示になりません。
(プラグインなしであれば非表示になります)
FTKR_CSS_BattleStatusを使用しながら非表示にする方法が分かれば教えていただきたいのですが、
どなか分かる方はいませんか?よろしくお願いします。
FTKR_FVActorAnimation によって、顔画像やカスタム画像へのアニメーション表示が有効だと、
アクター選択ウィンドウ、エネミー選択ウィンドウ、メッセージウィンドウ
のいずれかが表示されている場合を除いて、常にステータスウィンドウを表示するようになっているようです。
FTKR_CSS_BattleStatus を OFF にして、正常にステータスウィンドウを非表示にできるのは、
OFF になることで、顔グラフィックの表示が無くなって、
FTKR_FVActorAnimation の機能が使用できなくなるからだと思われます。
アクターウィンドウを閉じられるようにするためには、
FTKR_FVActorAnimation.js を編集する必要があります。
FTKR_FVActorAnimation.js ファイルのバックアップを取ってから、
JavaScript を編集できるソフトで FTKR_FVActorAnimation.js ファイルを開き、
以下の編集を行ってください。
- 455 行目あたりに、
Scene_Battle.prototype.createStatusWindow
というメソッドが定義されている部分があるはずなので、
その前に、以下のコードを追加する。コード: 全て選択
var _FAA_Scene_Battle_initialize = Scene_Battle.prototype.initialize; Scene_Battle.prototype.initialize = function() { _FAA_Scene_Battle_initialize.apply(this, arguments); this._statusWindowPermanentHide = false; };
- 上記をコードを追加すると、476 行目あたりから、
Scene_Battle.prototype.updateWindowPositions というメソッドが始まっているはずなので、
内容を以下のコードに変更する。コード: 全て選択
Scene_Battle.prototype.updateWindowPositions = function() { if (this._statusWindowPermanentHide || this._actorWindow.visible || this._enemyWindow.visible || $gameMessage.isBusy()) { this._statusWindow.hide(); } else { this._statusWindow.show(); } _FAA_Scene_Battle_updateWindowPositions.call(this); };
- 上記メソッドの後ろに、以下のコードを追加する。
コード: 全て選択
Scene_Battle.prototype.setStatusWindowPermanentHide = function(flag) { this._statusWindowPermanentHide = flag; if (flag) { this._statusWindow.hide(); } else { this._statusWindow.show(); } };
ステータスウィンドウを非表示にするスクリプトとして、
コード: 全て選択
SceneManager._scene.setStatusWindowPermanentHide(true);
これで、ステータスウィンドウを非表示にすることができるかと思います。
以上、ご確認ください。
Re: プラグイン「FTKR_CSS_BattleStatus」で、戦闘中一時的にステータスウィンドウを非表示にしたい。
無事非表示にできることが確認できました。ありがとうございました!