private void OnEnable() { turretSystem = target as TurretSystem; turretSystem.CollectTurrets(); turretList = new ReorderableList(serializedObject, serializedObject.FindProperty("turrets"), true, true, false, false); turretList.drawElementCallback += DrawTurretCallback; turretList.drawHeaderCallback += DrawHeaderCallback; turretList.onSelectCallback -= SelectTurret; groupList = new ReorderableList(serializedObject, serializedObject.FindProperty("turretGroups"), true, true, true, true); groupList.elementHeight = EditorGUIUtility.singleLineHeight; //groupList.elementHeight = 6 * EditorGUIUtility.singleLineHeight; groupList.drawElementCallback += DrawTurretGroup; groupList.drawHeaderCallback += DrawTurretGroupHeader; groupList.onAddCallback += AddGroup; groupList.onCanRemoveCallback += CanRemoveGroup; groupList.onRemoveCallback += RemoveGroup; turretGroupNames = new List<string>(); for (int i = 0; i < turretSystem.turretGroups.Count; i++) { turretGroupNames.Add(turretSystem.turretGroups[i].groupId); } }