//Gets a the player's locally stored rank for a map public RankModel.Rank GetLocalRank(IDifficultyBeatmap map, PlayerDataModel dataModel = null) { dataModel = dataModel ?? Resources.FindObjectsOfTypeAll <PlayerDataModel>().First(); var playerLevelStatsData = dataModel.playerData.GetPlayerLevelStatsData(map.level.levelID, map.difficulty, map.parentDifficultyBeatmapSet.beatmapCharacteristic); return(playerLevelStatsData.validScore ? playerLevelStatsData.maxRank : RankModel.Rank.E); }
public async Task <IActionResult> PutPlayer([FromRoute] Guid id, [FromBody] UpdatePlayerRequest request) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } // Find our player. PlayerDataModel player = await _context.Players.FindAsync(id); if (player == null) { return(NotFound()); } // Update properties. player.Name = request.Name; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { // If we hit a concurrency exception and the player no longer exists, // It must have been deleted while we were working. if (!_context.Players.Any(e => e.Id == id)) { return(NotFound()); } throw; } return(NoContent()); }
internal BeatSaberUtilities(MainSettingsModelSO mainSettingsModel, PlayerDataModel playerDataModel, Settings settings, IVRPlatformHelper vrPlatformHelper) { _mainSettingsModel = mainSettingsModel; _playerDataModel = playerDataModel; _settings = settings; _vrPlatformHelper = vrPlatformHelper; }
protected override void DidActivate(bool firstActivation, bool addedToHierarchy, bool screenSystemEnabling) { if (firstActivation) { SetTitle("Qualifier Room", ViewController.AnimationType.None); showBackButton = true; _playerDataModel = Resources.FindObjectsOfTypeAll <PlayerDataModel>().First(); _menuLightsManager = Resources.FindObjectsOfTypeAll <MenuLightsManager>().First(); _soloFreePlayFlowCoordinator = Resources.FindObjectsOfTypeAll <SoloFreePlayFlowCoordinator>().First(); _campaignFlowCoordinator = Resources.FindObjectsOfTypeAll <CampaignFlowCoordinator>().First(); _resultsViewController = Resources.FindObjectsOfTypeAll <ResultsViewController>().First(); _scoreLights = _soloFreePlayFlowCoordinator.GetField <MenuLightsPresetSO>("_resultsClearedLightsPreset"); _redLights = _soloFreePlayFlowCoordinator.GetField <MenuLightsPresetSO>("_resultsFailedLightsPreset"); _defaultLights = _soloFreePlayFlowCoordinator.GetField <MenuLightsPresetSO>("_defaultLightsPreset"); _songSelection = BeatSaberUI.CreateViewController <SongSelection>(); _songSelection.SongSelected += songSelection_SongSelected; _songDetail = BeatSaberUI.CreateViewController <SongDetail>(); _songDetail.PlayPressed += songDetail_didPressPlayButtonEvent; _songDetail.DisableCharacteristicControl = true; _songDetail.DisableDifficultyControl = true; _songDetail.DisablePlayButton = false; } if (addedToHierarchy) { _songSelection.SetSongs(Event.QualifierMaps.ToList()); ProvideInitialViewControllers(_songSelection); } }
public static PlayerDataModel LoadPlayerData(string path) { PlayerDataModel dataToReturn = null; var file = new File(); var err = file.Open(path, File.ModeFlags.Read); GD.Print(err); if (err != Error.Ok) { GD.PrintErr($"Unable to open file at path: {path}. {err}"); return(null); } var jsonString = file.GetLine(); dataToReturn = JsonConvert.DeserializeObject <PlayerDataModel>(jsonString); GD.Print(dataToReturn); file.Close(); return(dataToReturn); }
internal GeneralSettingsHost(VRPlayerInputInternal playerInput, Settings settings, PlayerDataModel playerDataModel, ArmSpanMeasurer armSpanMeasurer) { _playerInput = playerInput; _settings = settings; _playerDataModel = playerDataModel; _armSpanMeasurer = armSpanMeasurer; }
public PlayerBehaviour(Transform player, PlayerDataModel model) { _playerTrans = player; _model = model; IsAttack = false; _faceDirection = Vector3.zero; }
public void OpenSongsList(string songToSelectWhenLoaded = null) { if (songListViewController == null) { songListViewController = BeatSaberUI.CreateViewController <SongListViewController>(); } if (_bottomViewController == null) { _bottomViewController = BeatSaberUI.CreateViewController <BottomViewController>(); } if (_resultsViewController == null) { _resultsViewController = Resources.FindObjectsOfTypeAll <ResultsViewController>().First(); } if (_playerDataModel == null) { _playerDataModel = Resources.FindObjectsOfTypeAll <PlayerDataModel>().First(); } if (_menuLightsManager == null) { _menuLightsManager = Resources.FindObjectsOfTypeAll <MenuLightsManager>().First(); } if (_soloFreePlayFlowCoordinator == null) { _soloFreePlayFlowCoordinator = Resources.FindObjectsOfTypeAll <SoloFreePlayFlowCoordinator>().First(); } if (_campaignFlowCoordinator == null) { _campaignFlowCoordinator = Resources.FindObjectsOfTypeAll <CampaignFlowCoordinator>().First(); } if (_alwaysOwnedContent == null) { _alwaysOwnedContent = Resources.FindObjectsOfTypeAll <AlwaysOwnedContentSO>().First(); } if (_primaryLevelCollection == null) { _primaryLevelCollection = _alwaysOwnedContent.alwaysOwnedPacks.First(x => x.packID == OstHelper.packs[0].PackID).beatmapLevelCollection as BeatmapLevelCollectionSO; } if (_secondaryLevelCollection == null) { _secondaryLevelCollection = _alwaysOwnedContent.alwaysOwnedPacks.First(x => x.packID == OstHelper.packs[1].PackID).beatmapLevelCollection as BeatmapLevelCollectionSO; } if (_tertiaryLevelCollection == null) { _tertiaryLevelCollection = _alwaysOwnedContent.alwaysOwnedPacks.First(x => x.packID == OstHelper.packs[2].PackID).beatmapLevelCollection as BeatmapLevelCollectionSO; } if (_extrasLevelCollection == null) { _extrasLevelCollection = _alwaysOwnedContent.alwaysOwnedPacks.First(x => x.packID == OstHelper.packs[3].PackID).beatmapLevelCollection as BeatmapLevelCollectionSO; } if (!songListViewController.isInViewControllerHierarchy || !songListViewController.isActiveAndEnabled) { SetViewControllersToNavigationController(_mainModNavigationController, new ViewController[] { songListViewController }); songListViewController.SelectWhenLoaded(songToSelectWhenLoaded); songListViewController.SongListRowSelected += SongListRowSelected; songListViewController.ReloadPressed += () => ReloadServerData(); ReloadServerData(); } }
protected override void DidActivate(bool firstActivation, ActivationType type) { base.DidActivate(firstActivation, type); if (firstActivation) { if (Plugin.DownloaderExists) { downloader = new BeatSaverDownloaderInterop(); if (downloader == null) { Plugin.log.Warn($"{nameof(BeatSaverDownloaderInterop)} could not be created."); } else { MoreSongsAvailable = downloader.CanCreate; Plugin.log.Debug($"{nameof(MoreSongsAvailable)} is {MoreSongsAvailable}"); } } else { Plugin.log.Warn($"BeatSaverDownloader not found, More Songs button won't be created."); MoreSongsAvailable = false; } _songsTableView.tableView.didSelectCellWithIdxEvent += SongsTableView_DidSelectRow; _songsTableView.tableView.dataSource = this; _playerDataModel = Resources.FindObjectsOfTypeAll <PlayerDataModel>().First(); _additionalContentModel = Resources.FindObjectsOfTypeAll <AdditionalContentModel>().First(); } SelectTopButtons(TopButtonsState.Select); requestMode = false; }
/// <summary> /// Migrate old favorites into new system. /// </summary> public static void MigrateFavorites() { String migratedPlaylistPath = Path.Combine(Environment.CurrentDirectory, "Playlists", MigratedFavoritesPlaylistName); String oldFavoritesPath = Path.Combine(Environment.CurrentDirectory, "Playlists", DefaultConvertedFavoritesPlaylistName); // Skip if already migrated or if the song browser favorites do not exist if (!File.Exists(oldFavoritesPath) || File.Exists(migratedPlaylistPath)) { return; } Logger.Info("Migrating [{0}] into the In-Game favorites.", oldFavoritesPath); Playlist oldFavorites = Playlist.LoadPlaylist(oldFavoritesPath); PlayerDataModel playerData = Resources.FindObjectsOfTypeAll <PlayerDataModel>().FirstOrDefault(); foreach (PlaylistSong song in oldFavorites.songs) { string levelID = CustomLevelLoader.kCustomLevelPrefixId + song.hash; Logger.Info("Migrating song into ingame favorites: {0}", levelID); playerData.playerData.favoritesLevelIds.Add(levelID); } Logger.Info("Moving [{0}->{1}] into the In-Game favorites.", oldFavoritesPath, migratedPlaylistPath); File.Move(oldFavoritesPath, migratedPlaylistPath); playerData.Save(); }
internal override void Init(CountersData data, Vector3 position) { _scoreController = data.ScoreController; PlayerDataModel player = data.PlayerData; gameplayModsModel = data.ModifiersData; gameplayMods = data.PlayerData.playerData.gameplayModifiers; IDifficultyBeatmap beatmap = data.GCSSD.difficultyBeatmap; stats = player.playerData.GetPlayerLevelStatsData( beatmap.level.levelID, beatmap.difficulty, beatmap.parentDifficultyBeatmapSet.beatmapCharacteristic); int maxRawScore = ScoreModel.MaxRawScoreForNumberOfNotes(beatmap.beatmapData.notesCount); _maxPossibleScore = Mathf.RoundToInt(maxRawScore * gameplayModsModel.GetTotalMultiplier(gameplayMods)); beginningPB = stats.highScore / (float)_maxPossibleScore; highScore = stats.highScore; TextHelper.CreateText(out _PbTrackerText, position); _PbTrackerText.fontSize = settings.TextSize; _PbTrackerText.color = Color.white; _PbTrackerText.alignment = TextAlignmentOptions.Center; _scoreController.scoreDidChangeEvent += UpdateScore; SetPersonalBest(beginningPB); if (settings.UnderScore) { StartCoroutine(WaitForScoreCounter()); } }
public void SetupViewController() { playButtonGlow = playButton.GetComponent <Glowable>(); levelDetailsRect.gameObject.AddComponent <Mask>(); Image maskImage = levelDetailsRect.gameObject.AddComponent <Image>(); maskImage.material = Sprites.NoGlowMat; maskImage.sprite = Resources.FindObjectsOfTypeAll <Sprite>().First(x => x.name == "RoundRectPanel"); maskImage.type = Image.Type.Sliced; maskImage.color = new Color(0f, 0f, 0f, 0.25f); levelCoverImage.color = new Color(0.5f, 0.5f, 0.5f, 0.5f); progressBarBG.color = new Color(1f, 1f, 1f, 0.2f); progressBarTop.color = new Color(1f, 1f, 1f, 1f); charactertisticControlBlocker.color = new Color(1f, 1f, 1f, 0f); difficultyControlBlocker.color = new Color(1f, 1f, 1f, 0f); cancellationToken = new CancellationTokenSource(); _defaultArtworkTexture = Resources.FindObjectsOfTypeAll <Texture2D>().First(x => x.name == "DefaultSongArtwork"); _playerDataModel = Resources.FindObjectsOfTypeAll <PlayerDataModel>().First(); }
public void SetupViewController() { playNowButtonGlow = playNowButton.GetComponent <Glowable>(); levelDetailsRect.gameObject.AddComponent <Mask>(); Image maskImage = levelDetailsRect.gameObject.AddComponent <Image>(); maskImage.material = Sprites.NoGlowMat; maskImage.sprite = Resources.FindObjectsOfTypeAll <Sprite>().First(x => x.name == "RoundRectPanel"); maskImage.type = Image.Type.Sliced; maskImage.color = new Color(0f, 0f, 0f, 0.25f); levelCoverImage.color = new Color(0.5f, 0.5f, 0.5f, 0.5f); progressBarBG.color = new Color(1f, 1f, 1f, 0.2f); progressBarTop.color = new Color(1f, 1f, 1f, 1f); //_beatmapLevelsModel = Resources.FindObjectsOfTypeAll<BeatmapLevelsModel>().First(); _defaultArtworkTexture = Resources.FindObjectsOfTypeAll <Texture2D>().First(x => x.name == "DefaultSongArtwork"); _playerDataModel = Resources.FindObjectsOfTypeAll <PlayerDataModel>().First(); leaderboardTableView.GetComponent <TableView>().RemoveReusableCells("Cell"); if (selectedLevel != null) { SetSong(selectedLevel, selectedBeatmapCharacteristic, selectedDifficulty); } }
/// <summary> /// Pushes a message to the producer queue /// </summary> /// <param name="_user"></param> public void EnqueueProducerQueue(PlayerDataModel data) { Message msg = new Message(Newtonsoft.Json.JsonConvert.SerializeObject(data)); msg.Label = data.UserID; msg.Formatter = new JsonMessageFormatter(); MSMQHelper.SendMessage(producerQueue, msg); }
public XGameInstaller(MiscSettings miscSettings, ClockSettings clockSettings, TimerSettings timerSettings, PlayerDataModel playerDataModel, BreaktimeSettings breaktimeSettings) { _miscSettings = miscSettings; _clockSettings = clockSettings; _timerSettings = timerSettings; _playerDataModel = playerDataModel; _breaktimeSettings = breaktimeSettings; }
/// <summary> /// Creates a new PlayerViewModel using the PlayerDataModel. /// </summary> /// <param name="playerData">The player data to construct a view model from.</param> /// <returns>Fully constructed player view model.</returns> public static PlayerViewModel CreatePlayerViewModel(PlayerDataModel playerData) { return(new PlayerViewModel { Id = playerData.Id, Name = playerData.Name }); }
/// <summary> /// Filter songs based on playerdata favorites. /// </summary> private List <IPreviewBeatmapLevel> FilterFavorites(List <IPreviewBeatmapLevel> levels) { Logger.Info("Filtering song list as favorites playlist..."); PlayerDataModel playerData = Resources.FindObjectsOfTypeAll <PlayerDataModel>().FirstOrDefault(); return(levels.Where(x => playerData.playerData.favoritesLevelIds.Contains(x.levelID)).ToList()); }
private void UpdateView() { TitlePanelPresenter.SetCoinsValue(PlayerDataModel.GetCoins()); TitlePanelPresenter.SetGemsValue(PlayerDataModel.GetGems()); TitlePanelPresenter.SetTicketsValue(PlayerDataModel.GetTickets()); TitlePanelPresenter.SetXpValue(PlayerDataModel.GetXp()); TitlePanelPresenter.SetLevelValue(PlayerDataModel.GetLevel()); }
public async Task <string> GetCharacters(string id) { FilterDefinition <BsonDocument> filter = Builders <BsonDocument> .Filter.Eq("userId", id); PlayerDataModel pd = new PlayerDataModel(await _collection.Find(filter).FirstAsync()); return(pd.Characters.ToJson()); }
public async Task <IActionResult> Update(PlayerDataModel model) { var travianUser = await _travianUserRepository.GetUserByName(model.UserName, User.Identity.Name); travianUser.PlayerData = model; await _travianUserRepository.ReplacePlayerData(travianUser); return(RedirectToAction("Index", new { userName = travianUser.UserName })); }
private AvatarTailor(ILoggerProvider loggerProvider, MainSettingsModelSO mainSettingsModel, PlayerDataModel playerDataModel, Settings settings, CalibrationData calibrationData, TrackedDeviceManager trackedDeviceManager) { _logger = loggerProvider.CreateLogger <AvatarTailor>(); _mainSettingsModel = mainSettingsModel; _playerDataModel = playerDataModel; _settings = settings; _calibrationData = calibrationData; _trackedDeviceManager = trackedDeviceManager; }
public override void InstallBindings() { MainConfigModel mainConfig = Plugin.MainConfig; hudConfig = Container.Resolve <HUDConfigModel>(); dataModel = Container.Resolve <PlayerDataModel>(); if (!mainConfig.Enabled) { return; } /// LOADING IMPORTANT SHIT LIKE CANVASES AND STUFF /// Container.Bind <CanvasUtility>().AsSingle(); Container.Bind <NoteCountProcessor>().To <GenericNoteCountProcessor>().AsSingle(); /// LOADING COUNTERS /// Plugin.Logger.Notice("Loading counters..."); AddCounter <MissedConfigModel, MissedCounter>(); AddCounter <NoteConfigModel, NotesCounter>(); if (mainConfig.ProgressConfig.Mode != ProgressMode.BaseGame) { AddCounter <ProgressConfigModel, ProgressCounter>(); } else { AddCounter <ProgressConfigModel, ProgressBaseGameCounter>(); } AddCounter <ScoreConfigModel, ScoreCounter>(); AddCounter <CutConfigModel, CutCounter>(); AddCounter <FailConfigModel, FailCounter>(); AddCounter <NotesLeftConfigModel, NotesLeftCounter>(); AddCounter <SpeedConfigModel, SpeedCounter>(); AddCounter <SpinometerConfigModel, Spinometer>(); AddCounter <PBConfigModel, PBCounter>((settings) => { ScoreConfigModel scoreConfig = Container.Resolve <ScoreConfigModel>(); HUDCanvas canvasSettings = scoreConfig.CanvasID == -1 ? hudConfig.MainCanvasSettings : hudConfig.OtherCanvasSettings[scoreConfig.CanvasID]; return(scoreConfig.Enabled && settings.UnderScore && (dataModel.playerData.playerSpecificSettings.noTextsAndHuds ? canvasSettings.IgnoreNoTextAndHUDOption : true)); }); foreach (Custom.CustomCounter customCounter in Plugin.LoadedCustomCounters.Values) { AddCustomCounter(customCounter, customCounter.CounterType); } /// LOADING BROADCASTERS WITH BROADCAST IN-GAME EVENTS TO COUNTERS AND STUFF /// Container.BindInterfacesAndSelfTo <CounterEventBroadcaster>().AsSingle().NonLazy(); Container.BindInterfacesAndSelfTo <NoteEventBroadcaster>().AsSingle().NonLazy(); Container.BindInterfacesAndSelfTo <ScoreEventBroadcaster>().AsSingle().NonLazy(); Plugin.Logger.Notice("Counters loaded!"); }
private void GameCoreLoaded() { PlayerDataModel dataModel = UnityEngine.Resources.FindObjectsOfTypeAll <PlayerDataModel>().FirstOrDefault(); if (CountersController.settings.Enabled && !(dataModel?.playerData.playerSpecificSettings.noTextsAndHuds ?? false)) { CountersController.LoadCounters(); } }
private void AssertPlayerDataViewIsCorrect(IPlayer player, PlayerDataModel playerDataView) { playerDataView.Id.ShouldBe(player.Id); playerDataView.Name.ShouldBe(player.Name); playerDataView.PlayedDevelopmentCards.ShouldBeNull(); playerDataView.HiddenDevelopmentCards.ShouldBe(0); playerDataView.ResourceCards.ShouldBe(player.Resources.Count); playerDataView.IsComputer.ShouldBe(player.IsComputer); }
void SendRequest(PlayerDataModel model) { Message m = new Message() { Formatter = new JsonMessageFormatter(), Body = JsonConvert.SerializeObject(model) }; MSMQHelper.SendMessage(databaseConsumerQueue, m); }
public CountersData() { BOM = Resources.FindObjectsOfTypeAll <BeatmapObjectManager>().First(); ScoreController = Resources.FindObjectsOfTypeAll <ScoreController>().First(); PlayerController = Resources.FindObjectsOfTypeAll <PlayerController>().First(); AudioTimeSyncController = Resources.FindObjectsOfTypeAll <AudioTimeSyncController>().First(); PlayerData = Resources.FindObjectsOfTypeAll <PlayerDataModel>().First(); ModifiersData = Resources.FindObjectsOfTypeAll <GameplayModifiersModelSO>().First(); GCSSD = BS_Utils.Plugin.LevelData.GameplayCoreSceneSetupData; //By the time all of these load, so should GCSSD. Is360Or90Level = Resources.FindObjectsOfTypeAll <FlyingGameHUDRotation>().Any(x => x.isActiveAndEnabled); }
private void Inject(ILoggerProvider loggerProvider, PlayerAvatarManager avatarManager, Settings settings, CalibrationData calibrationData, ShaderLoader shaderLoader, VRPlayerInput playerInput, PlayerDataModel playerDataModel, GameplaySetupViewController gameplaySetupViewController) { _logger = loggerProvider.CreateLogger <SettingsViewController>(); _avatarManager = avatarManager; _settings = settings; _calibrationData = calibrationData; _shaderLoader = shaderLoader; _playerInput = playerInput; _playerDataModel = playerDataModel; _gameplaySetupViewController = gameplaySetupViewController; }
public static void TakeGems(int Value) { if (TryTakeCoins(Value)) { PlayerDataModel.TakeGems(Value); } else { Debug.LogWarning("Не хватает гемов"); } }
public static void TakeTickets(int Value) { if (TryTakeTickets(Value)) { PlayerDataModel.TakeTickets(Value); } else { Debug.LogWarning("Не хватает билетов"); } }
private MainModel() { CameraModel = new CameraModel(); PlayerDataModel = new PlayerDataModel(); AvailablePlayers = new List<PlayerModel>(); ScreenState = ScreenState.PlayerSelection; ChoicesModel = new ChoicesModel(); SubjectModel = new SubjectModel(); ActiveLevelProgress = 0; }
public void Save(PropertyInfo propertyInfo, PlayerDataModel playerDataModel) { if (IsSavingBlocked) { return; } Debug.Log($"Saving of key({propertyInfo.Name}) with value({propertyInfo.GetValue(playerDataModel)}) started"); PropertyInfoExtensions.SaveToPlayerPrefs(propertyInfo, playerDataModel); Debug.Log($"Saving of key({propertyInfo.Name}) with value({propertyInfo.GetValue(playerDataModel)}) finished"); }