WOLF RPGエディター(ウディタ)[3.343]/基本システム【サイトトップへ戻る】
■コモンイベント[178:X[戦]味方欄_単体描画]の解説
(更新:2024/06/17)


コモンイベント[178:X[戦]味方欄_単体描画]について解説します。


ショートカット
■コモンイベント[178:X[戦]味方欄_単体描画]って何?
■文字列の設定
■こうゆう時にこのコモンイベントを改造する
■[入力の数/結果を返す]について
■コモンイベント呼び出しの一覧
■セルフ変数の一覧
■イベントコマンドの解説

基本システムに関する説明は別ページに記載しています。
【基本システムに関する説明ページを見る】

コモンイベントの一覧と補足説明のページも用意しています。
【コモンイベントの一覧と補足説明のページを開く】


  
■コモンイベント[178:X[戦]味方欄_単体描画]って何?

主人公のステータス画面の表示に関する処理を実行する時に、このコモンイベント[178:X[戦]味方欄_単体描画]を使います。





ステータス画面の表示位置はコモンイベント[174:X[戦]味方欄_座標算出]で設定します。

このコモンイベント[174:X[戦]味方欄_座標算出]で設定した表示位置は、
可変DB[18:基本システム用変数]データ[35〜38]に保存し、
その可変DB[18:基本システム用変数]データ[35〜38]をこのコモンイベント[178:X[戦]味方欄_単体描画]で出力し、
ステータス画面の表示に使用します。

そのため、2人分のステータス画面を表示する場合は…
コモン[174](1人目の位置)→コモン[178](1人目を表示)→コモン[174](2人目の位置)→コモン[178](2人目を表示)
コモンイベント[174][178]を交互に呼び出す必要があります。

なお、データ[35〜38]に保存された表示位置は、ステータス画面の中心を基点にしています。



ステータス画面を表示するピクチャ番号は「10100〜10249」が割り当てられており、
主人公1人に付き、25個のピクチャ番号が割り当てられています。

1人目 2人目 3人目 4人目 5人目 6人目 使用内容 データ取得位置・補足
10100 10125 10150 10175 10200 10225 下地のウィンドウ画像  
10101 10126 10151 10176 10201 10226 選択時の点滅用 下地のウィンドウと同じ画像で表示
10102 10127 10152 10177 10202 10227 顔グラフィック 可変DB[10]項目[1]
10103 10128 10153 10178 10203 10228 顔グラフィックの
表示範囲の確認用
このピクチャはデバッグ用であり、
通常の状態では表示されません。
10104 10129 10154 10179 10204 10229 文字列:主人公名 可変DB[10]項目[0]
10110 10135 10160 10185 10210 10235 HPバーの背景の黒色  
10111 10136 10161 10186 10211 10236 HPバーの周りの枠  
10112 10137 10162 10187 10212 10237 HPバーの下地の赤色  
10113 10138 10163 10188 10213 10238 HPバーの残量%の緑色 現在HP:可変DB[10]項目[5]
最大HP:可変DB[10]項目[44]
10114 10139 10164 10189 10214 10239 文字列:HP表示 現在HP:可変DB[10]項目[5]
10115 10140 10165 10190 10215 10240 SPバーの背景の黒色
10116 10141 10166 10191 10216 10241 SPバーの周りの枠
10117 10142 10167 10192 10217 10242 SPバーの下地の赤色
10118 10143 10168 10193 10218 10243 SPバーの残量%の青色 現在SP:可変DB[10]項目[7]
最大SP:可変DB[10]項目[46]
10119 10144 10169 10194 10219 10244 文字列:SP表示 現在SP:可変DB[10]項目[7]
10123 10148 10173 10198 10223 10248 文字列:状態異常 可変DB[13]

▼1人目の主人公のピクチャ番号の使い方




ピクチャの表示処理では、全ての画像をまずはステータス画面の中心に表示します。

そして【ピクチャエフェクト】を使って、指定された表示位置に移動して表示しています。

見た目では表示位置が異なるように見えますが、F7を押してピクチャの表示位置を確認してみると、
ステータス画面ごとの表示位置が全て同じになっています。


▲トップへ戻る▲


  
■文字列の設定

310行目にある「HP表示」、367行目にある「SP表示」の文字列設定について解説します。

見た目では「HP  60」は1行に見えますが、
実際には「HP」の文字は1行目で、「60」の部分は2行目に表示しており、
2行目は1行目と同じ高さにして表示しているので、それで見た目では1行の表示に見えます。

