コード例 #1
0
        public static void BuildCode(CodeOptimization codeOptimization, GlobalConfig globalConfig)
        {
            List <string> codes;

            switch (globalConfig.CodeMode)
            {
            case CodeMode.Client:
                codes = new List <string>()
                {
                    "Model/Generate/Client",
                    "Model/Share",
                    "Hotfix/Share",
                    "Model/Client",
                    "ModelView/Client",
                    "Hotfix/Client",
                    "HotfixView/Client"
                };
                codes = GetRelativeDirs(codes);
                break;

            case CodeMode.Server:
                codes = new List <string>()
                {
                    "Model/Generate/Server",
                    "Model/Share",
                    "Hotfix/Share",
                    "Model/Server",
                    "Hotfix/Server",
                    "Model/Client",
                    "Hotfix/Client",
                };
                codes = GetRelativeDirs(codes);
                break;

            case CodeMode.ClientServer:
                codes = new List <string>()
                {
                    "Model/Generate/Server",
                    "Model/Share",
                    "Hotfix/Share",
                    "Model/Client",
                    "ModelView/Client",
                    "Hotfix/Client",
                    "HotfixView/Client",
                    "Model/Server",
                    "Hotfix/Server",
                };
                codes = GetRelativeDirs(codes);
                break;

            default:
                throw new Exception("not found enum");
            }

            BuildAssemblieEditor.BuildMuteAssembly("Code", codes, Array.Empty <string>(), codeOptimization);

            AfterCompiling();

            AssetDatabase.Refresh();
        }
コード例 #2
0
ファイル: ServerCommandLineEditor.cs プロジェクト: wqaetly/ET
        public void OnGUI()
        {
            if (GUILayout.Button("启动守护进程"))
            {
                string arguments = $"--AppType=Watcher --Process=1 --Console=1";
                ProcessHelper.Run("Server.exe", arguments, "../Bin/");
            }

            if (GUILayout.Button("启动机器人"))
            {
                string arguments = $"--AppType=Robot --Process=2 --Console=1";
                ProcessHelper.Run("Robot.exe", arguments, "../Bin/");
            }

            if (GUILayout.Button("启动服务器"))
            {
                string arguments = $"--AppType=Server --Console=1";
                ProcessHelper.Run("Server.exe", arguments, "../Bin/");
            }

            if (GUILayout.Button("构建DLL"))
            {
                BuildAssemblieEditor.BuildMuteAssembly();
            }

            if (GUILayout.Button("刷新资源"))
            {
                AssetDatabase.Refresh();
            }
        }
コード例 #3
0
 public static void BuildData()
 {
     BuildAssemblieEditor.BuildMuteAssembly("Data", new []
     {
         "Codes/Model/",
         "Codes/ModelView/",
     }, Array.Empty <string>(), CodeOptimization.Debug);
 }
コード例 #4
0
ファイル: BuildAssemblieEditor.cs プロジェクト: chanayy123/ET
 public static void BuildDll()
 {
     BuildAssemblieEditor.BuildMuteAssembly("Code", new []
     {
         "Codes/Model/",
         "Codes/ModelView/",
         "Codes/Hotfix/",
         "Codes/HotfixView/"
     });
     AssetDatabase.Refresh();
 }
コード例 #5
0
        public static void BuildHotfix(CodeOptimization codeOptimization, GlobalConfig globalConfig)
        {
            string[] logicFiles = Directory.GetFiles(Define.BuildOutputDir, "Hotfix_*");
            foreach (string file in logicFiles)
            {
                File.Delete(file);
            }

            int    random    = RandomHelper.RandomNumber(100000000, 999999999);
            string logicFile = $"Hotfix_{random}";

            List <string> codes;

            switch (globalConfig.CodeMode)
            {
            case CodeMode.Client:
                codes = new List <string>()
                {
                    "Hotfix/Share/",
                    "Hotfix/Client/",
                    "HotfixView/Client/",
                };
                codes = GetRelativeDirs(codes);
                break;

            case CodeMode.Server:
                codes = new List <string>()
                {
                    "Hotfix/Share/",
                    "Hotfix/Server/",
                    "Hotfix/Client/",
                };
                codes = GetRelativeDirs(codes);
                break;

            case CodeMode.ClientServer:
                codes = new List <string>()
                {
                    "Hotfix/Share/",
                    "Hotfix/Client/",
                    "HotfixView/Client/",
                    "Hotfix/Server/",
                };
                codes = GetRelativeDirs(codes);
                break;

            default:
                throw new Exception("not found enum");
            }

            BuildAssemblieEditor.BuildMuteAssembly(logicFile, codes, new[] { Path.Combine(Define.BuildOutputDir, "Model.dll") }, codeOptimization);
        }
コード例 #6
0
        public static void BuildCodeRelease()
        {
            BuildAssemblieEditor.BuildMuteAssembly("Code", new []
            {
                "Codes/Model/",
                "Codes/ModelView/",
                "Codes/Hotfix/",
                "Codes/HotfixView/"
            }, Array.Empty <string>(), CodeOptimization.Release);

            AfterCompiling();

            AssetDatabase.Refresh();
        }
コード例 #7
0
        public static void BuildCodeRelease()
        {
            string jstr         = File.ReadAllText("Assets/AssetsPackage/config.bytes");
            var    config       = LitJson.JsonMapper.ToObject <Dictionary <string, string> >(jstr);
            string assemblyName = "Code" + config["ResVer"];

            BuildAssemblieEditor.BuildMuteAssembly(assemblyName, new []
            {
                "Codes/Model/",
                "Codes/ModelView/",
                "Codes/Hotfix/",
                "Codes/HotfixView/"
            }, Array.Empty <string>(), CodeOptimization.Release);

            AfterCompiling(assemblyName);
        }
コード例 #8
0
        public static void BuildLogic()
        {
            string[] logicFiles = Directory.GetFiles(Define.BuildOutputDir, "Logic_*");
            foreach (string file in logicFiles)
            {
                File.Delete(file);
            }

            int    random    = RandomHelper.RandomNumber(100000000, 999999999);
            string logicFile = $"Logic_{random}";

            BuildAssemblieEditor.BuildMuteAssembly(logicFile, new []
            {
                "Codes/Hotfix/",
                "Codes/HotfixView/",
            }, new[] { Path.Combine(Define.BuildOutputDir, "Data.dll") }, CodeOptimization.Debug);
        }
コード例 #9
0
        public static void BuildModel(CodeOptimization codeOptimization, GlobalConfig globalConfig)
        {
            List <string> codes;

            switch (globalConfig.CodeMode)
            {
            case CodeMode.Client:
                codes = new List <string>()
                {
                    "Model/Generate/Client/",
                    "Model/Share/",
                    "Model/Client/",
                    "ModelView/Client/",
                };
                codes = GetRelativeDirs(codes);
                break;

            case CodeMode.Server:
                codes = new List <string>()
                {
                    "Model/Generate/Server/",
                    "Model/Share/",
                    "Model/Server/",
                    "Model/Client/",
                };
                codes = GetRelativeDirs(codes);
                break;

            case CodeMode.ClientServer:
                codes = new List <string>()
                {
                    "Model/Share/",
                    "Model/Client/",
                    "ModelView/Client/",
                    "Model/Generate/Server/",
                    "Model/Server/",
                };
                codes = GetRelativeDirs(codes);
                break;

            default:
                throw new Exception("not found enum");
            }

            BuildAssemblieEditor.BuildMuteAssembly("Model", codes, Array.Empty <string>(), codeOptimization);
        }