1
for spike in self.overlapping_sprites:
    spike.handle_collide

这两行代码是初学者的编码魔法。但是,我似乎在我的游戏中遇到了障碍。经过四处测试后,我找不到使碰撞更精确的方法!我的意思是,并不是当两个精灵实际接触时才算作重叠,而是当它们周围的框重叠时。那么我怎样才能以某种方式使我的精灵周围的透明区域在碰到其他精灵时不计为碰撞呢?

4

1 回答 1

1

最合乎逻辑的做法是为每个精灵制作两个矩形,外部一个有边框,内部一个算作对象本身。

以一个 64 x 64 的盒子为例。你可以把它做成 62 x 62 的内盒,边距为 2 像素,实现起来应该不会太难。如果您希望附近的区域不可触及,请仅检查内部区域是否有碰撞。

于 2015-06-06T23:17:58.160 回答