Beispiel #1
0
 /// <summary>
 /// Adds a single languagetoken and value
 /// </summary>
 /// <param name="key">Token the game asks</param>
 /// <param name="value">Value it gives back</param>
 public static void Add(string key, string value)
 {
     if (GenericTokens.ContainsKey(key))
     {
         GenericTokens[key] = value;
     }
     else
     {
         GenericTokens.Add(key, value);
     }
 }
Beispiel #2
0
 /// <summary>
 /// Adds a single languagetoken and its associated value to all languages
 /// </summary>
 /// <param name="key">Token the game asks</param>
 /// <param name="value">Value it gives back</param>
 public static void Add(string?key, string?value)
 {
     if (!Loaded)
     {
         throw new InvalidOperationException($"{nameof(LanguageAPI)} is not loaded. Please use [{nameof(R2APISubmoduleDependency)}(nameof({nameof(LanguageAPI)})]");
     }
     if (GenericTokens.ContainsKey(key))
     {
         GenericTokens[key] = value;
     }
     else
     {
         GenericTokens.Add(key, value);
     }
 }
Beispiel #3
0
        /// <summary>
        /// Adds a single languagetoken and value with optional reload
        /// </summary>
        /// <param name="key">Token the game asks</param>
        /// <param name="value">Value it gives back</param>
        /// <param name="reload">if the dictionary of the game should be reloaded</param>
        public static void AddToken(string key, string value, bool reload = true)
        {
            if (GenericTokens.ContainsKey(key))
            {
                GenericTokens[key] = value;
            }
            else
            {
                GenericTokens.Add(key, value);
            }

            if (reload)
            {
                ReloadLanguage();
            }
        }
Beispiel #4
0
        private static string Language_GetString_string_string(On.RoR2.Language.orig_GetString_string_string orig, string token, string language)
        {
            if (LanguageSpecificTokens.ContainsKey(language))
            {
                if (LanguageSpecificTokens[language].ContainsKey(token))
                {
                    return(LanguageSpecificTokens[language][token]);
                }
            }

            if (GenericTokens.ContainsKey(token))
            {
                return(GenericTokens[token]);
            }

            return(orig(token, language));
        }