Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/332.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 如何检查鼠标和精灵组之间的碰撞_Python_Mouse_Pygame_Collision - Fatal编程技术网

Python 如何检查鼠标和精灵组之间的碰撞

Python 如何检查鼠标和精灵组之间的碰撞,python,mouse,pygame,collision,Python,Mouse,Pygame,Collision,我正在尝试检测鼠标和精灵组之间的碰撞。我到处找了一会儿,但什么也没找到。所以如果你知道怎么做,你能解释一下这样的事情是怎么做的吗?如果是这样,我将不胜感激。另外,我不确定我需要向您展示代码的哪些部分,但如果您需要,请告诉我您需要哪部分代码,我将发布。如果您使用pygame,最简单的方法是创建一个没有图像的精灵,并且位置将随鼠标而改变。要访问鼠标坐标,请使用: pygame.mouse.get_pos(): return (x, y) 然后,您可以将现有的碰撞检测用于此新精灵。您尝试了什么?您使

我正在尝试检测鼠标和精灵组之间的碰撞。我到处找了一会儿,但什么也没找到。所以如果你知道怎么做,你能解释一下这样的事情是怎么做的吗?如果是这样,我将不胜感激。另外,我不确定我需要向您展示代码的哪些部分,但如果您需要,请告诉我您需要哪部分代码,我将发布。

如果您使用pygame,最简单的方法是创建一个没有图像的精灵,并且位置将随鼠标而改变。要访问鼠标坐标,请使用:

pygame.mouse.get_pos(): return (x, y)

然后,您可以将现有的碰撞检测用于此新精灵。

您尝试了什么?您使用的是什么框架?如果你想让我们帮助你,你需要给我们更多的细节。考虑到我不知道该怎么做,我什么都没试过。你所说的框架到底是什么意思?也就是说,你用什么来制作精灵?您使用的精灵库是什么?我使用的是pygame精灵库
一些.rect.collidepoint(pygame.mouse.get_pos())
:--否则,如果您使用事件
MOUSEBUTTONDOWN
MOUSEMOTION
,单击时会得到坐标,或者移动。好的,我让它创建一个应该是给鼠标的精灵。但我真的不知道如何移动精灵。我试过使用move_ip,但不起作用。关于我应该使用什么来移动精灵有什么建议吗?您可以更改精灵的
.rect
属性。确保您的类来自于
pygame.sprite.sprite
请参阅上的示例,非常感谢!再次使用sprite.rect.center=mousePos非常感谢!