Returns the active transform. (The one shown in the inspector).
This will never return Prefabs or non-modifiyable objects.
using UnityEngine; using UnityEditor;
class Example : EditorWindow { class SelectionActiveTransform : ScriptableObject { [MenuItem("Example/Duplicate at Origin _d")] static void DuplicateSelected() { Instantiate(Selection.activeTransform, Vector3.zero, Quaternion.identity); } }
//The menu item will be disabled if nothing, is selected. [MenuItem("Example/Duplicate at Origin _d", true)] static bool ValidateSelection() { return Selection.activeTransform != null; } }