summaryrefslogtreecommitdiffstats
path: root/api/logic/minecraft/launch/CreateServerResourcePacksFolder.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'api/logic/minecraft/launch/CreateServerResourcePacksFolder.cpp')
-rw-r--r--api/logic/minecraft/launch/CreateServerResourcePacksFolder.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/api/logic/minecraft/launch/CreateServerResourcePacksFolder.cpp b/api/logic/minecraft/launch/CreateServerResourcePacksFolder.cpp
new file mode 100644
index 00000000..9f9041d0
--- /dev/null
+++ b/api/logic/minecraft/launch/CreateServerResourcePacksFolder.cpp
@@ -0,0 +1,19 @@
+#include "CreateServerResourcePacksFolder.h"
+#include "minecraft/MinecraftInstance.h"
+#include "launch/LaunchTask.h"
+#include "FileSystem.h""
+
+CreateServerResourcePacksFolder::CreateServerResourcePacksFolder(LaunchTask* parent): LaunchStep(parent)
+{
+}
+
+void CreateServerResourcePacksFolder::executeTask()
+{
+ auto instance = m_parent->instance();
+ std::shared_ptr<MinecraftInstance> minecraftInstance = std::dynamic_pointer_cast<MinecraftInstance>(instance);
+ if(!FS::ensureFolderPathExists(FS::PathCombine(minecraftInstance->minecraftRoot(), "server-resource-packs")))
+ {
+ emit logLine(tr("Couldn't create the 'server-resource-packs' folder"), MessageLevel::Error);
+ }
+ emitSucceeded();
+}