2行に分けて設定しているのは、「HP」の文字を左寄せで表示し、「60」の部分を右寄せで表示するためです。

下記の解説ではHPの表示設定で書いていますが、
SPの場合は「セルフ[90]セルフ[92]」が変わるだけであり、表示処理はHPと変わりません。

文字列 処理内容 処理結果見本
\f[\cself[17]]\E\cself[7]\ax[\cself[10]]
<R>\-[1]\f[\cself[18]]\ay[0]\my[-2]\cself[90]\my[2]
フチありで「HP」の文字を表示します。
文字サイズは可変DB[18:基本システム用変数]
データ[7:システム最小フォントサイズ]の値を
セルフ[17]に取得して設定しています。
\f[\cself[17]]\E\cself[7]\ax[\cself[10]]
<R>\-[1]\f[\cself[18]]\ay[0]\my[-2]\cself[90]\my[2]
ゲージの幅だけ次の入力位置を右に移動します。

ゲーム画面のサイズが[320×240[x2]]の場合は、
ゲージの幅の2倍の距離を右に移動させます。
これは特殊文字「\ax」の設定値が、
[640×480]の画面サイズで処理されるためです。
\f[\cself[17]]\E\cself[7]\ax[\cself[10]](改行)
<R>
\-[1]\f[\cself[18]]\ay[0]\my[-2]\cself[90]\my[2]
改行して2行目に入力位置を移動し、
2行目の文字列を右寄せで設定します。
\f[\cself[17]]\E\cself[7]\ax[\cself[10]]
<R>\-[1]\f[\cself[18]]\ay[0]\my[-2]\cself[90]\my[2]
フチ無しにして文字サイズを変更し、
入力位置を「Y=0」へ移動。
文字サイズは可変DB[18:基本システム用変数]
データ[6:システムミニフォントサイズ]の値を
セルフ[18]に取得して設定しています。
\f[\cself[17]]\E\cself[7]\ax[\cself[10]]
<R>\-[1]\f[\cself[18]]\ay[0]\my[-2]\cself[90]\my[2]
文字の設定位置をちょっと上に上げてから
現在のHP量を表示し、最後に次の入力位置を
ちょっと下に下げると全体の位置が上に上がる。
\cself[90]のみ:
\my[-2]\cself[90]:
\my[-2]\cself[90]\my[2]:


▲トップへ戻る▲


  
■こうゆう時にこのコモンイベントを改造する

以下のような改造を行いたい時にこのコモンイベントを改造します。

◆名前や顔グラフィック、HPや状態異常の表示位置や表示サイズを変えたい。
 ステータス画面の表示位置はコモンイベント[174:X[戦]味方欄_座標算出]で設定しています。

◆点滅処理の点滅時間や点滅色を変えたい。

◆逃走時の演出を変えたい。

◆使用するピクチャ番号(10100〜10249)を変えたい。


▲トップへ戻る▲


  
■[入力の数/結果を返す]について

コモンイベント[178:X[戦]味方欄_単体描画][入力の数/結果を返す]の設定は、
基本システムが必要に応じて自動的に行いますので、基本システムの利用者は何も設定する必要はありません。

▼数値1/コモンセルフ0「モード」

どのような処理を行うのかを設定。
[0]表示 ステータス画面を画面下からスクロールさせて表示します。
[3]表示[瞬間表示] 最大HPの増減時など、ステータス画面の表示更新時に使用。
[5]表示[更新+ゲージアニメ] HP・SP増減時や状態異常時に使用。
[10]カーソルON(対象位置 位置-1なら全部) アイテムや特殊技能を使用する主人公の選択時に
ステータス画面を点滅させる処理を実行します。
点滅時間は「25フレーム」の固定。
[11]カーソルランダムON 特殊技能の効果対象が「味方一人ランダム」を使用する時に
この点滅処理を実行します。
点滅時間を「5〜20フレーム」のランダム。
[12]カーソルOFF(対象位置 位置-1なら全部) ステータス画面の点滅をやめます。
[21]ダメージエフェクトLv1 ダメージを受けた時にステータス画面を上下に揺らす演出を実行。
※下記にて詳しく説明。
[22]ダメージエフェクトLv2
[30]回復エフェクト HP・SPが増えた時のステータス画面の表示を実行。
[40]フラッシュエフェクト 主人公が行動を実行する時のフラッシュを実行。
[50]逃走エフェクト 逃走する時のステータス画面の表示を実行。
[-1]消去 ステータス画面を消去します。
▼数値2/コモンセルフ1「表示位置」

