/// <summary> /// Handles the AchievementsUnlocked event of the AchievementContext control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="args"> /// The <see cref="Strokes.Core.AchievementsUnlockedEventArgs"/> instance containing the event data. /// </param> private static void AchievementContext_AchievementsUnlocked(object sender, AchievementsUnlockedEventArgs args) { if (args.Achievements.Any()) { Debug.WriteLine(string.Format("Achievements unlocked: {0}", string.Join(", ", args.Achievements.Select(a => "[" + a.Name + "]")))); AchievementNotificationBox.ShowAchievements(args.Achievements); } }
static void Main(string[] args) { ObjectFactory.Configure(a => { a.For <IAchievementRepository>() .Singleton() .Use <AppDataXmlCompletedAchievementsRepository>() .Ctor <string>("storageFile") .Is("AchievementStorage_ConsoleTest.xml"); a.For <IAchievementService>() .Singleton() .Use <SerialStrokesAchievementService>(); }); var achievementService = ObjectFactory.GetInstance <IAchievementService>(); achievementService.LoadAchievementsFrom(typeof(ArrayLengthPropertyAchievement).Assembly); notificationBox = new AchievementNotificationBox(achievementService); var cultureToTest = "ru-RU"; // Set to "ru-RU" to enable russian. Set to "nl" for dutch // Comment the following line to use operating system default culture. //Thread.CurrentThread.CurrentUICulture = new CultureInfo(cultureToTest); achievementService.AchievementsUnlocked += AchievementContext_AchievementsUnlocked; achievementService.ResetAchievementProgress(); achievementService.StaticAnalysisCompleted += DetectionDispatcher_DetectionCompleted; var file = System.IO.Path.GetFullPath("TestFile.cs"); achievementService.PerformStaticAnalysis(new StaticAnalysisManifest() { ActiveFile = file, ChangedFiles = new string[] { file }, CodeFiles = new string[] { file } }, true); System.Console.Read(); }
public AchievementPaneViewModel() { AchievementsOrdered = new ObservableCollection <AchievementsPerCategory>(); AvailableCultures = new ObservableCollection <CultureItem>(); ResetCommand = new RelayCommand(ResetExecute); ToggleCommand = new RelayCommand(ToggleExecute); achievementService = ObjectFactory.TryGetInstance <IAchievementService>(); settingsRepository = ObjectFactory.TryGetInstance <ISettingsRepository>(); // Solves a design-time issue with StructureMap. if (achievementService != null && settingsRepository != null) { notificationBox = new AchievementNotificationBox(achievementService); achievementService.AchievementsUnlocked += AchievementContext_AchievementsUnlocked; ReloadViewModel(); LoadCultures(); } }