private Boolean korbejaras(string[] tartomany, string szin, int iTol, int jTol, ref int[,] elozoHelyek) { int[] kovHely = new int[2] { iTol, jTol }; int[,] visszafordulas = BufferKezeles.initBuffer(3); int elozoLepesIranya = 2; do { if (szin.Equals("fekete")) { kovHely = feketeLepes(tartomany, kovHely, ref elozoLepesIranya, visszafordulas); } else { kovHely = feherLepes(kovHely, ref elozoLepesIranya); //Ha kiert a szelere if (kovHely[0] == szelsoErtekek[0] || kovHely[0] == szelsoErtekek[1] || kovHely[1] == szelsoErtekek[2] || kovHely[1] == szelsoErtekek[3]) { return(true); } } if (BufferKezeles.ketszerTartalmazza(elozoHelyek, kovHely)) { return(false); } BufferKezeles.shiftBuffer(ref elozoHelyek, kovHely); BufferKezeles.shiftBuffer(ref visszafordulas, kovHely); } while (!(kovHely[0] == elsoFekete[0] && kovHely[1] == elsoFekete[1])); // Erdektelen return(false); }