Ejemplo n.º 1
0
 private void OnDisable()
 {
     if (genRoutine != null)
     {
         EditorCoroutineUtility.StopCoroutine(genRoutine);
     }
 }
        static void HandleLog(string logString, string stackTrace, LogType type)
        {
            switch (type)
            {
            case LogType.Error:
                // Debug.Log("Error Message");
                break;

            default:
                return;
            }
            output = logString;
            stack  = stackTrace;
            lm     = new LogMessage
            {
                st  = stack,
                msg = output,
            };
            logMessages.log.Add(lm);
            if (logCount == 0)
            {
                logMessages.ts = DateTime.Now.ToString();
                coroutine      = EditorCoroutineUtility.StartCoroutineOwnerless(EditorAttempt(0.5f));
            }
            else
            {
                EditorCoroutineUtility.StopCoroutine(coroutine);
                coroutine = EditorCoroutineUtility.StartCoroutineOwnerless(EditorAttempt(0.5f));
            }
            // sw.Close();
        }
Ejemplo n.º 3
0
 public void OnDestroy()
 {
     if (rebuildCoroutine != null)
     {
         EditorCoroutineUtility.StopCoroutine(rebuildCoroutine);
     }
 }
Ejemplo n.º 4
0
        public void Reveal(bool show = true)
        {
            if (refreshChildrenEverytime)
            {
                childrenGroups.Clear();
                childrenGroups = GetComponentsInChildren <CUIGroup>().ToList();
            }

            if (!Application.isPlaying)
            {
#if UNITY_EDITOR
                if (reveal_EC != null)
                {
                    EditorCoroutineUtility.StopCoroutine(reveal_EC);
                }
                reveal_EC = EditorCoroutineUtility.StartCoroutine(RevealAnimate(show), this);
#endif
            }
            else
            {
                if (reveal_C != null)
                {
                    StopCoroutine(reveal_C);
                }
                reveal_C = StartCoroutine(RevealAnimate(show));
            }
        }
Ejemplo n.º 5
0
    // After opening, set up transform, coroutine, etc. that can only run on main thread
    // Should be called by both OpenAsync and Open
    void PostOpenMainThreadSetup(string urlPath)
    {
#if NET_4_6
        Debug.Assert(Thread.CurrentThread == mainThread);
#endif
        HVCollider.center      = localSpaceBounds.center;
        HVCollider.size        = localSpaceBounds.size;
        meshFilter.mesh.bounds = localSpaceBounds;

        Update3DAudio();
        UpdateUnityBuffers(true);

        if (UnityBufferCoroutine != null)
        {
#if UNITY_EDITOR && USE_EDITOR_COROUTINE
            EditorCoroutineUtility.StopCoroutine(UnityBufferCoroutine);
#else
            StopCoroutine(UnityBufferCoroutine);
#endif
        }
#if UNITY_EDITOR && USE_EDITOR_COROUTINE
        UnityBufferCoroutine = EditorCoroutineUtility.StartCoroutineOwnerless(FillUnityBuffers());
#else
        UnityBufferCoroutine = StartCoroutine(FillUnityBuffers());
#endif

        HandleOnOpen(urlPath);
    }
Ejemplo n.º 6
0
 static void HandleLog(string logString, string stackTrace, string type = "")
 {
     if (logString != prevMsg)
     {
         output = logString;
         stack  = stackTrace;
         lm     = new LogMessage {
             st   = stack,
             src  = "unity",
             msg  = output,
             type = type
         };
         if (repeated > 0)
         {
             lm.msg = lm.msg + repeated.ToString();
         }
         logMessages.log.Add(lm);
         prevMsg = lm.msg;
         if (logCount == 0)
         {
             logMessages.ts = DateTime.UtcNow.ToString();
             coroutine      = EditorCoroutineUtility.StartCoroutineOwnerless(EditorAttempt(0.5f));
         }
         else
         {
             EditorCoroutineUtility.StopCoroutine(coroutine);
             coroutine = EditorCoroutineUtility.StartCoroutineOwnerless(EditorAttempt(0.5f));
         }
     }
     else
     {
         repeated++;
     }
     // sw.Close();
 }
