Re: バグ報告スレッド 10 [ No.321 ]
メンテ
 2012/11/25 20:22
 QUO
基本システム2での設定ミスです。
UDBタイプ6で戦闘コマンドをする場合に、「コマンド選択時の効果」で特殊技能を選んでいると、次の項目「使用不能になる条件」で「特殊技能封印で不能」を選択していても、戦闘中に特殊技能封印の状態異常になったとき選択できてしまいます。(技能側の設定で使用不能になっていれば不発になる)


特殊技能が発動する場合(0以上の場合)、一時変数A(コマンド選択時の効果)の条件分岐で0以上の場合にも、


■DB読込(ユーザ): CSelf11[一時変数B] = ユーザDB[戦闘コマンド:CSelf19[コマンド番号]:使用不能になる条件]
■DB読込(可変): CSelf11[一時変数B] *= 可変DB[×┏ 戦闘一時ステータス[基]:CSelf0[対象戦闘スロット]:【特殊技能制限】1=封印]
■条件分岐(変数): 【1】CSelf11[一時変数B] が 1と同じ
-◇分岐: 【1】 [ CSelf11[一時変数B] が 1と同じ ]の場合↓
|▼ もし 封印フラグ×封印で選択不能 = 1 なら使用できない
|■可変DB書込:DB[万能ウィンドウ一時DB:CSelf32[万能ウィンドウ登録位置]:選択可能状態[1=可]] = 0
|■
◇分岐終了◇


どこかに↑の処理を追加する事で解決できます。



||■条件分岐(変数): 【1】CSelf10[一時変数A] が -3と同じ 【2】CSelf10[一時変数A] が -1以下 【3】CSelf10[一時変数A] が 0以上
||-◇分岐: 【1】 [ CSelf10[一時変数A] が -3と同じ ]の場合↓
|||▼ 使用不能コマンドなので次へ
|||■可変DB書込:DB[万能ウィンドウ一時DB:CSelf32[万能ウィンドウ登録位置]:選択可能状態[1=可]] = 0
|||■ループ開始へ戻る
|||■
||-◇分岐: 【2】 [ CSelf10[一時変数A] が -1以下 ]の場合↓
|||■DB読込(ユーザ): CSelf11[一時変数B] = ユーザDB[戦闘コマンド:CSelf19[コマンド番号]:使用不能になる条件]
|||■DB読込(可変): CSelf11[一時変数B] *= 可変DB[×┏ 戦闘一時ステータス[基]:CSelf0[対象戦闘スロット]:【特殊技能制限】1=封印]
|||■条件分岐(変数): 【1】CSelf11[一時変数B] が 1と同じ
|||-◇分岐: 【1】 [ CSelf11[一時変数B] が 1と同じ ]の場合↓
||||▼ もし 封印フラグ×封印で選択不能 = 1 なら使用できない
||||■可変DB書込:DB[万能ウィンドウ一時DB:CSelf32[万能ウィンドウ登録位置]:選択可能状態[1=可]] = 0
||||■
|||◇分岐終了◇
|||■ループ開始へ戻る
|||■
||-◇分岐: 【3】 [ CSelf10[一時変数A] が 0以上 ]の場合↓
|||■DB読込(ユーザ): CSelf16[消費するものは?] = ユーザDB[技能:CSelf10[一時変数A]:┏ 消費するものは?]
|||■DB読込(ユーザ): CSelf17[消費ポイント] = ユーザDB[技能:CSelf10[一時変数A]:┗ 消費ポイント   ]
|||■DB読込(ユーザ): CSelf13[使用可能シーン] = ユーザDB[技能:CSelf10[一時変数A]:使用可能シーン]
|||■DB読込(ユーザ): CSelf14[発動アイテム番号] = ユーザDB[技能:CSelf10[一時変数A]:発動アイテム要する?[消費]]
|||▼ 使用可能シーンが移動中のみなら使用不能
|||■条件分岐(変数): 【1】CSelf13[使用可能シーン] が 0と同じ
|||-◇分岐: 【1】 [ CSelf13[使用可能シーン] が 0と同じ ]の場合↓
||||■可変DB書込:DB[万能ウィンドウ一時DB:CSelf32[万能ウィンドウ登録位置]:選択可能状態[1=可]] = 0
||||■ループ開始へ戻る
||||■
|||◇分岐終了◇
|||▼ ポイントが足りなければ使用不能
|||■条件分岐(変数): 【1】CSelf16[消費するものは?] が 0と同じ 【2】CSelf16[消費するものは?] が 1と同じ
|||-◇分岐: 【1】 [ CSelf16[消費するものは?] が 0と同じ ]の場合↓
||||■DB読込(可変): CSelf15[残りポイント] = 可変DB[×┏ 戦闘一時ステータス[基]:CSelf0[対象戦闘スロット]:SP]
||||■
|||-◇分岐: 【2】 [ CSelf16[消費するものは?] が 1と同じ ]の場合↓
||||■DB読込(可変): CSelf15[残りポイント] = 可変DB[×┏ 戦闘一時ステータス[基]:CSelf0[対象戦闘スロット]:HP]
||||■変数操作: CSelf15[残りポイント] -= 1 + 0
||||■
|||◇分岐終了◇
|||■条件分岐(変数): 【1】CSelf17[消費ポイント] が CSelf15[残りポイント]超
|||-◇分岐: 【1】 [ CSelf17[消費ポイント] が CSelf15[残りポイント]超 ]の場合↓
||||■可変DB書込:DB[万能ウィンドウ一時DB:CSelf32[万能ウィンドウ登録位置]:選択可能状態[1=可]] = 0
||||■ループ開始へ戻る
||||■
|||◇分岐終了◇
|||▼ 発動アイテムがなければ使用不能
|||■条件分岐(変数): 【1】CSelf14[発動アイテム番号] が 0以上
|||-◇分岐: 【1】 [ CSelf14[発動アイテム番号] が 0以上 ]の場合↓
||||■DB読込(可変): CSelf12[一時変数C] = 可変DB[┣所持アイテム個数:CSelf14[発動アイテム番号]:0](所持個数)
||||▼ アイテムが0個以下の場合は使えない
||||■条件分岐(変数): 【1】CSelf12[一時変数C] が 0以下
||||-◇分岐: 【1】 [ CSelf12[一時変数C] が 0以下 ]の場合↓
|||||■可変DB書込:DB[万能ウィンドウ一時DB:CSelf32[万能ウィンドウ登録位置]:選択可能状態[1=可]] = 0
|||||■ループ開始へ戻る
|||||■
||||◇分岐終了◇
||||■
|||◇分岐終了◇
|||■
||◇分岐終了◇