第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

有沒有更好的方法來為pygame中的場景創(chuàng)建實例對象?

有沒有更好的方法來為pygame中的場景創(chuàng)建實例對象?

紫衣仙女 2022-08-16 18:32:30
我希望在pygame中創(chuàng)建一個場景,但我似乎必須在每個子畫面和障礙物中單獨渲染,隨著場景變大,它變得有點......重復(fù)。    self.tree01 = Obstacles(config.tree01, 0, 10, self.player.group)    self.tree02 = Obstacles(config.tree01, 1, 10, self.player.group)    self.tree03 = Obstacles(config.tree01, 2, 10, self.player.group)    self.tree04 = Obstacles(config.tree01, 3, 10, self.player.group)    self.tree05 = Obstacles(config.tree01, 4, 10, self.player.group)    self.tree06 = Obstacles(config.tree01, 5, 10, self.player.group)    self.tree07 = Obstacles(config.tree01, 6, 10, self.player.group)    self.tree08 = Obstacles(config.tree01, 7, 10, self.player.group)    self.tree09 = Obstacles(config.tree01, 8, 10, self.player.group)    self.tree10 = Obstacles(config.tree01, 9, 10, self.player.group)    self.tree11 = Obstacles(config.tree01, 10, 10, self.player.group)    self.tree12 = Obstacles(config.tree01, 11, 10, self.player.group)    self.tree13 = Obstacles(config.tree01, 12, 10, self.player.group)    self.tree14 = Obstacles(config.tree01, 13, 10, self.player.group)    self.tree15 = Obstacles(config.tree01, 14, 10, self.player.group)    self.tree16 = Obstacles(config.tree01, 15, 10, self.player.group)    self.tree17 = Obstacles(config.tree01, 16, 10, self.player.group)這就是我當(dāng)前創(chuàng)建對象的方式,并且...這不可能是正確的。我的班級在這里。有沒有辦法以簡化的方式創(chuàng)建上述所有這些對象及其特定屬性?我曾想過在 for 循環(huán)中創(chuàng)建它們,但這并不能為它們提供單獨的屬性。class Obstacles(pygame.sprite.Sprite):    def __init__(self,image, x, y, player):        pygame.sprite.Sprite.__init__(self)        self.image = image        self.rect = self.image.get_rect()        self.player = player        self.rect.x = x * config.scale        self.rect.y = y * config.scale        self.check_collision = False        self.rect.topleft = self.rect.x, self.rect.y        self.groupObs = pygame.sprite.Group()        self.groupObs.add(self)        self.check_collide()    def draw(self, screen):        self.groupObs.draw(screen)        self.rect.topleft = self.rect.x, self.rect.y
查看完整描述

1 回答

?
炎炎設(shè)計

TA貢獻1808條經(jīng)驗 獲得超4個贊

您可以使用 a 或 a 來存儲您的屬性:list()dict()

self.trees = [Obstacles(config.tree01, x, 10, self.player.group) for x in range(16)]

然后,您只需按索引訪問它們:而不是self.trees[5]self.tree05

如果你不理解這個語法查找列表理解,它基本上是一個循環(huán),但更短。for


查看完整回答
反對 回復(fù) 2022-08-16
  • 1 回答
  • 0 關(guān)注
  • 72 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號