mirror of
https://github.com/FunkinCrew/Funkin.git
synced 2024-11-26 17:46:08 -05:00
Merge remote-tracking branch 'secret/feature/results-clear-rank' into develop-0.4.0
This commit is contained in:
commit
e44266f5c0
4 changed files with 51 additions and 4 deletions
22
CHANGELOG.md
22
CHANGELOG.md
|
@ -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
2
assets
|
@ -1 +1 @@
|
||||||
Subproject commit 57a862595af16a5808b384ec1a22d5b35afc4cd6
|
Subproject commit 66572f85d826ce2ec1d45468c12733b161237ffa
|
|
@ -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,
|
||||||
|
|
|
@ -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!");
|
||||||
|
|
Loading…
Reference in a new issue