[Download]: Add maprotation to info endpoint
This commit is contained in:
parent
b65c965d1d
commit
dfe28f4e88
@ -4,8 +4,6 @@
|
|||||||
#define STB_TRUETYPE_IMPLEMENTATION
|
#define STB_TRUETYPE_IMPLEMENTATION
|
||||||
#include <stb_truetype.hpp>
|
#include <stb_truetype.hpp>
|
||||||
|
|
||||||
#include <json.hpp>
|
|
||||||
|
|
||||||
namespace Assets
|
namespace Assets
|
||||||
{
|
{
|
||||||
namespace
|
namespace
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
#include <STDInclude.hpp>
|
#include <STDInclude.hpp>
|
||||||
#include "IGameWorldMp.hpp"
|
#include "IGameWorldMp.hpp"
|
||||||
|
|
||||||
#include <json.hpp>
|
|
||||||
|
|
||||||
#define IW4X_GAMEWORLD_VERSION 1
|
#define IW4X_GAMEWORLD_VERSION 1
|
||||||
|
|
||||||
namespace Assets
|
namespace Assets
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
#include <STDInclude.hpp>
|
#include <STDInclude.hpp>
|
||||||
#include "ILocalizeEntry.hpp"
|
#include "ILocalizeEntry.hpp"
|
||||||
|
|
||||||
#include <json.hpp>
|
|
||||||
|
|
||||||
namespace Assets
|
namespace Assets
|
||||||
{
|
{
|
||||||
void ILocalizeEntry::load(Game::XAssetHeader* header, const std::string& name, Components::ZoneBuilder::Zone* builder)
|
void ILocalizeEntry::load(Game::XAssetHeader* header, const std::string& name, Components::ZoneBuilder::Zone* builder)
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
#include <STDInclude.hpp>
|
#include <STDInclude.hpp>
|
||||||
#include "Bans.hpp"
|
#include "Bans.hpp"
|
||||||
|
|
||||||
#include <json.hpp>
|
|
||||||
|
|
||||||
namespace Components
|
namespace Components
|
||||||
{
|
{
|
||||||
const char* Bans::BanListFile = "userraw/bans.json";
|
const char* Bans::BanListFile = "userraw/bans.json";
|
||||||
|
@ -5,8 +5,6 @@
|
|||||||
|
|
||||||
#include "GSC/Script.hpp"
|
#include "GSC/Script.hpp"
|
||||||
|
|
||||||
#include <json.hpp>
|
|
||||||
|
|
||||||
namespace Components
|
namespace Components
|
||||||
{
|
{
|
||||||
Dvar::Var Chat::cg_chatWidth;
|
Dvar::Var Chat::cg_chatWidth;
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
#include <Utils/WebIO.hpp>
|
#include <Utils/WebIO.hpp>
|
||||||
|
|
||||||
#include "Download.hpp"
|
#include "Download.hpp"
|
||||||
|
#include "MapRotation.hpp"
|
||||||
#include "Party.hpp"
|
#include "Party.hpp"
|
||||||
#include "ServerInfo.hpp"
|
#include "ServerInfo.hpp"
|
||||||
|
|
||||||
@ -348,10 +349,6 @@ namespace Components
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma endregion
|
|
||||||
|
|
||||||
#pragma region Server
|
|
||||||
|
|
||||||
void Download::DownloadProgress(FileDownload* fDownload, std::size_t bytes)
|
void Download::DownloadProgress(FileDownload* fDownload, std::size_t bytes)
|
||||||
{
|
{
|
||||||
fDownload->receivedBytes += bytes;
|
fDownload->receivedBytes += bytes;
|
||||||
@ -415,6 +412,10 @@ namespace Components
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#pragma endregion
|
||||||
|
|
||||||
|
#pragma region Server
|
||||||
|
|
||||||
static std::string InfoHandler()
|
static std::string InfoHandler()
|
||||||
{
|
{
|
||||||
const auto status = ServerInfo::GetInfo();
|
const auto status = ServerInfo::GetInfo();
|
||||||
@ -423,6 +424,7 @@ namespace Components
|
|||||||
std::unordered_map<std::string, nlohmann::json> info;
|
std::unordered_map<std::string, nlohmann::json> info;
|
||||||
info["status"] = status.to_json();
|
info["status"] = status.to_json();
|
||||||
info["host"] = host.to_json();
|
info["host"] = host.to_json();
|
||||||
|
info["map_rotation"] = MapRotation::to_json();
|
||||||
|
|
||||||
std::vector<nlohmann::json> players;
|
std::vector<nlohmann::json> players;
|
||||||
|
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
#include <STDInclude.hpp>
|
#include <STDInclude.hpp>
|
||||||
|
|
||||||
#include <json.hpp>
|
|
||||||
|
|
||||||
#include "ScriptStorage.hpp"
|
#include "ScriptStorage.hpp"
|
||||||
#include "Script.hpp"
|
#include "Script.hpp"
|
||||||
|
|
||||||
|
@ -78,6 +78,32 @@ namespace Components
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
nlohmann::json MapRotation::RotationData::to_json() const
|
||||||
|
{
|
||||||
|
std::vector<std::string> mapVector;
|
||||||
|
std::vector<std::string> gametypeVector;
|
||||||
|
|
||||||
|
for (const auto& [key, val] : this->rotationEntries_)
|
||||||
|
{
|
||||||
|
if (key == "map"s)
|
||||||
|
{
|
||||||
|
mapVector.emplace_back(val);
|
||||||
|
}
|
||||||
|
else if (key == "gametype"s)
|
||||||
|
{
|
||||||
|
gametypeVector.emplace_back(val);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
auto mapRotationJson = nlohmann::json
|
||||||
|
{
|
||||||
|
{"maps", mapVector},
|
||||||
|
{"gametypes", gametypeVector},
|
||||||
|
};
|
||||||
|
|
||||||
|
return mapRotationJson;
|
||||||
|
}
|
||||||
|
|
||||||
void MapRotation::LoadRotation(const std::string& data)
|
void MapRotation::LoadRotation(const std::string& data)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
@ -142,6 +168,12 @@ namespace Components
|
|||||||
return DedicatedRotation.contains(key, value);
|
return DedicatedRotation.contains(key, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
nlohmann::json MapRotation::to_json()
|
||||||
|
{
|
||||||
|
assert(!DedicatedRotation.empty());
|
||||||
|
return DedicatedRotation.to_json();
|
||||||
|
}
|
||||||
|
|
||||||
bool MapRotation::ShouldRotate()
|
bool MapRotation::ShouldRotate()
|
||||||
{
|
{
|
||||||
if (!Dedicated::IsEnabled() && SVDontRotate.get<bool>())
|
if (!Dedicated::IsEnabled() && SVDontRotate.get<bool>())
|
||||||
|
@ -9,6 +9,8 @@ namespace Components
|
|||||||
|
|
||||||
static bool Contains(const std::string& key, const std::string& value);
|
static bool Contains(const std::string& key, const std::string& value);
|
||||||
|
|
||||||
|
static nlohmann::json to_json();
|
||||||
|
|
||||||
bool unitTest() override;
|
bool unitTest() override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
@ -39,6 +41,8 @@ namespace Components
|
|||||||
[[nodiscard]] bool empty() const noexcept;
|
[[nodiscard]] bool empty() const noexcept;
|
||||||
[[nodiscard]] bool contains(const std::string& key, const std::string& value) const;
|
[[nodiscard]] bool contains(const std::string& key, const std::string& value) const;
|
||||||
|
|
||||||
|
[[nodiscard]] nlohmann::json to_json() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
std::vector<rotationEntry> rotationEntries_;
|
std::vector<rotationEntry> rotationEntries_;
|
||||||
|
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
#include <STDInclude.hpp>
|
#include <STDInclude.hpp>
|
||||||
|
|
||||||
#include <json.hpp>
|
|
||||||
|
|
||||||
#include "FastFiles.hpp"
|
#include "FastFiles.hpp"
|
||||||
#include "RawFiles.hpp"
|
#include "RawFiles.hpp"
|
||||||
#include "StartupMessages.hpp"
|
#include "StartupMessages.hpp"
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
#include <STDInclude.hpp>
|
#include <STDInclude.hpp>
|
||||||
#include "StructuredData.hpp"
|
#include "StructuredData.hpp"
|
||||||
|
|
||||||
#include <json.hpp>
|
|
||||||
|
|
||||||
namespace Components
|
namespace Components
|
||||||
{
|
{
|
||||||
Utils::Memory::Allocator StructuredData::MemAllocator;
|
Utils::Memory::Allocator StructuredData::MemAllocator;
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
#include <STDInclude.hpp>
|
#include <STDInclude.hpp>
|
||||||
|
|
||||||
#include <json.hpp>
|
|
||||||
|
|
||||||
#include "Theatre.hpp"
|
#include "Theatre.hpp"
|
||||||
#include "UIFeeder.hpp"
|
#include "UIFeeder.hpp"
|
||||||
|
|
||||||
|
@ -4,8 +4,6 @@
|
|||||||
#include "Console.hpp"
|
#include "Console.hpp"
|
||||||
#include "FastFiles.hpp"
|
#include "FastFiles.hpp"
|
||||||
|
|
||||||
#include <json.hpp>
|
|
||||||
|
|
||||||
#include <version.hpp>
|
#include <version.hpp>
|
||||||
|
|
||||||
#include "AssetInterfaces/ILocalizeEntry.hpp"
|
#include "AssetInterfaces/ILocalizeEntry.hpp"
|
||||||
|
@ -109,6 +109,7 @@ using namespace std::literals;
|
|||||||
#define AssertUnreachable assert(0 && "unreachable")
|
#define AssertUnreachable assert(0 && "unreachable")
|
||||||
|
|
||||||
#include <gsl/gsl>
|
#include <gsl/gsl>
|
||||||
|
#include <json.hpp>
|
||||||
#include <tomcrypt.h>
|
#include <tomcrypt.h>
|
||||||
|
|
||||||
#pragma warning(pop)
|
#pragma warning(pop)
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include <json.hpp>
|
|
||||||
|
|
||||||
namespace Utils
|
namespace Utils
|
||||||
{
|
{
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include <json.hpp>
|
|
||||||
|
|
||||||
namespace Utils::Json
|
namespace Utils::Json
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user