【问题标题】:working sprite collision工作精灵碰撞
【发布时间】:2011-12-06 20:52:51
【问题描述】:

我的代码有两个问题:

  1. 我不知道如何让我的角色检查它是否与方块发生碰撞

  2. 我如何在她每次完成关卡时快速跳转到新屏幕?所以当角色到达楼梯时,应该会出现一个显示新关卡的新屏幕

这是我所有的代码:

http://pastebin.com/u/bluesplay106

我对 pygame 很陌生,所以我的风格可能不太好,而且我对这个游戏进行了硬编码。 如果你能告诉我如何解决我的问题,那就太好了!

【问题讨论】:

  • 如果您希望得到适用的答案,您的问题需要更加具体。

标签: sprite pygame collision


【解决方案1】:

对于碰撞检测,你需要将你的角色和你的方块变成精灵并以这种方式进行碰撞检测。

至于上楼梯时的新画面,可以这样写:

if heroSprite_x >= 200 and heroSprite_x <= 300:
    if heroSprite_y >= 300 and heroSprite_y <= 400:

        #go to new screen using either a new level from a list or a new class or whatever method you want.

你的问题有点含糊,但我希望这就是你要找的:)

我刚刚意识到我没有回答你的第一个问题,这是我的一个游戏中的一个 sn-p:

unit_enemy = pygame.sprite.groupcollide(unitgroup, enemygroup, True, pygame.sprite.collide_mask) 

for hit in unit_enemy:
    #do something

这会检查是否有敌人击中我的单位。所以在你的情况下,它就是你的英雄,而敌人就是方块。

这是关于碰撞检测的文档。

http://pygame.org/docs/ref/sprite.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    • 2017-09-14
    • 2019-11-05
    相关资源
    最近更新 更多