summaryrefslogtreecommitdiffstats
path: root/src/Protocol/ProtocolPalettes.cpp
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/Protocol/ProtocolPalettes.cpp107
1 files changed, 0 insertions, 107 deletions
diff --git a/src/Protocol/ProtocolPalettes.cpp b/src/Protocol/ProtocolPalettes.cpp
deleted file mode 100644
index 2dc0857a9..000000000
--- a/src/Protocol/ProtocolPalettes.cpp
+++ /dev/null
@@ -1,107 +0,0 @@
-#include "Globals.h"
-#include "ProtocolPalettes.h"
-#include "../BlockTypePalette.h"
-
-
-
-
-
-void ProtocolPalettes::load(const AString & aProtocolFolder)
-{
- auto contents = cFile::GetFolderContents(aProtocolFolder);
- for (const auto & c: contents)
- {
- auto fullName = aProtocolFolder + cFile::PathSeparator() + c;
- if (cFile::IsFolder(fullName))
- {
- loadSingleVersion(c, fullName);
- }
- }
-}
-
-
-
-
-
-std::shared_ptr<const BlockTypePalette> ProtocolPalettes::blockTypePalette(const AString & aProtocolVersion) const
-{
- cCSLock lock(mCS);
- auto itr = mPalettes.find(aProtocolVersion);
- if (itr == mPalettes.end())
- {
- return nullptr;
- }
- return itr->second.mBlockTypePalette;
-}
-
-
-
-
-
-std::vector<AString> ProtocolPalettes::protocolVersions() const
-{
- cCSLock lock(mCS);
-
- std::vector<AString> res;
- for (const auto & p: mPalettes)
- {
- res.push_back(p.first);
- }
- return res;
-}
-
-
-
-
-
-void ProtocolPalettes::loadSingleVersion(const AString & aProtocolVersion, const AString & aFolder)
-{
- // Get the file list, sort by name
- auto contents = cFile::GetFolderContents(aFolder);
- std::sort(contents.begin(), contents.end());
-
- // Load files into the palettes:
- cCSLock lock(mCS);
- auto & pal = mPalettes[aProtocolVersion];
- for (const auto & c: contents)
- {
- if (c.length() < 8)
- {
- // Name too short, can't have the ".btp.txt" etc. suffix
- continue;
- }
- auto fnam = aFolder + cFile::PathSeparator() + c;
- if (!cFile::IsFile(fnam))
- {
- continue;
- }
- auto fileType = c.substr(c.length() - 8);
- if ((fileType == ".btp.txt") || (c == "blocks.json"))
- {
- try
- {
- pal.mBlockTypePalette->loadFromString(cFile::ReadWholeFile(fnam));
- }
- catch (...)
- {
- // Ignore silently
- }
- }
- else if ((fileType == ".itp.txt") || (c == "items.json"))
- {
- // TODO: Load item type palette
- }
- }
-}
-
-
-
-
-
-////////////////////////////////////////////////////////////////////////////////
-// ProtocolPalettes::Palettes:
-
-ProtocolPalettes::Palettes::Palettes():
- mBlockTypePalette(new BlockTypePalette)
-{
-}