diff --git a/Qwilight/Compute/DefaultCompute.cs b/Qwilight/Compute/DefaultCompute.cs index 1379713..f9a6d4b 100644 --- a/Qwilight/Compute/DefaultCompute.cs +++ b/Qwilight/Compute/DefaultCompute.cs @@ -3978,24 +3978,21 @@ NoteFile.HandledValue = BaseNoteFile.Handled.F; } } - else + else if (ModeComponentValue.HandlingHitPointsModeValue == ModeComponent.HitPointsMode.Highest) { - if (ModeComponentValue.HandlingHitPointsModeValue == ModeComponent.HitPointsMode.Highest) - { - NoteFile.HandledValue = BaseNoteFile.Handled.HighestClear; - } - else if (ModeComponentValue.HandlingHitPointsModeValue == ModeComponent.HitPointsMode.Higher && NoteFile.HandledValue != BaseNoteFile.Handled.HighestClear) - { - NoteFile.HandledValue = BaseNoteFile.Handled.HigherClear; - } - else if (NoteFile.HandledValue != BaseNoteFile.Handled.HigherClear && NoteFile.HandledValue != BaseNoteFile.Handled.HighestClear) - { - NoteFile.HandledValue = BaseNoteFile.Handled.Clear; - } + NoteFile.HandledValue = BaseNoteFile.Handled.HighestClear; + } + else if (ModeComponentValue.HandlingHitPointsModeValue == ModeComponent.HitPointsMode.Higher && NoteFile.HandledValue != BaseNoteFile.Handled.HighestClear) + { + NoteFile.HandledValue = BaseNoteFile.Handled.HigherClear; + } + else if (NoteFile.HandledValue != BaseNoteFile.Handled.HigherClear && NoteFile.HandledValue != BaseNoteFile.Handled.HighestClear) + { + NoteFile.HandledValue = BaseNoteFile.Handled.Clear; } } + DB.Instance.SetHandled(NoteFile); } - DB.Instance.SetHandled(NoteFile); DB.Instance.NewDate(NoteFile, default, date); NoteFile.LatestDate = date; diff --git a/Qwilight/JSON.cs b/Qwilight/JSON.cs index 8354100..741daa2 100644 --- a/Qwilight/JSON.cs +++ b/Qwilight/JSON.cs @@ -182,6 +182,7 @@ public string commentary; public bool isPaused; public int inputFlags; + public BaseNoteFile.Handled handled; } } @@ -731,8 +732,9 @@ public string artist; public string title; public string genre; - public string levelText; public BaseNoteFile.Level level; + public string levelText; + public BaseNoteFile.Handled handled; } public struct TwilightWwwLevel diff --git a/Qwilight/NoteFile/BaseNoteFile.cs b/Qwilight/NoteFile/BaseNoteFile.cs index bf76824..371ea20 100644 --- a/Qwilight/NoteFile/BaseNoteFile.cs +++ b/Qwilight/NoteFile/BaseNoteFile.cs @@ -10,7 +10,7 @@ { public enum Handled { - Not, Clear, Band1, Total, F, HigherClear, HighestClear + Not, Clear, Band1, F = 4, HigherClear, HighestClear } public enum NoteVariety diff --git a/Qwilight/System/DB.cs b/Qwilight/System/DB.cs index b037c8c..1b3ffef 100644 --- a/Qwilight/System/DB.cs +++ b/Qwilight/System/DB.cs @@ -557,7 +557,7 @@ var dbStatement = NewDBStatement(""" SELECT name FROM sqlite_master - WHERE type = 'table' AND name = @tableName + WHERE type = "table" AND name = @tableName """, t); dbStatement.Parameters.AddWithValue("tableName", tableName); return dbStatement.ExecuteScalar() != null; diff --git a/Qwilight/View/Assets/Assets.xaml b/Qwilight/View/Assets/Assets.xaml index 18b1510..f1e71c3 100644 --- a/Qwilight/View/Assets/Assets.xaml +++ b/Qwilight/View/Assets/Assets.xaml @@ -91,7 +91,6 @@ 0 1 2 - 3 4 5 6 diff --git a/Qwilight/View/AvatarWindow.xaml b/Qwilight/View/AvatarWindow.xaml index 9370305..96597ad 100644 --- a/Qwilight/View/AvatarWindow.xaml +++ b/Qwilight/View/AvatarWindow.xaml @@ -183,7 +183,7 @@ - + diff --git a/Qwilight/ViewModel/AvatarViewModel.cs b/Qwilight/ViewModel/AvatarViewModel.cs index 30393d0..a6f7071 100644 --- a/Qwilight/ViewModel/AvatarViewModel.cs +++ b/Qwilight/ViewModel/AvatarViewModel.cs @@ -52,7 +52,6 @@ LevelValue = noteFile.LevelValue; LevelText = noteFile.LevelText; NoteDrawingPath = noteFile.NoteDrawingPath; - HandledValue = noteFile.HandledValue; BannerDrawingPath = noteFile.BannerDrawingPath; } else @@ -64,6 +63,7 @@ LevelValue = data.level; LevelText = data.levelText; } + HandledValue = data.handled; } } diff --git a/Qwilight/ViewModel/MainViewModel.cs b/Qwilight/ViewModel/MainViewModel.cs index 07c088d..57439e3 100644 --- a/Qwilight/ViewModel/MainViewModel.cs +++ b/Qwilight/ViewModel/MainViewModel.cs @@ -1432,28 +1432,39 @@ var targetComment = commentItems.Where(comment => comment.AvatarWwwValue.AvatarID == TwilightSystem.Instance.AvatarID).SingleOrDefault(); if (targetComment != null) { + var handled = comments.Where(comment => comment.avatarID == TwilightSystem.Instance.AvatarID).SingleOrDefault().handled; TwilightCommentText0 = (Array.IndexOf(commentItems, targetComment) + 1).ToString("##,##0"); TwilightCommentText1 = commentItems.Length.ToString("/#,##0"); if (noteFile.HandledValue != BaseNoteFile.Handled.Band1) { - if (targetComment.IsP) + if (handled == BaseNoteFile.Handled.Band1) { noteFile.HandledValue = BaseNoteFile.Handled.Band1; } - else if (targetComment.ModeComponentValue.HitPointsModeValue == ModeComponent.HitPointsMode.Highest) + else { - noteFile.HandledValue = BaseNoteFile.Handled.HighestClear; + if (handled == BaseNoteFile.Handled.F) + { + if (noteFile.HandledValue == BaseNoteFile.Handled.Not) + { + noteFile.HandledValue = BaseNoteFile.Handled.F; + } + } + else if (handled == BaseNoteFile.Handled.HighestClear) + { + noteFile.HandledValue = BaseNoteFile.Handled.HighestClear; + } + else if (handled == BaseNoteFile.Handled.HigherClear && noteFile.HandledValue != BaseNoteFile.Handled.HighestClear) + { + noteFile.HandledValue = BaseNoteFile.Handled.HigherClear; + } + else if (noteFile.HandledValue != BaseNoteFile.Handled.HigherClear && noteFile.HandledValue != BaseNoteFile.Handled.HighestClear) + { + noteFile.HandledValue = BaseNoteFile.Handled.Clear; + } } - else if (targetComment.ModeComponentValue.HitPointsModeValue == ModeComponent.HitPointsMode.Higher && noteFile.HandledValue != BaseNoteFile.Handled.HighestClear) - { - noteFile.HandledValue = BaseNoteFile.Handled.HigherClear; - } - else if (noteFile.HandledValue != BaseNoteFile.Handled.HigherClear && noteFile.HandledValue != BaseNoteFile.Handled.HighestClear) - { - noteFile.HandledValue = BaseNoteFile.Handled.Clear; - } + DB.Instance.SetHandled(noteFile); } - DB.Instance.SetHandled(noteFile); } } } diff --git a/Test/Test.csproj b/Test/Test.csproj index 2b55987..86b155f 100644 --- a/Test/Test.csproj +++ b/Test/Test.csproj @@ -25,8 +25,8 @@ - - + + runtime; build; native; contentfiles; analyzers; buildtransitive all