如何在创建新脚本或重命名现有脚本时执行方法?

时间:2017-07-11 17:51:49

标签: c# unity3d process save editor

我想知道在创建新脚本或重命名现有脚本时如何执行方法?

我知道Unity在创建脚本时会执行一些过程。例如,在创建脚本时,脚本将添加到窗口Component > Scripts > NamespaceOfYourScript > NameOfYOurScript中的组件列表中。我想做类似的事情,但对于我自己的自定义窗口。我很确定该过程是可访问的,但我不知道它的名称,如何访问它并使用它。

我已经搜索了文档,统一答案,堆栈溢出,但是我还没找到我想要的东西(不知道你正在寻找什么是确切的过程关键字,它对搜索没有帮助)

我想让脚本有点像这样:

 using UnityEngine;
 using UnityEditor;

 public class MyScript : SomeScriptProcess ()
 {
     void OnScriptSaved (System.Type TheScriptThatWasJustSaved)
     {
         //I execute my stuff here
     }
 }

任何帮助都会很棒。 :)

1 个答案:

答案 0 :(得分:0)

您可以访问Assets文件夹。从那里,迭代所有文件夹并查找.cs文件。

Method to get all files within folder and subfolders that will return a list

将它们存储在一个列表中并使用它来显示按钮中的名称。您还可以使Unity拥有该搜索系统。

单击按钮时,使用带反射的AddComponent:

https://forum.unity3d.com/threads/add-a-custom-component-by-searching-for-its-name.323361/