我是pygame的新手,我想知道下面是否可能。假設我有2個Sprite組,稱爲Sprites和Sprites1,每個Sprite組都有一組不同的不重疊的精靈。是否有可能做Sprites.add(Sprites1)?可以在pygame中的精靈組包含除正常精靈以外的包含精靈的子組?
1
A
回答
0
檢查pygame的文檔 http://www.pygame.org/docs/ref/sprite.html#pygame.sprite.Group
pygame.sprite.Group.add(*sprite)
- 任意數量的精靈
希望這有助於:) 乾杯,亞歷克斯
0
亞歷克斯的答案是正確的,但它依靠2個你可能沒有意識到的微妙技巧,並且是值得的解釋:
雪碧羣體迭代:,如果你有一個名爲
enemies
組,您可以輕鬆地遍歷它包含的所有精靈:for enemy in enemies: enemy.health *= 2
漂亮方便吧?只是不要試圖使用切片和索引:一組是而不是的一個列表!爲此,使用group.sprites()
,其中返回的列表(但仍然是方法,因此是強制括號)。
Group.add()
的方法需要多個參數,每一個子畫面。所以,你可以在一個單一的add
添加多個精靈,如:world.add(boss, ninja, tree, player)
這很酷,但它變得更好:如果你有一個序列精靈或的(列表,元組等)生成精靈的迭代器/生成器,您可以使用*
語法將元素擴展爲多個參數。也很方便,不是嗎? :)
這兩個功能可以組合(它們被設計成),這會導致真棒語法亞歷克斯使用:
world.add(*enemies)
好運殺死他們所有:)
相關問題
- 1. PyGame組的精靈
- 2. 刪除精靈在Pygame的
- 3. pygame - 如何羣組精靈
- 4. 如何將精靈函數應用於精靈組中的所有精靈?
- 5. Pygame - 一組中的精靈數量
- 6. pygame中的Pixilating精靈
- 7. Pygame中的透明精靈
- 8. 當pygame中添加另一個精靈時,我的精靈正在被刪除
- 9. 在開羅精靈繪畫的精靈
- 10. 將一個精靈移動到pygame中的另一個精靈
- 11. 數組中的精靈
- 12. AS3:分組精靈
- 13. Unity2D組合精靈
- 14. 動畫pygame的精靈
- 15. pygame的:使用精靈
- 16. 如何訪問精靈數組中的單個精靈?
- 17. Python pygame - 刪除屏幕外精靈
- 18. 在一個精靈中組合兩個精靈(Libgdx)
- 19. 如何讓精靈從精靈表變成另一個精靈?
- 20. 精靈
- 21. RGB565的精靈?
- 22. 在精靈之外的定位點上旋轉cocos2d精靈
- 23. 包共享庫精靈
- 24. Pygame精靈 - 創建新精靈後不活動
- 25. pygame動畫精靈表
- 26. Pygame滯後,因爲精靈?
- 27. pygame創建多個精靈
- 28. Pygame精靈未繪製
- 29. PyGame得到精靈集團
- 30. 插入Pygame精靈轉換
沒有意思似乎無益,每當我看到一個問題開始時「是否有可能......?」我的答覆是「你試過了嗎?」。如果你已經嘗試過了,並且你得到一個錯誤,那麼這就產生了一個更具體的問題。就我個人而言,我認爲試驗,看看有什麼和不工作是學習新東西的好方法。祝好運並玩得開心點。 – elParaguayo
建議:避免將你的羣組命名爲「Sprites」或「Sprites1」。大寫的第一個字母應該保留給* class *名稱,而不是它們的*實例*。就像'敵人= pygame.sprites'一樣。Group()','boss = pygame.sprites.Sprite()','enemies.add(boss)' – MestreLion