WOLF RPGエディター(ウディタ)/演出・システム【サイトトップへ戻る】
■マップの地形を1枚の画像で表示(大きな画像をマップ上に表示)
(更新:2024/05/15)


マップの地形を1枚の画像で表示する方法を紹介します。

当ページでは、マップ全体を1枚の画像で表示する方法だけでなく、
通常のタイルセットのマップに部分的に1枚の大きな地形画像を表示する方法も紹介しています。


ショートカット
■マップの地形を1枚の画像で表示するとは?
■ピクチャでは対応が難しい画像表示について
■遠景を使ってマップ全体の地面を1枚の画像で表示
■通行設定(通行可能or通行不能)をマップ上に設定
■地形画像を表示するピクチャ番号について
■コモンイベント「地形画像消去」を設定
■場所移動の設定
■ピクチャで地形表示:マップの左上に設定(マップ全体に表示)
■ピクチャで地形表示:指定したマス座標に表示
■ピクチャで地形表示:マップイベントの設定位置に表示
■ピクチャのアニメーションについて
■大きな画像の裏側へ回った時の処理


  
■マップの地形を1枚の画像で表示するとは?

マップの地形は、通常はタイルセットの画像をマップ上に設置して地形を表示しますが、
タイルセットの画像を使わずに、1枚の地形画像をそのままマップ上に表示する事もできます。

▼1枚の画像で地形を表示した時のゲーム画面(YADO作品「ニアとアインの冒険」の画像を使用)


1枚の地形画像を表示するメリットとデメリットは以下のとおりです。

メリット 1枚の地形画像をそのままマップ上に表示する事ができる。
またタイルセットやマップイベントが通常通りに使えるため、
1枚の地形画像の上に部分的にタイルセット(オートタイルのアニメーション)を使ったり、
マップイベントを使って宝箱やキャラクターなどを設置する事ができる。
ピクチャを使って地形画像(巨大なオブジェクトなど)を複数表示する事ができ、
【ピクチャエフェクト】を使ってアニメーションを表示させる事もできる。
移動できる範囲の設定は、タイルセットの通行設定を使って設定するため、
移動できる範囲の設定が容易にできる。
デメリット 地形画像のファイル容量が大きいため、作品全体のファイル容量も大きくなる。
◆補足
●1600×1600ピクセル(タイルサイズ[16×16]で100×100マス分のピクセルサイズ)
●PNG形式で保存(減色はしていない)

の条件で画像ファイルを保存すると、ファイル容量が3MBを超える事があります。
また地面の画像以外に、複数の大きな画像(オブジェクト)を表示したり、
【ピクチャエフェクト】を使ってアニメーションを表示させたりすると、
1つのマップで使うファイル容量が10MBを超える可能性があります。
地形画像を自作する必要がある。
また地面を描く時には、0.5マスの移動に合わせて道や階段などを作画する必要がある。
ピクチャを表示させるイベント設定に手間がかかる。
状況によっては、タイルセットの画像やマップイベントのキャラセットの画像など、
ピクチャ以外の画像で表示する必要がある。
大きな画像を表示すると、動作が不安定になる可能性がある。
◆補足
ウディタ[3.337]現在で、画像サイズは「2048×2048ピクセル以内」が推奨されています。



■地形画像の表示優先度

以下はマップ上における地形画像の表示優先度です。
表の下の方が優先的にゲーム画面の前面に表示されます。

遠景 ゲーム画面の最も奥に表示されます。
ピクチャ[-100000以下] 遠景より上、タイルセットより下。
タイルセット(前面表示ではない) タイルセットで「★」「▲」ではないもの。
ピクチャ[-1〜-99999] タイルセットよりも上、キャラクターよりも下。
キャラクター 主人公、マップイベント、タイルセットで「▲」のもの。
画面の下の方(画面Y座標が大きい方)がゲーム画面の前面に表示されます。
キャラクターの上 マップイベントの「前面表示」、タイルセットで「★」のもの。
フォグ フォグの画像。
ピクチャ[0以上] 他の表示方法よりも上。



■マップ全体の地面を1枚の画像で表示する

マップ全体の地面を1枚の画像で表示する場合は、遠景を使ってください。

画像のサイズは、マップのサイズ(ピクセルサイズ)と同じサイズで準備してください。

準備する地面の画像サイズの一例
タイルサイズ マップサイズ 計算式 準備する地面の画像サイズ
16×16 20×15マス 横16×20=320
縦16×15=240
320×240
16×16 50×40マス 横16×50=800
縦16×40=640
800×640
32×32 40×30マス 横32×40=1280
縦32×30= 960
1280×960
32×32 64×64マス 横32×64=2048
縦32×64=2048
2048×2048

