Merge remote-tracking branch 'public/main'
This commit is contained in:
@@ -15,7 +15,7 @@ class FlxAnimate extends flxanimate.FlxAnimate {
|
||||
for (camera in cameras)
|
||||
{
|
||||
rMatrix.identity();
|
||||
rMatrix.translate(-limb.offset.x, -limb.offset.y);
|
||||
limb.prepareMatrix(rMatrix, FlxFrameAngle.ANGLE_0, _checkFlipX() != camera.flipX, _checkFlipY() != camera.flipY);
|
||||
rMatrix.concat(_rMatrix);
|
||||
if (!camera.visible || !camera.exists || !limbOnScreen(limb, _rMatrix, camera))
|
||||
return;
|
||||
|
||||
@@ -34,10 +34,16 @@ class NoteGroup extends FlxTypedGroup<Note> {
|
||||
return FlxSort.byValues(FlxSort.DESCENDING, n1.strumTime, n2.strumTime);
|
||||
});
|
||||
}
|
||||
|
||||
@:dox(hide) public var __forcedSongPos:Null<Float> = null;
|
||||
|
||||
@:dox(hide) private inline function __getSongPos()
|
||||
return __forcedSongPos == null ? Conductor.songPosition : __forcedSongPos;
|
||||
|
||||
public override function update(elapsed:Float) {
|
||||
i = length-1;
|
||||
__loopSprite = null;
|
||||
__time = Conductor.songPosition;
|
||||
__time = __getSongPos();
|
||||
while(i >= 0) {
|
||||
__loopSprite = members[i--];
|
||||
if (__loopSprite == null || !__loopSprite.exists || !__loopSprite.active) {
|
||||
@@ -58,7 +64,7 @@ class NoteGroup extends FlxTypedGroup<Note> {
|
||||
|
||||
i = length-1;
|
||||
__loopSprite = null;
|
||||
__time = Conductor.songPosition;
|
||||
__time = __getSongPos();
|
||||
while(i >= 0) {
|
||||
__loopSprite = members[i--];
|
||||
if (__loopSprite == null || !__loopSprite.exists || !__loopSprite.visible)
|
||||
@@ -81,7 +87,7 @@ class NoteGroup extends FlxTypedGroup<Note> {
|
||||
public override function forEach(noteFunc:Note->Void, recursive:Bool = false) {
|
||||
i = length-1;
|
||||
__loopSprite = null;
|
||||
__time = Conductor.songPosition;
|
||||
__time = __getSongPos();
|
||||
|
||||
var oldCur = __currentlyLooping;
|
||||
__currentlyLooping = true;
|
||||
|
||||
@@ -8,6 +8,7 @@ import funkin.backend.scripting.Script;
|
||||
import funkin.backend.scripting.events.MenuChangeEvent;
|
||||
import funkin.backend.scripting.events.NameEvent;
|
||||
import funkin.backend.scripting.events.PauseCreationEvent;
|
||||
import funkin.backend.system.Conductor;
|
||||
import funkin.backend.utils.FunkinParentDisabler;
|
||||
import funkin.editors.charter.Charter;
|
||||
import funkin.menus.StoryMenuState;
|
||||
@@ -162,6 +163,9 @@ class PauseSubState extends MusicBeatSubstate
|
||||
PlayState.resetSongInfos();
|
||||
if (Charter.instance != null) Charter.instance.__clearStatics();
|
||||
|
||||
// prevents certain notes to disappear early when exiting - Nex
|
||||
game.strumLines.forEachAlive(function(grp) grp.notes.__forcedSongPos = Conductor.songPosition);
|
||||
|
||||
CoolUtil.playMenuSong();
|
||||
FlxG.switchState(PlayState.isStoryMode ? new StoryMenuState() : new FreeplayState());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user