fix hoverers on drag

This commit is contained in:
lunarcleint
2023-11-19 16:09:20 -07:00
parent 9c2cffcf4e
commit 6288f5e3aa
+24 -26
View File
@@ -778,33 +778,31 @@ class Charter extends UIState {
}
addEventSpr.selectable = !selectionBox.visible;
if (gridActionType == NONE) {
// Event Spr
if (mousePos.x < 0 && mousePos.x > -addEventSpr.bWidth) {
addEventSpr.incorporeal = false;
addEventSpr.sprAlpha = lerp(addEventSpr.sprAlpha, 0.75, 0.25);
var event = getHoveredEvent(mousePos.y);
if (event != null) addEventSpr.updateEdit(event);
else addEventSpr.updatePos(mousePos.y);
} else addEventSpr.sprAlpha = lerp(addEventSpr.sprAlpha, 0, 0.25);
// Event Spr
if (mousePos.x < 0 && mousePos.x > -addEventSpr.bWidth && gridActionType == NONE) {
addEventSpr.incorporeal = false;
addEventSpr.sprAlpha = lerp(addEventSpr.sprAlpha, 0.75, 0.25);
var event = getHoveredEvent(mousePos.y);
if (event != null) addEventSpr.updateEdit(event);
else addEventSpr.updatePos(mousePos.y);
} else addEventSpr.sprAlpha = lerp(addEventSpr.sprAlpha, 0, 0.25);
// Note Hoverer
if (mousePos.x > 0 && mousePos.x < gridBackdrops.strumlinesAmount * 160 && (mousePos.y > 0 && mousePos.y < (__endStep)*40)) {
noteHoverer.alpha = lerp(noteHoverer.alpha, 0.35, 0.25);
if (noteHoverer.id != Math.floor(mousePos.x / 40) % 4) {
@:privateAccess noteHoverer.__doAnim = false; // Un comment to restore this
noteHoverer.updatePos(
FlxMath.bound(FlxG.keys.pressed.SHIFT ? ((mousePos.y-20) / 40) : quantStep(mousePos.y/40), 0, __endStep-1),
Math.floor(mousePos.x / 40) % 4, 0, null, null
);
} else {
noteHoverer.step = FlxMath.bound(FlxG.keys.pressed.SHIFT ? ((mousePos.y-20) / 40) : quantStep(mousePos.y/40), 0, __endStep-1);
noteHoverer.y = noteHoverer.step * 40;
}
noteHoverer.x = lerp(noteHoverer.x, Math.floor(mousePos.x / 40) * 40, .65);
} else
noteHoverer.alpha = lerp(noteHoverer.alpha, 0, 0.25);
}
// Note Hoverer
if (mousePos.x > 0 && mousePos.x < gridBackdrops.strumlinesAmount * 160 && (mousePos.y > 0 && mousePos.y < (__endStep)*40) && gridActionType == NONE) {
noteHoverer.alpha = lerp(noteHoverer.alpha, 0.35, 0.25);
if (noteHoverer.id != Math.floor(mousePos.x / 40) % 4) {
@:privateAccess noteHoverer.__doAnim = false; // Un comment to restore this
noteHoverer.updatePos(
FlxMath.bound(FlxG.keys.pressed.SHIFT ? ((mousePos.y-20) / 40) : quantStep(mousePos.y/40), 0, __endStep-1),
Math.floor(mousePos.x / 40) % 4, 0, null, null
);
} else {
noteHoverer.step = FlxMath.bound(FlxG.keys.pressed.SHIFT ? ((mousePos.y-20) / 40) : quantStep(mousePos.y/40), 0, __endStep-1);
noteHoverer.y = noteHoverer.step * 40;
}
noteHoverer.x = lerp(noteHoverer.x, Math.floor(mousePos.x / 40) * 40, .65);
} else
noteHoverer.alpha = lerp(noteHoverer.alpha, 0, 0.25);
}
public function quantStep(step:Float):Float {