パーティの並び順での主人公の位置(0〜5)を設定。
▼数値3/コモンセルフ2「戦闘スロット」

可変DB[10:×┏ 戦闘一時ステータス[基]]のデータID(0〜5)を設定。
基本的に設定値はセルフ[1]と同じです。



▼数値1/コモンセルフ変数0「モード」にある「ダメージエフェクトLv1」について

セルフ[0]の設定には「21:ダメージエフェクトLv1」や「22:ダメージエフェクトLv2」の設定があります。



上図の選択肢には「21:ダメージエフェクトLv1」と「22:ダメージエフェクトLv2」しかありませんが、
実際には「セルフ[0]=29(Lv9)」まで設定する事ができます。

この「セルフ[0]=21〜29」の処理は、主人公がダメージを受けた時に、ステータス画面を上下に揺らす時に使います。

レベルが上がると上下の揺れ幅が大きくなります。

ダメージを受ける前 Lv1(セルフ[0]=21) Lv5(セルフ[0]=25)

レベル9になるとゲーム画面の外にはみ出すくらいに大きく移動します。



コモンイベント[004:○回復・ダメージ処理]などのイベント設定でHPを減らした時には、
セルフ[0]=21」の固定値で処理されますが、通常の戦闘処理で敵からダメージを受けた時には、
最大HPの何割のダメージを受けたのかによって、揺れ幅のレベルが異なります。

例えば主人公の最大HPが「100」の時に、「60」のダメージを受けた時には、
ダメージ量は最大HPの6割のダメージだったため、この場合は「レベル6(セルフ[0]=26)」が設定されます。

なお、最大HPの10%未満のダメージだった場合は「レベル1」が設定され、
最大HPの100%以上のダメージだった場合は「レベル9」が設定されます。


▲トップへ戻る▲


  
■コモンイベント呼び出しの一覧

コモンイベント[178:X[戦]味方欄_単体描画]を呼び出しているコモンイベント、
またはコモンイベント[178:X[戦]味方欄_単体描画]から呼び出しているコモンイベントの一覧です。

コモンイベント[178:X[戦]味方欄_単体描画]を呼び出しているコモンイベント
コモンイベント(ID順) 処理内容
004:○回復・ダメージ処理 HP・SP増減時に呼び出されます。
005:○メンバーの増減 パーティメンバーの増減があった時に呼び出されます。
009:○状態異常変化 状態異常があった時に呼び出されます。
031:◆[戦闘用]ダメージ処理 HPの増減時に呼び出されます。
139:X[戦]状態更新 状態異常があった時に呼び出されます。
142:X[戦]指定主人公更新処理 装備変更などで最大HPなどに変化があった場合に
ステータス画面を更新するために呼び出されます。
158:X[戦]アイテム選択実行 味方全員に効果があるアイテムを選択し、
使用対象者を選択する画面にて、主人公全員を点滅させる時に呼び出されます。
159:X[戦]技能選択実行 「味方全員」や「味方一人ランダム」の特殊技能を選択し、
使用対象者を選択する画面にて、主人公全員を点滅させる時に呼び出されます。
161:X[戦]味方対象選択実行 味方一人に使用するアイテムや特殊技能を使用する際、「誰に使うのか」を
選択する画面にてステータス画面を点滅させる時に呼び出されます。
165:X[戦]┗単体処理 HP・SPの増減処理の時に呼び出されます。
188:X◆戦闘処理 主人公の逃走時に呼び出されます。
190:X┣◆戦闘キャラ配置 戦闘開始時にステータス画面を画面下部から表示する時に呼び出されます。
192:X┃┣◆味方コマンド選択 行動選択時に味方に対してアイテムや特殊技能を使用する際、
「誰に使うのか」を選択する場面でステータス画面を点滅させ、
その点滅をOFFにする時に呼び出されます。
なお「誰に使うのか」の点滅をONにする処理は、
コモンイベント[161:X[戦]味方対象選択実行]で行っています。
196:X┃┣◆行動可能判定] ターン進行中に行動を開始するステータス画面をフラッシュさせる時や、
特殊技能を使用時に消費したHP・SPの表示更新時に呼び出されます。
201:X┗◆戦闘終了処理 戦闘終了時にステータス画面を消去する時に呼び出されます。

