当我在游戏中添加动画帧时,我决定为每个角色创建特定的文件夹和标题(例如,角色1总是在其自己的文件夹中查找其攻击帧),并为此创建了一个变量,称为animation_dir。但是,每当我尝试在游戏的资源文件中使用它时,它都会不断报告错误:
AttributeError:类型对象'Character'没有属性'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
有了这个,我希望能够在执行某些操作时将当前的角色图形更改为上面显示的动画图形。
答案 0 :(得分:0)
如果你上课
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"