コード例 #1
0
    void chonData(ref List <PhepToan> tmg1, ref List <PhepToan> tmg2, List <PhepToan> lstRank, int loai)
    {
        if (loai == 1)
        {
            while (tmg1.Count < 8)
            {
                int  chon = UnityEngine.Random.Range(0, lstRank.Count);
                bool ok   = false;
                for (int i = 0; i < tmg1.Count; i++)
                {
                    if (lstRank[chon].Ketqua == tmg1[i].Ketqua)
                    {
                        ok = true;
                        break;
                    }
                }
                if (ok == false)
                {
                    PhepToan pt1;
                    if (lstRank[chon].Ketqua % 3 == 0)
                    {
                        pt1 = new PhepToan(ClsLanguage.doNumber() + lstRank[chon].Ketqua, lstRank[chon].Ketqua, "number");
                    }
                    else
                    {
                        pt1 = new PhepToan("" + lstRank[chon].Ketqua, lstRank[chon].Ketqua, "number");
                    }
                    PhepToan pt2 = new PhepToan("" + lstRank[chon].Congthuc, lstRank[chon].Ketqua, "number");

                    if (lstRank[chon].Ketqua % 2 == 0)
                    {
                        tmg1.Add(pt1);
                        tmg2.Add(pt2);
                    }
                    else
                    {
                        tmg1.Add(pt2);
                        tmg2.Add(pt1);
                    }
                }
            }

            PhepToan pt    = new PhepToan("" + ClsLanguage.doHinhTron(), -1, "number");
            PhepToan pta   = new PhepToan("", -1, "monkeyhinhtron");
            int      chons = UnityEngine.Random.Range(0, 3);
            if (chons == 0)
            {
                tmg1.Add(pt);
                tmg2.Add(pta);
            }
            else
            {
                tmg1.Add(pta);
                tmg2.Add(pt);
            }

            PhepToan pt11  = new PhepToan("" + ClsLanguage.doHinhChuNhat(), -4, "number");
            PhepToan pta1  = new PhepToan("", -4, "monkeyhinhchunhat");
            int      chonk = UnityEngine.Random.Range(0, 3);
            if (chonk == 0)
            {
                tmg1.Add(pt11);
                tmg2.Add(pta1);
            }
            else
            {
                tmg1.Add(pta1);
                tmg2.Add(pt11);
            }
        }
        else if (loai == 2)
        {
            while (tmg1.Count < 8)
            {
                int  chon = UnityEngine.Random.Range(0, lstRank.Count);
                bool ok   = false;
                for (int i = 0; i < tmg1.Count; i++)
                {
                    if (lstRank[chon].Ketqua == tmg1[i].Ketqua)
                    {
                        ok = true;
                        break;
                    }
                }
                if (ok == false)
                {
                    PhepToan pt1;
                    if (lstRank[chon].Ketqua % 4 == 0)
                    {
                        pt1 = new PhepToan(ClsLanguage.doNumber() + lstRank[chon].Ketqua, lstRank[chon].Ketqua, "number");
                    }
                    else if (lstRank[chon].Ketqua % 3 == 0)
                    {
                        int nh = UnityEngine.Random.Range(0, 3);
                        if (nh == 0)
                        {
                            if (lstRank[chon].Ketqua > 1)
                            {
                                pt1 = new PhepToan(ClsLanguage.doSoLienSau() + (lstRank[chon].Ketqua - 1), lstRank[chon].Ketqua, "number");
                            }
                            else
                            {
                                pt1 = new PhepToan(ClsLanguage.doSoLienTruoc() + (lstRank[chon].Ketqua + 1), lstRank[chon].Ketqua, "number");
                            }
                        }
                        else
                        {
                            pt1 = new PhepToan(ClsLanguage.doSoLienTruoc() + (lstRank[chon].Ketqua + 1), lstRank[chon].Ketqua, "number");
                        }
                    }
                    else
                    {
                        int chon1 = UnityEngine.Random.Range(0, 2);
                        if (chon1 == 0)
                        {
                            pt1 = new PhepToan("" + lstRank[chon].Ketqua, lstRank[chon].Ketqua, "number");
                        }
                        else
                        {
                            pt1 = ClsThaoTac.getPhepToan(lstRank[chon], lstRank);
                        }
                    }
                    PhepToan pt2 = new PhepToan("" + lstRank[chon].Congthuc, lstRank[chon].Ketqua, "number");
                    if (chon % 2 == 0)
                    {
                        tmg1.Add(pt1);
                        tmg2.Add(pt2);
                    }
                    else
                    {
                        tmg1.Add(pt2);
                        tmg2.Add(pt1);
                    }
                }
            }

            PhepToan pt    = new PhepToan("" + ClsLanguage.doHinhVuong(), -3, "number");
            PhepToan pta   = new PhepToan("", -3, "monkeyhinhvuong");
            int      chons = UnityEngine.Random.Range(0, 3);
            if (chons == 0)
            {
                tmg1.Add(pt);
                tmg2.Add(pta);
            }
            else
            {
                tmg1.Add(pta);
                tmg2.Add(pt);
            }


            PhepToan pt11  = new PhepToan("" + ClsLanguage.doHinhChuNhat(), -4, "number");
            PhepToan pta1  = new PhepToan("", -4, "monkeyhinhchunhat");
            int      chonk = UnityEngine.Random.Range(0, 3);
            if (chonk == 0)
            {
                tmg1.Add(pt11);
                tmg2.Add(pta1);
            }
            else
            {
                tmg1.Add(pta1);
                tmg2.Add(pt11);
            }
        }
        else if (loai == 3)
        {
            while (tmg1.Count < 8)
            {
                int  chon = UnityEngine.Random.Range(0, lstRank.Count);
                bool ok   = false;
                for (int i = 0; i < tmg1.Count; i++)
                {
                    if (lstRank[chon].Ketqua == tmg1[i].Ketqua)
                    {
                        ok = true;
                        break;
                    }
                }
                if (ok == false)
                {
                    PhepToan pt1;
                    if (lstRank[chon].Ketqua % 4 == 0)
                    {
                        pt1 = new PhepToan(ClsLanguage.doNumber() + lstRank[chon].Ketqua, lstRank[chon].Ketqua, "number");
                    }
                    else if (lstRank[chon].Ketqua % 3 == 0)
                    {
                        int nh = UnityEngine.Random.Range(0, 3);
                        if (nh == 0)
                        {
                            if (lstRank[chon].Ketqua > 1)
                            {
                                pt1 = new PhepToan(ClsLanguage.doSoLienSau() + (lstRank[chon].Ketqua - 1), lstRank[chon].Ketqua, "number");
                            }
                            else
                            {
                                pt1 = new PhepToan(ClsLanguage.doSoLienTruoc() + (lstRank[chon].Ketqua + 1), lstRank[chon].Ketqua, "number");
                            }
                        }
                        else
                        {
                            pt1 = new PhepToan(ClsLanguage.doSoLienTruoc() + (lstRank[chon].Ketqua + 1), lstRank[chon].Ketqua, "number");
                        }
                    }
                    else
                    {
                        pt1 = new PhepToan("" + lstRank[chon].Ketqua, lstRank[chon].Ketqua, "number");
                    }
                    PhepToan pt2 = new PhepToan("" + lstRank[chon].Congthuc, lstRank[chon].Ketqua, "number");
                    if (chon % 2 == 0)
                    {
                        tmg1.Add(pt1);
                        tmg2.Add(pt2);
                    }
                    else
                    {
                        tmg1.Add(pt2);
                        tmg2.Add(pt1);
                    }
                }
            }

            PhepToan pt    = new PhepToan("" + ClsLanguage.doHinhNguGiac(), -6, "number");
            PhepToan pta   = new PhepToan("", -6, "monkeyhinhngugiac");
            int      chons = UnityEngine.Random.Range(0, 3);
            if (chons == 0)
            {
                tmg1.Add(pt);
                tmg2.Add(pta);
            }
            else
            {
                tmg1.Add(pta);
                tmg2.Add(pt);
            }


            PhepToan pt11  = new PhepToan("" + ClsLanguage.doHinhLucGiac(), -7, "number");
            PhepToan pta1  = new PhepToan("", -7, "monkeyhinhlucgiac");
            int      chonk = UnityEngine.Random.Range(0, 3);
            if (chonk == 0)
            {
                tmg1.Add(pt11);
                tmg2.Add(pta1);
            }
            else
            {
                tmg1.Add(pta1);
                tmg2.Add(pt11);
            }
        }
        else if (loai == 4 || loai == 7 || loai == 8 || loai == 9 || loai == 10 || loai == 11 || loai == 12 || loai == 15 || loai == 16 || loai == 17 || loai == 18)
        {
            while (tmg1.Count < 10)
            {
                int  chon = UnityEngine.Random.Range(0, lstRank.Count);
                bool ok   = false;
                for (int i = 0; i < tmg1.Count; i++)
                {
                    if (lstRank[chon].Ketqua == tmg1[i].Ketqua)
                    {
                        ok = true;
                        break;
                    }
                }
                if (ok == false)
                {
                    PhepToan pt1;
                    if (lstRank[chon].Ketqua % 4 == 0)
                    {
                        pt1 = new PhepToan(ClsLanguage.doNumber() + lstRank[chon].Ketqua, lstRank[chon].Ketqua, "number");
                    }
                    else if (lstRank[chon].Ketqua % 3 == 0)
                    {
                        int nh = UnityEngine.Random.Range(0, 3);
                        if (nh == 0)
                        {
                            if (lstRank[chon].Ketqua > 1)
                            {
                                pt1 = new PhepToan(ClsLanguage.doSoLienSau() + (lstRank[chon].Ketqua - 1), lstRank[chon].Ketqua, "number");
                            }
                            else
                            {
                                pt1 = new PhepToan(ClsLanguage.doSoLienTruoc() + (lstRank[chon].Ketqua + 1), lstRank[chon].Ketqua, "number");
                            }
                        }
                        else
                        {
                            pt1 = new PhepToan(ClsLanguage.doSoLienTruoc() + (lstRank[chon].Ketqua + 1), lstRank[chon].Ketqua, "number");
                        }
                    }
                    else
                    {
                        int chon1 = UnityEngine.Random.Range(0, 2);
                        if (chon1 == 0)
                        {
                            pt1 = new PhepToan("" + lstRank[chon].Ketqua, lstRank[chon].Ketqua, "number");
                        }
                        else
                        {
                            pt1 = ClsThaoTac.getPhepToan(lstRank[chon], lstRank);
                        }
                    }
                    PhepToan pt2 = new PhepToan("" + lstRank[chon].Congthuc, lstRank[chon].Ketqua, "number");
                    if (chon % 2 == 0)
                    {
                        tmg1.Add(pt1);
                        tmg2.Add(pt2);
                    }
                    else
                    {
                        tmg1.Add(pt2);
                        tmg2.Add(pt1);
                    }
                }
            }
        }
        else if (loai == 5 || loai == 6 || loai == 13 || loai == 14)
        {
            while (tmg1.Count < 10)
            {
                int  chon = UnityEngine.Random.Range(0, lstRank.Count);
                bool ok   = false;
                for (int i = 0; i < tmg1.Count; i++)
                {
                    if (lstRank[chon].Ketqua == tmg1[i].Ketqua)
                    {
                        ok = true;
                        break;
                    }
                }
                if (ok == false)
                {
                    PhepToan pt1;
                    if (lstRank[chon].Ketqua % 4 == 0)
                    {
                        if (chon % 2 == 0)
                        {
                            pt1 = new PhepToan("" + lstRank[chon].Ketqua, lstRank[chon].Ketqua, "number");
                        }
                        else
                        {
                            pt1 = new PhepToan(ClsLanguage.doNumber() + lstRank[chon].Ketqua, lstRank[chon].Ketqua, "number");
                        }
                    }
                    else if (lstRank[chon].Ketqua % 3 == 0)
                    {
                        int nh = UnityEngine.Random.Range(0, 3);
                        if (nh == 0)
                        {
                            if (lstRank[chon].Ketqua > 1)
                            {
                                pt1 = new PhepToan(ClsLanguage.doSoLienSau() + (lstRank[chon].Ketqua - 1), lstRank[chon].Ketqua, "number");
                            }
                            else
                            {
                                pt1 = new PhepToan(ClsLanguage.doSoLienTruoc() + (lstRank[chon].Ketqua + 1), lstRank[chon].Ketqua, "number");
                            }
                        }
                        else
                        {
                            pt1 = new PhepToan(ClsLanguage.doSoLienTruoc() + (lstRank[chon].Ketqua + 1), lstRank[chon].Ketqua, "number");
                        }
                    }
                    else
                    {
                        pt1 = new PhepToan("" + lstRank[chon].Ketqua, lstRank[chon].Ketqua, "number");
                    }
                    PhepToan pt2;
                    if (chon % 2 == 0)
                    {
                        pt2 = new PhepToan("" + lstRank[chon].Congthuc, lstRank[chon].Ketqua, "number");
                    }
                    else
                    {
                        pt2 = ClsThaoTac.getCongThuc(lstRank[chon]);
                    }

                    if (chon % 2 == 0)
                    {
                        tmg1.Add(pt1);
                        tmg2.Add(pt2);
                    }
                    else
                    {
                        tmg1.Add(pt2);
                        tmg2.Add(pt1);
                    }
                }
            }
        }
        else if (loai == 19)
        {
            var bien = GameController.instance.lstCongTruHai.Concat(GameController.instance.lstCongTruBa).ToList();
            while (tmg1.Count < 10)
            {
                int  chon = UnityEngine.Random.Range(0, lstRank.Count);
                bool ok   = false;
                for (int i = 0; i < tmg1.Count; i++)
                {
                    if (lstRank[chon].Ketqua == tmg1[i].Ketqua)
                    {
                        ok = true;
                        break;
                    }
                }
                if (ok == false)
                {
                    PhepToan pt1 = new PhepToan("" + lstRank[chon].Congthuc, lstRank[chon].Ketqua, "number");
                    PhepToan pt2 = ClsThaoTac.getPhepToan(lstRank[chon], bien);
                    if (chon % 2 == 0)
                    {
                        tmg1.Add(pt1);
                        tmg2.Add(pt2);
                    }
                    else
                    {
                        tmg1.Add(pt2);
                        tmg2.Add(pt1);
                    }
                }
            }
        }
        else if (loai == 20)
        {
            var bien = GameController.instance.lstNhanCong23.Concat(GameController.instance.lstNhanCong45).Concat(GameController.instance.lstNhanTru23).Concat(GameController.instance.lstNhanTru45).Concat(GameController.instance.lstTruNhan23).Concat(GameController.instance.lstTruNhan45).ToList();
            while (tmg1.Count < 10)
            {
                int  chon = UnityEngine.Random.Range(0, lstRank.Count);
                bool ok   = false;
                for (int i = 0; i < tmg1.Count; i++)
                {
                    if (lstRank[chon].Ketqua == tmg1[i].Ketqua)
                    {
                        ok = true;
                        break;
                    }
                }
                if (ok == false)
                {
                    PhepToan pt1 = new PhepToan("" + lstRank[chon].Congthuc, lstRank[chon].Ketqua, "number");
                    PhepToan pt2 = ClsThaoTac.getPhepToan(lstRank[chon], bien);
                    if (chon % 2 == 0)
                    {
                        tmg1.Add(pt1);
                        tmg2.Add(pt2);
                    }
                    else
                    {
                        tmg1.Add(pt2);
                        tmg2.Add(pt1);
                    }
                }
            }
        }
    }