/// <summary>
        /// Sets up the Battlefront status list with default values.
        /// </summary>
        /// <param name="battleFrontProgressions"></param>
        private void BuildApocBattleFrontStatusList(List <RVRProgression> battleFrontProgressions)
        {
            lock (LockObject)
            {
                BattleFrontStatuses.Clear();
                foreach (var battleFrontProgression in battleFrontProgressions)
                {
                    // Keeps for this region.
                    var keeps = BattleFrontService.GetZoneKeeps(battleFrontProgression.RegionId, battleFrontProgression.ZoneId);
                    // BattleFront Objectives for this region.
                    var battlefieldObjectives = BattleFrontService.GetZoneBattlefrontObjectives(battleFrontProgression.RegionId, battleFrontProgression.ZoneId);

                    BattleFrontStatuses.Add(new BattleFrontStatus(ImpactMatrixManagerInstance, battleFrontProgression.BattleFrontId)
                    {
                        LockingRealm          = (Realms)BattleFrontProgressions.Single(x => x.BattleFrontId == battleFrontProgression.BattleFrontId).LastOwningRealm,
                        FinalVictoryPoint     = new VictoryPointProgress(battleFrontProgression.OrderVP, battleFrontProgression.DestroVP),
                        OpenTimeStamp         = 0,
                        LockTimeStamp         = 0,
                        Locked                = true,
                        RegionId              = battleFrontProgression.RegionId,
                        Description           = battleFrontProgression.Description,
                        ZoneId                = battleFrontProgression.ZoneId,
                        KeepList              = keeps,
                        BattlefieldObjectives = battlefieldObjectives
                    });
                }
            }
        }
示例#2
0
        public void LockBattleFrontStatus(int battleFrontId, Realms lockingRealm, VictoryPointProgress vpp)
        {
            var activeStatus = BattleFrontStatuses.Single(x => x.BattleFrontId == battleFrontId);

            activeStatus.Locked            = true;
            activeStatus.LockingRealm      = lockingRealm;
            activeStatus.FinalVictoryPoint = vpp;
            activeStatus.LockTimeStamp     = FrameWork.TCPManager.GetTimeStamp();
        }
 public BattleFrontStatus GetBattleFrontStatus(int battleFrontId)
 {
     try
     {
         return(BattleFrontStatuses.Single(x => x.BattleFrontId == battleFrontId));
     }
     catch (Exception e)
     {
         ProgressionLogger.Warn($"Battlefront Id : {battleFrontId} Exception : {e.Message} ");
         throw;
     }
 }
 public BattleFrontStatus GetRegionBattleFrontStatus(int regionId)
 {
     if (BattleFrontStatuses != null)
     {
         return(BattleFrontStatuses.SingleOrDefault(x => x.RegionId == regionId));
     }
     else
     {
         ProgressionLogger.Debug($"Call to get region status with no statuses");
         return(null);
     }
 }
        public void LockBattleFrontStatus(int battleFrontId, Realms lockingRealm, VictoryPointProgress vpp)
        {
            var activeStatus = BattleFrontStatuses.Single(x => x.BattleFrontId == battleFrontId);

            if (activeStatus == null)
            {
                ProgressionLogger.Warn($"Could not locate Active Status for battlefront Id {battleFrontId}");
            }

            activeStatus.Locked            = true;
            activeStatus.LockingRealm      = lockingRealm;
            activeStatus.FinalVictoryPoint = vpp;
            activeStatus.LockTimeStamp     = FrameWork.TCPManager.GetTimeStamp();

            ProgressionLogger.Info($"Locking BF Status {activeStatus.Description} to realm:{lockingRealm}");
        }
示例#6
0
 public BattleFrontStatus GetActiveBattleFrontStatus(int battleFrontId)
 {
     return(BattleFrontStatuses.Single(x => x.BattleFrontId == battleFrontId));
 }