瓷砖碰撞问题

时间:2010-04-17 00:54:51

标签: tiles

我正在处理瓷砖碰撞。目前,我只是以正常方式绘制瓷砖贴图(两个用于循环)并且没有滚动。现在,要检查我的播放器是否在磁贴上,我使用tileX = (int)person1v.X / 16; tileY = (int)person1v.Y / 16; 但是,我想在之前检测到碰撞,因为它可以作为一个墙。如何在移动之前检测碰撞?

2 个答案:

答案 0 :(得分:0)

如果玩家一次移动 3 像素,请检查:

leftTile = (int)(person1v.x - 3) / 16;

对于右边的瓷砖:

rightTile = (int)(person1v.x + 3 + 16) / 16;

答案 1 :(得分:0)

好而不是先移动他并在之后检查碰撞,检查角色未来位置的碰撞,如果没有碰撞,则改变角色的位置。