我在试着做砖块突破游戏。然而,我在画砖块时遇到了一个问题。实际上,我可以全部画出来,但我正在寻找一种专业的方法来做到这一点,以便使用更少的代码行。 这是我的一些代码,但没有用:
pygame.draw.rect(screen1, brick_colors[b], (x1, y1, 60, 12))
pygame.draw.rect(screen1, brick_colors[b], (x2, y1, 60, 12))
pygame.draw.rect(screen1, brick_colors[b], (x3, y1, 60, 12))
pygame.draw.rect(screen1, brick_colors[b], (x4, y1, 60, 12))
pygame.draw.rect(screen1, brick_colors[b], (x5, y1, 60, 12))
pygame.draw.rect(screen1, brick_colors[b], (x6, y1, 60, 12))
pygame.draw.rect(screen1, brick_colors[b], (x7, y1, 60, 12))
pygame.draw.rect(screen1, brick_colors[b], (x8, y1, 60, 12))
那么,有没有一种方法使用for循环来完成这项工作呢? 注:砖应为8行,每行8块
使用嵌套循环:
我建议列出块位置,并根据列表中的位置绘制块矩形。如果某个块被销毁,则只需从列表中删除该位置:
这可以通过使用^{} 对象进一步改进:
相关问题 更多 >
编程相关推荐