public SceneData GetDefaultSceneData() { SongEditorSceneData defaultSceneData = new SongEditorSceneData(); defaultSceneData.PositionInSongInMillis = 0; defaultSceneData.SelectedSongMeta = GetDefaultSongMeta(); // Set up PreviousSceneData to directly start the SingScene. defaultSceneData.PreviousScene = EScene.SingScene; SingSceneData singSceneData = new SingSceneData(); singSceneData.SelectedSongMeta = defaultSceneData.SelectedSongMeta; PlayerProfile playerProfile = SettingsManager.Instance.Settings.PlayerProfiles[0]; List <PlayerProfile> playerProfiles = new List <PlayerProfile>(); playerProfiles.Add(playerProfile); singSceneData.SelectedPlayerProfiles = playerProfiles; defaultSceneData.PlayerProfileToMicProfileMap = singSceneData.PlayerProfileToMicProfileMap; defaultSceneData.SelectedPlayerProfiles = singSceneData.SelectedPlayerProfiles; defaultSceneData.PreviousSceneData = singSceneData; return(defaultSceneData); }
private void StartSingScene(SongMeta songMeta) { SingSceneData singSceneData = CreateSingSceneData(songMeta); if (singSceneData != null) { SceneNavigator.Instance.LoadScene(EScene.SingScene, singSceneData); } }
private void ContinueToSingScene() { if (sceneData.PreviousSceneData is SingSceneData) { SingSceneData singSceneData = sceneData.PreviousSceneData as SingSceneData; singSceneData.PositionInSongInMillis = songAudioPlayer.PositionInSongInMillis; } SceneNavigator.Instance.LoadScene(sceneData.PreviousScene, sceneData.PreviousSceneData); }
public SceneData GetDefaultSceneData() { SingSceneData defaultSceneData = new SingSceneData(); defaultSceneData.SelectedSongMeta = GetDefaultSongMeta(); PlayerProfile playerProfile = GetDefaultPlayerProfile(); defaultSceneData.SelectedPlayerProfiles.Add(playerProfile); defaultSceneData.PlayerProfileToMicProfileMap[playerProfile] = GetDefaultMicProfile(); return(defaultSceneData); }
private void StartSingScene(SongMeta songMeta) { SingSceneData singSceneData = new SingSceneData(); singSceneData.SelectedSongMeta = songMeta; List <PlayerProfile> allPlayerProfiles = PlayerProfileManager.Instance.PlayerProfiles; PlayerProfile defaultPlayerProfile = allPlayerProfiles[0]; PlayerProfile playerProfile = selectedPlayerProfile.OrIfNull(defaultPlayerProfile); singSceneData.AddPlayerProfile(playerProfile); SceneNavigator.Instance.LoadScene(EScene.SingScene, singSceneData); }
void Awake() { // Load scene data from static reference, if any sceneData = SceneNavigator.Instance.GetSceneData(sceneData); // Fill scene data with default values if (sceneData.SelectedSongMeta == null) { sceneData.SelectedSongMeta = GetDefaultSongMeta(); } if (sceneData.SelectedPlayerProfiles == null || sceneData.SelectedPlayerProfiles.Count == 0) { sceneData.AddPlayerProfile(GetDefaultPlayerProfile()); } }
private void StartSongEditorScene(SongMeta songMeta) { SongEditorSceneData editorSceneData = new SongEditorSceneData(); editorSceneData.SelectedSongMeta = songMeta; SingSceneData singSceneData = CreateSingSceneData(songMeta); if (singSceneData != null) { editorSceneData.PlayerProfileToMicProfileMap = singSceneData.PlayerProfileToMicProfileMap; editorSceneData.SelectedPlayerProfiles = singSceneData.SelectedPlayerProfiles; } editorSceneData.PreviousSceneData = sceneData; editorSceneData.PreviousScene = EScene.SongSelectScene; SceneNavigator.Instance.LoadScene(EScene.SongEditorScene, editorSceneData); }
public void ContinueToSingScene() { SingSceneData singSceneData; if (sceneData.PreviousSceneData is SingSceneData) { singSceneData = sceneData.PreviousSceneData as SingSceneData; } else { singSceneData = new SingSceneData(); singSceneData.SelectedSongMeta = sceneData.SelectedSongMeta; singSceneData.SelectedPlayerProfiles = sceneData.SelectedPlayerProfiles; singSceneData.PlayerProfileToMicProfileMap = sceneData.PlayerProfileToMicProfileMap; } singSceneData.PositionInSongInMillis = songAudioPlayer.PositionInSongInMillis; SceneNavigator.Instance.LoadScene(EScene.SingScene, sceneData.PreviousSceneData); }
private SingSceneData CreateSingSceneData(SongMeta songMeta) { SingSceneData singSceneData = new SingSceneData(); singSceneData.SelectedSongMeta = songMeta; List <PlayerProfile> selectedPlayerProfiles = playerProfileListController.GetSelectedPlayerProfiles(); if (selectedPlayerProfiles.IsNullOrEmpty()) { UiManager.Instance.CreateWarningDialog("No player selected", "Select a player profile for singing.\n New player profiles can be create in the settings."); return(null); } singSceneData.SelectedPlayerProfiles = selectedPlayerProfiles; PlayerProfileToMicProfileMap playerProfileToMicProfileMap = playerProfileListController.GetSelectedPlayerProfileToMicProfileMap(); singSceneData.PlayerProfileToMicProfileMap = playerProfileToMicProfileMap; return(singSceneData); }
private void StartSongEditorScene(SongMeta songMeta) { SongEditorSceneData editorSceneData = new SongEditorSceneData(); editorSceneData.SelectedSongMeta = songMeta; SingSceneData singSceneData = CreateSingSceneData(songMeta); if (singSceneData != null) { editorSceneData.PreviousSceneData = singSceneData; editorSceneData.PreviousScene = EScene.SingScene; } else { editorSceneData.PreviousSceneData = sceneData; editorSceneData.PreviousScene = EScene.SongSelectScene; } SceneNavigator.Instance.LoadScene(EScene.SongEditorScene, editorSceneData); }
private SingSceneData CreateSingSceneData(SongMeta songMeta) { SingSceneData singSceneData = new SingSceneData(); singSceneData.SelectedSongMeta = songMeta; List <PlayerProfile> selectedPlayerProfiles = playerProfileListController.GetSelectedPlayerProfiles(); if (selectedPlayerProfiles.IsNullOrEmpty()) { UiManager.Instance.CreateWarningDialog( I18NManager.GetTranslation(R.String.songSelectScene_noPlayerSelected_title), I18NManager.GetTranslation(R.String.songSelectScene_noPlayerSelected_message)); return(null); } singSceneData.SelectedPlayerProfiles = selectedPlayerProfiles; PlayerProfileToMicProfileMap playerProfileToMicProfileMap = playerProfileListController.GetSelectedPlayerProfileToMicProfileMap(); singSceneData.PlayerProfileToMicProfileMap = playerProfileToMicProfileMap; return(singSceneData); }
private void LoadSceneData() { // Load scene data from static reference, if any sceneData = SceneNavigator.Instance.GetSceneData(sceneData); // Fill scene data with default values if (sceneData.SelectedSongMeta == null) { sceneData.SelectedSongMeta = GetDefaultSongMeta(); } if (sceneData.SelectedPlayerProfiles.IsNullOrEmpty()) { PlayerProfile playerProfile = GetDefaultPlayerProfile(); sceneData.SelectedPlayerProfiles.Add(playerProfile); sceneData.PlayerProfileToMicProfileMap[playerProfile] = GetDefaultMicProfile(); } string playerProfilesCsv = string.Join(",", sceneData.SelectedPlayerProfiles.Select(it => it.Name)); Debug.Log($"[{playerProfilesCsv}] start (or continue) singing of {SongMeta.Title} at {sceneData.PositionInSongInMillis} ms."); }
private SongEditorSceneData CreateDefaultSceneData() { SongEditorSceneData defaultSceneData = new SongEditorSceneData(); defaultSceneData.PositionInSongInMillis = 0; defaultSceneData.SelectedSongMeta = SongMetaManager.Instance.FindSongMeta(defaultSongName); // Set up PreviousSceneData to directly start the SingScene. defaultSceneData.PreviousScene = EScene.SingScene; SingSceneData singSceneData = new SingSceneData(); PlayerProfile playerProfile = SettingsManager.Instance.Settings.PlayerProfiles[0]; List <PlayerProfile> playerProfiles = new List <PlayerProfile>(); playerProfiles.Add(playerProfile); singSceneData.SelectedPlayerProfiles = playerProfiles; defaultSceneData.PreviousSceneData = singSceneData; return(defaultSceneData); }