private void btnStart_Click(object sender, EventArgs e) { BoBai x = new BoBai(); x.xaoBai(); textBox1.Text = x.inbai() + "fsdfsdfsdfsdf\r\n" + x.boBai[0].LayBai(); txbPort.Text = x.ktra(); }
//public int Ready() //{ // readyPlayers++; // return readyPlayers; //} public void chiaBai(SocketModel[] SocketList) { //Khi chia bài thì đưa ra tín hiệu là phòng đang chơi và set role của người chơi là 1 isPlaying = true; soNguoiChoiTaiLucChiaBai = players.Count(); bobai.xaoBai(); int count = players.Count(); // Số người chơi hiện tại trong phòng string[] NguoiChoi = new string[4]; //Giá trị bài mà mỗi người chơi nhận được sẽ được lưu tạm vào đây, Sau khi đủ 13 lá sẽ được gửi về client int indexOfPlayer; // chỉ số của List Player chạy từ 0 tới count (max(count)=4) for (int i = 0; i < count * 13; i = indexOfPlayer + i) { indexOfPlayer = 0; for (int k = nguoiDangThang; k < count; k++) { if (i + indexOfPlayer < count * 13) { NguoiChoi[k] += bobai.boBai[i + indexOfPlayer].LayBai() + "\r\t"; } indexOfPlayer++; } nguoiDangThang = 0; } //Nếu là ván đầu tiên, thì lượt đánh dành cho người có cầm lá nhỏ nhất if (sovan == 0) { for (int i = 0; i < count; i++) { if (NguoiChoiCoQuanBaiNhoNhat(NguoiChoi) == i) { turn = i; SocketList[players[i].pos].SendData(NguoiChoi[i] + "turn" + count + i);//Khi gửi bài về cho người chơi thì gửi kèm theo STT trong bàn } else { SocketList[players[i].pos].SendData(NguoiChoi[i] + count + i);//Như trên } } } //Nếu là ván thứ hai trở đi, thì lượt đánh dành cho người chơi thắng ván trước đó else { SocketList[players[turn].pos].SendData(NguoiChoi[turn] + "turn" + count + turn); for (int i = 0; i < count; i++) { if (i != turn) { SocketList[players[i].pos].SendData(NguoiChoi[i] + count + i); } } } }
void chiaBai() { BoBai bobai = new BoBai(); bobai.xaoBai(); List <SocketModel> SocketList = new List <SocketModel>(); int count = players.Count(); // Số người chơi hiện tại trong phòng int SoLaBai = 0; // Nếu có đủ 4 người chơi thì số lá bài là 52, 3 người chơi thì số lá bài là 39, 2 người chơi thì số lá là 26 if (count == 2) { SoLaBai = 26; } else if (count == 3) { SoLaBai = 39; } else if (count == 4) { SoLaBai = 52; } int indexOfPlayer;// chỉ số của List Player chạy từ 0 tới count (max(count)=4) for (int i = 1; i < SoLaBai; i = indexOfPlayer + i) { indexOfPlayer = 0; for (int k = nguoiDangThang; k < count; k++) { SocketList[players[k].pos].SendData(bobai.boBai[i + indexOfPlayer].LayBai()); indexOfPlayer++; } nguoiDangThang = 0; } }