pygame chank_sprites.draw(screen) ошибка

У меня есть данный код который выдает ошибку:

  File "C:\Users\ggh13\Desktop\diablo.py\levels_and_saves.py", line 89, in <module>
    main()
  File "C:\Users\ggh13\Desktop\diablo.py\levels_and_saves.py", line 83, in main
    chank_sprites.draw(screen)
  File "C:\python\lib\site-packages\pygame\sprite.py", line 546, in draw
    surface.blits((spr.image, spr.rect) for spr in sprites)
  File "C:\python\lib\site-packages\pygame\sprite.py", line 546, in <genexpr>
    surface.blits((spr.image, spr.rect) for spr in sprites)
AttributeError: 'Sprite' object has no attribute 'image'
import pygame
import os
import sys



map_image = []
chank_sprites = pygame.sprite.Group()

def load_image(name, colorkey=None):
    fullname = os.path.join('data', name)
    if not os.path.isfile(fullname):
        print(f"Файл с изображением '{fullname}' не найден")
        sys.exit()
    image = pygame.image.load(fullname)
    if colorkey is not None:
        image = image.convert()
        if colorkey == -1:
            colorkey = image.get_at((0, 0))
        image.set_colorkey(colorkey)
    else:
        image = image.convert_alpha()
    image1 = pygame.transform.scale(image, (50, 50))
    return image1

def generate_level(level):
    image =  0
    
    
    sprite = pygame.sprite.Sprite()
    name_ground = ["earth.png", "earth.png", "earth.png"]
    sprite.img_earth = load_image("earth.png")
    sprite.img_grass = load_image("earth.png")
    sprite.img_thi = load_image("earth.png")
    
    f = open(level, 'r')
    print("rggeg")
    map_lvl = []
    map_lvl2 = []
    for line in f:
        print(line)
        map_lvl2.append(line)
        map_lvl.append(line)
    print(map_lvl2)
    for i in range(0, len(map_lvl2) - 1):
        map_lvl2[i] = map_lvl2[i][0:-1]
    print(map_lvl2)
    
    for x in range(len(level)):
        for y in range(len(level[x])):
            if map_lvl2[x][y] == '.':
                sprite.image = load_image(name_ground[1])
                    
            elif map_lvl2[x][y] == '#':
               sprite.image = load_image(name_ground[2])
            elif map_lvl2[x][y] == '@':
                sprite.image = load_image(name_ground[3])
            sprite.rect = pygame.sprite.Sprite(chank_sprites)
            sprite.rect = sprite.image.get_rect()
            sprite.rect.x = x * 10
            sprite.rect.y = y * 10
            sprite.rect = pygame.transform.scale(sprite.image, (50, 50))
    

    


def main():
    pygame.init()
    screen = pygame.display.set_mode((500, 500))
    all_sprites = pygame.sprite.Group()
    pygame.mouse.set_visible(False)

    running = True
    start = True
    while running:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                running = False
            if start:
                generate_level("level1.txt")
        screen.fill((255, 255, 255))
        chank_sprites.draw(screen)
        pygame.display.flip()
    pygame.quit()
        
    
if __name__ == '__main__':
    main()

Кто-нибудь знает как решить данную проблему? Помогите пожалуйста


Ответы (0 шт):