Ejemplo n.º 1
0
        private void InstallerWorkerMethod()
        {
            try
            {
                Console.WriteLine();

                string localNuterra = Path.Combine(Directory.GetCurrentDirectory(), "Nuterra_Data");

                var info = new ModificationInfo();
                info.TerraTechRoot = Path.GetDirectoryName(installSettings.TerraTechRoot);
                info.NuterraData   = localNuterra;
                info.InitDefaults();

                Console.WriteLine("Modding Assembly-CSharp.dll");
                InstallProgram.PerformInstall(info);
                Console.WriteLine();

                if (!ArePathsEqual(Directory.GetCurrentDirectory(), info.TerraTechRoot))
                {
                    CopyNuterraFiles(info, localNuterra);
                }
                else
                {
                    Console.WriteLine("You are running the installer from the terratech root directory, copying files is skipped");
                }

                Console.WriteLine();
                Console.WriteLine("Install succesfull");
                Console.WriteLine("Enjoy Nuterra :3");
            }
            catch (Exception ex)
            {
                Console.WriteLine();
                Console.WriteLine(ex.StackTrace);
                Console.WriteLine();
                Console.WriteLine(ex.Message);
                Console.WriteLine("Install failed");
            }
            finally
            {
                _installerThread = null;
                Invoke(new Action(() => { UpdateFromInstallSettings(logEvents: false); }));
            }
        }