コモンイベント[178:X[戦]味方欄_単体描画]から呼び出しているコモンイベント
コモンイベント(ID順) 処理内容
061:X[共]キー押し加速ウェイト計算 ダメージを受けた時や逃走時にステータス画面をスクロールさせる際、
このコモンイベント[061:X[共]キー押し加速ウェイト計算]
決定キーやサブキーを押しているかどうかを判定し、
キーを押していた場合は、ステータス画面のスクロールの速度を上げます。
何もキーを押していない 通常速度
決定キーを押している 2倍速
サブキーを押している 3倍速
決定キーとサブキーを押している 4倍速

【コモンイベント呼び出しの一覧を別ウィンドウで表示】


▲トップへ戻る▲


  
■セルフ変数の一覧

コモンイベント[178:X[戦]味方欄_単体描画]のセルフ変数の一覧です。

セルフ変数
番号 名前 使用内容
0 処理モード 処理内容を設定。
-1 ステータス画面を消去します。
0 ステータス画面を画面下からスクロールさせて表示します。
3 最大HPの増減時など、ステータス画面の更新時に使用。
5 HP・SP増減時や状態異常時に使用。
10 アイテムや特殊技能を使用する主人公の選択時に
ステータス画面を点滅させる処理を実行。
点滅時間は「25フレーム」の固定。
11 特殊技能の効果対象が「味方一人ランダム」を使用する時に
全員のステータス画面を点滅させる処理を実行。
点滅時間を「5〜20フレーム」のランダム。
12 ステータス画面の点滅をやめます。
21-29 ダメージを受けた時にステータス画面を上下に揺らす演出を実行。
一の位は上下の振れ幅を設定。
30 HP・SPが増えた時のステータス画面の表示を実行。
40 主人公が行動を実行する時のフラッシュを実行。
50 逃走する時のステータス画面の表示を実行。
1 表示位置 パーティの並び順での主人公の位置(0〜5)を設定。
2 戦闘スロット 可変DB[10:×┏ 戦闘一時ステータス[基]]データID(0〜5)を設定。
4 1キャラあたり使用ピクチャ数 主人公一人に使うピクチャの数(25)を設定。
7 表示項目名 主人公の名前や状態の文字列の取得、HPやSPの名称の取得、
顔グラフィックのファイルアドレスの取得など、
データベースから情報を取得する時に使用。
8 ウィンドウ画像ファイル ステータス画面のウィンドウのファイルアドレスの取得に使用。
9 カーソル画像ファイル 文字列の設定のみであり、何も使用されていません。
10 一時変数A 顔グラフィックの表示にて、横拡大率の設定で使用。
HP・SPの文字を表示する時に、
HP   60」の「HP」と「60(HP量)」の間隔を空ける時に、
その間隔の距離を設定する時に使用。
この距離は「HP」の左端から「60」の右端までの距離を設定。
全員のステータス画面の点滅処理のON/OFFの処理で使用。
ダメージを受けた時の縦揺れの移動量の計算で使用。
11 一時変数B 顔グラフィックの表示にて、縦拡大率の設定で使用。
HP・SPのゲージの周りの枠や、
その下に表示する黒い背景のX表示位置を補正する時に使用。
特殊技能で「味方一人ランダム」を選択した際、
ステータス画面の点滅間隔をランダムにする時の乱数の設定で使用。
コモンイベント[061:X[共]キー押し加速ウェイト計算]の結果の取得で使用。
この取得結果からステータス画面のスクロール速度を変更。
12 一時変数C HP・SPのゲージの周りの枠や、
その下に表示する黒い背景のY表示位置を補正する時に使用。
13 一時変数D HP・SPのゲージの周りの枠や、
その下に表示する黒い背景の横サイズを設定する時に使用。
14 一時変数E HP・SPのゲージの周りの枠や、
その下に表示する黒い背景の縦サイズを設定する時に使用。
16 最大パーティ数 可変DB[18:基本システム用変数]データ[51:システム上最大パーティー人数]を取得。
17 最小フォントサイズ 可変DB[18:基本システム用変数]データ[7:システム最小フォントサイズ]を取得。
主人公の名前、状態表示、「HP」「SP」の名称の表示サイズの設定で使用。
18 ミニフォントサイズ 可変DB[18:基本システム用変数]データ[6:システムミニフォントサイズ]を取得。
HP・SPの数値の表示サイズの設定で使用。
19 基本フォントサイズ 値の設定のみであり、何も使用されていません。
20 基本ピクチャ番号 ステータス画面の表示で使うピクチャ番号の最小値を設定。
何番目の主人公なのかによって、「何番目(0〜5)×25」を加算にして、
主人公ごとに使用するピクチャ番号が変わるようにします。
1人目 セルフ[20]=10100
2人目 セルフ[20]=10125
3人目 セルフ[20]=10150
4人目 セルフ[20]=10175
5人目 セルフ[20]=10200
6人目 セルフ[20]=10225
21 一時ピクチャ番号 セルフ[20]に保存されたピクチャ番号をコピーし、
表示する内容に合わせてピクチャ番号を変えて使用します。
22 表示X 可変DB[18:基本システム用変数]データ[37:ステータス欄表示先 座標X]を取得。
可変DB[18:基本システム用変数]データ[35〜38]の値は、
事前にコモンイベント[174:X[戦]味方欄_座標算出]で設定しています。
23 表示Y 可変DB[18:基本システム用変数]データ[38:ステータス欄表示先 座標Y]を取得。
24 横サイズ ステータス画面の横サイズを設定。
25 縦サイズ ステータス画面の縦サイズを設定。
30 移動元X 可変DB[18:基本システム用変数]データ[35:ステータス欄表示先 元座標X]を取得。
31 移動元Y 可変DB[18:基本システム用変数]データ[36:ステータス欄表示先 元座標Y]を取得。
32 表示ディレイ ステータス画面をスクロールさせる際、
慣性移動の設定で徐々に速度を変える時の「発動ディレイ」の設定で使用。
41 一時項目表示X セルフ[22]セルフ[30]の値をコピーし、ピクチャのX表示位置の設定で使用。
42 一時項目表示Y セルフ[23]セルフ[31]の値をコピーし、ピクチャのY表示位置の設定で使用。
44 顔枠サイズX 顔グラフィックの周りに表示する枠の横サイズを設定。
45 顔枠サイズY 顔グラフィックの周りに表示する枠の縦サイズを設定。
50 エフェクト表示フラグ 戦闘開始時にステータス画面をスクロールさせる場合は「1」を設定。
0 スクロール無しで瞬間表示。(表示内容の更新時に使用)
1 ステータス画面をスクロールして表示。(戦闘開始時に使用)
56 顔拡大率 ユーザーDB[17:システム設定]項目[24:ステータス 顔グラフィック倍率]を取得。
「0」の場合は枠のサイズに合わせて表示。
57 ウェイト数 ステータス画面をスクロールさせる際、
慣性移動の設定で徐々に速度を変える時の「処理時間」の設定で使用。
このセルフ[57]の値は、
コモンイベント[061:X[共]キー押し加速ウェイト計算]の結果によって変わります。
60 顔グラ位置X 顔グラフィックのX表示位置を設定。
61 顔グラ位置Y 顔グラフィックのY表示位置を設定。
62 キャラ名位置X 主人公の名前のX表示位置を設定。
63 キャラ名位置Y 主人公の名前のY表示位置を設定。
64 肩書き位置X 値の設定のみであり、何も使用されていません。
65 肩書き位置Y 値の設定のみであり、何も使用されていません。
66 HP位置X HPのX表示位置を設定。
67 HP位置Y HPのY表示位置を設定。
68 SP位置X SPのX表示位置を設定。
69 SP位置Y SPのY表示位置を設定。
70 HPゲージX HPゲージのX表示位置を設定。
71 HPゲージY HPゲージのY表示位置を設定。
72 SPゲージX SPゲージのX表示位置を設定。
73 SPゲージY SPゲージのY表示位置を設定。
74 EXP位置X 値の設定のみであり、何も使用されていません。
75 EXP位置Y 値の設定のみであり、何も使用されていません。
76 EXPゲージX 値の設定のみであり、何も使用されていません。
77 EXPゲージY 値の設定のみであり、何も使用されていません。
78 レベル表示X 値の設定のみであり、何も使用されていません。
79 レベル表示Y 値の設定のみであり、何も使用されていません。
80 全ゲージ太さ HP・SPゲージの縦サイズを設定。
81 HP・SPゲージ長 HP・SPゲージの横サイズを設定。
82 EXPゲージ長 値の設定のみであり、何も使用されていません。
83 状態異常位置X 状態異常のX表示位置を設定。
84 状態異常位置Y 状態異常のY表示位置を設定。
85 状態異常表示方法フラグ 値の設定のみであり、何も使用されていません。
87 ゲージアニメフラグ 「1」の時に、HP・SPのゲージが徐々に変化する演出を実行。
89 キャラクタ番号 可変DB[10:×┏ 戦闘一時ステータス[基]]
項目[17:キャラクタ番号[1万以上は敵]]を取得し、
主人公が設定されているかどうかを調べる時に使用。
90 HP 可変DB[10:×┏ 戦闘一時ステータス[基]]項目[5:HP]を取得。
91 最大HP 可変DB[10:×┏ 戦闘一時ステータス[基]]
項目[44:[一時]計算済みMaxHP]を取得。
92 SP 可変DB[10:×┏ 戦闘一時ステータス[基]]項目[7:SP]を取得。
93 最大SP 可変DB[10:×┏ 戦闘一時ステータス[基]]
項目[46:[一時]計算済みMaxSP]を取得。
94 色番号 可変DB[10:×┏ 戦闘一時ステータス[基]]項目[4:表示色番号]を取得。
この色番号はステータス画面のウィンドウの色の番号になります。
▼[-1]半透明
▼[0]変化なし
▼[1]赤
▼[2]青
▼[3]緑
▼[4]オレンジ
97 %計算用一時変数 現在のHP・SPの残量に合わせてゲージの長さ(横拡大率)を算出する時に使用。
98 座標倍率X[x10] 可変DB[18:基本システム用変数]データ[97:座標倍率X[x10]]を取得。
数値は「ゲーム画面の横サイズ÷32」。
99 座標倍率Y[x10] 可変DB[18:基本システム用変数]データ[98:座標倍率Y[x10]]を取得。
数値は「ゲーム画面の縦サイズ÷24」。

