public static void EsittelyTyyppi() { Pelimoottori.KirjoitaRuuudulle("------------------------------------------------------------------------------"); Pelimoottori.KirjoitaRuuudulle("| Nimi:" + nimi + " pisteitä:" + pisteet + "/" + Pelimoottori.tavoite); Pelimoottori.KirjoitaRuuudulle("| Taisteluvoima:" + taisteluvoima); Pelimoottori.KirjoitaRuuudulle("| Ketteryys:" + taisteluvoima); Pelimoottori.KirjoitaRuuudulle("| Näppäryys:" + taisteluvoima); Pelimoottori.KirjoitaRuuudulle("------------------------------------------------------------------------------"); }
public void Taistele() { bool valmis = false; while (!valmis) { string vastaus = Pelimoottori.TeeValinta("lyö", "pyörry", "tuijota"); switch (vastaus) { case "lyö": if (Pelimoottori.SuoritaHaaste(Tyyppi.taisteluvoima, 10)) { Pelimoottori.KirjoitaRuuudulle( "Päihität armeijen helposti.\n" + "Onneksi olkoon, sait kolme pistetettä.\n" + "Jatkat eteenpäin."); Tyyppi.pisteet += 3; } else { Pelimoottori.KirjoitaRuuudulle( "Oi voi, armeija on liian vahva sinulle.\n" + "Tyyppisi on mennyttä, kiitos pelaamisesta.\n" + "Parempaa onnea ensi kerralla"); Tyyppi.Kuole(); } valmis = true; break; case "pyörry": Pelimoottori.KirjoitaRuuudulle( "Pyörryt ja armeija ihmettelee mikä sinulle tuli.\n" + "Vähän aikaa ne tökkii sinua mutta jatkavat sitten eteenpäin.\n" + "Onneksi olkoon selvisit, voit jatkaa eteenpäin."); valmis = true; break; case "tuijota": Pelimoottori.KirjoitaRuuudulle( "Armeija huutaa: TUIJOTUSKILPAILU!!!" + "Nyt alkaa armoton tuijotus." + "Armeija alkaa räpytellä ja voitat!" + "Armeija suuttuu toisilleen ja alkavat kinastelee" + "Hipsit samalla eteenpäin ja ansaitse yhden pisteen"); Tyyppi.pisteet += 1; valmis = true; break; default: Pelimoottori.KirjoitaRuuudulle("En ymmärrä käskyä"); break; } } }
// Tämä on ohjelman runko ja ajetaan ekana static void Main(string[] args) { while (true) { Pelimoottori.KirjoitaRuuudulle( "Moi, Tervetuloa meidän peliin.\n" + "Tee ensin tyyppi.\n" + "Kerro sun tyypin nimi."); Tyyppi.TeeTyyppi(); Pelimoottori.KirjoitaRuuudulle( "Moi " + Tyyppi.nimi); Pelimoottori.KirjoitaRuuudulle( "Voit koska tahansa tarkastella hahmoasi kirjoittamalla 'c'\n" + "Näet silloin seuraavan ruudun:"); Tyyppi.EsittelyTyyppi(); Pelimoottori.KirjoitaRuuudulle("Aloitamme nyt pelin arpomalla aloitushuoneen"); Pelimoottori.Pysäytä(); Pelimoottori.SiivoaRuutu(); Pelimoottori.LataaHuoneet(new Armeija(), new Aarrearkku()); while (Pelimoottori.Tarkista()) { if (!Pelimoottori.SatunnainenHuone()) { Pelimoottori.KirjoitaRuuudulle("Pelasit kaikki huoneet läpi, onneksi olkoon!"); Pelimoottori.Pysäytä(); break; } Pelimoottori.Pysäytä(); Pelimoottori.SiivoaRuutu(); } Pelimoottori.KirjoitaRuuudulle("Peli loppui"); string syöte = Pelimoottori.Kysy("Syötä 'q' lopettaaksesi, muuten alkaa uusi peli:"); if (syöte == "q") { break; } Pelimoottori.RuutuVaihto(); } }
public static string TeeValinta(params string[] valinnat) { int i; while (true) { RuutuVaihto(); KirjoitaRuuudulle("Vaihtoehdot:"); i = 1; foreach (string valinta in valinnat) { KirjoitaRuuudulle("" + i + ": " + valinta); i++; } string vastaus = Pelimoottori.Kysy("Mitä teet:").ToLower(); if (vastaus == "c") { Tyyppi.EsittelyTyyppi(); continue; } int vastausLöyty = Array.IndexOf(valinnat, vastaus); if (vastausLöyty > -1) { KirjoitaRuuudulle(" "); return(vastaus); } else if (int.TryParse(vastaus, out int temp)) { if (temp > 0 && temp <= valinnat.Length) { KirjoitaRuuudulle(" "); return(valinnat[temp - 1]); } } else { KirjoitaRuuudulle("Vaihtoehto ei kelpaa. Yritä uudelleen"); } } }
public void Aloita() { Pelimoottori.RuutuVaihto(); Pelimoottori.KirjoitaRuuudulle( "Tulet suureen huoneeseen.\n" + "Keksi miten pääset pois.\n" + "Näet siellä armeijan."); bool valmis = false; while (!valmis) { string vastaus = Pelimoottori.TeeValinta("piiloudu", "juokse", "ei mitään"); switch (vastaus) { case "piiloudu": Pelimoottori.KirjoitaRuuudulle("Menet piiloon ja armeija ei näe sinua."); Pelimoottori.KirjoitaRuuudulle("Mutta armeija on edelleen sinun ja ulospääsyn edessä."); break; case "juokse": Pelimoottori.RuutuVaihto(); Pelimoottori.KirjoitaRuuudulle( "Juokset suoraan päin armeijaa.\n" + "Tulee melkoinen taistelu!"); Taistele(); valmis = true; break; case "ei mitään": Pelimoottori.KirjoitaRuuudulle( "Armeija luulee sinua patsaaksi ja jatkaa matkaa.\n" + "Pääset pinteestä ja voi jatkaa eteenpäin"); valmis = true; break; default: Pelimoottori.KirjoitaRuuudulle("En ymmärrä käskyä"); break; } } }
public static void TeeTyyppi() { pisteet = 0; elossa = true; nimi = Pelimoottori.Kysy("Anna nimi: "); }
public void Aloita() { bool ansa = true; Pelimoottori.RuutuVaihto(); Pelimoottori.KirjoitaRuuudulle( "Tulet huoneeseen missä on aarrearkku.\n"); bool valmis = false; while (!valmis) { string vastaus = Pelimoottori.TeeValinta("avaa arkku", "tutki", "mene pois"); switch (vastaus) { case "avaa arkku": if (ansa) { Pelimoottori.KirjoitaRuuudulle("Avaat arkun ahneuksissasi ja laukaiset ansan."); Pelimoottori.KirjoitaRuuudulle("Katosta tulee kohti tulipallo ja koitat väistää sitä."); if (!Pelimoottori.SuoritaHaaste(Tyyppi.ketteryys, 10)) { Tyyppi.Kuole(); Pelimoottori.KirjoitaRuuudulle("Et ehdi tulipallon alta pois ja muutut tuhkaksi, Hei hei."); valmis = true; break; } else { Tyyppi.pisteet += 2; Pelimoottori.KirjoitaRuuudulle("Huh, väistät tulipallon juuri ja juuri."); Pelimoottori.KirjoitaRuuudulle("Ansaitset siitä hyvästä yhden pisteen."); Pelimoottori.KirjoitaRuuudulle("Eikun avaamaan arkkua!"); } } Tyyppi.pisteet += 2; Pelimoottori.KirjoitaRuuudulle("Ou yeah! Saat kultaa niin että ropisee ja pisteitä 2 kappaletta"); valmis = true; break; case "tutki": Pelimoottori.KirjoitaRuuudulle("Huomaat arkussa ansan ja koitat purkaa sen"); if (!Pelimoottori.SuoritaHaaste(Tyyppi.näppäryys, 15)) { Pelimoottori.KirjoitaRuuudulle( "Onpas hankala ansa, et saa purettua sitä."); } else { ansa = false; Tyyppi.pisteet++; Pelimoottori.KirjoitaRuuudulle( "Easy Piece. Purat ansan kuin parrakas kääpiö konsanaan." + "Ansaitsit yhden pisteen!"); } break; case "mene pois": Pelimoottori.KirjoitaRuuudulle( "Aarteet eivät ole sinua varten, jatkat matkaa kevein repuin eteenpäin\n"); valmis = true; break; default: Pelimoottori.KirjoitaRuuudulle("En ymmärrä käskyä"); break; } } }