遠景を別の用途で使用している場合は、ピクチャ[-100000]以下で地面の画像を表示してください。
なお、マップの作成画面に地面の画像を表示するためには、遠景に地面の画像を設定する必要があります。
そのため、マップの作成時は一時的に遠景に地面の画像を設定しておいた方が良いでしょう。



■地面の画像の上に別の地形画像を表示

地面の画像の上に1枚の地形画像を表示する場合は、ピクチャを使ってください。

ピクチャを設定する際は、必ず「スクロールとリンク」にチェックを入れてください。

▼ピクチャの表示例(ピクチャ番号[-1]なので、キャラクターの下に表示されています)




■画像ファイルを保存するフォルダーについて

地形用の画像ファイルは、フォルダー[Picture]に保存しても良いですが、
出来れば新たなフォルダーを作成して保存した方が良いでしょう。

▼フォルダー[MapG]を作成し、その中に地形用の画像ファイルを保存


画像のファイル名は「001_enkei」などと、ファイル名の頭に使用するマップIDを記載しておくと、
どこのマップで使うのかが分かりやすくなります。

また作成したフォルダーの中に、更にフォルダー[001][002]などを作成し、
マップIDごとに保存するフォルダーを変えるのも良い保存方法と言えます。


▲トップへ戻る▲


  
■ピクチャでは対応が難しい画像表示について

キャラクター(主人公やマップイベント)より前面に大きな画像を表示する場合は、
通常はピクチャ番号[0以上]を使って表示します。

しかしピクチャでは対応が難しい画像の表示も存在します。



例えば下図の女神像は2マス分の画像で1組となっており、
像の上部は「▲(通行可能/キャラクターが同じマスの場合は、キャラクターは像の後ろに隠れる)」、
像の下部は「×(通行不能)」になっています。



像の上部とキャラクターが重なると、キャラクターは像の後ろに隠れます。



像の上部の「画面Y座標」より、キャラクターの「画面Y座標」の方が大きい(画面の下の方に居る)場合は、
キャラクターは像の前に表示されます。

▼画面の縦位置で比べると、像の上部よりドラゴンの方が画面の下の方にいるので、
 ドラゴンの羽などは像より前面に表示されています。



しかし像の上部をピクチャ番号[0以上]で表示すると、像の上部と下部のつなぎ目の所が不自然な表示になる事があります。



このような不自然な表示を無くすためには、像の上部をタイルセットの画像(▲の設定)で表示したり、
像の画像をキャラセットの画像にしてマップイベントで表示したりと、ピクチャを使わない方法で表示する必要があります。

▼キャラセットを準備(方向固定&アニメ無しなので、下向きの1パターンのみでも問題ありません)


▼キャラセットを表示するマップイベント(待機時アニメ[OFF]/方向固定[ON]/影グラフィック番号[1:影なし])



▲トップへ戻る▲


  
■遠景を使ってマップ全体の地面を1枚の画像で表示

遠景を使ってマップ全体の地面を1枚の画像で表示する方法を紹介します。

遠景の設定は「マップの基本設定」の画面から設定する方法と、
システムDB[0:マップ設定]」の画面から設定する方法がありますが、
マップの基本設定」の方が分かりやすくてお勧めです。(一応システムDBの設定方法も紹介)

なお、既に遠景を使用していて、遠景には地面の画像を設定する事ができない場合は、
■ピクチャで地形表示:マップの左上に設定(マップ全体に表示)で設定してください。



■マップの基本設定で遠景を設定

マップを作成する画面にあるアイコンをクリック。
または画面上部にある[編集]→[マップの基本設定]を選択してください。



マップの基本設定の画面が表示されましたら、「登録する」にチェックを入れて、
遠景設定の「使用する」にチェックを入れて、「ファイル名指定」にチェックを入れてください。

「リンクしない」となっている設定は「遠景をマップにリンク」に変えてください。

そして「ファイル」の所に遠景画像のファイルアドレスを設定してください。
(設定例ではサンプルゲームのタイトル画面のファイルアドレスを設定)



画面下のOKを押すと、マップに遠景画像が読み込まれます。





■システムDB[0:マップ設定]で遠景を設定

システムDB[0:マップ設定]の画面を開き、画面中央で遠景を設定するマップを選択し、
項目[4:遠景番号]を「[-3]:ファイル名で指定」に変えて、項目[7:遠景ファイル名[遠景番号=-3]]の設定欄をクリックして、
画面下の入力画面で遠景画像のファイルアドレスを設定してください。



項目[7:遠景ファイル名[遠景番号=-3]]の文字列は…
〜ファイルアドレス〜
0
0
1
4行で設定してください。

2〜4行目の数値は…
0=横方向のスクロール
0=縦方向のスクロール
1=マップのスクロールとリンクさせる場合は「1」を設定
となっています。

設定が宜しければ、システムDBの画面下にあるOKを押してください。



■遠景が表示されない(表示が更新されない)時の対処法

