【ウディタ】カーソル選択している敵の能力を表示する②

↓前回

レビニアですの。今回は「戦闘中にカーソル選択している敵の能力を表示する方法」を解説するわ。  これが完成例、敵の属性耐性と状態異常耐性を表示させたものよ。テキストのみで味...

続きよー。敵情報を表示させるコモンはできたから、あとはそれを基本システムのコモンから呼び出して実行させるように改造するわ。

コモンイベントを改造してカーソル選択中の敵情報を表示する

コモンを呼び出す場所だけど、対象は前回解説したとおりコモン162番「X[戦]敵対象選択実行」


まずは敵情報を表示させるための処理だけど、これは50行目あたり(キー入力の手前)から呼び出せばいいわ。
→ |■イベントの挿入[名]: [“〇ターゲット情報表示”] <コモンEv 289> / 0:表示 / CSelf12[一時変数A]


「0:表示」モードを指定。敵スロット位置には初期値で設定した変数呼び出し値1600012を指定して、呼出元コモンのセルフ変数12番(敵スロットが入っているんだったわね)の値を渡してあげるのよ。

次は消すためのコモン呼び出し。カーソル選択中に敵情報を表示するということは、カーソル選択していない時は表示を消さないといけないからね。どうすればいいかというと、


次に消去の処理59行目あたりに決定キーを押した場合の分岐67行目あたりにキャンセルキーを押した場合の分岐があるからここで呼び出すのよ。
→ | |■イベントの挿入[名]: [“〇ターゲット情報表示”] <コモンEv 289> / 1:消去 / CSelf12[一時変数A]


決定orキャンセルしたということはカーソル選択を終えたということよね。だから消去モードで呼び出して敵情報の表示を消去してあげるわけ。

これで改造は終了。カーソル選択している敵の情報が表示されるようになったはずよ。

カーソル選択中の敵情報が表示されるか試してみる

それじゃ実際に試してみましょう。今回は例として属性耐性と状態異常耐性を表示するように作成したのだったわね。


テストとして強ゴブリンの耐性値を表示してみましょう。属性耐性を適当にイジって


状態異常耐性もイジって


実勢に戦闘してみたのがこちら。こんな風に各種耐性値が表示されていれば成功よ。

※今回は例だからそっけなくテキストだけ表示させたけど、ウィンドウ枠くらいはつければよかったわね……。まぁそこら辺はお好みで修正して頂戴。

※味方の情報を表示する場合

ちなみに敵じゃなくてカーソル選択している味方の情報を表示するにはどうすればいいかというと、


コモン161番「X[戦]味方対象選択実行」から同じ方法でコモンを呼び出せば可能よ。


味方情報を表示するには43行目(キー入力の手間)から表示モードで呼び出すのよ。
→■イベントの挿入[名]: [“〇ターゲット情報表示”] <コモンEv 289> / 0:表示 / CSelf10[選択箇所]


ただし味方スロットが格納されているセルフ変数は12番じゃなく10番だから、入力値は1600010に変更してね。


消去の処理は49行目と56行目(ループ中断の前)から呼び出してね。
→■イベントの挿入[名]: [“〇ターゲット情報表示”] <コモンEv 289> / 1:消去 / CSelf10[選択箇所]


こちらもスロット位置の指定は1600010を指定してね。


これで敵情報の時と同様に、回復技能などで味方をカーソル選択した際に耐性値を表示することができるようになるわ。

敵情報表示の応用例

という感じで解説は終了。今回は例として耐性値を表示させたけど、もちろん他の敵能力を表示させることだって可能よ。その敵の持っている経験値とかお金とかアイテムとかを表示させてもいいと思うわ。

耐性値をそのまま表示する以外にも、条件分岐をうまく使えば「弱点の属性or状態異常だけを表示させる」みたいなこともできるわね。挑戦してみるといいわ。

あとは……、敵情報表示をスイッチ式にするというやり方。


例えばこんな感じ。
→■条件分岐(変数): 【1】 可変DB(7,29,0)[スカウター 所持個数 ] が 0 と同じ
→-◇分岐: 【1】 [ 可変DB(7,29,0)[スカウター 所持個数 ] が 0 と同じ ]の場合↓
→|■イベント処理中断
→◇分岐終了◇

これは「スカウター」というアイテムを持っている場合のみ敵情報表示を有効にする、という方法ね。

もちろん工夫すればアイテム以外にも、特定の技能を習得しているとか、装備品を装備しているとかをスイッチにすることもできるわね。

使い方はいろいろあるだろうから、好みで応用して活用していただければと思うわ。

コメント

  1. ラッパラ より:

    解説ありがとうございます。
    ウディタでは対象を全体とするパターンもあると思うのですが、全体対象の時に全員分の情報を表示させるのはどうやるのでしょうか・・・?全体対象時、生き残っているエネミーのスロット選択箇所がよくわからず・・・。
    また、味方選択時の対象処理はコモン161でしょうか?味方の情報も表示させたいのですが、パーティ人数によって場所が変わるので、基軸となる座標を算出している箇所がわかれば同じ要領で行ける・・・?と悩んでおります。

  2. レビニア より:

    ラッパラさん

    >全体対象の時に全員分の情報を表示させる
    全体が対象の場合はコモン162がそもそも実行されないので、まったく別の対応が必要になりますね。それに「最大7体分の敵情報をどこに表示するのか」という問題もあります。というかもし敵全員の情報を一括表示するとしたら、私ならカーソル選択中に拘らず「味方コマンド選択中は常に表示させておく」ようにしますね。それなら「戦闘開始時処理」と「1ターン終了時処理」で表示、「1ターン開始時処理」で消去する処理を組むだけで済みますし。

    >味方の情報も表示させたい
    コモン161で合っています。解説に追記したのでやり方はそちらをご参照ください。

  3. ラッパラ より:

    なるなるほど!
    味方の方は解決できました!
    ありがとうございます!!