2024-09-30 06:19:32 发布
网友
我正在尝试制作一款类似于谷歌chrome的游戏,当我的a级计算机科学课程的网络瘫痪时。我遇到了一个关于碰撞检测的问题,非常感谢您的帮助
当我试图声明多个平台停止玩家移动(碰撞检测)时,所有平台都停止玩家移动。但当我只有一个平台阻止玩家移动时,它会起作用
我所有的代码都在这里:https://github.com/VincenzoLaRoche/ComputerScienceCourseWork
您的问题是,您正在处理完全独立的平台。因此,如果你站在其中一个上面,你不会碰到另一个,所以它会让你摔倒。要停止此操作,必须修改t1o播放器方法collision_detect和do,如下所示:
collision_detect
do
def collision_detect(self, platform): if self.x > platform.x and self.x < platform.x2: if self.y + 40 == platform.y: return True else: return False def do(self): self.keys() self.move() self.draw() c1 = self.collision_detect(platform(0, 500, 800, 10)) c2 = self.collision_detect(platform(0, 480, 400, 10)) if c1 or c2: self.yVel = 0 Constants.CANJUMP = True else: self.yVel = 5 Constants.CANJUMP = False
您的问题是,您正在处理完全独立的平台。因此,如果你站在其中一个上面,你不会碰到另一个,所以它会让你摔倒。要停止此操作,必须修改t1o播放器方法
collision_detect
和do
,如下所示:相关问题 更多 >
编程相关推荐