From f0ba64cc0894de59e9b7046f07aff044d7c8ecd5 Mon Sep 17 00:00:00 2001 From: Kaloyan Chehlarski Date: Tue, 24 Oct 2023 21:22:17 +0300 Subject: [PATCH] NANCY: Add ciftree_export console command --- engines/nancy/console.cpp | 22 +++++++++++++++++++++- engines/nancy/console.h | 1 + 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/engines/nancy/console.cpp b/engines/nancy/console.cpp index 5b14af25596..1795f3c46d9 100644 --- a/engines/nancy/console.cpp +++ b/engines/nancy/console.cpp @@ -45,6 +45,7 @@ namespace Nancy { NancyConsole::NancyConsole() : GUI::Debugger() { registerCmd("load_cal", WRAP_METHOD(NancyConsole, Cmd_loadCal)); registerCmd("cif_export", WRAP_METHOD(NancyConsole, Cmd_cifExport)); + registerCmd("ciftree_export", WRAP_METHOD(NancyConsole, Cmd_ciftreeExport)); registerCmd("cif_list", WRAP_METHOD(NancyConsole, Cmd_cifList)); registerCmd("cif_info", WRAP_METHOD(NancyConsole, Cmd_cifInfo)); registerCmd("chunk_export", WRAP_METHOD(NancyConsole, Cmd_chunkExport)); @@ -162,7 +163,26 @@ bool NancyConsole::Cmd_cifExport(int argc, const char **argv) { if (!g_nancy->_resource->exportCif((argc == 2 ? "" : argv[2]), argv[1])) debugPrintf("Failed to export '%s'\n", argv[1]); - return true; + return cmdExit(0, nullptr); +} + +bool NancyConsole::Cmd_ciftreeExport(int argc, const char **argv) { + if (argc < 3) { + debugPrintf("Exports the specified resources to a ciftree\n"); + debugPrintf("Usage: %s \n", argv[0]); + return true; + } + + Common::StringArray files; + + for (int i = 2; i < argc; ++i) { + files.push_back(argv[i]); + } + + if (!g_nancy->_resource->exportCifTree(argv[1], files)) + debugPrintf("Failed to export '%s'\n", argv[1]); + + return cmdExit(0, nullptr); } bool NancyConsole::Cmd_cifList(int argc, const char **argv) { diff --git a/engines/nancy/console.h b/engines/nancy/console.h index b5ca36af02b..268d5942c3c 100644 --- a/engines/nancy/console.h +++ b/engines/nancy/console.h @@ -43,6 +43,7 @@ public: private: bool Cmd_loadCal(int argc, const char **argv); bool Cmd_cifExport(int argc, const char **argv); + bool Cmd_ciftreeExport(int argc, const char **argv); bool Cmd_cifList(int argc, const char **argv); bool Cmd_cifInfo(int argc, const char **argv); bool Cmd_chunkExport(int argc, const char **argv);