作为一个习惯于偷懒的程序,重复性的无聊内容是最让人无奈的事,就比如我们创建Unity脚本之后,需要手动调整生成的新脚本的格式、编码、内容;如果我们要编写的是编辑器或者服务器端脚本,需要修改的内容就会更多等等,因此我们要寻求一种偷懒的解决办法,针对这个问题,之前也使用过一些解决办法,今天就索性总结一下:
1、找到Unity版本对应的安装路径,修改对应的脚本模板:
XXX\Editor\Data\Resources\ScriptTemplates\下的模板,直接修改其格式、编码,这样之后在使用时,就可以省略其修改;如果需要修改其内容,则可以在脚本模板中使用一些通配符,然后在脚本生成中进行替换处理,比如我们将模板修改如下:
// Created by #DEVELOPER# on #CREATEDATE#.
using UnityEngine;
using System.Collections;
 
public class #SCRIPTNAME# : MonoBehaviour
{
    #region Some Comment
    
    #endregion 
    
    void Start ()
    {
        
    }
    
    void Update () 
    {
        
    }
}
然后针对性的写一个Editor进行处理,监听创建事件:
using UnityEngine;
using UnityEditor;
using System.Collections;
 
public static void OnWillCreateAsset (string _path)
{
    _path = _path.Replace(".meta", "");
    int tIndex = _path.LastIndexOf(".");
    string tFile = _path.Substring(tIndex);
    if(tFile != ".cs" && tFile != ".js" && tFile != ".boo")
    {
        return;
    }
 
    tIndex = Application.dataPath.LastIndexOf("Assets");
    _path = Application.dataPath.Substring(0, tIndex) + _path;
    tFile = System.IO.File.ReadAllText(_path);
    
    tFile = tFile.Replace("#CREATEDATE#", System.DateTime.Now.ToString("d")).Replace("#DEVELOPER#", PlayerSettings.companyName); 
 
    System.IO.File.WriteAllText(_path, tFile);
    AssetDatabase.Refresh();
}
该Editor脚本可以打包成unity,放入对应的XXX\Editor\Standard Packages\下,以后每次使用时,直接导入。
2、针对MonoDevelop工具本身进行扩展,XXX\MonoDevelop\Addins\目录下,放入扩展的插件,可以参考下
MonoDevelop file templates for Unity C# scripts,本身提供了可下载的插件,我们可以进行自身定制:不过由于MonoDevelop相对于VS的不足,因此,可能需要由扩展Mono改为扩展VS工具。
3、实现自身的脚本模板:此时我们仍然有较大的灵活性:
1)Unity本身是个很好的工具,给我们提供了很灵活的接口:
让我们先观察下XXX\Editor\Data\Resources\ScriptTemplates\下的模板命名,分析下命名规则,其实是有规律的,所有的模板命名都符合:
编号(可能是显示顺序)—创建时要显示在Unity中的问题—脚本创建之后默认的命名 . 脚本的扩展名 . txt
因此,我们可以将自己的模板放置在本目录下(Unity需要重启),这样在Unity创建时,选择我们自身的模板就可以按需创建了;同时结合方法2,我们就可以更懒了。
2)我们也可以选择自己创建模板,这里我们可以参考MOMO大神的博客:
 
这样合计合计,综合各种方法,我们就可以安心大胆的偷懒了!
凡此种种,重复性的劳动总能找到偷懒的方法的!

