首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >精灵在碰撞,但球不会向相反的方向弹跳

精灵在碰撞,但球不会向相反的方向弹跳
EN

Stack Overflow用户
提问于 2014-11-11 00:04:47
回答 1查看 334关注 0票数 1

这是我的碰撞检测代码(必要时浏览一下):

代码语言:javascript
复制
if pygame.sprite.spritecollide(my_ball, ballGroup, False):
    Ball.speed[1] = -Ball.speed[1]
    print '1'
Ball.move()

if pygame.sprite.spritecollide(dad, ballGroup, False):
    Ball.speed[1] = -Ball.speed[1]
Ball.move()

这个程序告诉我两个精灵在碰撞(代码中的print '1'),所以这个代码中的球(称为Ball)应该在相反的方向从另一个精灵中“弹跳”。但它只是通过雪碧,而不是跳跃。为什么会发生这种情况?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-11 19:37:25

如果你运行脚本,所以图像只是水平移动,那么你的冰球没有垂直速度。这意味着这条线:

代码语言:javascript
复制
Ball.speed[1] = -Ball.speed[1]

什么都不做。

如果你把它改为

代码语言:javascript
复制
Ball.speed[0] = -Ball.speed[0]

那就应该逆转水平速度了。

另外,您的Ball.move()行将为每个循环运行两次.

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26855304

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档