Ejemplo n.º 7
0
 public void EditorPreview()
 {
     if (editorAnimate_C != null)
     {
         EditorCoroutineUtility.StopCoroutine(editorAnimate_C);
     }
     editorAnimate_C = EditorCoroutineUtility.StartCoroutine(_play(), this);
 }
Ejemplo n.º 8
0
 void RecalculateEventIntegration()
 {
     recalculationProgression = 0;
     if (recalculationCoroutine != null)
     {
         EditorCoroutineUtility.StopCoroutine(recalculationCoroutine);
     }
     recalculationCoroutine = EditorCoroutineUtility.StartCoroutine(RecalculateEventIntegration_C(), this);
 }
Ejemplo n.º 9
0
    public override void OnInspectorGUI()
    {
        NeuralNetwork nn          = target as NeuralNetwork;
        bool          drawDefault = true;

        if (nn)
        {
            if (nn.currentCoroutine != null)
            {
                GUILayout.Label("Processing...");
                if (GUILayout.Button("Stop"))
                {
                    EditorCoroutineUtility.StopCoroutine(nn.currentCoroutine);
                    nn.currentCoroutine = null;
                    nn.msg = "Interrupted.";
                }
                GUILayout.Label(nn.msg);
                drawDefault = false;
            }
            else
            {
                if (GUILayout.Button("Save"))
                {
                    EditorUtility.SetDirty(target);
                    AssetDatabase.SaveAssets();
                }

                if (nn.trainingSet)
                {
                    if (GUILayout.Button("Train network"))
                    {
                        nn.currentCoroutine = EditorCoroutineUtility.StartCoroutine(nn.train(nn.trainingSet), this);
                    }
                    if (GUILayout.Button("Check network"))
                    {
                        nn.currentCoroutine = EditorCoroutineUtility.StartCoroutine(nn.check(nn.trainingSet), this);
                    }
                    GUILayout.Label(nn.msg);
                }
                else
                {
                    GUILayout.Label("Cannot train without a training set.");
                }

                if (GUILayout.Button("Reset"))
                {
                    nn.reset();
                }
            }
        }

        if (drawDefault)         //dont draw default inspector when processing network
        {
            GUILayout.Space(40);
            DrawDefaultInspector();
        }
    }
Ejemplo n.º 10
0
        private void OnDisable()
        {
            if (m_editorCoroutine != null)
            {
                EditorCoroutineUtility.StopCoroutine(m_editorCoroutine);
            }

            m_peerConnenctionDataStore.Clear();
        }
        public void Pause()
        {
            if (coroutine != null)
            {
                EditorCoroutineUtility.StopCoroutine(coroutine);
                coroutine = null;
            }

            running = false;
        }
Ejemplo n.º 12
0
        private void DrawControlButtons()
        {
            if (GUILayout.Button("Generate"))
            {
                if (genRoutine != null)
                {
                    EditorCoroutineUtility.StopCoroutine(genRoutine);
                }

                genRoutine = EditorCoroutineUtility.StartCoroutine(generator.Generate(), generator);
            }
        }
Ejemplo n.º 13
0
    static void OnSelectionChanged()
    {
        Debug.Log("OnSelectionChanged");

        if (null != cor)
        {
            EditorCoroutineUtility.StopCoroutine(cor);
        }

        if (0 < Selection.assetGUIDs.Length)
        {
            cor = EditorCoroutineUtility.StartCoroutineOwnerless(C_OnSelectionChanged(Selection.assetGUIDs[0]));
        }
    }
