・概要

 「歩き」は、ゼロを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