diff options
Diffstat (limited to 'logic/InstanceFactory.cpp')
-rw-r--r-- | logic/InstanceFactory.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/logic/InstanceFactory.cpp b/logic/InstanceFactory.cpp index 4f65221c..95fd855b 100644 --- a/logic/InstanceFactory.cpp +++ b/logic/InstanceFactory.cpp @@ -174,6 +174,15 @@ InstanceFactory::InstCreateError InstanceFactory::copyInstance(InstancePtr &newI return InstanceFactory::CantCreateDir; } + INISettingsObject settings_obj(PathCombine(instDir, "instance.cfg")); + settings_obj.registerSetting("InstanceType", "Legacy"); + QString inst_type = settings_obj.get("InstanceType").toString(); + + if (inst_type == "OneSixFTB") + settings_obj.set("InstanceType", "OneSix"); + if (inst_type == "LegacyFTB") + settings_obj.set("InstanceType", "Legacy"); + oldInstance->copy(instDir); auto error = loadInstance(newInstance, instDir); @@ -190,5 +199,4 @@ InstanceFactory::InstCreateError InstanceFactory::copyInstance(InstancePtr &newI rootDir.removeRecursively(); return UnknownCreateError; } - return UnknownCreateError; } |