Esempio n. 1
0
        public static TimeSpan GetTimeUntilReroll(string playerMembershipId)
        {
            IRerollRepository RerollRepo = new EFRerollRepository();
            var playerReroll             = RerollRepo.Rerolls.Where(r => r.MembershipId == playerMembershipId).FirstOrDefault();

            if (playerReroll == null)
            {
                // It's ok to reroll, they are a new first generation
                return(TimeSpan.Zero);
            }

            var g = playerReroll.CharacterGeneration;

            if (g >= PvPStatics.RerollTimer.Count())
            {
                g = PvPStatics.RerollTimer.Count() - 1;
            }
            var rerollTime = playerReroll.LastCharacterCreation.AddMinutes(PvPStatics.RerollTimer[g]);

            return(rerollTime.Subtract(DateTime.UtcNow));
        }
Esempio n. 2
0
        public static void AddRerollGeneration(string playerMembershipId)
        {
            IRerollRepository RerollRepo = new EFRerollRepository();
            var playerReroll             = RerollRepo.Rerolls.Where(r => r.MembershipId == playerMembershipId).FirstOrDefault();

            if (playerReroll == null)
            {
                // Does not exist, must be a new player. Create new Reroll, assume that it is first generation.
                playerReroll = new Reroll
                {
                    CharacterGeneration   = 0,
                    LastCharacterCreation = DateTime.UtcNow,
                    MembershipId          = playerMembershipId
                };
            }
            else
            {
                // They exist. Bump up the generation and update the time.
                playerReroll.CharacterGeneration++;
                playerReroll.LastCharacterCreation = DateTime.UtcNow;
            }
            RerollRepo.SaveReroll(playerReroll);
        }