修改Unity脚本模板的方法合计的更多相关文章

  1. 如何修改新建脚本模板-ScriptTemplates(Unity3D开发之十五)

    猴子原创,欢迎转载.转载请注明: 转载自Cocos2Der-CSDN,谢谢! 原文地址: http://blog.csdn.net/cocos2der/article/details/44957631 ...

  2. 定制自己的Unity脚本模板

    有时候想给脚本添加符合自己编程习惯的内容,或是一些个性化信息.而作为一个多多少少有点强迫症的人,这种东西要加就得每个脚本都加上,不然看着多不爽! 于是就得每添加一个脚本就去修改一下,很麻烦. 但是,在 ...

  3. 使用vs2010编辑Unity脚本,配置方法

    在Unity界面上.选择Edit->Preferences->External Tools,External Script Editor一项即为编译器. 以Unity3D 4.3.4 f1 ...

  4. unity之定制脚本模板

    1.unity的脚本模板        新版本unity中的C#脚本有三类,第一类是我们平时开发用的C# Script:第二类是Testing,用来做单元测试:第三类是Playables,用作Time ...

  5. Tips12: 私人定制 专属的Unity3D 脚本模板

    在使用U3D的过程中,新建一个C#脚本,它包含着空的Start()和Update()函数.  根据个人习惯的不同,可能有些人有着自己的脚本风格,每次进去都增删改很麻烦,这里介绍一个更改新建脚本模板的方 ...

  6. 《转》Unity3D研究院编辑器之创建Lua脚本模板

    Unity里能创建 c#脚本模板,但是如果我想创建Lua脚本模板怎么办呢?拓展一下编辑器吧. 设置一下Lua脚本的模板地址 :  Assets/Editor/Lua/Template/lua.lua ...

  7. Unity 脚本的未来发展

    新技术之IL2CPP 最近,我们谈到了Unity 的WebGL . 在那篇文中我们简要谈论到脚本在 WebGL  中的运行的新技术称为"IL2CPP" .然而IL2CPP 所代表的 ...

  8. Unity3d自定义脚本模板

    这是一个小技巧,打开Unity安装目录,如: C:\Program Files (x86)\Unity\Editor\Data\Resources\ScriptTemplates /* * * Tit ...

  9. 5. Unity脚本的执行顺序

    Unity是不支持多线程的,也就是说我们必须要在主线程中操作它,可是Unity可以同时创建很多脚本,并且可以分别绑定在不同的游戏对象身上,他们各自都在执行自己的生命周期感觉像是多线程,并行执行脚本的, ...

随机推荐

  1. 【转载】C++的文件和流

    http://www.iteedu.com/plang/ccpp/cppdxjch2b/111.php C++语言把每一个文件都看成一个有序的字节流(见图14.2),每一个文件或者以文件结束符(end ...

  2. ACMer程序员智力拾遗

           浏览网页偶得,遂记录下来,每天进步一点点--        博客园真是个不错的平台,今天我让师姐也注册了--        学会分享吧,孩子们-- 一.编程中无穷大量的设置        ...

  3. 【HDU 4898】 The Revenge of the Princess’ Knight (后缀数组+二分+贪心+...)

    The Revenge of the Princess’ Knight Problem Description There is an old country and the king fell in ...

  4. BeRoTinyPascal

    https://github.com/BeRo1985/berotinypascal https://github.com/thachngopl/berotinypascal

  5. linxu命令小结

    1.设置root用户的密码 sudo passwd root 2.切换用户 su username su:switch user的简写 3.切换到超级用户 sudo su sudo (super us ...

  6. WordPress RokNewsPager插件‘thumb.php’多个安全漏洞

    漏洞名称: WordPress RokNewsPager插件‘thumb.php’多个安全漏洞 CNNVD编号: CNNVD-201309-369 发布时间: 2013-09-24 更新时间: 201 ...

  7. Hash Killer I II

    题意大概: 1.字符串hash不取模,自动溢出  构造数据卡这种hash 2.字符串hash取模1000000007,构造数据卡这种hash 题解传送门:VFleaKing http://vfleak ...

  8. Cocos2d-x 坑之一:Xcode文件真实目录与工程视图目录

    Cocos2d-x一定要保证 Xcode文件真实目录与工程视图目录 的一致性,不然,会出现文件读取不了,或include不了的情况. 如果出现此类情况,优先查看真实目录的结构.

  9. 【转】iOS开发:开发证书知识点总结

    原文网址:http://www.jianshu.com/p/9c166a5e4930 1. Error: An App ID with identifier "*" is not ...

  10. 【转】android获取屏幕宽度和高度

    原文网址:http://www.cnblogs.com/howlaa/p/4123186.html 1. WindowManager wm = (WindowManager) getContext() ...