Exemplo n.º 1
0
        /// <summary>
        /// See all the achievements that are unlocked by this task. if they arent already conferred, confer them
        /// Recalculate rewards unlocked by the achievement, if they arent already conferred, confer them
        /// Recalculate Pilot levels unlocked by the achievement if they arent already conferred, confer them
        /// </summary>
        /// <param name="dc"></param>
        /// <param name="taskID"></param>
        /// <param name="email"></param>
        private void ProcessTaskDependents(DBClassesDataContext dc, Guid taskID, string email)
        {
            // recalculate achievements for this pilot
            List <Guid> Achievements = RecalculateAchievements(dc, email);

            // save these achievements
            if (Achievements.Count > 0)
            {
                PilotAchievement.saveAchievements(dc, email, Achievements);
            }
            dc.SubmitChanges();

            // Now calculate all rewards which are unlocked by this achievement
            List <Guid> Rewards = RecalculateRewards(dc, email, Achievements);

            if (Rewards.Count > 0)
            {
                PilotReward.saveRewards(dc, email, Rewards);
            }

            dc.SubmitChanges();

            // Now calculate all rewards which are unlocked by this achievement
            List <Guid> Levels = RecalculateLevels(dc, email, Achievements);

            if (Rewards.Count > 0)
            {
                PilotClass.saveClasses(dc, email, Levels);
            }
            dc.SubmitChanges();
        }
Exemplo n.º 2
0
 protected void Page_Load(object sender, EventArgs e)
 {
     mUser = (AppUser)Session[Constants.SESS_KEY_USER];
     if (mUser == null)
     {
         getUserFromCookie();
         if (mUser == null)
         {
             Response.Redirect("login.aspx");
             Response.Close();
             return;
         }
     }
     PilotClasses = PilotClass.getPilotClassesForPilot(mUser.UserEmail);
     Achievements = PilotAchievement.getAchievementsForPilot(mUser.UserEmail);
     Rewards      = PilotReward.getRewardsForPilot(mUser.UserEmail);
 }