| 659 |  | for (int i = installedMods.size() - 1; i >= 0; i--) {                                                   //Iterates through the installed mods (backwards :P) | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 660 |  | for (unsigned int j = 0; j < globalPackages.size(); ++j) {                              //looking in the global packages | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 661 |  | if (globalPackages[j].modStringName == installedMods[i]) {      //for a mod that has BSL in it | 
 
 
 
 
 
 
 
 
 
 
 | 662 | < | if(!(globalPackages[j].hasAddon || globalPackages[j].hasBSL)) break; //skip non-BSL | 
 
 
 
 
 
 
 
 
 | 662 | > | if(globalPackages[j].hasBSL)) break; //skip non-BSL | 
 
 
 
 
 
 
 
 
 
 
 | 663 |  | if( exists( "packages/" + globalPackages[j].modStringName + "/BSL/" ) ) { | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 664 |  | copyBSL("packages/" + globalPackages[j].modStringName + "/BSL", BSLfolders, globalPackages[j] ); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 665 |  | BSLlog << "Copied " <<  globalPackages[j].modStringName << "!\n"; | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 668 |  | } | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 669 |  | } | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 670 |  |  | 
 
 
 
 
 
 
 
 | 671 | + |  | 
 
 
 
 
 
 
 
 | 672 | + |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 673 |  | ModPackage emptyPackage; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 674 |  | emptyPackage.modStringName = "VanillaBSL"; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 675 |  | emptyPackage.hasBSL = 1; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 676 |  | copyBSL("packages/VanillaBSL/IGMD", BSLfolders, emptyPackage); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 677 |  | BSLlog.close(); | 
 
 
 
 
 
 
 
 
 
 
 | 678 | < |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 678 | > |  | 
 
 
 
 
 | 679 | > | for (int i = installedMods.size() - 1; i >= 0; i--) {                                                   //Iterates through the installed mods (backwards :P) | 
 
 
 
 
 | 680 | > | for (unsigned int j = 0; j < globalPackages.size(); ++j) {                              //looking in the global packages | 
 
 
 
 
 | 681 | > | if (globalPackages[j].modStringName == installedMods[i]) {      //for a mod that has BSL in it | 
 
 
 
 
 | 682 | > | if(!globalPackages[j].hasAddon) break; //skip non-BSL | 
 
 
 
 
 | 683 | > | if( exists( "packages/" + globalPackages[j].modStringName + "/BSL/" ) ) { | 
 
 
 
 
 | 684 | > | copyBSL("packages/" + globalPackages[j].modStringName + "/BSL", BSLfolders, globalPackages[j] ); | 
 
 
 
 
 | 685 | > | BSLlog << "Copied " <<  globalPackages[j].modStringName << "!\n"; | 
 
 
 
 
 | 686 | > | } | 
 
 
 
 
 | 687 | > | } | 
 
 
 
 
 | 688 | > | } | 
 
 
 
 
 | 689 | > | } | 
 
 
 
 
 | 690 | > |  | 
 
 
 
 
 
 
 
 
 
 
 | 691 |  | logfile << "Writing config file"; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 692 |  | writeInstalledMods(installedMods); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 693 |  | setProgressBar(1000); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 728 |  | if ( is_directory( dir_itr->path() ) && dir_itr->path().string() != ".svn" ) { | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 729 |  | BSLlog << "Testing " << dir_itr->path().string() << " HasBSL: " << pkg.hasBSL << " HasAddon: " << pkg.hasAddon << "\n"; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 730 |  | int skip_folder = 0; | 
 
 
 
 
 
 
 
 
 
 
 | 731 | < |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 732 | < | for(unsigned int k = 0; k < BSLfolders.size(); k++)             {//iterate through already found BSL folders | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 733 | < | BSLlog << "testing " << dir_itr->path().filename() << " vs " << BSLfolders[k] << "\n"; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 734 | < | if(dir_itr->path().filename() == BSLfolders[k]) { | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 735 | < | skip_folder = 1; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 736 | < | BSLlog << "skipping " << BSLfolders[k] << " in " << pkg.modStringName << "\n"; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 737 | < | break; | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 731 | > | if(!pkg.HasAddon) { | 
 
 
 
 
 | 732 | > | for(unsigned int k = 0; k < BSLfolders.size(); k++)             {//iterate through already found BSL folders | 
 
 
 
 
 | 733 | > | BSLlog << "testing " << dir_itr->path().filename() << " vs " << BSLfolders[k] << "\n"; | 
 
 
 
 
 | 734 | > | if(dir_itr->path().filename() == BSLfolders[k]) { | 
 
 
 
 
 | 735 | > | skip_folder = 1; | 
 
 
 
 
 | 736 | > | BSLlog << "skipping " << BSLfolders[k] << " in " << pkg.modStringName << "\n"; | 
 
 
 
 
 | 737 | > | break; | 
 
 
 
 
 | 738 | > | } | 
 
 
 
 
 
 
 
 
 
 
 | 739 |  | } | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 740 |  | } | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 741 |  | if (!skip_folder && !exists("../GameDataFolder/IGMD/" + dir_itr->path().filename() + "/ignore.txt")) { |