我已經嘗試了用於循環使用的blit和借鑑的方法和使用不同的變量「PlayerSprite」和「Treegroup」我將如何爲多組精靈創建隨機位置?
for PlayerSprite in Treegroup:
surface.blit(PlayerSprite,(random.randrange(100,500),random.randrange(100,600)))
也試過
SPRITES=[]
for Sprites in range(10):
Sprites= PlayerSprite
SPRITES.append(Sprites)
我得到的是錯誤
screen=pygame.display.set_mode((640,480))
background1=pygame.image.load("C:\Pygame-Docs\examples\data\Random Map.bmp")
class Tree1(pygame.sprite.Sprite):
def __init__(self):
pygame.sprite.Sprite.__init__(self)
self.image=pygame.image.load('C:\Pygame-Docs\examples\data\Tree 1.bmp')
self.image=self.image.convert()
self.rect=self.image.get_rect()
self.rect.centerx=random.randrange(10,100)
self.rect.centery=random.randrange(10,100)
# Makes a group of trees
Howmanytrees=random.randrange(5,10)
Trees=[]
for tree in range(Howmanytrees):
trees=Tree1()
Trees.append(trees)
# Howmany groups
for Treegroup in range(10):
Treegroup=Trees
# Places groups
PlayerSprite=pygame.sprite.Group(Treegroup)
# keeps loop (game) going until canceled
keepgoing=True
while keepgoing:
for event in pygame.event.get():
if event.type==pygame.QUIT:
keepgoing=False
# actually draws screen
screen.blit(background1,(0,0))
PlayerSprite.draw(screen)
pygame.display.flip()
此代碼僅顯示5到10棵樹「Trees = []」 而沒有別的。我已經在這個問題上工作了一個多星期,閱讀了很多教程,看過很多網站,似乎沒有任何工作。我必須忽視或忽略一些事件。我認爲這很容易!
非常感謝!
對不起!我有一個'樹'的拼寫錯誤應該是'樹' – Todd 2011-03-05 00:37:38
樹是,列出這就是爲什麼我把它大寫;我會盡量讓自己的變量更加清晰,就像while循環一樣,我只是關閉窗口來停止。我知道Treegroup沒有做任何事情,我應該在發佈前刪除它;只是最後一分鐘的實驗。 – Todd 2011-03-05 00:52:45