マップを作成する画面に遠景画像が表示されない(最新状態に更新されない)場合は、
マップを作成する画面の上で右クリックを押して「マップチップを手動更新」を選択するか、
マップ選択画面で一度別のマップへ移動して元のマップへ戻ってくるか、いずれかの操作を行ってください。



なお、遠景を表示するためには、レイヤー[1][2][3]全て透明なチップにする必要があります。





■システムDB[13:遠景画像]について

システムDB[13:遠景画像]で設定した遠景をシステムDB[0:マップ設定]項目[4:遠景番号]に設定する方法でも、
遠景を設定する事ができます。

しかしシステムDB[0:マップ設定]に直接遠景を設定しても、処理自体は変わらないので、
無理にシステムDB[13:遠景画像]を使う必要はありません。

なお、同じ遠景画像を複数のマップで使う場合やイベント処理で別の遠景画像に変える事がある場合は、
システムDB[13:遠景画像]に遠景を設定して処理した方が良いでしょう。


▲トップへ戻る▲


  
■通行設定(通行可能or通行不能)をマップ上に設定

タイルセットを使って、マップ上の移動できる範囲を設定します。

設定方法はオートタイル基本タイルセットの2種類があります。

【設定例で使っている画像をダウンロードする】



■オートタイルで通行設定

事前に通行不能を設定するオートタイルの画像透明色に塗り潰したオートタイルの画像を準備してください。

タイルセットエディタを開き、未使用のオートタイルに通行不能を設定するオートタイルの画像を設定し、
通行設定を「×(通行不能)」にしてください。



キャラクターが移動できないマスに、通行不能を設定するタイルを設置してください。



通行設定が終わりましたら、再びタイルセットエディタを開き、透明なオートタイルの画像に変えてください。



これで設定完了です。



■基本タイルセットで通行設定

通行不能を設定するタイルがあるタイルセット画像同じ位置に透明なタイルを設定したタイルセット画像を準備してください。

タイルセットエディタにて通行不能を設定するタイルがあるタイルセット画像を読み込み、
通行設定を「×(通行不能)」にします。



キャラクターが移動できないマスに、通行不能を設定するタイルを設置してください。



通行設定が終わりましたら、再びタイルセットエディタを開き、
同じ位置に透明なタイルを設定したタイルセット画像に変えてください。



これで設定完了です。



■透明なタイルでも一応通行設定はできますが…

透明なタイルの状態でも一応通行設定はできます。

しかし透明な状態では正しく設定されているのかどうかが分かりにくくなるため、
少々手間でも通行不能を設定するタイルに変えて通行設定を行った方が良いでしょう。



■0.5マス単位の通行設定について

タイルセットエディタにて、通行設定の「○」「×」を設定する際、
Shiftキーを押しながらクリックすると、0.5マス単位の通行設定になります。




▲トップへ戻る▲


  
■地形画像を表示するピクチャ番号について

ピクチャの番号は、重複して使用する事を避ける必要があります。

地形画像のピクチャはマップイベントを使って表示するため、
例えば「ピクチャを表示するマップイベントのイベントID+1000=ピクチャ番号」などで設定すると、
ピクチャ番号の管理が楽になり、ピクチャを表示するマップイベントをコピー&貼り付けで複製した場合も、
マップイベントごとに使用するピクチャ番号が自動的に変わります。

ピクチャの使用用途 計算式 使用するピクチャ番号
遠景とタイルセットの間に表示 -100999+マップイベントのイベントID -100999 〜 -100000
タイルセットとキャラクターの間に表示 -1999+マップイベントのイベントID -1999 〜 -1000
キャラクターの上に表示 1000+マップイベントのイベントID 1000 〜 1999

上記の設定方法の場合、マップイベントのイベントIDが大きくなると、ピクチャ番号も大きくなります。

そのため、例えば大きな木などを重ねて表示する場合は、
マップの上の方から順にマップイベントを設定して、マップイベントのイベントIDを上から順に大きくしていくと、
マップの上の方から順に使用するピクチャ番号が大きくなり、画像の重なり方が自然な形になります。


                  




ピクチャの表示順に関しては、【ピクチャエフェクト】の「ピクチャのID移動」や「Zオーダーを変更」を使えば、
一応ピクチャの表示順を並び替える事ができます。

【ピクチャエフェクトの説明を見る】

しかし並び替えるには、並び替えを行う処理を設定する必要があるため、
イベント設定に慣れていない方が設定すると、正常に表示できない可能性があります。

また並び替えると「イベントID+1000=ピクチャ番号」のルールでは無くなるため、
ピクチャがどのような表示順で表示しているのかを覚えておく必要があります。


▲トップへ戻る▲


  
■コモンイベント「地形画像消去」を設定

別のマップへ移動する時には、前のマップで表示した地形画像のピクチャを消去する処理が必要になります。

