有一点点长,为什么星星显示不出来?
pygame吧
全部回复
仅看楼主
level 4
Heldnepos 楼主
很不好意思上来就求改Bug,直接跑起来已经没有任何报错了,但就是没有星星出现。
因为代码比较长,所以留下个下载链接:
https://share.weiyun.com/7a2643422ecaad733abbf35d9e62d4d8
对愿意提供帮助的吧友先提前说声谢谢 🙏
2018年03月12日 08点03分 1
level 9
我不是很 明白这是什么意思,我先把你要的东西发出来吧...
先说 stars 这个类:
1:Sprite 类不需要给他一个screen,因为Sprite类自带 draw和update方法,只要循环中 带有 pygame.display.update,程序自动会运行场景下所有sprite的 update 和draw方法,也不需要重写blit方法。
2:
(这是我改的),这两个方法因为引用了外部参数,所以不建议写到star这个类里面,建议写在外面,导入 screen 和 sprite 两个参数,来进行编写。
3:stars.add(star) 这个应该放在 构造方法里面,而不是放到循环里面
4:pygame.display.flip()应该换成pygame.display.update(),原因是你已经把Gruop绘图出来了,你还画什么呢?当然是要实时更新页面才对啊,你说是不是?
5:python要有个main方法...这个不多说明了[勉强]
我把代码发出来...中间那部分我看不明白- -我注销了,星星能显示...没啥问题
2018年03月12日 14点03分 2
level 9
哦,如果你是想生成多个Star()
那不应该是starts.add(star)
而是 starts.add(Star())
2018年03月12日 14点03分 3
level 9
我只能帮你到这了[呵呵]
2018年03月12日 14点03分 4
!!!!!!!!对哦,还能这么操作!!!!!!我还想着整齐地生成星星以后,再给每个星星加四个方向地随机位移值
2018年03月13日 03点03分
1