PacksManager added to engine

This commit is contained in:
MihailRis
2024-04-08 13:09:38 +03:00
parent 3655464b6f
commit f9d391e05a
9 changed files with 93 additions and 67 deletions
+1
View File
@@ -3,6 +3,7 @@
#include "../../engine.h"
#include "../../files/WorldFiles.h"
#include "../../content/PacksManager.h"
#include "../../graphics/ui/elements/containers.h"
#include "../../graphics/ui/elements/controls.h"
#include "../../graphics/ui/gui_util.h"
+11 -2
View File
@@ -2,6 +2,7 @@
#include "menu_commons.h"
#include "../../coders/png.h"
#include "../../content/PacksManager.h"
#include "../../content/ContentLUT.h"
#include "../../engine.h"
#include "../../files/WorldFiles.h"
@@ -181,8 +182,16 @@ void create_content_panel(Engine* engine, LevelController* controller) {
auto menu = engine->getGUI()->getMenu();
auto mainPanel = menus::create_page(engine, "content", 550, 0.0f, 5);
std::vector<ContentPack> scanned;
ContentPack::scan(engine->getPaths(), scanned);
auto paths = engine->getPaths();
PacksManager manager;
manager.setSources({
paths->getWorldFolder()/fs::path("content"),
paths->getUserfiles()/fs::path("content"),
paths->getResources()/fs::path("content")
});
manager.scan();
std::vector<ContentPack> scanned = manager.getAll(manager.getAllNames());
for (const auto& pack : engine->getContentPacks()) {
for (size_t i = 0; i < scanned.size(); i++) {
if (scanned[i].id == pack.id) {