Пример #1
0
 /// <summary>
 /// Returns the progress-limit of an achievement.
 /// </summary>
 /// <param name="AchievementId"></param>
 /// <returns></returns>
 public int GetAchievementProgessLimit(int AchievementId)
 {
     switch (AchievementId)
     {
         default:
             return default(int);
         case 2:
             return System.HabboSystem.CharacterManager.GetDaysInARow(Logs);
         case 3: // RegistrationDuration
             using (DateTimeAdapter Adapter = new DateTimeAdapter(Registered))
             {
                 return (int)(DateTime.Now - Adapter.PopDateTime()).TotalDays;
             }
         case 5 :
             return TimeOnline;
         case 6:
             return (GetAchievementProgessLimit(5) >= 60 && GetAchievementProgessLimit(3) >= 3) ? 1 : 0;
         case 10: // HappyHour
             return ((DateTime.Now.Hour >= 14 && DateTime.Now.Hour <= 15) || Achievements.ContainsKey(10)) ? 1 : 0;
         case 11:
             return RespectGiven;
             // TODO more achievements
     }
 }
Пример #2
0
        /// <summary>
        /// Returns an collection of characterlogs.
        /// </summary>
        /// <param name="CharacterId"></param>
        /// <returns></returns>
        public ICollection<DateTime> GetCharacterLogs(int CharacterId)
        {
            ICollection<DateTime> Output = new List<DateTime>();

            foreach (DataRow Row in System.MySQLManager.GetObject(new CharacterLogsQuery(CharacterId)).GetOutput<DataTable>().Rows)
            {
                using (RowAdapter Adapter = new RowAdapter(Row))
                {
                    string Stamp = Adapter.PopString("login_stamp");

                    using (DateTimeAdapter dtAdapter = new DateTimeAdapter(Stamp))
                    {
                        if (!Output.Contains(dtAdapter.PopDateTime()))
                        {
                            Output.Add(dtAdapter.PopDateTime());
                        }
                    }
                }
            }

            return Output;
        }