28 [[nodiscard]]
const std::string&
Translate(
size_t pId)
const;
31 requires std::is_enum_v<E>
32 [[nodiscard]]
const std::string&
Translate(E pId)
const {
33 return Translate(
static_cast<std::underlying_type_t<E>
>(pId));
36 template<
typename Num>
37 requires std::is_integral_v<Num> && (!std::same_as<Num, size_t>)
38 [[nodiscard]]
const std::string&
Translate(Num pId)
const {
39 return Translate(
static_cast<size_t>(pId));
43 [[nodiscard]]
static const std::string&
STranslate(T pId) {
48 auto& translation = mTranslations.at(pLang);
49 translation.emplace_back(pText);
53 auto& translation = mTranslations.at(pLang);
54 translation.emplace_back(
reinterpret_cast<const char*
>(pText));
58 auto& translation = mTranslations.at(pLang);
59 translation.emplace_back(pText);
63 for (
const auto& value : pRange) {
74 requires std::is_enum_v<E>
76 return OverrideTranslation(pLanguage,
static_cast<std::underlying_type_t<E>
>(pTranslation), pText);
79 template<
typename Num>
80 requires std::is_integral_v<Num> && (!std::same_as<Num, size_t>)
91 std::array<std::vector<std::string>, 6> mTranslations;
93 std::vector<std::string>* mCurrentTranslation;
gwlanguage
Definition arcdps_structs_slim.h:162
@ GWL_ENG
Definition arcdps_structs_slim.h:163
Definition Localization.h:24
const std::string & Translate(size_t pId) const
Definition Localization.cpp:14
void OverrideTranslation(gwlanguage pLanguage, Num pTranslation, const std::string &pText)
Definition Localization.h:81
const std::string & Translate(E pId) const
Definition Localization.h:32
Localization()
Definition Localization.cpp:5
void ChangeLanguage(gwlanguage pLang)
Definition Localization.cpp:18
void OverrideTranslation(gwlanguage pLanguage, T pTranslation, const std::string &pText)
Definition Localization.h:86
const std::string & OverrideTranslation(gwlanguage pLanguage, E pTranslation, const std::string &pText)
Definition Localization.h:75
void AddTranslation(gwlanguage pLang, const char8_t *pText)
Definition Localization.h:52
static const std::string & STranslate(T pId)
Definition Localization.h:43
const std::string & Translate(Num pId) const
Definition Localization.h:38
void AddTranslation(gwlanguage pLang, const std::string &pText)
Definition Localization.h:57
void OverrideTranslation(gwlanguage pLanguage, size_t pTranslation, const std::string &pText)
Definition Localization.cpp:27
static void SChangeLanguage(gwlanguage pLang)
Definition Localization.cpp:23
void Load(gwlanguage pLang, const std::ranges::common_range auto &pRange)
Definition Localization.h:62
void AddTranslation(gwlanguage pLang, const char *pText)
Definition Localization.h:47
Definition Singleton.h:47
static T2 & instance()
Definition Singleton.h:51
Definition ArcdpsExtension.h:10