public Domanda sostituisci(Domanda inputDom, int giocatore) { int altroGiocatore; do { altroGiocatore = rnd.Next(0, VarGlobal.numGioc); }while(altroGiocatore == giocatore); String oldR = inputDom.getRichiesta(); String newR = oldR.Replace("aaa", VarGlobal.nomGioc[altroGiocatore]); Domanda sostiuita = new Domanda(inputDom.getId(), newR); return(sostiuita); }
public Domanda getNextDomanda(String dbName, int giocatore) { int numTentativi = 0; int maxDom = 0; //Inserisco in una stringa il nome del db da caricare e lo carico string db = "Databases/" + dbName + VarGlobal.scelta.ToString() + ".xml"; loadedCustomData = XDocument.Load(db); //Genero un numero casuale tra 1 e 100 (Il numero varia da db a db) e carico la domanda con quell'id if (dbName.Equals("obbligo") && VarGlobal.scelta == 3) { maxDom = 107; } else { maxDom = 100; } int RandomId = 0; do { RandomId = rnd.Next(1, maxDom); numTentativi++; } while (isUsed(RandomId) && numTentativi <= 20); idUsati.Add(RandomId); var domanda = from c in loadedCustomData.Descendants("Richiesta") where c.Attribute("id").Value == RandomId.ToString() select c.Attribute("Contenuto").Value; Domanda scelta = new Domanda(RandomId, domanda.First().ToString()); if (scelta.getRichiesta().Contains("aaa")) { scelta = sostituisci(scelta, giocatore); } return(scelta); }
private void Gioca(object sender, RoutedEventArgs e) { obbligo.Visibility = Visibility.Collapsed; verita.Visibility = Visibility.Collapsed; instr.Visibility = Visibility.Visible; immagine.Visibility = Visibility.Visible; done.Visibility = Visibility.Visible; refused.Visibility = Visibility.Visible; done.Text = AppResources.Done; refused.Text = AppResources.Refused; /* * //Inserisco in una stringa il nome del db da caricare e lo carico * string db = "Databases/"+choice + VarGlobal.scelta.ToString() + ".xml"; * // instr.Text = db; * loadedCustomData = XDocument.Load(db); * //Genero un numero casuale tra 1 e 100 (Il numero varia da db a db) e carico la domanda con quell'id * * int RandomId = 0; * RandomId = rnd.Next(1, 101); * var domanda = from c in loadedCustomData.Descendants("Richiesta") * where c.Attribute("id").Value == RandomId.ToString() * select c.Attribute("Contenuto").Value; * //Assegno a una variabile temporanea il valore della domanda caricata, per verificare che non ci siano istanze di aaa * temp = domanda.First().ToString();*/ Domanda scelta = fornitore.getNextDomanda(choice, count); /* * //Se c'è aaa * if (scelta.Contains("aaa")) * { //Lo sostituisco con il nome scelto a caso di un giocatore * RandomId = rnd.Next(0, VarGlobal.numGioc); * temp = temp.Replace("aaa", VarGlobal.nomGioc[RandomId]); * }*/ //Infine assegno al Textblock la domanda trovata instr.Text = scelta.getRichiesta(); }