| 行 |
処理内容 |
| 22-24 |
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ パラメータ設定
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ |
ここから先のウィンドウのサイズなどの設定値は、
ゲーム画面のサイズ[320×240[x2]]の時の値になります。
[320×240[x2]]以外のゲーム画面のサイズである場合は、
セルフ[86〜87]を使って現在のゲーム画面のサイズに合わせた値に補正されます。 |
| 25-26 |
▼ 固定値を設定 |
| セルフ[20]に「12000(使用するピクチャ番号の最小値)」を設定。 |
| 27-33 |
▼ 読み込み先のDB番号をセット(セーブデータから読む都合、名前呼び出しができないため) |
| 可変DBのタイプIDや項目IDをセルフ[80-85]に設定。 |
| 34-39 |
▼ 基本パラメータを呼び出し |
| データベースからフォントサイズやウィンドウの画像ファイルアドレスを取得。 |
| 40-42 |
▼ Ver2.20 座標倍率を縦横別に修正 |
| ゲーム画面のサイズ[320×240[x2]]の横縦を「10」にした時のゲーム画面のサイズを設定。 |
| 44-45 |
セーブ画面の最大ページ数と1画面のセーブ表示数をセルフ[26〜27]に取得。 |
| 47 |
1つのセーブデータの表示で使うピクチャの使用枚数をセルフ[55]に設定。 |
実際には1つのセーブデータの表示で「16枚」を使用していますが、
分かりやすさや追加設定を考慮して、1つのセーブデータにつき「20枚使用」としています。 |
| 48-55 |
ここでセルフ[72]に設定した値は何も使用されていません。 |
| 56-58 |
▼ ウィンドウ用パラメータ |
| セーブデータの1行目の表示位置をセルフ[22〜23]に設定。 |
| 59-61 |
▼ このサイズは、セーブデータ一個分の表示サイズ |
| 1つのセーブデータのウィンドウのサイズをセルフ[24〜25]に設定。 |
| 62-71 |
▼ セーブデータ内の各項目のシフト位置 |
| セーブデータのウィンドウ内に表示するピクチャの表示位置をセルフ[70〜79]に設定。 |
| 72-76 |
▼ 説明メッセージ欄 |
| 画面上部の説明用ウィンドウの表示位置と表示サイズをセルフ[30〜33]に設定。 |
| 77-80 |
▼ カーソル位置 |
| ページを切り替えが可能である事を示す左右の▲の表示位置をセルフ[56〜58]に設定。 |
| 81-106 |
▼ 最後に座標倍率をかける |
| 現在のゲーム画面のサイズを合わせて表示位置やサイズを補正。 |
| 108-110 |
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ ここから実処理開始
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ |
| 111-127 |
■条件分岐(変数): 【1】 CSelf0[処理モード] が -1 と同じ |
| 処理モードが「消去」の場合は分岐。 |
| |
113-118 |
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ 「消去」モード
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ 下地だけは単体で消去 |
| 背景画像を消去。 |
| |
119-126 |
▼ それ以外は右にスライド消去 |
| ゲーム画面の横サイズと同じ移動距離で右にスライドでピクチャを移動させ、消去する。 |
| |
127 |
【イベント処理中断】を実行。 |
| 130-557 |
■条件分岐(変数): 【1】 CSelf0[処理モード] が 0 以上
■条件分岐(変数): 【1】 CSelf0[処理モード] が 2 以下 |
| 処理モードが「表示(セーブ)/ページ変更」「表示(ロード)/ページ変更」「ページ変更」の場合は分岐。 |
| |
134-136 |
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ 「表示」モード
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ |
| |
137-140 |
■条件分岐(変数): 【1】 CSelf0[処理モード] が 1 以下 |
| 処理モードが「表示(セーブ)/ページ変更」「表示(ロード)/ページ変更」の場合は分岐。 |
| |
|
139 |
セルフ[49]に「1(初期表示(スライド移動などを実行))」を設定。 |
| |
|
140 |
セルフ[99]に「-1」を設定し、ページ切り替え(画面右からスライド表示)が実行するように設定。 |
| |
142-143 |
◇分岐: 【2】 [ CSelf0[処理モード] が 2 と同じ ]の場合↓ |
| 処理モードが「ページ変更」の場合は分岐。 |
| |
|
143 |
セルフ[49]に「0(既に表示済み)」を設定。 |
| |
146-154 |
■回数付きループ [ CSelf49[初期表示フラグ] ]回 |
| 処理モードが「表示(セーブ)/ページ変更」「表示(ロード)/ページ変更」の場合は分岐。 |
| |
|
148-154 |
▼ 下地 |
| ピクチャ番号[12000]で背景画像を「<GRADY-779-111>」で表示。 |
| |
155-177 |
■回数付きループ [ CSelf49[初期表示フラグ] ]回 |
| 処理モードが「表示(セーブ)/ページ変更」「表示(ロード)/ページ変更」の場合は分岐。 |
| |
|
156-160 |
▼ 上部 セーブ or ロード説明
▼ ウィンドウを表示 |
| 画面上部の説明用ウィンドウをピクチャ[12001]で表示。 |
| |
|
161 |
▼ 文章を表示 |
| |
|
163-165 |
■条件分岐(変数): 【1】 CSelf0[処理モード] が 0 と同じ |
| 処理モードが「表示(セーブ)/ページ変更」の場合は分岐。 |
| |
|
|
165 |
ユーザーDB[15:用語設定]の項目[27:[セーブ]セーブ時メッセージ]から
「セーブしたいデータを選んで下さい。」の文字列をセルフ[6]に取得。 |
| |
|
167-166 |
◇分岐: 【2】 [ CSelf0[処理モード] が 1 と同じ ]の場合↓ |
| 処理モードが「表示(ロード)/ページ変更」の場合は分岐。 |
| |
|
|
166 |
ユーザーDB[15:用語設定]の項目[28:[セーブ]ロード時メッセージ]から
「ロードしたいデータを選んで下さい。」の文字列をセルフ[6]に取得。 |
| |
|
171-175 |
画面上部の説明用文字列をウィンドウの中心にピクチャ[12002]で表示。 |
| |
179-516 |
■回数付きループ [ CSelf27[1ページセーブデータ数] ]回 |
| 画面上に表示する4つのセーブデータを1つずつ表示。 |
| |
|
181-183 |
■チェックポイント■■■■■■■■■■■■■■■■■■■■■■■■
▼ セーブデータ一個分の表示
▼ まずアニメーションの表示元位置のシフト量を算出 |
| |
|
185-188 |
■条件分岐(変数): 【1】 CSelf99[最終表示ページ番号] が CSelf2[ページ位置]
未満 |
| 次のページを表示する場合は分岐。 |
| |
|
|
187-188 |
▼ ページ数が増えた場合は、右から表示 |
| セルフ[48]に「32×セルフ[86]」を設定。 |
| |
|
190-192 |
◇分岐: 【2】 [ CSelf99[最終表示ページ番号] が CSelf2[ページ位置] 超 ]の場合↓ |
| 前のページを表示する場合は分岐。 |
| |
|
|
191-192 |
▼ ページ数が減った場合は、左から表示 |
| セルフ[48]に「-32×セルフ[86]」を設定。 |
| |
|
195-198 |
▼ ディレイフレームを計算 |
スライド移動の実行タイミング(発動ディレイ)をセルフ[96〜98]に設定。
セーブデータの行数が増える度に、実行タイミングを2フレームずつずらす。 |
| |
|
199-207 |
▼ まずウィンドウ表示 |
セーブデータのウィンドウを表示。
ピクチャ番号は1行目は「12050」で、行が増えるごとに「+20」になる。 |
| |
|
209-215 |
▼ 表示エフェクト |
| セーブデータのウィンドウをスライド移動。 |
| |
|
218-222 |
▼ カーソル用ウィンドウ画像を表示 |
セーブデータの選択時に点滅する画像を「表示形式:加算」「カラー:R0、G0、B0」で表示。
ピクチャ番号は1行目は「12051」で、行が増えるごとに「+20」になる。 |
| |
|
224-225 |
表示するセーブデータのセーブ番号をセルフ[50]に設定。 |
| |
|
226-232 |
▼ データ番号を表示 |
データ番号を表示。
ピクチャ番号は1行目は「12052」で、行が増えるごとに「+20」になる。 |
| |
|
234-240 |
▼ 表示エフェクト |
| データ番号の画像をスライド移動。 |
| |
|
244-255 |
▼ Ver3.30修正 文字列でセーブデータ名を指定するように
▼ セーブデータ処理で文字列変数を指定すると、そのファイル名で読み書きが可能です |
セルフ[8]にセーブファイルのファイル名を設定。
セーブ番号が9以下の場合は、ファイル名に「0」を追加し、「01」などと設定。 |
| |
|
258-259 |
▼ セーブデータの存在判定 |
| セーブデータのファイルが存在するかどうかを確認し、その結果をセルフ[59]に取得。 |
| |
|
260-287 |
■条件分岐(変数): 【1】 CSelf59[セーブ有無判定] が 0 と同じ |
| セーブデータのファイルが存在しない場合は分岐。 |
| |
|
|
262-270 |
▼ セーブデータが存在しない場合は「データがありません」 |
「データがありません」を表示。
ピクチャ番号は1行目は「12053」で、行が増えるごとに「+20」になる。 |
| |
|
|
272-278 |
▼ 表示エフェクト |
| 「データがありません」の画像をスライド移動。 |
| |
|
|
281-287 |
▼ キャラクターがいないのでそのピクチャを消去する |
顔グラフィックの消去。
ピクチャ番号は1行目は「12054〜12065」で、行が増えるごとに「+20」になる。 |
| |
|
289-529 |
◇分岐: 【2】 [ CSelf59[セーブ有無判定] が 1 と同じ ]の場合↓ |
| セーブデータのファイルが存在する場合は分岐。 |
| |
|
|
290 |
▼ セーブデータが存在する場合は、その内容を表示する |
| |
|
|
293-297 |
▼ プレイ時間を表示 |
| セーブデータのファイルからプレイ時間(秒)を取得し、時分に変換してセルフ[66〜67]に設定。 |
| |
|
|
298-300 |
■条件分岐(変数): 【1】 CSelf66[プレイ時間(時)] が 10 未満 |
| 「時」が10未満の場合は分岐 |
| |
|
|
|
300 |
セルフ[6]に「半角の空白文字+セルフ[66]:」を設定。 |
| |
|
|
302-303 |
◇分岐: 【2】 [ CSelf66[プレイ時間(時)] が 10 以上 ]の場合↓ |
| 「時」が10以上の場合は分岐 |
| |
|
|
|
303 |
セルフ[6]に「セルフ[66]:」を設定。 |
| |
|
|
306-308 |
■条件分岐(変数): 【1】 CSelf67[プレイ時間(分)] が 10 未満 |
| 「分」が10未満の場合は分岐 |
| |
|
|
|
308 |
セルフ[6]に「0セルフ[67]」を追加。 |
| |
|
|
310-311 |
◇分岐: 【2】 [ CSelf67[プレイ時間(分)] が 10 以上 ]の場合↓ |
| 「分」が10以上の場合は分岐 |
| |
|
|
|
311 |
セルフ[6]にセルフ[67]を追加。 |
| |
|
|
314-317 |
プレイ時間の画像を表示。
ピクチャ番号は1行目は「12053」で、行が増えるごとに「+20」になる。 |
| |
|
|
319-325 |
▼ 表示エフェクト |
| プレイ時間の画像をスライド移動。 |
| |
|
|
332 |
▼ ここでパーティメンバーを表示 |
| |
|
|
334-460 |
■回数付きループ [ CSelf16[最大パーティ数] ]回 |
| セーブデータの顔グラフィックを1キャラずつ表示。 |
| |
|
|
|
336-340 |
▼ 主人公IDを取得 |
| セーブデータの可変DB[6:パーティー情報]の項目[1〜6]から主人公IDをセルフ[11]に取得。 |
| |
|
|
|
341-445 |
■条件分岐(変数): 【1】 CSelf11[一時変数B] が 0 以上 |
| 主人公IDがあった場合は分岐。 |
| |
|
|
|
|
344-346 |
▼ 主人公IDが0以上の場合はキャラを表示する |
| セルフ[63]に「1100000000(可変DB[0:主人公ステータス]の「変数呼び出し値」)」を設定。 |
| |
|
|
|
|
347-350 |
▼ 1キャラの表示に必要な情報をセーブデータから得る |
| セーブデータから可変DB[0:主人公ステータス]の項目[0:キャラ名]をセルフ[6]に取得。 |
| |
|
|
|
|
351-353 |
セーブデータから可変DB[0:主人公ステータス]の項目[3:顔画像 [バトル・ステータス用]]をセルフ[7]に取得。 |
| |
|
|
|
|
354-356 |
セーブデータから可変DB[0:主人公ステータス]の項目[4:レベル]をセルフ[61]に取得。 |
| |
|
|
|
|
357-361 |
▼ 表示位置は中心基点 |
| 顔グラフィックの表示位置を設定。 |
| |
|
|
|
|
363-367 |
▼ 顔グラフィックを表示 |
顔グラフィックを表示するピクチャ番号「12054+2×セルフ[10](何人目[0〜5])」をセルフ[21]に設定。
ピクチャ番号は1行目は「12054〜12064」で、行が増えるごとに「+20」になる。 |
| |
|
|
|
|
369 |
■【特】チェックポイント■■■■■■■■■■■■■■■■■■■■■■■■ |
| |
|
|
|
|
370-391 |
■条件分岐(文字): 【1】 CSelf7[顔グラフィック]が "" 以外 |
| 顔グラフィックのファイルアドレスがある場合は分岐。 |
| |
|
|
|
|
|
373-385 |
■条件分岐(変数): 【1】 CSelf90[顔拡大率] が 0 と同じ |
ユーザーDB[17:システム設定]の項目[24:ステータス 顔グラフィック倍率]が
「0(標準サイズに合わせる)」の場合は分岐。 |
| |
|
|
|
|
|
|
375 |
▼ 顔の表示を、枠に合わせる場合 |
| |
|
|
|
|
|
|
376-379 |
ゲーム画面のサイズ[320×240[x2]]の時に「48×48」のサイズになるようにサイズを調整し、
セルフ[91-92]に設定。 |
| |
|
|
|
|
|
|
380 |
「拡大率:100」で顔グラフィックを表示。 |
| |
|
|
|
|
|
|
381-385 |
表示した顔グラフィックのサイズがセルフ[91-92]のサイズを超えている場合は、
セルフ[91-92]が指定する範囲内に入るように拡大率を変えて表示。 |
| |
|
|
|
|
|
387-389 |
◇分岐: 【2】 [ CSelf90[顔拡大率] が 1 以上 ]の場合↓ |
| ユーザーDB[17:システム設定]の項目[24:ステータス 顔グラフィック倍率]に拡大率の設定がある場合は分岐。 |
| |
|
|
|
|
|
|
388-389 |
▼ 顔の表示倍率が設定されてる場合 |
| 指定された拡大率で顔グラフィックを表示。 |
| |
|
|
|
|
393-395 |
◇分岐: 【2】 [ CSelf7[顔グラフィック] "" と同じ ]の場合↓ |
| 顔グラフィックのファイルアドレスが無い場合は分岐。 |
| |
|
|
|
|
|
394-395 |
▼ 顔画像がなければ消去 |
| 顔グラフィックを消去。 |
| |
|
|
|
|
399-405 |
▼ 表示エフェクト |
| 顔グラフィックの画像をスライド移動。 |
| |
|
|
|
|
408-411 |
▼ 名前とレベルを表示 |
| 「名前+レベル」の文字列をセルフ[6]に設定。 |
| |
|
|
|
|
412-414 |
名前+レベルを表示するピクチャ番号「12055+2×セルフ[10](何人目[0〜5])」をセルフ[21]に設定。
ピクチャ番号は1行目は「12055〜12065」で、行が増えるごとに「+20」になる。 |
| |
|
|
|
|
415-416 |
顔グラフィックの表示位置(セルフ[51〜52])にセルフ[74〜75]を加算し、
名前+レベルの表示位置を設定。 |
| |
|
|
|
|
417-419 |
名前+レベルを表示。 |
| |
|
|
|
|
421-427 |
▼ 表示エフェクト |
| 名前+レベルの画像をスライド移動。 |
| |
|
|
|
|
430-445 |
■回数付きループ [ CSelf49[初期表示フラグ] ]回 |
| この中の処理は特に意味がありません。 |
| |
|
|
|
447-454 |
◇上記以外 |
| 主人公IDが無かった場合は分岐。 |
| |
|
|
|
|
448-454 |
▼ キャラクターがいない場合は消去する |
| 現在処理中の顔グラフィックを消去。 |
| |
|
|
|
441-442 |
▼ 次のキャラを読み込む |
| セルフ[62]に「加算1」を設定。 |
| |
|
|
457 |
▼ 次のキャラを読み込む |
| |
|
|
465-468 |
■条件分岐(変数): 【1】 CSelf69[セーブデータのパーティ数] が 1 と同じ |
| セーブデータのパーティ人数が1人の場合は分岐。 |
| |
|
|
|
468 |
セルフ[53]に「70(ゲーム画面のサイズ[320×240[x2]]の場合でキャラを右に70移動)」を設定。 |
| |
|
|
470-474 |
◇分岐: 【2】 [ CSelf69[セーブデータのパーティ数] が 2 と同じ ]の場合↓ |
| セーブデータのパーティ人数が2人の場合は分岐。 |
| |
|
|
|
471-474 |
セルフ[53]に「60」を設定。
セルフ[54]に「20(ゲーム画面のサイズ[320×240[x2]]の場合でキャラとキャラの間を20空ける)」を設定。 |
| |
|
|
476-480 |
◇分岐: 【3】 [ CSelf69[セーブデータのパーティ数] が 3 と同じ ]の場合↓ |
| セーブデータのパーティ人数が3人の場合は分岐。 |
| |
|
|
|
477-480 |
セルフ[53]に「40」を設定。
セルフ[54]に「15」を設定。 |
| |
|
|
483-488 |
■条件分岐(変数): 【1】 CSelf69[セーブデータのパーティ数] が 4 と同じ |
| セーブデータのパーティ人数が4人の場合は分岐。 |
| |
|
|
|
485-488 |
セルフ[53]に「30」を設定。
セルフ[54]に「10」を設定。 |
| |
|
|
490-494 |
◇分岐: 【2】 [ CSelf69[セーブデータのパーティ数] が 5 と同じ ]の場合↓ |
| セーブデータのパーティ人数が5人の場合は分岐。 |
| |
|
|
|
491-494 |
セルフ[53]に「20」を設定。
セルフ[54]に「3」を設定。 |
| |
|
|
496-500 |
◇分岐: 【3】 [ CSelf69[セーブデータのパーティ数] が 6 と同じ ]の場合↓ |
| セーブデータのパーティ人数が6人の場合は分岐。 |
| |
|
|
|
497-500 |
セルフ[53]に「0」を設定。
セルフ[54]に「0」を設定。 |
| |
|
|
502-508 |
◇上記以外 |
| セーブデータのパーティ人数が1〜6人以外(パーティに誰もいない)の場合は分岐。 |
| |
|
|
|
503-508 |
▼ 7人以上の場合はひとまず6人と同じにしておく
▼ カスタマイズする際は、適当な数字を設定して下さい。 |
| セルフ[53]に「0」を設定。
セルフ[54]に「0」を設定。 |
| |
|
|
513 |
▼ キャラ一人ずつの位置をシフトさせる |
| |
|
|
515-527 |
■回数付きループ [ CSelf69[セーブデータのパーティ数] ]回 |
| 顔グラフィックの表示間隔を1キャラずつ空ける。 |
| |
|
|
|
516-519 |
顔グラフィックのピクチャ番号「12054+2×セルフ[12](何人目[0〜5])」をセルフ[21]に設定し、
セルフ[13]に「セルフ[21]+1」を設定。
ピクチャ番号は1行目は「12055〜12065」で、行が増えるごとに「+20」になる。 |
| |
|
|
|
521-523 |
顔グラフィックと名前+レベルの表示位置を調整。 |
| |
|
|
|
524-525 |
▼ 次のキャラへ |
| セルフ[12]に「加算1」を設定。 |
| |
536-540 |
▼ もし現在ページが1ページ以降なら、左▲を表示 |
セルフ[11]に「8(ゲーム画面のサイズ[320×240[x2]]のサイズ)」を設定し、
セルフ[12]に「10(ゲーム画面のサイズ[320×240[x2]]のサイズ)」を設定して、
現在のゲーム画面のサイズを合わせてサイズを補正。 |
| |
543-546 |
■条件分岐(変数): 【1】 CSelf2[ページ位置] が 1 以上 |
| 前のページがある場合は分岐。 |
| |
|
545-546 |
左側の▲をピクチャ[12004]で表示。 |
| |
548-549 |
◇上記以外 |
| 前のページが無い場合は分岐。 |
| |
|
549 |
左側の▲を消去。 |
| |
550 |
▼ もし現在ページが(最大ページ-1)よりも小さいなら、右▲を表示 |
| |
556-559 |
■条件分岐(変数): 【1】 CSelf10[一時変数A] が CSelf26[最大ページ数] 未満 |
| 次のページがある場合は分岐。 |
| |
|
558-559 |
右側の▲をピクチャ[12005]で表示。 |
| |
561-562 |
◇上記以外 |
| 次のページが無い場合は分岐。 |
| |
|
562 |
右側の▲を消去。 |
| |
567-568 |
▼ 最後に表示したページ番号を保存 |
| セルフ[99]にセルフ[2](現在のページ数)を設定。 |
| |
570 |
【イベント処理中断】を実行。 |
| 575-603 |
■条件分岐(変数): 【1】 CSelf0[処理モード] が 3 と同じ |
| 処理モードが「カーソル変更のみ」の場合は分岐。 |
| |
577-579 |
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ 「カーソル表示」モード
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ |
| |
581 |
▼ まず全てのカーソルの点滅を止める |
| |
582-588 |
■回数付きループ [ CSelf27[1ページセーブデータ数] ]回 |
| 4つのセーブデータのカーソル表示を1つずつ処理。 |
| |
|
583-586 |
カーソルの点滅を停止。 |
| |
589 |
▼ カーソル位置が選択されていたらカーソル選択ONに |
| |
590-600 |
■条件分岐(変数): 【1】 CSelf1[カーソル位置] が 0 以上
■条件分岐(変数): 【1】 CSelf1[カーソル位置] が CSelf27[1ページセーブデータ数]
未満 |
| カーソルの表示範囲内(0〜3)の場合は分岐。 |
| |
|
594-596 |
指定した位置のカーソルの点滅を実行。 |
| |
601 |
【イベント処理中断】を実行。 |