public override void OnInspectorGUI()
        {
            serializedObject.Update();

            EditorGUILayout.PropertyField(environmentDataBase);

            EditorGUILayout.BeginHorizontal();

            level.width  = EditorGUILayout.IntField(level.width);
            level.height = EditorGUILayout.IntField(level.height);

            EditorGUILayout.EndHorizontal();

            GUI.enabled = level.width > 0 ? level.height > 0 ? true : false : false;

            if (GUILayout.Button("Create Level"))
            {
                level.InitializeLevel();
            }

            GUI.enabled = true;

            bool isLevel = level.map.environmentArrays != null ? true : false;

            GUI.enabled = isLevel;

            if (GUILayout.Button("Open Level Editor"))
            {
                LevelEditorWindow.InitWithContent(target as Level);
            }

            GUI.enabled = true;

            serializedObject.ApplyModifiedProperties();
        }
        public static void InitWithContent(Level levelProfile)
        {
            LevelEditorWindow window = GetWindow(typeof(LevelEditorWindow)) as LevelEditorWindow;

            window.level = levelProfile;

            window.environmentMap = window.level.map;

            //window.serializedElements = window.level.serializedObject.FindProperty(nameof(window.level.cellsEnvironments));

            Undo.RecordObject(window.level, "Edit Level");

            window.Show();
        }
        // Not Used
        public static void Init()
        {
            LevelEditorWindow window = GetWindow(typeof(LevelEditorWindow)) as LevelEditorWindow;

            window.Show();
        }