}//end delete coin public CloudCoin fixCoin(CloudCoin brokeCoin) { /*0. RESET TICKETS IN RAIDA STATUS TO EMPTY*/ RAIDA_Status.resetTickets(); /*0. RESET THE DETECTION to TRUE if it is a new COIN */ RAIDA_Status.newCoin(); brokeCoin.setAnsToPans();// Make sure we set the RAIDA to the cc ans and not new pans. DateTime before = DateTime.Now; String fix_result = ""; FixitHelper fixer; /*START*/ /*1. PICK THE CORNER TO USE TO TRY TO FIX */ int corner = 1; // For every guid, check to see if it is fractured for (int raida_ID = 0; raida_ID < 25; raida_ID++) { // Console.WriteLine("Past Status for " + raida_ID + ", " + brokeCoin.pastStatus[raida_ID]); if (brokeCoin.getPastStatus(raida_ID).ToLower() == "fail") { Console.ForegroundColor = ConsoleColor.Cyan; Console.Out.WriteLine(""); Console.WriteLine(StringHolder.frackfixer_11); //"Attempting to fix RAIDA " + raida_ID); Console.Out.WriteLine(""); Console.ForegroundColor = ConsoleColor.White; fixer = new FixitHelper(raida_ID, brokeCoin.ans); //trustedServerAns = new String[] { brokeCoin.ans[fixer.currentTriad[0]], brokeCoin.ans[fixer.currentTriad[1]], brokeCoin.ans[fixer.currentTriad[2]] }; corner = 1; while (!fixer.finnished) { Console.WriteLine(StringHolder.frackfixer_12 + corner); //" Using corner " + corner); fix_result = fixOneGuidCorner(raida_ID, brokeCoin, corner, fixer.currentTriad); // Console.WriteLine(" fix_result: " + fix_result + " for corner " + corner); if (fix_result.Contains("success")) { //Fixed. Do the fixed stuff brokeCoin.setPastStatus("pass", raida_ID); fixer.finnished = true; corner = 1; } else { //Still broken, do the broken stuff. corner++; fixer.setCornerToCheck(corner); } } //End whild fixer not finnished } //end if RAIDA past status is passed and does not need to be fixed } //end for each AN DateTime after = DateTime.Now; TimeSpan ts = after.Subtract(before); Console.WriteLine(StringHolder.frackfixer_13); //"Time spent fixing RAIDA in milliseconds: " + ts.Milliseconds); brokeCoin.calculateHP(); //how many fails did it get brokeCoin.gradeCoin(); // sets the grade and figures out what the file extension should be (bank, fracked, counterfeit, lost brokeCoin.calcExpirationDate(); brokeCoin.grade(); return(brokeCoin); } // end fix coin