スピン攻撃の当たり判定

マントマリオになるとY/Xボタンでスピン攻撃ができるようになります。スピン攻撃のグラフィックは以下のようになっています。

2フレーム毎にグラフィックが切り替わり、1回転で4枚のグラフィックが存在するため、8フレームで1回転することになります。

このスピン攻撃の当たり判定はマントの位置に依存しています。すなわち、①、②はマリオの左側、③、④は右側に攻撃判定があります。すなわち、4フレーム毎に攻撃方向が右、左、右、左…と変わります。常に両方向に攻撃判定があるわけではありません。

また、このスピン攻撃の方向が変化するタイミングは、マリオがステージに入ってからの時間(ステージ内タイムとします)に依存します。例えば、ステージに入ってからの動きを同じにすると、ある地点でスピン攻撃を行った時、スピンの振動の仕方は毎回一緒となります。

上記の仕様は敵を倒す行為に大きな影響を与えます。例として「ドーナツへいや ひみつのコース1」を見ていきます。

このコースを走る時は、道中で甲羅を回収し、ビート板代わりにして進みます。目的地点に到達するまでに何体かの敵と遭遇するため、躱したりスピン攻撃で倒したりして進むことになるのですが、スピン攻撃で倒す場合、これらの敵の手前へ到達するタイミングによって甲羅が相殺されるかどうか(敵をマントで倒すか甲羅で倒すか)が決まります。

http://www.mariouniverse.com/ より)

基本的にRTAでは隠しゴールを目指す時、赤丸の敵をスピン攻撃で倒していくことになります。その内、左側の赤丸(ブクブク)の対処に焦点を当ててみます。
マリオは別エリアで甲羅を回収し、Bの土管から出てきます。足がブロックに触れると減速してしまうため(重要)、ブロックに触れないように進んでいくのですが、最速でブクブクの手前に到達してスピンをした場合、甲羅と相殺してしまいます。

相殺する瞬間を見てみると、マントが左側、甲羅が右側にあることが分かります。 これを回避するには、足がブロックに触れると減速することを利用してあえて減速し、マントの振動タイミングを変更します。↑の画像のマリオはグラフィック②の1フレーム目なので、2~5フレーム遅らせればマントの向きが右になり、甲羅を相殺することなくブクブクを倒すことが出来ます。  

Pスイッチのある足場の右にある足場にあえて着地し減速することで、スピン時のマントの振動タイミングが変わり、マントでブクブクを倒すことが出来ました。

同様に奥のグースカも調整して倒したいところですが、グースカのいる地点に行くには短い距離で大きく上昇する必要があり、マントの振動パターンを制御することは非常に困難です。↑の減速と合わせて動きを完全にパターン化すれば出来ないわけではないですが、人間には厳しいでしょう。

なお、青丸のプクプクも減速無しで進むと必ず甲羅と相殺します。手前のブロックに頭をぶつけなければ減速無しでかわすことが出来ますが、もしぶつけてしまった場合は、減速して倒せるように祈るか、甲羅を投げ上げて回避するようにしましょう。

このように、マントによるスピン攻撃の判定は、敵をより確実に倒すために重要なものとなります。スプライトの当たり判定と合わせて押さえておくと良いかも知れませんね。