【変数の一覧を別ウィンドウで表示】


▲トップへ戻る▲


  
■イベントコマンドの解説

イベントコマンドの解説を行います。

なお、見た目で設定内容が分かるような簡単なイベントコマンドの解説は省略しています。

処理内容
35-59 ▼ 初期化
主要な変数の値を初期化。
主人公の並び順に合わせてピクチャ番号をセルフ[20]に準備。
60-70 ▼ 基本パラメータを呼び出し
データベースから情報を取得。
73-95 ▼ 一個あたりのキャラクター欄のサイズ指定や、各内容の表示位置などをここで指定
ステータス画面に関するピクチャのサイズや表示位置を設定。
設定値はゲーム画面のサイズ[320×240[x2]]に合わせてピクセル単位で設定します。
違うゲーム画面のサイズの場合は、あとで画面サイズに合わせてピクセル値が変動します。
ピクチャはステータス画面の中心を基点にして表示します。
▼主人公の名前の表示位置の設定の場合
■変数操作: CSelf62[キャラ名位置X] = -36 + 0
■変数操作: CSelf63[キャラ名位置Y] = -23 + 0
98-127 ▼ ここで解像度補正
73〜95行目で設定した表示位置や表示サイズを現在の画面サイズに合わせて補正。
例えば設定値が「-36」の場合は、
[640×480]の時には「-72」になり、[800×600]の時には「-90」になります。
131-146 ■条件分岐(変数): 【1】 CSelf0[処理モード] が -1 と同じ
ステータス画面を消去します。
147-433 ■条件分岐(変数): 【1】 CSelf0[処理モード] が 0 と同じ
ステータス画面を表示します。
  152-157 ▼ もし主人公IDがマイナスだったら終了
