Pygame - 检测组中的冲突时出错

时间:2017-03-26 16:13:19

标签: python pygame sprite collision

每次运行我的代码时,我都会遇到错误而无法解决原因。我也有一些脚本完成相同的工作,但有不同的精灵。 我正试图检测“门”之间的碰撞。和'球员'。 这是错误:

  

追踪(最近一次通话):     文件" C:\ Blood_Red \ Pokemon_Blood_Red.py",第225行,在       door_enter = pygame.sprite.spritecollide(door_group,player,False)     文件" C:\ Users \ Cameron \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ pygame \ sprite.py",第1524行,spritecollide       spritecollide = sprite.rect.colliderect   AttributeError:' Group'对象没有属性' rect'

这是我的代码:

    doCallRealMethod().when( spyExamineFilter ).add( any() ); // results in immediate call (i.e. at this line!) with null argument to add()
    when( spyExamineFilter.add( any())).thenCallRealMethod(); // results in mock "add" call when add() invoked
    when( spyExamineFilter.add( any( UniqueSequence.class ))).thenCallRealMethod(); // results in mock "add" call when add() invoked
    when( spyExamineFilter.add( notNull() )).thenCallRealMethod(); // results in mock "add" call when add() invoked

1 个答案:

答案 0 :(得分:4)

您在此行中以错误的顺序将参数传递给pygame.sprite.spritecollide

door_enter = pygame.sprite.spritecollide(door_group, player, False)

应该是:

door_enter = pygame.sprite.spritecollide(player, door_group, False)

第一个arg必须是pygame.sprite.Sprite,第二个arg是pygame.sprite.Group