using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using AlwaysWeather.Patches;
using BepInEx;
using BepInEx.Logging;
using HarmonyLib;
using UnityEngine;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyTitle("AlwaysWeather")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("AlwaysWeather")]
[assembly: AssemblyCopyright("Copyright © 2024")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("198bdf51-b6b5-4c44-965e-93531ab1c1e9")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: TargetFramework(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")]
[assembly: AssemblyVersion("1.0.0.0")]
namespace AlwaysWeather
{
[BepInPlugin("fr3d.AlwaysWeather", "AlwaysWeather", "1.0.0")]
public class ModBase : BaseUnityPlugin
{
public const string ModGUID = "fr3d.AlwaysWeather";
public const string ModName = "AlwaysWeather";
public const string ModVersion = "1.0.0";
public static ManualLogSource Log = Logger.CreateLogSource("fr3d.AlwaysWeather");
public static ModBase Instance;
private readonly Harmony harmony = new Harmony("fr3d.AlwaysWeather");
private void Awake()
{
if ((Object)(object)Instance == (Object)null)
{
Instance = this;
}
Log.LogInfo((object)"Always Weather has awoken!");
harmony.PatchAll(typeof(AlwaysWeatherPatch));
harmony.PatchAll(typeof(ModBase));
}
}
}
namespace AlwaysWeather.Patches
{
[HarmonyPatch(typeof(StartOfRound))]
internal class AlwaysWeatherPatch
{
[HarmonyPrefix]
[HarmonyPatch("SetPlanetsWeather")]
private static bool MakePlanetsWeather(SelectableLevel[] ___levels)
{
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
foreach (SelectableLevel val in ___levels)
{
val.currentWeather = (LevelWeatherType)Random.Range(1, 6);
}
return false;
}
}
}