シナリオ制作



何故か、新連続行動システムの作成し始めてしまう。
単純にスカファン本編のテストプレイが面倒で気力がそがれるというか……


クイックロードに時間がかかるシナリオで、ターン始めに重いイベントを
幾つも組み込むと、洒落にならんくらいテストが面毒なるんです。


で、そういった反省点を元に新連続行動のテストシナリオを作るも
どうも想定通りに動いてくれなくて、結局放置する事に。


以下長いので省略
一回でも移動するとQ属性が付いた武装が敵フェイズに移るまで使えなくなる
(アビリティー、SP等でカバー可能)って戦闘システムを考える。


全ターン始めに、ユニットの位置情報を修得。
敵ターンでも大体似たようなことをして、反撃できなくなる事を防ぐ。


*ターン 全 味方:
ForEach 敵
ClearStatus 対象ユニット Q属性攻撃使用不可
Next


ForEach 中立
ClearStatus 対象ユニット Q属性攻撃使用不可
Next


ForEach NPC
ClearStatus 対象ユニット Q属性攻撃使用不可
Next


ForEach 味方
Start_X[対象ユニット] = X()
Start_Y[対象ユニット] = Y()
Next
Exit


そして、行動終了後、同じように位置情報を修得し
変化があった場合、SetStatus 対象ユニット Q属性攻撃使用不可 1
を付加、機体側の特殊能力でQ属性武装に禁属性を非表示で追加するという物。


攻撃属性=非表示 禁 Q (Q属性攻撃使用不可状態)


*行動終了 味方:


ActionEnd_X = X()
ActionEnd_Y = Y()
#
# 行動終了後の位置を修得
#
Set X移動判定 ( Start_X[対象ユニット] - ActionEnd_X )
Set Y移動判定 ( Start_Y[対象ユニット] - ActionEnd_X )


If X移動判定 = 0 Then
Else
SetStatus 対象ユニット Q属性攻撃使用不可 1
Endif


If Y移動判定 = 0 Then
Else
SetStatus 対象ユニット Q属性攻撃使用不可 1
Endif
#
# ターン始めのXYそれぞれの位置と比較
# 移動していた場合、P属性以外の武装は使用不能になる。
#


If IsAvailable( 対象ユニット, 連続行動可能 ) = 1 Then
#
# 特殊能力、連続行動可能を持っている。
#
If EN() > 0 Then
  SpecialPower 再行動
EndIf
EndIf
Exit


また、全ユニットが以下のユニットコマンドを使用可能。


ユニットコマンド 仕切りなおし 全 (Condition(対象ユニット,Q属性攻撃使用不可) = 1 and Condition(対象ユニット,仕切りなおし使用不可) = 0):
Confirm 仕切り直しをしますか?(1ターンに一度だけQ属性武装を、使用可能に戻せる)
If 選択 = 1 Then
ClearStatus 対象ユニット Q属性攻撃使用不可
SetStatus 対象ユニット 仕切りなおし使用不可 1
Start_X[対象ユニット] = X()
Start_Y[対象ユニット] = Y()
EndIf
Exit


想定では、移動して行動を終了するとQ属性を持つ武器は使用不能
仕切り直しを使うと、使用可能に戻るが移動するとまた使用不能に。
移動せずに何度も攻撃する事は可能って動きを想定するも
一度攻撃すると、移動していないにも関わらずQ属性武器が使用不能になってしまう不思議。
あうあ、一回寝て明日また考えをまとめてやり直すか。