/// <summary> /// Aloitetaan komponenttiin uusi peli parametreinä annettujen tietojen pohjalta. /// </summary> /// <param name="lista">merkkijonotaulukko, jossa on pelissä käytettävät kysymykset</param> /// <param name="pelinPituus">pelin pituus(kysymysten määrä) kokonaislukumuuttujana</param> /// <param name="nimimerkki">pelaajalle haluttu nimimerkki</param> public void AloitaPeli(string[] lista, int pelinPituus, string nimimerkki) { this.Text = "Tietovisa - " + nimimerkki; kysymykset = lista; pituus = pelinPituus; pelaaja = new Kilpailija(nimimerkki, 0); kysymysNyt = new Kysymys(); laskuri = 0; Vaihe_Bar.Maximum = pituus; MuodostaKysymys(); }
/// <summary> /// Luetaan kysymykset kysymykset.txt -tiedostosta ja sijoitetaan ne merkkijonotaulukkoon, mikäli tiedoston rivi ei ala /// '*' merkillä tai aiheuta virhettä, kun siitä yritetään muodostaa pelissä käytettävä kysymys olio. Mikäli kysymykset.txt /// tiedostoa ei löydy, ohjelma luo uuden kysymkset.txt tiedoston, jossa on ohjeet kysymysten kirjoittamiseen ja yksi esimerkki. /// </summary> public static void LueTiedostosta() { int i = 0; Kysymys testi = new Kysymys(); string line; string tiedostonOsoite = HaePolku(); try { System.IO.StreamReader file = new System.IO.StreamReader(tiedostonOsoite, System.Text.Encoding.Default, true); while ((line = file.ReadLine()) != null) { string tarkistettava = line; if (tarkistettava.Substring(0, 1) == "*") { i++; continue; } try { testi.muodostaStringistä(tarkistettava); } catch (Exception) { i++; continue; } KaikkiKysymykset.LisaaKysymys(tarkistettava); i++; } } catch (Exception) { string[] oletusrivit = { "*Kysymykset on kirjoitettava muodossa: KYSYMYS|VAIHTOEHTO_A|VAIHTOEHTO_B|VAIHTOEHTO_C|VAIHTOEHTO_D|OIKEAN VASTAUKSEN KIRJAIN", "*Esimerkiksi: Oletko sinä elossa?|Kyllä|En|Ehkä|En tiedä|A", "Montako vastausvaihtoehtoa tässä kysymyksessä on?|1|2|3|4|D" }; System.IO.File.WriteAllLines(tiedostonOsoite, oletusrivit, System.Text.Encoding.Default); MessageBox.Show("kysymykset.txt tiedostoa ei löytynyt. Ohjelma luo tiedoston, jossa on ohjeet kysymysten kirjoittamiseksi ja yksi esimerkkikysymys", "Tietovisa - Tiedostoa ei löytynyt!", MessageBoxButtons.OK, MessageBoxIcon.Error); Environment.Exit(0); } }