そのため、マップ上にピクチャで地形画像を表示している場合は、以下のコモンイベントの設定が必要です。

【イベントコード表示】【コモン出力ファイル】

■コモンイベント「地形画像消去」

起動条件:並列実行(常時)

■変数操作+: CSelf10[現在のマップ番号] = 現在のマップID
■条件分岐(変数): 【1】 CSelf10[現在のマップ番号] が CSelf11[消去実行のマップ番号] 以外
-◇分岐: 【1】 [ CSelf10[現在のマップ番号] が CSelf11[消去実行のマップ番号] 以外 ]の場合↓
|■変数操作+: CSelf11[消去実行のマップ番号] = 現在のマップID
|■ピクチャ消去:-100999 〜 -100000 / 0(0)フレーム
|■ピクチャ消去:-1999 〜 -1000 / 0(0)フレーム
|■ピクチャ消去:1000 〜 1999 / 0(0)フレーム
|■ピクチャエフェクト:-100999 〜 -100000 [エフェクト全解除]
|■ピクチャエフェクト:-1999 〜 -1000 [エフェクト全解除]
|■ピクチャエフェクト:1000 〜 1999 [エフェクト全解除]
|■
◇分岐終了◇

なお、ウディタの仕様では、マップイベントコモンイベントの両方に並列実行を設定した場合、
マップイベントの方が先に実行されるため、場所移動した移動先のマップに地形画像をピクチャで表示する設定があった場合…
【1】別のマップへ移動
【2】マップイベントの並列実行で地形画像をピクチャで表示
【3】コモンイベントの並列実行でピクチャを全消去

と言った処理順になってしまい、移動先のマップで表示したピクチャを全て消去してしまいます。

そのため、地形画像をピクチャで表示するマップイベントを設定する場合は、
マップイベントからコモンイベント「地形画像消去」を呼び出して、ピクチャを消去する処理を実行する必要があります。


▲トップへ戻る▲


  
■場所移動の設定

地形画像をピクチャで表示している場合で、別のマップへ場所移動する時には、
場所移動の前後に「トランジション準備」「トランジション実行」を設定し、
場所移動は「トランジションを行わない [最高速]」で設定してください。

▼設定例(サンプルゲームのサンプルマップBからサンプルマップAへ場所移動する設定)
【イベントコード表示】

■トランジション準備
■場所移動:主人公 ▲マップID1[サンプルマップA] X:15 Y:1 [トランジションなし]
■トランジション実行


▲トップへ戻る▲


  
■ピクチャで地形表示:マップの左上に設定(マップ全体に表示)

マップの左上(マス座標[X=0][Y=0]の左上)にピクチャを表示する設定例です。

主にマップ全体に画像を表示する時に使います。

このマップイベントはマス座標[X=0][Y=0]に設置する必要は無く、マップ内のどこかに設置すれば機能します。



▼-100999〜-100000(遠景とタイルセットの間に表示)

【イベントコード表示】

■マップイベント「地形表示(マップ左上)」

起動条件:並列実行
起動条件変数:なし

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = -100999 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作: このEvのSelf1 = Sys104:Xスクロール値 * -1
■変数操作: このEvのSelf2 = Sys105:Yスクロール値 * -1
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf0 Y:このEvのSelf1 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■イベントの一時消去:このEv (0フレーム)



▼-1999〜-1000(タイルセットとキャラクターの間に表示)

【イベントコード表示】

■マップイベント「地形表示(マップ左上)」

起動条件:並列実行
起動条件変数:なし

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = -1999 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作: このEvのSelf1 = Sys104:Xスクロール値 * -1
■変数操作: このEvのSelf2 = Sys105:Yスクロール値 * -1
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf0 Y:このEvのSelf1 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■イベントの一時消去:このEv (0フレーム)



▼1000〜1999(キャラクターの上に表示)

【イベントコード表示】

■マップイベント「地形表示(マップ左上)」

起動条件:並列実行
起動条件変数:なし

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = 1000 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作: このEvのSelf1 = Sys104:Xスクロール値 * -1
■変数操作: このEvのSelf2 = Sys105:Yスクロール値 * -1
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf0 Y:このEvのSelf1 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■イベントの一時消去:このEv (0フレーム)



▼合体設定も可能

-100999〜-100000(遠景とタイルセットの間に表示)」と
-1999〜-1000(タイルセットとキャラクターの間に表示)」と
1000〜1999(キャラクターの上に表示)」を1つのマップイベントに設定する事もできます。

コモンイベントを呼び出す【イベントの挿入】は最初の行に1つだけ、
【イベントの一時消去】は最後の行に1つだけ設定してください。

【イベントコード表示】

■マップイベント「地形表示(マップ左上)」

