static public void ViewScene(DialogPartData data) { // TODO... #if false ViNoSceneManager sm = GameObject.FindObjectOfType(typeof(ViNoSceneManager)) as ViNoSceneManager; if (sm != null) { GameObject advSceneRoot = sm.theSavedPanel; if (data.isClearScene) { bool destroyImmediate = true; ClearSceneNode.Do(advSceneRoot, destroyImmediate); } // if( data.isLoadScene && data.Scene != null ){ if (!string.IsNullOrEmpty(data.sceneFilePath) && sm != null) { bool TODO1 = false; bool TODO2 = false; Scene scene = Resources.Load(data.sceneFilePath, typeof(Scene)) as Scene; // LoadSceneNode.Do( advSceneRoot , data.Scene , TODO1 , TODO2 , true ); LoadSceneNode.Do(advSceneRoot, scene, TODO1, TODO2, true); } } // No need to warning , if user do not need Scene Save and Load function. // else{ // Debug.LogWarning( "There is no ViNoSceneManager object. Scene Save and Load will not work..." ); // } #endif }
void Update() { if (!Application.isPlaying) { if (_Preview) { _Preview = false; // Object data = Resources.Load( anyResourcePath ); ViNoSceneManager sm = GameObject.FindObjectOfType(typeof(ViNoSceneManager)) as ViNoSceneManager; bool destroy = (method == Methods.DESTROY_AND_LOAD) ? true : false; ViNoToolkit.SceneEvent sceneEvent = GameObject.FindObjectOfType(typeof(ViNoToolkit.SceneEvent)) as ViNoToolkit.SceneEvent; if (sceneEvent.sceneLib != null) { for (int i = 0; i < sceneEvent.sceneLib.sceneEntries.Length; i++) { Scene scene = sceneEvent.sceneLib.sceneEntries[i]; if (scene.name == sceneName) { Do(sm.theSavedPanel, scene, destroy, true, withFadeIn); } } } else { Debug.LogWarning("SceneLibrary not attached to SceneEvent."); } } } }
static public GameObject Create(SceneData.SceneNodeData data) { ViNoSceneManager sm = GameObject.FindObjectOfType(typeof(ViNoSceneManager)) as ViNoSceneManager; GameObject go = sm.CreateSceneNode(ref data); return(go); }
public static void FindInstance() { if( instance == null ){ instance = GameObject.FindObjectOfType( typeof( ViNoSceneManager ) ) as ViNoSceneManager; instance.m_NodeDataList = new List<SceneData.SceneNodeData>(); } }
IEnumerator FadeoutAndDestroy(GameObject destroyRoot) { m_DestroyRequested = true; VM vm = VM.Instance; /* if( vm != null && Application.isPlaying ){ * vm.EnableUpdate( false ); * } * //*/ // SystemUtility.ShowSystemUI( false ); ViNoSceneManager sm = ViNoSceneManager.Instance; sm.PreFadeoutAndDestroy(destroyRoot); //sm.theSavedPanel ); yield return(new WaitForSeconds(fadeoutAndDestroyWaitTime)); sm.OnFadeoutAndDestroy(destroyRoot); //sm.theSavedPanel ); // Debug.Log("Now , Destroy Scene"); // Destroy Under ME. ViNoGOExtensions.DestroyChildren(destroyRoot); //Instance.name ); if (vm != null && Application.isPlaying) { vm.EnableUpdate(true); } // SystemUtility.ShowSystemUI( true ); m_DestroyRequested = false; }
static public void FindInstance() { if (instance == null) { instance = GameObject.FindObjectOfType(typeof(ViNoSceneManager)) as ViNoSceneManager; instance.m_NodeDataList = new List <SceneData.SceneNodeData>(); } }
static public void Create(Scene sceneData) { // Debug.Log( "CreateScene"); ViNoSceneManager sm = GameObject.FindObjectOfType(typeof(ViNoSceneManager)) as ViNoSceneManager; for (int i = 0; i < sceneData.sceneNodesData.Length; i++) { sm.CreateSceneNode(ref sceneData.sceneNodesData[i]); } }
static public void DestroySceneImmediate(GameObject advSceneRoot) { // Destroy Created Materials to avoid Leaking . // Debug.Log( "Destroy Root:" + advSceneRoot.name ); ViNoSceneManager sm = GameObject.FindObjectOfType(typeof(ViNoSceneManager)) as ViNoSceneManager; sm.OnFadeoutAndDestroy(advSceneRoot); // Destroy Under ME. ViNoGOExtensions.DestroyImmediateChildren(advSceneRoot.name); }
// Wrapper of exitactor. void exitscene(Hashtable param) { bool fadein = false; if (param.ContainsKey("fade")) { string fade = param["fade"] as string; fadein = (fade == "true") ? true : false; } ViNoSceneManager sm = ViNoSceneManager.Instance; SceneCreator.DestroyScene(sm.theSavedPanel, !fadein); // Fade and Destroy Actor. }
void Awake() { if (instance == null) { instance = this; m_SceneData = new SceneData(); hideFlags = 0; } else { if (Application.isPlaying) { Destroy(gameObject); } } }
static public void LoadSceneFromXmlString(string xmlStr) { ViNoSceneManager sm = ViNoSceneManager.Instance; if (sm == null) { ViNoDebugger.LogError("SceneManager Instance NOT FOUND. Can't Loaded."); return; } sm.SetSceneData((SceneData)DeserializeObject <SceneData>(xmlStr)); SceneData sceneData = sm.GetSceneData(); sm.SetNodeData(sceneData.m_DataArray); sm.CreateSceneNodes(); ViNoDebugger.Log("SaveInfo", "Loaded Scene from XmlString."); }
void trans(Hashtable param) { string method = "crossfade"; if (param.ContainsKey("method")) { method = param["method"] as string; } string resourcePath = ""; switch (method) { case "crossfade": //TODO ! // resource = ""; break; case "blind": resourcePath = "Effects/Blind"; break; case "tile": resourcePath = "Effects/TileFade"; break; } // float time = float.Parse( param["time"] as string )/1000f; Object loadedResource = Resources.Load(resourcePath); if (loadedResource == null) { Debug.LogError("Resources.Load Error ! path:" + resourcePath); return; } ViNoSceneManager sm = ViNoSceneManager.Instance; string parentName = sm.transform.parent.gameObject.name; // It is expected that the "Panels" object or the "Camera" object. UnityWrapper.InstantiateAsGameObject(loadedResource, parentName); }
public override void ToByteCode(ByteCodes code) { if (animTarget == null) { ViNoDebugger.LogWarning("Animation Target Not Set"); return; } SetUpParamTable(); List <byte> byteList = new List <byte>(); // Labeling. AddNodeCode(byteList); #if false // instantiate prefab , if target is in asset. if (isTargetInAsset) { Debug.Log("add load resource :" + animTarget.name); // Add CreateObjectNode.ToByteCode... ByteCodeScriptTools.AddLoadResourceCode(byteList, animTarget.name); GameObject parent = null; if (Application.isPlaying) { parent = ViNoSceneManager.Instance.theSavedPanel; } else { ViNoSceneManager sm = GameObject.FindObjectOfType(typeof(ViNoSceneManager)) as ViNoSceneManager; parent = sm.theSavedPanel; } if (parent == null) { // SceneManager Not Needed user . parent = Camera.main.gameObject; } Debug.Log("AddCreateGOCode :" + parent.name); ByteCodeScriptTools.AddCreateGOCode(byteList, parent); } else { Debug.Log("target is in scene..."); } #endif ByteCodeScriptTools.AddTablePairsCode(byteList, paramTbl); byte op = OpcodeMessaging.TWEEN; switch (animationType) { case AnimationType.FADE_PANEL: op = OpcodeMessaging.FADE_PANEL; break; case AnimationType.CROSS_FADE: op = OpcodeMessaging.CROSS_FADE; break; } ByteCodeScriptTools.AddMessagingCode(byteList, animTarget.name, op); code.Add(byteList.ToArray()); ToByteCodeInternal(code); }
public override void OnInspectorGUI() { Scene targetData = target as Scene; DrawDefaultInspector(); #if false if (targetData.sceneNodesData == null || targetData.sceneNodesData.Length == 0) { targetData.sceneNodesData = new SceneData.SceneNodeData[1]; targetData.sceneNodesData[0] = new SceneData.SceneNodeData(); } for (int i = 0; i < targetData.sceneNodesData.Length; i++) { DrawSceneNodeField(targetData.sceneNodesData[i], i * 220); } #endif #if true GUICommon.DrawLineSpace(5f, 5f); GUICommon.DrawLineSpace(5f, 5f); #if false if (GUILayout.Button("Save as XML")) { string xmlData = ViNoGameSaveLoad.SerializeObject <SceneData.SceneNodeData[]>(targetData.sceneNodesData); ViNoGameSaveLoad.CreateXML(targetData.name + ".xml", xmlData); AssetDatabase.Refresh(); EditorUtility.FocusProjectWindow(); } EditorGUILayout.BeginHorizontal(); sceneXmlFile = EditorGUILayout.ObjectField(sceneXmlFile, typeof(TextAsset), false) as TextAsset; GUI.enabled = (sceneXmlFile == null) ? false : true; if (GUILayout.Button("Load XML")) { targetData.sceneNodesData = ViNoGameSaveLoad.DeserializeObject <SceneData.SceneNodeData[]>(sceneXmlFile.text) as SceneData.SceneNodeData[]; EditorUtility.SetDirty(targetData); } GUI.enabled = true; EditorGUILayout.EndHorizontal(); #endif if (!Application.isPlaying) { GUI.enabled = false; EditorGUILayout.HelpBox("Save Scene : PlayMode Only. \n Save under the \"ADVScene\" objects data.", MessageType.Info); } EditorGUILayout.BeginHorizontal(); // GUILayout.Space( 20f ); if (GUILayout.Button("Save Scene", GUILayout.Height(44f))) { // if( EditorUtility.DisplayDialog( "Warning" , "Do you really want to overwrite ?" , "ok" , "cancel" ) ){ ViNoSceneManager.FindInstance(); ViNoSceneManager.Instance.SaveSceneNodes(); targetData.sceneNodesData = ViNoSceneManager.Instance.GetSceneData().m_DataArray; // } // Application.CaptureScreenshot( "Assets/A Scene.png" ); } GUI.enabled = true; if (GUILayout.Button("Load Scene", GUILayout.Height(44f))) { // if( EditorUtility.DisplayDialog( "Warning" , "Do you really want to apply ?" , "ok" , "cancel" ) ){ Undo.RegisterSceneUndo("Load Scene"); SceneCreator.Create(targetData); // } } // GUILayout.Space( 20f ); EditorGUILayout.EndHorizontal(); EditorGUILayout.HelpBox("Clear under the \"ADVScene\" objects", MessageType.Info); if (GUILayout.Button("Clear Scene", GUILayout.Height(44f))) { ViNoSceneManager sm = GameObject.FindObjectOfType(typeof(ViNoSceneManager)) as ViNoSceneManager; SceneCreator.DestroySceneImmediate(sm.theSavedPanel); } #endif }
void Awake() { if( instance == null ){ instance= this; m_SceneData= new SceneData(); hideFlags = 0; } else{ if( Application.isPlaying ){ Destroy( gameObject ); } } }