(※この記事は編集中です)
概要
対象者レベル:中級者
難易度:★★☆☆☆
ウディタではピクチャには全て「ピクチャ番号」が設定されています。
ピクチャの座標やサイズを取得する場合にはこのピクチャ番号が必要となりますが、
これらを再利用しやすい形で管理する方法を掲載します。
ピクチャの座標やサイズを取得する場合にはこのピクチャ番号が必要となりますが、
これらを再利用しやすい形で管理する方法を掲載します。
内容
1. ピクチャ番号の特性を理解する
ピクチャ番号は数値によって表示される階層が異なります。
考えなしでピクチャ番号を決めてしまうとバグの原因になるため、表示したい層を意識して番号を決めましょう。
(詳しくはWOLF RPGエディターの公式マニュアルを参照してください)
考えなしでピクチャ番号を決めてしまうとバグの原因になるため、表示したい層を意識して番号を決めましょう。
(詳しくはWOLF RPGエディターの公式マニュアルを参照してください)
↑上層
ピクチャ番号 | 表示位置 |
100000~以上 | 文章・選択肢ウィンドウの上 |
- | 文章・選択肢ウィンドウ |
0~99999 | イベント・フォグ・★属性のマップチップの上 |
- | イベント・フォグ・★属性のマップチップ |
-1~-99999 | マップチップの上 |
- | マップチップ |
以下~-100000 | 遠景の上 |
- | 遠景 |
↓下層
ピクチャ番号は数字が大きければ大きいほど前面に表示されます。
複数のピクチャを表示する場合、どれが手前に来てほしいのかを意識して番号を決めるようにしましょう。
複数のピクチャを表示する場合、どれが手前に来てほしいのかを意識して番号を決めるようにしましょう。
またピクチャ番号は同じ番号を使いまわすことはできません。
例えば「ピクチャ番号:100」ですでにピクチャが表示されている場合、同じ番号でピクチャ表示を行うと先に表示されていたピクチャは消去されてしまいます(上書き)
ピクチャを複数表示したい場合は必ず使用されていないピクチャ番号を指定しましょう。
例えば「ピクチャ番号:100」ですでにピクチャが表示されている場合、同じ番号でピクチャ表示を行うと先に表示されていたピクチャは消去されてしまいます(上書き)
ピクチャを複数表示したい場合は必ず使用されていないピクチャ番号を指定しましょう。
2. 表示するピクチャを分類分けする
ピクチャ番号を使いまわすことはバグの原因に繋がります。
必要が無い限りピクチャはすべて異なる番号を使うようにしましょう。
そのためにはどのピクチャにどの番号を振るのかを考える必要があります。
必要が無い限りピクチャはすべて異なる番号を使うようにしましょう。
そのためにはどのピクチャにどの番号を振るのかを考える必要があります。
まずはゲーム中でピクチャを使用していそうな処理を挙げてみましょう。
例、
・フィールドメニュー
・戦闘処理
・会話イベント
例、
・フィールドメニュー
・戦闘処理
・会話イベント
次に、上に挙げたものでピクチャを使用していそうなものを列挙してみます。
この時なるべく細かく列挙していきます。
例、
[フィールドメニュー]
・メインメニューのウインドウ
・メインメニューの文字列ピクチャ
・メインメニューのカーソル
この時なるべく細かく列挙していきます。
例、
[フィールドメニュー]
・メインメニューのウインドウ
・メインメニューの文字列ピクチャ
・メインメニューのカーソル
[戦闘処理]
・戦闘中ステータスウインドウ
・戦闘中ステータスの文字列ピクチャ
・戦闘中ステータスのカーソル
・戦闘中敵グラフイック
・戦闘中ステータスウインドウ
・戦闘中ステータスの文字列ピクチャ
・戦闘中ステータスのカーソル
・戦闘中敵グラフイック
[会話イベント]
・キャラクター立ち絵
・表情エフェクト
・キャラクター立ち絵
・表情エフェクト
分類分けすることにより、実際にピクチャを表示する際にいくつくらい番号を確保しておけばよいかの概算を立てることが出来ます。
3. ピクチャの開始番号、終了番号を決める
手順2で求めた概算を元に、各処理で使用するピクチャの「開始番号」「終了番号」を決定します。
開始番号と終了番号を決めておくと処理ごとのピクチャ操作が楽になります。
開始番号と終了番号を決めておくと処理ごとのピクチャ操作が楽になります。
例えば、フィールドメニューの表示・非表示に関するコモンイベントを作ることを考えます。
フィールドメニューには以下のようなたくさんのピクチャが使用されています。
・メインメニューのウインドウ
・メインメニューの文字列ピクチャ
・メインメニューのカーソル
etc.
フィールドメニューには以下のようなたくさんのピクチャが使用されています。
・メインメニューのウインドウ
・メインメニューの文字列ピクチャ
・メインメニューのカーソル
etc.
メニューということは表示・非表示を切り替える必要があります。
例えばメニューを閉じるとき、いちいち一つずつピクチャ番号を指定して非表示にするのは面倒ですね。
例えばメニューを閉じるとき、いちいち一つずつピクチャ番号を指定して非表示にするのは面倒ですね。
これらのピクチャを「ピクチャ番号:100~199」までの間で表示しているとしましょう。
そして開始番号を「100」、終了番号を「199」とします。
ピクチャはオプションで「開始~終了」の番号に対し同じ処理を実行することが可能なため、
図1のようにすることでフィールドメニューに関するピクチャを1つの命令で全て非表示にすることができます。
そして開始番号を「100」、終了番号を「199」とします。
ピクチャはオプションで「開始~終了」の番号に対し同じ処理を実行することが可能なため、
図1のようにすることでフィールドメニューに関するピクチャを1つの命令で全て非表示にすることができます。
図1.ピクチャ番号の複数指定と不透明度の設定


