Replicate vanilla's loading progess bar better #404
Merged
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.
Better replicate the vanilla progress bar copying over the logic from
LoadingOverlay
I've copied the functionality of
LoadingOverlay#currentProgress
(which is used to render vanilla's progress bar) to the NeoForge overlay.Minecraft uses
this.currentProgress = Mth.clamp(this.currentProgress * 0.95F + f6 * 0.050000012F, 0.0F, 1.0F);
wheref6
isthis.reload.getActualProgress()
. Right now, NeoForge only usesthis.reload.getActualProgress()
.(Visible changes are a smooth progress bar and the very end of the progress bar being slower.)
This PR uses the copied over
currentProgress
field instead of justthis.reload.getActualProgress()
:It also moves the
progressMeter.complete();
call to when the overlay is closed as well as increasing the progress bar's steps to 1000 for 10x smoothness.One place where the progress bar is different is that vanilla fades the progress bar out when it is done. This can't be done in this PR due to needing to add support in FancyModLoader.