行 |
処理内容 |
4 |
▼ 戦闘中フラグをオンに |
5 |
可変DB[18:基本システム用変数]のデータ[68:[戦闘]戦闘中フラグ]に「1」を設定。
この設定により、コモンイベント[004:○回復・ダメージ処理]などの処理が戦闘用の処理になります。 |
9-13 |
▼ 現在のBGMを保存する |
現在演奏されているBGMを記憶し、戦闘終了後に再び同じBGMを演奏する時に使います。 |
15 |
▼ 戦闘曲を再生 |
17-21 |
■条件分岐(変数): 【1】 CSelf3[戦闘BGM] が -1 と同じ |
BGMを演奏しない場合は分岐。 |
|
19-21 |
▼ BGM停止 |
BGMの演奏と止めます。 |
23-27 |
◇分岐: 【2】 [ CSelf3[戦闘BGM] が -2 以下 ]の場合↓ |
ユーザーDB[17:システム設定]の項目[26:[戦闘]基本戦闘BGM]に設定されている
BGMを演奏する場合は分岐。 |
|
24-27 |
▼ デフォルト曲の場合 |
ユーザーDB[17:システム設定]の項目[26:[戦闘]基本戦闘BGM]から
BGM用のファイルアドレスを取得し、演奏。 |
29-31 |
◇上記以外 |
指定したBGMがある場合は分岐。 |
|
30-31 |
▼ 指定BGMを再生 |
システムDB[1:BGMリスト]のデータID(セルフ[3])のBGMを演奏。 |
36 |
可変DB[18:基本システム用変数]のデータ[72:[戦闘]敵グループ番号]に敵グループIDを設定し、
コモンイベント[172:X[戦]敵/味方・勝敗判定]や
コモンイベント[190:X┣◆戦闘キャラ配置]で敵グループIDが取得できるようにします。 |
37-38 |
システム変数[59][60]を「1」にして、キーの押し続けにも対応させます。
【システム変数[59][60]の説明を見る】 |
39 |
コモンイベント[049:X[共]システムSE再生]を呼び出し、戦闘開始を演奏。 |
40 |
コモンイベント[067:X[共]全体エフェクト実行]を呼び出し、白フラッシュの演出。 |
41 |
コモンイベント[189:X┣◆戦闘初期化]を呼び出し、
戦闘背景の表示や戦闘で使う可変DB[10〜15]の初期化処理などを実行。
|
42 |
コモンイベント[190:X┣◆戦闘キャラ配置]を呼び出し、敵キャラを表示。 |
43 |
コモンイベント[203:○[変更可]戦闘開始時処理]を呼び出し、
戦闘開始時に制作者が設定したオリジナルのイベントを実行。 |
45 |
コモンイベント[172:X[戦]敵/味方・勝敗判定]を呼び出し、戦闘終了を確認。 |
46-50 |
■条件分岐(変数): 【1】 CSelf20[終了判定] が 0 以外 |
パーティや敵グループに誰も居ない、勝敗を決める残りターン数が「0」など、
戦闘が終了する条件である場合は分岐。
|
|
48 |
●ラベル「戦闘終了処理」に飛ぶ >>>>>>>>>>>>>>>>>>>>>>>>> |
174行目にジャンプし、戦闘終了の処理を実行。 |
51 |
セルフ[18]に「1」を設定し、戦闘開始時に[戦闘]or[逃走]の選択肢を表示する。 |
52-173 |
■ループ開始 |
戦闘中はループし続ける。 |
|
53 |
▼ 逃走不能(セルフ1=1)なら、「戦闘・逃走コマンド」を出さない。 |
|
54 |
コモンイベント[191:X┣◆行動内容のセット]を呼び出し、
[戦闘]or[逃走]の選択や主人公ごとの行動内容を決定する処理を実行。 |
|
55 |
セルフ[18]に「0」を設定し、次のターン開始時時に[戦闘]or[逃走]の選択肢が出ないようにします。 |
|
56-62 |
■条件分岐(変数): 【1】 CSelf19[逃走?終了?] が 1 と同じ |
逃走を実行した場合は分岐。 |
|
|
58 |
▼ 逃走処理の場合 |
|
|
59 |
●ラベル「逃走処理」に飛ぶ >>>>>>>>>>>>>>>>>>>>>>>>> |
188行目へジャンプし、逃走の処理を実行します。 |
|
|
60 |
●ラベル地点「逃走戻り」 <<<<<<<<<<<<<<<<<<<<<<<<★ |
逃走失敗した時に、224行目からここへジャンプしてきます。 |
|
|
61 |
コモンイベント[191:X┣◆行動内容のセット]を呼び出し、
敵キャラの行動のみを設定。 |
|
|
62 |
セルフ[18]に「1」を設定し、次のターン開始時時に[戦闘]or[逃走]の選択肢が出るようにします。 |
|
64-67 |
◇分岐: 【2】 [ CSelf19[逃走?終了?] が 10 と同じ ]の場合↓ |
主人公の行動選択中に戦闘が終了した場合は分岐。 |
|
|
65-66 |
▼ 戦闘終了の場合 |
コモンイベント[172:X[戦]敵/味方・勝敗判定]を呼び出し、
[戦闘]or[逃走]の判定をセルフ[20]に設定。 |
|
|
67 |
【ループ中断】を実行し、174行目へ移行。 |
|
70 |
コモンイベント[194:X┣◆行動順の計算]を呼び出し、
主人公と敵キャラの双方の敏捷性を調べて、行動を行う順番を決定し、
可変DB[14:×┣ コマンド処理リスト]に行動順を登録。 |
|
71 |
コモンイベント[204:○[変更可]1ターン開始時処理]を呼び出し、
制作者が設定したオリジナルのイベントを実行。 |
|
73 |
コモンイベント[172:X[戦]敵/味方・勝敗判定]を呼び出し、
戦闘が終了しているかどうかをセルフ[20]に取得。 |
|
74-78 |
■条件分岐(変数): 【1】 CSelf20[終了判定] が 0 以外 |
戦闘が終了している場合は分岐。 |
|
|
76 |
●ラベル「戦闘終了処理」に飛ぶ >>>>>>>>>>>>>>>>>>>>>>>>> |
174行目にジャンプし、戦闘終了の処理を実行。 |
|
80 |
▼ 1ターン開始時処理を反映するためのパラメータ更新処理 |
|
83-96 |
■回数付きループ [ CSelf23[繰り返し回数] ]回 |
パーティの人数だけループし、主人公1人ずつ処理。 |
|
|
84 |
▼ 全員更新 |
|
|
85 |
コモンイベント[141:X[戦]スロットから主人公ID取得]を呼び出し、
スロットから主人公IDをセルフ[11]に取得。 |
|
|
87-94 |
■条件分岐(変数): 【1】 CSelf11 が 0 以上 |
主人公IDがある場合は分岐。 |
|
|
|
89-92 |
▼ キャラがいる場合だけ処理 |
コモンイベント[146〜148]を呼び出し、
可変DB[10:×┏ 戦闘一時ステータス[基]]などを更新。 |
|
100-113 |
■回数付きループ [ CSelf23[繰り返し回数] ]回 |
敵キャラの最大出現数の数だけループし、敵キャラを1体ずつ処理。 |
|
|
101 |
▼ 全員更新 |
|
|
103 |
コモンイベント[141:X[戦]スロットから主人公ID取得]を呼び出し、
スロットから敵キャラID(ユーザーDB[9:敵キャラ個体データ]+10000)をセルフ[11]に取得。 |
|
|
104-111 |
■条件分岐(変数): 【1】 CSelf11 が 0 以上 |
敵キャラIDがある場合は分岐。 |
|
|
|
106-109 |
▼ キャラがいる場合だけ処理 |
コモンイベント[146〜148]を呼び出し、
可変DB[10:×┏ 戦闘一時ステータス[基]]などを更新。 |
|
116 |
コモンイベント[195:X┣◆1ターンの処理を実行]を呼び出し、
ターンの処理(主人公と敵キャラの行動処理)を実行します。
全ての主人公と敵キャラの行動が終わったら、処理ここへが戻ってくる。 |
|
117 |
コモンイベント[198:X┣◆ターン終了処理]を呼び出し、
毒状態によるHP減少や敵の変身などを処理。 |
|
118 |
コモンイベント[205:○[変更可]1ターン終了時処理]を呼び出し、
制作者が設定したオリジナルのイベントを実行。 |
|
120 |
コモンイベント[172:X[戦]敵/味方・勝敗判定]を呼び出し、
戦闘が終了しているかどうかをセルフ[20]に取得。 |
|
121-125 |
■条件分岐(変数): 【1】 CSelf20[終了判定] が 0 以外 |
戦闘が終了している場合は分岐。 |
|
|
123 |
●ラベル「戦闘終了処理」に飛ぶ >>>>>>>>>>>>>>>>>>>>>>>>> |
174行目にジャンプし、戦闘終了の処理を実行。 |
|
127 |
▼ 1ターン終了時処理を反映するためのパラメータ更新処理 |
|
130-143 |
■回数付きループ [ CSelf23[繰り返し回数] ]回 |
パーティの人数だけループし、主人公1人ずつ処理。 |
|
|
131 |
▼ 全員更新 |
|
|
133 |
コモンイベント[141:X[戦]スロットから主人公ID取得]を呼び出し、
スロットから主人公IDをセルフ[11]に取得。 |
|
|
134-141 |
■条件分岐(変数): 【1】 CSelf11 が 0 以上 |
主人公IDがある場合は分岐。 |
|
|
|
136-139 |
▼ キャラがいる場合だけ処理 |
コモンイベント[146〜148]を呼び出し、
可変DB[10:×┏ 戦闘一時ステータス[基]]などを更新。 |
|
147-160 |
■回数付きループ [ CSelf23[繰り返し回数] ]回 |
敵キャラの最大出現数の数だけループし、敵キャラを1体ずつ処理。 |
|
|
148 |
▼ 全員更新 |
|
|
150 |
コモンイベント[141:X[戦]スロットから主人公ID取得]を呼び出し、
スロットから敵キャラID(ユーザーDB[9:敵キャラ個体データ]+10000)をセルフ[11]に取得。 |
|
|
151-158 |
■条件分岐(変数): 【1】 CSelf11 が 0 以上 |
敵キャラIDがある場合は分岐。 |
|
|
|
153-156 |
▼ キャラがいる場合だけ処理 |
コモンイベント[146〜148]を呼び出し、
可変DB[10:×┏ 戦闘一時ステータス[基]]などを更新。 |
|
163 |
▼ 戦闘終了判定 |
|
164 |
コモンイベント[172:X[戦]敵/味方・勝敗判定]を呼び出し、
戦闘が終了しているかどうかをセルフ[20]に取得。 |
|
165-169 |
■条件分岐(変数): 【1】 CSelf20[終了判定] が 0 以外 |
戦闘が終了している場合は分岐。 |
|
|
167 |
【ループ中断】を実行し、174行目へ移行。 |
|
170-171 |
▼ ターン初回フラグを1にする |
可変DB[18:基本システム用変数]のデータ[32:[システム]ターン開始初回?]に「1」を設定。 |
このデータ[32:[システム]ターン開始初回?]は、メニュー画面の「システム設定」にある
「戦闘時 自動連打」の設定を「連打 停止」にした時に使用されます。
「連打 停止」を設定した場合、ターン進行中に決定キーを押し続けて、次のターンが始まった時に、
コモンイベント[192:X┃┣◆味方コマンド選択]の中にある
「一度決定キーを離さないと処理が進まない」と言った処理が有効になります。 |
174 |
●ラベル地点「戦闘終了処理」 <<<<<<<<<<<<<<<<<<<<<<<<★ |
戦闘が終了した場合、ここへジャンプしてくる。 |
175 |
コモンイベント[199:X┣◆主人公DB復元]を呼び出し、
戦闘用の可変DBに一時保存されていたHPやSP、
状態異常などのデータを移動時に使用する可変DBへ複製します。 |
176 |
コモンイベント[200:X┣◆戦利品獲得処理]を呼び出し、
経験値、お金、アイテムの獲得情報を表示。
▼表示例
|
177 |
コモンイベント[201:X┗◆戦闘終了処理]を呼び出し、
主人公のステータス画面や敵キャラの画像を消去し、ユーザーDB[17:システム設定]の
項目[20:戦闘後のHP・SPの扱い]や項目[21:移動時の戦闘不能の扱い]の設定により、
HPやSPを回復させたり、戦闘不能の主人公を回復させたりします。
|
178-179 |
▼ 戦闘中フラグをオフに |
可変DB[18:基本システム用変数]のデータ[68:[戦闘]戦闘中フラグ]に「0」を設定。
この設定により、コモンイベント[004:○回復・ダメージ処理]などの処理が移動用の処理になります。
|
180-181 |
▼ 戦闘終了後処理 |
コモンイベント[206:○[変更可]戦闘終了後処理]を呼び出し、
戦闘用の画像が全て消えて、移動画面に戻った後に、
制作者が設定したオリジナルのイベントを実行します。
|
182-183 |
▼ 勝敗結果を格納して終了 |
セルフ[95]にセルフ[20]を設定し、呼び出し元のコモンイベントに戦闘結果を返します。 |
184-186 |
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ 逃走処理の判定
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ |
187-228 |
■回数付きループ [ 0 ]回 |
逃走を実行した時、188行目にジャンプしてくる。 |
|
188 |
●ラベル地点「逃走処理」 <<<<<<<<<<<<<<<<<<<<<<<<★ |
逃走を実行した時に、59行目からジャンプしてくる。 |
|
189 |
▼ 確率判定 |
|
190 |
ユーザーDB[13:敵グループ]の項目[11:逃走成功率[%]]をセルフ[22]に取得。 |
|
191 |
セルフ[22]に「減算0〜99」を設定。 |
仮に項目[11:逃走成功率[%]]が「60」の場合は、「減算0〜99」でセルフ[22]は「-39〜60」になる。 |
|
192-217 |
■条件分岐(変数): 【1】 CSelf22[逃走可能確率] が 1 以上 |
逃走が成功した場合は分岐。 |
|
|
194-195 |
▼ 逃走に成功したら戦利品を全部失う |
可変DB[15:×┗ お宝リスト]を初期化して、戦利品データを無くす。 |
|
|
196 |
▼ 逃走エフェクト |
|
|
199-213 |
■回数付きループ [ CSelf23[繰り返し回数] ]回 |
パーティの人数だけループし、主人公1人ずつ処理。 |
|
|
|
200 |
▼ 行動セット |
|
|
|
202 |
コモンイベント[141:X[戦]スロットから主人公ID取得]を呼び出し、
スロットから主人公IDをセルフ[11]に取得。 |
|
|
|
203-207 |
■条件分岐(変数): 【1】 CSelf11 が -1 と同じ |
主人公IDが存在しない場合は分岐。 |
|
|
|
|
205 |
【ループ開始へ戻る】を実行し、199行目へ戻る。 |
|
|
|
208-210 |
▼ キャラがいる場合は逃走エフェクト |
コモンイベント[174:X[戦]味方欄_座標算出]を呼び出してステータス画面の位置を取得し、
コモンイベント[178:X[戦]味方欄_単体描画]で逃走時の演出を表示。 |
|
|
215-216 |
▼ 逃走の勝敗結果は0を格納 |
セルフ[95]に「0(逃走)」を設定。 |
|
|
217 |
●ラベル「戦闘終了処理」に飛ぶ >>>>>>>>>>>>>>>>>>>>>>>>> |
174行目にジャンプし、戦闘終了の処理を実行。 |
|
219-224 |
◇上記以外 |
逃走が失敗した場合は分岐。 |
|
|
220 |
▼ 逃走失敗時 |
|
|
221-223 |
ユーザーDB[15:用語設定]の項目[31:[戦闘] 逃走コマンド名]をセルフ[7]に取得し、
「に失敗した!」の文字列を足して、
コモンイベント[182:X[戦]戦闘メッセージ表示]を使って表示。 |
|
|
224 |
●ラベル「逃走戻り」に飛ぶ >>>>>>>>>>>>>>>>>>>>>>>>> |
60行目にジャンプし、今回のターン処理では、敵キャラだけが行動を行うようにする。 |
229-231 |
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ 音楽を戻す
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ |
233-238 |
■条件分岐(変数): 【1】 CSelf25[記憶BGM番号] が -1 以下 |
戦闘開始前のBGMがファイル名を指定している場合は分岐。 |
|
235-238 |
▼ 名前入力で音声読んでる場合はこちら |
指定したファイルでBGMを演奏。 |
240-242 |
◇上記以外 |
戦闘開始前のBGMがシステムDB[1:BGMリスト]のデータIDを指定している場合は分岐。 |
|
241-242 |
▼ システムDBから音声読んでる場合はこちらで |
指定したシステムDB[1:BGMリスト]のデータIDでBGMを演奏。 |
246-260 |
■条件分岐(変数): 【1】 CSelf2[敗北時の処理] が 0 と同じ
■条件分岐(変数): 【1】 CSelf95[勝敗結果] が -1 と同じ |
敗北時の処理が「ゲームオーバー」の場合は分岐し、
勝敗結果が「-1(敗北)」の場合はさらに分岐。 |
|
249 |
▼ 負けてて、必要ならゲームオーバーイベントを呼び出す |
|
251-256 |
■条件分岐(変数): 【1】 CSelf30[ゲームオーバEv] が 0 以上 |
ユーザーDB[17:システム設定]の項目[30:[戦闘]ゲームオーバー時のEv]に
ゲームオーバー時に呼び出すコモンイベントIDの設定がある場合は分岐。 |
|
|
253-254 |
指定したゲームオーバー用のコモンイベントを呼び出す。 |