起動条件:並列実行
起動条件変数:なし

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = -100999 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作: このEvのSelf1 = Sys104:Xスクロール値 * -1
■変数操作: このEvのSelf2 = Sys105:Yスクロール値 * -1
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf1 Y:このEvのSelf2 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■変数操作: このEvのSelf0 = -1999 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf1 Y:このEvのSelf2 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■変数操作: このEvのSelf0 = 1000 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf1 Y:このEvのSelf2 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■イベントの一時消去:このEv (0フレーム)


▲トップへ戻る▲


  
■ピクチャで地形表示:指定したマス座標に表示

指定したマス座標にピクチャを表示します。

このマップイベントは、マップ内のどこかに設置すれば機能します。

イベント設定例では「Xマス座標=20」「Yマス座標=10」で設定しています。



イベントコマンドの設定例は「マスの左上」になっていますが、
イベントコードは「マスの中央」と「マスの足元」も用意しています。

▼「黄色四角=指定したマス座標」「赤色十字=ピクチャ表示の座標基点」「ロゴマーク=ピクチャを表示した時のイメージ」
マスの左上 マスの中央 マスの足元

またイベントコードには「標準座標(1マス単位)」と「精密座標(0.5マス単位)」を用意しています。



▼-100999〜-100000(遠景とタイルセットの間に表示)

【イベントコード表示(標準座標マスの左上)】【イベントコード表示(精密座標マスの左上)】
【イベントコード表示(標準座標マスの中央)】【イベントコード表示(精密座標マスの中央)】
【イベントコード表示(標準座標マスの足元)】【イベントコード表示(精密座標マスの足元)】

■マップイベント「地形表示(Ev位置)」

起動条件:並列実行
起動条件変数:なし

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = -100999 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作: このEvのSelf1 = 20 + 0
■変数操作: このEvのSelf2 = 10 + 0
■変数操作: このEvのSelf1〜このEvのSelf2 *= Sys118:[読]タイルサイズ + 0
■変数操作: このEvのSelf1 -= Sys104:Xスクロール値 + 0
■変数操作: このEvのSelf2 -= Sys105:Yスクロール値 + 0
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf0 Y:このEvのSelf1 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■イベントの一時消去:このEv (0フレーム)



▼-1999〜-1000(タイルセットとキャラクターの間に表示)

【イベントコード表示(標準座標マスの左上)】【イベントコード表示(精密座標マスの左上)】
【イベントコード表示(標準座標マスの中央)】【イベントコード表示(精密座標マスの中央)】
【イベントコード表示(標準座標マスの足元)】【イベントコード表示(精密座標マスの足元)】

■マップイベント「地形表示(Ev位置)」

起動条件:並列実行
起動条件変数:なし

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = -1999 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作: このEvのSelf1 = 20 + 0
■変数操作: このEvのSelf2 = 10 + 0
■変数操作: このEvのSelf1〜このEvのSelf2 *= Sys118:[読]タイルサイズ + 0
■変数操作: このEvのSelf1〜このEvのSelf2 += Sys118:[読]タイルサイズ / 2
■変数操作: このEvのSelf1 -= Sys104:Xスクロール値 + 0
■変数操作: このEvのSelf2 -= Sys105:Yスクロール値 + 0
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf0 Y:このEvのSelf1 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■イベントの一時消去:このEv (0フレーム)



▼1000〜1999(キャラクターの上に表示)

【イベントコード表示(標準座標マスの左上)】【イベントコード表示(精密座標マスの左上)】
【イベントコード表示(標準座標マスの中央)】【イベントコード表示(精密座標マスの中央)】
【イベントコード表示(標準座標マスの足元)】【イベントコード表示(精密座標マスの足元)】

■マップイベント「地形表示(Ev位置)」

起動条件:並列実行
起動条件変数:なし

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = 1000 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作: このEvのSelf1 = 20 + 0
■変数操作: このEvのSelf2 = 10 + 0
■変数操作: このEvのSelf1〜このEvのSelf2 *= Sys118:[読]タイルサイズ + 0
■変数操作: このEvのSelf1 += Sys118:[読]タイルサイズ / 2
■変数操作: このEvのSelf2 += Sys118:[読]タイルサイズ - 1
■変数操作: このEvのSelf1 -= Sys104:Xスクロール値 + 0
■変数操作: このEvのSelf2 -= Sys105:Yスクロール値 + 0
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf0 Y:このEvのSelf1 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■イベントの一時消去:このEv (0フレーム)



▼合体設定は一応可能

複数の■ピクチャで地形表示:指定したマス座標に表示を1つのマップイベントに設定したり、
■ピクチャで地形表示:マップの左上に設定(マップ全体に表示)と、
■ピクチャで地形表示:指定したマス座標に表示を合わせて1つのマップイベントに設定する事は一応可能です。

但しピクチャ番号が同じピクチャ番号にならないようにする必要があります。

