Esempio n. 1
0
        public string Serialize()
        {
            PuzzleBoardInfoSquare piece = this;
            var sb = new StringBuilder();

            sb.Append(string.Format("{0}|{1}|{2}|{3}", piece.Position.X, piece.Position.Y, piece.SquareType, piece.State));
            return(sb.ToString());
        }
Esempio n. 2
0
        public static PuzzleBoardInfoSquare Deserialize(string str)
        {
            var p = new PuzzleBoardInfoSquare();

            string[] sps = str.Split(new[] { '|' }, StringSplitOptions.RemoveEmptyEntries);
            p.Position   = new Point(int.Parse(sps[0]), int.Parse(sps[1]));
            p.SquareType = (SquareTypes)int.Parse(sps[2]);
            p.State      = sps[3];

            return(p);
        }
Esempio n. 3
0
        public static PuzzleBoardInfo Deserialize(string board)
        {
            var p = new PuzzleBoardInfo(null /*todo*/);

            string[] sps = board.Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries);

            p.Goal = new Goal();
            p.Goal.SetGoalIndex(int.Parse(sps[0]));
            p.NumberOfMoves = int.Parse(sps[1]);

            p.Squares = new List <PuzzleBoardInfoSquare>();

            for (int i = 3; i < sps.Length; i++)
            {
                p.Squares.Add(PuzzleBoardInfoSquare.Deserialize(sps[i]));
            }

            return(p);
        }