我正在为我的游戏制作关卡编辑器,并希望能够访问我的游戏中包含的所有类的列表。我的 Main 类中有一个静态函数:
public static function register(c:Class, category:String):void {
if (classRegister[category] == null) {
classRegister[category] = new Array();
}
classRegister[category].push(c);
}
然后,在我要注册的每个类中,我放置了一个静态初始化程序:
{
Main.register(prototype.constructor, "motion");
}
但是,静态初始化器仅在第一次使用该类时才被调用。有没有办法让一个类在游戏开始时强制自己被使用?我知道我可以在主文件中显式列出所有已注册的类,但这是次优的,因为每当添加需要注册的新类时都必须编辑主文件。
谢谢,
瓦尔加