可変DB[10:×┏ 戦闘一時ステータス[基]]データID
存在しないデータIDになっている場合は、処理を中断させる。
  158-162 ▼ まず表示先座標を取得する (なお、この座標は倍率補正済み)
ステータス画面の表示位置を取得。
  163-169 ▼ 表示するパラメータ情報をここで取得
可変DB[10:×┏ 戦闘一時ステータス[基]]項目[17:キャラクタ番号[1万以上は敵]]
主人公のIDが設定されていない場合は処理を中断。
  170-174 HP、SP、色番号(ステータス画面の色)を取得。
  177-211 ■回数付きループ [ 1 ]回
ステータス画面の色を変更。
  213-216 ▼ カーソル用画像(明るさ0で常に表示しておく、
  ウィンドウを光らせるためのものなのでウィンドウ画像でよい)
主人公を選択する時に使用するカーソル用(点滅用)の画像を、
下地のウィンドウ画像と同じもので「表示形式:加算」で表示。
そして【ピクチャエフェクト】(カラー補正:R-100、G-100、B-100)を設定。
「表示形式:加算」で表示しているので、
「カラー補正:R-100、G-100、B-100」にすると透明になり、
「カラー補正:R0、G0、B0」にするとウィンドウの色の値が2倍になり、明るくなります。
▼表示例
  222-273 ■回数付きループ [ 1 ]回
