public override void OnInspectorGUI() { if (Application.isPlaying) { UnityEntity unityEntity = this.target as UnityEntity; EditorGUILayout.LabelField($"Entity ID: {unityEntity.entity.Id}"); EditorGUILayout.Space(); } base.OnInspectorGUI(); if (GUILayout.Button("Add EntityComponent")) { GenericMenu menu = GetEntityComponentsMenu(); menu.ShowAsContext(); } }
private void AddEntityComponentMenuItems(List <Type> entityComponentTypes) { foreach (Type componentType in entityComponentTypes) { if (componentType.IsAbstract) { continue; } this.componentSelectionMenu.AddItem( content: new GUIContent(componentType.Name), on: false, func: () => { UnityEntity unityEntity = this.target as UnityEntity; unityEntity.AddComponent(componentType); }); } }