ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/AE/Installer/trunk/source/installer.cpp
(Generate patch)

Comparing AE/Installer/trunk/source/installer.cpp (file contents):
Revision 543 by gumby, Mon May 24 19:13:59 2010 UTC vs.
Revision 548 by gumby, Wed May 26 22:55:00 2010 UTC

# Line 659 | Line 659 | void recompileAll(vector<string> install
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";
# Line 668 | Line 668 | void recompileAll(vector<string> install
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);
# Line 714 | Line 728 | void copyBSL(string copypath, vector<str
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")) {

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)