public ScriptFactory(GameLoader loader) { m_gameLoader = loader; // Use Reflection to create instances of all IScriptConstructors foreach (Type t in TextAdventures.Utility.Classes.GetImplementations(System.Reflection.Assembly.GetExecutingAssembly(), typeof(IScriptConstructor))) { AddConstructor((IScriptConstructor)Activator.CreateInstance(t)); } m_setConstructor = (SetScriptConstructor)InitScriptConstructor(new SetScriptConstructor()); m_procConstructor = (FunctionCallScriptConstructor)InitScriptConstructor(new FunctionCallScriptConstructor()); }