・概要
ゼロが「各種地形・敵の影響」を受けた場合の処理は、「各種地形・敵の影響(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