天天看點

pygame飛機大戰用精靈組(sprite)的層(layer)編寫(十二)BOSS的子彈是能打中了,可為什麼看不到效果呢?

BOSS打子彈,飛彈,跟蹤彈全套技能都用上,忙活了半天,英雄好像毫發無損,啧啧啧,太氣人了。

好吧,該來碰撞檢查了

碰撞檢查,一如既往的簡單,三行代碼而已。

在main.py,也可以在 boss.py裡,為了對得起 main的架構,還是在main.py裡吧。

def collideEvent(self):
        boss_bullet_hero = pygame.sprite.groupcollide(
            herogroup, bossbulletgroup, False, True,
            pygame.sprite.collide_mask)
        boss_missle_hero = pygame.sprite.groupcollide(
            herogroup, bossmisslegroup, False, True,
            pygame.sprite.collide_mask)
        boss_gmissle_hero = pygame.sprite.groupcollide(
            herogroup, bossGMgroup, False, True,
            pygame.sprite.collide_mask)
           

用了sprite.collide_mask來檢查,讓英雄的受傷率低一些。

寫了有點時間了,重新上傳了源代碼和資源。大家有興趣可以下載下傳來看。

修改了一些代碼,讓程式流暢點。修改了一些bug

背景圖還是用回了原來的方式,簡單,多樣。

https://gitee.com/hailler/boss/tree/master

繼續閱讀