Exemple #1
0
        // -- 以下、棋譜処理

        /// <summary>
        /// 盤面を特定の局面で初期化する。
        /// </summary>
        /// <param name="boardType"></param>
        public void InitBoard(BoardType boardType)
        {
            var sfen = boardType.ToSfen();

            Tree.position.SetSfen(sfen);
            Tree.rootBoardType = boardType;

            // rootSfenを更新したときにイベント通知が起きるので、これを最後にしている。
            Tree.rootSfen = sfen;
        }
Exemple #2
0
        /// <summary>
        /// rootのsfenを設定する。
        ///
        /// position.SetSfen()したときは、
        /// このメソッドがSetRootSfen()かのどちらかを呼び出すこと。
        /// </summary>
        /// <param name="boardType"></param>
        public void SetRootBoardType(BoardType boardType)
        {
            Debug.Assert(boardType < BoardType.Others);

            var sfen = boardType.ToSfen();

            position.SetSfen(sfen);
            rootBoardType = boardType;

            // このsetterでイベントが生起するので、position.SetSfen()のあとで代入しないといけない。
            rootSfen = sfen;
        }