WOLF RPGエディター(ウディタ)[3.337]/演出・システム【サイトトップへ戻る】
■アイテム画面からアイテムを使用してカギを開ける
(更新:2024/05/13)


特定のマップイベントの前でアイテム画面からアイテムを使用すると、イベントが実行する設定を行います。


ショートカット
■設定内容の確認と注意点
■ユーザーDBの準備
■影グラフィック番号の準備
■カギが使える条件を確認
■コモンイベントの設定
■マップイベントの設定:サンプルゲームのダンジョンに入る扉
■マップイベントの設定:宝箱

動作確認用データ(コモン素材)
ダウンロード後に右クリック→[すべて展開]で解凍し、
中に入っている「★このデータについて」をご覧ください。
必ずこのページの説明をご覧頂いた上で、
自己責任でデータをご利用ください。


  
■設定内容の確認と注意点

カギのかかった扉や宝箱に向かってアイテム画面からカギとなるアイテムを選択するとコモンイベントが起動し、
マップイベントのセルフ変数[0]を「1」にして、扉や宝箱が開くようにします。



以下はカギを使った時の動作イメージです。

カギが使えない所で使用 カギが使える所で使用 既にカギを使用したあと
扉が無い所


「ダンジョンのカギ」を選択


使用できない
カギのかかった扉の前


「ダンジョンのカギ」を選択


解錠(セルフ変数[0]に「1」を代入)
カギを開けた扉の前


「ダンジョンのカギ」を選択


解錠済みを表示



カギは何種類も用意する事ができ、またカギ以外の用途のアイテムも用意する事ができます。

アイテム 使用した時のイベント
赤いカギ 赤い宝箱や扉を開ける事ができる。
青いカギ 青い宝箱や扉を開ける事ができる。
レバーハンドル 取り付ける事で機械の操作が出来るようになる。
マッチ
ライター
ランプ、ロウソク、暖炉、導火線に火を点ける。
マッチは所持数が減り、
ライターは所持数が減らないと言った設定もできます。
水入りビン 人に渡したり、火を消したり、畑に水をやったり。
刃物の武器なら何でも良い ロープや配線を切ったり、果実を収穫したり。



目の前のマップイベントでカギが使えるかどうかの判断は「影グラフィック番号」を調べて判断します。





▼使用できるアイテムが複数ある場合

使用できるアイテムが複数ある場合は、起動するコモンイベントは全て同じコモンイベントIDで起動し、
可変DB[18:基本システム用変数]データ[8:万能ウィンドウ_コード返値]にあるアイテムコードを読み取って、
何のアイテムを使用したのかを判断します。

種類 アイテムコードの作成方法 アイテムコードの見本
アイテム ユーザーDB[2:アイテム]のデータID+10000 ダンジョンのカギ=10019
武器 ユーザーDB[3:武器]のデータID+20000 ロングソード=20008
防具 ユーザーDB[4:防具]のデータID+30000 ナイトシールド=30012



▼注意点

今回の処理では「アイテム画面を表示し、アイテムを選択して決定キーを押す」と言った手間がかかります。

そのため、アイテムの種類が多い場合やアイテムが使えそうな場所が多い場合は、
何度もアイテム画面を表示してアイテムを選択する必要があり、プレイヤーの負担が大きくなります。

プレイヤーとしては、例えばカギのかかった場所を調べるだけで…
「持っているカギで鍵を開けた。」または「持っているカギでは開きそうにない。」などと、
自動的にカギを使う仕様になってくれた方が嬉しいと思います。

実際にウディタのサンプルゲームあるダンジョンへ入る扉の処理では、
アイテム「ダンジョンのカギ」を持っているだけですぐにダンジョンへ入れるようになっています。

アイテム画面からアイテムを選択する仕様が本当に必要なのかをちゃんと考えた上で導入した方が良いでしょう。

アイテムを使う場所を見つける楽しみが増える」などと安易に考えて導入するのはお勧めできません。



▼使用場所を推理させる設定

カギとなるアイテムが何種類もある場合、1つずつ試していくのは手間がかかります。

プレイヤーの負担を考えるなら、例えばカギのかかった扉を調べた時に、
単に「カギがかかっている。」と表示するのでなく「カギ穴の所にハートのマークがある。」などとして、
カギのアイテム名を「ハート型のカギ」などにすると、使用場所が分かりやすくなり、
プレイヤーがいくつものカギを試す必要が無くなります。

「ハートのマーク」で「ハート型のカギ」では安直すぎる場合は、例えば…
「カギ穴の所に「心」の文字が書かれている。」→「ハート型のカギ」を使用
と使用場所がイメージしやすいものにしたり…
「カギ穴の所に「心」の文字が書かれている。」→「4のカギ」を使用
と言ったように、書かれていた漢字の画数と同じ数字のカギで開くようにするなど、
ちょっと考えないと使用場所が分からないようにする方法もあります。

アイテム画面からアイテムを使用する仕様ゲーム演出の一種なので、
どのように活かしてプレイヤーを楽しませていくのかは、制作者の腕の見せ所と言えるでしょう。



▼このような設定方法もある

マップイベントの設定を…
■文章:カギがかかっている。
■イベントの挿入[名]: ["○各種メニュー呼出"] <コモンEv 14> / 1:アイテム画面
と設定すると、マップイベントを調べた時に自動的にアイテム画面が表示されるようなり、
ここでアイテムを使う」と言った事が分かりやすくなります。

またYADOT-WOLFの別ページで紹介している設定方法を用いると、
カギとなっているアイテムのみをアイテム画面に表示させる事もできます。
【マップイベントからアイテム画面を起動し、使う、渡す、見せるのページを開く】

▼カギだけを表示している画面



▲トップへ戻る▲


  
■ユーザーDBの準備

使用するとコモンイベントが起動するアイテムを設定します。



■アイテムの設定

ユーザーDB[2:アイテム]カギのアイテムを作成してください。

2 使用可能な場面 [0]マップ時だけ
3 ■効果のタイプ [3]イベント起動
6 ┗[3]イベント番号指定 500215
7 使用回数制限 [1]無制限に使用可能



500215」はコモンイベント[215]を呼び出す設定です。

呼び出すコモンイベントを例えばコモンイベント[220]にする場合は、設定値を「500220」にしてください。

他にもカギのアイテムを設定する場合は、同じコモンイベントIDで設定してください。



アイテム使用時にSEを演奏する場合は、項目[20:使用時SE]にSEのファイルアドレスを設定してください。





■武器・防具の設定

武器や防具をアイテム画面で「カギ」として使用する場合は、
まず始めにユーザーDB[0:技能]にコモンイベントを呼び出す技能を準備してください。

0 技能の名前 イベント起動
2 ┏ 効果対象 [100]イベント呼出[マップのみ]
3 (あれば)┗イベント番号指定 500215
6 使用可能シーン [0]マップ時のみ





そしてユーザーDB[3:武器][4:防具]にある項目[アイテム使用で特殊技能?]にて「↓の特殊技能発動」を設定し、
技能「イベント起動」を設定してください。

アイテム使用で特殊技能? ↓の特殊技能発動
┣ 発動する特殊技能 イベント起動





■武器・防具の使用時SEについて

武器や防具も項目[使用時SE]を準備する事で、アイテム画面から武器や防具を使用した時にSEを演奏する事ができます。

なお武器や防具を使用した時にSEを演奏しない場合や武器や防具はアイテムとして使用できない場合は、
下記の項目[使用時SE]の準備は不要です。

