Fix BSA loading detection for Fallout games.

Fallout 3 and Fallout: New Vegas can load BSAs using .esm files as well
as .esp files.
This commit is contained in:
Oliver Hamlet
2015-02-09 14:11:09 +00:00
parent 4e6561e265
commit ba8dcbc19d
+2 -2
View File
@@ -942,8 +942,8 @@ namespace loot {
return boost::filesystem::exists(game.DataPath() / (name.substr(0, name.length() - 3) + "bsa"));
}
else {
//Oblivion, FO3 and FNV .esp files can load BSAs which begin with the plugin basename.
if (boost::iends_with(name, ".esp")) {
//Oblivion .esp files and FO3, FNV plugins can load BSAs which begin with the plugin basename.
if (game.Id() != Game::tes4 || boost::iends_with(name, ".esp")) {
string basename = name.substr(0, name.length() - 4);
for (boost::filesystem::directory_iterator it(game.DataPath()); it != boost::filesystem::directory_iterator(); ++it) {
if (it->path().extension().string() == ".bsa" && boost::istarts_with(it->path().filename().string(), basename))