コード例 #1
0
ファイル: UIManage.cs プロジェクト: romrietvn/estsreadsasd
 public void SetModeDraw(GameData.eModeDraw mode)
 {
     GameData.MODEDRAW = mode;
     Table.GetInstance().ResetTable();
 }
コード例 #2
0
 public void InitCards(int[] cards, GameData.eModeDraw mode)
 {
     if (mode == GameData.eModeDraw.OneCard) // random bich
     {
         for (int i = 0; i < 13; i++)
         {
             cards[i]      = i * 4;
             cards[i + 13] = i * 4;
             cards[i + 26] = i * 4;
             cards[i + 39] = i * 4;
             cards[i + 52] = i * 4;
             cards[i + 65] = i * 4;
             cards[i + 78] = i * 4;
             cards[i + 91] = i * 4;
         }
         //string s = "";
         //for(int i = 0; i < cards.Length; i++)
         //{
         //    s += cards[i] + " ";
         //}
         //Debug.LogError(s);
     }
     else if (mode == GameData.eModeDraw.TwoCard) // random bich va co
     {
         for (int i = 0; i < 13; i++)
         {
             cards[i]      = i * 4;
             cards[i + 13] = i * 4;
             cards[i + 26] = i * 4;
             cards[i + 39] = i * 4;
             cards[i + 52] = i * 4 + 2;
             cards[i + 65] = i * 4 + 2;
             cards[i + 78] = i * 4 + 2;
             cards[i + 91] = i * 4 + 2;
         }
         //string s = "";
         //for (int i = 0; i < cards.Length; i++)
         //{
         //    s += cards[i] + " ";
         //}
         //Debug.LogError(s);
     }
     else if (mode == GameData.eModeDraw.FourCard) // random bich, chuon, ro, co
     {
         for (int i = 0; i < 13; i++)
         {
             cards[i]      = i;
             cards[i + 13] = i * 4 + 1;
             cards[i + 26] = i * 4 + 2;
             cards[i + 39] = i * 4 + 3;
             cards[i + 52] = i;
             cards[i + 65] = i * 4 + 1;
             cards[i + 78] = i * 4 + 2;
             cards[i + 91] = i * 4 + 3;
         }
         //string s = "";
         //for (int i = 0; i < cards.Length; i++)
         //{
         //    s += cards[i] + " ";
         //}
         //Debug.LogError(s);
     }
 }
コード例 #3
0
 public CardsController(int[] cards, GameData.eModeDraw mode)
 {
     //Debug.LogError(mode);
     InitCards(cards, mode);
     ShufferCards(cards);
 }
コード例 #4
0
 public CardsController(int[] cards, GameData.eModeDraw mode, int numbercomplete)
 {
     InitCards(cards, mode);
     ShufferCards(cards, numbercomplete);
 }
コード例 #5
0
    public void Draw(GameData.eModeDraw mode, Card[] Cards)
    {
        int count = ListCardResult.Count;

        m_Box.enabled = false;
        LeanTween.delayedCall(0.4f, () => { m_Box.enabled = true; });
        if (count == 0)
        {
            Compute.m_Instance.AddUndo(-1, GameData.TOTAL_COLLUM, GameData.TOTAL_COLLUM, -1);
            //DebugListCardDrawEd();
            Reset();
            return;
        }
        if (mode == GameData.eModeDraw.OneCard)
        {
            //Debug.Log("xxx");

            int _last = count - 1;
            if (_last >= 0)
            {
                m_Box.enabled = false;
                SceneManager.instance.PlayGameController.MoveCount += 1;
                Vector3 temp  = DrawPosition;
                Card    _card = Cards[ListCardResult[_last]];

                int value = ListCardResult[_last];
                temp.z = -(GameData.NUMBER_CARDDRAW - _last);
                if (!_card.isFlip)
                {
                    _card.isFlip = false;
                }
                LeanTween.move(_card.gameObject, temp, 0.2f).
                setEaseInCubic().setOnComplete(() => {
                    AnimationCard(Cards, value, true);
                });
                AudioController.instance.PlaySoundSortCard();
                ListCardDrawed.Add(value);
                ListCardResult.RemoveAt(_last);
                //Debug.Log(Cards[ListCardDrawed[_count]].transform.position);
                Compute.m_Instance.AddUndo(_card.Index, GameData.TOTAL_COLLUM, GameData.TOTAL_COLLUM, value);
                int _count = ListCardDrawed.Count - 1;
                //Debug.Log(ListCardDrawed[_count]);
                //Cards[ListCardDrawed[_count]].Index = DrawCount -1;
                SortCardDraw(Cards);
                SetUpCardDraw(Cards);
                if (count == 1)
                {
                    EndDraw();
                }
            }
        }
        else
        {
            //Debug.Log("cccc");

            int _last = count - 1;
            if (_last >= 2)
            {
                m_Box.enabled = false;
                Vector3    temp = DrawPosition;
                List <int> draw = new List <int>();
                for (int i = 0; i < 3; i++)
                {
                    int  LastResult = ListCardResult.Count - 1;
                    Card _card      = Cards[ListCardResult[LastResult]];
                    int  value      = ListCardResult[LastResult];
                    temp.z = -(GameData.NUMBER_CARDDRAW - LastResult);
                    if (_card.isFlip)
                    {
                        _card.isFlip = false;
                    }
                    _card.isFlip = !_card.isFlip;
                    if (i == 2)
                    {
                        LeanTween.move(_card.gameObject, temp, 0.1f).setEaseInCubic();
                    }
                    else
                    {
                        LeanTween.move(_card.gameObject, temp, 0.1f).setEaseInCubic();
                    }
                    AudioController.instance.PlaySoundSortCard();
                    ListCardDrawed.Add(value);
                    draw.Add(value);
                    ListCardResult.RemoveAt(LastResult);
                    int _count = ListCardDrawed.Count - 1;
                    //Cards[ListCardDrawed[_count]].Index = DrawCount -1;
                    SortCardDraw(Cards);
                    SetUpCardDraw(Cards);
                    if (LastResult == 0)
                    {
                        EndDraw();
                    }
                }
                int _temp = ListCardResult.Count + 2;
                //Compute.m_Instance.AddUndo(_temp, GameData.TOTAL_COLLUM, GameData.TOTAL_COLLUM, draw);
                SceneManager.instance.PlayGameController.MoveCount += 1;
            }
            else if (_last >= 0)
            {
                m_Box.enabled = false;
                Vector3 temp = DrawPosition;
                SceneManager.instance.PlayGameController.MoveCount += 1;
                Card _card = Cards[ListCardResult[_last]];
                int  value = ListCardResult[_last];
                if (_card.isFlip)
                {
                    _card.isFlip = false;
                }
                temp.z = temp.z = -(GameData.NUMBER_CARDDRAW - _last);
                LeanTween.move(_card.gameObject, temp, 0.2f)
                .setEaseInCubic().setOnComplete(() => {
                    AnimationCard(Cards, value, true);
                }
                                                );
                ListCardDrawed.Add(value);
                ListCardResult.RemoveAt(_last);
                Compute.m_Instance.AddUndo(_card.Index, GameData.TOTAL_COLLUM, GameData.TOTAL_COLLUM, value);
                int _count = ListCardDrawed.Count - 1;
                //Cards[ListCardDrawed[_count]].Index = DrawCount - 1;
                SortCardDraw(Cards);
                SetUpCardDraw(Cards);
                if (_last == 0)
                {
                    EndDraw();
                }
            }
        }
#if UNITY_EDITOR
        DebugListCard();
#endif
    }