diff --git a/source/funkin/editors/stage/StageEditor.hx b/source/funkin/editors/stage/StageEditor.hx index 799fdc8b..798c7893 100644 --- a/source/funkin/editors/stage/StageEditor.hx +++ b/source/funkin/editors/stage/StageEditor.hx @@ -386,6 +386,7 @@ class StageEditor extends UIState { // Add it to the stage char.visible = true; char.alpha = 0.75; + char.extra.set(exID("node"), node); char.extra.set(exID("spacingX"), charPos.charSpacingX); char.extra.set(exID("spacingY"), charPos.charSpacingY); @@ -395,7 +396,6 @@ class StageEditor extends UIState { char.extra.set(exID("parentNode"), parent); char.extra.set(exID("highMemory"), parent.name == "highMemory"); char.extra.set(exID("lowMemory"), parent.name == "lowMemory"); - char.scale.x = node.has.scalex ? Std.parseFloat(node.att.scalex) : 1; chars.push(char); stage.applyCharStuff(char, charPos.name, 0); @@ -403,6 +403,7 @@ class StageEditor extends UIState { remove(charPos, true); charPos.destroy(); + return char; } diff --git a/source/funkin/game/Character.hx b/source/funkin/game/Character.hx index 15a9729f..1e4d76ba 100644 --- a/source/funkin/game/Character.hx +++ b/source/funkin/game/Character.hx @@ -391,7 +391,7 @@ class Character extends FunkinSprite implements IBeatReceiver implements IOffset } for (attribute in xml.x.attributes()) - if (!characterProperties.contains(attribute)) + if (!characterProperties.contains(attribute)) extra[attribute] = xml.x.get(attribute); fixChar(__switchAnims, !hasInterval); diff --git a/source/funkin/game/Stage.hx b/source/funkin/game/Stage.hx index 4b5cc8c8..5ef140b6 100644 --- a/source/funkin/game/Stage.hx +++ b/source/funkin/game/Stage.hx @@ -1,6 +1,7 @@ package funkin.game; import flixel.util.typeLimit.OneOfTwo; +import funkin.editors.character.CharacterEditor; import flixel.FlxState; import flixel.math.FlxPoint; import haxe.xml.Access; @@ -415,8 +416,9 @@ class StageCharPos extends FlxObject { oldInfo = getOldInfo(char); char.setPosition(x + (id * charSpacingX), y + (id * charSpacingY)); char.scrollFactor.set(scrollFactor.x, scrollFactor.y); - if (!char.debugMode) + if (!Std.isOfType(FlxG.state, CharacterEditor)) { char.scale.x *= scale.x; char.scale.y *= scale.y; + } char.cameraOffset += FlxPoint.weak(camxoffset, camyoffset); char.skew.x += skewX; char.skew.y += skewY; char.alpha *= alpha;