Version: 2017.3
public static double timeSinceStartup ;

Description

Время, с которого запущен редактора. (Только чтение)

This property contains the time since the editor was started, in seconds. Unlike Time.realtimeSinceStartup, this is not reset when starting play mode.

See Also: Time.realtimeSinceStartup


Simple Editor Window that saves each 300 seconds the current scene.

// Simple editor window that autosaves the working scene
// Make sure to have this window opened to be able to execute the auto save.

using UnityEngine; using UnityEditor; using UnityEngine.SceneManagement; using UnityEditor.SceneManagement;

public class SimpleAutoSave : EditorWindow { static float saveTime = 300.0f; static double nextSave = 0;

static int autoSaveLabel = 1;

[MenuItem("Examples/Simple autoSave")] static void Init() { SimpleAutoSave window = (SimpleAutoSave)GetWindowWithRect( typeof(SimpleAutoSave), new Rect(0, 0, 160, 60)); window.Show(); }

void OnGUI() { EditorGUI.LabelField(new Rect(10, 10, 80, 20), "Save Each:"); EditorGUI.LabelField(new Rect(80, 10, 80, 20), saveTime + " secs");

double timeToSave = nextSave - EditorApplication.timeSinceStartup;

EditorGUI.LabelField(new Rect(10, 30, 80, 20), "Next Save:"); EditorGUI.LabelField(new Rect(80, 30, 80, 20), timeToSave.ToString("N1") + " secs");

this.Repaint();

// when time has reach zero then save the scene if (EditorApplication.timeSinceStartup > nextSave) { Scene scene = SceneManager.GetActiveScene(); string name = scene.name + autoSaveLabel;

EditorSceneManager.SaveScene(scene, "Assets/wibble/" + name + ".unity", true); autoSaveLabel = autoSaveLabel + 1; nextSave = EditorApplication.timeSinceStartup + saveTime;

Debug.Log("Saved Scene: " + name); } } }