public string GetString(Language lang, LocalizationContext context, string key) { if (dontLocalize) { if (this.context == context) { return(key); } } try { return(locs[lang][context][key]); } catch { try { LoadLang(lang, context); return(locs[lang][context][key]); } catch { } } notFound[lang][context].Add(key); SaveNotFound(); return("%" + key + "%"); }
public Localization(Language lang, LocalizationContext context) { locs = new MyDictionary <Language, MyDictionary <LocalizationContext, Dictionary <string, string> > >(); this.lang = lang; this.context = context; }
void LoadLang(Language lang, LocalizationContext context) { Dictionary <string, string> strings = GameResources.Load(context.full + @"\" + context.last + "-" + lang.ToString() + ".loc", sr => new CompactSerializer().Deserialize <Dictionary <string, string> >(sr, typeof(DictionaryBinder <string, string>)) ); locs[lang][context] = strings; }
public string GetString(LocalizationContext context, string key) { return(GetString(lang, context, key)); }