Example #1
0
        /// <summary>
        /// Ebben van a ko papir ollos cucc, 1hez ad 1tol levon
        /// </summary>
        /// <param name="randomMission"></param>
        public override void VisitRandomMission(RandomMission randomMission)
        {
            var missionLevel = _missionInProgress.MissionLevel;

            var rawGrindLevel = _missionDataCache.LookUpGrindAmount(missionLevel);

            var diffmult = randomMission.DifficultyMultiplier;

            var standingValue = 1 / (diffmult * rawGrindLevel);

            standingValue *= _missionInProgress.GetParticipantBonusModifier();

            // 0 -> 0.0   10 - > 1.0
            // 6 -> 0.6 --> 0.5*0.6 => positive x 30%

            //Implementation: Add reputation for all factions equally -- No factional bias!
            IEnumerable <long>           allianceEids = DefaultCorporationDataCache.GetMegaCorporationEids();
            List <MissionStandingChange> standingChangeForSyndicatification = new List <MissionStandingChange>();

            foreach (long id in allianceEids)
            {
                standingChangeForSyndicatification.Add(new MissionStandingChange(id, standingValue));
            }
            _standingChanges = standingChangeForSyndicatification.ToArray();
        }
Example #2
0
        public override void VisitRandomMission(RandomMission randomMission)
        {
            var coinDefinition = _missionInProgress.myLocation.GetRaceSpecificCoinDefinition();

            var level = _missionInProgress.MissionLevel;

            //var coinQuantity = (int)Math.Round(Math.Pow(1.3 + level, 2.5 / 3.0) * randomMission.DifficultyMultiplier);
            var coinQuantity = RandomMission.CoinQuantity(level, randomMission.DifficultyMultiplier);

            //Total token quantity increase
            coinQuantity = (int)Math.Round(_missionInProgress.GetParticipantBonusModifier() * coinQuantity);

            var coinItemInfo = new ItemInfo(coinDefinition, coinQuantity);
            var coinReward   = new MissionReward(coinItemInfo);

            var rewardItems = randomMission.RewardItems.ToList();

            rewardItems.Add(coinReward);
            _rewardItems = rewardItems;
        }