//增加时间-鼓点类型 public void AddPointType(float time, MusicPointPrefab type) { if (!PointType.ContainsKey(time)) { PointType.Add(time, type); } }
/// <summary> /// 将json中信息转化为预制物信息 /// </summary> private void CopyJsonInfoToPrebInfo() { app.model.CurrentPlayingMusicPrefab.MusicAuthorName = app.model.CurrentPlayingMusic.MusicAuthorName; app.model.CurrentPlayingMusicPrefab.MusicDescription = app.model.CurrentPlayingMusic.MusicDescription; app.model.CurrentPlayingMusicPrefab.MusicName = app.model.CurrentPlayingMusic.MusicName; app.model.CurrentPlayingMusicPrefab.MusicPublishDate = app.model.CurrentPlayingMusic.MusicPublishDate; app.model.CurrentPlayingMusicPrefab.MusicResourcesPath = app.model.CurrentPlayingMusic.MusicResourcesPath; app.model.CurrentPlayingMusicPrefab.MusicTime = app.model.CurrentPlayingMusic.MusicTime; foreach (var m in app.model.CurrentPlayingMusic.MusicPointsDictionary) { var mm = new MusicPointPrefab { MusicType = m.Value.MusicType, MusicPointV3 = new Vector3((float)m.Value.MusicPointV3X, (float)m.Value.MusicPointV3Y, (float)m.Value.MusicPointV3Z), MusicPointQ4 = new Quaternion((float)m.Value.MusicPointQ4X, (float)m.Value.MusicPointQ4Y, (float)m.Value.MusicPointQ4Z, (float)m.Value.MusicPointQ4W) }; app.model.CurrentPlayingMusicPrefab.MusicPointsDictionary.Add(m.Key, mm); } }
private void CopyJsonInfoToPrebInfoAndInit(MusicInfo currentPlayingMusic) { var dictionary = new Dictionary <float, MusicPointPrefab>(); foreach (var m in currentPlayingMusic.MusicPointsDictionary) { var mm = new MusicPointPrefab { MusicType = m.Value.MusicType, MusicPointV3 = new Vector3((float)m.Value.MusicPointV3X, (float)m.Value.MusicPointV3Y, (float)m.Value.MusicPointV3Z), MusicPointQ4 = new Quaternion((float)m.Value.MusicPointQ4X, (float)m.Value.MusicPointQ4Y, (float)m.Value.MusicPointQ4Z, (float)m.Value.MusicPointQ4W) }; dictionary.Add(float.Parse(m.Key), mm); } CreateObjectToScene(dictionary); }
private void CopyJsonInfoToPrebInfo() { yourBeatsModel.CurrentPlayingMusicPrefab.MusicAuthorName = yourBeatsModel.CurrentPlayingMusic.MusicAuthorName; yourBeatsModel.CurrentPlayingMusicPrefab.MusicDescription = yourBeatsModel.CurrentPlayingMusic.MusicDescription; yourBeatsModel.CurrentPlayingMusicPrefab.MusicName = yourBeatsModel.CurrentPlayingMusic.MusicName; yourBeatsModel.CurrentPlayingMusicPrefab.MusicPublishDate = yourBeatsModel.CurrentPlayingMusic.MusicPublishDate; yourBeatsModel.CurrentPlayingMusicPrefab.MusicResourcesPath = yourBeatsModel.CurrentPlayingMusic.MusicResourcesPath; yourBeatsModel.CurrentPlayingMusicPrefab.MusicTime = yourBeatsModel.CurrentPlayingMusic.MusicTime; foreach (var m in yourBeatsModel.CurrentPlayingMusic.MusicPointsDictionary) { var mm = new MusicPointPrefab { MusicType = m.Value.MusicType, MusicPointV3 = new Vector3((float)m.Value.MusicPointV3X, (float)m.Value.MusicPointV3Y, (float)m.Value.MusicPointV3Z), MusicPointQ4 = new Quaternion((float)m.Value.MusicPointQ4X, (float)m.Value.MusicPointQ4Y, (float)m.Value.MusicPointQ4Z, (float)m.Value.MusicPointQ4W) }; if (!yourBeatsModel.CurrentPlayingMusicPrefab.MusicPointsDictionary.ContainsKey(m.Key)) { yourBeatsModel.CurrentPlayingMusicPrefab.MusicPointsDictionary.Add(m.Key, mm); } } foreach (var p in yourBeatsModel.CurrentPlayingMusicPrefab.MusicPointsDictionary) { yourBeatsModel.Song.AddPointType(float.Parse(p.Key), p.Value); } songModel = GameObject.FindObjectOfType <SongModel>(); var totalTunes = ScoreSystem.GetInstance.TotalTunes = songModel.PointType.Count; RankSystem.GetInstance.CalculateCurrentSongTotalScore(totalTunes); }