diff --git a/assets/data/characters/bf-car.xml b/assets/data/characters/bf-car.xml index b4c9b24c..bd276ca8 100644 --- a/assets/data/characters/bf-car.xml +++ b/assets/data/characters/bf-car.xml @@ -1,12 +1,18 @@ - - - - - - - - - + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/data/characters/da.xml b/assets/data/characters/da.xml index 2ef057ba..f176be02 100644 --- a/assets/data/characters/da.xml +++ b/assets/data/characters/da.xml @@ -1,8 +1,13 @@ - - - - - + + + + + + + + + + \ No newline at end of file diff --git a/assets/data/characters/dad.xml b/assets/data/characters/dad.xml index 1b1e0f04..39319727 100644 --- a/assets/data/characters/dad.xml +++ b/assets/data/characters/dad.xml @@ -1,8 +1,13 @@ - - - - - + + + + + + + + + + \ No newline at end of file diff --git a/assets/data/characters/mom-car.xml b/assets/data/characters/mom-car.xml index fa7c18dd..e511498f 100644 --- a/assets/data/characters/mom-car.xml +++ b/assets/data/characters/mom-car.xml @@ -1,10 +1,16 @@ - - - - + + + + + + + + + + \ No newline at end of file diff --git a/assets/data/characters/mom.xml b/assets/data/characters/mom.xml index 4781ede4..43d52076 100644 --- a/assets/data/characters/mom.xml +++ b/assets/data/characters/mom.xml @@ -1,10 +1,16 @@ - - - - + + + + - + + + + + + + \ No newline at end of file diff --git a/assets/images/characters/mom.xml b/assets/images/characters/mom.xml index 67eeb6b7..51132b97 100644 --- a/assets/images/characters/mom.xml +++ b/assets/images/characters/mom.xml @@ -15,8 +15,9 @@ - - + + diff --git a/source/funkin/backend/FunkinSprite.hx b/source/funkin/backend/FunkinSprite.hx index 63f6a8b7..1dde08cd 100644 --- a/source/funkin/backend/FunkinSprite.hx +++ b/source/funkin/backend/FunkinSprite.hx @@ -94,6 +94,14 @@ class FunkinSprite extends FlxSkewedSprite implements IBeatReceiver implements I public override function update(elapsed:Float) { super.update(elapsed); + + // hate how it looks like but hey at least its optimized and fast - Nex + if (isAnimFinished()) { + var name = getAnimName() + '-loop'; + if (animation.exists(name)) + playAnim(name, false, lastAnimContext); + } + if (animateAtlas != null) animateAtlas.update(elapsed); } @@ -337,6 +345,10 @@ class FunkinSprite extends FlxSkewedSprite implements IBeatReceiver implements I return name; } + public inline function isAnimReversed():Bool { + return animateAtlas != null ? animateAtlas.anim.reversed : animation.curAnim != null ? animation.curAnim.reversed : false; + } + public inline function removeAnimation(name:String) { if (animateAtlas != null) @:privateAccess animateAtlas.anim.animsMap.remove(name);