Ejemplo n.º 14
0
 /// <summary>
 /// シーケンスを止める
 /// </summary>
 public void Stop()
 {
     foreach (EditorCoroutine coroutine in _coroutines)
     {
         EditorCoroutineUtility.StopCoroutine(coroutine);
     }
     foreach (CoroutineSequence sequence in _sequences)
     {
         sequence.Stop();
     }
     _coroutines.Clear();
     _insertedEnumerators.Clear();
     _appendedEnumerators.Clear();
     _sequences.Clear();
 }
Ejemplo n.º 15
0
        void FinalAuth(LootLockerAuthResponse response)
        {
            if (TwoFATockenTimoutCo != null)
            {
                EditorCoroutineUtility.StopCoroutine(TwoFATockenTimoutCo);
            }

            PopulateGames();

            //Fill in organization IDs
            for (int i = 0; i < response.user.organisations.Length; i++)
            {
                organizationIDs.Add(response.user.organisations[i].id.ToString());
            }
        }
        public void Stop()
        {
            if (coroutine != null)
            {
                EditorCoroutineUtility.StopCoroutine(coroutine);
                coroutine = null;
            }

            if (dirtyTilemap != null)
            {
                DestroyImmediate(dirtyTilemap.gameObject);
                dirtyTilemap = null;
            }

            running = false;
        }
Ejemplo n.º 17
0
    public static void PlaySoundInEditor(SoundData _soundData)
    {
#if UNITY_EDITOR
        if (_soundData.delay > 0)
        {
            if (soundCoroutine != null)
            {
                EditorCoroutineUtility.StopCoroutine(soundCoroutine);
            }
            soundCoroutine = EditorCoroutineUtility.StartCoroutine(PlaySoundInEditor_C(GetSoundClip(_soundData), 0, false, _soundData.delay), _soundData);
        }
        else
        {
            PlaySoundInEditor(GetSoundClip(_soundData));
        }
#endif
    }
        public void SyncEditModeLoops()
        {
            foreach (CustomPosition i in GetComponents <CustomPosition>())
            {
                EditorCoroutineUtility.StopCoroutine(i.editModeLoop);
                i.editModeLoop = null;

                i.EditorApplyCheck();
            }
            foreach (CustomRotation i in GetComponents <CustomRotation>())
            {
                EditorCoroutineUtility.StopCoroutine(i.editModeLoop);
                i.editModeLoop = null;

                i.EditorApplyCheck();
            }
        }
        protected override void Awake()
        {
            if (!inEditor)
            {
#if UNITY_EDITOR
                //base.Awake();
                if (editModeLoop != null) //stops loop in play mode
                {
                    EditorCoroutineUtility.StopCoroutine(editModeLoop);
                    editModeLoop = null;
                }
#endif

                _ETERNAL.I.earlyRecorder.callbackF += MoveToTarget;

                RecordParent();
            }
        }
Ejemplo n.º 20
0
        public void NextTextBlock(string image, string textBlock)
        {
            if (!gameObject.activeInHierarchy)
            {
                Show(true);
            }

            if (typingCoroutine != null)
            {
                Debug.LogError("Should not be pushing a line will "
                               + "other line is not finished displaying");
                StopCoroutine(typingCoroutine);
            }
#if UNITY_EDITOR
            else if (editorCoroutine != null)
            {
                EditorCoroutineUtility.StopCoroutine(editorCoroutine);
            }
#endif

            Sprite sprite = spriteAtlas.GetSprite(image);
            if (sprite != null)
            {
                portrait.sprite = sprite;
            }
            else
            {
                portrait.sprite = missingPortrait;
            }

            continueTextImage.gameObject.SetActive(false);

#if UNITY_EDITOR
            if (!Application.isPlaying)
            {
                editorCoroutine = EditorCoroutineUtility.StartCoroutineOwnerless(DisplayText(textBlock));
            }
            else
#endif
            typingCoroutine = StartCoroutine(DisplayText(textBlock));
        }
        protected override void OnDestroy()
        {
#if UNITY_EDITOR
            //removes subscribed methods
            EditorApplication.playModeStateChanged -= EditorStateChanged;
            EditorApplication.pauseStateChanged    -= EditorStateChanged;
#endif

            if (!inEditor)
            {
                //base.OnDestroy();
                _ETERNAL.I.earlyRecorder.callbackF -= MoveToTarget;
            }

            //removes coroutines
            if (editModeLoop != null)
            {
                EditorCoroutineUtility.StopCoroutine(editModeLoop);
                editModeLoop = null;
            }
        }