顔グラフィックの表示に関する処理を実行。
    223-230 ▼ 顔グラフィック
▼ 一時上書きグラフィックがあればそれを表示、なければ元の顔グラフィックを表示
顔グラフィックのファイルアドレスを取得。
なおユーザーDB[8:状態設定]項目[45:状態時の顔グラフィック]にファイルアドレスが
設定されている状態異常が付与している場合は、その画像のファイルアドレスを設定する。
    231-235 ▼ 顔の枠のサイズを計算
顔グラフィックの画像サイズを設定。
この画像サイズはゲーム画面の縦サイズの5分の1のサイズになっています。
[320×240[x2]]の場合に「48×48ピクセル」、
[640×480]の場合は「96×96ピクセル」、
[800×600]の場合は「120×120ピクセル」で表示します。
    239-264 ■条件分岐(文字): 【1】 CSelf7[表示項目名]が "" 以外
顔グラフィック用の画像アドレスが設定されている場合は分岐し、
顔グラフィックを表示する。
ユーザーDB[17:システム設定]項目[24:ステータス 顔グラフィック倍率]に倍率の設定がある場合は
その指定された倍率で表示し、倍率設定が無い場合は231〜235行目で設定したサイズで表示。
表示位置は顔グラフィックを表示する枠内の中心を基点にしています。
なお表示設定では、まず【ピクチャ表示】でステータス画面の中央に表示し、
【ピクチャエフェクト】で指定した表示位置に移動しています。
    265-271 ■回数付きループ [ 0 ]回
デバッグ用の設定です。
ループ回数を「1」にすると、下図のように顔グラフィックの表示範囲を枠で表示します。
  275-280 ▼ キャラ名
主人公の名前を表示。
  284-291 ▼ 状態異常表示
状態を表示。
  295-351 ■回数付きループ [ 1 ]回
HPの表示処理を実行。
    298-305 ▼ HP数値表示用に、横幅を得る
「HP」の名称の左端と、HPの数値の右端との距離を設定。
[320×240[x2]]の場合は、長さを2倍にします。
これは文章の表示位置を設定する特殊文字「\ax」が[640×480]で処理されるためです。
【特殊文字「\ax」の説明を見る】
    306-311 ▼ HPの数値 (表示位置は左下基点)
HPの文字列を表示。
「HP」の名称と「60(現在のHP)」は同じ1つのピクチャで表示します。
    312-329 ▼ ゲージ表示 [上部分ゲージ] (表示位置は左上)
HPゲージを表示。
ゲージの横サイズは横拡大率で設定。
    330-333 ▼ ゲージ表示 [下地ゲージ・赤部分] (表示位置は左上)
HPゲージの下に表示する赤い下地を表示。
    334-345 ▼ ゲージ表示[枠部分] (表示位置は左上)
HPゲージの周りに表示する枠を表示。
    346-350 ▼ ゲージ下の黒背景
HPゲージとゲージの周りに表示した枠との間の色を設定。
▼赤色に変えた時の表示例
  352-408 ■回数付きループ [ 1 ]回
SPの表示処理を実行。
    355-362 ▼ SP数値表示用に、横幅を得る
「SP」の名称の左端と、SPの数値の右端との距離を設定。(HPの時と同じ処理)
    363-368 ▼ SPの数値 (表示位置は左下基点)
SPの文字列を表示。
「SP」の名称と「60(現在のSP)」は同じ1つのピクチャで表示します。
    369-388 ▼ ゲージ表示 [上部分ゲージ] (表示位置は左上)
SPゲージを表示。
ゲージの横サイズは横拡大率で設定。
    387-390 ▼ ゲージ表示 [下地ゲージ・赤部分] (表示位置は左上)
SPゲージの下に表示する赤い下地を表示。
    391-402 ▼ ゲージ表示[枠部分] (表示位置は左上)
SPゲージの周りに表示する枠を表示。
    403-406 ▼ ゲージ下の黒背景
SPゲージとゲージの周りに表示した枠との間の色を設定。
  410-430 ■回数付きループ [ CSelf50[エフェクト表示フラグ] ]回
ステータス画面を画面下からスクロールで表示。
    411-415 ▼ ここでメニュー表示時エフェクト(「移動」コマンドで実現している)
画面の下の方(画面の外)の座標を設定し、ディレイを「0」に初期化。
    416-420 ▼ 初期位置をシフト
1人分のピクチャ番号(1人目の場合はセルフ[20]=10100セルフ[21]=10124)を設定し、
画面の下の方に1人分の全てのピクチャを移動。
    421-428 ▼ 目標位置まで慣性移動
