ChessDotNet.Variants.ThreeCheck.ThreeCheckChessGame.FenStringToGameCreationData C# (CSharp) Method

FenStringToGameCreationData() protected method

protected FenStringToGameCreationData ( string fen ) : GameCreationData
fen string
return GameCreationData
        protected override GameCreationData FenStringToGameCreationData(string fen)
        {
            GameCreationData gcd = base.FenStringToGameCreationData(fen);

            string[] parts = fen.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
            if (parts.Length == 7)
            {
                Regex re = new Regex(@"^\+(\d)\+(\d)$");
                Match m = re.Match(parts[6]);
                if (!m.Success)
                {
                    throw new ArgumentException("Invalid FEN: invalid check counter.");
                }
                gcd.ThreeCheck_ChecksByWhite = int.Parse(m.Groups[1].Value);
                gcd.ThreeCheck_ChecksByBlack = int.Parse(m.Groups[2].Value);
            }

            return gcd;
        }