Example #1
0
        public string ShowZetHistory(Zet zet)
        {
            if (zet == null)
            {
                return("geen zet meer");
            }
            int  savPly      = this.maxPly;
            int  savCount    = this.count;
            int  savBestEval = this.bestEval;
            bool kleur       = zet.van.stuk.kleur;

            Zet[]  zetten = new Zet[this.maxPly];
            string result = "Zetten: ";

            zetten[0] = zet.Clone();
            debug     = false;
            for (int i = 1; i <= savPly; i++)
            {
                bord.VoerUit(zet);
                if (zet.mat || i == savPly)
                {
                    break;
                }
                this.maxPly = savPly - i;
                kleur       = !kleur;
                zet         = this.BedenkBesteZet(kleur);
                if (zet == null)
                {
                    break;
                }
                zetten[i] = zet.Clone();
            }
            for (int i = 0; i < savPly; i++)
            {
                result += String.Format("{0} ", zetten[i]);
                if (zetten[savPly - i - 1] != null)
                {
                    bord.Herstel(zetten[savPly - i - 1]);
                }
            }
            //result += "eval: " + bestEval.ToString();
            result       += "eval: " + savBestEval.ToString(); //V125
            this.maxPly   = savPly;
            this.count    = savCount;
            this.bestEval = savBestEval;
            this.debug    = true;
            zet           = zetten[0];
            result        = result.Trim();
            Console.WriteLine(result);
            return(result);
        }
Example #2
0
        private string ShowZetHistory(Zet zet)
        {
            int  savPly      = computer.maxPly;
            int  savCount    = computer.count;
            int  savBestEval = computer.bestEval;
            bool kleur       = zet.van.stuk.kleur;

            Zet[]  zetten = new Zet[computer.maxPly];
            string result = "Zetten: ";

            zetten[0] = zet.Clone();

            for (int i = 1; i <= savPly; i++)
            {
                bord.VoerUit(zet);
                //bord.Show();
                if (zet.mat || i == savPly)
                {
                    break;
                }
                computer.maxPly = savPly - i;
                kleur           = !kleur;
                zet             = computer.BedenkBesteZet(kleur);
                zetten[i]       = zet.Clone();
            }
            for (int i = 0; i < savPly; i++)
            {
                result += String.Format("{0} ", zetten[i]);
                if (zetten[savPly - i - 1] != null)
                {
                    bord.Herstel(zetten[savPly - i - 1]);
                }
            }
            computer.maxPly   = savPly;
            computer.count    = savCount;
            computer.bestEval = savBestEval;
            zet    = zetten[0];
            result = result.Trim();
            Console.WriteLine(result);
            return(result);
        }