・概要

 ゼロが「各種地形・敵の影響」を受けた場合の処理は、「各種地形・敵の影響(1)」「各種地形・敵の影響(2)」のように分割されている。
 なお、どちらに記述しても特に問題がない処理もある。

・各種地形・敵の影響(1)

・・概要

 「方向の反転・移動」「各種地形・敵との接触判定」などの処理の前に行う処理となる。
 主に、速度・移動関連の処理が行われる。つまり、速度・移動関連の処理は、「方向の反転・移動」「各種地形・敵との接触判定」などの処理の前に行う必要がある

ASのファイル:zero_effect_landform_enemy_1.txt
 
︙(省略)
 

・傾斜床(補助):傾斜床(補助)を参照。
・梯子:梯子を参照。
・沈む地形:沈む地形を参照。
・貫通可能な床:貫通可能な床を参照。
・氷の床:氷の床を参照。
・風、コンベア:風、コンベアを参照。
・バネ:バネを参照。
・フレーム移動:フレーム移動を参照。

・各種地形・敵の影響(2)

・・概要

 「方向の反転・移動」「各種地形・敵との接触判定」などの処理の後に行う処理となる。
 主に、敵との接触の影響や即死関連の処理が行われる。これは、「敵との接触判定」があった場合、即座に、その影響に関する処理を行うためである。

ASのファイル:zero_effect_landform_enemy_2.txt
 
︙(省略)
 

・即死(地形):即死(地形)を参照。
・敵との接触判定:「・・敵との接触判定の影響」を参照。
・地形に挟まれることによる即死:「・・地形に挟まれることによる即死」を参照。
・敵・アイテムの出現判定用のMCとの接触判定がない場合の即死:「・・敵・アイテムの出現判定用のMCとの接触判定がない場合の即死」を参照。
・破壊関連の処理:破壊(操作キャラクター)を参照。

・・敵との接触判定の影響

 各種地形・敵との接触判定の「・敵との接触判定」において、「敵との接触判定」が付加された場合は、被ダメージ状態に移行し、ノックバックのカウントをリセットする
 この処理は、「即死(地形)」の処理の後に行う必要がある。その理由は、ボディチップの「・ストロング」を参照。

ASのファイル:zero_effect_landform_enemy_2.txt
 
if(_root.zero_hit_enemy!=0){
	_root.zero_action="damage"	//被ダメージ状態に移行
	count_zero_damage_knockback_time=0	//ノックバックのカウントをリセット
}
 

・・地形に挟まれることによる即死

・・・概要

 ゼロは、地形に挟まれることにより、即死する

・・・左右の地形に挟まれることによる即死

 地形に挟まれることによる即死判定(壁(右、左))に関しては、の「・地形に挟まれることによる即死判定(壁(右、左))」を参照。

↓左右の地形に挟まれることによる即死。

ASのファイル:zero_effect_landform_enemy_2.txt
 
if((_root.zero_hit_wall_right!=0 and caught_wall_left!=0) or (caught_wall_right!=0 and _root.zero_hit_wall_left!=0)){_root.zero_life=0}	//左右の地形に挟まれることによる即死
 
 ここでは、「壁(右)」と「地形に挟まれることによる即死判定(壁(左))」のみを解説する。「壁(左)」と「地形に挟まれることによる即死判定(壁(右))」も、ほぼ同様の処理を行っている。
・「_root.zero_hit_wall_right!=0」:壁(右)との接触判定がある。
・「caught_wall_left!=0」:地形に挟まれることによる即死判定(壁(左)がある。
・「_root.zero_life=0」:ゼロのライフ残量を0にする。この処理により、破壊関連の処理が行われることになる。

・・・上下の地形に挟まれることによる即死

 地形に挟まれることによる即死判定(床、天井)に関しては、の「・地形に挟まれることによる即死判定(床)」、天井の「・地形に挟まれることによる即死判定(天井)」などを参照。

↓上下の地形に挟まれることによる即死。

ASのファイル:zero_effect_landform_enemy_2.txt
 
else if((_root.zero_hit_floor!=0 or _root.zero_hit_sloped_floor!=0) and caught_ceiling!=0){_root.zero_life=0}	//上下の地形に挟まれることによる即死(1)
else if((_root.zero_hit_ceiling!=0 or _root.zero_hit_sloped_ceiling!=0) and caught_floor!=0){_root.zero_life=0}	//上下の地形に挟まれることによる即死(2)
 
 ここでは、(1)のみを解説する。(2)もほぼ同様の処理を行っている。
・「_root.zero_hit_floor!=0 or _root.zero_hit_sloped_floor!=0」:床・傾斜床との接触判定がある。
・「caught_ceiling!=0」:地形に挟まれることによる即死判定(天井)がある。
・「_root.zero_life=0」:ゼロのライフ残量を0にする。この処理により、破壊関連の処理が行われることになる。

・・敵・アイテムの出現判定用のMCとの接触判定がない場合の即死

 ゼロは、「敵・アイテムの出現判定用のMC」との接触判定がない場合、即死する。これは、落下死の判定に用いている。

↓「敵・アイテムの出現判定用のMC」(灰色の矩形)との接触判定がない場合の即死。

ASのファイル:zero_effect_landform_enemy_2.txt
 
if(this.hitTest(_root.enemy_item_appearance_hitrect)==false){_root.zero_life=0}
 
・「_root.enemy_item_appearance_hitrect」:敵・アイテムの出現判定用のMC。

最終更新:2020年12月19日 09:23