From 0348489578f689730c8f062af6df44390c34b021 Mon Sep 17 00:00:00 2001 From: Polypheides Date: Fri, 28 Mar 2025 04:27:01 +0100 Subject: [PATCH] Does it have my language? Yes. Yes. --- src/game/client/gametextcommon.cpp | 517 ++++++++++++++++++++++- src/game/client/gametextcommon.h | 170 ++++++++ src/game/client/gametextfile.cpp | 521 +++++++++++++++++++++++- src/tools/gametextcompiler/src/main.cpp | 4 +- 4 files changed, 1204 insertions(+), 8 deletions(-) diff --git a/src/game/client/gametextcommon.cpp b/src/game/client/gametextcommon.cpp index 4f060e7c1..27ec610c5 100644 --- a/src/game/client/gametextcommon.cpp +++ b/src/game/client/gametextcommon.cpp @@ -31,9 +31,179 @@ constexpr const char *const s_localization_zh = "Chinese"; constexpr const char *const s_localization___ = ""; constexpr const char *const s_localization_bp = "Brazilian"; constexpr const char *const s_localization_pl = "Polish"; -constexpr const char *const s_localization_uk = "Unknown"; +constexpr const char *const s_localization_un = "Unknown"; constexpr const char *const s_localization_ru = "Russian"; constexpr const char *const s_localization_ar = "Arabic"; +constexpr const char *const s_localization_uk = "Ukrainian"; +constexpr const char *const s_localization_sv = "Swedish"; +constexpr const char *const s_localization_ab = "Abkhazian"; +constexpr const char *const s_localization_aa = "Afar"; +constexpr const char *const s_localization_af = "Afrikaans"; +constexpr const char *const s_localization_ak = "Akan"; +constexpr const char *const s_localization_sq = "Albanian"; +constexpr const char *const s_localization_am = "Amharic"; +constexpr const char *const s_localization_an = "Aragonese"; +constexpr const char *const s_localization_hy = "Armenian"; +constexpr const char *const s_localization_as = "Assamese"; +constexpr const char *const s_localization_av = "Avaric"; +constexpr const char *const s_localization_ae = "Avestan"; +constexpr const char *const s_localization_ay = "Aymara"; +constexpr const char *const s_localization_az = "Azerbaijani"; +constexpr const char *const s_localization_bm = "Bambara"; +constexpr const char *const s_localization_ba = "Bashkir"; +constexpr const char *const s_localization_eu = "Basque"; +constexpr const char *const s_localization_be = "Belarusian"; +constexpr const char *const s_localization_bn = "Bengali"; +constexpr const char *const s_localization_bi = "Bislama"; +constexpr const char *const s_localization_bs = "Bosnian"; +constexpr const char *const s_localization_br = "Breton"; +constexpr const char *const s_localization_bg = "Bulgarian"; +constexpr const char *const s_localization_my = "Burmese"; +constexpr const char *const s_localization_ca = "Catalan"; +constexpr const char *const s_localization_ch = "Chamorro"; +constexpr const char *const s_localization_ce = "Chechen"; +constexpr const char *const s_localization_ny = "Chichewa"; +constexpr const char *const s_localization_cu = "Slavonic"; +constexpr const char *const s_localization_cv = "Chuvash"; +constexpr const char *const s_localization_kw = "Cornish"; +constexpr const char *const s_localization_co = "Corsican"; +constexpr const char *const s_localization_cr = "Cree"; +constexpr const char *const s_localization_hr = "Croatian"; +constexpr const char *const s_localization_cs = "Czech"; +constexpr const char *const s_localization_da = "Danish"; +constexpr const char *const s_localization_dv = "Divehi"; +constexpr const char *const s_localization_nl = "Dutch"; +constexpr const char *const s_localization_dz = "Dzongkha"; +constexpr const char *const s_localization_eo = "Esperanto"; +constexpr const char *const s_localization_et = "Estonian"; +constexpr const char *const s_localization_ee = "Ewe"; +constexpr const char *const s_localization_fo = "Faroese"; +constexpr const char *const s_localization_fj = "Fijian"; +constexpr const char *const s_localization_fi = "Finnish"; +constexpr const char *const s_localization_fy = "Frisian"; +constexpr const char *const s_localization_ff = "Fulah"; +constexpr const char *const s_localization_gd = "Gaelic"; +constexpr const char *const s_localization_gl = "Galician"; +constexpr const char *const s_localization_lg = "Ganda"; +constexpr const char *const s_localization_ka = "Georgian"; +constexpr const char *const s_localization_el = "Greek"; +constexpr const char *const s_localization_kl = "Kalaallisut"; +constexpr const char *const s_localization_gn = "Guarani"; +constexpr const char *const s_localization_gu = "Gujarati"; +constexpr const char *const s_localization_ht = "Haitian"; +constexpr const char *const s_localization_ha = "Hausa"; +constexpr const char *const s_localization_he = "Hebrew"; +constexpr const char *const s_localization_hz = "Herero"; +constexpr const char *const s_localization_hi = "Hindi"; +constexpr const char *const s_localization_ho = "HiriMotu"; +constexpr const char *const s_localization_hu = "Hungarian"; +constexpr const char *const s_localization_is = "Icelandic"; +constexpr const char *const s_localization_io = "Ido"; +constexpr const char *const s_localization_ig = "Igbo"; +constexpr const char *const s_localization_id = "Indonesian"; +constexpr const char *const s_localization_iu = "Inuktitut"; +constexpr const char *const s_localization_ik = "Inupiaq"; +constexpr const char *const s_localization_ga = "Irish"; +constexpr const char *const s_localization_jv = "Javanese"; +constexpr const char *const s_localization_kn = "Kannada"; +constexpr const char *const s_localization_kr = "Kanuri"; +constexpr const char *const s_localization_ks = "Kashmiri"; +constexpr const char *const s_localization_kk = "Kazakh"; +constexpr const char *const s_localization_km = "Khmer"; +constexpr const char *const s_localization_ki = "Kikuyu"; +constexpr const char *const s_localization_rw = "Kinyarwanda"; +constexpr const char *const s_localization_ky = "Kyrgyz"; +constexpr const char *const s_localization_kv = "Komi"; +constexpr const char *const s_localization_kg = "Kongo"; +constexpr const char *const s_localization_kj = "Kuanyama"; +constexpr const char *const s_localization_ku = "Kurdish"; +constexpr const char *const s_localization_lo = "Lao"; +constexpr const char *const s_localization_la = "Latin"; +constexpr const char *const s_localization_lv = "Latvian"; +constexpr const char *const s_localization_li = "Limburgan"; +constexpr const char *const s_localization_ln = "Lingala"; +constexpr const char *const s_localization_lt = "Lithuanian"; +constexpr const char *const s_localization_lu = "LubaKatanga"; +constexpr const char *const s_localization_lb = "Luxembourgish"; +constexpr const char *const s_localization_mk = "Macedonian"; +constexpr const char *const s_localization_mg = "Malagasy"; +constexpr const char *const s_localization_ms = "Malay"; +constexpr const char *const s_localization_ml = "Malayalam"; +constexpr const char *const s_localization_mt = "Maltese"; +constexpr const char *const s_localization_gv = "Manx"; +constexpr const char *const s_localization_mi = "Maori"; +constexpr const char *const s_localization_mr = "Marathi"; +constexpr const char *const s_localization_mh = "Marshallese"; +constexpr const char *const s_localization_mn = "Mongolian"; +constexpr const char *const s_localization_na = "Nauru"; +constexpr const char *const s_localization_nv = "Navajo"; +constexpr const char *const s_localization_nd = "NorthNdebele"; +constexpr const char *const s_localization_nr = "SouthNdebele"; +constexpr const char *const s_localization_ng = "Ndonga"; +constexpr const char *const s_localization_ne = "Nepali"; +constexpr const char *const s_localization_no = "Norwegian"; +constexpr const char *const s_localization_nb = "NorwegianBokmal"; +constexpr const char *const s_localization_nn = "NorwegianNynorsk"; +constexpr const char *const s_localization_oc = "Occitan"; +constexpr const char *const s_localization_oj = "Ojibwa"; +constexpr const char *const s_localization_or = "Oriya"; +constexpr const char *const s_localization_om = "Oromo"; +constexpr const char *const s_localization_os = "Ossetian"; +constexpr const char *const s_localization_pi = "Pali"; +constexpr const char *const s_localization_ps = "Pushto"; +constexpr const char *const s_localization_fa = "Persian"; +constexpr const char *const s_localization_pt = "Portuguese"; +constexpr const char *const s_localization_pa = "Punjabi"; +constexpr const char *const s_localization_qu = "Quechua"; +constexpr const char *const s_localization_ro = "Romanian"; +constexpr const char *const s_localization_rm = "Romansh"; +constexpr const char *const s_localization_rn = "Rundi"; +constexpr const char *const s_localization_se = "Sami"; +constexpr const char *const s_localization_sm = "Samoan"; +constexpr const char *const s_localization_sg = "Sango"; +constexpr const char *const s_localization_sa = "Sanskrit"; +constexpr const char *const s_localization_sc = "Sardinian"; +constexpr const char *const s_localization_sr = "Serbian"; +constexpr const char *const s_localization_sn = "Shona"; +constexpr const char *const s_localization_sd = "Sindhi"; +constexpr const char *const s_localization_si = "Sinhala"; +constexpr const char *const s_localization_sk = "Slovak"; +constexpr const char *const s_localization_sl = "Slovenian"; +constexpr const char *const s_localization_so = "Somali"; +constexpr const char *const s_localization_st = "SouthernSotho"; +constexpr const char *const s_localization_su = "Sundanese"; +constexpr const char *const s_localization_sw = "Swahili"; +constexpr const char *const s_localization_ss = "Swati"; +constexpr const char *const s_localization_tl = "Tagalog"; +constexpr const char *const s_localization_ty = "Tahitian"; +constexpr const char *const s_localization_tg = "Tajik"; +constexpr const char *const s_localization_ta = "Tamil"; +constexpr const char *const s_localization_tt = "Tatar"; +constexpr const char *const s_localization_te = "Telugu"; +constexpr const char *const s_localization_th = "Thai"; +constexpr const char *const s_localization_bo = "Tibetan"; +constexpr const char *const s_localization_ti = "Tigrinya"; +constexpr const char *const s_localization_to = "Tonga"; +constexpr const char *const s_localization_ts = "Tsonga"; +constexpr const char *const s_localization_tn = "Tswana"; +constexpr const char *const s_localization_tr = "Turkish"; +constexpr const char *const s_localization_tk = "Turkmen"; +constexpr const char *const s_localization_tw = "Twi"; +constexpr const char *const s_localization_ug = "Uighur"; +constexpr const char *const s_localization_ur = "Urdu"; +constexpr const char *const s_localization_uz = "Uzbek"; +constexpr const char *const s_localization_ve = "Venda"; +constexpr const char *const s_localization_vi = "Vietnamese"; +constexpr const char *const s_localization_vo = "Volapuk"; +constexpr const char *const s_localization_wa = "Walloon"; +constexpr const char *const s_localization_cy = "Welsh"; +constexpr const char *const s_localization_wo = "Wolof"; +constexpr const char *const s_localization_xh = "Xhosa"; +constexpr const char *const s_localization_ii = "SichuanYi"; +constexpr const char *const s_localization_yi = "Yiddish"; +constexpr const char *const s_localization_yo = "Yoruba"; +constexpr const char *const s_localization_za = "Zhuang"; +constexpr const char *const s_localization_zu = "Zulu"; constexpr const char *const s_localizations[] = { s_localization_us, @@ -49,9 +219,179 @@ constexpr const char *const s_localizations[] = { s_localization___, s_localization_bp, s_localization_pl, - s_localization_uk, + s_localization_un, s_localization_ru, s_localization_ar, + s_localization_uk, + s_localization_sv, + s_localization_ab, + s_localization_aa, + s_localization_af, + s_localization_ak, + s_localization_sq, + s_localization_am, + s_localization_an, + s_localization_hy, + s_localization_as, + s_localization_av, + s_localization_ae, + s_localization_ay, + s_localization_az, + s_localization_bm, + s_localization_ba, + s_localization_eu, + s_localization_be, + s_localization_bn, + s_localization_bi, + s_localization_bs, + s_localization_br, + s_localization_bg, + s_localization_my, + s_localization_ca, + s_localization_ch, + s_localization_ce, + s_localization_ny, + s_localization_cu, + s_localization_cv, + s_localization_kw, + s_localization_co, + s_localization_cr, + s_localization_hr, + s_localization_cs, + s_localization_da, + s_localization_dv, + s_localization_nl, + s_localization_dz, + s_localization_eo, + s_localization_et, + s_localization_ee, + s_localization_fo, + s_localization_fj, + s_localization_fi, + s_localization_fy, + s_localization_ff, + s_localization_gd, + s_localization_gl, + s_localization_lg, + s_localization_ka, + s_localization_el, + s_localization_kl, + s_localization_gn, + s_localization_gu, + s_localization_ht, + s_localization_ha, + s_localization_he, + s_localization_hz, + s_localization_hi, + s_localization_ho, + s_localization_hu, + s_localization_is, + s_localization_io, + s_localization_ig, + s_localization_id, + s_localization_iu, + s_localization_ik, + s_localization_ga, + s_localization_jv, + s_localization_kn, + s_localization_kr, + s_localization_ks, + s_localization_kk, + s_localization_km, + s_localization_ki, + s_localization_rw, + s_localization_ky, + s_localization_kv, + s_localization_kg, + s_localization_kj, + s_localization_ku, + s_localization_lo, + s_localization_la, + s_localization_lv, + s_localization_li, + s_localization_ln, + s_localization_lt, + s_localization_lu, + s_localization_lb, + s_localization_mk, + s_localization_mg, + s_localization_ms, + s_localization_ml, + s_localization_mt, + s_localization_gv, + s_localization_mi, + s_localization_mr, + s_localization_mh, + s_localization_mn, + s_localization_na, + s_localization_nv, + s_localization_nd, + s_localization_nr, + s_localization_ng, + s_localization_ne, + s_localization_no, + s_localization_nb, + s_localization_nn, + s_localization_oc, + s_localization_oj, + s_localization_or, + s_localization_om, + s_localization_os, + s_localization_pi, + s_localization_ps, + s_localization_fa, + s_localization_pt, + s_localization_pa, + s_localization_qu, + s_localization_ro, + s_localization_rm, + s_localization_rn, + s_localization_se, + s_localization_sm, + s_localization_sg, + s_localization_sa, + s_localization_sc, + s_localization_sr, + s_localization_sn, + s_localization_sd, + s_localization_si, + s_localization_sk, + s_localization_sl, + s_localization_so, + s_localization_st, + s_localization_su, + s_localization_sw, + s_localization_ss, + s_localization_tl, + s_localization_ty, + s_localization_tg, + s_localization_ta, + s_localization_tt, + s_localization_te, + s_localization_th, + s_localization_bo, + s_localization_ti, + s_localization_to, + s_localization_ts, + s_localization_tn, + s_localization_tr, + s_localization_tk, + s_localization_tw, + s_localization_ug, + s_localization_ur, + s_localization_uz, + s_localization_ve, + s_localization_vi, + s_localization_vo, + s_localization_wa, + s_localization_cy, + s_localization_wo, + s_localization_xh, + s_localization_ii, + s_localization_yi, + s_localization_yo, + s_localization_za, + s_localization_zu }; static_assert(s_localization_us == s_localizations[size_t(LanguageID::US)]); @@ -67,9 +407,180 @@ static_assert(s_localization_zh == s_localizations[size_t(LanguageID::CHINESE)]) static_assert(s_localization___ == s_localizations[size_t(LanguageID::UNUSED_1)]); static_assert(s_localization_bp == s_localizations[size_t(LanguageID::BRAZILIAN)]); static_assert(s_localization_pl == s_localizations[size_t(LanguageID::POLISH)]); -static_assert(s_localization_uk == s_localizations[size_t(LanguageID::UNKNOWN)]); +static_assert(s_localization_un == s_localizations[size_t(LanguageID::UNKNOWN)]); static_assert(s_localization_ru == s_localizations[size_t(LanguageID::RUSSIAN)]); static_assert(s_localization_ar == s_localizations[size_t(LanguageID::ARABIC)]); +static_assert(s_localization_uk == s_localizations[size_t(LanguageID::UKRAINIAN)]); +static_assert(s_localization_sv == s_localizations[size_t(LanguageID::SWEDISH)]); +static_assert(s_localization_ab == s_localizations[size_t(LanguageID::ABKHAZIAN)]); +static_assert(s_localization_aa == s_localizations[size_t(LanguageID::AFAR)]); +static_assert(s_localization_af == s_localizations[size_t(LanguageID::AFRIKAANS)]); +static_assert(s_localization_ak == s_localizations[size_t(LanguageID::AKAN)]); +static_assert(s_localization_sq == s_localizations[size_t(LanguageID::ALBANIAN)]); +static_assert(s_localization_am == s_localizations[size_t(LanguageID::AMHARIC)]); +static_assert(s_localization_an == s_localizations[size_t(LanguageID::ARAGONESE)]); +static_assert(s_localization_hy == s_localizations[size_t(LanguageID::ARMENIAN)]); +static_assert(s_localization_as == s_localizations[size_t(LanguageID::ASSAMESE)]); +static_assert(s_localization_av == s_localizations[size_t(LanguageID::AVARIC)]); +static_assert(s_localization_ae == s_localizations[size_t(LanguageID::AVESTAN)]); +static_assert(s_localization_ay == s_localizations[size_t(LanguageID::AYMARA)]); +static_assert(s_localization_az == s_localizations[size_t(LanguageID::AZERBAIJANI)]); +static_assert(s_localization_bm == s_localizations[size_t(LanguageID::BAMBARA)]); +static_assert(s_localization_ba == s_localizations[size_t(LanguageID::BASHKIR)]); +static_assert(s_localization_eu == s_localizations[size_t(LanguageID::BASQUE)]); +static_assert(s_localization_be == s_localizations[size_t(LanguageID::BELARUSIAN)]); +static_assert(s_localization_bn == s_localizations[size_t(LanguageID::BENGALI)]); +static_assert(s_localization_bi == s_localizations[size_t(LanguageID::BISLAMA)]); +static_assert(s_localization_bs == s_localizations[size_t(LanguageID::BOSNIAN)]); +static_assert(s_localization_br == s_localizations[size_t(LanguageID::BRETON)]); +static_assert(s_localization_bg == s_localizations[size_t(LanguageID::BULGARIAN)]); +static_assert(s_localization_my == s_localizations[size_t(LanguageID::BURMESE)]); +static_assert(s_localization_ca == s_localizations[size_t(LanguageID::CATALAN)]); +static_assert(s_localization_ch == s_localizations[size_t(LanguageID::CHAMORRO)]); +static_assert(s_localization_ce == s_localizations[size_t(LanguageID::CHECHEN)]); +static_assert(s_localization_ny == s_localizations[size_t(LanguageID::CHICHEWA)]); +static_assert(s_localization_cu == s_localizations[size_t(LanguageID::SLAVONIC)]); +static_assert(s_localization_cv == s_localizations[size_t(LanguageID::CHUVASH)]); +static_assert(s_localization_kw == s_localizations[size_t(LanguageID::CORNISH)]); +static_assert(s_localization_co == s_localizations[size_t(LanguageID::CORSICAN)]); +static_assert(s_localization_cr == s_localizations[size_t(LanguageID::CREE)]); +static_assert(s_localization_hr == s_localizations[size_t(LanguageID::CROATIAN)]); +static_assert(s_localization_cs == s_localizations[size_t(LanguageID::CZECH)]); +static_assert(s_localization_da == s_localizations[size_t(LanguageID::DANISH)]); +static_assert(s_localization_dv == s_localizations[size_t(LanguageID::DIVEHI)]); +static_assert(s_localization_nl == s_localizations[size_t(LanguageID::DUTCH)]); +static_assert(s_localization_dz == s_localizations[size_t(LanguageID::DZONGKHA)]); +static_assert(s_localization_eo == s_localizations[size_t(LanguageID::ESPERANTO)]); +static_assert(s_localization_et == s_localizations[size_t(LanguageID::ESTONIAN)]); +static_assert(s_localization_ee == s_localizations[size_t(LanguageID::EWE)]); +static_assert(s_localization_fo == s_localizations[size_t(LanguageID::FAROESE)]); +static_assert(s_localization_fj == s_localizations[size_t(LanguageID::FIJIAN)]); +static_assert(s_localization_fi == s_localizations[size_t(LanguageID::FINNISH)]); +static_assert(s_localization_fy == s_localizations[size_t(LanguageID::FRISIAN)]); +static_assert(s_localization_ff == s_localizations[size_t(LanguageID::FULAH)]); +static_assert(s_localization_gd == s_localizations[size_t(LanguageID::GAELIC)]); +static_assert(s_localization_gl == s_localizations[size_t(LanguageID::GALICIAN)]); +static_assert(s_localization_lg == s_localizations[size_t(LanguageID::GANDA)]); +static_assert(s_localization_ka == s_localizations[size_t(LanguageID::GEORGIAN)]); +static_assert(s_localization_el == s_localizations[size_t(LanguageID::GREEK)]); +static_assert(s_localization_kl == s_localizations[size_t(LanguageID::KALAALLISUT)]); +static_assert(s_localization_gn == s_localizations[size_t(LanguageID::GUARANI)]); +static_assert(s_localization_gu == s_localizations[size_t(LanguageID::GUJARATI)]); +static_assert(s_localization_ht == s_localizations[size_t(LanguageID::HAITIAN)]); +static_assert(s_localization_ha == s_localizations[size_t(LanguageID::HAUSA)]); +static_assert(s_localization_he == s_localizations[size_t(LanguageID::HEBREW)]); +static_assert(s_localization_hz == s_localizations[size_t(LanguageID::HERERO)]); +static_assert(s_localization_hi == s_localizations[size_t(LanguageID::HINDI)]); +static_assert(s_localization_ho == s_localizations[size_t(LanguageID::HIRIMOTU)]); +static_assert(s_localization_hu == s_localizations[size_t(LanguageID::HUNGARIAN)]); +static_assert(s_localization_is == s_localizations[size_t(LanguageID::ICELANDIC)]); +static_assert(s_localization_io == s_localizations[size_t(LanguageID::IDO)]); +static_assert(s_localization_ig == s_localizations[size_t(LanguageID::IGBO)]); +static_assert(s_localization_id == s_localizations[size_t(LanguageID::INDONESIAN)]); +static_assert(s_localization_iu == s_localizations[size_t(LanguageID::INUKTITUT)]); +static_assert(s_localization_ik == s_localizations[size_t(LanguageID::INUPIAQ)]); +static_assert(s_localization_ga == s_localizations[size_t(LanguageID::IRISH)]); +static_assert(s_localization_jv == s_localizations[size_t(LanguageID::JAVANESE)]); +static_assert(s_localization_kn == s_localizations[size_t(LanguageID::KANNADA)]); +static_assert(s_localization_kr == s_localizations[size_t(LanguageID::KANURI)]); +static_assert(s_localization_ks == s_localizations[size_t(LanguageID::KASHMIRI)]); +static_assert(s_localization_kk == s_localizations[size_t(LanguageID::KAZAKH)]); +static_assert(s_localization_km == s_localizations[size_t(LanguageID::KHMER)]); +static_assert(s_localization_ki == s_localizations[size_t(LanguageID::KIKUYU)]); +static_assert(s_localization_rw == s_localizations[size_t(LanguageID::KINYARWANDA)]); +static_assert(s_localization_ky == s_localizations[size_t(LanguageID::KYRGYZ)]); +static_assert(s_localization_kv == s_localizations[size_t(LanguageID::KOMI)]); +static_assert(s_localization_kg == s_localizations[size_t(LanguageID::KONGO)]); +static_assert(s_localization_kj == s_localizations[size_t(LanguageID::KUANYAMA)]); +static_assert(s_localization_ku == s_localizations[size_t(LanguageID::KURDISH)]); +static_assert(s_localization_lo == s_localizations[size_t(LanguageID::LAO)]); +static_assert(s_localization_la == s_localizations[size_t(LanguageID::LATIN)]); +static_assert(s_localization_lv == s_localizations[size_t(LanguageID::LATVIAN)]); +static_assert(s_localization_li == s_localizations[size_t(LanguageID::LIMBURGAN)]); +static_assert(s_localization_ln == s_localizations[size_t(LanguageID::LINGALA)]); +static_assert(s_localization_lt == s_localizations[size_t(LanguageID::LITHUANIAN)]); +static_assert(s_localization_lu == s_localizations[size_t(LanguageID::LUBAKATANGA)]); +static_assert(s_localization_lb == s_localizations[size_t(LanguageID::LUXEMBOURGISH)]); +static_assert(s_localization_mk == s_localizations[size_t(LanguageID::MACEDONIAN)]); +static_assert(s_localization_mg == s_localizations[size_t(LanguageID::MALAGASY)]); +static_assert(s_localization_ms == s_localizations[size_t(LanguageID::MALAY)]); +static_assert(s_localization_ml == s_localizations[size_t(LanguageID::MALAYALAM)]); +static_assert(s_localization_mt == s_localizations[size_t(LanguageID::MALTESE)]); +static_assert(s_localization_gv == s_localizations[size_t(LanguageID::MANX)]); +static_assert(s_localization_mi == s_localizations[size_t(LanguageID::MAORI)]); +static_assert(s_localization_mr == s_localizations[size_t(LanguageID::MARATHI)]); +static_assert(s_localization_mh == s_localizations[size_t(LanguageID::MARSHALLESE)]); +static_assert(s_localization_mn == s_localizations[size_t(LanguageID::MONGOLIAN)]); +static_assert(s_localization_na == s_localizations[size_t(LanguageID::NAURU)]); +static_assert(s_localization_nv == s_localizations[size_t(LanguageID::NAVAJO)]); +static_assert(s_localization_nd == s_localizations[size_t(LanguageID::NORTHNDEBELE)]); +static_assert(s_localization_nr == s_localizations[size_t(LanguageID::SOUTHNDEBELE)]); +static_assert(s_localization_ng == s_localizations[size_t(LanguageID::NDONGA)]); +static_assert(s_localization_ne == s_localizations[size_t(LanguageID::NEPALI)]); +static_assert(s_localization_no == s_localizations[size_t(LanguageID::NORWEGIAN)]); +static_assert(s_localization_nb == s_localizations[size_t(LanguageID::NORWEGIANBOKMAL)]); +static_assert(s_localization_nn == s_localizations[size_t(LanguageID::NORWEGIANNYNORSK)]); +static_assert(s_localization_oc == s_localizations[size_t(LanguageID::OCCITAN)]); +static_assert(s_localization_oj == s_localizations[size_t(LanguageID::OJIBWA)]); +static_assert(s_localization_or == s_localizations[size_t(LanguageID::ORIYA)]); +static_assert(s_localization_om == s_localizations[size_t(LanguageID::OROMO)]); +static_assert(s_localization_os == s_localizations[size_t(LanguageID::OSSETIAN)]); +static_assert(s_localization_pi == s_localizations[size_t(LanguageID::PALI)]); +static_assert(s_localization_ps == s_localizations[size_t(LanguageID::PASHTO)]); +static_assert(s_localization_fa == s_localizations[size_t(LanguageID::PERSIAN)]); +static_assert(s_localization_pt == s_localizations[size_t(LanguageID::PORTUGUESE)]); +static_assert(s_localization_pa == s_localizations[size_t(LanguageID::PUNJABI)]); +static_assert(s_localization_qu == s_localizations[size_t(LanguageID::QUECHUA)]); +static_assert(s_localization_ro == s_localizations[size_t(LanguageID::ROMANIAN)]); +static_assert(s_localization_rm == s_localizations[size_t(LanguageID::ROMANSH)]); +static_assert(s_localization_rn == s_localizations[size_t(LanguageID::RUNDI)]); +static_assert(s_localization_se == s_localizations[size_t(LanguageID::SAMI)]); +static_assert(s_localization_sm == s_localizations[size_t(LanguageID::SAMOAN)]); +static_assert(s_localization_sg == s_localizations[size_t(LanguageID::SANGO)]); +static_assert(s_localization_sa == s_localizations[size_t(LanguageID::SANSKRIT)]); +static_assert(s_localization_sc == s_localizations[size_t(LanguageID::SARDINIAN)]); +static_assert(s_localization_sr == s_localizations[size_t(LanguageID::SERBIAN)]); +static_assert(s_localization_sn == s_localizations[size_t(LanguageID::SHONA)]); +static_assert(s_localization_sd == s_localizations[size_t(LanguageID::SINDHI)]); +static_assert(s_localization_si == s_localizations[size_t(LanguageID::SINHALA)]); +static_assert(s_localization_sk == s_localizations[size_t(LanguageID::SLOVAK)]); +static_assert(s_localization_sl == s_localizations[size_t(LanguageID::SLOVENIAN)]); +static_assert(s_localization_so == s_localizations[size_t(LanguageID::SOMALI)]); +static_assert(s_localization_st == s_localizations[size_t(LanguageID::SOUTHERNSOTHO)]); +static_assert(s_localization_su == s_localizations[size_t(LanguageID::SUNDANESE)]); +static_assert(s_localization_sw == s_localizations[size_t(LanguageID::SWAHILI)]); +static_assert(s_localization_ss == s_localizations[size_t(LanguageID::SWATI)]); +static_assert(s_localization_tl == s_localizations[size_t(LanguageID::TAGALOG)]); +static_assert(s_localization_ty == s_localizations[size_t(LanguageID::TAHITIAN)]); +static_assert(s_localization_tg == s_localizations[size_t(LanguageID::TAJIK)]); +static_assert(s_localization_ta == s_localizations[size_t(LanguageID::TAMIL)]); +static_assert(s_localization_tt == s_localizations[size_t(LanguageID::TATAR)]); +static_assert(s_localization_te == s_localizations[size_t(LanguageID::TELUGU)]); +static_assert(s_localization_th == s_localizations[size_t(LanguageID::THAI)]); +static_assert(s_localization_bo == s_localizations[size_t(LanguageID::TIBETAN)]); +static_assert(s_localization_ti == s_localizations[size_t(LanguageID::TIGRINYA)]); +static_assert(s_localization_to == s_localizations[size_t(LanguageID::TONGA)]); +static_assert(s_localization_ts == s_localizations[size_t(LanguageID::TSONGA)]); +static_assert(s_localization_tn == s_localizations[size_t(LanguageID::TSWANA)]); +static_assert(s_localization_tr == s_localizations[size_t(LanguageID::TURKISH)]); +static_assert(s_localization_tk == s_localizations[size_t(LanguageID::TURKMEN)]); +static_assert(s_localization_tw == s_localizations[size_t(LanguageID::TWI)]); +static_assert(s_localization_ug == s_localizations[size_t(LanguageID::UIGHUR)]); +static_assert(s_localization_ur == s_localizations[size_t(LanguageID::URDU)]); +static_assert(s_localization_uz == s_localizations[size_t(LanguageID::UZBEK)]); +static_assert(s_localization_ve == s_localizations[size_t(LanguageID::VENDA)]); +static_assert(s_localization_vi == s_localizations[size_t(LanguageID::VIETNAMESE)]); +static_assert(s_localization_vo == s_localizations[size_t(LanguageID::VOLAPUK)]); +static_assert(s_localization_wa == s_localizations[size_t(LanguageID::WALLOON)]); +static_assert(s_localization_cy == s_localizations[size_t(LanguageID::WELSH)]); +static_assert(s_localization_wo == s_localizations[size_t(LanguageID::WOLOF)]); +static_assert(s_localization_xh == s_localizations[size_t(LanguageID::XHOSA)]); +static_assert(s_localization_ii == s_localizations[size_t(LanguageID::SICHUANYI)]); +static_assert(s_localization_yi == s_localizations[size_t(LanguageID::YIDDISH)]); +static_assert(s_localization_yo == s_localizations[size_t(LanguageID::YORUBA)]); +static_assert(s_localization_za == s_localizations[size_t(LanguageID::ZHUANG)]); +static_assert(s_localization_zu == s_localizations[size_t(LanguageID::ZULU)]); + static_assert(ARRAY_SIZE(s_localizations) == g_languageCount); diff --git a/src/game/client/gametextcommon.h b/src/game/client/gametextcommon.h index 8ecef330a..57d77136f 100644 --- a/src/game/client/gametextcommon.h +++ b/src/game/client/gametextcommon.h @@ -44,6 +44,176 @@ enum class LanguageID : int32_t // Community game languages. RUSSIAN = 14, ARABIC = 15, + UKRAINIAN = 16, + SWEDISH = 17, + ABKHAZIAN = 18, + AFAR = 19, + AFRIKAANS = 20, + AKAN = 21, + ALBANIAN = 22, + AMHARIC = 23, + ARAGONESE = 24, + ARMENIAN = 25, + ASSAMESE = 26, + AVARIC = 27, + AVESTAN = 28, + AYMARA = 29, + AZERBAIJANI = 30, + BAMBARA = 31, + BASHKIR = 32, + BASQUE = 33, + BELARUSIAN = 34, + BENGALI = 35, + BISLAMA = 36, + BOSNIAN = 37, + BRETON = 38, + BULGARIAN = 39, + BURMESE = 40, + CATALAN = 41, + CHAMORRO = 42, + CHECHEN = 43, + CHICHEWA = 44, + SLAVONIC = 45, + CHUVASH = 46, + CORNISH = 47, + CORSICAN = 48, + CREE = 49, + CROATIAN = 50, + CZECH = 51, + DANISH = 52, + DIVEHI = 53, + DUTCH = 54, + DZONGKHA = 55, + ESPERANTO = 56, + ESTONIAN = 57, + EWE = 58, + FAROESE = 59, + FIJIAN = 60, + FINNISH = 61, + FRISIAN = 62, + FULAH = 63, + GAELIC = 64, + GALICIAN = 65, + GANDA = 66, + GEORGIAN = 67, + GREEK = 68, + KALAALLISUT = 69, + GUARANI = 70, + GUJARATI = 71, + HAITIAN = 72, + HAUSA = 73, + HEBREW = 74, + HERERO = 75, + HINDI = 76, + HIRIMOTU = 77, + HUNGARIAN = 78, + ICELANDIC = 79, + IDO = 80, + IGBO = 81, + INDONESIAN = 82, + INUKTITUT = 83, + INUPIAQ = 84, + IRISH = 85, + JAVANESE = 86, + KANNADA = 87, + KANURI = 88, + KASHMIRI = 89, + KAZAKH = 90, + KHMER = 91, + KIKUYU = 92, + KINYARWANDA = 93, + KYRGYZ = 94, + KOMI = 95, + KONGO = 96, + KUANYAMA = 97, + KURDISH = 98, + LAO = 99, + LATIN = 100, + LATVIAN = 101, + LIMBURGAN = 102, + LINGALA = 103, + LITHUANIAN = 104, + LUBAKATANGA = 105, + LUXEMBOURGISH = 106, + MACEDONIAN = 107, + MALAGASY = 108, + MALAY = 109, + MALAYALAM = 110, + MALTESE = 111, + MANX = 112, + MAORI = 113, + MARATHI = 114, + MARSHALLESE = 115, + MONGOLIAN = 116, + NAURU = 117, + NAVAJO = 118, + NORTHNDEBELE = 119, + SOUTHNDEBELE = 120, + NDONGA = 121, + NEPALI = 122, + NORWEGIAN = 123, + NORWEGIANBOKMAL = 124, + NORWEGIANNYNORSK = 125, + OCCITAN = 126, + OJIBWA = 127, + ORIYA = 128, + OROMO = 129, + OSSETIAN = 130, + PALI = 131, + PASHTO = 132, + PERSIAN = 133, + PORTUGUESE = 134, + PUNJABI = 135, + QUECHUA = 136, + ROMANIAN = 137, + ROMANSH = 138, + RUNDI = 139, + SAMI = 140, + SAMOAN = 141, + SANGO = 142, + SANSKRIT = 143, + SARDINIAN = 144, + SERBIAN = 145, + SHONA = 146, + SINDHI = 147, + SINHALA = 148, + SLOVAK = 149, + SLOVENIAN = 150, + SOMALI = 151, + SOUTHERNSOTHO = 152, + SUNDANESE = 153, + SWAHILI = 154, + SWATI = 155, + TAGALOG = 156, + TAHITIAN = 157, + TAJIK = 158, + TAMIL = 159, + TATAR = 160, + TELUGU = 161, + THAI = 162, + TIBETAN = 163, + TIGRINYA = 164, + TONGA = 165, + TSONGA = 166, + TSWANA = 167, + TURKISH = 168, + TURKMEN = 169, + TWI = 170, + UIGHUR = 171, + URDU = 172, + UZBEK = 173, + VENDA = 174, + VIETNAMESE = 175, + VOLAPUK = 176, + WALLOON = 177, + WELSH = 178, + WOLOF = 179, + XHOSA = 180, + SICHUANYI = 181, + YIDDISH = 182, + YORUBA = 183, + ZHUANG = 184, + ZULU = 185, COUNT }; diff --git a/src/game/client/gametextfile.cpp b/src/game/client/gametextfile.cpp index a88dfdba8..8a629802b 100644 --- a/src/game/client/gametextfile.cpp +++ b/src/game/client/gametextfile.cpp @@ -119,9 +119,181 @@ constexpr const char *const s_langcode_zh = "ZH"; constexpr const char *const s_langcode___ = s_langcode_invalid; constexpr const char *const s_langcode_bp = "BP"; constexpr const char *const s_langcode_pl = "PL"; -constexpr const char *const s_langcode_uk = s_langcode_invalid; +constexpr const char *const s_langcode_un = s_langcode_invalid; constexpr const char *const s_langcode_ru = "RU"; constexpr const char *const s_langcode_ar = "AR"; +constexpr const char *const s_langcode_uk = "UK"; +constexpr const char *const s_langcode_sv = "SV"; +constexpr const char *const s_langcode_ab = "AB"; +constexpr const char *const s_langcode_aa = "AA"; +constexpr const char *const s_langcode_af = "AF"; +constexpr const char *const s_langcode_ak = "AK"; +constexpr const char *const s_langcode_sq = "SQ"; +constexpr const char *const s_langcode_am = "AM"; +constexpr const char *const s_langcode_an = "AN"; +constexpr const char *const s_langcode_hy = "HY"; +constexpr const char *const s_langcode_as = "AS"; +constexpr const char *const s_langcode_av = "AV"; +constexpr const char *const s_langcode_ae = "AE"; +constexpr const char *const s_langcode_ay = "AY"; +constexpr const char *const s_langcode_az = "AZ"; +constexpr const char *const s_langcode_bm = "BM"; +constexpr const char *const s_langcode_ba = "BA"; +constexpr const char *const s_langcode_eu = "EU"; +constexpr const char *const s_langcode_be = "BE"; +constexpr const char *const s_langcode_bn = "BN"; +constexpr const char *const s_langcode_bi = "BI"; +constexpr const char *const s_langcode_bs = "BS"; +constexpr const char *const s_langcode_br = "BR"; +constexpr const char *const s_langcode_bg = "BG"; +constexpr const char *const s_langcode_my = "MY"; +constexpr const char *const s_langcode_ca = "CA"; +constexpr const char *const s_langcode_ch = "CH"; +constexpr const char *const s_langcode_ce = "CE"; +constexpr const char *const s_langcode_ny = "NY"; +constexpr const char *const s_langcode_cu = "CU"; +constexpr const char *const s_langcode_cv = "CV"; +constexpr const char *const s_langcode_kw = "KW"; +constexpr const char *const s_langcode_co = "CO"; +constexpr const char *const s_langcode_cr = "CR"; +constexpr const char *const s_langcode_hr = "HR"; +constexpr const char *const s_langcode_cs = "CS"; +constexpr const char *const s_langcode_da = "DA"; +constexpr const char *const s_langcode_dv = "DV"; +constexpr const char *const s_langcode_nl = "NL"; +constexpr const char *const s_langcode_dz = "DZ"; +constexpr const char *const s_langcode_eo = "EO"; +constexpr const char *const s_langcode_et = "ET"; +constexpr const char *const s_langcode_ee = "EE"; +constexpr const char *const s_langcode_fo = "FO"; +constexpr const char *const s_langcode_fj = "FJ"; +constexpr const char *const s_langcode_fi = "FI"; +constexpr const char *const s_langcode_fy = "FY"; +constexpr const char *const s_langcode_ff = "FF"; +constexpr const char *const s_langcode_gd = "GD"; +constexpr const char *const s_langcode_gl = "GL"; +constexpr const char *const s_langcode_lg = "LG"; +constexpr const char *const s_langcode_ka = "KA"; +constexpr const char *const s_langcode_el = "EL"; +constexpr const char *const s_langcode_kl = "KL"; +constexpr const char *const s_langcode_gn = "GN"; +constexpr const char *const s_langcode_gu = "GU"; +constexpr const char *const s_langcode_ht = "HT"; +constexpr const char *const s_langcode_ha = "HA"; +constexpr const char *const s_langcode_he = "HE"; +constexpr const char *const s_langcode_hz = "HZ"; +constexpr const char *const s_langcode_hi = "HI"; +constexpr const char *const s_langcode_ho = "HO"; +constexpr const char *const s_langcode_hu = "HU"; +constexpr const char *const s_langcode_is = "IS"; +constexpr const char *const s_langcode_io = "IO"; +constexpr const char *const s_langcode_ig = "IG"; +constexpr const char *const s_langcode_id = "ID"; +constexpr const char *const s_langcode_iu = "IU"; +constexpr const char *const s_langcode_ik = "IK"; +constexpr const char *const s_langcode_ga = "GA"; +constexpr const char *const s_langcode_jv = "JV"; +constexpr const char *const s_langcode_kn = "KN"; +constexpr const char *const s_langcode_kr = "KR"; +constexpr const char *const s_langcode_ks = "KS"; +constexpr const char *const s_langcode_kk = "KK"; +constexpr const char *const s_langcode_km = "KM"; +constexpr const char *const s_langcode_ki = "KI"; +constexpr const char *const s_langcode_rw = "RW"; +constexpr const char *const s_langcode_ky = "KY"; +constexpr const char *const s_langcode_kv = "KV"; +constexpr const char *const s_langcode_kg = "KG"; +constexpr const char *const s_langcode_kj = "KJ"; +constexpr const char *const s_langcode_ku = "KU"; +constexpr const char *const s_langcode_lo = "LO"; +constexpr const char *const s_langcode_la = "LA"; +constexpr const char *const s_langcode_lv = "LV"; +constexpr const char *const s_langcode_li = "LI"; +constexpr const char *const s_langcode_ln = "LN"; +constexpr const char *const s_langcode_lt = "LT"; +constexpr const char *const s_langcode_lu = "LU"; +constexpr const char *const s_langcode_lb = "LB"; +constexpr const char *const s_langcode_mk = "MK"; +constexpr const char *const s_langcode_mg = "MG"; +constexpr const char *const s_langcode_ms = "MS"; +constexpr const char *const s_langcode_ml = "ML"; +constexpr const char *const s_langcode_mt = "MT"; +constexpr const char *const s_langcode_gv = "GV"; +constexpr const char *const s_langcode_mi = "MI"; +constexpr const char *const s_langcode_mr = "MR"; +constexpr const char *const s_langcode_mh = "MH"; +constexpr const char *const s_langcode_mn = "MN"; +constexpr const char *const s_langcode_na = "NA"; +constexpr const char *const s_langcode_nv = "NV"; +constexpr const char *const s_langcode_nd = "ND"; +constexpr const char *const s_langcode_nr = "NR"; +constexpr const char *const s_langcode_ng = "NG"; +constexpr const char *const s_langcode_ne = "NE"; +constexpr const char *const s_langcode_no = "NO"; +constexpr const char *const s_langcode_nb = "NB"; +constexpr const char *const s_langcode_nn = "NN"; +constexpr const char *const s_langcode_oc = "OC"; +constexpr const char *const s_langcode_oj = "OJ"; +constexpr const char *const s_langcode_or = "OR"; +constexpr const char *const s_langcode_om = "OM"; +constexpr const char *const s_langcode_os = "OS"; +constexpr const char *const s_langcode_pi = "PI"; +constexpr const char *const s_langcode_ps = "PS"; +constexpr const char *const s_langcode_fa = "FA"; +constexpr const char *const s_langcode_pt = "PT"; +constexpr const char *const s_langcode_pa = "PA"; +constexpr const char *const s_langcode_qu = "QU"; +constexpr const char *const s_langcode_ro = "RO"; +constexpr const char *const s_langcode_rm = "RM"; +constexpr const char *const s_langcode_rn = "RN"; +constexpr const char *const s_langcode_se = "SE"; +constexpr const char *const s_langcode_sm = "SM"; +constexpr const char *const s_langcode_sg = "SG"; +constexpr const char *const s_langcode_sa = "SA"; +constexpr const char *const s_langcode_sc = "SC"; +constexpr const char *const s_langcode_sr = "SR"; +constexpr const char *const s_langcode_sn = "SN"; +constexpr const char *const s_langcode_sd = "SD"; +constexpr const char *const s_langcode_si = "SI"; +constexpr const char *const s_langcode_sk = "SK"; +constexpr const char *const s_langcode_sl = "SL"; +constexpr const char *const s_langcode_so = "SO"; +constexpr const char *const s_langcode_st = "ST"; +constexpr const char *const s_langcode_su = "SU"; +constexpr const char *const s_langcode_sw = "SW"; +constexpr const char *const s_langcode_ss = "SS"; +constexpr const char *const s_langcode_tl = "TL"; +constexpr const char *const s_langcode_ty = "TY"; +constexpr const char *const s_langcode_tg = "TG"; +constexpr const char *const s_langcode_ta = "TA"; +constexpr const char *const s_langcode_tt = "TT"; +constexpr const char *const s_langcode_te = "TE"; +constexpr const char *const s_langcode_th = "TH"; +constexpr const char *const s_langcode_bo = "BO"; +constexpr const char *const s_langcode_ti = "TI"; +constexpr const char *const s_langcode_to = "TO"; +constexpr const char *const s_langcode_ts = "TS"; +constexpr const char *const s_langcode_tn = "TN"; +constexpr const char *const s_langcode_tr = "TR"; +constexpr const char *const s_langcode_tk = "TK"; +constexpr const char *const s_langcode_tw = "TW"; +constexpr const char *const s_langcode_ug = "UG"; +constexpr const char *const s_langcode_ur = "UR"; +constexpr const char *const s_langcode_uz = "UZ"; +constexpr const char *const s_langcode_ve = "VE"; +constexpr const char *const s_langcode_vi = "VI"; +constexpr const char *const s_langcode_vo = "VO"; +constexpr const char *const s_langcode_wa = "WA"; +constexpr const char *const s_langcode_cy = "CY"; +constexpr const char *const s_langcode_wo = "WO"; +constexpr const char *const s_langcode_xh = "XH"; +constexpr const char *const s_langcode_ii = "II"; +constexpr const char *const s_langcode_yi = "YI"; +constexpr const char *const s_langcode_yo = "YO"; +constexpr const char *const s_langcode_za = "ZA"; +constexpr const char *const s_langcode_zu = "ZU"; + + constexpr const char *const s_langcodes[] = { s_langcode_us, @@ -137,9 +309,181 @@ constexpr const char *const s_langcodes[] = { s_langcode___, s_langcode_bp, s_langcode_pl, - s_langcode_uk, + s_langcode_un, s_langcode_ru, s_langcode_ar, + s_langcode_uk, + s_langcode_sv, + s_langcode_ab, + s_langcode_aa, + s_langcode_af, + s_langcode_ak, + s_langcode_sq, + s_langcode_am, + s_langcode_an, + s_langcode_hy, + s_langcode_as, + s_langcode_av, + s_langcode_ae, + s_langcode_ay, + s_langcode_az, + s_langcode_bm, + s_langcode_ba, + s_langcode_eu, + s_langcode_be, + s_langcode_bn, + s_langcode_bi, + s_langcode_bs, + s_langcode_br, + s_langcode_bg, + s_langcode_my, + s_langcode_ca, + s_langcode_ch, + s_langcode_ce, + s_langcode_ny, + s_langcode_cu, + s_langcode_cv, + s_langcode_kw, + s_langcode_co, + s_langcode_cr, + s_langcode_hr, + s_langcode_cs, + s_langcode_da, + s_langcode_dv, + s_langcode_nl, + s_langcode_dz, + s_langcode_eo, + s_langcode_et, + s_langcode_ee, + s_langcode_fo, + s_langcode_fj, + s_langcode_fi, + s_langcode_fy, + s_langcode_ff, + s_langcode_gd, + s_langcode_gl, + s_langcode_lg, + s_langcode_ka, + s_langcode_el, + s_langcode_kl, + s_langcode_gn, + s_langcode_gu, + s_langcode_ht, + s_langcode_ha, + s_langcode_he, + s_langcode_hz, + s_langcode_hi, + s_langcode_ho, + s_langcode_hu, + s_langcode_is, + s_langcode_io, + s_langcode_ig, + s_langcode_id, + s_langcode_iu, + s_langcode_ik, + s_langcode_ga, + s_langcode_jv, + s_langcode_kn, + s_langcode_kr, + s_langcode_ks, + s_langcode_kk, + s_langcode_km, + s_langcode_ki, + s_langcode_rw, + s_langcode_ky, + s_langcode_kv, + s_langcode_kg, + s_langcode_kj, + s_langcode_ku, + s_langcode_lo, + s_langcode_la, + s_langcode_lv, + s_langcode_li, + s_langcode_ln, + s_langcode_lt, + s_langcode_lu, + s_langcode_lb, + s_langcode_mk, + s_langcode_mg, + s_langcode_ms, + s_langcode_ml, + s_langcode_mt, + s_langcode_gv, + s_langcode_mi, + s_langcode_mr, + s_langcode_mh, + s_langcode_mn, + s_langcode_na, + s_langcode_nv, + s_langcode_nd, + s_langcode_nr, + s_langcode_ng, + s_langcode_ne, + s_langcode_no, + s_langcode_nb, + s_langcode_nn, + s_langcode_oc, + s_langcode_oj, + s_langcode_or, + s_langcode_om, + s_langcode_os, + s_langcode_pi, + s_langcode_ps, + s_langcode_fa, + s_langcode_pt, + s_langcode_pa, + s_langcode_qu, + s_langcode_ro, + s_langcode_rm, + s_langcode_rn, + s_langcode_se, + s_langcode_sm, + s_langcode_sg, + s_langcode_sa, + s_langcode_sc, + s_langcode_sr, + s_langcode_sn, + s_langcode_sd, + s_langcode_si, + s_langcode_sk, + s_langcode_sl, + s_langcode_so, + s_langcode_st, + s_langcode_su, + s_langcode_sw, + s_langcode_ss, + s_langcode_tl, + s_langcode_ty, + s_langcode_tg, + s_langcode_ta, + s_langcode_tt, + s_langcode_te, + s_langcode_th, + s_langcode_bo, + s_langcode_ti, + s_langcode_to, + s_langcode_ts, + s_langcode_tn, + s_langcode_tr, + s_langcode_tk, + s_langcode_tw, + s_langcode_ug, + s_langcode_ur, + s_langcode_uz, + s_langcode_ve, + s_langcode_vi, + s_langcode_vo, + s_langcode_wa, + s_langcode_cy, + s_langcode_wo, + s_langcode_xh, + s_langcode_ii, + s_langcode_yi, + s_langcode_yo, + s_langcode_za, + s_langcode_zu + + }; static_assert(s_langcode_us == s_langcodes[size_t(LanguageID::US)]); @@ -155,9 +499,180 @@ static_assert(s_langcode_zh == s_langcodes[size_t(LanguageID::CHINESE)]); static_assert(s_langcode___ == s_langcodes[size_t(LanguageID::UNUSED_1)]); static_assert(s_langcode_bp == s_langcodes[size_t(LanguageID::BRAZILIAN)]); static_assert(s_langcode_pl == s_langcodes[size_t(LanguageID::POLISH)]); -static_assert(s_langcode_uk == s_langcodes[size_t(LanguageID::UNKNOWN)]); +static_assert(s_langcode_un == s_langcodes[size_t(LanguageID::UNKNOWN)]); static_assert(s_langcode_ru == s_langcodes[size_t(LanguageID::RUSSIAN)]); static_assert(s_langcode_ar == s_langcodes[size_t(LanguageID::ARABIC)]); +static_assert(s_langcode_uk == s_langcodes[size_t(LanguageID::UKRAINIAN)]); +static_assert(s_langcode_sv == s_langcodes[size_t(LanguageID::SWEDISH)]); +static_assert(s_langcode_ab == s_langcodes[size_t(LanguageID::ABKHAZIAN)]); +static_assert(s_langcode_aa == s_langcodes[size_t(LanguageID::AFAR)]); +static_assert(s_langcode_af == s_langcodes[size_t(LanguageID::AFRIKAANS)]); +static_assert(s_langcode_ak == s_langcodes[size_t(LanguageID::AKAN)]); +static_assert(s_langcode_sq == s_langcodes[size_t(LanguageID::ALBANIAN)]); +static_assert(s_langcode_am == s_langcodes[size_t(LanguageID::AMHARIC)]); +static_assert(s_langcode_an == s_langcodes[size_t(LanguageID::ARAGONESE)]); +static_assert(s_langcode_hy == s_langcodes[size_t(LanguageID::ARMENIAN)]); +static_assert(s_langcode_as == s_langcodes[size_t(LanguageID::ASSAMESE)]); +static_assert(s_langcode_av == s_langcodes[size_t(LanguageID::AVARIC)]); +static_assert(s_langcode_ae == s_langcodes[size_t(LanguageID::AVESTAN)]); +static_assert(s_langcode_ay == s_langcodes[size_t(LanguageID::AYMARA)]); +static_assert(s_langcode_az == s_langcodes[size_t(LanguageID::AZERBAIJANI)]); +static_assert(s_langcode_bm == s_langcodes[size_t(LanguageID::BAMBARA)]); +static_assert(s_langcode_ba == s_langcodes[size_t(LanguageID::BASHKIR)]); +static_assert(s_langcode_eu == s_langcodes[size_t(LanguageID::BASQUE)]); +static_assert(s_langcode_be == s_langcodes[size_t(LanguageID::BELARUSIAN)]); +static_assert(s_langcode_bn == s_langcodes[size_t(LanguageID::BENGALI)]); +static_assert(s_langcode_bi == s_langcodes[size_t(LanguageID::BISLAMA)]); +static_assert(s_langcode_bs == s_langcodes[size_t(LanguageID::BOSNIAN)]); +static_assert(s_langcode_br == s_langcodes[size_t(LanguageID::BRETON)]); +static_assert(s_langcode_bg == s_langcodes[size_t(LanguageID::BULGARIAN)]); +static_assert(s_langcode_my == s_langcodes[size_t(LanguageID::BURMESE)]); +static_assert(s_langcode_ca == s_langcodes[size_t(LanguageID::CATALAN)]); +static_assert(s_langcode_ch == s_langcodes[size_t(LanguageID::CHAMORRO)]); +static_assert(s_langcode_ce == s_langcodes[size_t(LanguageID::CHECHEN)]); +static_assert(s_langcode_ny == s_langcodes[size_t(LanguageID::CHICHEWA)]); +static_assert(s_langcode_cu == s_langcodes[size_t(LanguageID::SLAVONIC)]); +static_assert(s_langcode_cv == s_langcodes[size_t(LanguageID::CHUVASH)]); +static_assert(s_langcode_kw == s_langcodes[size_t(LanguageID::CORNISH)]); +static_assert(s_langcode_co == s_langcodes[size_t(LanguageID::CORSICAN)]); +static_assert(s_langcode_cr == s_langcodes[size_t(LanguageID::CREE)]); +static_assert(s_langcode_hr == s_langcodes[size_t(LanguageID::CROATIAN)]); +static_assert(s_langcode_cs == s_langcodes[size_t(LanguageID::CZECH)]); +static_assert(s_langcode_da == s_langcodes[size_t(LanguageID::DANISH)]); +static_assert(s_langcode_dv == s_langcodes[size_t(LanguageID::DIVEHI)]); +static_assert(s_langcode_nl == s_langcodes[size_t(LanguageID::DUTCH)]); +static_assert(s_langcode_dz == s_langcodes[size_t(LanguageID::DZONGKHA)]); +static_assert(s_langcode_eo == s_langcodes[size_t(LanguageID::ESPERANTO)]); +static_assert(s_langcode_et == s_langcodes[size_t(LanguageID::ESTONIAN)]); +static_assert(s_langcode_ee == s_langcodes[size_t(LanguageID::EWE)]); +static_assert(s_langcode_fo == s_langcodes[size_t(LanguageID::FAROESE)]); +static_assert(s_langcode_fj == s_langcodes[size_t(LanguageID::FIJIAN)]); +static_assert(s_langcode_fi == s_langcodes[size_t(LanguageID::FINNISH)]); +static_assert(s_langcode_fy == s_langcodes[size_t(LanguageID::FRISIAN)]); +static_assert(s_langcode_ff == s_langcodes[size_t(LanguageID::FULAH)]); +static_assert(s_langcode_gd == s_langcodes[size_t(LanguageID::GAELIC)]); +static_assert(s_langcode_gl == s_langcodes[size_t(LanguageID::GALICIAN)]); +static_assert(s_langcode_lg == s_langcodes[size_t(LanguageID::GANDA)]); +static_assert(s_langcode_ka == s_langcodes[size_t(LanguageID::GEORGIAN)]); +static_assert(s_langcode_el == s_langcodes[size_t(LanguageID::GREEK)]); +static_assert(s_langcode_kl == s_langcodes[size_t(LanguageID::KALAALLISUT)]); +static_assert(s_langcode_gn == s_langcodes[size_t(LanguageID::GUARANI)]); +static_assert(s_langcode_gu == s_langcodes[size_t(LanguageID::GUJARATI)]); +static_assert(s_langcode_ht == s_langcodes[size_t(LanguageID::HAITIAN)]); +static_assert(s_langcode_ha == s_langcodes[size_t(LanguageID::HAUSA)]); +static_assert(s_langcode_he == s_langcodes[size_t(LanguageID::HEBREW)]); +static_assert(s_langcode_hz == s_langcodes[size_t(LanguageID::HERERO)]); +static_assert(s_langcode_hi == s_langcodes[size_t(LanguageID::HINDI)]); +static_assert(s_langcode_ho == s_langcodes[size_t(LanguageID::HIRIMOTU)]); +static_assert(s_langcode_hu == s_langcodes[size_t(LanguageID::HUNGARIAN)]); +static_assert(s_langcode_is == s_langcodes[size_t(LanguageID::ICELANDIC)]); +static_assert(s_langcode_io == s_langcodes[size_t(LanguageID::IDO)]); +static_assert(s_langcode_ig == s_langcodes[size_t(LanguageID::IGBO)]); +static_assert(s_langcode_id == s_langcodes[size_t(LanguageID::INDONESIAN)]); +static_assert(s_langcode_iu == s_langcodes[size_t(LanguageID::INUKTITUT)]); +static_assert(s_langcode_ik == s_langcodes[size_t(LanguageID::INUPIAQ)]); +static_assert(s_langcode_ga == s_langcodes[size_t(LanguageID::IRISH)]); +static_assert(s_langcode_jv == s_langcodes[size_t(LanguageID::JAVANESE)]); +static_assert(s_langcode_kn == s_langcodes[size_t(LanguageID::KANNADA)]); +static_assert(s_langcode_kr == s_langcodes[size_t(LanguageID::KANURI)]); +static_assert(s_langcode_ks == s_langcodes[size_t(LanguageID::KASHMIRI)]); +static_assert(s_langcode_kk == s_langcodes[size_t(LanguageID::KAZAKH)]); +static_assert(s_langcode_km == s_langcodes[size_t(LanguageID::KHMER)]); +static_assert(s_langcode_ki == s_langcodes[size_t(LanguageID::KIKUYU)]); +static_assert(s_langcode_rw == s_langcodes[size_t(LanguageID::KINYARWANDA)]); +static_assert(s_langcode_ky == s_langcodes[size_t(LanguageID::KYRGYZ)]); +static_assert(s_langcode_kv == s_langcodes[size_t(LanguageID::KOMI)]); +static_assert(s_langcode_kg == s_langcodes[size_t(LanguageID::KONGO)]); +static_assert(s_langcode_kj == s_langcodes[size_t(LanguageID::KUANYAMA)]); +static_assert(s_langcode_ku == s_langcodes[size_t(LanguageID::KURDISH)]); +static_assert(s_langcode_lo == s_langcodes[size_t(LanguageID::LAO)]); +static_assert(s_langcode_la == s_langcodes[size_t(LanguageID::LATIN)]); +static_assert(s_langcode_lv == s_langcodes[size_t(LanguageID::LATVIAN)]); +static_assert(s_langcode_li == s_langcodes[size_t(LanguageID::LIMBURGAN)]); +static_assert(s_langcode_ln == s_langcodes[size_t(LanguageID::LINGALA)]); +static_assert(s_langcode_lt == s_langcodes[size_t(LanguageID::LITHUANIAN)]); +static_assert(s_langcode_lu == s_langcodes[size_t(LanguageID::LUBAKATANGA)]); +static_assert(s_langcode_lb == s_langcodes[size_t(LanguageID::LUXEMBOURGISH)]); +static_assert(s_langcode_mk == s_langcodes[size_t(LanguageID::MACEDONIAN)]); +static_assert(s_langcode_mg == s_langcodes[size_t(LanguageID::MALAGASY)]); +static_assert(s_langcode_ms == s_langcodes[size_t(LanguageID::MALAY)]); +static_assert(s_langcode_ml == s_langcodes[size_t(LanguageID::MALAYALAM)]); +static_assert(s_langcode_mt == s_langcodes[size_t(LanguageID::MALTESE)]); +static_assert(s_langcode_gv == s_langcodes[size_t(LanguageID::MANX)]); +static_assert(s_langcode_mi == s_langcodes[size_t(LanguageID::MAORI)]); +static_assert(s_langcode_mr == s_langcodes[size_t(LanguageID::MARATHI)]); +static_assert(s_langcode_mh == s_langcodes[size_t(LanguageID::MARSHALLESE)]); +static_assert(s_langcode_mn == s_langcodes[size_t(LanguageID::MONGOLIAN)]); +static_assert(s_langcode_na == s_langcodes[size_t(LanguageID::NAURU)]); +static_assert(s_langcode_nv == s_langcodes[size_t(LanguageID::NAVAJO)]); +static_assert(s_langcode_nd == s_langcodes[size_t(LanguageID::NORTHNDEBELE)]); +static_assert(s_langcode_nr == s_langcodes[size_t(LanguageID::SOUTHNDEBELE)]); +static_assert(s_langcode_ng == s_langcodes[size_t(LanguageID::NDONGA)]); +static_assert(s_langcode_ne == s_langcodes[size_t(LanguageID::NEPALI)]); +static_assert(s_langcode_no == s_langcodes[size_t(LanguageID::NORWEGIAN)]); +static_assert(s_langcode_nb == s_langcodes[size_t(LanguageID::NORWEGIANBOKMAL)]); +static_assert(s_langcode_nn == s_langcodes[size_t(LanguageID::NORWEGIANNYNORSK)]); +static_assert(s_langcode_oc == s_langcodes[size_t(LanguageID::OCCITAN)]); +static_assert(s_langcode_oj == s_langcodes[size_t(LanguageID::OJIBWA)]); +static_assert(s_langcode_or == s_langcodes[size_t(LanguageID::ORIYA)]); +static_assert(s_langcode_om == s_langcodes[size_t(LanguageID::OROMO)]); +static_assert(s_langcode_os == s_langcodes[size_t(LanguageID::OSSETIAN)]); +static_assert(s_langcode_pi == s_langcodes[size_t(LanguageID::PALI)]); +static_assert(s_langcode_ps == s_langcodes[size_t(LanguageID::PASHTO)]); +static_assert(s_langcode_fa == s_langcodes[size_t(LanguageID::PERSIAN)]); +static_assert(s_langcode_pt == s_langcodes[size_t(LanguageID::PORTUGUESE)]); +static_assert(s_langcode_pa == s_langcodes[size_t(LanguageID::PUNJABI)]); +static_assert(s_langcode_qu == s_langcodes[size_t(LanguageID::QUECHUA)]); +static_assert(s_langcode_ro == s_langcodes[size_t(LanguageID::ROMANIAN)]); +static_assert(s_langcode_rm == s_langcodes[size_t(LanguageID::ROMANSH)]); +static_assert(s_langcode_rn == s_langcodes[size_t(LanguageID::RUNDI)]); +static_assert(s_langcode_se == s_langcodes[size_t(LanguageID::SAMI)]); +static_assert(s_langcode_sm == s_langcodes[size_t(LanguageID::SAMOAN)]); +static_assert(s_langcode_sg == s_langcodes[size_t(LanguageID::SANGO)]); +static_assert(s_langcode_sa == s_langcodes[size_t(LanguageID::SANSKRIT)]); +static_assert(s_langcode_sc == s_langcodes[size_t(LanguageID::SARDINIAN)]); +static_assert(s_langcode_sr == s_langcodes[size_t(LanguageID::SERBIAN)]); +static_assert(s_langcode_sn == s_langcodes[size_t(LanguageID::SHONA)]); +static_assert(s_langcode_sd == s_langcodes[size_t(LanguageID::SINDHI)]); +static_assert(s_langcode_si == s_langcodes[size_t(LanguageID::SINHALA)]); +static_assert(s_langcode_sk == s_langcodes[size_t(LanguageID::SLOVAK)]); +static_assert(s_langcode_sl == s_langcodes[size_t(LanguageID::SLOVENIAN)]); +static_assert(s_langcode_so == s_langcodes[size_t(LanguageID::SOMALI)]); +static_assert(s_langcode_st == s_langcodes[size_t(LanguageID::SOUTHERNSOTHO)]); +static_assert(s_langcode_su == s_langcodes[size_t(LanguageID::SUNDANESE)]); +static_assert(s_langcode_sw == s_langcodes[size_t(LanguageID::SWAHILI)]); +static_assert(s_langcode_ss == s_langcodes[size_t(LanguageID::SWATI)]); +static_assert(s_langcode_tl == s_langcodes[size_t(LanguageID::TAGALOG)]); +static_assert(s_langcode_ty == s_langcodes[size_t(LanguageID::TAHITIAN)]); +static_assert(s_langcode_tg == s_langcodes[size_t(LanguageID::TAJIK)]); +static_assert(s_langcode_ta == s_langcodes[size_t(LanguageID::TAMIL)]); +static_assert(s_langcode_tt == s_langcodes[size_t(LanguageID::TATAR)]); +static_assert(s_langcode_te == s_langcodes[size_t(LanguageID::TELUGU)]); +static_assert(s_langcode_th == s_langcodes[size_t(LanguageID::THAI)]); +static_assert(s_langcode_bo == s_langcodes[size_t(LanguageID::TIBETAN)]); +static_assert(s_langcode_ti == s_langcodes[size_t(LanguageID::TIGRINYA)]); +static_assert(s_langcode_to == s_langcodes[size_t(LanguageID::TONGA)]); +static_assert(s_langcode_ts == s_langcodes[size_t(LanguageID::TSONGA)]); +static_assert(s_langcode_tn == s_langcodes[size_t(LanguageID::TSWANA)]); +static_assert(s_langcode_tr == s_langcodes[size_t(LanguageID::TURKISH)]); +static_assert(s_langcode_tk == s_langcodes[size_t(LanguageID::TURKMEN)]); +static_assert(s_langcode_tw == s_langcodes[size_t(LanguageID::TWI)]); +static_assert(s_langcode_ug == s_langcodes[size_t(LanguageID::UIGHUR)]); +static_assert(s_langcode_ur == s_langcodes[size_t(LanguageID::URDU)]); +static_assert(s_langcode_uz == s_langcodes[size_t(LanguageID::UZBEK)]); +static_assert(s_langcode_ve == s_langcodes[size_t(LanguageID::VENDA)]); +static_assert(s_langcode_vi == s_langcodes[size_t(LanguageID::VIETNAMESE)]); +static_assert(s_langcode_vo == s_langcodes[size_t(LanguageID::VOLAPUK)]); +static_assert(s_langcode_wa == s_langcodes[size_t(LanguageID::WALLOON)]); +static_assert(s_langcode_cy == s_langcodes[size_t(LanguageID::WELSH)]); +static_assert(s_langcode_wo == s_langcodes[size_t(LanguageID::WOLOF)]); +static_assert(s_langcode_xh == s_langcodes[size_t(LanguageID::XHOSA)]); +static_assert(s_langcode_ii == s_langcodes[size_t(LanguageID::SICHUANYI)]); +static_assert(s_langcode_yi == s_langcodes[size_t(LanguageID::YIDDISH)]); +static_assert(s_langcode_yo == s_langcodes[size_t(LanguageID::YORUBA)]); +static_assert(s_langcode_za == s_langcodes[size_t(LanguageID::ZHUANG)]); +static_assert(s_langcode_zu == s_langcodes[size_t(LanguageID::ZULU)]); + static_assert(ARRAY_SIZE(s_langcodes) == g_languageCount); diff --git a/src/tools/gametextcompiler/src/main.cpp b/src/tools/gametextcompiler/src/main.cpp index 1c36409a3..ee6dee78d 100644 --- a/src/tools/gametextcompiler/src/main.cpp +++ b/src/tools/gametextcompiler/src/main.cpp @@ -102,7 +102,7 @@ FILE_PATH takes any relative or absolute path. LANGUAGE:enum LANGUAGE takes one [1] or multiple [n] languages, separated by pipe: -All|English|German|French|Spanish|Italian|Japanese|Korean|Chinese|Brazilian|Polish|Unknown|Russian|Arabic +All|English|German|French|Spanish|Italian|Japanese|Korean|Chinese|Brazilian|Polish|Unknown|Russian|Arabic|Ukrainian|Swedish|Abkhazian|Afar|Afrikaans|Akan|Albanian|Amharic|Aragonese|Armenian|Assamese|Avaric|Avestan|Aymara|Azerbaijani|Bambara|Bashkir|Basque|Belarusian|Bengali|Bislama|Bosnian|Breton|Bulgarian|Burmese|Catalan|Chamorro|Chechen|Chichewa|Slavonic|Chuvash|Cornish|Corsican|Cree|Croatian|Czech|Danish|Divehi|Dutch|Dzongkha|Esperanto|Estonian|Ewe|Faroese|Fijian|Finnish|Frisian|Fulah|Gaelic|Galician|Ganda|Georgian|Greek|Kalaallisut|Guarani|Gujarati|Haitian|Hausa|Hebrew|Herero|Hindi|HiriMotu|Hungarian|Icelandic|Ido|Igbo|Indonesian|Inuktitut|Inupiaq|Irish|Javanese|Kannada|Kanuri|Kashmiri|Kazakh|Khmer|Kikuyu|Kinyarwanda|Kyrgyz|Komi|Kongo|Kuanyama|Kurdish|Lao|Latin|Latvian|Limburgan|Lingala|Lithuanian|LubaKatanga|Luxembourgish|Macedonian|Malay|Malayalam|Maltese|Manx|Maori|Marathi|Marshallese|Mongolian|Nauru|Navajo|NorthNdebele|SouthNdebele|Ndonga|Nepali|Norwegian|NorwegianBokmal|NorwegianNynorsk|Occitan|Ojibwa|Oriya|Oromo|Ossetian|Pali|Pashto|Persian|Portuguese|Punjabi|Quechua|Romanian|Romansh|Rundi|Sami|Samoan|Sango|Sanskrit|Sardinian|Serbian|Shona|Sindhi|Sinhala|Slovak|Slovenian|Somali|SouthernSotho|Sundanese|Swahili|Swati|Tagalog|Tahitian|Tajik|Tamil|Tatar|Telugu|Thai|Tibetan|Tigrinya|Tonga|Tsonga|Tswana|Turkish|Turkmen|Twi|Uighur|Urdu|Uzbek|Venda|Vietnamese|Volapuk|Walloon|Welsh|Wolof|Xhosa|SichuanYi|Yiddish|Yoruba|Zhuang|Zulu OPTION:enum OPTION takes one [1] or multiple [n] options, separated by pipe: @@ -219,7 +219,7 @@ struct EngineSystemsCreator int main(int argc, const char *argv[]) { - Print_Line("Game Text Compiler 1.1 by The Assembly Armada"); + Print_Line("Game Text Compiler 1.2 by The Assembly Armada"); if (argc < 2) { Print_Help();