MinecraftConsoles/Minecraft.Client/FolderTexturePack.h
2026-03-21 22:21:17 -07:00

37 lines
1.1 KiB
C++

#pragma once
#include "AbstractTexturePack.h"
class FolderTexturePack : public AbstractTexturePack
{
private:
bool bUILoaded;
unordered_map<wstring, wstring> _cachedFiles;
vector<byte> _iconData;
void cacheFiles(File& dir, int folderLen);
public:
FolderTexturePack(DWORD id, const wstring &name, File *folder, TexturePack *fallback);
DLCPack* getDLCPack();
void loadIcon();
void loadDescription();
bool hasData();
bool isLoadingData();
wstring getAnimationString(const wstring& textureName, const wstring& path, bool allowFallback);
protected:
//@Override
InputStream *getResourceImplementation(const wstring &name); //throws IOException
void loadName();
public:
//@Override
bool hasFile(const wstring &name);
bool isTerrainUpdateCompatible();
BufferedImage* getImageResource(const wstring& File, bool filenameHasExtension = false, bool bTitleUpdateTexture = false, const wstring& drive = L"");
// 4J Added
virtual wstring getPath(bool bTitleUpdateTexture = false, const char *pchBDPatchFilename=nullptr);
virtual void loadUI();
virtual void unloadUI();
};