gpt4 book ai didi

python - 障碍物不会继续生成。最初只产生一个然后循环被切断?

转载 作者:行者123 更新时间:2023-12-01 07:50:01 24 4
gpt4 key购买 nike

代码没有在我设置的计时器处生成对象。

pygame.time.set_timer(pygame.USEREVENT+2, random.randrange(10, 500))
obstacles = obstacles(1050,300,64,64)

while run:
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
if event.type == pygame.USEREVENT+2:
objects.append(obstacles)

for object1 in objects:
object1.x -= 1
if object1.x < -100:
objects.pop(objects.index(object1))

没有错误消息,但只出现一个障碍

最佳答案

您所做的就是一次又一次.append同一个对象。

objects.append(obstacles)

删除该行:

obstacles = obstacles(1050,300,64,64)

这不会达到您的预期。 obstacles 是一个类,但之后的 obstacles 是前一个类 obstacles 的对象。

当出现新的障碍物时,您必须.append一个新的obstacles对象:

if event.type == pygame.USEREVENT+2:
new_obstacle = obstacles(1050,300,64,64)
objects.append(new_obstacle )

请注意,在代码片段中,对象 (new_obstacle) 的名称与类 (obstacles) 的名称不同,并且每次都会构造一个新对象。

关于python - 障碍物不会继续生成。最初只产生一个然后循环被切断?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56284642/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com