■コモンイベント「最短ルート検索」
イベント開始条件:呼び出されたときのみ
◆注釈:■■■■■■■■■■■■■■■■■■■■■■■■■■■■
: :▼初期設定
: :
◆変数の操作:[0006〜0007]代入,0<歩数の初期化
◆変数の操作:[0008〜0009]代入,700<最短ルートを保存する変数番号−1を設定
◆変数の操作:[0701〜1000]代入,0<最短ルートを保存する変数を初期化
◆変数の操作:[0021:記憶/出発:次X座標]代入,101<変数101番を呼び出す準備
◆変数の操作:[0022:記憶/出発:次Y座標]代入,201<変数201番を呼び出す準備
◆変数の操作:[0023:記憶/出発:次変数]代入,301<変数301番を呼び出す準備
◆変数の操作:[0026:記憶/到着:次X座標]代入,401<変数401番を呼び出す準備
◆変数の操作:[0027:記憶/到着:次Y座標]代入,501<変数501番を呼び出す準備
◆変数の操作:[0028:記憶/到着:次変数]代入,601<変数601番を呼び出す準備
◆変数の操作:[0031:呼出/出発:次X座標]代入,101<変数101番を呼び出す準備
◆変数の操作:[0032:呼出/出発:次Y座標]代入,201<変数201番を呼び出す準備
◆変数の操作:[0033:呼出/出発:次変数]代入,301<変数301番を呼び出す準備
◆変数の操作:[0036:呼出/出発:次X座標]代入,401<変数401番を呼び出す準備
◆変数の操作:[0037:呼出/出発:次Y座標]代入,501<変数501番を呼び出す準備
◆変数の操作:[0038:呼出/出発:次変数]代入,601<変数601番を呼び出す準備
◆注釈:■■■■■■■■■■■■■■
: :▼マスデータ初期化
: :
◆変数の操作:[1001〜2805]代入,-1<全てのマスを「未検索」に設定
◆変数の操作:[1001〜1042]代入,999999<中心から21マス以上離れたマスを「通行不可」に設定
◆変数の操作:[2789〜2805]代入,999999<中心から21マス以上離れたマスを「通行不可」に設定
◆変数の操作:[0013:出力:変数番号]代入,1084<変数1084番を呼び出す準備
◆ラベルの設定:1番
◆変数の操作:[V[0013]]代入,999999<中心から21マス以上離れたマスを「通行不可」に設定
◆条件分岐:変数[0013:出力:変数番号]が2764より小さい<まだ「通行不可」を設定する変数が残っている時
◆変数の操作:[0013:出力:変数番号]加算,42<1つ下の変数番号にする
◆指定ラベルへ飛ぶ:1番
◆
:分岐終了
◆注釈:■■■■■■■■■■■■■■
: :▼出発地点と到着地点の座標の差
: :
◆変数の操作:[0011:出力:X座標]代入,変数[0003]の値<到着地点のX座標を代入
◆変数の操作:[0012:出力:Y座標]代入,変数[0004]の値<到着地点のY座標を代入
◆変数の操作:[0011:出力:X座標]減算,変数[0001]の値<出発地点のX座標で減算して差を出す
◆変数の操作:[0012:出力:Y座標]減算,変数[0002]の値<出発地点のY座標で減算して差を出す
◆変数の操作:[0013:出力:変数番号]代入,1903<出発地点(中心)の変数番号を設定
◆変数の操作:[0013:出力:変数番号]加算,変数[0011]の値<両者のX座標の差を加算
◆変数の操作:[0012:出力:Y座標]乗算,42<両者のY座標の差を乗算42
◆変数の操作:[0013:出力:変数番号]加算,変数[0012]の値<乗算42にした両者のY座標の差を加算
◆注釈:■■■■■■■■■■■■■■
: :▼最初のマスのデータ設定
: :
◆変数の操作:[V[0021]]代入,変数[0001]の値<最初に検索する出発地点のX座標を代入
◆変数の操作:[V[0022]]代入,変数[0002]の値<最初に検索する出発地点のY座標を代入
◆変数の操作:[V[0023]]代入,1903<最初に検索する到着地点の変数番号を代入
◆変数の操作:[V[0026]]代入,変数[0003]の値<最初に検索する到着地点のX座標を代入
◆変数の操作:[V[0027]]代入,変数[0004]の値<最初に検索する到着地点のY座標を代入
◆変数の操作:[V[0028]]代入,変数[0013]の値<最初に検索する到着地点の変数番号を代入
◆変数の操作:[0021〜0023]加算,1<次の検索マスを保存する変数番号を加算1
◆変数の操作:[0026〜0028]加算,1<次の検索マスを保存する変数番号を加算1
◆変数の操作:[1903:出発地点]代入,0<出発地点のマスを「検索済み」にする
◆変数の操作:[V[0013]]代入,10<到着地点のマスを「検索済み」にする
◆注釈:■■■■■■■■■■■■■■■■■■■■■■■■■■■■
: :▼検索処理
: :
◆ラベルの設定:10番<合流地点が見つからず、次の歩数になった時にここへ戻ってくる
◆注釈:■■■■■■■■■■■■■■■■■■■■■
: :▼出発地点からの検索処理
: :
◆変数の操作:[0007〜0009]加算,1<次の歩数にする
◆変数の操作:[0017:処理中記憶変数番号]代入,変数[0021]の値<最後に記憶した変数番号を代入
◆ラベルの設定:11番<検索候補が無くなるまで、何度もここへ処理を戻す
◆変数の操作:[0011:出力:X座標]代入,変数[V[0031]]の値<次に検索するX座標を呼び出す
◆変数の操作:[0012:出力:Y座標]代入,変数[V[0032]]の値<次に検索するY座標を呼び出す
◆変数の操作:[0013:出力:変数番号]代入,変数[V[0033]]の値<次に検索する変数番号を呼び出す
◆注釈:■■■■■■■■■■■■■■
: :▼出発:上のマスを検索
: :
◆変数の操作:[0012:出力:Y座標]減算,1<検索するマスの上のマスにセット
◆変数の操作:[0013:出力:変数番号]減算,42<検索するマスの上のマスにセット
◆変数の操作:[0014:出力:移動方向]代入,変数[V[0013]]の値<上のマスの移動方向を呼び出す
◆条件分岐:変数[0014:出力:移動方向]が-1以下(オプション:ON)<上のマスがまだ未検索の時
◆指定位置の地形ID取得:(V[0011],V[0012]),[0015:地形ID]
◆条件分岐:変数[0015:地形ID]が2(オプション:ON)<通行不可の地形の時
◆注釈:▼通行不可マス
◆変数の操作:[V[0013]]代入,999999<上のマスを通行不可にする
◆
:それ以外の場合<通行可能な地形の時
◆注釈:▼通行可能マス
◆変数の操作:[V[0013]]代入,8<移動方向を設定
◆変数の操作:[V[0021]]代入,変数[0011]の値<次の検索候補のX座標を保存
◆変数の操作:[V[0022]]代入,変数[0012]の値<次の検索候補のY座標を保存
◆変数の操作:[V[0023]]代入,変数[0013]の値<次の検索候補の変数番号を保存
◆条件分岐:変数[0021:記憶/出発:次X座標]が200<次の検索候補を保存する変数番号が限界値の時
◆変数の操作:[0021〜0023]減算,99<最初の変数番号に戻す
◆
:それ以外の場合<次の検索候補を保存する変数番号が限界値ではない時
◆変数の操作:[0021〜0023]加算,1<次の変数番号にする
◆
:分岐終了
◆
:分岐終了
◆
:それ以外の場合<上のマスが既に検索済みの時
◆条件分岐:変数[0014:出力:移動方向]が999999より小さい<上のマスが通行不可では無い時
◆条件分岐:変数[0014:出力:移動方向]が10以上<上のマスが到着地点からの検索済みマスの時(合流地点の発見)
◆変数の操作:[0013:出力:変数番号]代入,変数[V[0033]]の値<検索中のマスの変数番号を代入
◆変数の操作:[0018:合流→到着変数番号]代入,変数[0013]の値<合流地点の出発側の変数番号を代入
◆変数の操作:[0018:合流→到着変数番号]減算,42<到着側の変数番号にする
◆変数の操作:[V[0008]]代入,8<合流地点の両者を繋ぐ移動方向を設定
◆指定ラベルへ飛ぶ:20番<合流地点が見つかったので、最短ルートの作成処理へ飛ぶ
◆
:分岐終了
◆
:分岐終了
◆
:分岐終了
◆注釈:■■■■■■■■■■■■■■
: :▼出発:下のマスを検索
: :
◆変数の操作:[0012:出力:Y座標]加算,2<検索するマスの上のマスから下のマスへ変更
◆変数の操作:[0013:出力:変数番号]加算,84<検索するマスの上のマスから下のマスへ変更
◆変数の操作:[0014:出力:移動方向]代入,変数[V[0013]]の値
◆条件分岐:変数[0014:出力:移動方向]が-1以下(オプション:ON)
◆指定位置の地形ID取得:(V[0011],V[0012]),[0015:地形ID]
◆条件分岐:変数[0015:地形ID]が2(オプション:ON)
◆注釈:▼通行不可マス
◆変数の操作:[V[0013]]代入,999999
◆
:それ以外の場合
◆注釈:▼通行可能マス
◆変数の操作:[V[0013]]代入,2
◆変数の操作:[V[0021]]代入,変数[0011]の値
◆変数の操作:[V[0022]]代入,変数[0012]の値
◆変数の操作:[V[0023]]代入,変数[0013]の値
◆条件分岐:変数[0021:記憶/出発:次X座標]が200
◆変数の操作:[0021〜0023]減算,99
◆
:それ以外の場合
◆変数の操作:[0021〜0023]加算,1
◆
:分岐終了
◆
:分岐終了
◆
:それ以外の場合
◆条件分岐:変数[0014:出力:移動方向]が999999より小さい
◆条件分岐:変数[0014:出力:移動方向]が10以上
◆変数の操作:[0013:出力:変数番号]代入,変数[V[0033]]の値
◆変数の操作:[0018:合流→到着変数番号]代入,変数[0013]の値
◆変数の操作:[0018:合流→到着変数番号]加算,42
◆変数の操作:[V[0008]]代入,2
◆指定ラベルへ飛ぶ:20番
◆
:分岐終了
◆
:分岐終了
◆
:分岐終了
◆注釈:■■■■■■■■■■■■■■
: :▼出発:左のマスを検索
: :
◆変数の操作:[0011〜0012]減算,1<検索するマスの下のマスから左のマスへ変更
◆変数の操作:[0013:出力:変数番号]減算,43<検索するマスの下のマスから左のマスへ変更
◆変数の操作:[0014:出力:移動方向]代入,変数[V[0013]]の値
◆条件分岐:変数[0014:出力:移動方向]が-1以下(オプション:ON)
◆指定位置の地形ID取得:(V[0011],V[0012]),[0015:地形ID]
◆条件分岐:変数[0015:地形ID]が2(オプション:ON)
◆注釈:▼通行不可マス
◆変数の操作:[V[0013]]代入,999999
◆
:それ以外の場合
◆注釈:▼通行可能マス
◆変数の操作:[V[0013]]代入,4
◆変数の操作:[V[0021]]代入,変数[0011]の値
◆変数の操作:[V[0022]]代入,変数[0012]の値
◆変数の操作:[V[0023]]代入,変数[0013]の値
◆条件分岐:変数[0021:記憶/出発:次X座標]が200
◆変数の操作:[0021〜0023]減算,99
◆
:それ以外の場合
◆変数の操作:[0021〜0023]加算,1
◆
:分岐終了
◆
:分岐終了
◆
:それ以外の場合
◆条件分岐:変数[0014:出力:移動方向]が999999より小さい
◆条件分岐:変数[0014:出力:移動方向]が10以上
◆変数の操作:[0013:出力:変数番号]代入,変数[V[0033]]の値
◆変数の操作:[0018:合流→到着変数番号]代入,変数[0013]の値
◆変数の操作:[0018:合流→到着変数番号]減算,1
◆変数の操作:[V[0008]]代入,4
◆指定ラベルへ飛ぶ:20番
◆
:分岐終了
◆
:分岐終了
◆
:分岐終了
◆注釈:■■■■■■■■■■■■■■
: :▼出発:右のマスを検索
: :
◆変数の操作:[0011:出力:X座標]加算,2<検索するマスの左のマスから右のマスへ変更
◆変数の操作:[0013:出力:変数番号]加算,2<検索するマスの左のマスから右のマスへ変更
◆変数の操作:[0014:出力:移動方向]代入,変数[V[0013]]の値
◆条件分岐:変数[0014:出力:移動方向]が-1以下(オプション:ON)
◆指定位置の地形ID取得:(V[0011],V[0012]),[0015:地形ID]
◆条件分岐:変数[0015:地形ID]が2(オプション:ON)
◆注釈:▼通行不可マス
◆変数の操作:[V[0013]]代入,999999
◆
:それ以外の場合
◆注釈:▼通行可能マス
◆変数の操作:[V[0013]]代入,6
◆変数の操作:[V[0021]]代入,変数[0011]の値
◆変数の操作:[V[0022]]代入,変数[0012]の値
◆変数の操作:[V[0023]]代入,変数[0013]の値
◆条件分岐:変数[0021:記憶/出発:次X座標]が200
◆変数の操作:[0021〜0023]減算,99
◆
:それ以外の場合
◆変数の操作:[0021〜0023]加算,1
◆
:分岐終了
◆
:分岐終了
◆
:それ以外の場合
◆条件分岐:変数[0014:出力:移動方向]が999999より小さい
◆条件分岐:変数[0014:出力:移動方向]が10以上
◆変数の操作:[0013:出力:変数番号]代入,変数[V[0033]]の値
◆変数の操作:[0018:合流→到着変数番号]代入,変数[0013]の値
◆変数の操作:[0018:合流→到着変数番号]加算,1
◆変数の操作:[V[0008]]代入,6
◆指定ラベルへ飛ぶ:20番
◆
:分岐終了
◆
:分岐終了
◆
:分岐終了
◆注釈:■■■■■■■■■■■■■■
: :▼出発:まだ検索マスがあるかどうかをチェック
: :
◆条件分岐:変数[0031:呼出/出発:次X座標]が200(オプション:ON)<次の検索候補を呼び出す変数番号が限界値の時
◆変数の操作:[0031〜0033]減算,99<最初の変数番号に戻す
◆
:それ以外の場合<次の検索候補を呼び出す変数番号が限界値ではない時
◆変数の操作:[0031〜0033]加算,1<次の変数番号にする
◆
:分岐終了
◆条件分岐:変数[0017:処理中記憶変数番号]がV[0031]以外<まだ最後に記憶した変数番号ではない
◆指定ラベルへ飛ぶ:11番<次の検索候補を調べるために処理を戻す
◆
:分岐終了
◆注釈:■■■■■■■■■■■■■■■■■■■■■
: :▼到着地点からの検索処理
: :
◆変数の操作:[0006:到着:歩数]加算,1<次の歩数にする
◆変数の操作:[0017:処理中記憶変数番号]代入,変数[0026]の値<最後に記憶した変数番号を代入
◆ラベルの設定:12番<検索候補が無くなるまで、何度もここへ処理を戻す
◆変数の操作:[0011:出力:X座標]代入,変数[V[0036]]の値<次に検索するX座標を呼び出す
◆変数の操作:[0012:出力:Y座標]代入,変数[V[0037]]の値<次に検索するY座標を呼び出す
◆変数の操作:[0013:出力:変数番号]代入,変数[V[0038]]の値<次に検索する変数番号を呼び出す
◆注釈:■■■■■■■■■■■■■■
: :▼到着:上のマスを検索
: :
◆変数の操作:[0012:出力:Y座標]減算,1<検索するマスの上のマスにセット
◆変数の操作:[0013:出力:変数番号]減算,42<検索するマスの上のマスにセット
◆変数の操作:[0014:出力:移動方向]代入,変数[V[0013]]の値
◆条件分岐:変数[0014:出力:移動方向]が-1以下(オプション:ON)
◆指定位置の地形ID取得:(V[0011],V[0012]),[0015:地形ID]
◆条件分岐:変数[0015:地形ID]が2(オプション:ON)
◆注釈:▼通行不可マス
◆変数の操作:[V[0013]]代入,999999
◆
:それ以外の場合
◆注釈:▼通行可能マス
◆変数の操作:[V[0013]]代入,12
◆変数の操作:[V[0026]]代入,変数[0011]の値
◆変数の操作:[V[0027]]代入,変数[0012]の値
◆変数の操作:[V[0028]]代入,変数[0013]の値
◆条件分岐:変数[0026:記憶/到着:次X座標]が500
◆変数の操作:[0026〜0028]減算,99
◆
:それ以外の場合
◆変数の操作:[0026〜0028]加算,1
◆
:分岐終了
◆
:分岐終了
◆
:それ以外の場合
◆条件分岐:変数[0014:出力:移動方向]が10より小さい<上のマスが出発地点からの検索済みマスの時(合流地点の発見)
◆変数の操作:[0018:合流→到着変数番号]代入,変数[V[0038]]の値<合流地点の到着側の変数番号を代入
◆変数の操作:[0007〜0009]加算,1<次の歩数にする
◆変数の操作:[V[0008]]代入,2<合流地点の両者を繋ぐ移動方向を設定
◆指定ラベルへ飛ぶ:20番
◆
:分岐終了
◆
:分岐終了
◆注釈:■■■■■■■■■■■■■■
: :▼到着:下のマスを検索
: :
◆変数の操作:[0012:出力:Y座標]加算,2<検索するマスの上のマスから下のマスへ変更
◆変数の操作:[0013:出力:変数番号]加算,84<検索するマスの上のマスから下のマスへ変更
◆変数の操作:[0014:出力:移動方向]代入,変数[V[0013]]の値
◆条件分岐:変数[0014:出力:移動方向]が-1以下(オプション:ON)
◆指定位置の地形ID取得:(V[0011],V[0012]),[0015:地形ID]
◆条件分岐:変数[0015:地形ID]が2(オプション:ON)
◆注釈:▼通行不可マス
◆変数の操作:[V[0013]]代入,999999
◆
:それ以外の場合
◆注釈:▼通行可能マス
◆変数の操作:[V[0013]]代入,18
◆変数の操作:[V[0026]]代入,変数[0011]の値
◆変数の操作:[V[0027]]代入,変数[0012]の値
◆変数の操作:[V[0028]]代入,変数[0013]の値
◆条件分岐:変数[0026:記憶/到着:次X座標]が500(オプション:ON)
◆変数の操作:[0026〜0028]減算,99
◆
:それ以外の場合
◆変数の操作:[0026〜0028]加算,1
◆
:分岐終了
◆
:分岐終了
◆
:それ以外の場合
◆条件分岐:変数[0014:出力:移動方向]が10より小さい
◆変数の操作:[0018:合流→到着変数番号]代入,変数[V[0038]]の値
◆変数の操作:[0007〜0009]加算,1
◆変数の操作:[V[0008]]代入,8
◆指定ラベルへ飛ぶ:20番
◆
:分岐終了
◆
:分岐終了
◆注釈:■■■■■■■■■■■■■■
: :▼到着:左のマスを検索
: :
◆変数の操作:[0011〜0012]減算,1<検索するマスの下のマスから左のマスへ変更
◆変数の操作:[0013:出力:変数番号]減算,43<検索するマスの下のマスから左のマスへ変更
◆変数の操作:[0014:出力:移動方向]代入,変数[V[0013]]の値
◆条件分岐:変数[0014:出力:移動方向]が-1以下(オプション:ON)
◆指定位置の地形ID取得:(V[0011],V[0012]),[0015:地形ID]
◆条件分岐:変数[0015:地形ID]が2(オプション:ON)
◆注釈:▼通行不可マス
◆変数の操作:[V[0013]]代入,999999
◆
:それ以外の場合
◆注釈:▼通行可能マス
◆変数の操作:[V[0013]]代入,16
◆変数の操作:[V[0026]]代入,変数[0011]の値
◆変数の操作:[V[0027]]代入,変数[0012]の値
◆変数の操作:[V[0028]]代入,変数[0013]の値
◆条件分岐:変数[0026:記憶/到着:次X座標]が500(オプション:ON)
◆変数の操作:[0026〜0028]減算,99
◆
:それ以外の場合
◆変数の操作:[0026〜0028]加算,1
◆
:分岐終了
◆
:分岐終了
◆
:それ以外の場合
◆条件分岐:変数[0014:出力:移動方向]が10より小さい
◆変数の操作:[0018:合流→到着変数番号]代入,変数[V[0038]]の値
◆変数の操作:[0007〜0009]加算,1
◆変数の操作:[V[0008]]代入,6
◆指定ラベルへ飛ぶ:20番
◆
:分岐終了
◆
:分岐終了
◆注釈:■■■■■■■■■■■■■■
: :▼到着:右のマスを検索
: :
◆変数の操作:[0011:出力:X座標]加算,2<検索するマスの左のマスから右のマスへ変更
◆変数の操作:[0013:出力:変数番号]加算,2<検索するマスの左のマスから右のマスへ変更
◆変数の操作:[0014:出力:移動方向]代入,変数[V[0013]]の値
◆条件分岐:変数[0014:出力:移動方向]が-1以下(オプション:ON)
◆指定位置の地形ID取得:(V[0011],V[0012]),[0015:地形ID]
◆条件分岐:変数[0015:地形ID]が2(オプション:ON)
◆注釈:▼通行不可マス
◆変数の操作:[V[0013]]代入,999999
◆
:それ以外の場合
◆注釈:▼通行可能マス
◆変数の操作:[V[0013]]代入,14
◆変数の操作:[V[0026]]代入,変数[0011]の値
◆変数の操作:[V[0027]]代入,変数[0012]の値
◆変数の操作:[V[0028]]代入,変数[0013]の値
◆条件分岐:変数[0026:記憶/到着:次X座標]が500(オプション:ON)
◆変数の操作:[0026〜0028]減算,99
◆
:それ以外の場合
◆変数の操作:[0026〜0028]加算,1
◆
:分岐終了
◆
:分岐終了
◆
:それ以外の場合
◆条件分岐:変数[0014:出力:移動方向]が10より小さい
◆変数の操作:[0018:合流→到着変数番号]代入,変数[V[0038]]の値
◆変数の操作:[0007〜0009]加算,1
◆変数の操作:[V[0008]]代入,4
◆指定ラベルへ飛ぶ:20番
◆
:分岐終了
◆
:分岐終了
◆注釈:■■■■■■■■■■■■■■
: :▼到着:まだ検索マスがあるかどうかをチェック
: :
◆条件分岐:変数[0036:呼出/出発:次X座標]が500(オプション:ON)
◆変数の操作:[0036〜0038]減算,99
◆
:それ以外の場合
◆変数の操作:[0036〜0038]加算,1
◆
:分岐終了
◆条件分岐:変数[0017:処理中記憶変数番号]がV[0036]以外
◆指定ラベルへ飛ぶ:12番
◆
:分岐終了
◆指定ラベルへ飛ぶ:10番<次の歩数を検索するために処理を戻す
◆注釈:
: :▲ここまでが検索処理
: :■■■■■■■■■■■■■■■■■■■■■■■■■■■■
◆注釈:
: :
: :
: :
◆注釈:■■■■■■■■■■■■■■■■■■■■■■■■■■■■
: :▼最短ルートの作成
: :
◆注釈:■■■■■■■■■■■■■■
: :▼合流地点から出発地点までの移動方向
: :
◆ラベルの設定:20番
◆変数の操作:[0007〜0008]減算,1<歩数と移動ルートを保存する変数番号を減算1
◆条件分岐:変数[0007:出発:歩数]が1以上<まだ歩数が残っている時
◆変数の操作:[0014:出力:移動方向]代入,変数[V[0013]]の値<移動方向を呼び出す
◆変数の操作:[V[0008]]代入,変数[0014]の値<移動方向を最短ルートを記憶する変数に保存
◆条件分岐:変数[0014:出力:移動方向]が8<移動方向が8(上)の時
◆変数の操作:[0013:出力:変数番号]加算,42<下のマスの変数番号に合わせる
◆指定ラベルへ飛ぶ:20番
◆
:分岐終了
◆条件分岐:変数[0014:出力:移動方向]が2
◆変数の操作:[0013:出力:変数番号]減算,42
◆指定ラベルへ飛ぶ:20番
◆
:分岐終了
◆条件分岐:変数[0014:出力:移動方向]が4
◆変数の操作:[0013:出力:変数番号]加算,1
◆指定ラベルへ飛ぶ:20番
◆
:分岐終了
◆変数の操作:[0013:出力:変数番号]減算,1
◆指定ラベルへ飛ぶ:20番
◆
:分岐終了
◆注釈:■■■■■■■■■■■■■■
: :▼合流地点から到着地点までの移動方向
: :
◆ラベルの設定:21番
◆変数の操作:[0006:到着:歩数]減算,1<歩数を減算
◆変数の操作:[0009:到着:最短ルート変数]加算,1<移動ルートを保存する変数番号を加算1
◆条件分岐:変数[0006:到着:歩数]が0以上<まだ歩数が残っている時
◆変数の操作:[0014:出力:移動方向]代入,変数[V[0018]]の値<移動方向を呼び出す
◆変数の操作:[0014:出力:移動方向]剰余,10<剰余10で移動方向を一の位だけにする
◆変数の操作:[V[0009]]代入,変数[0014]の値<移動方向を最短ルートを記憶する変数に保存
◆条件分岐:変数[0014:出力:移動方向]が8<移動方向が8(上)の時
◆変数の操作:[0018:合流→到着変数番号]減算,42<上のマスの変数番号に合わせる
◆指定ラベルへ飛ぶ:21番
◆
:分岐終了
◆条件分岐:変数[0014:出力:移動方向]が2
◆変数の操作:[0018:合流→到着変数番号]加算,42
◆指定ラベルへ飛ぶ:21番
◆
:分岐終了
◆条件分岐:変数[0014:出力:移動方向]が4
◆変数の操作:[0018:合流→到着変数番号]減算,1
◆指定ラベルへ飛ぶ:21番
◆
:分岐終了
◆変数の操作:[0018:合流→到着変数番号]加算,1
◆指定ラベルへ飛ぶ:21番
◆
:分岐終了
◆注釈:■■■■■■■■■■■■■■■■■■■■■■■■■■■■
: : 最短ルート完成
: :■■■■■■■■■■■■■■■■■■■■■■■■■■■■
◆ |