制作途中で気づいた事

深夜にちょくちょくアイワナ制作をやってて気づいたことがあったので記事にしました。ゆううつエンジン特有なのかは他のエンジンで試したことがないので分かりませんが、元々入っている[Block]Objectと、その既存の[Block]Objectを親(Parent)としたBlockでは判定が違うことに気づきました(今更感ではあるが)。画像で表すと下図の通り。

f:id:EraserDust:20210126023030p:plain

この通り、違うのはParentの部分だけです。

...でこれで何が違うかというと、キッド君がそのBlockに乗っている時のy座標の位置がわずかに違うことです。この違いは結構やばい問題で、文章で説明しづらいので画像を乗せます。

f:id:EraserDust:20210126023051p:plain

上図の通り、上側は既存のBlock、下側はParentにBlockを指定しているBlockです。このy座標が違うことにより、キッド君が乗っているBlockと同じy座標に位置する針に平行移動するだけで当たってしまうのです。画像で言うと、赤い線をキッド君が平行移動で接触、通過をするとParentの方はやられてしまいます。上部の普通のBlockはキッド君がBlockから完全に落ちた判定にならない限り、針には当たりません。

なぜこうなるのかは詳しく調べていないので分かりませんが、とりあえず言えることは、ParentにBlockを指定して既存のBlock代わりにするのはやめたほうがいいということです。正直ストレスの原因になります(主にテスプレ時)。