-2
您好,我尝试让玩家在玩家指向鼠标时跟随鼠标。为了这个工作,我需要玩家的位置。这是我到目前为止我收到一条错误信息,我不能写
pos = pygame.mouse.get_pos()
xplayer_pos= player.get_rect().centerx
yplayer_pos= player.get_rect().centery
angle = 360-math.atan2(pos[1]-xplayer_pos[1],pos[0]-yplayer_pos[0])*180/math.pi
rotimage = pygame.transform.rotate(player,angle)
rect = rotimage.get_rect(center=(xplayer_pos,yplayer_pos))
screen.blit(rotimage,rect)
screen.blit(rotimage,pos)
pygame.display.update()
,但我得到这个消息eror
angle = 360-math.atan2(pos[1]-xplayer_pos[1],pos[0]-yplayer_pos[0])*180/math.pi
TypeError: 'int' object has no attribute '__getitem__'
我不明白为什么我得到林书豪我不要使用类似“什么的GetItem此消息的原因”。谢谢你的时间。
有些东西不是它所期望的。我建议您将大表达式分解为尽可能最小的部分(将结果存储在临时变量中),并且定位问题的位置会更容易。 –
你有'xplayer_pos = player.get_rect()。centerx',因此xplayer_pos已经是一个单一的(int)值,而不是一个元组(posli)。同上yplayer_pos。 – Evert
'[]'这是代码中的__getitem__'。它会尝试在您指定的位置获取物品。 – ayhan