soft-summer-2021 / summer2021

程序设计实践 (2021夏季学期)
34 stars 6 forks source link

pygame精灵的update()函数如何修改所需参数个数? #48

Closed AboveParadise closed 3 years ago

AboveParadise commented 3 years ago

图片 图片 pedal_group是一个精灵组,其中精灵的update方法如图2所示,为什么图1调用精灵组update时我传入一个参数他会报错呢?

dyn1721 commented 3 years ago

发下文件吧 目前看着感觉没啥问题

AboveParadise commented 3 years ago

发下文件吧 目前看着感觉没啥问题

pedal_sprite.docx main.docx (好像发不了py文件emmm)

dyn1721 commented 3 years ago

是不是缺了个doodler_sprite 也发下?

dyn1721 commented 3 years ago

排查了下 你这个pedal_group不仅存着Regpedal精灵(就是你图二正确声明参数个数的类)而且还有MovingPedal可移动踏板精灵

问题就出现在这第二种 你的update声明还是def update(self):

所以当精灵组update时将你传入参数一个个给每个组内精灵并且调用他们的update方法时

第二种踏板就会多出一个参数报错

关于精灵组update机制 参考官方文档:

image

我试了下将MovingPedal多传一个参数后实测你的游戏就可以正常运行了

ps:游戏做的不错!看起来效果很好 继续加油