Exemple #1
0
 public void InitNewProject(string[] fighters, AIType[] types)
 {
     foreach (string name in fighters)
     {
         int fileCount = 0;
         foreach (AIType type in types)
         {
             if (File.Exists(GetFolderPath(name, type, AISource.game_file) + AITypeToString[type] + ".bin"))
             {
                 try
                 {
                     AIFt.AIFile file = new AIFt.AIFile(name, type, AISource.game_file);
                     fileCount++;
                 }
                 catch (Exception e)
                 {
                     Console.WriteLine("ERROR: cannot load file ({0}: {1})", name, AITypeToString[type]);
                     Console.WriteLine(e.Message);
                 }
             }
         }
         if (fileCount == 0)
         {
             Console.WriteLine("NOTICE: no AI files loaded from fighter '{0}'", name);
         }
     }
     InitOpenProject();
 }
Exemple #2
0
 public void AddProjectFiles(string[] fighters, AIType[] types, AISource source)
 {
     foreach (string name in fighters)
     {
         List <AIFt.AIFile> newFiles = new List <AIFt.AIFile>();
         int ftIndex = this.fighters.FindIndex(ft => ft.name == name);
         foreach (AIType type in types)
         {
             if (File.Exists(GetFolderPath(name, type, source) + AITypeToString[type] + ".bin") &&
                 (ftIndex == -1 || !this.fighters[ftIndex].files.Exists(file => file.type == type)))
             {
                 try
                 {
                     AIFt.AIFile file = new AIFt.AIFile(name, type, source);
                     if (Directory.Exists(file.folder_address))
                     {
                         newFiles.Add(file);
                     }
                 }
                 catch (Exception e)
                 {
                     Console.WriteLine("Error on file load ({0}: {1})", name, AITypeToString[type]);
                     Console.WriteLine(e.Message);
                 }
             }
         }
         //if the fighter doesn't exist, add it
         if (ftIndex == -1 && newFiles.Count > 0)
         {
             this.fighters.Add(new AIFt(name, newFiles));
         }
         else
         {
             foreach (var file in newFiles)
             {
                 this.fighters[ftIndex].files.Add(file);
             }
         }
         Sort();
     }
 }