2017-01-20 08:36:52 -05:00
|
|
|
#pragma once
|
|
|
|
|
2017-01-19 16:23:59 -05:00
|
|
|
namespace Components
|
|
|
|
{
|
|
|
|
class StructuredData : public Component
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
enum PlayerDataType
|
|
|
|
{
|
2022-10-16 11:17:42 -04:00
|
|
|
FEATURES,
|
|
|
|
WEAPONS,
|
|
|
|
ATTACHEMENTS,
|
|
|
|
CHALLENGES,
|
|
|
|
CAMOS,
|
|
|
|
PERKS,
|
|
|
|
KILLSTREAKS,
|
|
|
|
ACCOLADES,
|
|
|
|
CARDICONS,
|
|
|
|
CARDTITLES,
|
|
|
|
CARDNAMEPLATES,
|
|
|
|
TEAMS,
|
|
|
|
GAMETYPES,
|
|
|
|
|
|
|
|
COUNT
|
2017-01-19 16:23:59 -05:00
|
|
|
};
|
|
|
|
|
|
|
|
StructuredData();
|
|
|
|
|
|
|
|
private:
|
2017-02-22 14:17:58 -05:00
|
|
|
static bool UpdateVersionOffsets(Game::StructuredDataDefSet *set, Game::StructuredDataBuffer *buffer, Game::StructuredDataDef *oldDef);
|
|
|
|
|
2017-01-19 16:23:59 -05:00
|
|
|
static void PatchPlayerDataEnum(Game::StructuredDataDef* data, PlayerDataType type, std::vector<std::string>& entries);
|
2017-02-20 13:18:07 -05:00
|
|
|
static void PatchAdditionalData(Game::StructuredDataDef* data, std::unordered_map<std::string, std::string>& patches);
|
|
|
|
|
|
|
|
static void PatchCustomClassLimit(Game::StructuredDataDef* data, int count);
|
2017-01-19 16:23:59 -05:00
|
|
|
static Utils::Memory::Allocator MemAllocator;
|
|
|
|
|
2022-10-16 11:17:42 -04:00
|
|
|
static const char* EnumTranslation[COUNT];
|
2017-01-19 16:23:59 -05:00
|
|
|
};
|
|
|
|
}
|