-
-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor Song Results #203
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Change replay icon from a save icon to video to be more accurate.
These were draw using lines before instead of a premade shape.
Also use `localeTimeString` instead of doing the AM/PM ourselves.
Add to results screen, remove from options popup.
Score judging worked one way and bin replays worked the other way. A -75ms early would be recorded as a 75ms late. Removes the boo verify comparision due to it's in-ability to be compared, as the input array can be in any column order but the output boo have a fixed column order that might not match. This also updates the replay version and adds a format updater when a bin replay is loaded.
Move the code near the other code referencing it.
- Setting the value after it was displayed at least once would cause it not to change. - Add delay variable to change the mouse delay before showing the hover text. - Change MouseTooltip to use BG_DARK instead of BG_POPUP.
Currently this information is hidden on the context-menu of the result mods and is very hard to find. This also displays the accuracy in Frames, the old method, and MS, the way it's tracked internally and easier to understand.
These already used the defaults so no need to include it.
- Guest can't save score, just display as blank. - Checking `.enabled` on buttons doesn't really matter as the button isn't clickable when disabled. - Check resultIndex instead of null on songResults due to possible out-of-bounds error.
Not resetting causes the graph to not redraw when changing graphs using navigation keys as the previous nearest and current nearest is the same, but the display wasn't updated.
Somehow missed this.
Also fixes a minor bug where the AAA equivalency of the last song in a queue is displayed when viewing all the songs played in the queue. In such a scenario, the equivalency displayed should be 0 instead.
Just to be safe.
It shouldn't happen, but it has happened once. This probably fixes it.
This is probably overkill, but it should prevent the null error from ever happening again.
When a highscores popup is created and the highscores of a page aren't loaded yet, closing the popup would create a null error crash.
G-flat
previously approved these changes
Aug 23, 2020
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's approved. If you want to submit a fix for chart previews and a patch for adding functionality to display boos in accuracy graphs, I'll review them.
- Add boo support and display. - Add translated text for Judge Early/Late display. - Add note count to top right of graph.
…volution/rCubed into refact/song-results
G-flat
approved these changes
Aug 23, 2020
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Song Results Refactor
Main goal of this refactor was to clean up the general UI for the player due to it's cluttered nature from inclusion of multiple features over the years, and to expand the functionality of the information displayed to the user in the form of graphs.
For the UI, a new BoxButton was introduced call the BoxIcon that allows displays just a icon and provides a optional hover text when the user mouses over the button. These are used several times in the new results screen to compact information into a cleaner format, while not removing the information and text explaining what they do.
These BoxIcons also replace buttons that were also just icons throughout the engine to provide nicer looking icons and the hover text like the Song Selection menu song controls.
Result Graphs:
These were mostly rewritten to use a standardize class format for graphs and to move them away from direct inclusion within the GameResults code. Graphs are now cached and stored instead of redrawn when toggling the graph types, and changing the results for queues to reduce unnecessary redrawing.
Accuracy Graph:
Combo Graph:
GameScoreResult.as:
A game result class that store all values of a gameplay for use on the result screen. This before was just a untyped object which kept management of it's variables a chore and didn't give much flexibility on what the raw data could do.
This class includes helper functions for various result functions that used to be derived on the result screen code.
BoxIcon.as:
Other: