Beispiel #1
0
        private void DisplayLibrarySelectionGui()
        {
            EditorGUILayout.BeginVertical(_innerContainerGuiStyle);

            EditorGUILayout.LabelField("Tiles Configs Library", EditorStyles.boldLabel);

            EditorGUILayout.Space();

            //Set tiles library
            _tileConfigsLibrary = (TileConfigsLibrary)EditorGUILayout.ObjectField("Tile Configs Library", _tileConfigsLibrary, typeof(TileConfigsLibrary), false);

            if (_tileConfigsLibrary == null)
            {
                EditorGUILayout.Space();
                EditorGUILayout.HelpBox("You should provide TileConfigsLibrary scriptable object:", MessageType.Warning);
            }

            EditorGUILayout.EndVertical();
        }
Beispiel #2
0
        /// <summary>
        /// Create button for each tile based at tiles configs library.
        /// </summary>
        /// <param name="tileConfigsLibrary">Tiles configs library.</param>
        private void CreateTileButtonsGui(TileConfigsLibrary tileConfigsLibrary)
        {
            EditorGUILayout.BeginVertical(_innerContainerGuiStyle);

            //Display the title
            EditorGUILayout.LabelField("Tile Configs:", EditorStyles.boldLabel);

            EditorGUILayout.Space();

            EditorGUILayout.BeginHorizontal(EditorStyles.helpBox);

            foreach (var tileConfig in tileConfigsLibrary.tileConfigsList)
            {
                if (GUILayout.Button($"{tileConfig.tileMaterialConfig.tileMaterialType}", GUILayout.Width(64), GUILayout.Height(40)))
                {
                    Debug.Log($"Current tile material: {tileConfig.tileMaterialConfig.tileMaterialType}");
                    _currentTileConfig = tileConfig;
                }
            }

            EditorGUILayout.EndHorizontal();

            EditorGUILayout.EndVertical();
        }