This WP8 quiz app (questions ommited for obvious reasons) keeps repeating the questions as if it's generating the same random numbers over and over. There's a list creation function that shuffles the questions and the generator itself.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Navigation;
using Microsoft.Phone.Controls;
using Microsoft.Phone.Shell;
using System.Windows.Media;
namespace GamingQuiz
{
public partial class GamePage : PhoneApplicationPage
{
public GamePage()
{
InitializeComponent();
ques();
// PotterGay();
}
int MyNumber = 0;
question[] q = new question[101];
public void ques()
{
//questions are here e.g. q[0]=new question("question","a1","a2","a3","a4",correctanswer)
}
// int[] murica = new int[101];
// int MyNumber = 0;
List<int> murica = new List<int>();
public void PotterGay()
{
int hue = 0;
Random a = new Random(100);
while (hue<100){
MyNumber = a.Next(0,100);
if (!murica.Contains(MyNumber))
{
murica.Add(MyNumber);
hue++;
}
}
}
int vCorect = 0;
public void end()
{
intrebare.Visibility = Visibility.Collapsed;
vd.Text = "DICKY DICKY";
var1.Visibility = Visibility.Collapsed;
var2.Visibility = Visibility.Collapsed;
var3.Visibility = Visibility.Collapsed;
var4.Visibility = Visibility.Collapsed;
}
int j = 0;
int fatista = 0;
public void right()
{
fatista = murica[j];
// Random asdf = new Random();
/// j = asdf.Next(100);
intrebare.Text = q[fatista].quest;
var1.Content = q[fatista].v1;
var2.Content = q[fatista].v2;
var3.Content = q[fatista].v3;
var4.Content = q[fatista].v4;
vCorect = q[fatista].gj;
j++;
}
public void start_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
PotterGay();
right();
start.Visibility = Visibility.Collapsed;
}
int scor = 0;
int baba = 0;
private void var_tap(object sender, System.Windows.Input.GestureEventArgs e)
{
{
switch ((string)((Button)sender).Name)
{
case "var1":
if (vCorect == 1)
{
scor++;
vd.Text = "Correct!";
baba++;
}
else
{
scor--;
vd.Text = "Wrong!";
baba++;
}
break;
case "var2":
if (vCorect == 2)
{
scor++;
vd.Text = "Correct!";
baba++;
}
else
{
scor--;
vd.Text = "Wrong!";
baba++;
}
break;
case "var3":
if (vCorect == 3)
{
scor++;
vd.Text = "Correct!";
baba++;
}
else
{
scor--;
vd.Text = "Wrong!";
baba++;
}
break;
case "var4":
if (vCorect == 4)
{
scor++;
vd.Text = "Correct!";
baba++;
}
else
{
scor--;
vd.Text = "Wrong!";
baba++;
}
break;
}
}
if (baba < 101)
{
right();
puncte.Text = Convert.ToString(scor);
}
else
{
murica.Clear();
end();
}
}
}
}