こういった開始、終了のピクチャ番号はゲーム中に変化させる必要はありません。
このようなピクチャ番号は「UDB」で管理することをオススメします。
このようなピクチャ番号は「UDB」で管理することをオススメします。
図2. ピクチャを管理するUDBの設定例


4. 再利用するピクチャの番号を可変DBで管理する
手順3では分類分けした処理のピクチャ開始・終了番号をUDBに登録してみました。
しかしピクチャによってはもっと細かく管理する必要があります。
しかしピクチャによってはもっと細かく管理する必要があります。
フィールドメニューの例で考えてみます。
フィールドメニューには以下のようなピクチャが使用されています。
・メインメニューのウインドウ
・メインメニューの文字列ピクチャ
・メインメニューのカーソル
etc.
フィールドメニューには以下のようなピクチャが使用されています。
・メインメニューのウインドウ
・メインメニューの文字列ピクチャ
・メインメニューのカーソル
etc.
このうちカーソルのピクチャなどは入力されたキーに応じて座標を移動させる必要があります。
そうなるとカーソルのピクチャ番号はどこかに記憶しておかなければいけません。
そうなるとカーソルのピクチャ番号はどこかに記憶しておかなければいけません。
今回は可変DBでピクチャ番号を管理する方法で解説しています。
※なぜ可変DBで管理するのかは、ややこしいので読みたい方のみご覧ください。
※なぜ可変DBで管理するのかは、ややこしいので読みたい方のみご覧ください。
可変DBでピクチャを管理する理由
+ | ... |
ピクチャ番号を可変DBで管理する場合、
UDBの開始・終了番号と同じようにピクチャ番号を管理するタイプを設定します。
UDBと異なりピクチャ番号を設定する必要はありません。
UDBの開始・終了番号と同じようにピクチャ番号を管理するタイプを設定します。
UDBと異なりピクチャ番号を設定する必要はありません。
図3. ピクチャを管理する可変DBの設定例


5. 実際の使用例
手順1~5を踏まえて作ってみたコモンイベントのサンプルです。
()