diff --git a/source/funkin/editors/charter/Charter.hx b/source/funkin/editors/charter/Charter.hx index 713c54d6..b3e6075d 100644 --- a/source/funkin/editors/charter/Charter.hx +++ b/source/funkin/editors/charter/Charter.hx @@ -1434,7 +1434,7 @@ class Charter extends UIState { CNote(note.step - minStep, note.id, note.strumLineID, note.susLength, note.type); } else if (s is CharterEvent) { var event = cast(s,CharterEvent); - CEvent(event.step - minStep, [for (event in event.events) Reflect.copy(event)]); + CEvent(event.step - minStep, event.global, [for (event in event.events) Reflect.copy(event)]); } ]; } @@ -1450,10 +1450,10 @@ class Charter extends UIState { note.updatePos(minStep + step, id, susLength, type, strumLines.members[CoolUtil.boundInt(strumLineID, 0, strumLines.length-1)]); notesGroup.add(note); sObjects.push(note); - case CEvent(step, events): - var event = new CharterEvent(minStep + step, events); + case CEvent(step, global, events): + var event = new CharterEvent(minStep + step, events, global); event.refreshEventIcons(); - (event.global ? globalEventsGroup : localEventsGroup).add(event); + (global ? globalEventsGroup : localEventsGroup).add(event); sObjects.push(event); } } @@ -2009,7 +2009,7 @@ enum CharterChange { enum CharterCopyboardObject { CNote(step:Float, id:Int, strumLineID:Int, susLength:Float, type:Int); - CEvent(step:Float, events:Array); + CEvent(step:Float, global:Bool, events:Array); } typedef NoteSustainChange = { diff --git a/source/funkin/editors/charter/CharterEvent.hx b/source/funkin/editors/charter/CharterEvent.hx index e574549c..8fefb087 100644 --- a/source/funkin/editors/charter/CharterEvent.hx +++ b/source/funkin/editors/charter/CharterEvent.hx @@ -23,7 +23,7 @@ class CharterEvent extends UISliceSprite implements ICharterSelectable { super(-100, (step * 40) - 17, 100, 34, 'editors/charter/event-spr'); this.step = step; this.events = events.getDefault([]); - this.global = global; + this.global = this.flipX = global; cursor = CLICK; } diff --git a/source/funkin/editors/charter/CharterEventAdd.hx b/source/funkin/editors/charter/CharterEventAdd.hx index 7c3aaea2..a286edf7 100644 --- a/source/funkin/editors/charter/CharterEventAdd.hx +++ b/source/funkin/editors/charter/CharterEventAdd.hx @@ -33,7 +33,7 @@ class CharterEventAdd extends UISliceSprite { public override function update(elapsed:Float) { super.update(elapsed); - text.follow(this, global ? bWidth - text.width - 20 : 20, (bHeight - text.height) / 2); + text.follow(this, global ? bWidth - text.width - (text.text == "Add event" ? 15 : 20) : 20, (bHeight - text.height) / 2); alpha = sprAlpha * 0.75; text.alpha = sprAlpha; } diff --git a/source/funkin/editors/charter/CharterStrumLineGroup.hx b/source/funkin/editors/charter/CharterStrumLineGroup.hx index 3b6153c1..e477d4e2 100644 --- a/source/funkin/editors/charter/CharterStrumLineGroup.hx +++ b/source/funkin/editors/charter/CharterStrumLineGroup.hx @@ -58,6 +58,7 @@ class CharterStrumLineGroup extends FlxTypedGroup { Charter.instance.globalEventsBackdrop.x = members[members.length-1].x + (40*members[members.length-1].keyCount); Charter.instance.globalEventsBackdrop.alpha = members[CoolUtil.maxInt(0, members.length-1)].strumLine.visible ? 0.9 : 0.4; } + if (Charter.instance.strumlineLockButton != null && members[0] != null) Charter.instance.strumlineLockButton.x = members[0].x - (160); if (Charter.instance.strumlineAddButton != null && members[CoolUtil.maxInt(0, members.length-1)] != null)