diff --git a/source/funkin/backend/system/Logs.hx b/source/funkin/backend/system/Logs.hx index ed6152c2..73060bba 100644 --- a/source/funkin/backend/system/Logs.hx +++ b/source/funkin/backend/system/Logs.hx @@ -35,7 +35,7 @@ class Logs { if (Style == LogStyle.CONSOLE) {prefix = "> "; color = WHITE; level = INFO; } else if (Style == LogStyle.ERROR) {prefix = "[FLIXEL]"; color = RED; level = ERROR; } else if (Style == LogStyle.NORMAL) {prefix = "[FLIXEL]"; color = WHITE; level = INFO; } else - if (Style == LogStyle.NOTICE) {prefix = "[FLIXEL]"; color = GREEN; level = WARNING;} else + if (Style == LogStyle.NOTICE) {prefix = "[FLIXEL]"; color = GREEN; level = VERBOSE;} else if (Style == LogStyle.WARNING) {prefix = "[FLIXEL]"; color = YELLOW; level = WARNING;} var d:Dynamic = Data; diff --git a/source/funkin/editors/charter/CharterNote.hx b/source/funkin/editors/charter/CharterNote.hx index fc817b94..9a3359f4 100644 --- a/source/funkin/editors/charter/CharterNote.hx +++ b/source/funkin/editors/charter/CharterNote.hx @@ -67,6 +67,8 @@ class CharterNote extends UISprite implements ICharterSelectable { sustainSpr.scale.set(10, (40 * susLength)); sustainSpr.updateHitbox(); + sustainSpr.exists = susLength != 0; + sustainSpr.alpha = alpha; if (angleTween != null) angleTween.cancel(); @@ -115,14 +117,16 @@ class CharterNote extends UISprite implements ICharterSelectable { public override function update(elapsed:Float) { super.update(elapsed); - sustainSpr.follow(this, 15, 20); + if(sustainSpr.exists) + sustainSpr.follow(this, 15, 20); if (__passed != (__passed = step < Conductor.curStepFloat)) { alpha = __passed ? 0.6 : 1; if (__passed && FlxG.sound.music.playing && Charter.instance.hitsoundsEnabled(id)) Charter.instance.hitsound.replay(); } - sustainSpr.alpha = alpha; + if(sustainSpr.exists) + sustainSpr.alpha = alpha; colorTransform.redMultiplier = colorTransform.greenMultiplier = colorTransform.blueMultiplier = selected ? 0.75 : 1; colorTransform.redOffset = colorTransform.greenOffset = selected ? 96 : 0; diff --git a/source/funkin/editors/charter/CharterNoteGroup.hx b/source/funkin/editors/charter/CharterNoteGroup.hx index 90b158cc..775601d0 100644 --- a/source/funkin/editors/charter/CharterNoteGroup.hx +++ b/source/funkin/editors/charter/CharterNoteGroup.hx @@ -54,7 +54,10 @@ class CharterNoteGroup extends FlxTypedGroup { @:privateAccess var oldDefaultCameras = FlxCamera._defaultCameras; @:privateAccess if (cameras != null) FlxCamera._defaultCameras = cameras; - forEach((n) -> n.draw()); + forEach((n) -> { + if(n.exists && n.visible) + n.draw(); + }); @:privateAccess FlxCamera._defaultCameras = oldDefaultCameras; } @@ -63,7 +66,10 @@ class CharterNoteGroup extends FlxTypedGroup { @:privateAccess var oldDefaultCameras = FlxCamera._defaultCameras; @:privateAccess if (cameras != null) FlxCamera._defaultCameras = cameras; - forEach((n) -> n.update(elapsed)); + forEach((n) -> { + if(n.exists && n.active) + n.update(elapsed); + }); @:privateAccess FlxCamera._defaultCameras = oldDefaultCameras; } diff --git a/source/funkin/editors/ui/UISprite.hx b/source/funkin/editors/ui/UISprite.hx index 9db06b6f..371d7953 100644 --- a/source/funkin/editors/ui/UISprite.hx +++ b/source/funkin/editors/ui/UISprite.hx @@ -77,7 +77,8 @@ class UISprite extends FlxSprite { FlxCamera._defaultCameras = cameras; for(m in members) - m.draw(); + if(m.exists && m.visible) + m.draw(); FlxCamera._defaultCameras = __oldDefCams; } diff --git a/source/funkin/game/PlayState.hx b/source/funkin/game/PlayState.hx index 9b31525b..67bcc3ed 100644 --- a/source/funkin/game/PlayState.hx +++ b/source/funkin/game/PlayState.hx @@ -1146,7 +1146,7 @@ class PlayState extends MusicBeatState var pos = FlxPoint.get(); var r = 0; for(c in strumLines.members[curCameraTarget].characters) { - if (c == null) continue; + if (c == null || !c.visible) continue; var cpos = c.getCameraPosition(); pos.x += cpos.x; pos.y += cpos.y;