Ejemplo n.º 22
0
    static void OnPlayModeToggle(PlayModeStateChange state)
    {
        if (state == PlayModeStateChange.ExitingEditMode)
        {
            SavePrefs();

            if (saveOnPlay)
            {
                SaveAllOpenScenes();
                Debug.Log("Saved on play at: " + System.DateTime.Now);
            }
        }

        if (state == PlayModeStateChange.ExitingPlayMode)
        {
            LoadPrefs();
            if (saveRoutine != null)
            {
                EditorCoroutineUtility.StopCoroutine(saveRoutine);
            }
            saveRoutine = EditorCoroutineUtility.StartCoroutineOwnerless(SaveOpenScenesCoroutine());
        }
    }
        public void EditorApplyCheck()
        {
            //Starts loop during editor or pause
            if (editorApply) // starts loop if not already looping
            {
                if (editModeLoop == null)
                {
                    SetPrevious();

                    RecordParent();

                    editModeLoop = EditorCoroutineUtility.StartCoroutineOwnerless(EditModeLoop() /*, this*/);
                }
            }
            else //stops loop if exists
            {
                if (editModeLoop != null)
                {
                    EditorCoroutineUtility.StopCoroutine(editModeLoop);
                    editModeLoop = null;
                }
            }
        }
Ejemplo n.º 24
0
    static IEnumerator MakeCoroutine()
    {
        if ((hitokotoSetting.disable != 1 && !EditorApplication.isPlaying) || m_force)
        {
            m_force = false;
            UnityWebRequest response = UnityWebRequest.Get("https://v1.hitokoto.cn/?c=c");
            response.SendWebRequest();
            while (!response.isDone)
            {
            }
            if (response.downloadHandler.text != "")
            {
                Hitokoto hitokoto = JsonUtility.FromJson <Hitokoto>(response.downloadHandler.text);
                Debug.Log(hitokoto.hitokoto + "\n出自:「" + hitokoto.from + "」\n<a>https://hitokoto.cn?id=" + hitokoto.id + "</a>");
            }
            else
            {
                Debug.Log("一言加载失败");
            }
        }
        yield return(null);

        EditorCoroutineUtility.StopCoroutine(m_HitokotoCoroutine);
    }
Ejemplo n.º 25
0
 void StopCoroutine(EditorCoroutine cr)
 {
     EditorCoroutineUtility.StopCoroutine(cr);
 }
Ejemplo n.º 26
0
 public void StopGeneration()
 {
     EditorCoroutineUtility.StopCoroutine(routine);
     InProgress = false;
 }
 public void StopCoroutine()
 {
     EditorCoroutineUtility.StopCoroutine(coroutine);
 }
