コード例 #1
0
ファイル: Formula.cs プロジェクト: jiowchern/Regulus
        public void TestHitFormulaDeath1()
        {
            var random = Substitute.For<IRandom>();

            var formula = new HitTest(random);
            random.NextLong(Arg.Any<long>(), Arg.Any<long>()).Returns(0xffffffe);

            var fishs = new List<RequsetFishData>
            {
                new RequsetFishData
                {
                    FishId = 1,
                    FishOdds = 1
                }
            };
            var weapon = new RequestWeaponData
            {
                TotalHits = 1,
                WeaponBet = 1,
                WeaponOdds = 1,
                BulletId = 1
            };

            var request = new HitRequest(fishs.ToArray(), weapon, true);

            var hitResponses = formula.TotalRequest(request);
            foreach(var respones in hitResponses)
            {
                Assert.AreEqual(1, respones.WepId);
                Assert.AreEqual(1, respones.FishId);
                Assert.AreEqual(FISH_DETERMINATION.DEATH, respones.DieResult);
            }
        }
コード例 #2
0
ファイル: Formula.cs プロジェクト: jiowchern/Regulus
        public void TestHitFormulaDeath2()
        {
            var random = Substitute.For<IRandom>();

            var formula = new HitTest(random);
            random.NextLong(Arg.Any<long>(), Arg.Any<long>()).Returns(0x0fffffff / 26); // 9d89d8

            var fishs = new List<RequsetFishData>
            {
                new RequsetFishData
                {
                    FishId = 1,
                    FishOdds = 25
                }
            };
            var weapon = new RequestWeaponData
            {
                TotalHits = 1,
                WeaponBet = 1,
                WeaponOdds = 1,
                BulletId = 1,
                WeaponType =WEAPON_TYPE.INVALID
            };

            var hitRequest = new HitRequest(fishs.ToArray(), weapon, true);

            var hitResponses = formula.TotalRequest(hitRequest); // a3d70a

            foreach(var response in hitResponses)
            {
                Assert.AreEqual(1, response.WepId);
                Assert.AreEqual(1, response.FishId);
                Assert.AreEqual(FISH_DETERMINATION.DEATH, response.DieResult);
            }
        }
コード例 #3
0
ファイル: Formula.cs プロジェクト: jiowchern/Regulus
        public void TestHitFormulaSurvival2()
        {
            var random = Substitute.For<IRandom>();

            var formula = new HitTest(random);
            random.NextLong(Arg.Any<long>(), Arg.Any<long>()).Returns(0x0fffffff / 25);

            var fishs = new List<RequsetFishData>
            {
                new RequsetFishData
                {
                    FishId = 1,
                    FishOdds = 25
                }
            };
            var weapon = new RequestWeaponData
            {
                TotalHits = 1,
                WeaponBet = 1,
                WeaponOdds = 1,
                BulletId = 1
            };

            var request = new HitRequest(fishs.ToArray(), weapon, true);

            var hitResponses = formula.TotalRequest(request);
            foreach(var response in hitResponses)
            {
                Assert.AreEqual(1, response.WepId);
                Assert.AreEqual(WEAPON_TYPE.INVALID, response.FeedbackWeapons[0]);
                Assert.AreEqual(1, response.FishId);
                Assert.AreEqual(FISH_DETERMINATION.SURVIVAL, response.DieResult);
            }
        }