Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python pygame中有没有一种方法可以在组中查找碰撞_Python_Pygame_Collision Detection - Fatal编程技术网

Python pygame中有没有一种方法可以在组中查找碰撞

Python pygame中有没有一种方法可以在组中查找碰撞,python,pygame,collision-detection,Python,Pygame,Collision Detection,pygame模块在各种碰撞检测方法中使用组 我一直在试图找到一种方法来发现精灵与同一组中包含的其他成员之间的冲突 在这个例子中- pygame.sprite.spritecollide(生物,创造者组,False) 这继续为碰撞检测提供假阳性,我认为这是由于“生物”精灵包含在“creaturegroup”组中。在组中查找冲突的任何建议解决方法?一种方法是创建一个临时组,其中包含除要测试的精灵以外的所有精灵: test_group=pagame.sprite.group([s代表creature

pygame模块在各种碰撞检测方法中使用组

我一直在试图找到一种方法来发现精灵与同一组中包含的其他成员之间的冲突

在这个例子中-

pygame.sprite.spritecollide(生物,创造者组,False)

这继续为碰撞检测提供假阳性,我认为这是由于“生物”精灵包含在“creaturegroup”组中。在组中查找冲突的任何建议解决方法?

一种方法是创建一个临时组,其中包含除要测试的精灵以外的所有精灵:

test_group=pagame.sprite.group([s代表creaturegroup中的s,如果s!=生物])
pygame.sprite.SpriteClide(生物,测试组,错误)

另一个选项是编写自己的测试函数,它跳过相等的对象:
(见附件)

def collide_if_not_self(左、右):
如果离开!=正确的:
返回pygame.sprite.collide_rect(左、右)
返回错误
pygame.sprite.spritecollide(生物,创造者组,False,非自身碰撞)

谢谢,我已经尝试了这两种建议,它们在我的项目中都起到了解决方案的作用!是的,前一个响应者的建议是成功的!