如果重叠则弹出阻塞对象:UE4

问题描述

我的 2d 平台游戏有一个“时间旅行”机制。 您将全息图放在一个位置(没有碰撞和一些漂亮效果的演员)。

当您按住“倒带”按钮时,您的角色的碰撞和重力将关闭,并且他会缓慢地向全息图移动。

当你松开倒带按钮时,它会重新开启他的碰撞。

我的瓦片地图设置为“阻挡”pawn(这样他就可以在上面行走等)。

如果你在他与地形重叠时松开按钮,它会重新开启他的碰撞,他会被卡住。

我想知道该怎么做。 Unity 自动“弹出”了一个重叠的对象,该对象不应该重叠。

由于地形设置为阻挡 pawn,我无法触发重叠事件。 “On Component Hit”只会从他站立或摩擦地形时开火,因此两者都不会。

我应该如何检测玩家正在地形内弹出?我可以决定稍后要做什么(弹出它们、杀死它们、防止它们出现等)。但现在我只需要区分他们触摸瓷砖地图和在里面。

有什么想法吗?

解决方法

所以我最后做的是在我的播放器上复制胶囊对撞机。新胶囊(称为“地形重叠”)会忽略所有碰撞,除非它与瓦片地图重叠。

该组件有一个开始和结束重叠方法,可以在字符上设置一个布尔值。

当玩家松开 Rewind 按钮时,如果他们在地下(布尔检查),我可以触发死亡方法。 Ultra simple blueprint