【发布时间】:2014-04-07 15:13:32
【问题描述】:
作为一个主题:
我的platformer-style game 中的finalizing collision detection 有问题。
我使用矩形方法来做到这一点,collision detection works fine 那里。
问题是:我的游戏应该按什么顺序查找colisions?因为如果我首先检查玩家是否“站在”平台上然后在侧面发生碰撞,游戏就会变得混乱,然后玩家从侧面撞击平台,而在空中(在跳跃期间)。它将玩家传送到“站立”位置,然后忽略侧面碰撞。
当我将游戏设置为首先检查侧面碰撞时,当玩家降落在平台上时,他会被传送到平台的左侧或右侧。
我明白发生了什么,但我不知道如何解决这个问题。
如果您希望我发布更多信息/代码,请告诉我。
谢谢!
【问题讨论】:
-
你能做的就是不要在发生碰撞时立即采取行动。但是将标志设置为“bottomCollded”或“sideCollided”......然后检查是否检查了两个标志或只检查一个,然后采取行动。
-
@DavorMlinaric 我已经尝试过了,但是我在识别正确碰撞时遇到了问题,请看这张图片link。在案例 1 中,玩家(红色方块)从侧面撞击平台时应该向左移动,在案例 2 中,它应该在落到平台上时向顶部移动一点。在这两种情况下,碰撞检测都将 collisionBottam 和 collisionRight 返回为 true。这让我有点困惑