private void Awake() { LastTrainPos = transform.position; _achievementsService = ServiceLocator.GetService <AchievementsService>(); _audioService = ServiceLocator.GetService <AudioService>(); _levelService = ServiceLocator.GetService <LevelService>(); _adsService = ServiceLocator.GetService <AdsService>(); _skinService = ServiceLocator.GetService <SkinService>(); _gameDataService = ServiceLocator.GetService <GameDataService>(); _uiService = ServiceLocator.GetService <UIService>(); _poolService = ServiceLocator.GetService <PoolService>(); Trains = new List <TrainController>(); spriteRenderer = GetComponent <SpriteRenderer>(); TargetPointList = TargetRail.WayPoints; TargetPoint = TargetPointList[0].localPosition; Trains.Add(this); InputManager.Swipe += InputManagerOnSwipe; _adsService.TrainRevive += ReviveTrain; _uiService.GameRestart += ResetTrain; _skinService.UpdateSkin(spriteRenderer); UpdateTrainPoints(); LockControlls = _uiService.IsFirstTime; IsFirstTime = _uiService.IsFirstTime; }
public void Add_SavesToDatabase() { var options = new DbContextOptionsBuilder <GameInfoContext>() .UseInMemoryDatabase(databaseName: "AddAchievement_ToDb") .Options; using (var context = new GameInfoContext(options)) { var achievementToAdd = new AddAchievementInputModel() { Name = "Achievement", AcquisitionConditions = "How to get" }; var service = new AchievementsService(context, null); service.Add(achievementToAdd); var expectedAchievement = new Achievement() { Name = achievementToAdd.Name, AcquisitionConditions = achievementToAdd.AcquisitionConditions }; Assert.NotEmpty(context.Achievements); Assert.Equal(expectedAchievement.Name, context.Achievements.First().Name); Assert.Equal(expectedAchievement.AcquisitionConditions, context.Achievements.First().AcquisitionConditions); } }
private void SetAchievements() { var acs = new AchievementsService(); AchievementsTotal = acs.GetTotal(); AchievementsComplete = acs.GetNumberOfComplete(); }
public void ByName_WithAchievement_ReturnsAchievement() { var options = new DbContextOptionsBuilder <GameInfoContext>() .UseInMemoryDatabase(databaseName: "Db_ForByName_WithAchievement") .Options; using (var context = new GameInfoContext(options)) { var service = new AchievementsService(context, null); var achievementName = "Redacted"; var achievement = new Achievement() { Name = achievementName, AcquisitionConditions = "Achievement" }; context.Achievements.Add(achievement); context.SaveChanges(); var achievementFromDb = service.ByName(achievementName); Assert.Equal(achievement.Name, achievementFromDb.Name); Assert.Equal(achievement.AcquisitionConditions, achievementFromDb.AcquisitionConditions); } }
public void ResetMaxComboStreak() { var achievements = AchievementsService.GetAchievements(); achievements.MaxComboStreak = 0; AchievementsService.SaveToStorage(achievements); }
public void SetUp() { var options = new DbContextOptionsBuilder <ApplicationDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; this.dbContext = new ApplicationDbContext(options); this.achievementsService = new AchievementsService(dbContext); User user = new User() { Id = "id", UserName = "******" }; Achievement achievement = new Achievement() { Id = 1, Name = "Participate in 1 Competition" }; this.dbContext.Achievements.Add(achievement); this.dbContext.Users.Add(user); this.dbContext.SaveChanges(); }
public AchievementsViewModel() { Title = "Achievements"; var acs = new AchievementsService(); Achievements = acs.GetAllAchievements(); }
private void CheckBox_CheckedChanged(object sender, CheckedChangedEventArgs e) { var abs = new AchievementsService(); var itemChecked = (CheckBox)sender; abs.UpdateAchievementCheck(itemChecked.IsChecked, Achievement); }
public void All_WithData_ReturnsSameData() { var options = new DbContextOptionsBuilder <GameInfoContext>() .UseInMemoryDatabase(databaseName: "Db_WithAchievements") .Options; using (var context = new GameInfoContext(options)) { var service = new AchievementsService(context, null); var achievements = new List <Achievement> { new Achievement() { Name = "1", AcquisitionConditions = "1" }, new Achievement() { Name = "2", AcquisitionConditions = "2" }, new Achievement() { Name = "3", AcquisitionConditions = "3" } }; context.Achievements.AddRange(achievements); context.SaveChanges(); Assert.Equal(3, service.All().Count); } }
private void CheckBox_CheckedChanged(object sender, CheckedChangedEventArgs e) { var acs = new AchievementsService(); var itemChecked = (CheckBox)sender; Achievement achievement = itemChecked.BindingContext as Achievement; acs.UpdateAchievementCheck(itemChecked.IsChecked, achievement); }
public void ById_WithNoAchievements_ReturnsNull() { var options = new DbContextOptionsBuilder <GameInfoContext>() .UseInMemoryDatabase(databaseName: "NoAchievements_Db_ForById") .Options; using (var context = new GameInfoContext(options)) { var service = new AchievementsService(context, null); Assert.Null(service.ById(1)); } }
public void Delete_NoData_ReturnsNull() { var options = new DbContextOptionsBuilder <GameInfoContext>() .UseInMemoryDatabase(databaseName: "NoAchievements_Db_ForDelete") .Options; using (var context = new GameInfoContext(options)) { var service = new AchievementsService(context, null); Assert.False(service.Delete(2)); } }
public void All_WithNoData_ReturnsNoData() { var options = new DbContextOptionsBuilder <GameInfoContext>() .UseInMemoryDatabase(databaseName: "NoAchievements_Db") .Options; using (var context = new GameInfoContext(options)) { var service = new AchievementsService(context, null); Assert.Equal(0, service.All().Count); } }
private async Task SendToGoogle(ImageFormat format) { using (var imageStream = new MemoryStream()) { ExportService.ExportWithoutSaving(Canvas, format, imageStream); string feedback = await GoogleAPI.SaveOnGoogleDrive(imageStream, ".png", AuthService.GoogleAccessToken); ToastsService.Pop("Google Drive Sharing", feedback, Constants.DriveIconUri); if (AuthService.IsLoggedIn) { await AchievementsService.Increment(AuthService.CurrentUser.Id, AchievementMetrics.SharesOnDrive); } } }
private void Awake() { _uiService = ServiceLocator.GetService <UIService>(); _playGamesService = ServiceLocator.GetService <PlayGamesService>(); _skinService = ServiceLocator.GetService <SkinService>(); _achievementsService = ServiceLocator.GetService <AchievementsService>(); _skinsList = new List <SkinButton>(); _getRandomSkin.onClick.AddListener(GetRandomSkin); _pages.ForEach(page => _skinsList.AddRange(page.GetComponentsInChildren <SkinButton>())); _skinService.UpdateSelectedTrainPreview += UpdateSelectedPreview; UpdateSkins(); _selectedTrainPreview.sprite = _skinService.GetCurrentSkin(); }
public void OnTextBufferChanged(IAdornmentLayer adornmentLayer, IWpfTextView view, int streakCount) { if (titleImage == null) { titleImage = new Image(); titleImage.UpdateSource(GetTitleImage(IsDarkMode(view.Background))); adornmentLayer.RefreshImage(titleImage, view.ViewportRight - RightMargin - ADORNMENT_WIDTH, view.ViewportTop + TopMargin); } var comboNumberImageTuple = GetStreakCounterImage(streakCount); if (streakCounterImage == null) { streakCounterImage = new Image(); } streakCounterImage.UpdateSource(comboNumberImageTuple.Item1); adornmentLayer.RefreshImage(streakCounterImage, view.ViewportRight - RightMargin - ADORNMENT_WIDTH, view.ViewportTop + TopMargin + ADORNMENT_TITLE_HEIGHT); ScaleTransform trans = new ScaleTransform(); streakCounterImage.RenderTransformOrigin = new Point((ADORNMENT_WIDTH - comboNumberImageTuple.Item2.Width / 2) / ADORNMENT_WIDTH, (comboNumberImageTuple.Item2.Height / 2) / comboNumberImageTuple.Item2.Height); streakCounterImage.RenderTransform = trans; trans.BeginAnimation(ScaleTransform.ScaleXProperty, GetStreakCounterImageSizeAnimation(streakCount)); trans.BeginAnimation(ScaleTransform.ScaleYProperty, GetStreakCounterImageSizeAnimation(streakCount)); if (ComboService.ShowExclamation(streakCount)) { ShowExclamation(adornmentLayer, view, GetExclamationImage(streakCount), comboNumberImageTuple.Item2.Height); } var achievevments = AchievementsService.GetAchievements(); if (streakCount > 0 && achievevments.MaxComboStreak < streakCount && !newMaxComboStreakReached) { ShowExclamation(adornmentLayer, view, GetNewMaxExclamationImage(streakCount), comboNumberImageTuple.Item2.Height); newMaxComboStreakReached = true; } if (streakCount == 0 && newMaxComboStreak > 0) { achievevments.MaxComboStreak = newMaxComboStreak; AchievementsService.SaveToStorage(achievevments); newMaxComboStreakReached = false; } newMaxComboStreak = streakCount; }
// Start is called before the first frame update void Awake() { _adsService = ServiceLocator.GetService <AdsService>(); _uiService = ServiceLocator.GetService <UIService>(); _achievementsService = ServiceLocator.GetService <AchievementsService>(); _uiService.OpenReviveMenu += Open; _reviveButton.onClick.AddListener(_adsService.ShowReviveVideoAdvertisement); _timerButton.TimerEnded += ShowEndGameMenu; _noThanksButton.onClick.AddListener(ShowEndGameMenu); _adsService.ReviveAdvertisementUpdate += delegate(bool isReady) { _reviveButton.interactable = isReady; }; _adsService.TrainRevive += ShowPauseMenu; _uiService.OpenEndGameMenu += delegate { SetActivePanel(false); }; }
private void CalculateAchievements(List <Player> playersInThisGame) { List <AchievementTextWithIds> achievementsData = new AchievementsService(playersInThisGame).RecalculateAchievements(false); if (achievementsData.Count > 0) { Cache.Remove(DataAccess.PlayersAchievementsCacheName); Cache.Remove(DataAccess.AllAchievementsCacheName); StringBuilder sb = new StringBuilder("<br/><br/><b>Zdobyte osiągnięcia:</b><br/><ul class=\"grantedAchievements\">"); achievementsData.ForEach(w => sb.Append("<li>" + w.Text + "</li>")); sb.Append("</ul>"); litAchievements.Text = sb.ToString(); } }
protected void Page_Load(object sender, EventArgs e) { try { bool achievementsExists = true; using (TrambambuleDBContextDataContext context = new TrambambuleDBContextDataContext()) { achievementsExists = context.AchievementPlayer.Any(); } if (!achievementsExists) { List <AchievementTextWithIds> achievementsData = new AchievementsService(DataAccess.GetPlayers().ToList()).RecalculateAchievements(true); litStatus.Text = "Osiągnięcia zostały przyznane"; //List<AchievementsWithPlayers> awpList = new List<AchievementsWithPlayers>(); //using (TrambambuleDBContextDataContext context = new TrambambuleDBContextDataContext()) //{ // var achievements = context.Achievements.ToList(); // foreach (Achievement achievement in achievements) // { // var players = (from ap in context.AchievementPlayer // join p in context.Players // on ap.PlayerId equals p.Id // where ap.AchievementId == achievement.Id // select new PlayerWithLevelOfAchievement(p, ap.LevelOfAchievement, ap.ToNextLevelLabel)).ToList(); // AchievementsWithPlayers awp = new AchievementsWithPlayers(achievement, players); // awpList.Add(awp); // } //} Cache.Remove(DataAccess.PlayersListCacheName); Cache.Remove(DataAccess.PlayersNamesAndSurnamesWithoutPolishCharsCacheName); Cache.Remove(DataAccess.PlayersAchievementsCacheName); Cache.Remove(DataAccess.AllAchievementsCacheName); Cache.Remove(DataAccess.OverallStatsCacheName); } } catch (Exception ex) { litStatus.Text = ex.Message + " " + ex.StackTrace; } }
public AchievementsServiceTests() { var options = new DbContextOptionsBuilder <TrainConnectedDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; var dbContext = new TrainConnectedDbContext(options); AutoMapperConfig.RegisterMappings(new[] { typeof(ErrorViewModel).GetTypeInfo().Assembly, typeof(WorkoutActivityEditInputModel).GetTypeInfo().Assembly, }); this.achievementsRepository = new EfRepository <Achievement>(dbContext); this.workoutsRepository = new EfRepository <Workout>(dbContext); this.bookingsRepository = new EfRepository <Booking>(dbContext); this.workoutActivitiesRepository = new EfRepository <WorkoutActivity>(dbContext); this.achievementsService = new AchievementsService(this.achievementsRepository, this.workoutsRepository, this.bookingsRepository, this.workoutActivitiesRepository); }
private void GetFacebookCaption(MemoryStream image) { if (CaptionWindow?.IsVisible ?? false) { return; } CaptionWindow = new FacebookCaptionView(); CaptionWindow.CaptionWritten += async(caption) => { string feedback = await FacebookAPI.ShareImage(image, AuthService.FacebookAccessToken, caption); ToastsService.Pop("Facebook sharing", feedback, Constants.FacebookIconUri); if (AuthService.IsLoggedIn) { await AchievementsService.Increment(AuthService.CurrentUser.Id, AchievementMetrics.SharesOnFacebook); } }; CaptionWindow.Show(); }
private void Awake() { _levelService = ServiceLocator.GetService <LevelService>(); _adsService = ServiceLocator.GetService <AdsService>(); _gameDataService = ServiceLocator.GetService <GameDataService>(); _uiService = ServiceLocator.GetService <UIService>(); _playGamesService = ServiceLocator.GetService <PlayGamesService>(); _achievementsService = ServiceLocator.GetService <AchievementsService>(); _bonusButton.onClick.AddListener(_adsService.ShowBonusVideoAdvertisement); _timerButton.TimerEnded += delegate { _bonusButton.gameObject.SetActive(false); }; _adsService.BonusAdvertisementUpdate += delegate(bool isReady) { _bonusButton.interactable = isReady; }; _adsService.BonusCoins += GetBonus; _uiService.OpenEndGameMenu += Open; _uiService.OpenPauseMenu += () => SetActivePanel(false); _exitToMenu.onClick.AddListener(ExitToMainMenu); _uiService.EndGameBackButton += ExitToMainMenu; }
private void Awake() { _achievementsService = ServiceLocator.GetService <AchievementsService>(); _leaderBoardsService = ServiceLocator.GetService <LeaderBoardsService>(); _uiService = ServiceLocator.GetService <UIService>(); _uiService.CurrentPanel = this; _achievementsButton.onClick.AddListener(_achievementsService.ShowAchievementsUI); _leaderboardButton.onClick.AddListener(_leaderBoardsService.ShowLeaderBoardUI); _startButton.onClick.AddListener(StartGame); _rateButton.onClick.AddListener(RateApp); _storeButton.onClick.AddListener(OpenShop); _uiService.OpenMainMenu += Open; _uiService.UpdateMainMenuData += UpdateData; LastScore.text = CloudVariables.ImportantValues[4].ToString(); BestScore.text = CloudVariables.ImportantValues[0].ToString(); Coins.text = CloudVariables.GetCoins().ToString(); }
public void Delete_WithData_DeletesAchievement() { var options = new DbContextOptionsBuilder <GameInfoContext>() .UseInMemoryDatabase(databaseName: "Db_WithAchievements_ForDelete") .Options; using (var context = new GameInfoContext(options)) { context.Achievements.Add(new Achievement() { Name = "ToDelete", AcquisitionConditions = "None" }); context.SaveChanges(); } using (var context = new GameInfoContext(options)) { var service = new AchievementsService(context, null); var result = service.Delete(1); Assert.True(result); Assert.Equal(0, context.Achievements.Count()); } }