//也就选中的物体
public class Editor_Selection
{
/*
1.选中的物体(可操作)
2.使用快捷键操作
3.1选中右击添加组体,要先判断是否有此组件
3.2选中物体删除,使用Undo,可ctrl+z撤销
4.MenuItem最二个参数的用法
**/
[MenuItem("EditTools/selection1")]
static void SelectionObj()
{
if (Selection.activeGameObject != null)
Debug.LogError("选中~" + Selection.activeGameObject.name);
Debug.LogError("选中的个数~" + Selection.objects.Length);
}
//使用快捷键 空格之后下划线_ _#%F 代表快捷键为shift+ctrl+F alt为&
[MenuItem("GameObject/AddRigidbodyTest _#%F",false,12)]//多选给其添加组件
static void SelectionAddComponent()
{
foreach (GameObject go in Selection.gameObjects)
{
if (go.GetComponents<Rigidbody>().Length == 0)//这里判断一下,不然会重复添加的
{
go.AddComponent<Rigidbody>();
Debug.LogError("go.name="+go.name);
}
}
}
[MenuItem("GameObject/DeleleMyTest", false, 12)]
static void SelectionDelete()
{
foreach (Object item in Selection.objects)
{
Undo.DestroyObjectImmediate(item);//Undo,可以撤销的,ctrl+z
}
}
[MenuItem("GameObject/DeleleMyTest", true, 12)]
static bool myValidateData()
{
if (Selection.objects.Length > 0)
return true;
else
return false;
}
//menuitem第二个参数
}
Editor_Selection,MenuItem学习02
最新推荐文章于 2023-11-07 17:32:58 发布