private void lvl1Creator() { int pos = GenPos(); switch (oc[rand.Next(1)].symbol) { case 1: int a1 = rand.Next(0, 101); int a2 = rand.Next(0, 101 - a1); answer = a1 + a2; genNumber[pos] = a1; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, a1); pos = GenPos(); genNumber[pos] = a2; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, a2); break; case 2: int s1 = rand.Next(0, 101); int s2 = rand.Next(0, 101 - s1); int sAns = s1 + s2; answer = s1; genNumber[pos] = s2; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, s2); pos = GenPos(); genNumber[pos] = sAns; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, sAns); break; case 3: int m1 = rand.Next(1, 50); int m2 = rand.Next(0, 100 / m1); answer = m1 * m2; genNumber[pos] = m1; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, m1); pos = GenPos(); genNumber[pos] = m2; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, m2); break; case 4: int d1 = rand.Next(1, 50); int d2 = rand.Next(1, 100 / d1); answer = d2; genNumber[pos] = d1; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, d1); pos = GenPos(); genNumber[pos] = d2 * d1; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, d2 * d1); break; } int freeElement = 0; foreach (int element in genNumber) { if (element == -1) { nc[freeElement] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * freeElement, 0, rand.Next(0, 100)); } freeElement++; } }
public void numberCardClick(object sender, EventArgs e) { Color back = ColorTranslator.FromHtml("#002640"); NumberCard card = sender as NumberCard; if (card.BackColor != back) { card.BackColor = back; if (firstNum.Text == "Nombre 1") { firstNum.Text = card.value.ToString(); calInPro.Text = card.value.ToString(); nb1 = card.value; card.used = true; } else { if (op.Text != "Operateur") { secondNum.Text = card.value.ToString(); switch (op.Text) { case "+": calInPro.Text = (nb1 + card.value).ToString(); nb2 = nb1 + card.value; card.used = true; break; case "-": calInPro.Text = (nb1 - card.value).ToString(); nb2 = nb1 - card.value; card.used = true; break; case "x": calInPro.Text = (nb1 * card.value).ToString(); nb2 = nb1 * card.value; card.used = true; break; case "/": calInPro.Text = (nb1 / card.value).ToString(); if (nb1 % card.value == 0) { nb2 = nb1 / card.value; card.used = true; } break; } } if (calInPro.Text == answer.Text) { win(); } else { nb1 = nb2; firstNum.Text = calInPro.Text; op.Text = "Operateur"; secondNum.Text = "Nombre 2"; } } } }
private void lvl2Creator() { for (int i = 1; i < 3; i++) { int pos = GenPos(); switch (oc[i - 1].symbol) { case 1: int a1; if (i < 2) { a1 = rand.Next(1, 50); } else { a1 = answer; } int a2 = rand.Next(1, 50 * i - a1); answer = a1 + a2; genNumber[pos] = a1; if (i < 2) { nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, a1); } pos = GenPos(); genNumber[pos] = a2; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, a2); break; case 2: int s1; if (i < 2) { s1 = rand.Next(1, 50); } else { s1 = answer; } int s2 = rand.Next(1, 50 * i - s1); answer = s1; int sAns = s1 + s2; if (i < 2) { pos = GenPos(); genNumber[pos] = sAns; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, sAns); } genNumber[pos] = s2; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, s2); break; case 3: int m1; if (i < 2) { m1 = rand.Next(1, 25); } else { m1 = answer; } int m2 = rand.Next(1, 50 * i / m1); answer = m1 * m2; if (i < 2) { genNumber[pos] = m1; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, m1); } pos = GenPos(); genNumber[pos] = m2; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, m2); break; case 4: int d1; if (i < 2) { d1 = rand.Next(1, 25); } else { d1 = answer; } int d2 = rand.Next(1, 50 * i / d1); answer = d2; if (i < 2) { genNumber[pos] = d1; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, d1); } pos = GenPos(); genNumber[pos] = d2 * d1; nc[pos] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * pos, 0, d2 * d1); break; } int freeElement = 0; foreach (int element in genNumber) { if (element == -1) { nc[freeElement] = new NumberCard((Screen.PrimaryScreen.Bounds.Width / 100 * 8) * freeElement, 0, rand.Next(0, 100)); } freeElement++; } } }