zoukankan      html  css  js  c++  java
  • 修改Unity脚本模板的方法合计

    作为一个习惯于偷懒的程序,重复性的无聊内容是最让人无奈的事,就比如我们创建Unity脚本之后,需要手动调整生成的新脚本的格式、编码、内容;如果我们要编写的是编辑器或者服务器端脚本,需要修改的内容就会更多等等,因此我们要寻求一种偷懒的解决办法,针对这个问题,之前也使用过一些解决办法,今天就索性总结一下:
    1、找到Unity版本对应的安装路径,修改对应的脚本模板:
    XXXEditorDataResourcesScriptTemplates下的模板,直接修改其格式、编码,这样之后在使用时,就可以省略其修改;如果需要修改其内容,则可以在脚本模板中使用一些通配符,然后在脚本生成中进行替换处理,比如我们将模板修改如下:
    // 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,放入对应的XXXEditorStandard Packages下,以后每次使用时,直接导入。
    2、针对MonoDevelop工具本身进行扩展,XXXMonoDevelopAddins目录下,放入扩展的插件,可以参考下
    MonoDevelop file templates for Unity C# scripts,本身提供了可下载的插件,我们可以进行自身定制:不过由于MonoDevelop相对于VS的不足,因此,可能需要由扩展Mono改为扩展VS工具。
    3、实现自身的脚本模板:此时我们仍然有较大的灵活性:
    1)Unity本身是个很好的工具,给我们提供了很灵活的接口:
    让我们先观察下XXXEditorDataResourcesScriptTemplates下的模板命名,分析下命名规则,其实是有规律的,所有的模板命名都符合:
    编号(可能是显示顺序)—创建时要显示在Unity中的问题—脚本创建之后默认的命名 . 脚本的扩展名 . txt
    因此,我们可以将自己的模板放置在本目录下(Unity需要重启),这样在Unity创建时,选择我们自身的模板就可以按需创建了;同时结合方法2,我们就可以更懒了。
    2)我们也可以选择自己创建模板,这里我们可以参考MOMO大神的博客:
     
    这样合计合计,综合各种方法,我们就可以安心大胆的偷懒了!
    凡此种种,重复性的劳动总能找到偷懒的方法的!
  • 相关阅读:
    HQueue_Install_In_Ubuntu
    win10_64_ssh连接linux
    win10防火墙服务灰色解决办法
    打开houdini软件的脚本
    houdini_license_sever start and off
    Java关于Object类中equal方法的理解
    Java关于Object类中equal方法的理解
    单源最短路径
    单源最短路径
    最小生成树
  • 原文地址:https://www.cnblogs.com/wayland/p/4994626.html
Copyright © 2011-2022 走看看