mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2025-06-11 15:28:11 -05:00
ZoneCommon: Add GameLanguagePrefix class and save known prefixes for languages in the game object
This commit is contained in:
41
src/ZoneCommon/Game/GameLanguage.h
Normal file
41
src/ZoneCommon/Game/GameLanguage.h
Normal file
@ -0,0 +1,41 @@
|
||||
#pragma once
|
||||
|
||||
#include <string>
|
||||
|
||||
enum class GameLanguage
|
||||
{
|
||||
LANGUAGE_NONE,
|
||||
LANGUAGE_ENGLISH,
|
||||
LANGUAGE_FRENCH,
|
||||
LANGUAGE_GERMAN,
|
||||
LANGUAGE_ITALIAN,
|
||||
LANGUAGE_SPANISH,
|
||||
LANGUAGE_BRITISH,
|
||||
LANGUAGE_RUSSIAN,
|
||||
LANGUAGE_POLISH,
|
||||
LANGUAGE_KOREAN,
|
||||
LANGUAGE_TAIWANESE,
|
||||
LANGUAGE_JAPANESE,
|
||||
LANGUAGE_CHINESE,
|
||||
LANGUAGE_THAI,
|
||||
LANGUAGE_LEET,
|
||||
LANGUAGE_CZECH,
|
||||
LANGUAGE_FRENCH_CAN,
|
||||
LANGUAGE_AUSTRIAN,
|
||||
LANGUAGE_PORTUGUESE,
|
||||
LANGUAGE_MEXICAN_SPANISH,
|
||||
LANGUAGE_FULL_JAPANESE
|
||||
};
|
||||
|
||||
class GameLanguagePrefix
|
||||
{
|
||||
public:
|
||||
GameLanguage m_language;
|
||||
const std::string m_prefix;
|
||||
|
||||
GameLanguagePrefix(const GameLanguage language, std::string prefix)
|
||||
: m_language(language),
|
||||
m_prefix(std::move(prefix))
|
||||
{
|
||||
}
|
||||
};
|
@ -1,5 +1,6 @@
|
||||
#pragma once
|
||||
#include "Zone/Zone.h"
|
||||
#include "GameLanguage.h"
|
||||
#include <vector>
|
||||
|
||||
class Zone;
|
||||
@ -10,4 +11,5 @@ public:
|
||||
virtual void AddZone(Zone* zone) = 0;
|
||||
virtual void RemoveZone(Zone* zone) = 0;
|
||||
virtual std::vector<Zone*> GetZones() = 0;
|
||||
virtual std::vector<GameLanguagePrefix> GetLanguagePrefixes() = 0;
|
||||
};
|
@ -21,4 +21,28 @@ void GameT6::RemoveZone(Zone* zone)
|
||||
std::vector<Zone*> GameT6::GetZones()
|
||||
{
|
||||
return m_zones;
|
||||
}
|
||||
}
|
||||
|
||||
std::vector<GameLanguagePrefix> GameT6::GetLanguagePrefixes()
|
||||
{
|
||||
std::vector<GameLanguagePrefix> prefixes;
|
||||
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_ENGLISH, "en_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_FRENCH, "fr_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_FRENCH_CAN, "fc_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_GERMAN, "ge_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_AUSTRIAN, "as_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_ITALIAN, "it_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_SPANISH, "sp_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_BRITISH, "br_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_RUSSIAN, "ru_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_POLISH, "po_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_KOREAN, "ko_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_JAPANESE, "ja_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_CZECH, "cz_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_FULL_JAPANESE, "fj_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_PORTUGUESE, "bp_");
|
||||
prefixes.emplace_back(GameLanguage::LANGUAGE_MEXICAN_SPANISH, "ms_");
|
||||
|
||||
return prefixes;
|
||||
}
|
||||
|
@ -9,6 +9,7 @@ public:
|
||||
void AddZone(Zone* zone) override;
|
||||
void RemoveZone(Zone* zone) override;
|
||||
std::vector<Zone*> GetZones() override;
|
||||
std::vector<GameLanguagePrefix> GetLanguagePrefixes() override;
|
||||
};
|
||||
|
||||
extern GameT6 g_GameT6;
|
Reference in New Issue
Block a user