Merge remote-tracking branch 'secret/feature/results-clear-rank' into develop-0.4.0

This commit is contained in:
EliteMasterEric 2024-05-24 13:29:35 -04:00
commit e44266f5c0
4 changed files with 51 additions and 4 deletions

View file

@ -4,6 +4,28 @@ All notable changes will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [0.4.0] - 2024-05-??
### Added
- 2 new Erect remixes, Eggnog and Satin Panties. Check them out from
- Improvements to the Freeplay screen, with song difficulty ratings and player rank displays.
- Reworked the Results screen, with additional animations and audio based on your performance.
- Added a Charter field to the chart format, to allow for crediting the creator of a level's chart.
- You can see who charted a song from the Pause menu.
### Changed
- Tweaked the charts for several songs:
- Winter Horrorland
- Stress
- Lit Up
- Custom note styles are now properly supported for songs; add new notestyles via JSON, then select it for use from the Chart Editor Metadata toolbox. (thanks Keoiki!)
- Health icons now support a Winning frame without requiring a spritesheet, simply include a third frame in the icon file. (thanks gamerbross!)
- Remember that for more complex behaviors such as animations or transitions, you should use an XML file to define each frame.
### Fixed
- Fixed a bug where pressing the volume keys would stop the Toy commercial (thanks gamerbross!)
- Fixed a bug where the Chart Editor would crash when losing (thanks gamerbross!)
- Made improvements to compiling documentation (thanks gedehari!)
- Fixed a crash on Linux caused by an old version of hxCodec (thanks Noobz4Life!)
- Optimized animation handling for characters (thanks richTrash21!)
## [0.3.3] - 2024-05-14 ## [0.3.3] - 2024-05-14
### Changed ### Changed
- Cleaned up some code in `PlayAnimationSongEvent.hx` (thanks BurgerBalls!) - Cleaned up some code in `PlayAnimationSongEvent.hx` (thanks BurgerBalls!)

2
assets

@ -1 +1 @@
Subproject commit 57a862595af16a5808b384ec1a22d5b35afc4cd6 Subproject commit 66572f85d826ce2ec1d45468c12733b161237ffa

View file

@ -227,7 +227,7 @@ class InitState extends FlxState
tallies: tallies:
{ {
sick: 130, sick: 130,
good: 70, good: 25,
bad: 69, bad: 69,
shit: 69, shit: 69,
missed: 69, missed: 69,

View file

@ -53,6 +53,7 @@ class ResultState extends MusicBeatSubState
var bfPerfect:Null<FlxAtlasSprite> = null; var bfPerfect:Null<FlxAtlasSprite> = null;
var bfExcellent:Null<FlxAtlasSprite> = null; var bfExcellent:Null<FlxAtlasSprite> = null;
var bfGreat:Null<FlxAtlasSprite> = null;
var bfGood:Null<FlxSprite> = null; var bfGood:Null<FlxSprite> = null;
var gfGood:Null<FlxSprite> = null; var gfGood:Null<FlxSprite> = null;
var bfShit:Null<FlxAtlasSprite> = null; var bfShit:Null<FlxAtlasSprite> = null;
@ -151,7 +152,20 @@ class ResultState extends MusicBeatSubState
} }
}); });
case GOOD | GREAT: case GREAT:
bfGreat = new FlxAtlasSprite(640, 200, Paths.animateAtlas("resultScreen/results-bf/resultsGREAT", "shared"));
bfGreat.visible = false;
bfGreat.zIndex = 500;
add(bfGreat);
bfGreat.onAnimationFinish.add((animName) -> {
if (bfGreat != null)
{
bfGreat.playAnimation('Loop Start');
}
});
case GOOD:
gfGood = FunkinSprite.createSparrow(625, 325, 'resultScreen/results-bf/resultsGOOD/resultGirlfriendGOOD'); gfGood = FunkinSprite.createSparrow(625, 325, 'resultScreen/results-bf/resultsGOOD/resultGirlfriendGOOD');
gfGood.animation.addByPrefix("clap", "Girlfriend Good Anim", 24, false); gfGood.animation.addByPrefix("clap", "Girlfriend Good Anim", 24, false);
gfGood.visible = false; gfGood.visible = false;
@ -476,6 +490,17 @@ class ResultState extends MusicBeatSubState
bfExcellent.playAnimation('Intro'); bfExcellent.playAnimation('Intro');
} }
case GREAT:
if (bfGreat == null)
{
trace("Could not build GREAT animation!");
}
else
{
bfGreat.visible = true;
bfGreat.playAnimation('Intro');
}
case SHIT: case SHIT:
if (bfShit == null) if (bfShit == null)
{ {
@ -487,7 +512,7 @@ class ResultState extends MusicBeatSubState
bfShit.playAnimation('Intro'); bfShit.playAnimation('Intro');
} }
case GREAT | GOOD: case GOOD:
if (bfGood == null) if (bfGood == null)
{ {
trace("Could not build GOOD animation!"); trace("Could not build GOOD animation!");