コモンイベントを呼び出す【イベントの挿入】は最初の行に1つだけ、
【イベントの一時消去】は最後の行に1つだけ設定してください。

▼「マップの左上」と「指定したマス座標(ピクチャ番号は[イベントID+1001」)」を1つにまとめた設定例
【イベントコード表示】

■マップイベント「地形表示(複合)」

起動条件:並列実行
起動条件変数:なし

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = 1000 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作: このEvのSelf1 = Sys104:Xスクロール値 * -1
■変数操作: このEvのSelf2 = Sys105:Yスクロール値 * -1
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf1 Y:このEvのSelf2 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]

■変数操作: このEvのSelf0 += 1 + 0
■変数操作: このEvのSelf1 = 20 + 0
■変数操作: このEvのSelf2 = 10 + 0
■変数操作: このEvのSelf1〜このEvのSelf2 *= Sys118:[読]タイルサイズ + 0
■変数操作: このEvのSelf1 -= Sys104:Xスクロール値 + 0
■変数操作: このEvのSelf2 -= Sys105:Yスクロール値 + 0
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf1 Y:このEvのSelf2 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■イベントの一時消去:このEv (0フレーム)


▲トップへ戻る▲


  
■ピクチャで地形表示:マップイベントの設定位置に表示

マップイベントを設置した位置にピクチャを表示します。



イベントコマンドの設定例は「マップイベントの左上」になっていますが、
イベントコードは「マップイベントの中央」と「マップイベントの足元」も用意しています。

▼「黄色四角=マップイベントの位置」「赤色十字=ピクチャ表示の座標基点」「ロゴマーク=ピクチャを表示した時のイメージ」
マップイベントの左上 マップイベントの中央 マップイベントの足元



▼-100999〜-100000(遠景とタイルセットの間に表示)

【イベントコード表示(マップイベントの左上)】
【イベントコード表示(マップイベントの中央)】
【イベントコード表示(マップイベントの足元)】

■マップイベント「地形表示(Ev位置)」

起動条件:並列実行
起動条件変数:なし

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = -100999 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作+: このEvのSelf1 = 呼出マップイベント の 画面X座標
■変数操作+: このEvのSelf2 = 呼出マップイベント の 画面Y座標
■変数操作: このEvのSelf1 -= Sys118:[読]タイルサイズ / 2
■変数操作: このEvのSelf2 -= Sys118:[読]タイルサイズ + 0
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf0 Y:このEvのSelf1 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■イベントの一時消去:このEv (0フレーム)



▼-1999〜-1000(タイルセットとキャラクターの間に表示)

【イベントコード表示(マップイベントの左上)】
【イベントコード表示(マップイベントの中央)】
【イベントコード表示(マップイベントの足元)】

■マップイベント「地形表示(Ev位置)」

起動条件:並列実行
起動条件変数:なし

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = -1999 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作+: このEvのSelf1 = 呼出マップイベント の 画面X座標
■変数操作+: このEvのSelf2 = 呼出マップイベント の 画面Y座標
■変数操作: このEvのSelf1 -= Sys118:[読]タイルサイズ / 2
■変数操作: このEvのSelf2 -= Sys118:[読]タイルサイズ + 0
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf0 Y:このEvのSelf1 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■イベントの一時消去:このEv (0フレーム)



▼1000〜1999(キャラクターの上に表示)

【イベントコード表示(マップイベントの左上)】
【イベントコード表示(マップイベントの中央)】
【イベントコード表示(マップイベントの足元)】

■マップイベント「地形表示(Ev位置)」

起動条件:並列実行
起動条件変数:なし

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = 1000 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作+: このEvのSelf1 = 呼出マップイベント の 画面X座標
■変数操作+: このEvのSelf2 = 呼出マップイベント の 画面Y座標
■変数操作: このEvのSelf1 -= Sys118:[読]タイルサイズ / 2
■変数操作: このEvのSelf2 -= Sys118:[読]タイルサイズ + 0
■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス」 X:このEvのSelf0 Y:このEvのSelf1 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■イベントの一時消去:このEv (0フレーム)


▲トップへ戻る▲


  
■ピクチャのアニメーションについて

ピクチャによるアニメーションは、事前にアニメーションさせる画像を1枚の画像ファイルにまとめたものを準備し、
イベントコマンド【ピクチャエフェクト】の「自動パターン切替(ループ)」などを使ってアニメーションを実行します。

▼このような画像を用意する


▼分割数[横4][縦1]の場合
【イベントコード表示】

■ピクチャ表示:このEvのSelf0 [左上]ファイル「ファイルアドレス].png」 X:このEvのSelf1 Y:このEvのSelf2 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■ピクチャエフェクト:このEvのSelf0 [自動パターン切替(ループ)] 開始パターン[1] → 終了パターン[4] 間隔(16)フレーム


