private static CurrentSpell ArcaneMageCommands(Player mage) { ConsoleKeyInfo enter = new ConsoleKeyInfo(); Console.Clear(); var counter = 1; while (enter.Key != ConsoleKey.Enter) { if (enter.Key == ConsoleKey.DownArrow) { counter++; } else if (enter.Key == ConsoleKey.UpArrow) { counter--; } GameTitle.GetTitle(); string actionSelect = $"SELECT ACTION FOR {mage.Name}"; string polymorph = $"POLYMORPH-- DISABLE TARGET FOR 2 TURNS, COST: 200 MANA, COOLDOWN: 4"; string arcaneBlast = $"ARCANE BLAST-- DAMAGE:{mage.Spellpower * 3}, COST: 90 MANA, , NO COOLDOWN"; string amplifier = $"AMPLIFY MAGIC-- DOUBLE SPELL DAMAGE FOR NEXT 2 TURNS, COST: 250 MANA, COOLDOWN: 4"; string manaRegen = $"MANA REGENERATION-- GET 300 MANA, COOLDOWN: 3"; Console.WriteLine("{0}", actionSelect); switch (counter) { case 1: Console.ForegroundColor = ConsoleColor.Magenta; Console.WriteLine("{0,2}", "-> " + polymorph); Console.WriteLine("{0,2}", arcaneBlast); Console.WriteLine("{0,2}", amplifier); Console.WriteLine("{0,2}", manaRegen); break; case 2: Console.ForegroundColor = ConsoleColor.Magenta; Console.WriteLine("{0,2}", polymorph); Console.WriteLine("{0,2}", "-> " + arcaneBlast); Console.WriteLine("{0,2}", amplifier); Console.WriteLine("{0,2}", manaRegen); break; case 3: Console.ForegroundColor = ConsoleColor.Magenta; Console.WriteLine("{0,2}", polymorph); Console.WriteLine("{0,2}", arcaneBlast); Console.WriteLine("{0,2}", "-> " + amplifier); Console.WriteLine("{0,2}", manaRegen); break; case 4: Console.ForegroundColor = ConsoleColor.Magenta; Console.WriteLine("{0,2}", polymorph); Console.WriteLine("{0,2}", arcaneBlast); Console.WriteLine("{0,2}", amplifier); Console.WriteLine("{0,2}", "-> " + manaRegen); break; default: if (counter == 5) { counter = 1; Console.ForegroundColor = ConsoleColor.Magenta; Console.WriteLine("{0,2}", "-> " + polymorph); Console.WriteLine("{0,2}", arcaneBlast); Console.WriteLine("{0,2}", amplifier); Console.WriteLine("{0,2}", manaRegen); break; } else if (counter == 0) { counter = 4; Console.ForegroundColor = ConsoleColor.Magenta; Console.WriteLine("{0,2}", polymorph); Console.WriteLine("{0,2}", arcaneBlast); Console.WriteLine("{0,2}", amplifier); Console.WriteLine("{0,2}", "-> " + manaRegen); break; } break; } enter = Console.ReadKey(); Console.Clear(); } var currentSpell = new CurrentSpell(); switch (counter) { case 1: var polymorph = new Polymorph(); currentSpell = polymorph.GetPolymorph(mage); break; case 2: var arcaneBlast = new ArcaneBlast(); currentSpell = arcaneBlast.GetArcaneBlast(mage); break; case 3: var amplifier = new Amplifier(); currentSpell = amplifier.GetAmplifier(mage); break; default: var manaReg = new ManaRegeneration(); currentSpell = manaReg.GetManaReg(mage); break; } return(currentSpell); }