diff --git a/source/funkin/editors/character/CharacterAnimsWindow.hx b/source/funkin/editors/character/CharacterAnimsWindow.hx index 350a5fa9..da13606d 100644 --- a/source/funkin/editors/character/CharacterAnimsWindow.hx +++ b/source/funkin/editors/character/CharacterAnimsWindow.hx @@ -24,8 +24,8 @@ class CharacterAnimsWindow extends UIWindow { } public function createButtons() { - for (i=>anim in character.animDatas) - createNewButton(anim.name, character.getAnimOffset(anim.name), false, -1, false); + for (i=>anim in character.getNameList()) + createNewButton(anim, character.getAnimOffset(anim), false, -1, false); addButton = new UIButton(25, 16+((32+16)*(character.getNameList().length)), "", function () { @@ -135,6 +135,7 @@ class CharacterAnimButtons extends UIButton { members.push(editButton); editIcon = new FlxSprite(editButton.x + 8, editButton.y + 8).loadGraphic(Paths.image('editors/character/edit-button')); + editIcon.antialiasing = false; members.push(editIcon); deleteButton = new UIButton(editButton.x+32+17, y, "", function () { @@ -144,6 +145,7 @@ class CharacterAnimButtons extends UIButton { members.push(deleteButton); deleteIcon = new FlxSprite(deleteButton.x + (15/2), deleteButton.y + 8).loadGraphic(Paths.image('editors/character/delete-button')); + deleteIcon.antialiasing = false; members.push(deleteIcon); } diff --git a/source/funkin/game/Character.hx b/source/funkin/game/Character.hx index c789aaa3..35aa2fbb 100644 --- a/source/funkin/game/Character.hx +++ b/source/funkin/game/Character.hx @@ -118,12 +118,11 @@ class Character extends FunkinSprite implements IBeatReceiver implements IOffset curCharacter = "bf"; continue; } - applyXML(xml); - - // Loads the script and calls it's "create" functions + // Loads the script script = Script.create(Paths.script(Path.withoutExtension(xmlPath), null, true)); script.setParent(this); script.load(); + applyXML(xml); script.call("create"); } break; @@ -152,8 +151,6 @@ class Character extends FunkinSprite implements IBeatReceiver implements IOffset // antialiasing = false; // flipX = true; - fixChar(true); - dance(); script.call("postCreate"); } @@ -381,10 +378,14 @@ class Character extends FunkinSprite implements IBeatReceiver implements IOffset loadSprite(Paths.image('characters/$sprite')); animation.destroyAnimations(); + animDatas.clear(); for (anim in xml.nodes.anim) { XMLUtil.addXMLAnimation(this, anim); } + + fixChar(true); + dance(); } public function buildXML():Xml { diff --git a/source/funkin/game/GameOverSubstate.hx b/source/funkin/game/GameOverSubstate.hx index 35b1218c..603e2b69 100644 --- a/source/funkin/game/GameOverSubstate.hx +++ b/source/funkin/game/GameOverSubstate.hx @@ -79,7 +79,7 @@ class GameOverSubstate extends MusicBeatSubstate FlxG.switchState(new FreeplayState()); } - if (!isEnding && ((!lossSFX.playing) || (character.animation.curAnim != null && character.animation.curAnim.name == "firstDeath" && character.animation.curAnim.finished)) && (FlxG.sound.music == null || !FlxG.sound.music.playing)) { + if (!isEnding && ((!lossSFX.playing) || (character.getAnimName() == "firstDeath" && character.isAnimFinished())) && (FlxG.sound.music == null || !FlxG.sound.music.playing)) { CoolUtil.playMusic(Paths.music(gameOverSong), false, 1, true, 100); beatHit(0); }