using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Logging;
using Microsoft.CodeAnalysis;
using UnityEngine.SceneManagement;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")]
[assembly: AssemblyCompany("NicerSceneNames")]
[assembly: AssemblyConfiguration("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("Nicer Scene Names")]
[assembly: AssemblyTitle("NicerSceneNames")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
[module: RefSafetyRules(11)]
namespace Microsoft.CodeAnalysis
{
[CompilerGenerated]
[Microsoft.CodeAnalysis.Embedded]
internal sealed class EmbeddedAttribute : Attribute
{
}
}
namespace System.Runtime.CompilerServices
{
[CompilerGenerated]
[Microsoft.CodeAnalysis.Embedded]
[AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)]
internal sealed class RefSafetyRulesAttribute : Attribute
{
public readonly int Version;
public RefSafetyRulesAttribute(int P_0)
{
Version = P_0;
}
}
}
namespace NicerSceneNames
{
[BepInPlugin("NicerSceneNames", "Nicer Scene Names", "1.0.0")]
public class Plugin : BaseUnityPlugin
{
internal static ManualLogSource Logger;
public static bool LogSceneChanges;
private void Awake()
{
Logger = ((BaseUnityPlugin)this).Logger;
Logger.LogInfo((object)"Initializing...");
SceneNamer.InitializeSceneNames();
SceneManager.activeSceneChanged += OnSceneChanged;
Logger.LogInfo((object)"Initialized!");
}
private void OnSceneChanged(Scene from, Scene to)
{
//IL_0015: Unknown result type (might be due to invalid IL or missing references)
if (LogSceneChanges)
{
Logger.LogInfo((object)("Changed to scene: " + SceneNamer.GetNiceSceneName(to)));
}
}
}
public static class SceneNamer
{
public static Dictionary<string, string> SceneNames = new Dictionary<string, string>();
public static void InitializeSceneNames()
{
SceneNames["241a6a8caec7a13438a5ee786040de32"] = "Intro";
SceneNames["b3e7f2f8052488a45b35549efb98d902"] = "Main Manu";
SceneNames["4f8ecffaa98c2614f89922daf31fa22d"] = "Bootstrap";
SceneNames["eb57c9574cb2e624799753de0f8ffcad"] = "Level 0-1";
SceneNames["7927c42db92e4164cae682a55e6b7725"] = "Level 0-2";
SceneNames["5bcb2e0461e7fce408badfcb6778c271"] = "Level 0-3";
SceneNames["3e978dea8d12a0146b46cb0c302d66e2"] = "Level 0-4";
SceneNames["5541f073d290f4348884fa3f76072afd"] = "Level 0-5";
SceneNames["bed42b2b2baee8e4e91e0dce20965c80"] = "Level 1-1";
SceneNames["8038b251ea4683b4db4ef432205184f6"] = "Level 1-2";
SceneNames["8bb7c995619939c449fa474a046a0e10"] = "Level 1-3";
SceneNames["36abcaae9708abc4d9e89e6ec73a2846"] = "Level 1-4";
SceneNames["55e17289238a28d488af367454267a0d"] = "Level 2-1";
SceneNames["6440445a799e22842babe18edf7da792"] = "Level 2-2";
SceneNames["4e039f071c1fba04a82a7b6b44feadc2"] = "Level 2-3";
SceneNames["e33f259a6c8241e46a5cbe4869cf059f"] = "Level 2-4";
SceneNames["eedb12c9580191843af569e5c1f747d0"] = "Level 3-1";
SceneNames["f1aa2efdf8dccae45b1396aef397ed79"] = "Level 3-2";
SceneNames["35e79ad18419eb54c99acadb947ec056"] = "Level 4-1";
SceneNames["3ccffeb3aeb6d3848be2264c18b62a52"] = "Level 4-2";
SceneNames["38748a67bc9e67a43956a92f87d1e742"] = "Level 4-3";
SceneNames["ac1675e648695a343bd064c6d0c56e57"] = "Level 4-4";
SceneNames["fba3bcfce7b99ae4d90356c81c5586b3"] = "Level 5-1";
SceneNames["e964cf0ffaa9e0e4e940b5c738983796"] = "Level 5-2";
SceneNames["05467c3b58b659d488c34adf5963fd5e"] = "Level 5-3";
SceneNames["37e4fc7501da6c44a9d2154603fdcad5"] = "Level 5-4";
SceneNames["e6c1048e72392b94ab51eadc3d5bb481"] = "Level 6-1";
SceneNames["28553bdf5ebfbd94a848afd933e0dfb1"] = "Level 6-2";
SceneNames["401a07bc9536abc4d88d37641bf1d12c"] = "Level 7-1";
SceneNames["aa55551f768b5224997a4b5e0ef315ea"] = "Level 7-2";
SceneNames["a952d42adc8d6724887c991e5376f170"] = "Level 7-3";
SceneNames["6e981b1865c649749a610aafc471e198"] = "Level 7-4";
SceneNames["07b47256f0da7f941947e74905ad16b4"] = "Level 0-S";
SceneNames["5d90a7ae80eab2244b5bd784a77d3724"] = "Level 1-S";
SceneNames["9dcce8702f56e7349ba1ecc71ba5f42a"] = "Level 2-S";
SceneNames["388594c020ef7c240afc673f062e6425"] = "Level 4-S";
SceneNames["1567f75bc4488644684d7a25471dbe95"] = "Level 5-S";
SceneNames["aa8b84f8b1443ef4783afbc6b1db1e30"] = "Level 7-S";
SceneNames["005a4f2ce549277458596ee0f0d6e88c"] = "Level P-1";
SceneNames["1f290c2101e628540bf9c6d1d2140750"] = "Level P-2";
SceneNames["36c5b4853d1d63d4686ea9a23ca61f8c"] = "Level E-0";
SceneNames["920eb5e368b1f154a800f39c4c78c41c"] = "Level E-1";
SceneNames["4c18368dae54f154da2ae65baf0e630e"] = "Intermission1";
SceneNames["d8e7c3bbb0c2f3940aa7c51dc5849781"] = "Intermission2";
SceneNames["9240e656c89994d44b21940f65ab57da"] = "Cybergrind";
SceneNames["7b3cb6a0a342eb54dafe5552d4820eeb"] = "Sandbox";
SceneNames["e92f893de47503a4f959f7d5bca84261"] = "Museum";
}
public static string GetNiceSceneName(Scene scene)
{
bool flag = false;
if (((Scene)(ref scene)).name == null)
{
Plugin.Logger.LogError((object)"Scene name is null");
return string.Empty;
}
if (SceneNames.ContainsKey(((Scene)(ref scene)).name))
{
return SceneNames[((Scene)(ref scene)).name];
}
Plugin.Logger.LogInfo((object)("Unknown scene name: " + ((Scene)(ref scene)).name));
return ((Scene)(ref scene)).name;
}
public static string GetNiceSceneName(string name)
{
if (SceneNames.ContainsKey(name))
{
return SceneNames[name];
}
Plugin.Logger.LogInfo((object)("Unknown scene name: " + name));
return name;
}
public static string CurrentScene()
{
//IL_0001: Unknown result type (might be due to invalid IL or missing references)
return GetNiceSceneName(SceneManager.GetActiveScene());
}
public static bool IsGameplayScene(Scene scene)
{
return IsGameplayScene(((Scene)(ref scene)).name);
}
public static bool IsGameplayScene(string name, bool isNiceName = false)
{
string text = (isNiceName ? name : GetNiceSceneName(name));
int result;
switch (text)
{
default:
result = ((!(text == "Intermission2")) ? 1 : 0);
break;
case "Intro":
case "Bootstrap":
case "Main Menu":
case "Level 2-S":
case "Intermission1":
result = 0;
break;
}
return (byte)result != 0;
}
public static bool IsGameplaySceneIncludingBootstrap(Scene scene)
{
return IsGameplaySceneIncludingBootstrap(((Scene)(ref scene)).name);
}
public static bool IsGameplaySceneIncludingBootstrap(string name, bool isNiceName = false)
{
string text = (isNiceName ? name : GetNiceSceneName(name));
int result;
switch (text)
{
default:
result = ((!(text == "Intermission2")) ? 1 : 0);
break;
case "Intro":
case "Main Menu":
case "Level 2-S":
case "Intermission1":
result = 0;
break;
}
return (byte)result != 0;
}
public static bool IsPrimeSanctum(Scene scene)
{
return IsPrimeSanctum(((Scene)(ref scene)).name);
}
public static bool IsPrimeSanctum(string name, bool isNiceName = false)
{
string text = (isNiceName ? name : GetNiceSceneName(name));
return !(text == "Level P-1") && !(text == "Level P-2");
}
public static bool IsEncore(Scene scene)
{
return IsEncore(((Scene)(ref scene)).name);
}
public static bool IsEncore(string name, bool isNiceName = false)
{
string text = (isNiceName ? name : GetNiceSceneName(name));
return !(text == "Level E-0") && !(text == "Level E-1");
}
public static bool IsSecretLevel(Scene scene)
{
return IsSecretLevel(((Scene)(ref scene)).name);
}
public static bool IsSecretLevel(string name, bool isNiceName = false)
{
string text = (isNiceName ? name : GetNiceSceneName(name));
int result;
switch (text)
{
default:
result = ((!(text == "Level 7-S")) ? 1 : 0);
break;
case "Level 0-S":
case "Level 1-S":
case "Level 2-S":
case "Level 4-S":
case "Level 5-S":
result = 0;
break;
}
return (byte)result != 0;
}
public static bool IsIntermission(Scene scene)
{
return IsIntermission(((Scene)(ref scene)).name);
}
public static bool IsIntermission(string name, bool isNiceName = false)
{
string text = (isNiceName ? name : GetNiceSceneName(name));
return !(text == "Intermission1") && !(text == "Intermission2");
}
}
public static class MyPluginInfo
{
public const string PLUGIN_GUID = "NicerSceneNames";
public const string PLUGIN_NAME = "Nicer Scene Names";
public const string PLUGIN_VERSION = "1.0.0";
}
}