public static ISkyrimMod GetOrAddPatch(string EspName, bool forLVLI = false) { if (!(EspName.Contains(Patcher.PatcherSuffix) || EspName.Contains(Patcher.PatcherLLSuffix))) { var suffix = forLVLI ? Patcher.PatcherLLSuffix : Patcher.PatcherSuffix; EspName = EspName.Replace(".esp", "") + suffix; } ModKey modKey = ModKey.FromNameAndExtension(EspName); if (Patches.ContainsKey(modKey.FileName)) { return(Patches.GetValueOrDefault(modKey.FileName)); } ISkyrimMod patch = new SkyrimMod(modKey, SkyrimRelease.SkyrimSE); Patches.TryAdd(modKey.FileName, patch); Cache.Add(patch); //var x = ModListing<ISkyrimModGetter>.CreateEnabled(patch.ModKey); //State.LoadOrder.Add((IModListing<ISkyrimModGetter>)x, State.LoadOrder.Count - 2); return(patch); }