GR.Gambling.Backgammon.Board.Deserialize C# (CSharp) Method

Deserialize() public static method

public static Deserialize ( string s ) : Board
s string
return Board
        public static Board Deserialize(string s)
        {
            string[] ss = s.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);

            int i = 0;

            Board board = new Board();
            board.captured[0] = int.Parse(ss[i]);
            i++;

            board.finished[0] = int.Parse(ss[i]);
            i++;

            while (i < 26)
            {
                board.board[0][i - 2] = int.Parse(ss[i]);
                i++;
            }

            board.captured[1] = int.Parse(ss[i]);
            i++;

            board.finished[1] = int.Parse(ss[i]);
            i++;

            while (i < 52)
            {
                board.board[1][i - 28] = int.Parse(ss[i]);
                i++;
            }

            return board;
        }

Usage Example

コード例 #1
0
ファイル: GameState.cs プロジェクト: Luffles/Botting-Library
        public static GameState Deserialize(string s)
        {
            string[] ss = s.Split(new char[] { '#' }, StringSplitOptions.RemoveEmptyEntries);

            GameState gs = new GameState(GameType.Match);

            gs.board = Board.Deserialize(ss[1]);

            ss = ss[0].Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);

            int i = 0;

            gs.crawford = bool.Parse(ss[i]);
            i++;

            gs.cube.Owner = int.Parse(ss[i]);
            i++;

            gs.cube.Value = int.Parse(ss[i]);
            i++;

            gs.dice[0] = int.Parse(ss[i]);
            i++;

            gs.dice[1] = int.Parse(ss[i]);
            i++;

            gs.game_type = (GameType)Enum.Parse(typeof(GameType), ss[i]);
            i++;

            gs.limit = int.Parse(ss[i]);
            i++;

            gs.match_to = int.Parse(ss[i]);
            i++;

            gs.offer = (OfferType)Enum.Parse(typeof(OfferType), ss[i]);
            i++;

            gs.player_on_roll = int.Parse(ss[i]);
            i++;

            gs.player_on_turn = int.Parse(ss[i]);
            i++;

            gs.resign_offer_value = (ResignValue)Enum.Parse(typeof(ResignValue), ss[i]);
            i++;

            gs.score[0] = int.Parse(ss[i]);
            i++;

            gs.score[1] = int.Parse(ss[i]);
            i++;

            gs.stake = int.Parse(ss[i]);

            return(gs);
        }