private List <DinhNui> lstCover(List <PhepToan> lsTam) { List <DinhNui> tkm = new List <DinhNui>(); List <int> lst = new List <int>(); while (tkm.Count < 11) { int vt = UnityEngine.Random.Range(0, lsTam.Count); string pheptoan = lsTam[vt].Congthuc; string[] mang = pheptoan.Split(new Char[] { '-', '+' }); int kq = 0; if (int.Parse(lsTam[vt].Loai) == 1) { int chon = UnityEngine.Random.Range(0, 5); if (chon == 0) { pheptoan = "... + " + mang[1] + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[0]); } else if (chon == 1) { pheptoan = mang[0] + " + ..." + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[1]); } else { pheptoan = mang[0] + " + " + mang[1] + " = ..."; kq = int.Parse(lsTam[vt].Ketqua); } } else if (int.Parse(lsTam[vt].Loai) == 2) { int chon = UnityEngine.Random.Range(0, 6); if (chon == 0) { pheptoan = " ... + " + mang[1] + " + " + mang[2] + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[0]); } else if (chon == 1) { pheptoan = mang[0] + " + ... " + " + " + mang[2] + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[1]); } else if (chon == 2) { pheptoan = mang[0] + " + " + mang[1] + " + ... " + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[2]); } else { pheptoan = mang[0] + " + " + mang[1] + " + " + mang[2] + " = ..."; kq = int.Parse(lsTam[vt].Ketqua); } } else if (int.Parse(lsTam[vt].Loai) == 3) { int chon = UnityEngine.Random.Range(0, 5); if (chon == 0) { pheptoan = " ... - " + mang[1] + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[0]); } else if (chon == 1) { pheptoan = mang[0] + " - ... " + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[1]); } else { pheptoan = mang[0] + " - " + mang[1] + " = ..."; kq = int.Parse(lsTam[vt].Ketqua); } } else if (int.Parse(lsTam[vt].Loai) == 4) { int chon = UnityEngine.Random.Range(0, 6); if (chon == 0) { pheptoan = " ... - " + mang[1] + " + " + mang[2] + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[0]); } else if (chon == 1) { pheptoan = mang[0] + " - ... " + " + " + mang[2] + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[1]); } else if (chon == 2) { pheptoan = mang[0] + " - " + mang[1] + " + ... " + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[2]); } else { pheptoan = mang[0] + " - " + mang[1] + " + " + mang[2] + " = ..."; kq = int.Parse(lsTam[vt].Ketqua); } } else if (int.Parse(lsTam[vt].Loai) == 5) { int chon = UnityEngine.Random.Range(0, 6); if (chon == 0) { pheptoan = " ... + " + mang[1] + " - " + mang[2] + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[0]); } else if (chon == 1) { pheptoan = mang[0] + " + ... " + " - " + mang[2] + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[1]); } else if (chon == 2) { pheptoan = mang[0] + " + " + mang[1] + " - ... " + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[2]); } else { pheptoan = mang[0] + " + " + mang[1] + " - " + mang[2] + " = ..."; kq = int.Parse(lsTam[vt].Ketqua); } } else if (int.Parse(lsTam[vt].Loai) == 6) { int chon = UnityEngine.Random.Range(0, 6); if (chon == 0) { pheptoan = " ... - " + mang[1] + " - " + mang[2] + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[0]); } else if (chon == 1) { pheptoan = mang[0] + " - ... " + " - " + mang[2] + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[1]); } else if (chon == 2) { pheptoan = mang[0] + " - " + mang[1] + " - ... " + " = " + lsTam[vt].Ketqua; kq = int.Parse(mang[2]); } else { pheptoan = mang[0] + " - " + mang[1] + " - " + mang[2] + " = ..."; kq = int.Parse(lsTam[vt].Ketqua); } } int chonvt = UnityEngine.Random.Range(0, 4) + 1; DinhNui dn = new DinhNui(ClsLanguage.doFillNumber() + pheptoan + "\n\n", "", "", "", "", chonvt, lsTam[vt].Congthuc + " = " + lsTam[vt].Ketqua, GameController.instance.level); lst.Add(kq); switch (chonvt) { case 1: dn.Casea = "" + kq; dn.Caseb = "" + doChonCase(ref lst, 0, 12); dn.Casec = "" + doChonCase(ref lst, 0, 12); dn.Cased = "" + doChonCase(ref lst, 0, 12); break; case 2: dn.Caseb = "" + kq; dn.Casea = "" + doChonCase(ref lst, 0, 12); dn.Casec = "" + doChonCase(ref lst, 0, 12); dn.Cased = "" + doChonCase(ref lst, 0, 12); break; case 3: dn.Casec = "" + kq; dn.Casea = "" + doChonCase(ref lst, 0, 12); dn.Caseb = "" + doChonCase(ref lst, 0, 12); dn.Cased = "" + doChonCase(ref lst, 0, 12); break; case 4: dn.Cased = "" + kq; dn.Casea = "" + doChonCase(ref lst, 0, 12); dn.Caseb = "" + doChonCase(ref lst, 0, 12); dn.Casec = "" + doChonCase(ref lst, 0, 12); break; } tkm.Add(dn); lst.Clear(); } return(tkm); }
public void getDataLevel() { foreach (DinhNui item in GameController.instance.lstSum) { if (item.Level == GameController.instance.level) { lstLevel.Add(item); } } //=========================================== if (GameController.instance.level == 1 || GameController.instance.level == 3 || GameController.instance.level == 5) { for (int i = 0; i < 30; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstCongTruHai.Count); lstPt.Add(GameController.instance.lstCongTruHai[tm]); } if (GameController.instance.level == 1) { lstPt = ClsThaoTac.ChuanHoaDaTa(0, 50, 0, lstPt); } else if (GameController.instance.level == 5) { lstPt = ClsThaoTac.ChuanHoaDaTa(0, 50, 2, lstPt); } } else if (GameController.instance.level == 2 || GameController.instance.level == 4 || GameController.instance.level == 6) { for (int i = 0; i < 30; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstCongTruBa.Count); lstPt.Add(GameController.instance.lstCongTruBa[tm]); } if (GameController.instance.level == 2) { lstPt = ClsThaoTac.ChuanHoaDaTa(0, 50, 0, lstPt); } else if (GameController.instance.level == 6) { lstPt = ClsThaoTac.ChuanHoaDaTa(0, 50, 2, lstPt); } } else if (GameController.instance.level == 7 || GameController.instance.level == 8) { for (int i = 0; i < 15; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstNhanHaiBa.Count); lstPt.Add(GameController.instance.lstNhanHaiBa[tm]); } } else if (GameController.instance.level == 9 || GameController.instance.level == 10) { for (int i = 0; i < 15; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstNhanBonNam.Count); lstPt.Add(GameController.instance.lstNhanBonNam[tm]); } } else if (GameController.instance.level == 11) { for (int i = 0; i < 30; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstNhanCong23.Count); lstPt.Add(GameController.instance.lstNhanCong23[tm]); } } else if (GameController.instance.level == 12) { for (int i = 0; i < 30; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstNhanCong45.Count); lstPt.Add(GameController.instance.lstNhanCong45[tm]); } } else if (GameController.instance.level == 13) { for (int i = 0; i < 15; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstNhanTru23.Count); lstPt.Add(GameController.instance.lstNhanTru23[tm]); } for (int i = 0; i < 15; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstNhanTru45.Count); lstPt.Add(GameController.instance.lstNhanTru45[tm]); } } else if (GameController.instance.level == 14) { for (int i = 0; i < 15; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstTruNhan23.Count); lstPt.Add(GameController.instance.lstTruNhan23[tm]); } for (int i = 0; i < 15; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstTruNhan45.Count); lstPt.Add(GameController.instance.lstTruNhan45[tm]); } } else if (GameController.instance.level == 15) { for (int i = 0; i < 15; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstChia23.Count); lstPt.Add(GameController.instance.lstChia23[tm]); } for (int i = 0; i < 15; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstChia45.Count); lstPt.Add(GameController.instance.lstChia45[tm]); } } else if (GameController.instance.level == 16) { for (int i = 0; i < 15; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstCongChia23.Count); lstPt.Add(GameController.instance.lstCongChia23[tm]); } for (int i = 0; i < 15; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstCongChia45.Count); lstPt.Add(GameController.instance.lstCongChia45[tm]); } } else if (GameController.instance.level == 17) { for (int i = 0; i < 15; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstTruChia23.Count); lstPt.Add(GameController.instance.lstTruChia23[tm]); } } else if (GameController.instance.level == 18) { for (int i = 0; i < 15; i++) { int tm = UnityEngine.Random.Range(0, GameController.instance.lstTruChia45.Count); lstPt.Add(GameController.instance.lstTruChia45[tm]); } } //==============================================Duoi La conver sang dinh nui foreach (PhepToan item in lstPt) { string tmp = item.Congthuc; string[] mang = tmp.Split(new Char[] { '-', '+', 'x', ':' }); int chon = UnityEngine.Random.Range(0, 3); int kq = 0; if (chon != 0) { if (int.Parse(item.Loai) == 51) { int chon2 = UnityEngine.Random.Range(0, 2); if (chon2 == 0) { tmp = ".... + " + mang[1] + "= " + item.Ketqua; kq = int.Parse(mang[0].Trim()); } else { tmp = mang[0] + "+ .... " + "= " + item.Ketqua; kq = int.Parse(mang[1].Trim()); } } else if (int.Parse(item.Loai) == 52) { int chon2 = UnityEngine.Random.Range(0, 2); if (chon2 == 0) { tmp = ".... - " + mang[1] + "= " + item.Ketqua; kq = int.Parse(mang[0].Trim()); } else { tmp = mang[0] + "- .... " + "= " + item.Ketqua; kq = int.Parse(mang[1].Trim()); } } else if (int.Parse(item.Loai) == 53) { int chon2 = UnityEngine.Random.Range(0, 3); if (chon2 == 0) { tmp = ".... + " + mang[1] + " + " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[0].Trim()); } else if (chon2 == 1) { tmp = mang[0] + " +....+ " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[1].Trim()); } else { tmp = mang[0] + " + " + mang[1] + " +....." + "= " + item.Ketqua; kq = int.Parse(mang[2].Trim()); } } else if (int.Parse(item.Loai) == 54) { int chon2 = UnityEngine.Random.Range(0, 3); if (chon2 == 0) { tmp = ".... + " + mang[1] + " - " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[0].Trim()); } else if (chon2 == 1) { tmp = mang[0] + " + .... - " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[1].Trim()); } else { tmp = mang[0] + " + " + mang[1] + " -....." + "= " + item.Ketqua; kq = int.Parse(mang[2].Trim()); } } else if (int.Parse(item.Loai) == 55) { int chon2 = UnityEngine.Random.Range(0, 3); if (chon2 == 0) { tmp = ".... - " + mang[1] + " + " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[0].Trim()); } else if (chon2 == 1) { tmp = mang[0] + " - .... + " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[1].Trim()); } else { tmp = mang[0] + " - " + mang[1] + " +....." + "= " + item.Ketqua; kq = int.Parse(mang[2].Trim()); } } else if (int.Parse(item.Loai) == 56) { int chon2 = UnityEngine.Random.Range(0, 3); if (chon2 == 0) { tmp = ".... - " + mang[1] + " - " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[0].Trim()); } else if (chon2 == 1) { tmp = mang[0] + " - .... - " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[1].Trim()); } else { tmp = mang[0] + " - " + mang[1] + " - ....." + "= " + item.Ketqua; kq = int.Parse(mang[2].Trim()); } } else if (int.Parse(item.Loai) == 57 || int.Parse(item.Loai) == 58 || int.Parse(item.Loai) == 59 || int.Parse(item.Loai) == 60) { int chon2 = UnityEngine.Random.Range(0, 2); if (chon2 == 0) { tmp = ".... x " + mang[1] + "= " + item.Ketqua; kq = int.Parse(mang[0].Trim()); } else { tmp = mang[0] + " x ..... = " + item.Ketqua; kq = int.Parse(mang[1].Trim()); } } else if (int.Parse(item.Loai) == 61 || int.Parse(item.Loai) == 62 || int.Parse(item.Loai) == 63 || int.Parse(item.Loai) == 64) { int chon2 = UnityEngine.Random.Range(0, 3); if (chon2 == 0) { tmp = ".... x " + mang[1] + " + " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[0].Trim()); } else if (chon2 == 1) { tmp = mang[0] + " x .... + " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[1].Trim()); } else { tmp = mang[0] + " x " + mang[1] + " + ....." + "= " + item.Ketqua; kq = int.Parse(mang[2].Trim()); } } else if (int.Parse(item.Loai) == 65 || int.Parse(item.Loai) == 66 || int.Parse(item.Loai) == 67 || int.Parse(item.Loai) == 68) { int chon2 = UnityEngine.Random.Range(0, 3); if (chon2 == 0) { tmp = ".... x " + mang[1] + " - " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[0].Trim()); } else if (chon2 == 1) { tmp = mang[0] + " x .... - " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[1].Trim()); } else { tmp = mang[0] + " x " + mang[1] + " - ....." + "= " + item.Ketqua; kq = int.Parse(mang[2].Trim()); } } else if (int.Parse(item.Loai) == 69 || int.Parse(item.Loai) == 70 || int.Parse(item.Loai) == 71 || int.Parse(item.Loai) == 72) { int chon2 = UnityEngine.Random.Range(0, 3); if (chon2 == 0) { tmp = ".... - " + mang[1] + " x " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[0].Trim()); } else if (chon2 == 1) { tmp = mang[0] + " - .... x " + mang[2] + "= " + item.Ketqua; kq = int.Parse(mang[1].Trim()); } else { tmp = mang[0] + " - " + mang[1] + " x ....." + "= " + item.Ketqua; kq = int.Parse(mang[2].Trim()); } } else if (int.Parse(item.Loai) == 73 || int.Parse(item.Loai) == 74 || int.Parse(item.Loai) == 75 || int.Parse(item.Loai) == 76) { int chon2 = UnityEngine.Random.Range(0, 2); if (chon2 == 0) { tmp = ".... : " + mang[1] + "= " + item.Ketqua; kq = int.Parse(mang[0].Trim()); } else { tmp = mang[0] + " : .... " + "= " + item.Ketqua; kq = int.Parse(mang[1].Trim()); } } else if (int.Parse(item.Loai) >= 77 && int.Parse(item.Loai) <= 84) { tmp = item.Congthuc + " = ....?"; kq = item.Ketqua; } //them o day } else { tmp = item.Congthuc + " = ....?"; kq = item.Ketqua; } tmp = ClsLanguage.doFillNumber() + tmp; List <int> lstTH = new List <int>(); lstTH.Add(doChonSai(kq)); lstTH.Add(doChonSai(kq)); lstTH.Add(doChonSai(kq)); DinhNui dn = new DinhNui(); dn.Question = tmp; dn.Giaithich = item.Congthuc + "=" + item.Ketqua; List <int> lstVt = new List <int>(); lstVt.Add(1); lstVt.Add(2); lstVt.Add(3); lstVt.Add(4); int vtd = UnityEngine.Random.Range(0, lstVt.Count); if (lstVt[vtd] == 1) { dn.Casea = "" + kq; } else if (lstVt[vtd] == 2) { dn.Caseb = "" + kq; } else if (lstVt[vtd] == 3) { dn.Casec = "" + kq; } else if (lstVt[vtd] == 4) { dn.Cased = "" + kq; } dn.Truecase = lstVt[vtd]; lstVt.RemoveAt(vtd); //----het dung if (lstVt[0] == 1) { dn.Casea = "" + lstTH[0]; } else if (lstVt[0] == 2) { dn.Caseb = "" + lstTH[0]; } else if (lstVt[0] == 3) { dn.Casec = "" + lstTH[0]; } else { dn.Cased = "" + lstTH[0]; } lstTH.RemoveAt(0); lstVt.RemoveAt(0); if (lstVt[0] == 1) { dn.Casea = "" + lstTH[0]; } else if (lstVt[0] == 2) { dn.Caseb = "" + lstTH[0]; } else if (lstVt[0] == 3) { dn.Casec = "" + lstTH[0]; } else { dn.Cased = "" + lstTH[0]; } lstTH.RemoveAt(0); lstVt.RemoveAt(0); if (lstVt[0] == 1) { dn.Casea = "" + lstTH[0]; } else if (lstVt[0] == 2) { dn.Caseb = "" + lstTH[0]; } else if (lstVt[0] == 3) { dn.Casec = "" + lstTH[0]; } else { dn.Cased = "" + lstTH[0]; } lstTH.RemoveAt(0); lstVt.RemoveAt(0); lstLevel.Add(dn); } doSubGet(ref lstLevel); currentState = State.InGame; }