public static void VihollisenVuoro(Hahmo vihollinen) { Hahmo pelaaja = Areena.Areenalista.Find(item => item.Nimi == "Pelaaja"); try { if (pelaaja.Kuollut == false) { Console.Clear(); if (Areena.Areenalista.Contains(vihollinen)) { //Console.WriteLine("Vuorossa {0}", vihollinen.Nimi); if (pelaaja.Väistä() == false) { pelaaja.MenetäHPtä(vihollinen.Hyökkää(pelaaja, vihollinen)); Console.WriteLine("\n\n..."); Console.ReadKey(true); } else { Console.WriteLine("{0} hyökkäsi, pelaaja väisti.", vihollinen.Nimi); System.Threading.Thread.Sleep(900); } } } } catch (Exception) { } }
public static void HeitäPommi(Hahmo heittäjä, Hahmo vihollinen, List <Hahmo> toissijaisetViholliset) { Random arvonta = new Random(); int vahinkoKerroin = arvonta.Next(4, 9); int toissijainenKerroin = arvonta.Next(2, 5) + heittäjä.Dex; int vahinko = (vahinkoKerroin + heittäjä.Dex) - vihollinen.Def; if (vahinko < 1) { int torjuttuVahinko = (4 * vahinkoKerroin) - 1; vahinko = 1; Console.Write("{0} heitti pommin, {1} menetti ", heittäjä.Nimi, vihollinen.Nimi); UI.VahinkoVäri(vahinko); Console.Write(":n kestopisteen (" + torjuttuVahinko + " vastustettu)\n"); } else { Console.Write("{0} heitti pommin, {1} menetti ", heittäjä.Nimi, vihollinen.Nimi); UI.VahinkoVäri(vahinko); Console.Write(" kestopistettä (" + vihollinen.Def + " vastustettu)\n"); } //toissijainen vahinko for (int i = 0; i < toissijaisetViholliset.Count; i++) { int toissijainenVahinko = toissijainenKerroin - toissijaisetViholliset[i].Def; if (toissijainenVahinko < 1) { int torjuttuVahinko = toissijainenKerroin - 1; toissijainenVahinko = 1; toissijaisetViholliset[i].Hp -= toissijainenVahinko; Console.Write("\nMyös {0} menetti ", toissijaisetViholliset[i].Nimi); UI.VahinkoVäri(toissijainenVahinko); Console.Write(" kestopistettä (" + torjuttuVahinko + " vastustettu)\n"); Areena.PoistaKuolleet(); } else { toissijaisetViholliset[i].Hp -= toissijainenVahinko; Console.Write("\nMyös {0} menetti ", toissijaisetViholliset[i].Nimi); UI.VahinkoVäri(toissijainenVahinko); Console.Write(" kestopistettä (" + toissijaisetViholliset[i].Def + " vastustettu)\n"); Areena.PoistaKuolleet(); } } Areena.PoistaKuolleet(); vihollinen.MenetäHPtä(vahinko); System.Threading.Thread.Sleep(2500); }