示例#1
0
        static void Main(string[] args)
        {
            // Här frågar vi efter namn på spelaren
            Console.WriteLine("Vad vill du kalla dig?");
            string playerName = Console.ReadLine();

            // Här skapar vi spelarens stats
            Character player = new Character(playerName, Character.infoGen.Next(1, 4) + 4, Character.infoGen.Next(1, 4) + 4);

            // Sen är det dags och skapa motståndarna och spara dessa i en lista
            List <Character> Opponents = Character.GenerateCharacters(20);

            Console.Clear();

            // Nu har vi skapat spelaren och motståndarna
            bool isRunning = true;

            while (isRunning)
            {
                // Låt oss skriva ut spelaren och hans stats och låta han välja vad han vill göra
                player.Print();

                Console.WriteLine("\nVad vill du görra?");
                Console.WriteLine("L - Leta efter motståndare");
                Console.WriteLine("F - Fega ut och sluta slåss");

                // Här bestämmer vad som händer beroende på vad spelaren väljer att göra
                ConsoleKeyInfo cki = Console.ReadKey(true);
                switch (cki.Key)
                {
                case ConsoleKey.L:
                    // Om spelaren tryckte på L
                    if (Opponents.Count > 0)
                    {
                        // Rensa skärmen och visa spelarens stats
                        Console.Clear();
                        Character opponent = Opponents[0];

                        Console.WriteLine("\nSpelare:");
                        player.Print();

                        Console.WriteLine("\nMotståndare:");
                        opponent.Print();

                        // Slaget börjar när spelaren trycker på en valfriknapp
                        Console.ReadKey(true);

                        // Låt oss skapa slaget
                        Battle battle = new Battle(player, opponent);

                        // När det är gjort startar vi slaget
                        battle.Fight();

                        // När slaget är s**t så kollar vi vem som dog.
                        if (opponent.IsDead)
                        {
                            Opponents.Remove(opponent);
                        }
                        else if (player.IsDead)
                        {
                            isRunning = false;
                        }
                    }
                    else
                    {
                        // Bestäm vad som händer när det inte finns några motståndare kvar
                        Console.WriteLine("Jävla KING, Du har dödat alla!");
                        isRunning = false;
                        Console.ReadKey(true);
                    }
                    break;

                case ConsoleKey.F:
                    //Här bestämmer vi vad som händer om spelaren trycker på F
                    Console.WriteLine("Jävla FEGIS! Du sprang iväg med svansen mellan benen");
                    isRunning = false;
                    Console.ReadKey(true);
                    break;

                default:
                    break;
                }
                Console.Clear();
            }
            // Visar statsen när spelet är s**t
            Console.WriteLine("Slutlig poäng:\n");
            player.Print(includeScore: true);

            Console.ReadKey();
        }
示例#2
0
        static void Main(string[] args)
        {
            Console.ForegroundColor = ConsoleColor.White;

            bool   run = true;
            Random rnd = new Random();

            Shop shop = new Shop(rnd);

            Console.WriteLine("Choose a name for your fighter: ");

            Character player = new Character(
                Console.ReadLine(),
                rnd.Next(1, 15),
                rnd.Next(1, 15)
                );


            List <Character> opponents =
                player.GenerateCharacters(
                    20, //Number of opponents
                    new List <string>()
            {
                "Rolf", "Adam", "Andreas", "Ulrik", "Olaf", "Ragnar", "Andrea", "Mikael", "Lars", "Sigurd"
            }
                    );

            while (run)
            {
                Console.WriteLine($"Your fighter:\n{player}\n");
                player.DisplayInventory();
                Console.WriteLine("\n\nChoose an action: ");
                Console.WriteLine("C - Challange a new enemy");
                Console.WriteLine("X - Retire your fighter");
                Console.WriteLine("L - Battle Log");
                Console.WriteLine("S - Shop");

                switch (Console.ReadKey(true).Key)
                {
                case ConsoleKey.S:
                    shop.BuyItem(player);
                    break;

                case ConsoleKey.L:
                    ShowLog();
                    Console.ReadKey(true);
                    break;

                case ConsoleKey.C:
                    Console.Clear();
                    Character opponent = opponents[rnd.Next(0, opponents.Count)];
                    Console.WriteLine($"--Player stats--{player}\n");
                    player.DisplayInventory();
                    Console.WriteLine($"\n--Opponent--{opponent}");
                    Console.WriteLine("\nChoose an action: ");
                    Console.WriteLine("F - Fight");
                    Console.WriteLine("X - Run Away!");

                    switch (Console.ReadKey(true).Key)
                    {
                    case ConsoleKey.F:
                        Arena arena = new Arena(rnd);
                        Console.WriteLine($"\n\nThe selected arena is: {arena.field}");

                        arena.Bonus(player.Inventory);
                        arena.Penalties(player.Inventory);

                        Battle newBattle = new Battle(player, opponent);
                        BattleLog.Add(newBattle);
                        newBattle.Fight();
                        break;

                    default:
                        break;
                    }
                    if (player.IsDead)
                    {
                        run = false;
                        Console.WriteLine("You are dead!");
                        Console.ReadKey();
                    }
                    if (opponent.IsDead)
                    {
                        player.Money += 5 + (opponent.Strength / 2);
                        opponents.Remove(opponent);
                    }
                    if (opponents.Count == 0)
                    {
                        Console.WriteLine("You have slain all the challengers");
                        run = false;
                        Console.ReadKey(true);
                    }
                    break;

                case ConsoleKey.X:
                    run = false;
                    break;

                default:
                    break;
                }

                Console.Clear();
            }

            Console.WriteLine("Your fighter have retired!");

            player.Score = (BattleLog.Count - 1) * 10;

            if (!player.IsDead)
            {
                player.Score += 10;
            }

            Console.WriteLine($"Your score was {player.Score}\n");
            ShowLog();

            Console.ReadKey(true);
        }