|
@@ -9,19 +9,19 @@
|
|
#include <iostream>
|
|
#include <iostream>
|
|
#include <fstream>
|
|
#include <fstream>
|
|
|
|
|
|
-Lotro::Lotro(QSettings& app_settings_, QObject *parent) : app_settings(app_settings_),
|
|
|
|
|
|
+Lotro::Lotro(QSettings* app_settings_, QObject *parent) : app_settings(app_settings_),
|
|
QObject(parent) {
|
|
QObject(parent) {
|
|
}
|
|
}
|
|
|
|
|
|
-void Lotro::initialiseDatFile(QString file_name) {
|
|
|
|
|
|
+void Lotro::initialiseDatFile(QString file_path) {
|
|
if (!tryToBlockFile())
|
|
if (!tryToBlockFile())
|
|
return;
|
|
return;
|
|
- emit processStarted("initialiseDatFile", {file_name});
|
|
|
|
|
|
+ emit processStarted("initialiseDatFile", {file_path});
|
|
|
|
|
|
- qDebug() << "Initialising file " << file_name;
|
|
|
|
|
|
+ qDebug() << "Initialising file " << file_path;
|
|
|
|
|
|
if (!FileSystem::fileExists(file_path)) {
|
|
if (!FileSystem::fileExists(file_path)) {
|
|
- emit caughtError("initialiseDatFile", {QString("Ошибка инициализации"), QString("Файл " + file_path + " несуществует! Невозможно инициализировать файл ресурсов.")});
|
|
|
|
|
|
+ emit caughtError(QString("initialiseDatFile"), {QString("Ошибка инициализации"), QString("Файл " + file_path + " несуществует! Невозможно инициализировать файл ресурсов.")});
|
|
busy = false;
|
|
busy = false;
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
@@ -36,8 +36,6 @@ void Lotro::changeLocale() {
|
|
return;
|
|
return;
|
|
|
|
|
|
qDebug() << "Changing locale of dat file...";
|
|
qDebug() << "Changing locale of dat file...";
|
|
- emit processStarted("changeLocale", {current_locale, new_locale});
|
|
|
|
-
|
|
|
|
// Setting locale, opposite to current
|
|
// Setting locale, opposite to current
|
|
auto current_locale = file.GetLocaleManager().GetCurrentLocale();
|
|
auto current_locale = file.GetLocaleManager().GetCurrentLocale();
|
|
auto new_locale = current_locale == LOTRO_DAT::DatLocaleManager::PATCHED ?
|
|
auto new_locale = current_locale == LOTRO_DAT::DatLocaleManager::PATCHED ?
|
|
@@ -46,6 +44,7 @@ void Lotro::changeLocale() {
|
|
|
|
|
|
QString old_locale_name = (current_locale == LOTRO_DAT::DatLocaleManager::PATCHED ? "Русифицированная" : "Оригинальная");
|
|
QString old_locale_name = (current_locale == LOTRO_DAT::DatLocaleManager::PATCHED ? "Русифицированная" : "Оригинальная");
|
|
QString new_locale_name = (new_locale == LOTRO_DAT::DatLocaleManager::PATCHED ? "Русифицированная" : "Оригинальная");
|
|
QString new_locale_name = (new_locale == LOTRO_DAT::DatLocaleManager::PATCHED ? "Русифицированная" : "Оригинальная");
|
|
|
|
+ emit processStarted("changeLocale", {old_locale_name, new_locale_name});
|
|
|
|
|
|
|
|
|
|
auto operation = file.GetLocaleManager().SetLocale(new_locale);
|
|
auto operation = file.GetLocaleManager().SetLocale(new_locale);
|
|
@@ -68,7 +67,7 @@ void Lotro::getLocaleFileContents(long long file_id, int locale) {
|
|
|
|
|
|
emit processStarted("getFileContents", {file_id, locale});
|
|
emit processStarted("getFileContents", {file_id, locale});
|
|
|
|
|
|
- auto getfile_op = file.GetLocaleManager().GetLocaleFile(file_id, locale);
|
|
|
|
|
|
+ auto getfile_op = file.GetLocaleManager().GetLocaleFile(file_id, (LOTRO_DAT::DatLocaleManager::LOCALE)locale);
|
|
if (!getfile_op.result) {
|
|
if (!getfile_op.result) {
|
|
emit caughtError("getFileContents", {"Файл не найден!", QString("Не удаётся найти файл с id ") + QString::number(file_id)});
|
|
emit caughtError("getFileContents", {"Файл не найден!", QString("Не удаётся найти файл с id ") + QString::number(file_id)});
|
|
emit processFinished("getFileContents", {"Error"});
|
|
emit processFinished("getFileContents", {"Error"});
|
|
@@ -101,7 +100,7 @@ void Lotro::importFilesFromDatabase(QString database_path) {
|
|
emit processStarted("importFilesFromDatabase", {database_path});
|
|
emit processStarted("importFilesFromDatabase", {database_path});
|
|
|
|
|
|
if (!FileSystem::fileExists(database_path)) {
|
|
if (!FileSystem::fileExists(database_path)) {
|
|
- emit caughtError("importFilesFromDatabase", {QString("Ошибка импорта!"), QString("Файл " + file_path + " не существует! Невозможно инициализировать базу данных!")});
|
|
|
|
|
|
+ emit caughtError(QString("importFilesFromDatabase"), {QString("Ошибка импорта!"), QString("Файл " + database_path + " не существует! Невозможно инициализировать базу данных!")});
|
|
emit processFinished("importFilesFromDatabase", {QString("Error")});
|
|
emit processFinished("importFilesFromDatabase", {QString("Error")});
|
|
busy = false;
|
|
busy = false;
|
|
return;
|
|
return;
|
|
@@ -143,7 +142,7 @@ void Lotro::importFile(long long file_id, QString file_path) {
|
|
data.options["fid"] = file_id;
|
|
data.options["fid"] = file_id;
|
|
|
|
|
|
auto getfile_op = file.GetFileSystem().GetFile(file_id);
|
|
auto getfile_op = file.GetFileSystem().GetFile(file_id);
|
|
- if (getfile_op.value == LOTRO_DAT::ERROR) {
|
|
|
|
|
|
+ if (getfile_op.result == LOTRO_DAT::ERROR) {
|
|
emit caughtError("importFile", {QString("Ошибка импорта!"), QString("Файл с id ") + QString::number(file_id) + QString(" не существует в ресурсах игры! Невозможно импортировать :/")});
|
|
emit caughtError("importFile", {QString("Ошибка импорта!"), QString("Файл с id ") + QString::number(file_id) + QString(" не существует в ресурсах игры! Невозможно импортировать :/")});
|
|
emit processFinished("importFile", {QString("Error")});
|
|
emit processFinished("importFile", {QString("Error")});
|
|
busy = false;
|
|
busy = false;
|
|
@@ -207,7 +206,7 @@ void Lotro::importTextFragment(long long file_id, long long fragment_id,
|
|
emit caughtError("importTextFragment", {"Ошибка формата!", QString("Текстовые данные содержат указатели на аргументы DO_NOT_TOUCH! Такого быть не должно! Пользуйтесь порядком перечисления аргументов внизу")});
|
|
emit caughtError("importTextFragment", {"Ошибка формата!", QString("Текстовые данные содержат указатели на аргументы DO_NOT_TOUCH! Такого быть не должно! Пользуйтесь порядком перечисления аргументов внизу")});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
busy = false;
|
|
busy = false;
|
|
- return false;
|
|
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
auto getfile_op = file.GetFileSystem().GetFile(file_id);
|
|
auto getfile_op = file.GetFileSystem().GetFile(file_id);
|
|
@@ -215,10 +214,10 @@ void Lotro::importTextFragment(long long file_id, long long fragment_id,
|
|
emit caughtError("importTextFragment", {"Файл не найден!", QString("Не удаётся найти в ресурсах файл с id ") + QString::number(file_id)});
|
|
emit caughtError("importTextFragment", {"Файл не найден!", QString("Не удаётся найти в ресурсах файл с id ") + QString::number(file_id)});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
busy = false;
|
|
busy = false;
|
|
- return false;
|
|
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
- LOTRO_DAT::SubFile subfile = getfile_op.value;
|
|
|
|
|
|
+ LOTRO_DAT::SubFile subfile = *getfile_op.value;
|
|
|
|
|
|
auto getfiledata_op = file.GetFileSystem().GetFileData(subfile, 8);
|
|
auto getfiledata_op = file.GetFileSystem().GetFileData(subfile, 8);
|
|
|
|
|
|
@@ -226,29 +225,29 @@ void Lotro::importTextFragment(long long file_id, long long fragment_id,
|
|
emit caughtError("importTextFragment", {"Ошибка импорта!", QString("Обнаружены некорректные данные файла в словаре! Файл ресурсов мог быть повреждён!\nid = ") + QString::number(file_id)});
|
|
emit caughtError("importTextFragment", {"Ошибка импорта!", QString("Обнаружены некорректные данные файла в словаре! Файл ресурсов мог быть повреждён!\nid = ") + QString::number(file_id)});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
busy = false;
|
|
busy = false;
|
|
- return false;
|
|
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
LOTRO_DAT::SubfileData data = subfile.PrepareForExport(getfiledata_op.value);
|
|
LOTRO_DAT::SubfileData data = subfile.PrepareForExport(getfiledata_op.value);
|
|
- if (!result) {
|
|
|
|
|
|
+ if (data.Empty()) {
|
|
emit caughtError("importTextFragment", {"Ошибка импорта!", QString("Не удалось подготовить файл к изменению фрагмента!\nid = ") + QString::number(file_id)});
|
|
emit caughtError("importTextFragment", {"Ошибка импорта!", QString("Не удалось подготовить файл к изменению фрагмента!\nid = ") + QString::number(file_id)});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
busy = false;
|
|
busy = false;
|
|
- return false;
|
|
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
- int beginning = data.text_data.find(QString::number(fragment_id).toStdU16String(), 0);
|
|
|
|
|
|
+ unsigned beginning = data.text_data.find(QString::number(fragment_id).toStdU16String(), 0);
|
|
if (beginning == std::u16string::npos) {
|
|
if (beginning == std::u16string::npos) {
|
|
emit caughtError("importTextFragment", {"Ошибка импорта!", QString("Не удалось найти фрагмент в файле!\nid = ") + QString::number(file_id) + "\nfragment_id = " + QString::number(fragment_id)});
|
|
emit caughtError("importTextFragment", {"Ошибка импорта!", QString("Не удалось найти фрагмент в файле!\nid = ") + QString::number(file_id) + "\nfragment_id = " + QString::number(fragment_id)});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
busy = false;
|
|
busy = false;
|
|
- return false;
|
|
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
- int ending = data.text_data.find(QString("|||").toStdU16String(), beginning);
|
|
|
|
|
|
+ unsigned ending = data.text_data.find(QString("|||").toStdU16String(), beginning);
|
|
|
|
|
|
QString new_fragment = QString::number(fragment_id) + ":::" + arguments + ":::" + fragment_contents;
|
|
QString new_fragment = QString::number(fragment_id) + ":::" + arguments + ":::" + fragment_contents;
|
|
- std::u16string new_text = data.text_data.substr(0, beginning) + new_fragment.toStdU16String() + result.text_data.substr(ending);
|
|
|
|
|
|
+ std::u16string new_text = data.text_data.substr(0, beginning) + new_fragment.toStdU16String() + data.text_data.substr(ending);
|
|
data.text_data = new_text;
|
|
data.text_data = new_text;
|
|
|
|
|
|
auto patchfile_op = file.GetPatcher().PatchFile(data);
|
|
auto patchfile_op = file.GetPatcher().PatchFile(data);
|
|
@@ -273,10 +272,10 @@ void Lotro::getTextFragment(long long file_id, long long fragment_id) {
|
|
emit caughtError("getTextFragment", {"Файл не найден!", QString("Не удаётся найти в ресурсах файл с id ") + QString::number(file_id)});
|
|
emit caughtError("getTextFragment", {"Файл не найден!", QString("Не удаётся найти в ресурсах файл с id ") + QString::number(file_id)});
|
|
emit processFinished("getTextFragment", {"Error"});
|
|
emit processFinished("getTextFragment", {"Error"});
|
|
busy = false;
|
|
busy = false;
|
|
- return false;
|
|
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
- LOTRO_DAT::SubFile subfile = getfile_op.value;
|
|
|
|
|
|
+ LOTRO_DAT::SubFile subfile = *getfile_op.value;
|
|
|
|
|
|
auto getfiledata_op = file.GetFileSystem().GetFileData(subfile, 8);
|
|
auto getfiledata_op = file.GetFileSystem().GetFileData(subfile, 8);
|
|
|
|
|
|
@@ -284,28 +283,28 @@ void Lotro::getTextFragment(long long file_id, long long fragment_id) {
|
|
emit caughtError("getTextFragment", {"Ошибка импорта!", QString("Обнаружены некорректные данные файла в словаре! Файл ресурсов мог быть повреждён!\nid = ") + QString::number(file_id)});
|
|
emit caughtError("getTextFragment", {"Ошибка импорта!", QString("Обнаружены некорректные данные файла в словаре! Файл ресурсов мог быть повреждён!\nid = ") + QString::number(file_id)});
|
|
emit processFinished("getTextFragment", {"Error"});
|
|
emit processFinished("getTextFragment", {"Error"});
|
|
busy = false;
|
|
busy = false;
|
|
- return false;
|
|
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
LOTRO_DAT::SubfileData data = subfile.PrepareForExport(getfiledata_op.value);
|
|
LOTRO_DAT::SubfileData data = subfile.PrepareForExport(getfiledata_op.value);
|
|
- if (!result) {
|
|
|
|
|
|
+ if (data.Empty()) {
|
|
emit caughtError("getTextFragment", {"Ошибка импорта!", QString("Не удалось подготовить файл к изменению фрагмента!\nid = ") + QString::number(file_id)});
|
|
emit caughtError("getTextFragment", {"Ошибка импорта!", QString("Не удалось подготовить файл к изменению фрагмента!\nid = ") + QString::number(file_id)});
|
|
emit processFinished("getTextFragment", {"Error"});
|
|
emit processFinished("getTextFragment", {"Error"});
|
|
busy = false;
|
|
busy = false;
|
|
- return false;
|
|
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
- int beginning = data.text_data.find(QString::number(fragment_id).toStdU16String(), 0);
|
|
|
|
|
|
+ unsigned beginning = data.text_data.find(QString::number(fragment_id).toStdU16String(), 0);
|
|
if (beginning == std::u16string::npos) {
|
|
if (beginning == std::u16string::npos) {
|
|
emit caughtError("importTextFragment", {"Ошибка импорта!", QString("Не удалось найти фрагмент в файле!\nid = ") + QString::number(file_id) + "\nfragment_id = " + QString::number(fragment_id)});
|
|
emit caughtError("importTextFragment", {"Ошибка импорта!", QString("Не удалось найти фрагмент в файле!\nid = ") + QString::number(file_id) + "\nfragment_id = " + QString::number(fragment_id)});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
busy = false;
|
|
busy = false;
|
|
- return false;
|
|
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
- int ending = data.text_data.find(QString("|||").toStdU16String(), beginning);
|
|
|
|
|
|
+ unsigned ending = data.text_data.find(QString("|||").toStdU16String(), beginning);
|
|
|
|
|
|
- int size = std::u16string::npos;
|
|
|
|
|
|
+ unsigned size = std::u16string::npos;
|
|
|
|
|
|
if (ending != std::u16string::npos)
|
|
if (ending != std::u16string::npos)
|
|
size = ending - beginning;
|
|
size = ending - beginning;
|
|
@@ -317,7 +316,7 @@ void Lotro::getTextFragment(long long file_id, long long fragment_id) {
|
|
emit caughtError("importTextFragment", {"Ошибка импорта!", QString("Получены некорректные данные фрагмента!\nДанные:") + QString::fromStdU16String(str)});
|
|
emit caughtError("importTextFragment", {"Ошибка импорта!", QString("Получены некорректные данные фрагмента!\nДанные:") + QString::fromStdU16String(str)});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
emit processFinished("importTextFragment", {"Error"});
|
|
busy = false;
|
|
busy = false;
|
|
- return false;
|
|
|
|
|
|
+ return;
|
|
}
|
|
}
|
|
|
|
|
|
busy = false;
|
|
busy = false;
|
|
@@ -385,15 +384,15 @@ void Lotro::extractGrouppedFiles(QString output_foldername, LOTRO_DAT::FILE_TYPE
|
|
if (!tryToBlockFile())
|
|
if (!tryToBlockFile())
|
|
return;
|
|
return;
|
|
|
|
|
|
- emit processStarted("extractSingleFile", {output_foldername, file_id});
|
|
|
|
|
|
+ emit processStarted("extractGrouppedFiles", {output_foldername, type});
|
|
auto extractfile_op = file.GetExporter().ExtractAllFilesByType(type, output_foldername.toStdString());
|
|
auto extractfile_op = file.GetExporter().ExtractAllFilesByType(type, output_foldername.toStdString());
|
|
busy = false;
|
|
busy = false;
|
|
|
|
|
|
if (extractfile_op.result == LOTRO_DAT::SUCCESS) {
|
|
if (extractfile_op.result == LOTRO_DAT::SUCCESS) {
|
|
- emit processFinished("extractSingleFile", {"Success", output_foldername, type});
|
|
|
|
|
|
+ emit processFinished("extractGrouppedFiles", {"Success", output_foldername, type, extractfile_op.value});
|
|
} else {
|
|
} else {
|
|
- emit caughtError("extractSingleFile", {"Ошибка экспорта!", QString("Не удаётся экспортировать файл " + QString::number(file_id) + " в файл " + output_filename)});
|
|
|
|
- emit processFinished("extractSingleFile", {"Error", output_foldername});
|
|
|
|
|
|
+ emit caughtError("extractGrouppedFiles", {"Ошибка экспорта!", QString("Не удаётся экспортировать файлы с типом " + QString::number(type) + " в папку " + output_foldername)});
|
|
|
|
+ emit processFinished("extractGrouppedFiles", {"Error", output_foldername, type, extractfile_op.value});
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -401,7 +400,7 @@ void Lotro::extractGrouppedFilesToDatabase(QString database_path, LOTRO_DAT::FIL
|
|
if (!tryToBlockFile())
|
|
if (!tryToBlockFile())
|
|
return;
|
|
return;
|
|
|
|
|
|
- emit processStarted("extractGrouppedFilesToDatabase", {database_path, file_id});
|
|
|
|
|
|
+ emit processStarted(QString("extractGrouppedFilesToDatabase"), {database_path, type});
|
|
LOTRO_DAT::Database db;
|
|
LOTRO_DAT::Database db;
|
|
if (!db.InitDatabase(database_path.toStdString())) {
|
|
if (!db.InitDatabase(database_path.toStdString())) {
|
|
emit caughtError("extractGrouppedFilesToDatabase", {"Ошибка экспорта!", QString("Не удаётся создать/открыть базу данных " + database_path)});
|
|
emit caughtError("extractGrouppedFilesToDatabase", {"Ошибка экспорта!", QString("Не удаётся создать/открыть базу данных " + database_path)});
|
|
@@ -410,14 +409,14 @@ void Lotro::extractGrouppedFilesToDatabase(QString database_path, LOTRO_DAT::FIL
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
|
|
|
|
- auto extractfile_op = file.GetExporter().ExtractFileById(file_id, &db);
|
|
|
|
|
|
+ auto extractfile_op = file.GetExporter().ExtractAllFilesByType(type, &db);
|
|
busy = false;
|
|
busy = false;
|
|
|
|
|
|
if (extractfile_op.result == LOTRO_DAT::SUCCESS) {
|
|
if (extractfile_op.result == LOTRO_DAT::SUCCESS) {
|
|
- emit processFinished("extractGrouppedFilesToDatabase", {"Success", database_path, type});
|
|
|
|
|
|
+ emit processFinished("extractGrouppedFilesToDatabase", {"Success", database_path, type, extractfile_op.value});
|
|
} else {
|
|
} else {
|
|
emit caughtError("extractGrouppedFilesToDatabase", {"Ошибка экспорта!", QString("Не удаётся экспортировать файлы с типом " + QString::number(type) + " в базу данных " + database_path)});
|
|
emit caughtError("extractGrouppedFilesToDatabase", {"Ошибка экспорта!", QString("Не удаётся экспортировать файлы с типом " + QString::number(type) + " в базу данных " + database_path)});
|
|
- emit processFinished("extractGrouppedFilesToDatabase", {"Error", output_foldername});
|
|
|
|
|
|
+ emit processFinished("extractGrouppedFilesToDatabase", {"Error", database_path, extractfile_op.value});
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -462,7 +461,7 @@ void Lotro::startGame() {
|
|
|
|
|
|
qDebug() << "Запускаем игру со следующими аргументами: " << args;
|
|
qDebug() << "Запускаем игру со следующими аргументами: " << args;
|
|
|
|
|
|
- QFile f(app_settings("Local", "folder") + "/LotroLauncher.exe");
|
|
|
|
|
|
+ QFile f(app_settings->value("Local", "folder").toString() + "/LotroLauncher.exe");
|
|
QProcess process;
|
|
QProcess process;
|
|
|
|
|
|
if (FileSystem::fileExists(f.fileName())) {
|
|
if (FileSystem::fileExists(f.fileName())) {
|
|
@@ -471,7 +470,7 @@ void Lotro::startGame() {
|
|
process.waitForFinished(-1);
|
|
process.waitForFinished(-1);
|
|
emit processFinished("startGame", {});
|
|
emit processFinished("startGame", {});
|
|
} else {
|
|
} else {
|
|
- emit caughtError("startGame", {"Ошибка запуска игры!", QString("Не удалось найти файл LotroLauncher в папке: ") + app_settings("Local", "folder")});
|
|
|
|
|
|
+ emit caughtError("startGame", {"Ошибка запуска игры!", QString("Не удалось найти файл LotroLauncher в папке: ") + app_settings->value("Local", "folder").toString()});
|
|
emit processFinished("startGame", {"Error"});
|
|
emit processFinished("startGame", {"Error"});
|
|
}
|
|
}
|
|
busy = false;
|
|
busy = false;
|
|
@@ -484,7 +483,7 @@ void Lotro::getLocaleFileInfo(long long file_id, int locale) {
|
|
|
|
|
|
emit processStarted("getLocaleFileInfo", {file_id, locale});
|
|
emit processStarted("getLocaleFileInfo", {file_id, locale});
|
|
|
|
|
|
- auto getfile_op = file.GetLocaleManager().GetLocaleFile(file_id, locale);
|
|
|
|
|
|
+ auto getfile_op = file.GetLocaleManager().GetLocaleFile(file_id, (LOTRO_DAT::DatLocaleManager::LOCALE)locale);
|
|
if (!getfile_op.result) {
|
|
if (!getfile_op.result) {
|
|
emit caughtError("getLocaleFileInfo", {"Файл не найден!", QString("Не удаётся найти в ресурсах файл с id ") + QString::number(file_id)});
|
|
emit caughtError("getLocaleFileInfo", {"Файл не найден!", QString("Не удаётся найти в ресурсах файл с id ") + QString::number(file_id)});
|
|
emit processFinished("getLocaleFileInfo", {"Error"});
|
|
emit processFinished("getLocaleFileInfo", {"Error"});
|
|
@@ -514,7 +513,7 @@ void Lotro::getFileInfo(long long file_id) {
|
|
if (!tryToBlockFile())
|
|
if (!tryToBlockFile())
|
|
return;
|
|
return;
|
|
|
|
|
|
- emit processStarted("getFileInfo", {file_id, locale});
|
|
|
|
|
|
+ emit processStarted(QString("getFileInfo"), {file_id});
|
|
|
|
|
|
auto getfile_op = file.GetFileSystem().GetFile(file_id);
|
|
auto getfile_op = file.GetFileSystem().GetFile(file_id);
|
|
if (!getfile_op.result) {
|
|
if (!getfile_op.result) {
|