z347289581 发表于 2021-2-23 15:19:36

小伤口 发表于 2021-2-23 15:13
关于屏幕卡顿,之前有过但充会电就好了欸

我的是台式机{:10_285:}

小伤口 发表于 2021-2-23 15:21:06

z347289581 发表于 2021-2-23 15:19
我的是台式机

{:10_250:}啊这,不应该呀{:10_266:}

z347289581 发表于 2021-2-23 16:07:19

小伤口 发表于 2021-2-23 13:36
你试试把add_asteroid函数里的timer删掉把计时的写在外面,或许是函数多次传入了吗?

我 ...

能不能问一下你之前pygame的是怎么写的,为什么我i+=1 print出来一直是111111这样呢?

z347289581 发表于 2021-2-23 18:32:09

小伤口 发表于 2021-2-23 13:46
我以前也遇到过一种类似的,最后我干脆就不用定时器了
直接设置的一个i=0
多少秒自己手工测


谢谢homie,我debug出来了,原因应该是我一开始设置了一个计时器,中途设为0,最后通过条件激活,但是这样还是可能会激活两个相同事件的计时器,所以导致了混乱,我用pygame.time.set_timer(SHOWT, 4 * 1000,True),每次激活一次之后报废就可以了

还是要谢谢你给了我很多帮助~{:10_297:}

小伤口 发表于 2021-2-23 20:05:07

z347289581 发表于 2021-2-23 18:32
谢谢homie,我debug出来了,原因应该是我一开始设置了一个计时器,中途设为0,最后通过条件激活,但是这 ...

哪有{:10_250:}
这是你自己努力的结果
厉害~
我能白嫖一个最佳吗{:9_221:}

z347289581 发表于 2021-2-23 22:47:18

小伤口 发表于 2021-2-23 20:05
哪有
这是你自己努力的结果
厉害~


如你所愿

z347289581 发表于 2021-2-23 22:55:11

小伤口 发表于 2021-2-23 10:55
有可能你设置的不止一个timer他们撞上了?

对了,我还有个小问题,就是当飞机和陨石相撞,我想减去飞机的血量,这个要怎么写呀,我按鱼C他们的方法写结果spritecollide之后不断刷新数值,导致写程序的时候血量就一直减,有点不知道该怎么办了

小伤口 发表于 2021-2-24 09:36:49

本帖最后由 小伤口 于 2021-2-24 09:39 编辑

pygame.draw.line(screen,BLACK,(112,50),(455,50),30)
例如这是画的黑条
然后设置一个值暂且叫做red
red=0
血条就
pygame.draw.line(screen,BLACK,(112,50),(455-red,50),30)
在每次飞机碰撞时写一个red+=x x为减去的血量{:10_264:}
再判断一下
当112-red<=112时
red=0
页: 1 [2]
查看完整版本: pygame timer的问题