戦闘シーンのウィンドウを調べてみた

 戦闘シーンの処理についてはバトル周りを調べてみた続・バトル周りを調べてみたで調べました。
 しかし表示部分については全然触れていなかったので、今回はウィンドウについて調べてみようと思います。
 またデバッグ用など、その他のウィンドウについても書きます。

戦闘ウィンドウです(笑)

Scene_Battle

 イベントコマンド [戦闘の処理]を実行すると出てくるシーンです。もちろん、ランダムエンカウントや[戦闘テスト]でも出てきます。

継承関係: Scene_Base Scene_Battle

 ちょっと意外なのが、Scene_MenuBase から継承されたシーンではなく、Scene_Base から継承しているところです。
 戦闘シーンはかなり特殊処理が多いので、下手に機能があるクラスを使うよりプレーンなところから拡張したほうが作りやすい、という面はあると思います。

 この「オークが出現!」は、Window_Message です。
 [敵グループ]の[バトルイベント]で[文章の表示]イベントコマンドを使った場合も、このウィンドウが使われます。
 [文章のスクロール表示]のWindow_ScrollText も用意されていますし、基本的にはマップの時と同じノリで、コマンドが使えるのが良いですね。

パーティコマンド

 さて戦闘シーンに入って最初に表示されるコマンドウィンドウがWindow_PartyCommand
 さっき出た「オークが出現!」のウィンドウもいちいちボタン押させるのがウザかったのですが、このウィンドウも逃げるかどうか判断させるだけのコマンドで、かなりウザい。
 全体的にRPGツクールMVは、無駄にボタン押させる傾向があります。

 そして右隣にあるのが、Window_BattleStatus

Window_ActorCommand

 左のコマンドウィンドウが、Window_ActorCommand
 右が、Window_BattleEnemy
 Window_BattleEnemy は[スキル]や[アイテム]で敵を選択する場合も使われます。

 上が、Window_Help
 中央のウィンドウが、Window_BattleSkill
 下は、Window_ActorCommandWindow_BattleStatus

 回復など味方を選択する必要がある場合、左に Window_BattleActor が出てきます。
 これ、素直にステータス表示と同じ場所に表示したほうが良かったんじゃないかなー。せめて下のステータス表示は消したほうが良かったんじゃないかなー、と思います。

 上が、Window_Help
 中央のウィンドウが、Window_BattleItem
 下は、Window_ActorCommandWindow_BattleStatus

 上の枠なしのやつが、Window_BattleLog
 こういう戦闘状態の表示の仕方、ちょっと珍しい気がするんですが、なんか有名RPGでやってましたっけ?
 大抵は使ったスキルやアイテムの名前が出るくらいで、結果はアニメーションや敵・味方に直接数字が表示されることで表されていると思います。
 RPGツクールMVの場合、この戦闘ログと敵の画像の部分とにダメージ表示がされ、なんとも不思議な状態になってます。片方でいいでしょ。
 オンラインゲームでログが出てくるのは珍しくないけど、1行動ごとにログが消されるという動きは、見た記憶がありません。
 と思って調べてみたらドラゴンクエストのⅡ〜Ⅵぐらいまでがやってました。

Scene_Debug

 テストプレイ中にF9キーを押して出てくるデバッグウィンドウです。

継承関係: Scene_MenuBase Scene_Debug

 左が、Window_DebugRange
 右上が、Window_DebugEdit
 右下が、Window_Base
 ちょっと意外ですが、右下は Window_Help じゃないんですね。
 よく考えたら Window_Help は横幅いっぱいのウィンドウなので、ここには使えませんね。

まとめなど

 あと画像出してない Window_MapNameWindow_ScrollText については、特に画像出さなくてもわかりますね。
 機能も情報表示ウィンドウを調べてみた のページで調べてますし。

 戦闘は真面目に作り込もうとすると、全とっかえが発生するパートかと思います。
 ので、汎用的なシステムにしようとせずに、シンプルだけど使い勝手のいいパーツを提供する、というノリで作って欲しかったなー。

 でも、かなり多くのRPGツクールMV作品で、戦闘シーンのUIはバッキバキにカスタマイズされてて、びっくりです!

 そこで結論。

書き換えづらそうなのに、みんなよく頑張るな!!