Ejemplo n.º 28
0
        private void OnEnable()
        {
            var root = this.rootVisualElement;

            root.style.backgroundColor = EditorGUIUtility.isProSkin ? BackgroundColorInProSkin : Color.white;

            var toolbar = new Toolbar {
                style = { alignItems = Align.FlexEnd }
            };

            root.Add(toolbar);

            toolbar.Add(new ToolbarSpacer {
                flex = true
            });

            var buttonContainer = new VisualElement
            {
                tooltip = "Save current webrtc stats information to a json file",
            };

            toolbar.Add(buttonContainer);

            var dumpButton = new ToolbarButton(() =>
            {
                if (!m_peerConnenctionDataStore.Any())
                {
                    return;
                }

                var filePath = EditorUtility.SaveFilePanel("Save", "Assets", "dump", "json");

                if (string.IsNullOrEmpty(filePath))
                {
                    return;
                }

                var peerRecord = string.Join(",",
                                             m_peerConnenctionDataStore.Select(record => $"\"{record.Key}\":{{{record.Value.ToJson()}}}"));
                var json =
                    $"{{\"getUserMedia\":[], \"PeerConnections\":{{{peerRecord}}}, \"UserAgent\":\"UnityEditor\"}}";
                File.WriteAllText(filePath, json);
            })
            {
                text = "Save"
            };

            buttonContainer.Add(dumpButton);

            root.Add(CreateStatsView());

            EditorApplication.update += () =>
            {
                dumpButton.SetEnabled(m_peerConnenctionDataStore.Any());
            };

            EditorApplication.playModeStateChanged += change =>
            {
                switch (change)
                {
                case PlayModeStateChange.EnteredPlayMode:
                    m_peerConnenctionDataStore.Clear();
                    m_editorCoroutine = EditorCoroutineUtility.StartCoroutineOwnerless(GetStatsPolling());
                    break;

                case PlayModeStateChange.ExitingPlayMode:
                    EditorCoroutineUtility.StopCoroutine(m_editorCoroutine);
                    break;
                }
            };
        }
Ejemplo n.º 29
0
    public void OnGUI()
    {
        var margin = new RectOffset(10, 10, 10, 10);

        GUILayout.BeginVertical(new GUIStyle {
            margin = margin
        });
        {
            if (branch == "master")
            {
                GUI.contentColor = Color.green;
                EditorGUILayout.LabelField("Branch is master.", EditorStyles.wordWrappedLabel);
            }
            else
            {
                GUI.contentColor = Color.red;
                EditorGUILayout.LabelField($"Branch is {branch}. Official build only allowed on master.", EditorStyles.wordWrappedLabel);
            }

            GUILayout.Space(10);

            if (hasChanges)
            {
                GUI.contentColor = Color.red;
                EditorGUILayout.LabelField("There are uncommitted changes. Official build not allowed.", EditorStyles.wordWrappedLabel);
            }
            else
            {
                GUI.contentColor = Color.green;
                EditorGUILayout.LabelField("There are no uncommitted changes", EditorStyles.wordWrappedLabel);
            }

            if (!isInnoSetupAvailable)
            {
                GUI.contentColor = Color.red;
                EditorGUILayout.LabelField($"Inno Setup 6 not installed at {innoSetupLocation}. Official build not allowed.", EditorStyles.wordWrappedLabel);
            }

            if (!isCodeSigningScriptAvailable)
            {
                GUI.contentColor = Color.red;
                EditorGUILayout.LabelField($"Code signing script was not found at {codeSigningScriptLocation}. Official build not allowed.", EditorStyles.wordWrappedLabel);
            }

            if (!isCodeSigningToolAvailable)
            {
                GUI.contentColor = Color.red;
                EditorGUILayout.LabelField($"Code signing tool was not found at {codeSigningToolLocation}. Official build not allowed.", EditorStyles.wordWrappedLabel);
            }

            GUI.contentColor = Color.white;
            GUILayout.Space(10);
            EditorGUILayout.LabelField($"Last tag number: {lastTag}", EditorStyles.wordWrappedLabel);
            GUILayout.Space(20);

            bool hasNewTag = !string.IsNullOrEmpty(newTagNumber);
            if (!hasNewTag)
            {
                GUI.contentColor = Color.red;
                EditorGUILayout.LabelField("No new tag number filled in. Official build not allowed", EditorStyles.wordWrappedLabel);
                GUI.contentColor = Color.white;
            }

            GUILayout.BeginHorizontal();
            {
                GUILayout.Label("New tag number", GUILayout.Width(100));
                newTagNumber = GUILayout.TextField(newTagNumber);
            }
            GUILayout.EndHorizontal();

            GUILayout.Space(20);

            GUILayout.BeginHorizontal();
            {
                //NOTE(Simon): Perform local build
                if (GUILayout.Button("Local build", GUILayout.Height(30)))
                {
                    BuildWin64();

                    ShowInWindowsExplorer("builds/" + branch);
                    Close();
                }

                GUI.enabled = branch == "master" && !hasChanges && hasNewTag;
                //NOTE(Simon): Perform official build
                if (GUILayout.Button("Official build", GUILayout.Height(30)))
                {
                    WriteVersionNumber(newTagNumber);
                    CreateNewGitTag(newTagNumber);
                    BuildWin64();
                    BuildInstallers();
                    SignInstallers();
                    RenameInstallers(newTagNumber);

                    ShowInWindowsExplorer("builds/installers");
                    Close();
                }

                GUI.enabled = true;

                GUILayout.Space(20);

                if (GUILayout.Button("Cancel", GUILayout.Height(30)))
                {
                    if (periodicUpdateRoutine != null)
                    {
                        EditorCoroutineUtility.StopCoroutine(periodicUpdateRoutine);
                    }

                    Close();
                    window = null;
                }
            }
            GUILayout.EndHorizontal();
        }
        GUILayout.EndVertical();

        if (Event.current.type == EventType.Repaint && window != null)
        {
            var totalSize = GUILayoutUtility.GetLastRect();
            var pos       = window.position;
            pos.height      = totalSize.height + margin.top + margin.bottom;
            window.position = pos;
        }
    }
