Beispiel #1
0
            /// <summary>
            /// Applied after the constructor runs.
            /// </summary>
            internal static void Postfix(MutatedWorldData __instance)
            {
                var world     = __instance.world;
                var subworlds = __instance.subworlds;

                if (world.name == WORLD_NAME)
                {
                    var options = POptions.ReadSettings <Challenge100KOptions>();
                    if (options != null && options.RemoveGeysers)
                    {
#if DEBUG
                        PUtil.LogDebug("Hard mode: removing geysers");
#endif
                        world.worldTemplateRules?.Clear();
                        // Remove the POI geysers too
                        if (subworlds != null)
                        {
                            foreach (var subworld in subworlds)
                            {
                                subworld.Value.subworldTemplateRules?.Clear();
                            }
                        }
                    }
                }
            }
 public static void Prefix(ref MutatedWorldData worldData)
 {
     mworldData = worldData;
     ScriptingCore.OnEvent("worlddata");
     if (modifiedworldData != null)
     {
         worldData = modifiedworldData;
     }
 }
 public static bool SetWorldData(MutatedWorldData worldData)
 {
     modifiedworldData = worldData; return(true);
 }