summaryrefslogtreecommitdiff
path: root/src/SMAPI/Framework/ContentManagers/GameContentManager.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/SMAPI/Framework/ContentManagers/GameContentManager.cs')
-rw-r--r--src/SMAPI/Framework/ContentManagers/GameContentManager.cs9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/SMAPI/Framework/ContentManagers/GameContentManager.cs b/src/SMAPI/Framework/ContentManagers/GameContentManager.cs
index 83a63986..ad8f2ef1 100644
--- a/src/SMAPI/Framework/ContentManagers/GameContentManager.cs
+++ b/src/SMAPI/Framework/ContentManagers/GameContentManager.cs
@@ -78,7 +78,7 @@ namespace StardewModdingAPI.Framework.ContentManagers
return this.Load<T>(newAssetName, newLanguage, useCache);
// get from cache
- if (useCache && this.IsLoaded(assetName))
+ if (useCache && this.IsLoaded(assetName, language))
return this.RawLoad<T>(assetName, language, useCache: true);
// get managed asset
@@ -151,11 +151,12 @@ namespace StardewModdingAPI.Framework.ContentManagers
*********/
/// <summary>Get whether an asset has already been loaded.</summary>
/// <param name="normalizedAssetName">The normalized asset name.</param>
- protected override bool IsNormalizedKeyLoaded(string normalizedAssetName)
+ /// <param name="language">The language to check.</param>
+ protected override bool IsNormalizedKeyLoaded(string normalizedAssetName, LanguageCode language)
{
string cachedKey = null;
bool localized =
- this.Language != LocalizedContentManager.LanguageCode.en
+ language != LocalizedContentManager.LanguageCode.en
&& !this.Coordinator.IsManagedAssetKey(normalizedAssetName)
&& this.LocalizedAssetNames.TryGetValue(normalizedAssetName, out cachedKey);
@@ -214,7 +215,7 @@ namespace StardewModdingAPI.Framework.ContentManagers
private T RawLoad<T>(string assetName, LanguageCode language, bool useCache)
{
// use cached key
- if (this.LocalizedAssetNames.TryGetValue(assetName, out string cachedKey))
+ if (language == this.Language && this.LocalizedAssetNames.TryGetValue(assetName, out string cachedKey))
return base.RawLoad<T>(cachedKey, useCache);
// try translated key