Example #1
0
    internal override void OnFireCard(string nick, string turnName, int[] card)
    {
        base.OnFireCard(nick, turnName, card);
        AutoChooseCardSam.CardTrenBan.Clear();
        AutoChooseCardSam.CardTrenBan.AddRange(card);
        nickFire = nick;
        SamPlayer plTurn = (SamPlayer)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, () => {
                    ((SamPlayer)playerMe).CardHand.SortCardActive();
                });
            }
            else
            {
                cardTable.SinhCardGiuaCMNBan(card, plTurn.CardHand.transform);
                int numC = plTurn.NumCard - card.Length;
                plTurn.SetNumCard(numC);
            }
        }
        else
        {
            cardTable.SinhCardGiuaCMNBan(card, ((SamPlayer)playerMe).CardHand.transform);
        }

        if (turnName.ToLower().Equals(ClientConfig.UserInfo.UNAME.ToLower()))
        {
            SetActiveButton(false, false, true, true);
            if (AutoChooseCardSam.CardTrenBan.Count > 0)
            {
                int[] result = AutoChooseCardSam.ChooseCard(ListCardOfMe.ToArray());
                ((SamPlayer)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);
                //    }
                //}
            }
        }
    }
Example #2
0
    void InitPlayerSam()
    {
        for (int i = 0; i < ListPlayer.Count; i++)
        {
            SamPlayer pl = (SamPlayer)ListPlayer[i];
            pl.CardHand.CardCount = 10;
            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;
            }
        }
    }
Example #3
0
 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();
             SamPlayer pl      = (SamPlayer)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);
         }
         string nickbaoxam = message.reader().ReadUTF();
         OnNickBaoSam(nickbaoxam);
     } catch (Exception e) {
         Debug.LogException(e);
     }
 }
Example #4
0
 internal override void StartTableOk(int[] cardHand, Message msg, string[] nickPlay)
 {
     base.StartTableOk(cardHand, msg, nickPlay);
     ListCardOfMe.Clear();
     cardTable.XoaHetCMNBaiTrenBan();
     AutoChooseCardSam.CardTrenBan.Clear();
     nickFire = "";
     for (int i = 0; i < nickPlay.Length; i++)
     {
         SamPlayer pl = (SamPlayer)GetPlayerWithName(nickPlay[i]);
         if (pl != null)
         {
             if (pl.SitOnClient == 0)
             {
                 pl.CardHand.ChiaBaiTienLen(AutoChooseCardSam.SortArrCard(cardHand), true);
                 ListCardOfMe.AddRange(cardHand);
             }
             else
             {
                 pl.CardHand.ChiaBaiTienLen(cardHand, false);
             }
         }
     }
 }