server-master/srcs/WingsAPI.Game/Core/Multilanguage/IGameLanguageService.cs
2026-02-10 18:21:30 +01:00

39 lines
No EOL
1.2 KiB
C#

// WingsEmu
//
// Developed by NosWings Team
using System;
using PhoenixLib.MultiLanguage;
namespace WingsEmu.Game._i18n;
public interface IGameLanguageService : IGameDataLanguageService
{
/// <summary>
/// Will return the string by its Key & <see cref="RegionLanguageType" />
/// Used for plugins mainly
/// </summary>
/// <param name="key"></param>
/// <param name="lang"></param>
/// <returns></returns>
string GetLanguage(string key, RegionLanguageType lang);
string GetLanguageFormat(string key, RegionLanguageType lang, params object[] formatParams);
/// <summary>
/// Will return the string by its key & <see cref="RegionLanguageType" />
/// Used for ChickenAPI mainly
/// </summary>
/// <param name="key"></param>
/// <param name="lang"></param>
/// <returns></returns>
string GetLanguage<T>(T key, RegionLanguageType lang) where T : Enum;
/// <summary>
/// </summary>
/// <param name="key"></param>
/// <param name="lang"></param>
/// <param name="formatParams"></param>
/// <returns></returns>
string GetLanguageFormat<T>(T key, RegionLanguageType lang, params object[] formatParams) where T : Enum;
}