python - 使用来自不同文件 pygame 的 Sprite 对象类

标签 python file class pygame

尝试将一个类从不同的 python 文件导入到主 python 文件中。我想将 Boss 的类导入到主游戏的 python 文件中。包含 boss 类的文件称为 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 bosscodefrom bosscode import boss 但似乎不起作用。我做错了什么?

最佳答案

所以事实证明我只是愚蠢,忘记为 Boss 类定义一个矩形。在我将 self.rect = self.image.get_rect() 添加到 boss 类中后,它运行得非常好。我什至不需要 bosscode.py 中的 from shmup import *

关于python - 使用来自不同文件 pygame 的 Sprite 对象类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61624809/

相关文章:

除非先设置为 null,否则 Javascript 私有(private)变量不起作用

python - 索引搜索 : trade accuracy for performance

perl - 我应该保持文件打开还是应该经常打开和关闭?

c# - 打开多个文件(OpenFileDialog,C#)

javascript - Mootools/Prime 中的类、选项

javascript - 如何在类构造函数中使用 join() 方法?

python - Twisted 和 p2p 应用程序

python - 将 KDE 添加到直方图

python - 按钮颜色在功能中不改变 (Python tkinter)

java - Applet 的 getCodeBase 返回 null