更新强制main场景启动功能
This commit is contained in:
parent
4e911ce005
commit
40f0e1e6d9
35
Assets/Scripts/Editor/FixedMainEditor.cs
Normal file
35
Assets/Scripts/Editor/FixedMainEditor.cs
Normal file
@ -0,0 +1,35 @@
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
|
||||
#if UNITY_EDITOR
|
||||
public class FixedMainEditor
|
||||
{
|
||||
private const string FixedMainKey = "IsFixedMain";
|
||||
public static bool isFixedMain
|
||||
{
|
||||
get
|
||||
{
|
||||
return PlayerPrefs.GetInt(FixedMainKey, 0) == 1;
|
||||
}
|
||||
set
|
||||
{
|
||||
PlayerPrefs.SetInt(FixedMainKey, value ? 1 : 0);
|
||||
PlayerPrefs.Save();
|
||||
}
|
||||
}
|
||||
|
||||
[MenuItem("Tools/强制Main场景启动 %#x", false, 10)]
|
||||
private static void ToggleOption()
|
||||
{
|
||||
isFixedMain = !isFixedMain;
|
||||
EditorUtility.DisplayDialog("Option Status", "Option is now " + (isFixedMain ? "enabled" : "disabled"), "OK");
|
||||
}
|
||||
|
||||
[MenuItem("Tools/强制Main场景启动 %#x", true, 10)]
|
||||
private static bool ValidateToggleOption()
|
||||
{
|
||||
Menu.SetChecked("Tools/强制Main场景启动", isFixedMain);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
11
Assets/Scripts/Editor/FixedMainEditor.cs.meta
Normal file
11
Assets/Scripts/Editor/FixedMainEditor.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0b0b3735d5f7030428778c408124d2f8
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -1,12 +1,13 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.SceneManagement;
|
||||
|
||||
#if UNITY_EDITOR
|
||||
public class OpeanCustomScene : MonoBehaviour
|
||||
{
|
||||
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)]
|
||||
private static void Initialize()
|
||||
{
|
||||
Debug.LogError(FixedMainEditor.isFixedMain);
|
||||
if (FixedMainEditor.isFixedMain)
|
||||
{
|
||||
Scene scene = SceneManager.GetActiveScene();
|
||||
if (!scene.name.Equals("Main"))
|
||||
@ -14,4 +15,6 @@ public class OpeanCustomScene : MonoBehaviour
|
||||
SceneManager.LoadScene("Main");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
Loading…
x
Reference in New Issue
Block a user