▲トップへ戻る▲


  
■大きな画像の裏側へ回った時の処理

キャラクターの上に表示される大きな画像を表示した時に、
その大きな画像の裏側へ主人公が移動すると、主人公が隠れて見えなくなります。



このような時には、大きな画像を半透明にすると見やすくなりますが、
しかし単に半透明にすると土台の下の地面が見えてしまい、不自然な表示になってしまいます。



このような問題を防ぐには、半透明となる上部半透明にはならない下部の2つの画像で表示すると良いでしょう。

▼上部と下部を別々の画像で表示した場合


画像の表示は、上部はピクチャ[1000〜1999]で、下部はピクチャ[-1999〜-1000]で表示します。

但し■ピクチャでは対応が難しい画像表示についての問題が発生する場合は、
上部はピクチャ[1000〜1999]で、下部はキャラセットで表示します。

▼このように台の裏側でキャラクターが隠れる場合は、下部はキャラセットで表示




土台の地面には通行不能のタイルを設定してください。



なお、決定キーを押すと大きな画像を調べる事ができるようにする場合は、
大きな画像を表示するマップイベントとは別に決定キー用のマップイベントを設置してください。



接触範囲拡張」を通行不能のマスの範囲で設定すると、大きな画像のどの方向から調べても文章が表示されます。





上部の半透明(不透明度)は、ピクチャを表示しているマップイベントの「画面Y座標」よりも、
主人公の「画面Y座標」の方が小さくなった(主人公が上へ移動した)時に、
255−(マップイベントの画面Y座標−主人公の画面Y座標)×3=不透明度」の計算によって不透明度を変化させ、
主人公が上へ進むと徐々に透明なっていくように設定します。


不透明度は「100」まで下がるようにします。



下記設定例では、上部の画像を表示する際、下部の画像の縦サイズを減算してY表示位置を設定しています。

そのため、下部の画像の縦サイズが変わっても、自動的に上部の画像のY表示位置が調整されます。



▼上部も下部もピクチャ


【イベントコード表示】

■マップイベント「大きい女神像」

起動条件:並列実行
起動条件変数:なし
グラフィック:なし

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = -1999 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作+: このEvのSelf1 = 呼出マップイベント の 画面X座標
■変数操作+: このEvのSelf2 = 呼出マップイベント の 画面Y座標
■ピクチャ表示:このEvのSelf0 [中央下]ファイル「MapG/大きな女神像(土台).png」 X:このEvのSelf1 Y:このEvのSelf2 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■変数操作+: このEvのSelf2 -= ピクチャ:このEvのSelf0 の 画像サイズ(縦)
■変数操作: このEvのSelf0 = 1000 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■ピクチャ表示:このEvのSelf0 [中央下]ファイル「MapG/大きな女神像(上部).png」 X:このEvのSelf1 Y:このEvのSelf2 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■ループ開始
|■変数操作+: このEvのSelf2 = 呼出マップイベント の 画面Y座標
|■変数操作+: このEvのSelf2 -= 主人公 の 画面Y座標
|■条件分岐(変数): 【1】 このEvのSelf2 が 1 以上
|-◇分岐: 【1】 [ このEvのSelf2 が 1 以上 ]の場合↓
||■変数操作: このEvのSelf3 = 255 + 0
||■変数操作: このEvのSelf3 -= このEvのSelf2 * 3
||■変数操作: このEvのSelf3 下限= 100 + 0
||■ピクチャ移動:このEvのSelf0 相対X:0 Y:0 / 0(0)フレーム / パターン 同値 / 透 このEvのSelf3 /
        表示形式:同値 / 角 同値 / 拡 同値 / カラー 同値
||■
|-◇上記以外
||■ピクチャ移動:このEvのSelf0 相対X:0 Y:0 / 0(0)フレーム / パターン 同値 / 透 255 / 表示形式:同値 /
        角 同値 / 拡 同値 / カラー 同値
||■
|◇分岐終了◇
|■ウェイト:1 フレーム
|■
◇ループここまで◇◇



▼上部はピクチャで下部はキャラセット


【イベントコード表示】

■マップイベント「大きい女神像」

起動条件:並列実行
起動条件変数:なし
グラフィック:大きな女神像の台座のみのキャラセット
待機時アニメ:チェックなし
方向固定:チェックあり

■イベントの挿入[名]: ["地形画像消去"] <コモンEv 215>
■変数操作: このEvのSelf0 = 1000 + 0
■変数操作+: このEvのSelf0 += 呼出マップイベント の イベントID
■変数操作+: このEvのSelf1 = 呼出マップイベント の 画面X座標
■変数操作+: このEvのSelf2 = 呼出マップイベント の 画面Y座標
■ピクチャ表示:このEvのSelf0 [中央下]ファイル(このEvのキャラチップ画像) X:このEvのSelf1 Y:このEvのSelf2 /
       0(0)フレーム / パターン 1 / 透 0 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■変数操作+: このEvのSelf2 -= ピクチャ:このEvのSelf0 の 画像サイズ(縦)
