如何解决我怎样才能改变我的 pygame 桨从鼠标定位从键移动
def move(self):
#reset movement direction
self.path = 0
key = pygame.key.get_pressed()
if key[pygame.K_LEFT] and self.rect.left > 0:
self.rect.x -= self.speed
self.path = -1
if key[pygame.K_RIGHT] and self.rect.right < screenw:
self.rect.x += self.speed
self.path = 1
我正在让它使用按键,但我无法将其更改为鼠标定位
解决方法
只需通过鼠标光标的 x 坐标设置 paddle 的 centery
属性。鼠标手杖的位置可以通过 Playground 获得。 pygame.mouse.get_pos
提供了很多虚拟属性,可以用来获取和设置矩形的位置和大小。
mouse_pos = pygame.mouse.get_pos()
self.rect.centery = mouse_pos[1]
如果想让拨片向鼠标方向缓慢移动,则需要计算拨片中心到鼠标的距离:
mouse_buttons = pygame.mouse.get_pressed()
if any(mouse_buttons)
mouse_x,mouse_y = pygame.mouse.get_pos()
dy = mouse_y - self.rect.centery
if dy < 0:
self.rect.y -= min(-dy,self.speed)
self.path = -1
elif dy > 0:
self.rect.y += min(dy,self.speed)
self.path = 1
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。