использование классов объектов спрайтов из разных файлов pygame - PullRequest
2 голосов
/ 06 мая 2020

Попытка импортировать класс из другого python файла в основной python файл. Я хочу импортировать класс для босса в файл python с основной игрой. Файл, содержащий класс босса, называется bosscode.py, а основная игра - shmup.py.

Прямо сейчас bosscode.py выглядит так

import pygame
from shmup import *

class Boss(pygame.sprite.Sprite):  #creates the boss class as a sprite object
    def __init__(self):
        pygame.sprite.Sprite.__init__(self)
        self.image = pygame.Surface((100, 70))
        self.image.fill(white)
        self.rect.y = WIDTH / 2  
        self.rect.y = 80    

Я попытался импортировать это файл в основной файл, сказав

from bosscode import *

boss = Boss()

, но выдает ошибку:

NameError: name 'Boss' is not defined

Не уверен, что с этим делать. Я пробовал произносить import bosscode и from bosscode import boss, но, похоже, это не работает. Что я делаю не так?

1 Ответ

2 голосов
/ 06 мая 2020

так что, оказывается, я был просто глуп и забыл определить прямоугольник для класса Boss. После того, как я добавил self.rect = self.image.get_rect() в класс босса, он работал отлично. Мне даже не нужна была строка from shmup import * в bosscode.py

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...