Skip to content

Commit 9ccd073

Browse files
committed
more charter note stuff
1 parent 2fff41e commit 9ccd073

2 files changed

Lines changed: 20 additions & 7 deletions

File tree

source/funkin/editors/charter/Charter.hx

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -664,6 +664,7 @@ class Charter extends UIState {
664664
for (note in strL.notes) {
665665
var n = new CharterNote();
666666
var t = Conductor.getStepForTime(note.time);
667+
CharterNote.callScriptOnNote('onCharterNoteCreation', n);
667668
n.updatePos(t, note.id, Conductor.getStepForTime(note.time + note.sLen) - t, note.type, strumLines.members[i]);
668669
notesGroup.members[notesCreated++] = n;
669670
}
@@ -1026,6 +1027,7 @@ class Charter extends UIState {
10261027
if (mouseOnGrid && mousePos.y > 0 && mousePos.y < (__endStep)*40) {
10271028
var note = new CharterNote();
10281029
var targetStrumline = strumLines.getStrumlineFromID(id);
1030+
CharterNote.callScriptOnNote('onCharterNoteCreation', note);
10291031
note.updatePos(
10301032
CoolUtil.bound(FlxG.keys.pressed.SHIFT ? ((mousePos.y-20) / 40) : quantStep(mousePos.y/40), 0, __endStep-1),
10311033
(id-targetStrumline.startingID) % targetStrumline.keyCount, 0, noteType, targetStrumline
@@ -1057,6 +1059,7 @@ class Charter extends UIState {
10571059
if (s is CharterNote) {
10581060
var n:CharterNote = cast s;
10591061
var newNote = new CharterNote();
1062+
CharterNote.callScriptOnNote('onCharterNoteCreation', newNote);
10601063
newNote.updatePos(n.step, n.id, n.susLength, n.type, n.strumLine);
10611064
notesGroup.add(newNote);
10621065
newSelection.push(newNote);
@@ -1285,6 +1288,7 @@ class Charter extends UIState {
12851288
var toBeCreated:Selection = [];
12861289
for(note in strL.notes) {
12871290
var n = new CharterNote();
1291+
CharterNote.callScriptOnNote('onCharterNoteCreation', n);
12881292
var t = Conductor.getStepForTime(note.time);
12891293
n.updatePos(t, note.id, Conductor.getStepForTime(note.time + note.sLen) - t, note.type, cStr);
12901294
notesGroup.add(n);
@@ -1719,6 +1723,7 @@ class Charter extends UIState {
17191723
switch(c) {
17201724
case CNote(step, id, strumLineID, susLength, type):
17211725
var note = new CharterNote();
1726+
CharterNote.callScriptOnNote('onCharterNoteCreation', note);
17221727
note.updatePos(minStep + step, id, susLength, type, strumLines.members[CoolUtil.boundInt(strumLineID, 0, strumLines.length-1)]);
17231728
notesGroup.add(note);
17241729
sObjects.push(note);
@@ -1750,7 +1755,7 @@ class Charter extends UIState {
17501755
if (selection == null || selection.length == 0) return;
17511756
selection.loop((n:CharterNote) -> {
17521757
noteDeleteAnims.deleteNotes.push({note: n, time: noteDeleteAnims.deleteTime});
1753-
@:privateAccess CharterNote.callScriptOnNote('onCharterNoteDelete', n);
1758+
CharterNote.callScriptOnNote('onCharterNoteDelete', n);
17541759
});
17551760
selection = deleteSelection(selection, true);
17561761
}
@@ -1765,7 +1770,7 @@ class Charter extends UIState {
17651770
if (oldNote != null && oldNote.step == note.step && oldNote.strumLineID == note.strumLineID && oldNote.id == note.id) {
17661771
noteDeleteAnims.deleteNotes.push({note: oldNote, time: noteDeleteAnims.deleteTime});
17671772
toDelete.push(oldNote);
1768-
@:privateAccess CharterNote.callScriptOnNote('onCharterNoteDelete', oldNote);
1773+
CharterNote.callScriptOnNote('onCharterNoteDelete', oldNote);
17691774
}
17701775
oldNote = note;
17711776
}

source/funkin/editors/charter/CharterNote.hx

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ class CharterNote extends UISprite implements ICharterSelectable {
3434
static var noteTypeTexts:Array<UIText> = [];
3535
static var __stupidScriptParamArray:Array<CharterNote> = [];
3636

37-
static function callScriptOnNote(event:String, note:CharterNote) {
37+
public static function callScriptOnNote(event:String, note:CharterNote) {
3838
if (Charter.instance != null) {
3939
__stupidScriptParamArray[0] = note;
4040
Charter.instance.stateScripts.call(event, __stupidScriptParamArray);
@@ -60,7 +60,10 @@ class CharterNote extends UISprite implements ICharterSelectable {
6060
cursor = sustainSpr.cursor = CLICK;
6161
moves = false;
6262

63-
callScriptOnNote('onCharterNoteCreation', this);
63+
// this would also call it on the hoverer and deleter and . i dont think i want that
64+
// for unsuspecting users so it will be comented out but can still be edited after
65+
// in a charter state script
66+
// callScriptOnNote('onCharterNoteCreation', this);
6467
}
6568

6669
public override function updateButtonHandler() {
@@ -165,6 +168,7 @@ class CharterNote extends UISprite implements ICharterSelectable {
165168
}
166169

167170
var __passed:Bool = false;
171+
var __selected:Bool = false;
168172
public override function update(elapsed:Float) {
169173
super.update(elapsed);
170174

@@ -184,6 +188,7 @@ class CharterNote extends UISprite implements ICharterSelectable {
184188
if (__passed != (__passed = step < Conductor.curStepFloat + (Options.songOffsetAffectEditors ? (Conductor.songOffset / Conductor.stepCrochet) : 0))) {
185189
if (__passed && FlxG.sound.music.playing) {
186190
Charter.instance.playHitsound(strumLineID);
191+
callScriptOnNote('onCharterNoteHit', this);
187192
}
188193
}
189194

@@ -193,9 +198,12 @@ class CharterNote extends UISprite implements ICharterSelectable {
193198
typeAlpha = !isVisible ? (__passed ? 0.4 : 0.6) : (__passed ? 0.8 : 1);
194199
}
195200

196-
colorTransform.redMultiplier = colorTransform.greenMultiplier = colorTransform.blueMultiplier = selected ? 0.75 : 1;
197-
colorTransform.redOffset = colorTransform.greenOffset = selected ? 96 : 0;
198-
colorTransform.blueOffset = selected ? 168 : 0;
201+
if (__selected != (__selected = selected)) {
202+
colorTransform.redMultiplier = colorTransform.greenMultiplier = colorTransform.blueMultiplier = selected ? 0.75 : 1;
203+
colorTransform.redOffset = colorTransform.greenOffset = selected ? 96 : 0;
204+
colorTransform.blueOffset = selected ? 168 : 0;
205+
callScriptOnNote('onCharterNoteSelect', this);
206+
}
199207

200208
__doAnim = true;
201209
}

0 commit comments

Comments
 (0)