private void BuildAchievements() { AddImage(439, 28, 40019, 2499); AddButton(429, 29, 40017, 40017, 2, GumpButtonType.Reply, 0); AddImage(429, 29, 40017, 2499); AddTextEntry(465, 30, 192, 20, 1153, 1, SearchName); AddImage(89, 28, 40019, 2499); AddButton(195, 28, 40016, 40016, 5, GumpButtonType.Reply, 0); AddImage(195, 28, 40016, 2499); AddLabel(95, 30, 1153, String.Format("Sort: {0}", AchievementSystem.GetSortFilterName(Profile.SortFilter))); if (List == null) { BuildList(); } if (Index < 0) { Index = 0; } if (Index >= List.Count) { Index = List.Count - 1; } BuildScrollBar(); int y = 59; for (int i = Index; i < List.Count && i < Index + MaxEntriesPerPage; i++) { var achievement = List[i]; DateTime achieveTime = DateTime.MinValue; bool hasAchieved = Profile.HasAchieved(achievement, out achieveTime); AddBackground(190, y, 444, 80, 1579); AddHtmlLocalized(273, y + 5, 265, 20, CenterLoc, achievement.Name.ToString(), C32216(0x444444), false, false); AddImageTiled(260, y + 24, 300, 2, 96); AddHtmlLocalized(265, y + 27, 290, 40, CenterLoc, achievement.Description.ToString(), C32216(0x2A2A2A), false, false); AddImage(560, y + 4, hasAchieved ? 10553 : 10550); AddImageTiled(587, y + 4, 5, 59, hasAchieved ? 10554 : 10551); AddImage(587, y + 4, hasAchieved ? 10555 : 10552); if (achievement.Unlocks != null) { UnlocksTooltip(achievement); } AddHtml(560, y + 19, 55, 20, ColorAndCenter(hasAchieved ? "#00FFFF" : "#FFFFFF", achievement.Points.ToString()), false, false); if (achievement.Locked && !Profile.HasUnlocked(achievement)) { AddImage(544, y + 8, 32); var pre = AchievementSystem.GetPrerequisite(achievement); if (pre != null) { AddTooltip(String.Format("Complete '{0}' to Unlock", pre.Name)); } else { AddTooltip("Locked"); } } else if (hasAchieved) { AddHtml(522, y + 59, 100, 20, ColorAndAlignRight("#444444", achieveTime.ToShortDateString()), false, false); } if (achievement.GumpImage > 0) { AddImage(198 + achievement.GumpImageOffset.X, y + 10 + achievement.GumpImageOffset.Y, achievement.GumpImage); } if (achievement.MaxProgress > 1) { BuildProgressBar(achievement, y + 62, true); } if (User.AccessLevel > AccessLevel.Player) { AddButton(500, y + 8, 2117, 2118, 10000 + achievement.Identifier, GumpButtonType.Reply, 0); AddTooltip("Props this achievement"); } y += 80; } }