Exemplo n.º 1
0
 public override bool Save(BanCo mBanCo, FileStream fout)
 {
     if (!fout.CanWrite)
     {
         return(false);
     }
     for (int i = 0; i < 8; i++)
     {
         for (int j = 0; j < 8; j++)
         {
             QuanCo hienTai = mBanCo.banCo[i, j];
             string content;
             if (hienTai != null)
             {
                 content = hienTai.LayMau() + "" + hienTai.LayTen() + "\n";
             }
             else
             {
                 content = 0 + "" + 0 + "\n";
             }
             fout.Write(Encoding.ASCII.GetBytes(content), 0, content.Length);
         }
     }
     fout.Close();
     return(true);
 }
Exemplo n.º 2
0
        public bool chieuTuong(char luot, int x0, int y0, QuanCo cur)
        {
            int i, j = 0;

            for (i = 0; i < 8; i++)
            {
                for (j = 0; j < 8; j++)
                {
                    QuanCo hienTai = mBanCo.banCo[i, j];
                    if (hienTai != null)
                    {
                        if (hienTai.LayMau() != luot && hienTai.LayTen() == 'K')
                        {
                            break;
                        }
                    }
                }
                if (j < 8)
                {
                    break;
                }
            }
            if (i == 8 && j == 8)
            {
                return(false);
            }
            if (cur.MoveHopLe(x0, y0, i, j, mBanCo))
            {
                return(true);
            }
            else
            {
                return(false);
            }
        } //Kiểm tra chiếu tướng
Exemplo n.º 3
0
        } //Kiểm tra chiếu tướng

        public bool vuaDauRoi(char luot)
        {
            for (int i = 0; i < 8; i++)
            {
                for (int j = 0; j < 8; j++)
                {
                    QuanCo hienTai = mBanCo.banCo[i, j];
                    if (hienTai != null)
                    {
                        if (hienTai.LayMau() == luot && hienTai.LayTen() == 'K')
                        {
                            return(true);
                        }
                    }
                }
            }
            return(false);
        }
Exemplo n.º 4
0
        public void phong(int x, ref QuanCo cur)
        {
            string color = cur.LayMau().ToString();

            if (cur.LayTen() != 'P')
            {
                return;
            }
            if ((color == "W" && x == 7) || (color == "B" && x == 0))
            {
                int ch;
                ch = boardView.luaChonPhong();
                switch (ch)
                {
                case 1:
                    cur = QuanCoFactory.taoQuanCo("Q", color);
                    break;

                case 2:
                    cur = QuanCoFactory.taoQuanCo("R", color);
                    break;

                case 3:
                    cur = QuanCoFactory.taoQuanCo("B", color);
                    break;

                case 4:
                    cur = QuanCoFactory.taoQuanCo("N", color);
                    break;

                default:
                    break;
                }
                boardView.printMessage("Da phong xong...!\n");
            }
        }