・概要
「歩き」は、ゼロをx方向に移動させるアクションを指す。
原作においては、「走っている」と表現されているが、(今更変更するのが面倒くさいので)ここでは歩いていることにしておく。
↓歩き。
・loadの処理
・・速度
「・速度」を参照。
ASのファイル:zero_load.txt
velocity_zero_walk //歩きの速度
velocity_zero_walk_initial=0.5 //歩きの速度(通常状態から移行する場合,以下「位置の微調整」)
velocity_zero_walk_normal=2 //歩きの速度(通常)
︙
・・位置の微調整
「・位置の微調整」を参照。
ASのファイル:zero_load.txt
count_zero_walk_initial=0 //位置の微調整のカウント
count_zero_walk_initial_max=4 //位置の微調整のカウントの最大値
ASのファイル:zero_load.txt
zero_action_walk_initial=0 //位置の微調整の判定
・モーション
ASのファイル:zero_action_walk.txt
if(_root.zero_buster=="none" and _root.zero_saber=="none"){_parent.zero_AA.gotoAndStop("zero_AA_walk")} //攻撃中ではない場合
・速度
速度は3種類ある。基本的には、「歩きの速度」には「歩きの速度(通常)」が代入される。
「位置の微調整の速度」に関しては、「・位置の微調整」を参照。「クイック装着中の速度」に関しては、
フットチップの「・クイック」を参照。
ASのファイル:zero_action_walk.txt
︙
else{velocity_zero_walk=velocity_zero_walk_normal} //クイック装着中ではない場合の速度
・他のアクションへの移行
・・概要
ここでは、「
氷の床との
接触判定がない場合」のみを解説する。「氷の床との接触判定がある場合」は
氷の床を参照。
「・・ジャンプ開始への移行」「・・ダッシュへの移行」に関しては、
通常状態とほぼ同様の処理なので、詳細な解説は省略する。ただし、
セイバーモーション中でも移行できる(「_root.zero_saber=="none"」の条件がない)(原作準拠)ようにしている点が異なる。
・・ジャンプ開始への移行
ASのファイル:zero_action_walk.txt
if(keydown_new_jump==1){ //ジャンプキーの入力がある場合
_root.zero_action="jump_start" //ジャンプ開始に移行
if(keydown_new_dash==1){_root.zero_dash=1} //ダッシュキーの入力がある場合,ダッシュ属性を付加
}
・・ダッシュへの移行
ASのファイル:zero_action_walk.txt
else if(keydown_new_dash==1){_root.zero_action="dash"} //ダッシュキーの入力がある場合,ダッシュに移行
・・歩きの継続、速度の付加、方向の変更
左右キーの入力がある場合、速度を付加する。また、ゼロの方向を変更する。
ASのファイル:zero_action_walk.txt
else if(keydown_right==1){_root.velocity_zero_x=velocity_zero_walk;_root.zero_direction=1} //右キーの入力がある場合,速度を付加,右向きに変更
else if(keydown_left==1){_root.velocity_zero_x=-velocity_zero_walk;_root.zero_direction=-1} //左キーの入力がある場合,速度を付加,左向きに変更
「右キーの入力がある場合」に関しては、以下の通りとなる。
・「_root.velocity_zero_x=velocity_zero_walk」:ゼロの速度に、歩きの速度を代入する。
・「_root.zero_direction=1」:ゼロの方向を右向きに変更する。
「左キーの入力がある場合」に関しては、符号をマイナスにした上で、同様の処理を行っている。
・・通常状態への移行
上記の条件の全てが満たされない場合には、x方向の速度を0にして、通常状態に移行する。
↓通常状態への移行。
ASのファイル:zero_action_walk.txt
else{_root.zero_action="normal";_root.velocity_zero_x=0} //通常状態に移行
・位置の微調整
・・概要
「位置の微調整」は、通常状態から歩きに移行した場合の、数フレームのみ速度が低い状態を指す。
↓位置の微調整。
・・位置の微調整の判定の付加
位置の微調整の判定は、通常状態から移行する際に付加させている。
通常状態の「・他のアクションへの移行」の「・・歩き(位置の微調整)への移行」を参照。
・・位置の微調整の速度
位置の微調整の判定がある場合は、「歩きの速度」に「位置の微調整の速度」が代入される。また、位置の微調整のカウントを増加させる。
ASのファイル:zero_action_walk.txt
if(zero_action_walk_initial==1){ //位置の微調整
velocity_zero_walk=velocity_zero_walk_initial //位置の微調整の速度
count_zero_walk_initial++ //位置の微調整のカウントを増加させる
}
・・位置の微調整の判定のリセット(1)
位置の微調整のカウントが最大値の場合は、位置の微調整の判定・カウントをリセットする。そして、これ以降は、「歩きの速度」に、別の値が代入されることになる。
ASのファイル:zero_action_walk.txt
if(count_zero_walk_initial==count_zero_walk_initial_max){zero_action_walk_initial=0;count_zero_walk_initial=0} //カウントが最大値の場合,位置の微調整の判定・カウントをリセット
・・位置の微調整の判定のリセット(2)
最終更新:2020年12月12日 10:58