Пример #1
0
        public bool SpinResultShouldFlagSpinResultWithFeatureOnScatter(string wheelString, int level, decimal bet)
        {
            var config  = new Configuration();
            var spinBet = MainGameEngine.GenerateSpinBet(new RequestContext <SpinArgs>("", "", PlatformType.Web)
            {
                GameSetting = new Model.Entity.GameSetting {
                    GameSettingGroupId = 0
                },
                Currency = new Model.Entity.Currency {
                    Id = 0
                },
                Parameters = new SpinArgs
                {
                    LineBet    = bet,
                    Multiplier = 1
                }
            });

            var wheel        = new Wheel(Game.WheelWidth, Game.WheelHeight, wheelString.ToFormattedWheelString());
            var winPositions = MainGameEngine.GenerateWinPositions(
                config.Payline,
                config.MainGamePayTable,
                wheel,
                spinBet.LineBet,
                spinBet.Lines,
                1);
            var bonusPositions = MainGameEngine.GenerateBonusPositions(wheel);

            var spinResult = new SpinResult(spinBet, wheel, null, winPositions, bonusPositions);

            return(spinResult.HasFeatureBonus);
        }
Пример #2
0
        public string EngineShouldCreateCorrectCollapseReels(string wheelString, string indicesString, int level)
        {
            var config  = new Configuration();
            var spinBet = MainGameEngine.GenerateSpinBet(new RequestContext <SpinArgs>("", "", PlatformType.Web)
            {
                GameSetting = new Model.Entity.GameSetting {
                    GameSettingGroupId = 0
                },
                Currency = new Model.Entity.Currency {
                    Id = 0
                },
                Parameters = new SpinArgs
                {
                    LineBet    = 1,
                    Multiplier = 1
                }
            });

            var targetWheel    = config.WeightedReelStripsCollection.ElementAt(1).Wheel;
            var topIndices     = Array.ConvertAll(indicesString.Split(','), Convert.ToInt32).ToList();
            var wheel          = new Wheel(Game.WheelWidth, Game.WheelHeight, wheelString.ToFormattedWheelString());
            var winPositions   = MainGameEngine.GenerateWinPositions(config.Payline, config.MainGamePayTable, wheel, spinBet.LineBet, spinBet.Lines, spinBet.Multiplier);
            var bonusPositions = MainGameEngine.GenerateBonusPositions(wheel);

            var spinResult           = new SpinResult(spinBet, wheel, topIndices, winPositions, bonusPositions);
            var collapsingSpinResult = CollapsingBonusEngine.CreateCollapsingSpinResult(spinResult, targetWheel, config.Payline, config.MainGamePayTable);

            return(string.Join('|', collapsingSpinResult.Wheel.Reels.Select(symbols => string.Join(',', symbols))));
        }