・概要

 氷の床との接触判定がある場合は、通常状態・歩き・ダッシュなどの処理が変化する

・loadの処理

・・加速度、減速度

 加速度、減速度を設定する。

ASのファイル:zero_load.txt
 
acceleration_zero_ice_floor_walk_dash=0.15	//氷の床における加速度(歩き,ダッシュ)
acceleration_zero_ice_floor_dash_saber=0.135	//氷の床における加速度(ダッシュセイバー)
acceleration_zero_ice_floor_ex_saber_dash_thrust=0.14	//氷の床における加速度(EXダッシュ突き)
decelaration_zero_ice_floor=0.08	//氷の床における減速度
 

・氷の床との接触判定

 「氷の床との接触判定を付加させるための地形のMC」に、以下の記述をしておく。地形の出現・消滅の「・地形のMCの構造」も参照。

ASのファイル:なし
 
onClipEvent(load){
	ice_floor=1	//氷の床
}
 

 上記の記述により、該当する地形との接触判定がある場合は、同時に「氷の床との接触判定」が付加される。
 ゼロの場合は、「スパイク・アイス」装着中は、氷の床との接触判定を取得しない。「スパイク・アイス」に関しては、フットチップの「・スパイク・アイス」の動画を参照。

ASのファイル:landform_property.txt
 
if(landform.ice_floor==1 and (MC_hit_landform!="zero" or (MC_hit_landform=="zero" and _root.zero_tip_foot_spike_ice==-1))){hit_ice_floor=1}	//ゼロの場合・スパイク・アイス装着中ではない場合
 

・氷の床との接触判定がある場合の処理

・・概要


 前提となる条件は、以下の通りとなる。

ASのファイル:zero_action_normal.txt、zero_action_walk.txt、zero_action_dash.txt など
 
︙(氷の床との接触判定がない場合の処理)
else{	//氷の床との接触判定がある場合}
 

・・通常状態

・・・他のアクションへの移行

 氷の床との接触判定がある場合は、以下のように挙動が変化する。
ジャンプ開始に移行する場合、ダッシュキーの入力がある場合でも、ダッシュ属性を付加しない
歩きに移行する場合、位置の微調整の判定を付加しない

ASのファイル:zero_action_normal.txt
 
	if(keydown_new_jump==1 and _root.zero_saber=="none"){_root.zero_action="jump_start"}	//ジャンプキーの入力がある場合,ジャンプ開始に移行
	else if(keydown_new_dash==1 and _root.zero_saber=="none"){_root.zero_action="dash"}	//ダッシュキーの入力がある場合,ダッシュに移行
	else if((keydown_right==1 or keydown_left==1) and _root.zero_saber=="none"){_root.zero_action="walk"}	//左右キーの入力がある場合,歩きに移行
 

・・・減速

 通常状態を継続する場合は、「減速」の処理を行う
 速度(の絶対値)が一定の値以下の場合は、速度を0にする

↓減速。

ASのファイル:zero_action_normal.txt
 
	else{
		if(_root.velocity_zero_x>0){_root.velocity_zero_x-=decelaration_zero_ice_floor}	//速度が0ではない場合,減速
		else if(_root.velocity_zero_x<0){_root.velocity_zero_x+=decelaration_zero_ice_floor}
		if(Math.abs(_root.velocity_zero_x)<=decelaration_zero_ice_floor){_root.velocity_zero_x=0}	//速度が一定の値以下の場合,速度を0にする
	}
 

・・歩き

・・・他のアクションへの移行

 氷の床との接触判定がある場合は、以下のように挙動が変化する。
ジャンプ開始に移行する場合、ダッシュキーの入力がある場合でも、ダッシュ属性を付加しない
通常状態に移行する場合、x方向の速度を0にしない

ASのファイル:zero_action_walk.txt
 
	if(keydown_new_jump==1){_root.zero_action="jump_start"}	//ジャンプキーの入力がある場合,ジャンプ開始に移行
	else if(keydown_new_dash==1){_root.zero_action="dash"}	//ダッシュキーの入力がある場合,ダッシュに移行else{_root.zero_action="normal"}	//通常状態に移行
 

・・・加速

 歩きを継続する場合は、「加速」の処理を行う

↓加速。

ASのファイル:zero_action_walk.txt
 
	else if(keydown_right==1){_root.velocity_zero_x+=acceleration_zero_ice_floor_walk_dash;_root.zero_direction=1}	//右キーの入力がある場合,加速度を付加,右向きに変更
	else if(keydown_left==1){_root.velocity_zero_x-=acceleration_zero_ice_floor_walk_dash;_root.zero_direction=-1}	//左キーの入力がある場合,加速度を付加,左向きに変更
 

・・・速度の制限

 「歩きの速度」以上にならないように、速度を制限する

ASのファイル:zero_action_walk.txt
 
	if(_root.velocity_zero_x>=velocity_zero_walk){_root.velocity_zero_x=velocity_zero_walk}	//速度の制限
	else if(_root.velocity_zero_x<=-velocity_zero_walk){_root.velocity_zero_x=-velocity_zero_walk}
 

・・ジャンプ開始

 ジャンプ開始の「・速度」を参照。

・・ダッシュ

・・・ダッシュ属性

 ゼロの速度の絶対値が、ダッシュの速度と等しくなった場合、ダッシュ属性を付加する(原作準拠?)。それ以外の場合は、ダッシュ属性を解除する。

↓ダッシュ属性。

ASのファイル:zero_action_dash.txt
 
	if(Math.abs(_root.velocity_zero_x)==velocity_zero_dash){_root.zero_dash=1}	//ゼロの速度の絶対値がダッシュの速度と等しくなった場合,ダッシュ属性を付加する
	else{_root.zero_dash=0}
 

・・・加速

 ダッシュを継続する場合は、「加速」の処理を行う
 セイバーモーションの有無やセイバーモーションの種類によって、加速度が異なる。

↓加速。

ASのファイル:zero_action_dash.txt
 
	if(_root.zero_saber=="none"){_root.velocity_zero_x+=acceleration_zero_ice_floor_walk_dash*_root.zero_direction}	//セイバーモーション中ではない場合の加速度の付加
	else if(_root.zero_saber=="dash"){_root.velocity_zero_x+=acceleration_zero_ice_floor_dash_saber*_root.zero_direction}	//セイバーモーション中(ダッシュセイバー)の加速度の付加
	else if(_root.zero_saber=="ex_saber_dash_thrust"){_root.velocity_zero_x+=acceleration_zero_ice_floor_ex_saber_dash_thrust*_root.zero_direction}	//セイバーモーション中(EXダッシュ突き)の加速度の付加
 

・速度の制限

 各種地形・敵の影響の「・各種地形・敵の影響(1)」の箇所において、速度の制限に関する処理を行う。

 「ダッシュの速度」以上にならないように、速度を制限する

ASのファイル:zero_effect_landform_enemy_1.txt
 
if(_root.zero_hit_ice_floor!=0){
	if(_root.velocity_zero_x>velocity_zero_dash){_root.velocity_zero_x=velocity_zero_dash}	//速度の制限
	else if(_root.velocity_zero_x<-velocity_zero_dash){_root.velocity_zero_x=-velocity_zero_dash}
}
 

最終更新:2020年12月12日 11:25