Visitor Start Site no longer needs to be in build settings
This commit is contained in:
parent
3b2abc2dd9
commit
54c09cc9ab
@ -9,43 +9,45 @@ namespace Passer {
|
||||
public class SiteNavigator_Editor : Editor {
|
||||
protected SiteNavigator siteNavigator;
|
||||
|
||||
protected string[] siteNames;
|
||||
//protected string[] siteNames;
|
||||
|
||||
#region Enable
|
||||
|
||||
protected virtual void OnEnable() {
|
||||
siteNavigator = (SiteNavigator)target;
|
||||
|
||||
InitializeSiteNames();
|
||||
//InitializeSiteNames();
|
||||
}
|
||||
|
||||
protected virtual void InitializeSiteNames() {
|
||||
//HumanoidVisitors.CheckScenes();
|
||||
//List<string> humanoidVisitors = HumanoidVisitors.visitors;
|
||||
//protected virtual void InitializeSiteNames() {
|
||||
// //HumanoidVisitors.CheckScenes();
|
||||
// //List<string> humanoidVisitors = HumanoidVisitors.visitors;
|
||||
|
||||
EditorBuildSettingsScene[] editorBuildSettingsScenes = EditorBuildSettings.scenes;
|
||||
int siteCount = editorBuildSettingsScenes.Length; // - HumanoidVisitors.visitors.Count;
|
||||
// EditorBuildSettingsScene[] editorBuildSettingsScenes = EditorBuildSettings.scenes;
|
||||
// int siteCount = editorBuildSettingsScenes.Length; // - HumanoidVisitors.visitors.Count;
|
||||
|
||||
List<string> siteList = new List<string>();
|
||||
siteList.Add("-none-");
|
||||
for (int i = 0; i < siteCount; i++) {
|
||||
if (!editorBuildSettingsScenes[i].enabled) {
|
||||
continue;
|
||||
}
|
||||
// List<string> siteList = new List<string>();
|
||||
// siteList.Add("-none-");
|
||||
// for (int i = 0; i < siteCount; i++) {
|
||||
// if (!editorBuildSettingsScenes[i].enabled) {
|
||||
// continue;
|
||||
// }
|
||||
|
||||
string sceneName = editorBuildSettingsScenes[i].path;
|
||||
int lastSlash = sceneName.LastIndexOf('/');
|
||||
sceneName = sceneName.Substring(lastSlash + 1);
|
||||
sceneName = sceneName.Substring(0, sceneName.Length - 6); // remove .unity
|
||||
// string sceneName = editorBuildSettingsScenes[i].path;
|
||||
// if (sceneName.Length > 6) {
|
||||
// int lastSlash = sceneName.LastIndexOf('/');
|
||||
// sceneName = sceneName.Substring(lastSlash + 1);
|
||||
// sceneName = sceneName.Substring(0, sceneName.Length - 6); // remove .unity
|
||||
|
||||
// Does not work at the moment the visitors are all scenes
|
||||
//bool isVisitor = IsHumanoidVisitor(sceneName, humanoidVisitors);
|
||||
//if (!isVisitor) {
|
||||
siteList.Add(sceneName);
|
||||
//}
|
||||
}
|
||||
siteNames = siteList.ToArray();//new string[siteCount];
|
||||
}
|
||||
// // Does not work at the moment the visitors are all scenes
|
||||
// //bool isVisitor = IsHumanoidVisitor(sceneName, humanoidVisitors);
|
||||
// //if (!isVisitor) {
|
||||
// siteList.Add(sceneName);
|
||||
// //}
|
||||
// }
|
||||
// }
|
||||
// siteNames = siteList.ToArray();//new string[siteCount];
|
||||
//}
|
||||
|
||||
private bool IsHumanoidVisitor(string sceneName, List<string> humanoidVisitors) {
|
||||
foreach(string visitor in humanoidVisitors) {
|
||||
@ -92,34 +94,17 @@ namespace Passer {
|
||||
}
|
||||
|
||||
protected void StartSceneInspector() {
|
||||
SerializedProperty startSceneProp = serializedObject.FindProperty(nameof(siteNavigator.startScene));
|
||||
SceneAsset sceneAsset = AssetDatabase.LoadAssetAtPath<SceneAsset>(startSceneProp.stringValue);
|
||||
|
||||
GUIContent text = new GUIContent(
|
||||
"Start Scene",
|
||||
""
|
||||
);
|
||||
sceneAsset = (SceneAsset)EditorGUILayout.ObjectField(text, sceneAsset, typeof(SceneAsset), false);
|
||||
|
||||
SerializedProperty startSceneProp = serializedObject.FindProperty(nameof(siteNavigator.startScene));
|
||||
startSceneProp.stringValue = AssetDatabase.GetAssetPath(sceneAsset);
|
||||
|
||||
if (siteNames == null || siteNames.Length == 0) {
|
||||
startSceneProp.stringValue = "";
|
||||
return;
|
||||
}
|
||||
|
||||
int ix = 0;
|
||||
for (; ix < siteNames.Length; ix++) {
|
||||
if (siteNames[ix] == startSceneProp.stringValue)
|
||||
break;
|
||||
}
|
||||
if (ix == siteNames.Length) ix = 0;
|
||||
if (Application.isPlaying) {
|
||||
using (new EditorGUI.DisabledScope(true)) {
|
||||
EditorGUILayout.Popup(text, ix, siteNames);
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
||||
ix = EditorGUILayout.Popup(text, ix, siteNames);
|
||||
startSceneProp.stringValue = siteNames[ix];
|
||||
}
|
||||
}
|
||||
|
||||
#endregion Inspector
|
||||
|
@ -3,6 +3,7 @@ using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Networking;
|
||||
using UnityEngine.SceneManagement;
|
||||
|
||||
namespace Passer {
|
||||
|
||||
@ -65,7 +66,8 @@ namespace Passer {
|
||||
#if UNITY_EDITOR
|
||||
if (startScene != null && startScene != "" && startScene != "-none-") {
|
||||
Debug.Log("Load scene " + startScene);
|
||||
UnityEngine.SceneManagement.SceneManager.LoadScene(startScene);
|
||||
UnityEditor.SceneManagement.EditorSceneManager.LoadSceneInPlayMode(startScene, new LoadSceneParameters(LoadSceneMode.Additive));
|
||||
//UnityEngine.SceneManagement.SceneManager.LoadScene(startScene);
|
||||
currentSite = new HistoryEntry() {
|
||||
siteName = "directload",
|
||||
siteLocation = "passervr.com/sites/start",
|
||||
|
Loading…
x
Reference in New Issue
Block a user