Exemplo n.º 1
0
 public static RO_Starbeam BuildMove(
     IMoveSource longTimeAgo,
     IMoveSource now,
     PieceType tottaKomaSyurui
     )
 {
     return(new RO_Starbeam(longTimeAgo, now, tottaKomaSyurui));
 }
Exemplo n.º 2
0
        public static RO_Star AsKoma(IMoveSource light)
        {
            RO_Star koma;

            if (light is RO_Star)
            {
                koma = (RO_Star)light;
            }
            else
            {
                throw new Exception("未対応の星の光クラス");
            }

            return(koma);
        }
Exemplo n.º 3
0
        public static RO_Star FromFinger(SkyConst src_Sky, Finger finger)
        {
            RO_Star koma;

            IMoveSource lightable = src_Sky.StarlightIndexOf(finger).Now;

            if (lightable is RO_Star)
            {
                koma = (RO_Star)lightable;
            }
            else
            {
                throw new Exception("未対応の星の光クラス");
            }

            return(koma);
        }
Exemplo n.º 4
0
        private void ToBanObject201(SkyConst src_Sky)
        {
            this.kaisiPside = src_Sky.KaisiPside;// TODO:

            //Util_Sky.Assert_Honshogi(src_Sky);


            // 将棋の駒40個の場所を確認します。
            foreach (Finger finger in src_Sky.Fingers_All().Items)
            {
                IMoveSource light  = src_Sky.StarlightIndexOf(finger).Now;
                RO_Star     komaKs = Util_Starlightable.AsKoma(light);

                Debug.Assert(Conv_MasuHandle.OnAll(Conv_SyElement.ToMasuNumber(komaKs.Masu)), $"(int)koma.Masu=[{Conv_SyElement.ToMasuNumber(komaKs.Masu)}]");//升番号

                this.AddKoma(komaKs.Masu,
                             new RO_Star(komaKs)
                             );
            }
        }
Exemplo n.º 5
0
 /// <summary>
 /// ************************************************************************************************************************
 /// 棋譜用。
 /// ************************************************************************************************************************
 /// </summary>
 /// <param name="okiba"></param>
 /// <param name="srcOkiba"></param>
 /// <param name="suji"></param>
 /// <param name="dan"></param>
 /// <param name="srcSuji"></param>
 /// <param name="srcDan"></param>
 /// <param name="dstSyurui"></param>
 /// <param name="srcSyurui"></param>
 /// <param name="previousTe"></param>
 public RO_Starbeam(IMoveSource longTimeAgo, IMoveSource now, object /*Ks14*/ tottaKomaSyurui)
     : base(now)
 {
     this.longTimeAgo     = longTimeAgo;
     this.tottaKomaSyurui = tottaKomaSyurui;
 }
Exemplo n.º 6
0
 /// <summary>
 /// ************************************************************************************************************************
 /// 駒用。
 /// ************************************************************************************************************************
 /// </summary>
 /// <param name="masu"></param>
 /// <param name="syurui"></param>
 public RO_Starlight(IMoveSource nowStar)
 {
     this.now = nowStar;
 }