using System; namespace RPG_Spele { public class Magija { public string Nosaukums { get; set; } public int Damage { get; set; } public int Radius { get; set; } public int ManaCost { get; set; } public int Cooldown { get; set; } public Magija(string nosaukums, int damage, int radius, int manaCost, int cooldown) { Nosaukums = nosaukums; Damage = damage; Radius = radius; ManaCost = manaCost; Cooldown = cooldown; } } public class Speletajs { public string Vards { get; set; } public int HP { get; set; } public int DEF { get; set; } public int ATKSPD { get; set; } public int Mana { get; set; } public int ManaRecovery { get; set; } public Speletajs(string vards, int hp, int def, int atkspd, int mana, int manaRec) { Vards = vards; HP = hp; DEF = def; ATKSPD = atkspd; Mana = mana; ManaRecovery = manaRec; } } class Program { public static int CalculateDamage(Speletajs uzbrucejs, Speletajs merkis, Magija magijasTips) { int dmg = (int)(magijasTips.Damage * ((double)uzbrucejs.ATKSPD / merkis.DEF)); if (dmg < 1) dmg = 1; return dmg; } private static void IzmantoMagiju(Speletajs uzbrucejs, Speletajs merkis, Magija magijasTips) { if (uzbrucejs.Mana < magijasTips.ManaCost) { Console.WriteLine("Nepietiek mana!"); return; } int damage = CalculateDamage(uzbrucejs, merkis, magijasTips); uzbrucejs.Mana -= magijasTips.ManaCost; merkis.HP -= damage; if (merkis.HP < 0) merkis.HP = 0; Console.WriteLine($"{uzbrucejs.Vards} izmanto {magijasTips.Nosaukums} uz {merkis.Vards}!"); Console.WriteLine($"{merkis.Vards} saņem {damage} damage! Atlikušais HP: {merkis.HP}"); Console.WriteLine($"{uzbrucejs.Vards} atlikušā mana: {uzbrucejs.Mana}"); Console.WriteLine($" "); SpecialEffect(uzbrucejs, merkis, magijasTips); } public static void SpecialEffect(Speletajs uzbrucejs, Speletajs merkis, Magija magijasTips) { // pagaidam nekas } public static void Main(string[] args) { Speletajs speletajs1 = new Speletajs("Burvis Lauva", 50, 20, 10, 100, 24); Speletajs speletajs2 = new Speletajs("Fantastiskais Valis", 50, 70, 5, 100, 20); Magija magija1 = new Magija("Udens", 20, 50, 20, 10); Magija magija2 = new Magija("Uguns", 40, 50, 30, 30); Console.WriteLine("Cīņa starp " + speletajs1.Vards + " un " + speletajs2.Vards + " sākas!"); while (speletajs1.HP > 0 && speletajs2.HP > 0) { if (speletajs1.Mana >= magija1.ManaCost) IzmantoMagiju(speletajs1, speletajs2, magija1); if (speletajs1.Mana >= magija2.ManaCost) IzmantoMagiju(speletajs1, speletajs2, magija2); if (speletajs2.HP <= 0 || (speletajs1.Mana < magija1.ManaCost && speletajs1.Mana < magija2.ManaCost)) { Console.WriteLine(speletajs2.Vards + " ir sakauts! " + speletajs1.Vards + " uzvar!"); break; } if (speletajs2.Mana >= magija1.ManaCost) IzmantoMagiju(speletajs2, speletajs1, magija1); if (speletajs2.Mana >= magija2.ManaCost) IzmantoMagiju(speletajs2, speletajs1, magija2); if (speletajs1.HP <= 0 || (speletajs2.Mana < magija1.ManaCost && speletajs2.Mana < magija2.ManaCost)) { Console.WriteLine(speletajs1.Vards + " ir sakauts! " + speletajs2.Vards + " uzvar!"); break; } speletajs1.Mana += speletajs1.ManaRecovery; speletajs2.Mana += speletajs2.ManaRecovery; Console.WriteLine("Mana atjaunota!"); Console.WriteLine(); } Console.WriteLine(); Console.WriteLine("Cīņa beigusies!"); } } }