Python 如何查看精灵是否接触到矩形?
我正在使用pygame创建一个程序,我想知道是否有一个命令可以解决精灵是否接触到矩形的问题。我看到一个精灵在迷宫中移动,最后是一个矩形。矩形没有任何作用,如果精灵碰到它,他们就会赢。我知道如果雪碧触碰另一个雪碧命令,就会出现这种情况,但我不想再创建另一个雪碧。矩形的代码如下所示:Python 如何查看精灵是否接触到矩形?,python,pygame,sprite,Python,Pygame,Sprite,我正在使用pygame创建一个程序,我想知道是否有一个命令可以解决精灵是否接触到矩形的问题。我看到一个精灵在迷宫中移动,最后是一个矩形。矩形没有任何作用,如果精灵碰到它,他们就会赢。我知道如果雪碧触碰另一个雪碧命令,就会出现这种情况,但我不想再创建另一个雪碧。矩形的代码如下所示: pygame.draw.rect(screen, pink, [1005, 505, 19, 19]) 无法完全访问您的代码,但我认为您可以使用来执行冲突检查。此功能测试两个矩形是否重叠 colliderect()
pygame.draw.rect(screen, pink, [1005, 505, 19, 19])
无法完全访问您的代码,但我认为您可以使用来执行冲突检查。此功能测试两个矩形是否重叠 colliderect()
碰撞矩形(矩形)->bool 如果任一矩形的任何部分重叠(除 顶部+底部或左+右边缘) 最简单的例子:
your_sprite.get_rect().colliderect(your_goal_rect)
无法完全访问您的代码,但我认为您可以使用来执行冲突检查。此功能测试两个矩形是否重叠 colliderect()
碰撞矩形(矩形)->bool 如果任一矩形的任何部分重叠(除 顶部+底部或左+右边缘) 最简单的例子:
your_sprite.get_rect().colliderect(your_goal_rect)
这看起来更像是针对这个特定场景的一种解决方案,其中彩色像素位于矩形内。这是理想的结果,不是吗?我遗漏了什么吗?在本例中,就是在矩形内的彩色像素。这就是变通办法奏效的原因。@DanielF:但这是对OP意图的有效解释。基于这个标题,我希望必须测试任何偏离的像素——这需要更多的代码才能有效运行(因为我估计暴力方法不能很好地扩展)。这个标题确实有点误导。一旦OP澄清了它,我们就可以更新标题。这看起来更像是针对这个特定场景的一种解决方法,其中彩色像素位于矩形内。这是理想的结果,不是吗?我遗漏了什么吗?在本例中,就是在矩形内的彩色像素。这就是变通办法奏效的原因。@DanielF:但这是对OP意图的有效解释。基于这个标题,我希望必须测试任何偏离的像素——这需要更多的代码才能有效运行(因为我估计暴力方法不能很好地扩展)。这个标题确实有点误导。OP澄清后,我们可以更新标题。@usr2564301矩形的颜色无关紧要。(我将改变问题)很难给你建议,因为我们看不到你的代码。请阅读并将您的代码添加到问题中。@usr2564301矩形的颜色无关紧要。(我将改变问题)很难给你建议,因为我们看不到你的代码。请阅读并在问题中添加您的代码。