Feature: I18n for common output & Bug Fix

- Fix 8002 in Raid will cause problems
- Fix Group loading
This commit is contained in:
Somebody
2024-07-11 17:30:53 +08:00
parent 816fb39441
commit 3993435070
16 changed files with 215 additions and 75 deletions

View File

@@ -27,11 +27,11 @@ namespace EggLink.DanhengServer.Program
public static void Main(string[] args)
{
AppDomain.CurrentDomain.ProcessExit += (sender, eventArgs) => {
Console.WriteLine("Shutting down...");
logger.Info(I18nManager.Translate("Server.ServerInfo.Shutdown"));
PerformCleanup();
};
Console.CancelKeyPress += (sender, eventArgs) => {
Console.WriteLine("Cancel key pressed. Shutting down...");
logger.Info(I18nManager.Translate("Server.ServerInfo.CancelKeyPressed"));
eventArgs.Cancel = true;
Environment.Exit(0);
};
@@ -51,40 +51,40 @@ namespace EggLink.DanhengServer.Program
Logger.SetLogFile(file);
// Starting the server
logger.Info("Starting DanhengServer...");
logger.Info(I18nManager.Translate("Server.ServerInfo.StartingServer"));
// Load the config
logger.Info("Loading config...");
logger.Info(I18nManager.Translate("Server.ServerInfo.LoadingItem", I18nManager.Translate("Word.Config")));
try
{
ConfigManager.LoadConfig();
} catch (Exception e)
{
logger.Error("Failed to load config", e);
logger.Error(I18nManager.Translate("Server.ServerInfo.FailedToLoadItem", I18nManager.Translate("Word.Config")), e);
Console.ReadLine();
return;
}
// Load the language
logger.Info("Loading language...");
logger.Info(I18nManager.Translate("Server.ServerInfo.LoadingItem", I18nManager.Translate("Word.Language")));
try
{
I18nManager.LoadLanguage();
} catch (Exception e)
{
logger.Error("Failed to load language", e);
logger.Error(I18nManager.Translate("Server.ServerInfo.FailedToLoadItem", I18nManager.Translate("Word.Language")), e);
Console.ReadLine();
return;
}
// Load the game data
logger.Info("Loading game data...");
logger.Info(I18nManager.Translate("Server.ServerInfo.LoadingItem", I18nManager.Translate("Word.GameData")));
try
{
ResourceManager.LoadGameData();
} catch (Exception e)
{
logger.Error("Failed to load game data", e);
logger.Error(I18nManager.Translate("Server.ServerInfo.FailedToLoadItem", I18nManager.Translate("Word.GameData")), e);
Console.ReadLine();
return;
}
@@ -105,7 +105,7 @@ namespace EggLink.DanhengServer.Program
}
} catch (Exception e)
{
logger.Error("Failed to initialize database", e);
logger.Error(I18nManager.Translate("Server.ServerInfo.FailedToLoadItem", I18nManager.Translate("Word.Database")), e);
Console.ReadLine();
return;
}
@@ -116,20 +116,20 @@ namespace EggLink.DanhengServer.Program
CommandManager.RegisterCommand();
} catch (Exception e)
{
logger.Error("Failed to initialize command manager", e);
logger.Error(I18nManager.Translate("Server.ServerInfo.FailedToInitializeItem", I18nManager.Translate("Word.Command")), e);
Console.ReadLine();
return;
}
// Load the plugins
logger.Info("Loading plugins...");
logger.Info(I18nManager.Translate("Server.ServerInfo.LoadingItem", I18nManager.Translate("Word.Plugin")));
try
{
PluginManager.LoadPlugins();
}
catch (Exception e)
{
logger.Error("Failed to load plugins", e);
logger.Error(I18nManager.Translate("Server.ServerInfo.FailedToLoadItem", I18nManager.Translate("Word.Plugin")), e);
Console.ReadLine();
return;
}
@@ -212,18 +212,18 @@ namespace EggLink.DanhengServer.Program
HandlerManager.Init();
WebProgram.Main([], GetConfig().HttpServer.PublicPort, GetConfig().HttpServer.GetDisplayAddress());
logger.Info($"Dispatch Server is running on {GetConfig().HttpServer.GetDisplayAddress()}");
logger.Info(I18nManager.Translate("Server.ServerInfo.ServerRunning", I18nManager.Translate("Word.Dispatch"), GetConfig().HttpServer.GetDisplayAddress()));
Listener.StartListener();
var elapsed = DateTime.Now - time;
logger.Info($"Done in {elapsed.TotalSeconds.ToString()[..4]}s! Type '/help' to get help of commands.");
logger.Info(I18nManager.Translate("Server.ServerInfo.ServerStarted", elapsed.TotalSeconds.ToString()[..4]));
GenerateLogMap();
if (GetConfig().ServerOption.EnableMission)
{
logger.Warn("Mission system is enabled. This is a feature that is still in development and may not work as expected. If you encounter any issues, please report them to the developers.");
logger.Warn(I18nManager.Translate("Server.ServerInfo.MissionEnabled"));
}
CommandManager.Start();
}