- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这些是我为我的游戏制作的积木。 Stack Overflow 不允许我放置所有积木,因此这些是其中的 1/3。总数为 60 个(3 行,每行 20 个)。
#Bricks
pygame.draw.rect(screen, (blue), (0,65,40,20), 0)
pygame.draw.rect(screen, (blue), (40,65,40,20), 0)
pygame.draw.rect(screen, (blue), (80,65,40,20), 0)
pygame.draw.rect(screen, (blue), (120,65,40,20), 0)
pygame.draw.rect(screen, (blue), (160,65,40,20), 0)
pygame.draw.rect(screen, (blue), (200,65,40,20), 0)
pygame.draw.rect(screen, (blue), (240,65,40,20), 0)
pygame.draw.rect(screen, (blue), (280,65,40,20), 0)
pygame.draw.rect(screen, (blue), (320,65,40,20), 0)
pygame.draw.rect(screen, (blue), (360,65,40,20), 0)
pygame.draw.rect(screen, (blue), (400,65,40,20), 0)
pygame.draw.rect(screen, (blue), (440,65,40,20), 0)
pygame.draw.rect(screen, (blue), (480,65,40,20), 0)
pygame.draw.rect(screen, (blue), (520,65,40,20), 0)
pygame.draw.rect(screen, (blue), (560,65,40,20), 0)
pygame.draw.rect(screen, (blue), (600,65,40,20), 0)
pygame.draw.rect(screen, (blue), (640,65,40,20), 0)
pygame.draw.rect(screen, (blue), (680,65,40,20), 0)
pygame.draw.rect(screen, (blue), (720,65,40,20), 0)
pygame.draw.rect(screen, (blue), (760,65,40,20), 0)
我是否可以将这些砖 block 放在一个变量下并缩短这段代码?非常感谢您的帮助。谢谢。
最佳答案
只需使用嵌套的for
循环即可创建包含所有砖 block 的列表。
我将使用pygame.Rect()保持位置和大小,因为我将用它来检查碰撞。
all_bricks = []
for y in range(65, 106, 20):
for x in range(0, 761, 40):
brick_rect = pygame.Rect(x, y, 40, 20)
all_bricks.append(brick_rect)
然后您可以使用一个 for
循环绘制它们
for brick_rect in all_bricks:
pygame.draw.rect(screen, blue, brick_rect, 0)
或检查碰撞
untouched_bricks = []
for brick_rect in all_bricks:
if not ball_rect.colliderect(brick_rect):
untouched_bricks.append(brick_rect)
#else:
# print("Brick touched")
# keep only untouched bricks
all_bricks = unbreaked_bricks
<小时/>
要分别保持每 block 砖的位置和不同颜色,您将需要更复杂的结构:
[blue, pygame.Rect(x, y, 40, 20), ...]
{"color": 蓝色, "rect": pygame.Rect(x, y, 40, 20), "other": ...}
) 关于python - 我正在制作一款打砖 block 游戏,想知道是否有一种方法可以将这些砖 block 放在一个变量下,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48244479/
有一堵大小为4xN的墙.我们有无数 block 大小为 4x1 的砖 block 和 1x4 .砖 block 在墙上的排列方式总共有多少种,每次都会产生新的排列方式? 对于 N = 1 , 砖可以铺
所以我的问题是球只是穿过砖 block ,什么也没有发生。我将把整个代码放在jsbin中,这里我只发布不起作用的部分。正如你所看到的,我有一个弹跳球、一个 Racket 、砖 block 和一个ani
是否有任何 jQuery 或其他插件可以让我像这样显示缩略图: http://hellocute.tumblr.com/archive 我知道,这个例子很酷 :)。无论如何,这是很酷的砖 block
我必须承认,JavaScript 有时会有奇怪的行为。 var Npc = function() { this.name='Hello world'; } Npc.attr='my new a
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 8 年前。 Improve this qu
在云中,我们有一组 glusterfs 节点(参与 gluster 卷)和客户端(挂载到 gluster 卷)。这些节点是使用 terraform hashicorp 工具创建的。 集群启动并运行后,
我目前正在用 JavaScript 语言编写一个 BrickBreaker 游戏。这是我使用该语言的第一个项目之一,我遇到了一些困难。这是我的代码:
我已经计算了索贝尔梯度的大小和方向。但我一直不知道如何进一步使用它来进行形状检测。 图像>灰度>索贝尔过滤>索贝尔梯度和方向计算>下一步? 使用的 Sobel 内核是: Kx = ([[1, 0, -
我在 Blocks(和 Theano)中设计了一个非常简单的循环神经网络。作为成本函数,我决定使用平方误差函数,其简单定义为 (y-y')^2。我想计算整个小批量的平均成本。 下面的代码是一个几乎可以
我一直在为 Uni(经典街机游戏 Breakout)开发 Java 项目,到目前为止已经成功创建了球棒和球对象,并且它们按预期工作。我想使用数组来实现砖墙,因为让每个砖 block 都有自己的对象会导
我是一名优秀的程序员,十分优秀!