using System.Collections; using System.Collections.Generic; using UnityEngine; #if UNITY_EDITOR using UnityEditor; #endif [CreateAssetMenu(fileName = "New Class", menuName = "Config/New Class")] public class ClassSO : ScriptableObject { public string ClassName; public Sprite ClassSprite; public string[] ClassBonuses; public GameObject SkillTree; } #if UNITY_EDITOR [CustomEditor(typeof(ClassSO))] public class ClassSOEditor : Editor { private ClassSO container; private void OnEnable() { container = target as ClassSO; } public override void OnInspectorGUI() { serializedObject.Update(); EditorGUILayout.PropertyField(serializedObject.FindProperty("ClassName")); EditorGUILayout.PropertyField(serializedObject.FindProperty("ClassSprite")); EditorGUILayout.PropertyField(serializedObject.FindProperty("ClassBonuses")); EditorGUILayout.PropertyField(serializedObject.FindProperty("SkillTree")); serializedObject.ApplyModifiedProperties(); } } #endif