internal override void StartTableOk(int[] cardHand, Message msg, string[] nickPlay) { base.StartTableOk(cardHand, msg, nickPlay); ListCardOfMe.Clear(); cardTable.XoaHetCMNBaiTrenBan(); AutoChooseCard.CardTrenBan.Clear(); nickFire = ""; for (int i = 0; i < nickPlay.Length; i++) { TLMNPlayer pl = (TLMNPlayer)GetPlayerWithName(nickPlay [i]); if (pl != null) { if (pl.SitOnClient == 0) { pl.CardHand.ChiaBaiTienLen(AutoChooseCard.SortArrCard(cardHand), true); ListCardOfMe.AddRange(cardHand); } else { pl.CardHand.ChiaBaiTienLen(cardHand, false); pl.SetNumCard(13); } } } }
internal override void OnFireCard(string nick, string turnName, int[] card) { base.OnFireCard(nick, turnName, card); AutoChooseCard.CardTrenBan.Clear(); AutoChooseCard.CardTrenBan.AddRange(card); nickFire = nick; TLMNPlayer plTurn = (TLMNPlayer)GetPlayerWithName(nick); if (plTurn != null) { plTurn.SetTurn(0); if (nick.Equals(ClientConfig.UserInfo.UNAME)) { for (int i = 0; i < card.Length; i++) { ListCardOfMe.Remove(card [i]); } cardTable.MinhDanh(card, plTurn.CardHand, () => { ((TLMNPlayer)playerMe).CardHand.SortCardActive(); ((TLMNPlayer)playerMe).CardHand.ResetCard(); }); } else { cardTable.SinhCardGiuaCMNBan(card, plTurn.CardHand.transform); int numC = ((TLMNPlayer)plTurn).NumCard - card.Length; ((TLMNPlayer)plTurn).SetNumCard(numC); } } else { cardTable.SinhCardGiuaCMNBan(card, ((TLMNPlayer)playerMe).CardHand.transform); } if (turnName.ToLower().Equals(ClientConfig.UserInfo.UNAME.ToLower())) { SetActiveButton(false, false, true, true); if (AutoChooseCard.CardTrenBan.Count > 0) { int[] result = AutoChooseCard.ChooseCard(ListCardOfMe.ToArray()); ((TLMNPlayer)playerMe).CardHand.SetChooseCard(result); //if (result == null) {//sua // playerMe.SetTurn(true, 5); // SetActiveButton(false, false, false, true); // Invoke("KhongDanhDuocThiBo", 5); //} else { // if (result.Length <= 0) { // pl.SetTurn(true, 5); // SetActiveButton(false, false, false, true); // Invoke("KhongDanhDuocThiBo", 5); // } //} } } }
internal override void AllCardFinish(string nick, int[] card) { base.AllCardFinish(nick, card); TLMNPlayer pl = (TLMNPlayer)GetPlayerWithName(nick); if (pl != null) { pl.CardHand.SetCardKhiKetThucGame(AutoChooseCard.SortArrCard(card)); pl.SetNumCard(0); } }
void InitPlayerTLMN() { for (int i = 0; i < ListPlayer.Count; i++) { TLMNPlayer pl = (TLMNPlayer)ListPlayer[i]; pl.CardHand.CardCount = 13; switch (pl.SitOnClient) { case 0: pl.CardHand.isSmall = false; pl.CardHand.isTouched = true; pl.CardHand.align_Anchor = Align_Anchor.CENTER; pl.CardHand.MaxWidth = 800; pl.SetPositionChatLeft(true); pl.CardHand.Init(); pl.CardHand.SetInputChooseCard(); break; case 1: pl.CardHand.isSmall = true; pl.CardHand.isTouched = false; pl.CardHand.align_Anchor = Align_Anchor.RIGHT; pl.CardHand.MaxWidth = 500; pl.SetPositionChatLeft(false); pl.SetPositionChatAction(Align_Anchor.RIGHT); pl.CardHand.Init(); break; case 2: pl.CardHand.isSmall = true; pl.CardHand.isTouched = false; pl.CardHand.align_Anchor = Align_Anchor.LEFT; pl.CardHand.MaxWidth = 500; pl.SetPositionChatLeft(true); pl.SetPositionChatAction(Align_Anchor.BOT); pl.CardHand.Init(); break; case 3: pl.CardHand.isSmall = true; pl.CardHand.isTouched = false; pl.CardHand.align_Anchor = Align_Anchor.LEFT; pl.CardHand.MaxWidth = 500; pl.SetPositionChatLeft(true); pl.SetPositionChatAction(Align_Anchor.LEFT); pl.CardHand.Init(); break; } } }
internal override void InfoCardPlayerInTbl(Message message, string turnName, int time, sbyte numP) { base.InfoCardPlayerInTbl(message, turnName, time, numP); try { for (int i = 0; i < numP; i++) { string nameP = message.reader().ReadUTF(); sbyte numCard = message.reader().ReadByte(); TLMNPlayer pl = (TLMNPlayer)GetPlayerWithName(nameP); if (pl != null) { pl.IsPlaying = (true); int[] temp = new int[numCard]; for (int j = 0; j < temp.Length; j++) { temp [j] = 52; } pl.CardHand.SetCardWithId52(); pl.CardHand.SetActiveCardHand(true); pl.SetNumCard(numCard); } } GameControl.instance.TimerTurnInGame = time; BasePlayer plTurn = GetPlayerWithName(turnName); if (plTurn != null) { plTurn.SetTurn(time); } if (turnName.Equals(ClientConfig.UserInfo.UNAME)) { SetActiveButton(false, false, true, true); } else { SetActiveButton(false, false, false, false); } } catch (Exception e) { Debug.LogException(e); } }
public void click() { if (player.getName().Equals(BaseInfo.gI().mainInfo.nick)) { int len = 0; if (arrayCard == null) { return; } if (arrayCard.getArrCardChoose() != null) { len = arrayCard.getArrCardChoose().Length; } if (len != 0) { if (card.isChoose) { } else { int value1 = TLMNChooseCard.getValue(card.getId()); int value2 = TLMNChooseCard.getValue(arrayCard.getArrCardChoose()[len - 1]); if (!(value1 == value2) && !(value1 == value2 + 1) && !(RTL.getCardInfo(card.getId())[1] == RTL .getCardInfo(arrayCard.getArrCardChoose()[len - 1])[1] - 1)) { int valuve3 = RTL.getCardInfo(arrayCard.getArrCardChoose()[0])[1]; if (!(value1 == valuve3) && !(value1 == valuve3 + 1) && !(value1 == valuve3 - 1)) { if (!TLMNChooseCard.issanh2(TLMNPlayer.sort(RTL.insertArray(arrayCard.getArrCardChoose(), card.getId()))) && !TLMNChooseCard .isdoi(RTL.insertArray(arrayCard.getArrCardChoose(), card.getId())) && !TLMNChooseCard .issam(RTL.insertArray(arrayCard.getArrCardChoose(), card.getId()))) { for (int i = 0; i < arrayCard.getSize(); i++) { arrayCard.getCardbyPos(i).setChoose(false); } len = 0; } } } if (tlmnStage != null && tlmnStage.tableArrCard != null && arrayCard.getArrCardChoose() != null && arrayCard.getArrCardChoose().Length > 0) { if (!TLMNChooseCard.issanh2(TLMNPlayer.sort(RTL.insertArray(arrayCard.getArrCardChoose(), card.getId()))) && !TLMNChooseCard.isdoi(RTL.insertArray(arrayCard.getArrCardChoose(), card.getId())) && !TLMNChooseCard.issam(RTL.insertArray(arrayCard.getArrCardChoose(), card.getId()))) { for (int i = 0; i < arrayCard.getSize(); i++) { arrayCard.getCardbyPos(i).setChoose(false); } len = 0; } } } } card.setChoose(!card.isChoose); if (tlmnStage != null && tlmnStage.tableArrCard != null) { if (tlmnStage.tableArrCard.Length > 0 && len == 0) { int indexCardChoose = -1; if (arrayCard.getArrCardChoose() == null) { return; } if (arrayCard.getArrCardChoose().Length == 1) { for (int i = 0; i < arrayCard.getArrCardAll().Length; i++) { if (arrayCard.getArrCardAll()[i] == card.getId()) { indexCardChoose = i; } } if (indexCardChoose != -1) { int[] index = TLMNChooseCard.getArrIndexCardNhac(indexCardChoose, arrayCard.getArrCardAll(), tlmnStage.tableArrCard); if (index != null) { for (int i = 0; i < index.Length; i++) { Card cardNhac = arrayCard.getCardbyPos(index[i]); if (cardNhac != null) { cardNhac.setChoose(true); } } } } } } } else { if (arrayCard.getArrCardChoose() == null) { return; } if (arrayCard.getArrCardChoose().Length == 2 && card.isChoose) { int[] index = TLMNChooseCard.getArrIndexCardNhac(arrayCard.getArrCardChoose(), arrayCard.getArrCardAll()); if (index != null) { for (int i = 0; i < index.Length; i++) { Card cardNhac = arrayCard.getCardbyPos(index[i]); if (cardNhac != null) { cardNhac.setChoose(true); } } } if (index != null && index.Length < 2) { if (!TLMNChooseCard.issanh2(arrayCard.getArrCardChoose())) { for (int i = 0; i < arrayCard.getSize(); i++) { arrayCard.getCardbyPos(i).setChoose(false); } card.setChoose(!card.isChoose); } } } else if (arrayCard.getArrCardChoose().Length >= 2 && card.isChoose) { if (!TLMNChooseCard.issanh2(arrayCard.getArrCardChoose())) { for (int i = 0; i < arrayCard.getSize(); i++) { arrayCard.getCardbyPos(i).setChoose(false); } card.setChoose(!card.isChoose); } } else if (arrayCard.getArrCardChoose().Length >= 2 && !card.isChoose) { // int indexCardChoose = -1; // for (int i = 0; i < arrayCard.getArrCardAll().Length; // i++) { // if (arrayCard.getArrCardAll()[i] == card.getId()) { // indexCardChoose = i; // } // } // if (indexCardChoose != -1) { // for (int i = indexCardChoose; i < // arrayCard.getArrCardAll().Length; i++) { // arrayCard.getCardbyPos(i).setChoose(false); // } // } } } } }