当我将动画帧添加到游戏中时,我绝对为每个字符制作了特定的文件夹和标题(例如,字符1总是在自己的文件夹中寻找其攻击框架(,我为它做了一个称为animation_dir的变量。但是,每当我尝试将其用于游戏中的资源文件中时,它都会不断报告错误:
attributeError:键入对象'字符'没有属性'animation_dir'。
我尝试添加一种称为charanimationdir = character.animation
的实例,但根本没有用。
资源文件:
ScrimitarAttackAnimation = Animation(Character.animation_dir + "SwordAttack", 4)
NevanStrumAnimation = Animation(Character.animation_dir + "Guitar Strum", 3)
ClawSlashAnimation = Animation(Character.animation_dir + "ClawSlash", 3)
字符类:
def __init__(self, nanimation_dir):
self.animation_dir = nanimation_dir
这样,我希望能够将当前的字符图形更改为上述动画图形。
如果您有班级
class Character:
def __init__(self, nanimation_dir):
self.animation_dir = nanimation_dir
然后,Character
类没有属性animation_dir
。
但是,如果您创建了类的对象,
mychar = Character("mydir")
然后对象mychar
具有属性mychar.animation_dir
对于有效访问Character.animation_dir
,您已经生成了类属性
class Character:
animation_dir = "mydir"
请参阅类对象