public static void CloneInToNewWorld(MutatedWorldData worldData)
 {
     worldData.subworlds = SerializingCloner.Copy(subworlds);
     worldData.features  = SerializingCloner.Copy(featuresettings);
     worldData.biomes    = SerializingCloner.Copy(biomes);
     worldData.mobs      = SerializingCloner.Copy(mobs);
 }
 public static void Prefix(ProcGen.MutatedWorldData __instance)
 {
     foreach (var trait in worldtraitsaddtomap)
     {
         MethodInfo dynMethod = __instance.GetType().GetMethod("ApplyTrait", BindingFlags.NonPublic | BindingFlags.Instance);
         dynMethod.Invoke(__instance, new object[] { trait });
     }
 }
            public static void Prefix(ProcGen.MutatedWorldData __instance)
            {
                FieldInfo info  = typeof(SettingsCache).GetField("traits", BindingFlags.NonPublic | BindingFlags.Static);
                object    value = info.GetValue(null);
                Dictionary <string, WorldTrait> traits = (Dictionary <string, WorldTrait>)value;

                traits.Merge(worldtraitsaddtogame);
                info.SetValue(null, traits);
            }
 public static void Prefix(ProcGen.MutatedWorldData __instance)
 {
     worldtraitsinmap = __instance.traits.Cloneobj();
 }