▼次の「■使用できなかった時の文字列を設定」へジャンプ


武器や防具にも項目[使用時SE]を準備する場合は、まずユーザーDB[2:アイテム]のタイプの設定画面を表示し、
項目[使用時SE]の項目番号(20)を画面下のデータの所に設定して、[をコピー]をクリックしてください。
[をコピー]をクリックしたら、画面を閉じてください。




ユーザーDB[3:武器]のタイプの設定画面を表示し、未使用の項目番号を確認して、
その未使用の項目番号を画面下のデータの所に設定して、[に貼り付け]をクリックし、画面下をOKをクリック。




ユーザーDB[4:防具]のタイプの設定画面を表示し、未使用の項目番号を確認して、
その未使用の項目番号を画面下のデータの所に設定して、[に貼り付け]をクリックし、画面下をOKをクリック。




あとは作成した項目[使用時SE]にSEのファイルアドレスを設定してください。




  
■使用できなかった時の文字列を設定

アイテムを使用する場所では無かった時には、通常は「ここでは使用できない。」と表示されます。

しかし項目[使用時文章[戦](人名~]に文字列を設定すると、アイテム独自の文字列を表示する事ができます。

アイテム 18 使用時文章[戦](人名~
武器 25 ┣使用時文章[戦](人名~
防具 23 ┣使用時文章[戦](人名~



項目[使用時文章[戦](人名~]に設定なし 項目[使用時文章[戦](人名~]に設定あり


▲トップへ戻る▲


  
■影グラフィック番号の準備

システムDB[9:キャラ影グラフィック名]にて、以下の項目を新設してください。

種類 項目名 初期値
文字列 使用可能アイテムコード  
文字列 使用時文字列  
文字列 使用済み文字列  
変数 斜め実行可能 1
変数 0.5実行可能 1





カギ」を作成してください。

カギの種類が複数ある場合は種類ごとに用意してください。





項目[使用可能アイテム]にそのカギが使用できるアイテムコードを設定してください。

種類 アイテムコードの作成方法 アイテムコードの見本
アイテム ユーザーDB[2:アイテム]のデータID+10000 ダンジョンのカギ=10019
武器 ユーザーDB[3:武器]のデータID+20000 ロングソード=20008
防具 ユーザーDB[4:防具]のデータID+30000 ナイトシールド=30012

▼アイテム[19:ダンジョンのカギ]のアイテムコードを設定した場合




同じカギの効果がある複数のアイテムにある場合は、
複数のアイテムコードを何らかの区切り文字(何の文字でも良い)を挟みながら設定してください。

下図は「短剣」や「剣」になっている武器のアイテムコードを設定したものです。

▼項目を選択し、画面右下で編集すると楽に設定できます。




項目[使用時文字列]項目[使用済み文字列]に文字列を設定してください。

文字列を何も設定しない場合は、使用時&使用済み時には何も表示されません。





項目[斜め実行可能]項目[0.5実行可能]を設定してください。


項目[斜め実行可能]には、主人公が斜めを向いている時にカギが使えるかどうかを設定します。

項目[斜め実行可能]
設定値 斜め45度
正面0.5ずれ
正面
地面0.5ずれ
地面同じマス
2 使用可能 使用可能 使用可能 使用可能 使用可能
1 × 使用可能 使用可能 使用可能 使用可能
0 × × × 使用可能 使用可能
この色の「使用可能」は「0.5実行可能=1」の場合のみ使用可能です。


項目[0.5実行可能]には、0.5マスずれている時にカギが使えるかどうかを設定します。

項目[0.5実行可能]
設定値 正面0.5ずれ
地面0.5ずれ
地面4分の1のみ
1 使用可能 使用可能 ×
0 × × ×



以下はマップイベントに合わせた設定例です。

マップイベント 斜め実行可能 0.5実行可能 補足
キャラクター 2 1
キャラクターイベントは、
斜め45度の角度から話しかける事ができるので、
斜め実行可能は「2」の方が良いでしょう。
宝箱 1 1
斜め45度の角度でカギを使うには、
ちょっと離れ過ぎている感じがするので、
斜め実行可能は「1」か「0」が良いでしょう。
0 1
斜めの向きでは、
扉のカギを開けている感じがしないので、
斜め実行可能は「0」が良いかもしれません。
地面 1 0
マスの中心でアイテムを使って欲しい場合は、
0.5実行可能を「0」にすると良いでしょう。

向きは斜めでも問題ないと思うので、
斜め実行可能は「1」で良いでしょう。


▲トップへ戻る▲


  
■カギが使える条件を確認

カギが使えるマップイベントが複数ある場合は、調べる優先順位に沿って1つずつマップイベントを調べます。

カギが使えるマップイベントが1つ以上あり、まだマップイベントのセルフ変数[0]が「0」の場合は、
優先順位が最も高いマップイベントのセルフ変数[0]を「1」にします。

カギが使えるマップイベントが1つ以上あり、全てのマップイベントのセルフ変数[0]が「0以外」である場合は、
システムDB[9:キャラ影グラフィック名]にある項目[使用済み文字列](例:カギはかかっていない。が表示されます。

カギが使えるマップイベントが1つも無かった場合は「ここでは使用できない。」、
または項目[使用時文章[戦](人名~]に設定したアイテム固有の文字列が表示されます。



見本 処理内容 使用可能・不可能の補足
通行可能なマスにマップイベントがある場合は、
マップイベントと重ならないとカギが使えません。
0.5実行可能」と
斜め実行可能」の
全ての設定で使えない
0.5マスずれた状態でもカギを使う事ができます。 0.5実行可能=0
の場合は使えない
マップイベントと完全に重なった時には、無条件でカギが使えます。 0.5実行可能」と
斜め実行可能」の
全ての設定で使える
2つ並んでいる間に主人公がいる状態で、
主人公の向きに対して前後に並んでいる場合は、
主人公が向いている方向にあるマップイベントが優先されます。
0.5実行可能=0
の場合は使えない
2つ並んでいる間に主人公がいる状態で、
主人公が斜め方向に向いている場合は、
主人公が向いている方向にあるマップイベントが優先されます。
0.5実行可能=0
の場合は使えない


斜め実行可能=0
の場合は使えない
2つ並んでいる間に主人公がいる状態で、
主人公が上下向きでマップイベントが左右に並んでいる場合は、
左の方が優先されます。
主人公が左右向きでマップイベントが上下に並んでいる場合は、
上の方が優先されます。
0.5実行可能=0
の場合は使えない
縦横共に0.5マスずれた位置では、カギは使えません。 0.5実行可能」と
斜め実行可能」の
全ての設定で使えない
通行不可のマスにマップイベントがある場合は、
隣りのマスからマップイベントの方向を向いているとカギが使えます。
0.5実行可能」と
斜め実行可能」の
全ての設定で使える
地面と正面(通行不可)にマップイベントがある場合は、
地面の方が優先されます。
0.5実行可能」と
斜め実行可能」の
全ての設定で使える
0.5マスずれた状態で、主人公が斜め向きでは無い場合は、
左右に2つ並んでいる時には左の方が優先され、
上下に2つ並んでいる時には上の方が優先されます。
0.5実行可能=0
の場合は使えない
0.5マス離れている場合は、カギは使えません。 0.5実行可能」と
斜め実行可能」の
全ての設定で使えない
主人公が斜め方向に向いている場合で、
縦横にマップイベントがある場合は縦の方が優先されます。
斜め実行可能=0
の場合は使えない
主人公が斜め方向に向いている場合で、0.5マスずれていない場合は、
主人公のすぐ横にあるマップイベントが優先されます。
斜め実行可能=0
の場合は使えない


斜め実行可能=1
の場合は[1]のみ使える
主人公が斜め方向に向いている場合で、0.5マスずれている場合は、
主人公が向いている方向にあるマップイベントのみでカギが使えます。
斜め実行可能=0
の場合は使えない


0.5実行可能=0
の場合は使えない
主人公が斜め方向に向いている場合で、
斜め45度にマップイベントがある場合は、
その手間の縦横に通行不可のマスがあるとカギは使えません。
0.5実行可能」と
斜め実行可能」の
全ての設定で使えない



マップイベントは、どこかのページの起動条件が満たされていないとカギが使えません。



移動中のマップイベントや「半歩上に設置」になっているマップイベントには非対応であるため、
マップイベントは通常のマスに固定設置してください。


▲トップへ戻る▲


  
■コモンイベントの設定

コモンイベント[215]にアイテムを使用した時に起動するイベントを設定します。



【イベントコード表示】

■コモンイベント「カギ使用」

起動条件:呼び出しのみ
入力の数 / 結果を返す:設定なし

■DB読込(可変):CSelf10[アイテムコード] = 可変DB[ 基本システム用変数 : 8 : 0 ](18 : 万能ウィンドウ_コード返値 : 数値)
■変数操作: CSelf11[タイプID] = CSelf10[アイテムコード] / 10000
■変数操作: CSelf11[タイプID] += 1 + 0
■変数操作: CSelf12[データID] = CSelf10[アイテムコード] % 10000
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ 効果が無かった時の文章

■条件分岐(変数): 【1】 CSelf11[タイプID] が 2 と同じ 【2】 CSelf11[タイプID] が 3 と同じ
-◇分岐: 【1】 [ CSelf11[タイプID] が 2 と同じ ]の場合↓
|■DB読込(ユーザ):CSelf5[表示する文章] = ユーザDB[ アイテム:CSelf12[データID]:使用時文章[戦](人名~](2 : - : 18)
|■
-◇分岐: 【2】 [ CSelf11[タイプID] が 3 と同じ ]の場合↓
|■DB読込(ユーザ):CSelf5[表示する文章] = ユーザDB[ 武器:CSelf12[データID]:┣使用時文章[戦](人名~](3 : - : 25)
|■
|-◇上記以外
|■DB読込(ユーザ):CSelf5[表示する文章] = ユーザDB[ 防具:CSelf12[データID]:┣使用時文章[戦](人名~](4 : - : 23)
|■
◇分岐終了◇
■条件分岐(文字): 【1】 CSelf5[表示する文章]が "" と同じ
-◇分岐: 【1】 [ CSelf5[表示する文章] "" と同じ ]の場合↓
|■文字列操作:CSelf5[表示する文章] = "ここでは使用できない。"
|■
◇分岐終了◇
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ セルフ変数に向きと座標を設定

■変数操作+: CSelf33[向き] = 主人公 の 向き(1〜9)
■変数操作: CSelf34[斜め向き=1] = CSelf33[向き] % 2
■変数操作+: CSelf20[マスX地面1] = 主人公 の X座標(精密)
■変数操作+: CSelf25[マスY地面1] = 主人公 の Y座標(精密)
■変数操作: CSelf21[マスX地面2]〜CSelf24[マスX斜め] = CSelf20[マスX地面1] + 0
■変数操作: CSelf26[マスY地面2]〜CSelf29[マスY斜め] = CSelf25[マスY地面1] + 0
■変数操作: CSelf30[X0.5マスにいる] = CSelf20[マスX地面1] % 2
■変数操作: CSelf31[Y0.5マスにいる] = CSelf25[マスY地面1] % 2
■変数操作: CSelf32[X0.5+Y0.5マス] = CSelf30[X0.5マスにいる] + CSelf31[Y0.5マスにいる]
■条件分岐(変数): 【1】 CSelf32[X0.5+Y0.5マス] が 2 と同じ 【2】 CSelf32[X0.5+Y0.5マス] が 1 と同じ
-◇分岐: 【1】 [ CSelf32[X0.5+Y0.5マス] が 2 と同じ ]の場合↓
|▼ 縦も横も0.5マスの所に居て、地面も正面も調べないので、ここで処理を終了
|■文章:\cself[5]
|■イベント処理中断
|■
-◇分岐: 【2】 [ CSelf32[X0.5+Y0.5マス] が 0 と同じ ]の場合↓
|▼ マスの真ん中にいるので、0.5マスずれの地面は調べない
|■変数操作: CSelf21[マスX地面2] = 900000 + 0
|■
◇分岐終了◇
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ 向きごとに調べるマス座標を設定

■条件分岐(変数): 【1】 CSelf33[向き] が 1 と同じ 【2】 CSelf33[向き] が 2 と同じ 【3】 CSelf33[向き] が 3 と同じ
-◇分岐: 【1】 [ CSelf33[向き] が 1 と同じ ]の場合↓
|▼ 左下向き
|■変数操作: CSelf27[マスY正面1] += 2 + 0
|■変数操作: CSelf29[マスY斜め] += 2 + 0
|■変数操作: CSelf23[マスX正面2]〜CSelf24[マスX斜め] -= 1 + 0
|■条件分岐(変数): 【1】 CSelf30[X0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf30[X0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf21[マスX地面2] += 1 + 0
||■変数操作: CSelf23[マスX正面2]〜CSelf24[マスX斜め] = 900000 + 0
||■
|◇分岐終了◇
|■条件分岐(変数): 【1】 CSelf31[Y0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf31[Y0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf25[マスY地面1] += 1 + 0
||■変数操作: CSelf22[マスX正面1] -= 1 + 0
||■変数操作: CSelf23[マスX正面2]〜CSelf24[マスX斜め] = 900000 + 0
||■
|◇分岐終了◇
|■
-◇分岐: 【2】 [ CSelf33[向き] が 2 と同じ ]の場合↓
|▼ 下向き
|■変数操作: CSelf24[マスX斜め] = 900000 + 0
|■変数操作: CSelf27[マスY正面1]〜CSelf28[マスY正面2] += 2 + 0
|■条件分岐(変数): 【1】 CSelf30[X0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf30[X0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf21[マスX地面2] += 1 + 0
||■変数操作: CSelf23[マスX正面2] += 1 + 0
||■
|-◇上記以外
||■変数操作: CSelf23[マスX正面2] = 900000 + 0
||■
|◇分岐終了◇
|■条件分岐(変数): 【1】 CSelf31[Y0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf31[Y0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf26[マスY地面2] += 1 + 0
||■変数操作: CSelf22[マスX正面1]〜CSelf23[マスX正面2] = 900000 + 0
||■
|◇分岐終了◇
|■
-◇分岐: 【3】 [ CSelf33[向き] が 3 と同じ ]の場合↓
|▼ 右下向き
|■変数操作: CSelf27[マスY正面1] += 2 + 0
|■変数操作: CSelf23[マスX正面2]〜CSelf24[マスX斜め] += 2 + 0
|■変数操作: CSelf29[マスY斜め] += 2 + 0
|■条件分岐(変数): 【1】 CSelf30[X0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf30[X0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf20[マスX地面1] += 1 + 0
||■変数操作: CSelf22[マスX正面1] += 1 + 0
||■変数操作: CSelf23[マスX正面2]〜CSelf24[マスX斜め] = 900000 + 0
||■
|◇分岐終了◇
|■条件分岐(変数): 【1】 CSelf31[Y0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf31[Y0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf25[マスY地面1] += 1 + 0
||■変数操作: CSelf22[マスX正面1] += 2 + 0
||■変数操作: CSelf23[マスX正面2]〜CSelf24[マスX斜め] = 900000 + 0
||■
|◇分岐終了◇
|■
◇分岐終了◇
■条件分岐(変数): 【1】 CSelf33[向き] が 4 と同じ 【2】 CSelf33[向き] が 6 と同じ
-◇分岐: 【1】 [ CSelf33[向き] が 4 と同じ ]の場合↓
|▼ 左向き
|■変数操作: CSelf24[マスX斜め] = 900000 + 0
|■変数操作: CSelf22[マスX正面1]〜CSelf23[マスX正面2] -= 2 + 0
|■条件分岐(変数): 【1】 CSelf30[X0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf30[X0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf21[マスX地面2] += 1 + 0
||■変数操作: CSelf22[マスX正面1]〜CSelf23[マスX正面2] = 900000 + 0
||■
|◇分岐終了◇
|■条件分岐(変数): 【1】 CSelf31[Y0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf31[Y0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf26[マスY地面2] += 1 + 0
||■変数操作: CSelf28[マスY正面2] += 1 + 0
||■
|-◇上記以外
||■変数操作: CSelf23[マスX正面2] = 900000 + 0
||■
|◇分岐終了◇
|■
-◇分岐: 【2】 [ CSelf33[向き] が 6 と同じ ]の場合↓
|▼ 右向き
|■変数操作: CSelf24[マスX斜め] = 900000 + 0
|■変数操作: CSelf22[マスX正面1]〜CSelf23[マスX正面2] += 2 + 0
|■条件分岐(変数): 【1】 CSelf30[X0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf30[X0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf20[マスX地面1] += 1 + 0
||■変数操作: CSelf22[マスX正面1]〜CSelf23[マスX正面2] = 900000 + 0
||■
|◇分岐終了◇
|■条件分岐(変数): 【1】 CSelf31[Y0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf31[Y0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf26[マスY地面2] += 1 + 0
||■変数操作: CSelf28[マスY正面2] += 1 + 0
||■
|-◇上記以外
||■変数操作: CSelf23[マスX正面2] = 900000 + 0
||■
|◇分岐終了◇
|■
◇分岐終了◇
■条件分岐(変数): 【1】 CSelf33[向き] が 7 と同じ 【2】 CSelf33[向き] が 8 と同じ 【3】 CSelf33[向き] が 9 と同じ
-◇分岐: 【1】 [ CSelf33[向き] が 7 と同じ ]の場合↓
|▼ 左上向き
|■変数操作: CSelf27[マスY正面1] -= 1 + 0
|■変数操作: CSelf29[マスY斜め] -= 1 + 0
|■変数操作: CSelf23[マスX正面2]〜CSelf24[マスX斜め] -= 1 + 0
|■条件分岐(変数): 【1】 CSelf30[X0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf30[X0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf21[マスX地面2] += 1 + 0
||■変数操作: CSelf23[マスX正面2]〜CSelf24[マスX斜め] = 900000 + 0
||■
|◇分岐終了◇
|■条件分岐(変数): 【1】 CSelf31[Y0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf31[Y0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf26[マスY地面2] += 1 + 0
||■変数操作: CSelf22[マスX正面1] -= 1 + 0
||■変数操作: CSelf23[マスX正面2]〜CSelf24[マスX斜め] = 900000 + 0
||■
|◇分岐終了◇
|■
-◇分岐: 【2】 [ CSelf33[向き] が 8 と同じ ]の場合↓
|▼ 上向き
|■変数操作: CSelf24[マスX斜め] = 900000 + 0
|■変数操作: CSelf27[マスY正面1]〜CSelf28[マスY正面2] -= 2 + 0
|■条件分岐(変数): 【1】 CSelf30[X0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf30[X0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf21[マスX地面2] += 1 + 0
||■変数操作: CSelf23[マスX正面2] += 1 + 0
||■
|-◇上記以外
||■変数操作: CSelf23[マスX正面2] = 900000 + 0
||■
|◇分岐終了◇
|■条件分岐(変数): 【1】 CSelf31[Y0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf31[Y0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf26[マスY地面2] += 1 + 0
||■変数操作: CSelf22[マスX正面1]〜CSelf23[マスX正面2] = 900000 + 0
||■
|◇分岐終了◇
|■
-◇分岐: 【3】 [ CSelf33[向き] が 9 と同じ ]の場合↓
|▼ 右上向き
|■変数操作: CSelf27[マスY正面1] -= 1 + 0
|■変数操作: CSelf29[マスY斜め] -= 1 + 0
|■変数操作: CSelf23[マスX正面2]〜CSelf24[マスX斜め] += 2 + 0
|■条件分岐(変数): 【1】 CSelf30[X0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf30[X0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf20[マスX地面1] += 1 + 0
||■変数操作: CSelf22[マスX正面1] += 1 + 0
||■変数操作: CSelf23[マスX正面2]〜CSelf24[マスX斜め] = 900000 + 0
||■
|◇分岐終了◇
|■条件分岐(変数): 【1】 CSelf31[Y0.5マスにいる] が 1 と同じ
|-◇分岐: 【1】 [ CSelf31[Y0.5マスにいる] が 1 と同じ ]の場合↓
||■変数操作: CSelf26[マスY地面2] += 1 + 0
||■変数操作: CSelf22[マスX正面1] += 2 + 0
||■変数操作: CSelf23[マスX正面2]〜CSelf24[マスX斜め] = 900000 + 0
||■
|◇分岐終了◇
|■
◇分岐終了◇
■変数操作: CSelf20[マスX地面1]〜CSelf29[マスY斜め] /= 2 + 0
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ イベント有無をチェック

■条件分岐(変数): 【1】 CSelf20[マスX地面1] が 100000 未満
-◇分岐: 【1】 [ CSelf20[マスX地面1] が 100000 未満 ]の場合↓
|▼ 地面1のマップイベントを調べる
|■回数付きループ [ 1 ]回
||■変数操作+: CSelf13[イベントID] = X:CSelf20[マスX地面1] Y:CSelf25[マスY地面1]のイベントID
||■条件分岐(変数): 【1】 CSelf13[イベントID] が -1 以下
||-◇分岐: 【1】 [ CSelf13[イベントID] が -1 以下 ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf14[起動ページ] = キャラ[CSelf13[イベントID]] の 現在の起動ページ 0=ナシ 1〜=起動ページ
||■条件分岐(変数): 【1】 CSelf14[起動ページ] が 0 以下
||-◇分岐: 【1】 [ CSelf14[起動ページ] が 0 以下 ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf15[影番号] = キャラ[CSelf13[イベントID]] の 影グラフィック番号
||■DB読込(システム): CSelf17[0.5実行可能] = システムDB[ 9 : CSelf15[影番号] : 0.5実行可能 ] (キャラ影グラフィック名 : - : 5)
||■条件分岐(変数): 【1】 CSelf17[0.5実行可能] が 0 以下
||-◇分岐: 【1】 [ CSelf17[0.5実行可能] が 0 以下 ]の場合↓
|||■条件分岐(変数): 【1】 CSelf32[X0.5+Y0.5マス] が 1 以上
|||-◇分岐: 【1】 [ CSelf32[X0.5+Y0.5マス] が 1 以上 ]の場合↓
||||■ループ中断
||||■
|||◇分岐終了◇
|||■
||◇分岐終了◇
||■DB読込(システム):CSelf9[出力文字列] = システムDB[ 9:CSelf15[影番号]:使用可能アイテムコード ](キャラ影グラフィック名 : - : 1)
||■条件分岐(文字): 【1】 CSelf9[出力文字列]が "\cself[10]" を含む
||-◇分岐: 【1】 [ CSelf9[出力文字列] "\cself[10]" を含む ]の場合↓
|||■変数操作: CSelf40[変数呼び出し値] = CSelf13[イベントID] * 10
|||■変数操作: CSelf40[変数呼び出し値] += 1000000 + 0
|||■変数操作: CSelf41[MapEvセルフ0] = V[CSelf40[変数呼び出し値]] + 0
|||■条件分岐(変数): 【1】 CSelf41[MapEvセルフ0] が 0 と同じ
|||-◇分岐: 【1】 [ CSelf41[MapEvセルフ0] が 0 と同じ ]の場合↓
||||●ラベル「カギ使用」に飛ぶ >>>>>>>>>>>>>>>>>>>>>>>>>
||||■
|||-◇上記以外
||||■DB読込(システム):CSelf5[表示する文章] = システムDB[ 9:CSelf15[影番号]:使用済み文字列 ](キャラ影グラフィック名 : - : 3)
||||■
|||◇分岐終了◇
|||■
||◇分岐終了◇
||■
|◇ループここまで◇◇
|■
◇分岐終了◇
■条件分岐(変数): 【1】 CSelf21[マスX地面2] が 100000 未満
-◇分岐: 【1】 [ CSelf21[マスX地面2] が 100000 未満 ]の場合↓
|▼ 地面2のマップイベントを調べる
|■回数付きループ [ 1 ]回
||■変数操作+: CSelf13[イベントID] = X:CSelf21[マスX地面2] Y:CSelf26[マスY地面2]のイベントID
||■条件分岐(変数): 【1】 CSelf13[イベントID] が -1 以下
||-◇分岐: 【1】 [ CSelf13[イベントID] が -1 以下 ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf14[起動ページ] = キャラ[CSelf13[イベントID]] の 現在の起動ページ 0=ナシ 1〜=起動ページ
||■条件分岐(変数): 【1】 CSelf14[起動ページ] が 0 以下
||-◇分岐: 【1】 [ CSelf14[起動ページ] が 0 以下 ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf15[影番号] = キャラ[CSelf13[イベントID]] の 影グラフィック番号
||■DB読込(システム): CSelf17[0.5実行可能] = システムDB[ 9 : CSelf15[影番号] : 0.5実行可能 ] (キャラ影グラフィック名 : - : 5)
||■条件分岐(変数): 【1】 CSelf17[0.5実行可能] が 0 以下
||-◇分岐: 【1】 [ CSelf17[0.5実行可能] が 0 以下 ]の場合↓
|||■条件分岐(変数): 【1】 CSelf32[X0.5+Y0.5マス] が 1 以上
|||-◇分岐: 【1】 [ CSelf32[X0.5+Y0.5マス] が 1 以上 ]の場合↓
||||■ループ中断
||||■
|||◇分岐終了◇
|||■
||◇分岐終了◇
||■DB読込(システム):CSelf9[出力文字列] = システムDB[ 9:CSelf15[影番号]:使用可能アイテムコード ](キャラ影グラフィック名 : - : 1)
||■条件分岐(文字): 【1】 CSelf9[出力文字列]が "\cself[10]" を含む
||-◇分岐: 【1】 [ CSelf9[出力文字列] "\cself[10]" を含む ]の場合↓
|||■変数操作: CSelf40[変数呼び出し値] = CSelf13[イベントID] * 10
|||■変数操作: CSelf40[変数呼び出し値] += 1000000 + 0
|||■変数操作: CSelf41[MapEvセルフ0] = V[CSelf40[変数呼び出し値]] + 0
|||■条件分岐(変数): 【1】 CSelf41[MapEvセルフ0] が 0 と同じ
|||-◇分岐: 【1】 [ CSelf41[MapEvセルフ0] が 0 と同じ ]の場合↓
||||●ラベル「カギ使用」に飛ぶ >>>>>>>>>>>>>>>>>>>>>>>>>
||||■
|||-◇上記以外
||||■DB読込(システム):CSelf5[表示する文章] = システムDB[ 9:CSelf15[影番号]:使用済み文字列 ](キャラ影グラフィック名 : - : 3)
||||■
|||◇分岐終了◇
|||■
||◇分岐終了◇
||■
|◇ループここまで◇◇
|■
◇分岐終了◇
■条件分岐(変数): 【1】 CSelf22[マスX正面1] が 100000 未満
-◇分岐: 【1】 [ CSelf22[マスX正面1] が 100000 未満 ]の場合↓
|▼ 正面1のマップイベントを調べる
|■回数付きループ [ 1 ]回
||■変数操作+:CSelf18[通行設定]=X:CSelf22[マスX正面1]Y:CSelf27[マスY正面1]の通行判定:タイル&イベント(○=0,×=1)
||■条件分岐(変数): 【1】 CSelf18[通行設定] が 0 と同じ
||-◇分岐: 【1】 [ CSelf18[通行設定] が 0 と同じ ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf13[イベントID] = X:CSelf22[マスX正面1] Y:CSelf27[マスY正面1]のイベントID
||■条件分岐(変数): 【1】 CSelf13[イベントID] が -1 以下
||-◇分岐: 【1】 [ CSelf13[イベントID] が -1 以下 ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf14[起動ページ] = キャラ[CSelf13[イベントID]] の 現在の起動ページ 0=ナシ 1〜=起動ページ
||■条件分岐(変数): 【1】 CSelf14[起動ページ] が 0 以下
||-◇分岐: 【1】 [ CSelf14[起動ページ] が 0 以下 ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf15[影番号] = キャラ[CSelf13[イベントID]] の 影グラフィック番号
||■DB読込(システム): CSelf16[斜め実行可能] = システムDB[ 9 : CSelf15[影番号] : 斜め実行可能 ] (キャラ影グラフィック名 : - : 4)
||■条件分岐(変数): 【1】 CSelf16[斜め実行可能] が 0 と同じ
||-◇分岐: 【1】 [ CSelf16[斜め実行可能] が 0 と同じ ]の場合↓
|||■条件分岐(変数): 【1】 CSelf34[斜め向き=1] が 1 と同じ
|||-◇分岐: 【1】 [ CSelf34[斜め向き=1] が 1 と同じ ]の場合↓
||||■ループ中断
||||■
|||◇分岐終了◇
|||■
||◇分岐終了◇
||■DB読込(システム): CSelf17[0.5実行可能] = システムDB[ 9 : CSelf15[影番号] : 0.5実行可能 ] (キャラ影グラフィック名 : - : 5)
||■条件分岐(変数): 【1】 CSelf17[0.5実行可能] が 0 と同じ
||-◇分岐: 【1】 [ CSelf17[0.5実行可能] が 0 と同じ ]の場合↓
|||■条件分岐(変数): 【1】 CSelf32[X0.5+Y0.5マス] が 1 以上
|||-◇分岐: 【1】 [ CSelf32[X0.5+Y0.5マス] が 1 以上 ]の場合↓
||||■ループ中断
||||■
|||◇分岐終了◇
|||■
||◇分岐終了◇
||■DB読込(システム):CSelf9[出力文字列] = システムDB[ 9:CSelf15[影番号]:使用可能アイテムコード ](キャラ影グラフィック名 : - : 1)
||■条件分岐(文字): 【1】 CSelf9[出力文字列]が "\cself[10]" を含む
||-◇分岐: 【1】 [ CSelf9[出力文字列] "\cself[10]" を含む ]の場合↓
|||■変数操作: CSelf40[変数呼び出し値] = CSelf13[イベントID] * 10
|||■変数操作: CSelf40[変数呼び出し値] += 1000000 + 0
|||■変数操作: CSelf41[MapEvセルフ0] = V[CSelf40[変数呼び出し値]] + 0
|||■条件分岐(変数): 【1】 CSelf41[MapEvセルフ0] が 0 と同じ
|||-◇分岐: 【1】 [ CSelf41[MapEvセルフ0] が 0 と同じ ]の場合↓
||||●ラベル「カギ使用」に飛ぶ >>>>>>>>>>>>>>>>>>>>>>>>>
||||■
|||-◇上記以外
||||■DB読込(システム): CSelf5[表示する文章] = システムDB[ 9 : CSelf15[影番号] : 使用済み文字列 ] (キャラ影グラフィック名 : - : 3)
||||■
|||◇分岐終了◇
|||■
||◇分岐終了◇
||■
|◇ループここまで◇◇
|■
◇分岐終了◇
■条件分岐(変数): 【1】 CSelf23[マスX正面2] が 100000 未満
-◇分岐: 【1】 [ CSelf23[マスX正面2] が 100000 未満 ]の場合↓
|▼ 正面2のマップイベントを調べる
|■回数付きループ [ 1 ]回
||■変数操作+:CSelf18[通行設定]=X:CSelf23[マスX正面2]Y:CSelf28[マスY正面2]の通行判定:タイル&イベント(○=0,×=1)
||■条件分岐(変数): 【1】 CSelf18[通行設定] が 0 と同じ
||-◇分岐: 【1】 [ CSelf18[通行設定] が 0 と同じ ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf13[イベントID] = X:CSelf23[マスX正面2] Y:CSelf28[マスY正面2]のイベントID
||■条件分岐(変数): 【1】 CSelf13[イベントID] が -1 以下
||-◇分岐: 【1】 [ CSelf13[イベントID] が -1 以下 ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf14[起動ページ] = キャラ[CSelf13[イベントID]] の 現在の起動ページ 0=ナシ 1〜=起動ページ
||■条件分岐(変数): 【1】 CSelf14[起動ページ] が 0 以下
||-◇分岐: 【1】 [ CSelf14[起動ページ] が 0 以下 ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf15[影番号] = キャラ[CSelf13[イベントID]] の 影グラフィック番号
||■DB読込(システム): CSelf16[斜め実行可能] = システムDB[ 9 : CSelf15[影番号] : 斜め実行可能 ] (キャラ影グラフィック名 : - : 4)
||■条件分岐(変数): 【1】 CSelf16[斜め実行可能] が 0 と同じ
||-◇分岐: 【1】 [ CSelf16[斜め実行可能] が 0 と同じ ]の場合↓
|||■条件分岐(変数): 【1】 CSelf34[斜め向き=1] が 1 と同じ
|||-◇分岐: 【1】 [ CSelf34[斜め向き=1] が 1 と同じ ]の場合↓
||||■ループ中断
||||■
|||◇分岐終了◇
|||■
||◇分岐終了◇
||■DB読込(システム): CSelf17[0.5実行可能] = システムDB[ 9 : CSelf15[影番号] : 0.5実行可能 ] (キャラ影グラフィック名 : - : 5)
||■条件分岐(変数): 【1】 CSelf17[0.5実行可能] が 0 と同じ
||-◇分岐: 【1】 [ CSelf17[0.5実行可能] が 0 と同じ ]の場合↓
|||■条件分岐(変数): 【1】 CSelf32[X0.5+Y0.5マス] が 1 以上
|||-◇分岐: 【1】 [ CSelf32[X0.5+Y0.5マス] が 1 以上 ]の場合↓
||||■ループ中断
||||■
|||◇分岐終了◇
|||■
||◇分岐終了◇
||■DB読込(システム):CSelf9[出力文字列] = システムDB[ 9:CSelf15[影番号]:使用可能アイテムコード ](キャラ影グラフィック名 : - : 1)
||■条件分岐(文字): 【1】 CSelf9[出力文字列]が "\cself[10]" を含む
||-◇分岐: 【1】 [ CSelf9[出力文字列] "\cself[10]" を含む ]の場合↓
|||■変数操作: CSelf40[変数呼び出し値] = CSelf13[イベントID] * 10
|||■変数操作: CSelf40[変数呼び出し値] += 1000000 + 0
|||■変数操作: CSelf41[MapEvセルフ0] = V[CSelf40[変数呼び出し値]] + 0
|||■条件分岐(変数): 【1】 CSelf41[MapEvセルフ0] が 0 と同じ
|||-◇分岐: 【1】 [ CSelf41[MapEvセルフ0] が 0 と同じ ]の場合↓
||||●ラベル「カギ使用」に飛ぶ >>>>>>>>>>>>>>>>>>>>>>>>>
||||■
|||-◇上記以外
||||■DB読込(システム):CSelf5[表示する文章] = システムDB[ 9:CSelf15[影番号]:使用済み文字列 ](キャラ影グラフィック名 : - : 3)
||||■
|||◇分岐終了◇
|||■
||◇分岐終了◇
||■
|◇ループここまで◇◇
|■
◇分岐終了◇
■条件分岐(変数): 【1】 CSelf24[マスX斜め] が 100000 未満
-◇分岐: 【1】 [ CSelf24[マスX斜め] が 100000 未満 ]の場合↓
|▼ 斜め方向にあるマップイベントを調べる
|■回数付きループ [ 1 ]回
||■変数操作+:CSelf19[通行縦+横]=X:CSelf22[マスX正面1]Y:CSelf27[マスY正面1]の通行判定:タイル&イベント(○=0,×=1)
||■変数操作+:CSelf19[通行縦+横]+=X:CSelf23[マスX正面2]Y:CSelf28[マスY正面2]の通行判定:タイル&イベント(○=0,×=1)
||■変数操作+:CSelf18[通行設定]=X:CSelf24[マスX斜め]Y:CSelf29[マスY斜め]の通行判定:タイル&イベント(○=0,×=1)
||■条件分岐(変数): 【1】 CSelf19[通行縦+横] が 2 と同じ 【2】 CSelf18[通行設定] が 0 と同じ
||-◇分岐: 【1】 [ CSelf19[通行縦+横] が 2 と同じ ]の場合↓
|||▼ 上下も左右も通行不可であるため、斜め方向にあるマップイベントは調べない
|||■ループ中断
|||■
||-◇分岐: 【2】 [ CSelf18[通行設定] が 0 と同じ ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf13[イベントID] = X:CSelf24[マスX斜め] Y:CSelf29[マスY斜め]のイベントID
||■条件分岐(変数): 【1】 CSelf13[イベントID] が -1 以下
||-◇分岐: 【1】 [ CSelf13[イベントID] が -1 以下 ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf14[起動ページ] = キャラ[CSelf13[イベントID]] の 現在の起動ページ 0=ナシ 1〜=起動ページ
||■条件分岐(変数): 【1】 CSelf14[起動ページ] が 0 以下
||-◇分岐: 【1】 [ CSelf14[起動ページ] が 0 以下 ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■変数操作+: CSelf15[影番号] = キャラ[CSelf13[イベントID]] の 影グラフィック番号
||■DB読込(システム):CSelf16[斜め実行可能] = システムDB[ 9:CSelf15[影番号]:斜め実行可能 ] (キャラ影グラフィック名 : - : 4)
||■条件分岐(変数): 【1】 CSelf16[斜め実行可能] が 1 以下
||-◇分岐: 【1】 [ CSelf16[斜め実行可能] が 1 以下 ]の場合↓
|||■ループ中断
|||■
||◇分岐終了◇
||■DB読込(システム):CSelf9[出力文字列] = システムDB[ 9:CSelf15[影番号]:使用可能アイテムコード ](キャラ影グラフィック名: - :1)
||■条件分岐(文字): 【1】 CSelf9[出力文字列]が "\cself[10]" を含む
||-◇分岐: 【1】 [ CSelf9[出力文字列] "\cself[10]" を含む ]の場合↓
|||■変数操作: CSelf40[変数呼び出し値] = CSelf13[イベントID] * 10
|||■変数操作: CSelf40[変数呼び出し値] += 1000000 + 0
|||■変数操作: CSelf41[MapEvセルフ0] = V[CSelf40[変数呼び出し値]] + 0
|||■条件分岐(変数): 【1】 CSelf41[MapEvセルフ0] が 0 と同じ
|||-◇分岐: 【1】 [ CSelf41[MapEvセルフ0] が 0 と同じ ]の場合↓
||||●ラベル「カギ使用」に飛ぶ >>>>>>>>>>>>>>>>>>>>>>>>>
||||■
|||-◇上記以外
||||■DB読込(システム):CSelf5[表示する文章] = システムDB[ 9:CSelf15[影番号]:使用済み文字列 ](キャラ影グラフィック名 : - : 3)
||||■
|||◇分岐終了◇
|||■
||◇分岐終了◇
||■
|◇ループここまで◇◇
|■
◇分岐終了◇
■条件分岐(文字): 【1】 CSelf5[表示する文章]が "" 以外
-◇分岐: 【1】 [ CSelf5[表示する文章] "" 以外 ]の場合↓
|■文章:\cself[5]
|■
◇分岐終了◇
■イベント処理中断
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ マップイベントのセルフ変数[0]を「1」に変更

●ラベル地点「カギ使用」 <<<<<<<<<<<<<<<<<<<<<<<<★
■変数操作: V[CSelf40[変数呼び出し値]] = 1 + 0
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ 使用時のSEを演奏

■文字列操作:CSelf6[SEファイルアドレス] = ""
■条件分岐(変数): 【1】 CSelf11[タイプID] が 2 と同じ 【2】 CSelf11[タイプID] が 3 と同じ
-◇分岐: 【1】 [ CSelf11[タイプID] が 2 と同じ ]の場合↓
|■DB読込(ユーザ): CSelf6[SEファイルアドレス] = ユーザDB[ アイテム : CSelf12[データID] : 使用時SE ] (2 : - : 20)
|■
-◇分岐: 【2】 [ CSelf11[タイプID] が 3 と同じ ]の場合↓
|■DB読込(ユーザ): CSelf43[項目ID] = ユーザDB[タイプ武器(3)の内容数]
|■回数付きループ [ CSelf43[項目ID] ]回
||■変数操作: CSelf43[項目ID] -= 1 + 0
||■DB読込(ユーザ): CSelf9[出力文字列] = ユーザDB[タイプ武器(3) 項目CSelf43[項目ID](-)の項目名]
||■条件分岐(文字): 【1】 CSelf9[出力文字列]が "使用時SE" と同じ
||-◇分岐: 【1】 [ CSelf9[出力文字列] "使用時SE" と同じ ]の場合↓
|||■DB読込(ユーザ):CSelf6[SEファイルアドレス] = ユーザDB[ 武器:CSelf12[データID]:CSelf43[項目ID] ](3 : - : -)
|||■
||◇分岐終了◇
||■
|◇ループここまで◇◇
|■
-◇上記以外
|■DB読込(ユーザ): CSelf43[項目ID] = ユーザDB[タイプ防具(4)の内容数]
|■回数付きループ [ CSelf43[項目ID] ]回
||■変数操作: CSelf43[項目ID] -= 1 + 0
||■DB読込(ユーザ): CSelf9[出力文字列] = ユーザDB[タイプ防具(4) 項目CSelf43[項目ID](-)の項目名]
||■条件分岐(文字): 【1】 CSelf9[出力文字列]が "使用時SE" と同じ
||-◇分岐: 【1】 [ CSelf9[出力文字列] "使用時SE" と同じ ]の場合↓
|||■DB読込(ユーザ):CSelf6[SEファイルアドレス] = ユーザDB[ 防具:CSelf12[データID]:CSelf43[項目ID] ](4 : - : -)
|||■
||◇分岐終了◇
||■
|◇ループここまで◇◇
|■
◇分岐終了◇
■条件分岐(文字): 【1】 CSelf6[SEファイルアドレス]が "" 以外
-◇分岐: 【1】 [ CSelf6[SEファイルアドレス] "" 以外 ]の場合↓
|■サウンド:SE ファイル[\cself[6]] 音 100% 周 100% (0 チャンネル) 再生 / 遅延:0フレーム
|■
◇分岐終了◇
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ 使用時の文章を表示

■DB読込(システム):CSelf5[表示する文章] = システムDB[ 9:CSelf15[影番号]:使用時文字列 ](キャラ影グラフィック名 : - : 2)
■条件分岐(文字): 【1】 CSelf5[表示する文章]が "" 以外
-◇分岐: 【1】 [ CSelf5[表示する文章] "" 以外 ]の場合↓
|■文章:\cself[5]
|■
◇分岐終了◇
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ アイテム使用後の処理(所持数を減らさない設定やアイテム変化を設定)

■条件分岐(変数): 【1】 CSelf10[アイテムコード] が 10019 と同じ
-◇分岐: 【1】 [ CSelf10[アイテムコード] が 10019 と同じ ]の場合↓
|▼ アイテム「ダンジョンのカギ」の所持数が減らないようにするため、ここで処理を終了させる
|■イベント処理中断
|■
◇分岐終了◇
■条件分岐(変数): 【1】 CSelf10[アイテムコード] が 10024 と同じ
-◇分岐: 【1】 [ CSelf10[アイテムコード] が 10024 と同じ ]の場合↓
|▼ アイテム「水入りビン」をアイテム「空ビン」に変える
|■イベントの挿入[名]: ["○アイテム増減"] <コモンEv 0> / 15:空きビン / 1 / 0:なし
|■
◇分岐終了◇
▼ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
▼ 使用したアイテムの所持数を減らす

■変数操作: CSelf11[タイプID] += 5 + 0
■可変DB書込:DB[ CSelf11[タイプID] : CSelf12[データID] : 0 ] (- : - : ×NoData) -= 1



アイテムを使用したあとに、アイテムごとに何らかの処理を行う場合は、
最後の「アイテム使用後の処理(所持数を減らさない設定やアイテム変化を設定)」の所で、
アイテムコードで分岐して設定してください。

上記の設定例では、アイテムコード[10019](ダンジョンのカギ)を使用した時には、
イベント処理中断」を実行して所持数を減らさないようにしています。

またアイテムコード[10024]アイテム「水入りビン」を設定した場合を想定しており、
アイテム使用後にアイテム「空ビン」に変わる設定を行っています。



全てのアイテムの所持数を減らさないようにする場合は、
最後の「使用したアイテムの所持数を減らす」の所にある「可変DB書込」の設定を削除すれば、
全てのアイテムで使用時に所持数が減らなくなります。

またコモンイベントを…
コモンイベント[215:カギ使用(消費する)]
コモンイベント[216:カギ使用(消費しない)]

と2つに分けて、コモンイベント[216]の方は、最後の所持数を減らす設定を削除し、各アイテムの呼び出し設定を…
使用したら所持数が減る  →「500215」を設定
使用しても所持数が減らない→「500216」を設定

と設定すれば、アイテムごとに所持数を減らす、減らさないの設定が要らなくなります。


▲トップへ戻る▲


  
■マップイベントの設定:サンプルゲームのダンジョンに入る扉

サンプルゲームにある「ダンジョンのカギ」で入る扉の設定を改造します。



初期設定では、アイテム「ダンジョンのカギ」を持って扉を調べれば、すぐにダンジョン内へ入る事ができましたが、
今回は扉の前でアイテム「ダンジョンのカギ」を使わないと、扉が開かないようにします。

一度扉を開けたら、2回目以降はすぐにダンジョンへ入れるようにします。



マップイベント[02:ダンジョンの扉]を開き、以下のように変更してください。

■マップイベント「02:ダンジョンの扉」

▼1ページ目【イベントコード表示】
起動条件:決定キーで実行
起動条件変数:なし
影グラフィック番号:カギ

▼ 「ダンジョンのカギ」を持っているか判定し、セルフ変数1へ代入
■イベントの挿入: このEvのSelf1 = コモン17:[ ▲アイテム所持数取得 ] / 19:ダンジョンのカギ
▼ アイテム画面から「ダンジョンのカギ」を使ったら、ダンジョンへ場所移動します
■条件分岐(変数):【1】 このEvのSelf0 が 1 以上 【2】このEvのSelf1 が 1 以上 【3】このEvのSelf0 が 0 と同じ
-◇分岐: 【1】 [ このEvのSelf0 が 1 以上 ]の場合↓
|▼ カギを使ったあと
|▼ ダンジョン内ではセーブを禁止する

|■イベントの挿入: コモン15:[ ○セーブ許可・禁止設定 ] / 0:セーブを禁止する
|▼ 場所移動
|■場所移動:主人公 ▲マップID3[ダンジョン] X:7 Y:27 [トランジション + 暗転有り]
|■
-◇分岐: 【2】 [ このEvのSelf1 が 1 以上 ]の場合↓
|▼ カギを持っているが、まだ使っていない
|■文章:カギがかかっているようだ……\n「ダンジョンのカギ」を使えば扉が開くかもしれない。
|■
-◇分岐: 【3】 [ このEvのSelf0 が 0 と同じ ]の場合↓
|▼ カギを持っていない場合はメッセージだけ
|■文章:カギがかかっているようだ……\nどこかでカギを見つけないといけない。
|■
◇分岐終了◇





上記の設定の場合、アイテム「ダンジョンのカギ」を使ってカギを開けたあとに、
マップイベントを調べないとダンジョンには入れませんが、もしもアイテム「ダンジョンのカギ」を使った時に、
自動的にダンジョンへ入るようにする場合は、2ページ目を作成して、以下のように設定してください。

■マップイベント「02:ダンジョンの扉」

▼1ページ目
起動条件:決定キーで実行
起動条件変数:なし

▼ 「ダンジョンのカギ」を持っているか判定し、セルフ変数1へ代入
■イベントの挿入: このEvのSelf1 = コモン17:[ ▲アイテム所持数取得 ] / 19:ダンジョンのカギ
▼ アイテム画面から「ダンジョンのカギ」を使ったら、ダンジョンへ場所移動します
■条件分岐(変数):【1】 このEvのSelf0 が 1 以上 【2】このEvのSelf1 が 1 以上 【3】このEvのSelf0 が 0 と同じ
-◇分岐: 【1】 [ このEvのSelf0 が 1 以上 ]の場合↓
|▼ カギを使ったあと
|▼ ダンジョン内ではセーブを禁止する
|■イベントの挿入: コモン15:[ ○セーブ許可・禁止設定 ] / 0:セーブを禁止する
|▼ 場所移動
|■場所移動:主人公 ▲マップID3[ダンジョン] X:7 Y:27 [トランジション + 暗転有り]
|■
-◇分岐: 【2】 [ このEvのSelf1 が 1 以上 ]の場合↓
|▼ カギを持っているが、まだ使っていない
|■文章:カギがかかっているようだ……\n「ダンジョンのカギ」を使えば扉が開くかもしれない。
|■
-◇分岐: 【3】 [ このEvのSelf0 が 0 と同じ ]の場合↓
|▼ カギを持っていない場合はメッセージだけ
|■文章:カギがかかっているようだ……\nどこかでカギを見つけないといけない。
|■
◇分岐終了◇




▼2ページ目【イベントコード表示】
起動条件:自動実行
起動条件変数:Self0:セルフ変数0が 1 と同じ

■文章:さあ、ダンジョンに入るぞ!
■イベントの挿入: コモン15:[ ○セーブ許可・禁止設定 ] / 0:セーブを禁止する
▼ メッセージウィンドウを閉じるまでウェイト
■ウェイト:10 フレーム
■場所移動:主人公 ▲マップID3[ダンジョン] X:7 Y:27 [トランジション + 暗転有り]
■変数操作: このEvのSelf0 = 2 + 0




以上で設定完了です。


▲トップへ戻る▲


  
■マップイベントの設定:宝箱

宝箱は3ページ構成で設定します。

1ページ目=フタが閉まっている状態
2ページ目=カギを使って開けた時(アイテム獲得)
3ページ目=既にアイテムを取ったあと


■マップイベント「宝箱」

▼1ページ目【イベントコード表示】
グラフィック:宝箱(フタが閉まっている画像)
起動条件:決定キーで実行
起動条件変数:なし
影グラフィック番号:カギ

■文章:カギがかかっていて開かない。




▼2ページ目【イベントコード表示】
グラフィック:宝箱(フタが開いている画像)
起動条件:自動実行
起動条件変数:Self0:セルフ変数0が 1 と同じ
影グラフィック番号:カギ

■サウンド:SE ファイル[SE/System_Get2_wolf.ogg] 音 100% 周 100% (0 チャンネル) 再生 / 遅延:0フレーム
■イベントの挿入[名]: ["○アイテム増減"] <コモンEv 0> / 0:薬草 / 1 / 2:あり[単位:〜枚]
■変数操作: このEvのSelf0 = 2 + 0




▼3ページ目【イベントコード表示】
グラフィック:宝箱(フタが開いている画像)
起動条件:決定キーで実行
起動条件変数:Self0:セルフ変数0が 2 と同じ
影グラフィック番号:カギ

■文章:空っぽだ。


以上で設定完了です。


▲トップへ戻る▲



◎関連ページ

◆マップイベントからアイテム画面を起動し、使う、渡す、見せる

◆キャラクターイベントを作る
◆アイテム取得(ツボ・宝箱)のイベントを作る

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