画面の下の方から実際に表示する位置まで徐々に速度を落としながら移動。
434-462 ■条件分岐(変数): 【1】 CSelf0[処理モード] が 10 と同じ
仲間の主人公に対して、アイテムや特殊技能を使用する時の使用する主人公の選択時に、
選択中の主人公のステータス画面を点滅させる時に使用します。
セルフ[1]が「-1」の場合は、全ての主人公のステータス画面を点滅させます。
セルフ[1]が「0以上」の場合は、「セルフ[1]=パーティの並び順(0〜5)」として、
指定したパーティの順番にいる主人公のステータス画面を点滅させます。
463-479 ■条件分岐(変数): 【1】 CSelf0[処理モード] が 11 と同じ
「味方一人ランダム」の特殊技能を使用する時の使用する主人公の選択時に、
全ての主人公のステータス画面を点滅させる時に使用します。
点滅の間隔は「5〜20フレーム」であり、主人公ごとにランダムで設定されます。
480-508 ■条件分岐(変数): 【1】 CSelf0[処理モード] が 12 と同じ
ステータス画面の点滅を終了させます。
セルフ[1]が「-1」の場合は、全ての主人公のステータス画面の点滅を終了させます。
セルフ[1]が「0以上」の場合は、「セルフ[1]=パーティの並び順(0〜5)」として、
指定したパーティの順番にいる主人公のステータス画面の点滅を終了させます。
509-561 ■条件分岐(変数): 【1】 CSelf0[処理モード] が 21 以上
 ■条件分岐(変数): 【1】 CSelf0[処理モード] が 29 以下
ダメージを受けた時にステータス画面を赤色にフラッシュさせ、
ステータス画面を上下に揺らします。
  522-528 ▼ ここでメニュー表示時エフェクト(「移動」コマンドで実現している)
ステータス画面の表示位置を取得。
  529-531 ▼ レベルの分だけシフト量をアップ
セルフ[0]の一の位(「セルフ[0]=25」なら「5」)を算出し、
セルフ[0]の一の位×(ゲーム画面の縦サイズ÷24)」を計算して、揺れの移動量を算出。
例えば「セルフ[0]=25」の場合は一の位は「5」になり、
ゲーム画面のサイズが[320×240[x2]]の場合は、「5×(240÷24)=50」の計算によって、
ステータス画面を現在の位置より「50ピクセル」下へ移動させます。
  532-534 ■変数操作: CSelf57[ウェイト数] = CSelf10[一時変数A] * 2
決定キーやサブキーを押し続けていた場合は、縦揺れの移動速度を上げます。
  537-541 ▼ 初期位置をシフト
指定した位置まで一気に下げます。
  542-551 ▼ 目標位置まで慣性移動
移動速度を徐々に落としながら元の位置まで移動します。
561-575 ■条件分岐(変数): 【1】 CSelf0[処理モード] が 30 と同じ
回復した時にステータス画面を緑色にフラッシュさせます。
576-590 ■条件分岐(変数): 【1】 CSelf0[処理モード] が 40 と同じ
行動を開始する主人公のステータス画面をフラッシュさせます。
591-631 ■条件分岐(変数): 【1】 CSelf0[処理モード] が 50 と同じ
主人公が逃走した時のステータス画面の表示を処理します。
  601-607 ▼ ここでメニュー表示時エフェクト(「移動」コマンドで実現している)
ステータス画面の表示位置を取得。
  608-609 ▼ 逃走不能(セルフ1=1)なら、「戦闘・逃走コマンド」を出さない。
ステータス画面を下に移動させる移動量を「8×(ゲーム画面の縦サイズ÷24)」で算出。
例えばゲーム画面のサイズが[320×240[x2]]の場合は、
8×(240÷24)=80」の計算によって、ステータス画面を「80ピクセル」下へ移動させます。
  610-611 ■変数操作: CSelf57[ウェイト数] = 11 + 0
決定キーやサブキーを押し続けていた場合は、縦揺れの移動速度を上げます。
  618-624 ▼ 目標位置まで慣性移動
移動速度を徐々に落としながら画面の下の方(画面の外)へ移動します。


▲トップへ戻る▲



◎関連ページ

◆「基本システム」って何?
┣◆コモンイベントの一覧と補足説明
┣◆メニュー画面の処理構造
┗◆戦闘処理の処理構造

YADOT-WOLFトップ  気紛れな空間へ戻る  メール