Ejemplo n.º 1
0
        /// <summary>
        /// Возвращает результат съемок
        /// </summary>
        private ActionResultModel GetClipResult(SuccessGrade grade)
        {
            var gradePercent     = GradePercentManager.GetRewardPercent(grade, ActionType.NewClip);
            var fansPercentValue = PlayerManager.GetFansPercentValue();
            var featBonus        = _clip.Track.Feat?.Fans / 150 ?? 0;

            return(new ActionResultModel {
                Action = ActionType.NewClip,
                FansIncrease = CalculateStatIncrease(gradePercent, fansPercentValue, 0.1f) + featBonus,
                Income = CalculateStatIncrease(gradePercent, fansPercentValue, 0.2f) * Random.Range(3, 5),
                Popularity = CalculateStatIncrease(gradePercent, fansPercentValue, 0.1f) * Random.Range(2, 5),
                Grade = grade
            });
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Возвращает результат трэка
        /// </summary>
        private ActionResultModel GetTrackResult(SuccessGrade grade)
        {
            var gradePercent     = GradePercentManager.GetRewardPercent(grade, ActionType.NewTrack);
            var fansPercentValue = PlayerManager.GetFansPercentValue();
            var featBonus        = _track.Feat?.Fans / 150 ?? 0;

            return(new ActionResultModel {
                Action = _track.Feat == null ? ActionType.NewTrack : ActionType.Feat,
                FansIncrease = CalculateStatIncrease(gradePercent, fansPercentValue, 0.1f) + featBonus,
                Income = CalculateStatIncrease(gradePercent, fansPercentValue, 0.2f) * Random.Range(3, 6),
                Top = PlayerManager.GetInfo().Fans >= 50000 ? GetPlaceInTop(grade) : -1,
                Popularity = CalculateStatIncrease(gradePercent, fansPercentValue, 0.1f) * Random.Range(2, 5),
                Grade = grade
            });
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Возвращает результат съемок
        /// </summary>
        private ActionResultModel GetBattleResult(SuccessGrade grade)
        {
            var gradePercent     = GradePercentManager.GetRewardPercent(grade, ActionType.Battle);
            var fansPercentValue = PlayerManager.GetFansPercentValue();
            var income           = CalculateStatIncrease(gradePercent, fansPercentValue, 0.1f);
            var rivalFansBonus   = battleModel.Rival.Fans * 5;

            return(new ActionResultModel {
                Action = ActionType.Battle,
                FansIncrease = CalculateStatIncrease(gradePercent, fansPercentValue, 0.2f) / 3,
                Income = income > 0 ? income : 0,
                Popularity = Math.Abs(CalculateStatIncrease(gradePercent, fansPercentValue, 0.1f) * 5 + rivalFansBonus),
                Grade = grade
            });
        }