・概要
「壁ずり落ち」は、壁沿いに、一定の速度でずり落ちていくアクションを指す。
↓壁ずり落ち。
・loadの処理
・・速度
「・速度」を参照。
ASのファイル:zero_load.txt
velocity_zero_wall_slide_frog_lv0=1.6 //壁ずり落ちの速度(通常)
︙
・・カウント
エフェクト関連の値であり、アクションと直接的に関係がないので、解説は省略する。
ASのファイル:zero_load.txt
count_zero_wall_slide=0 //壁ずり落ちのカウント
count_zero_wall_slide_effect=20 //壁ずり落ちのエフェクトが追加されるまでの時間
・モーション
ASのファイル:zero_action_wall_slide.txt
if(_root.zero_buster=="none" and _root.zero_saber=="none"){_parent.zero_AA.gotoAndStop("zero_AA_wall_slide")} //攻撃中ではない場合
・速度
速度には3種類あるが、ここでは、「壁ずり落ちの速度(通常)」のみを扱う。他の速度に関しては、
フットチップの「・フロッグ」を参照。
壁ずり落ち中には、ゼロのy方向の速度には、常に「壁ずり落ちの速度(通常)」の速度が代入されるので、下方向に一定の速度でずり落ちることになる。
ASのファイル:zero_action_wall_slide.txt
if(keydown_down==1 or _root.zero_tip_foot_frog==0){_root.velocity_zero_y=velocity_zero_wall_slide_frog_lv0} //下キーの入力がある場合,フロッグ装着中ではない場合の速度
︙
・「_root.velocity_zero_y=velocity_zero_wall_slide_frog_lv0」:ゼロのy方向の速度に、壁ずり落ちの速度(通常)を代入する。
・他のアクションへの移行
・・ジャンプへの移行
壁との接触判定がなくなった場合、または、左右キーの入力がなくなった場合は、ジャンプに移行する。y方向の速度は0にしている(原作準拠?)。
↓
ジャンプへの移行(壁との接触判定がなくなった場合)。
↓ジャンプへの移行(左右キーの入力がなくなった場合)。
ASのファイル:zero_action_wall_slide.txt
if((_root.zero_direction==1 and (_root.zero_hit_wall_right==0 or keydown_right==0)) or (_root.zero_direction==-1 and (_root.zero_hit_wall_left==0 or keydown_left==0))){_root.velocity_zero_y=0;_root.zero_action="jump"} //壁との接触判定がなくなった場合,左右キーの入力がなくなった場合,ジャンプに移行
右向きの場合は、以下の通りとなる。
・「_root.zero_direction==1」:ゼロが右向き。
・「_root.zero_hit_wall_right==0」:壁(右)との接触判定がない。
・「keydown_right==0」:右キーの入力がない。
・「_root.velocity_zero_y=0」:y方向の速度を0にする。
・「_root.zero_action="jump"」:ジャンプに移行する。
左向きの場合も同様の処理を行っている。
氷の壁との接触判定がある場合にも、ジャンプに移行する。
氷の壁を参照。
・・壁蹴りへの移行
ジャンプキーの入力がある場合は、
壁蹴りに移行する。
↓壁蹴りへの移行。
ASのファイル:zero_action_wall_slide.txt
if(keydown_new_jump==1){_root.zero_action="wall_kick"} //ジャンプキーの入力がある場合,壁蹴りに移行
・・通常状態への移行
↓通常状態への移行。
ASのファイル:zero_action_wall_slide.txt
if(_root.zero_hit_floor!=0 or _root.zero_hit_sloped_floor!=0 or _root.zero_hit_sink!=0){_root.zero_action="normal"} //床・傾斜床・沈む地形との接触判定がある場合,通常状態に移行
最終更新:2020年12月12日 11:00