天天看點

python小遊戲設計入門4-撿金币遊戲(中)

前言

本系列課程是針對無基礎的,争取用簡單明了的語言來講解,學習前需要具備基本的電腦操作能力,準備一個已安裝python環境的電腦。如果覺得好可以分享轉發,有問題的地方也歡迎指出,在此先行謝過。

使用sprite精靈類重構

這裡我們建立了玩家角色類Player和金币類Coin,類是程式設計中組織和管理代碼的一種方式,當代碼比較多的時候,使用這種方式是很有必要的。現在看上去代碼比較多,但是程式角色越來越多時,這個時候它的代碼增加卻不是很多的,因為這個類就像一個模闆一樣,你隻需要重複調用就可以了。

這裡還有一個遊戲中非常重要的概念,精靈類,這裡我們是繼承pygame.sprite.Sprite類,這樣就可以直接調用它的方法了。

python小遊戲設計入門4-撿金币遊戲(中)

精靈組是便于我們管理精靈的,等後面我們建立多個金币時你就會發現它的用處了。

碰撞檢測這裡用到的是pygame.sprite.collide_rect(player,gold)方法,它傳回的是一個布爾值 True 或者False,True表示已碰撞,False表示未碰撞。

python小遊戲設計入門4-撿金币遊戲(中)

完整代碼:

python小遊戲設計入門4-撿金币遊戲(中)
python小遊戲設計入門4-撿金币遊戲(中)

動态效果:

python小遊戲設計入門4-撿金币遊戲(中)

添加多個金币

添加多個金币,使用循環就可以快速實作了,又多添加了一個精靈組,檢測方法換成1對多的檢測模式了pygame.sprite.spritecollide(player, coin_sprites, True),變的更簡單了。

python小遊戲設計入門4-撿金币遊戲(中)
python小遊戲設計入門4-撿金币遊戲(中)
python小遊戲設計入門4-撿金币遊戲(中)

添加計分功能

設定一個分數變量score,添加一個字型檔案,在遊戲主循環中增加分數,然後建立文本内容,最後将内容繪制到螢幕左上角10,10位置。

python小遊戲設計入門4-撿金币遊戲(中)

(全文完)

歡迎轉載,轉載請注明出處!

歡迎關注公衆微信号:葉子陪你玩程式設計

分享自己的python學習之路

長按二維碼,

加關注!

葉子陪你玩