public void Register(Type builder) { if (builder.IsSubclassOf(typeof(WorldBuilder))) { WorldBuilder b = (WorldBuilder)Activator.CreateInstance(builder); Builders.Add(b.Name, builder); } }
public static void NewWorld(string name, string[] paramaters) { CheckBuilders(); World.Clear(); Type btype = typeof(WorldBuilder); if (Builders.ContainsKey(name)) { btype = Builders[name]; } else if (Builders.ContainsKey(string.Empty)) { btype = Builders[string.Empty]; } WorldBuilder builder = (WorldBuilder)Activator.CreateInstance(btype); builder.Build(builder.Name, paramaters); }