Ejemplo n.º 30
0
    private void OnGUI()
    {
        EditorGUILayout.BeginVertical();
        EditorGUILayout.HelpBox(descriptionText, MessageType.Info);
        if (GUILayout.Button("Install/Update Editor Coroutines Package"))
        {
            InstallEditorCoroutines();
        }
        EditorGUILayout.EndVertical();

        showSettings = EditorGUILayout.BeginFoldoutHeaderGroup(showSettings, "Autosave Settings");
        if (showSettings)
        {
            EditorGUILayout.BeginVertical();
            autoSaveEnabled = EditorGUILayout.Toggle("Enable Auto Save", autoSaveEnabled);
            logSaves        = EditorGUILayout.Toggle("Log in console on save", logSaves);
            saveOnPlay      = EditorGUILayout.Toggle("Save on Play", saveOnPlay);
            EditorGUILayout.EndVertical();
        }
        EditorGUILayout.EndFoldoutHeaderGroup();

        EditorGUILayout.BeginHorizontal();

        saveInterval = EditorGUILayout.IntField("Save Interval in Minutes", saveInterval);
        if (GUILayout.Button("Update Interval"))
        {
            if (saveRoutine != null)
            {
                EditorCoroutineUtility.StopCoroutine(saveRoutine);
            }
            saveRoutine = EditorCoroutineUtility.StartCoroutineOwnerless(SaveOpenScenesCoroutine());
            SavePrefs();
        }

        if (GUILayout.Button("Save NOW"))
        {
            SaveAllOpenScenes();
            Debug.Log("Saved open scenes at: " + System.DateTime.Now);
            SavePrefs();
        }

        // Tests for saving and loading Autsave Prefs from scriptable Object.

        //if (GUILayout.Button("Load Prefs"))
        //{

        //    loadPrefs();
        //    if (saveRoutine != null) EditorCoroutineUtility.StopCoroutine(saveRoutine);
        //    saveRoutine = EditorCoroutineUtility.StartCoroutineOwnerless(SaveOpenScenesCoroutine());

        //}


        //if (GUILayout.Button("Save Prefs"))
        //{
        //    savePrefs();
        //    if (saveRoutine != null) EditorCoroutineUtility.StopCoroutine(saveRoutine);
        //    saveRoutine = EditorCoroutineUtility.StartCoroutineOwnerless(SaveOpenScenesCoroutine());
        //}

        EditorGUILayout.EndHorizontal();

        EditorGUILayout.HelpBox(infoText, MessageType.Info);
    }