・概要
水との接触判定がある場合は、重力加速度や一部のアクションの速度が変化する。
原作においては、落下速度の最大値が変化する(?)が、このゲームではそこまで考慮していない。
・loadの処理
・・重力加速度
重力加速度(水との
接触判定がある場合)を設定する。
ASのファイル:zero_load.txt
_root.gravity_water=_root.gravity/2 //重力加速度(水との接触判定がある場合)
・・速度
ASのファイル:zero_load.txt
velocity_zero_ex_saber_falling_thrust_water_y=3.5 //EX落下突きの速度(y方向,水との接触判定がある場合)
・水との接触判定
ゼロと水との
接触判定を取得する。また、位置取得を行う。
ゼロのy方向の位置が水の上端の位置より下にある場合は、接触判定を付加する。
↓水との
接触判定。
・①:「_parent._y」。ゼロのy方向の位置。
・②:「water_ymin」。水の上端の位置。①>②であるため、水との接触判定が付加される。
ゼロのy方向の位置が水の上端の位置より上にある場合は、「スプラッシュジャンプを可能にする判定」を付加する。スプラッシュジャンプに関しては、
フットチップの「・スプラッシュジャンプ」を参照。
↓スプラッシュ
ジャンプを可能にする判定。
・①:「_parent._y」。ゼロのy方向の位置。
・②:「water_ymin」。水の上端の位置。①<=②であるため、「スプラッシュジャンプを可能にする判定」が付加される。
ASのファイル:zero_hit_landform_enemy.txt
_root.zero_hit_water=0;zero_splash_jump_enable=0 //判定をリセットしておく
for(i=1;i<=_root.i_water;i++){
landform=_root.board["water_"+i] //参照先を変数に保存
if(this.hitTest(landform)){
water_ymin=landform._y //位置取得
if(_parent._y>water_ymin){ //ゼロの位置が水の上端の位置より下にある場合
_root.zero_hit_water=i //接触判定
break //ループを離脱
}
else{zero_splash_jump_enable=1} //ゼロの位置が水の上端の位置より上にある場合,スプラッシュジャンプを可能にする判定を付加
}
}
・水との接触判定がある場合の処理
・・重力加速度の付加
水との接触判定がある場合は、重力加速度を変化させる。
↓重力加速度の変化。
ASのファイル:zero.txt
︙
else{_root.velocity_zero_y+=_root.gravity_water} //重力加速度を付加(水との接触判定がある場合)
・・壁ずり落ち
水との接触判定がある場合は、速度を半減させる。
ASのファイル:zero_action_wall_slide.txt
if(_root.zero_hit_water!=0){_root.velocity_zero_y/=2} //水との接触判定がある場合,速度を半減させる
・・EX落下突き
水との接触判定がある場合は、速度を変化させる。
ASのファイル:zero_action_ex_saber_falling_thrust.txt
︙
else{_root.velocity_zero_y=velocity_zero_ex_saber_falling_thrust_water_y} //等速で落下(水との接触判定がある場合)
最終更新:2020年12月19日 10:29