■ピクチャ表示:このEvのSelf0 [中央下]ファイル「MapG/大きな女神像(上部).png」 X:このEvのSelf1 Y:このEvのSelf2 /
       0(0)フレーム / パターン 1 / 透 255 / 通常 / 角 0 / 拡 100% / カラー R[100] G[100] B[100]
■ループ開始
|■変数操作+: このEvのSelf2 = 呼出マップイベント の 画面Y座標
|■変数操作+: このEvのSelf2 -= 主人公 の 画面Y座標
|■条件分岐(変数): 【1】 このEvのSelf2 が 1 以上
|-◇分岐: 【1】 [ このEvのSelf2 が 1 以上 ]の場合↓
||■変数操作: このEvのSelf3 = 255 + 0
||■変数操作: このEvのSelf3 -= このEvのSelf2 * 3
||■変数操作: このEvのSelf3 下限= 100 + 0
||■ピクチャ移動:このEvのSelf0 相対X:0 Y:0 / 0(0)フレーム / パターン 同値 / 透 このEvのSelf3 /
        表示形式:同値 / 角 同値 / 拡 同値 / カラー 同値
||■
|-◇上記以外
||■ピクチャ移動:このEvのSelf0 相対X:0 Y:0 / 0(0)フレーム / パターン 同値 / 透 255 / 表示形式:同値 /
        角 同値 / 拡 同値 / カラー 同値
||■
|◇分岐終了◇
|■ウェイト:1 フレーム
|■
◇ループここまで◇◇



▼半透明化の設定

半透明化に成り始めるタイミングや半透明になっていく速度は…
■条件分岐(変数): 【1】 このEvのSelf2 が 1 以上
-◇分岐: 【1】 [ このEvのSelf2 が 1 以上 ]の場合↓
|■変数操作: このEvのSelf3 = 255 + 0
|■変数操作: このEvのSelf3 -= このEvのSelf2 * 3
|■変数操作: このEvのSelf3 下限= 100 + 0
の設定で決まります。

半透明化が始まるY位置を
上に32ピクセルずらす
【イベントコード表示(追加分のみ)】
■変数操作: このEvのSelf2 -= 32 + 0
■条件分岐(変数): 【1】 このEvのSelf2 が 1 以上
-◇分岐: 【1】 [ このEvのSelf2 が 1 以上 ]の場合↓
|■変数操作: このEvのSelf3 = 255 + 0
|■変数操作: このEvのSelf3 -= このEvのSelf2 * 3
|■変数操作: このEvのSelf3 下限= 100 + 0
半透明化する速度を3分の2にする 【イベントコード表示(変更箇所のみ)】
■条件分岐(変数): 【1】 このEvのSelf2 が 1 以上
-◇分岐: 【1】 [ このEvのSelf2 が 1 以上 ]の場合↓
|■変数操作: このEvのSelf3 = 255 + 0
|■変数操作: このEvのSelf3 -= このEvのSelf2 * 2
|■変数操作: このEvのSelf3 下限= 100 + 0
半透明化する速度を2分の1にする 【イベントコード表示(変更箇所のみ)】
■条件分岐(変数): 【1】 このEvのSelf2 が 1 以上
-◇分岐: 【1】 [ このEvのSelf2 が 1 以上 ]の場合↓
|■変数操作: このEvのSelf3 = 255 + 0
|■変数操作: このEvのSelf3 -= このEvのSelf2 + 0
|■変数操作: このEvのSelf3 -= このEvのSelf2 / 2
|■変数操作: このEvのSelf3 下限= 100 + 0
半透明化する速度を1.5倍に上げる 【イベントコード表示(変更箇所のみ)】
■条件分岐(変数): 【1】 このEvのSelf2 が 1 以上
-◇分岐: 【1】 [ このEvのSelf2 が 1 以上 ]の場合↓
|■変数操作: このEvのSelf3 = 255 + 0
|■変数操作: このEvのSelf3 -= このEvのSelf2 * 4
|■変数操作: このEvのSelf3 -= このEvのSelf2 / 2

|■変数操作: このEvのSelf3 下限= 100 + 0
一気に半透明化 【イベントコード表示(変更箇所のみ)】
■条件分岐(変数): 【1】 このEvのSelf2 が 1 以上
-◇分岐: 【1】 [ このEvのSelf2 が 1 以上 ]の場合↓

|■変数操作: このEvのSelf3 = 100 + 0


▲トップへ戻る▲



◎関連ページ

◆マップの基本設定
◆イベントコマンド【ピクチャ】
◆イベントコマンド【エフェクト】

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