示例#1
0
        static void Main(string[] args)
        {
            do
            {
                try
                {
                    // lavede det her så alle får lov at prøve ellers ender den i nullref hele tiden
                    switch (round)
                    {
                    case 1:
                        IFighter fighter = Fight(new Fighter(), new Fighter());
                        Console.WriteLine(fighter.ToString() + " eeeer wins!");
                        round++;
                        break;

                    case 2:
                        IFighter fighter2 = Fight(new Fighter(), new WizardAdapter(new Wizard()));
                        Console.WriteLine(fighter2.ToString() + " wins!");
                        round++;
                        break;

                    case 3:
                        IFighter fighter3 = Fight(new Fighter(), new DragonAdapter(new Dragon()));
                        Console.WriteLine(fighter3.ToString() + " wins!");
                        round++;
                        break;

                    default:
                        round = 1;
                        break;
                    }
                }
                catch (NullReferenceException e)
                {
                    //Console.WriteLine(e.StackTrace);
                    //Console.WriteLine(e.Source);
                    round++;
                    Console.WriteLine("Both fighters are dead!");
                }
                catch (Exception)
                {
                    Console.WriteLine("Something else happend");
                }
                Console.ReadLine();
            } while (true);
        }
示例#2
0
        static void Main(string[] args)
        {
            //Do the first fight
            IFighter fight1 = Fight(new Knight(), new Knight());

            if (fight1 != null)
            {
                Console.WriteLine(fight1.ToString());
            }

            //Do Knight, Wizard fight
            IFighter fight2 = Fight(new Knight(), new WizardAdapter(new Wizard()));

            if (fight2 != null)
            {
                Console.WriteLine(fight2.ToString());
            }

            //Knight, dragon fight
            IFighter fight3 = Fight(new Knight(), new DragonAdapter(new Dragon()));

            if (fight3 != null)
            {
                Console.WriteLine(fight3.ToString());
            }

            //
            IFighter fight4 = Fight(new DragonAdapter(new Dragon()), new WizardAdapter(new Wizard()));

            if (fight4 != null)
            {
                Console.WriteLine(fight4.ToString());
            }

            Console.ReadLine();
        }