【发布时间】:2020-04-02 17:12:27
【问题描述】:
player_rect = Pfront_n.get_rect()
这里的“Pfront_n”是一个精灵,我正在为那个精灵获得一个矩形。这是在主循环之外。在主循环内时,print(player_rect) 显示当我的玩家移动时,矩形不会跟随。我的球员运动系统是基于速度的系统,如果这有什么不同的话。我怎样才能让 rect 留在播放器周围?
接下来,我还有一个类似的问题......
for layer in room2:
r_x = 0
for tile in layer:
if tile == '2':
bat_create()
if tile == '1':
screen.blit(grass, (r_x*40, r_y*40))
if tile != '0':
tile_rects.append(pygame.Rect)
r_x += 1
r_y += 1
在主循环之外,我为grass 创建了一个矩形,就像我为我的播放器创建的一样。我在上述代码中使用的方法有多个 grass 块出现在由数组预先确定的位置。如何获得每个 grass 块的矩形?
与上下文无关的旁注 - 最终目标是使用我的玩家 rect 和 grass rect,这样我的玩家在击中 grass 时就会停止。对这些问题中的任何一个问题的任何帮助都会很棒。谢谢!
【问题讨论】:
标签: python loops pygame sprite rect