Beispiel #1
0
        public static Character Battle(Character ch1, Character ch2)
        {
            var ch1StrikesFirst = Randomness.TruePercent(); // default 50%
            var ch1Weapon       = ch1.GetHighestDPS();
            var ch2Weapon       = ch2.GetHighestDPS();

            while (ch1.Health > 0 && ch2.Health > 0)
            {
                if (ch1StrikesFirst)
                {
                    ch2.Health -= ch1Weapon.DPS;
                    if (ch2.Health > 0)
                    {
                        ch1.Health -= ch2Weapon.DPS;
                    }
                }
                else
                {
                    ch1.Health -= ch2Weapon.DPS;
                    if (ch1.Health > 0)
                    {
                        ch2.Health -= ch1Weapon.DPS;
                    }
                }
            }
            if (ch1.Health > 0)
            {
                return(ch1);
            }
            else
            {
                return(ch2);
            }
        }
Beispiel #2
0
        void TestRandomness()
        {
            var t = 0;
            var f = 0;

            for (var i = 0; i < 100; i++)
            {
                var tf = Randomness.TruePercent(35);
                if (tf)
                {
                    t++;
                }
                else
                {
                    f++;
                }
            }
            Console.WriteLine("True: {0}; False: {1}", t, f);
        }