r5sdk/r5dev/public/ipackedstore.h
Kawe Mazidjatari fe2a95e4ec RTech: major pak system overhaul and rebuild
* split rtech_game and rtech_utils cpp files into multiple files
* rebuilt several large pak load routines for debugging and custom implementations
* moved rson code to rtech_game
* reworked and improved engine and sdk pak precache system
* reversed more of the jobthreads system
2024-04-05 17:51:19 +02:00

48 lines
907 B
C

#ifndef IPACKEDSTORE_H
#define IPACKEDSTORE_H
enum EPackedLoadFlags
{
LOAD_NONE,
LOAD_VISIBLE = 1 << 0, // Visible to FileSystem.
LOAD_CACHE = 1 << 8, // Only set for assets not stored in the depot directory.
LOAD_TEXTURE_UNK0 = 1 << 18,
LOAD_TEXTURE_UNK1 = 1 << 19,
LOAD_TEXTURE_UNK2 = 1 << 20,
};
enum EPackedTextureFlags
{
TEXTURE_NONE,
TEXTURE_DEFAULT = 1 << 3,
TEXTURE_ENVIRONMENT_MAP = 1 << 10,
};
enum EPackedStoreTargets
{
STORE_TARGET_SERVER,
STORE_TARGET_CLIENT
};
#pragma pack(push, 1)
struct VPKFileEntry_t
{
char* m_pszDirectory;
char* m_pszFileName;
char* m_pszExtension;
uint8_t unknown[0x38];
};
struct VPKData_t
{
int m_nHandle;
char pad[1];
char m_szPath[255];
uint8_t unknown2[0x134];
int32_t m_nEntries;
uint8_t unknown3[12];
VPKFileEntry_t* m_pEntries;
};
#pragma pack(pop)
#endif // IPACKEDSTORE_H