45 lines
1.5 KiB
C#
45 lines
1.5 KiB
C#
using System;
|
|
using DTLib;
|
|
using DTLib.Extensions;
|
|
using DTLib.Filesystem;
|
|
using DTLib.Logging;
|
|
|
|
static class ParadoxRusLocalisationGen
|
|
{
|
|
static ConsoleLogger logger = new ConsoleLogger("autoloc-logs", "merger");
|
|
|
|
static void Main(string[] args)
|
|
{
|
|
try
|
|
{
|
|
if (args.Length != 2 || args[0] == "/?" || args[0] == "help" || args[0] == "--help")
|
|
{
|
|
Console.WriteLine("[dir with eng localisation] [dir with rus localisation]");
|
|
return;
|
|
}
|
|
|
|
string engDir = args[0];
|
|
string rusir = args[1];
|
|
foreach (string enfFileName in Directory.GetAllFiles(engDir))
|
|
{
|
|
string rusFileName = enfFileName
|
|
.Replace(engDir, rusir)
|
|
.Replace("l_english", "l_russian");
|
|
if (!File.Exists(rusFileName))
|
|
{
|
|
string text = File.ReadAllText(enfFileName)
|
|
.Replace("l_english:", "l_russian: ");
|
|
byte[] bytes = StringConverter.UTF8BOM.GetBytes(text);
|
|
File.WriteAllBytes(rusFileName, bytes);
|
|
logger.Log("g", $"file {rusFileName} created");
|
|
}
|
|
else logger.Log("y", $"file {rusFileName} already exists");
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
logger.Log("r", $"{ex.Message}\n{ex.StackTrace}");
|
|
}
|
|
Console.ResetColor();
|
|
}
|
|
} |