mirror of
				https://git.zaroz.cloud/nintendo-back-up/yuzu/yuzu-mainline.git
				synced 2025-03-21 01:53:15 +00:00 
			
		
		
		
	control_metadata: Use alternate language names if AmericanEnglish isn't available
This commit is contained in:
		
							parent
							
								
									23d2c50479
								
							
						
					
					
						commit
						e973cceadd
					
				@ -21,7 +21,17 @@ NACP::NACP(VirtualFile file) : raw(std::make_unique<RawNACP>()) {
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const LanguageEntry& NACP::GetLanguageEntry(Language language) const {
 | 
					const LanguageEntry& NACP::GetLanguageEntry(Language language) const {
 | 
				
			||||||
    return raw->language_entries.at(static_cast<u8>(language));
 | 
					    if (language != Language::Default) {
 | 
				
			||||||
 | 
					        return raw->language_entries.at(static_cast<u8>(language));
 | 
				
			||||||
 | 
					    } else {
 | 
				
			||||||
 | 
					        for (const auto& language_entry : raw->language_entries) {
 | 
				
			||||||
 | 
					            if (!language_entry.GetApplicationName().empty())
 | 
				
			||||||
 | 
					                return language_entry;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        // Fallback to English
 | 
				
			||||||
 | 
					        return GetLanguageEntry(Language::AmericanEnglish);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
std::string NACP::GetApplicationName(Language language) const {
 | 
					std::string NACP::GetApplicationName(Language language) const {
 | 
				
			||||||
 | 
				
			|||||||
@ -9,6 +9,7 @@
 | 
				
			|||||||
#include <string>
 | 
					#include <string>
 | 
				
			||||||
#include "common/common_funcs.h"
 | 
					#include "common/common_funcs.h"
 | 
				
			||||||
#include "common/common_types.h"
 | 
					#include "common/common_types.h"
 | 
				
			||||||
 | 
					#include "common/swap.h"
 | 
				
			||||||
#include "core/file_sys/vfs.h"
 | 
					#include "core/file_sys/vfs.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace FileSys {
 | 
					namespace FileSys {
 | 
				
			||||||
@ -61,6 +62,8 @@ enum class Language : u8 {
 | 
				
			|||||||
    Korean = 12,
 | 
					    Korean = 12,
 | 
				
			||||||
    Taiwanese = 13,
 | 
					    Taiwanese = 13,
 | 
				
			||||||
    Chinese = 14,
 | 
					    Chinese = 14,
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Default = 255,
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static constexpr std::array<const char*, 15> LANGUAGE_NAMES = {
 | 
					static constexpr std::array<const char*, 15> LANGUAGE_NAMES = {
 | 
				
			||||||
@ -75,9 +78,9 @@ static constexpr std::array<const char*, 15> LANGUAGE_NAMES = {
 | 
				
			|||||||
class NACP {
 | 
					class NACP {
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
    explicit NACP(VirtualFile file);
 | 
					    explicit NACP(VirtualFile file);
 | 
				
			||||||
    const LanguageEntry& GetLanguageEntry(Language language = Language::AmericanEnglish) const;
 | 
					    const LanguageEntry& GetLanguageEntry(Language language = Language::Default) const;
 | 
				
			||||||
    std::string GetApplicationName(Language language = Language::AmericanEnglish) const;
 | 
					    std::string GetApplicationName(Language language = Language::Default) const;
 | 
				
			||||||
    std::string GetDeveloperName(Language language = Language::AmericanEnglish) const;
 | 
					    std::string GetDeveloperName(Language language = Language::Default) const;
 | 
				
			||||||
    u64 GetTitleId() const;
 | 
					    u64 GetTitleId() const;
 | 
				
			||||||
    std::string GetVersionString() const;
 | 
					    std::string GetVersionString() const;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user