我正在做一个游戏,它会把角色(自己)向下移动。。我正在尝试用碰撞检测来解决一些问题。在下面的例子中,我的问题是第二行总是返回True。我在第二行中尝试的是说“如果角色与小部件发生碰撞,但是角色的y值小于它与小部件碰撞的高度的一半,那么向下移动角色
因为它总是返回True,所以我认为我的角色可以向下移动,而不考虑任何冲突和字符y值(它可以位于widgets中间部分的上方,我仍然可以向下移动)
我做错什么了
elif keycode[1] == 'down':
if any(self.collide_widget(i) and self.y < (i.y+(i.height/2)) for i in listofwidgets):
self.y -=6
self.source='characters/lilmoney/walkdown.zip'
elif (i.collide_point(self.x, self.top) for i in listofwidgets):
self.source='characters/lilmoney/lilmoneyfront.png'
在
elif
语句中缺少any
。所以,你只剩下一个发电机了,这总是正确的。所以,把这句话改成相关问题 更多 >
编程相关推荐