3回目の戦績記録よ。未読の方は前回、前々回から読んでね。
そして今回追加する戦歴項目は↓。
- 最大与ダメージ
- 最大被ダメージ
- 敵撃破数
今までの戦闘で最も大きい与えたダメージ&受けたダメージと、撃破してきた敵の累計数を記録するということね。
戦績格納用の可変DBに項目を追加
→項目7:項目名「最大与ダメージ」、設定方法「変数」、初期値「0」
→項目8:項目名「最大被ダメージ」、設定方法「変数」、初期値「0」
→項目9:項目名「敵撃破数」、設定方法「変数」、初期値「0」
可変DBの設定はこれでOKよ。
コモンイベントを改造して戦績を記録する
コモンの改造に入るけど、まず最大ダメージの記録はこれ↓。
「135-X[戦]パラメータ増減」を改造するのよ。戦闘中の敵味方のパラメータを増減させているコモンね。例によって改造はコピーしたコモンで行うわ。
ダメージの値はセルフ変数2番「増減値」に格納されているのだけど、ダメージの場合はマイナスの数値、逆に回復の場合は整数になるの。
記録を取るのはダメージ(マイナスの場合)だけだから、まずは値が負か判別する条件分岐を作る必要があるわね。以下のように入力して頂戴。
→条件分岐:セルフ変数2番が0未満
次はマイナスのダメージ値を整数に変換しましょう。変換用のセルフ変数を新たに追加して……。
→セルフ変数20番に「戦歴記録用」と名前を付ける
このセルフ変数20番に負の値を整数へ変換して格納するわ。「絶対値」という演算子を使うのよ。
→変数操作:セルフ変数20番にセルフ変数2番の絶対値を入力
次にするのは「このダメージ値が与ダメと被ダメのどちらか」の判別よ。セルフ変数0番「対象戦闘スロット」の値で判るわ。
戦闘スロットというのは戦闘処理で使われている可変DBのデータのことで、0~5が味方スタータスで10~16が敵ステータス用のスロットになるの。
※「味方1~4ステータス」までしか名前がついていないけど、基本システムの味方最大数は6人だから0~5で合っているわ。
つまり「対象スロットが5以下=味方へのダメージ」で「対象スロットが10以上=敵へのダメージ」だから、
セルフ変数0番(対象スロット)が5以下が被ダメージで10~16だと与ダメージということね。条件分岐を入力しましょう。
→条件分岐:「セルフ変数0番が5以下、セルフ変数が10以上」を入力
後はこの2つの分岐にそれぞれ可変DB書込を追加すればいいのだけど、記録するのは「今まで最大の値」だから、またまた条件分岐が必要になるわ。条件分岐の入れ子で混乱しそうだけど集中してね。
まずは最大被ダメージ。「セルフ変数0番が5以下」の分岐に、発生したダメージ値が可変DBの値より大きい場合のみ記録するよう、条件分岐とDB書込を追加するわ。
→条件分岐:「セルフ変数20番が可変DB「戦歴」の最大被ダメージより大きい」を入力
→可変DB書込:戦績の最大被ダメージにセルフ変数20番を格納する
※条件分岐の右辺に可変DBを指定するには「数値」を選択して変数呼び出し値を入力して頂戴。今回なら「1121000008」になるわ。
「セルフ変数0番が10以上」の分岐は与ダメージだったわね。同じように条件分岐とDB書込を入力しましょう。
→条件分岐:「セルフ変数20番が可変DB「戦歴」の最大与ダメージより大きい」を入力
→可変DB書込:戦績の最大与ダメージにセルフ変数20番を格納する
最大与ダメージと被ダメージの記録はこれでOKよ。後は敵撃破数の記録ね。
改造対象コモンは「171-X[戦]敵撃破処理」。このコモンで撃破数がカウントできるわ。
入力設定を見ればわかるけど、このコモンはセルフ変数1番「処理モード」で処理が分岐しているの。セルフ変数1番が0が敵撃破、1だと逃走になっているわ。
ということは撃破数をカウントするのは「セルフ変数1番が0と同じ」の分岐になるわね(23行目あたり)。ここにDB書込を追加するだけでOKよ。
→可変DB書込:戦績の敵撃破数+1を入力
コモンの改造は以上よ。それじゃ確認してみましょう。
最大ダメージと敵撃破数が記録されているか確認する
与ダメージが30、被ダメージが7ね。とりあえず撃破はせず逃走して確認してみるわ。
次は「ダメージと回復が判別されているか」を検証しましょう。
ヒールで味方を回復。ダメージ(増減値がマイナス)しか記録されないよう設定したはずだから、
次は「最大ダメージのみ記録されているか」と「撃破数のカウント」を同時に検証するわ。
与ダメージが28、被ダメージが6。いずれも前回の戦闘より小さい値ね。
成功! 与ダメージ被ダメージともに変化なしね。撃破数もちゃんとカウントされているわ。
大丈夫そうね。与ダメ被ダメはちゃんと更新されているし、敵撃破数も加算されて増えているわ。
これで最大ダメージと敵撃破数を記録する改造の解説は以上よ。お疲れ様でした。
※次回で追加するのは多分「総プレイ時間」や「総歩数」になるかしら(「戦績」ではないかもしれないけど)。