Merge branch 'yugecin/opsu/aspire-fix'
# Conflicts: # src/itdelatrisu/opsu/objects/curves/EqualDistanceMultiCurve.java
This commit is contained in:
commit
c0acb7ad6b
|
@ -98,7 +98,7 @@ public class TimingPoint {
|
|||
/**
|
||||
* Returns the slider multiplier. [INHERITED]
|
||||
*/
|
||||
public float getSliderMultiplier() { return velocity / -100f; }
|
||||
public float getSliderMultiplier() { return Utils.clamp(-velocity, 10, 1000) / 100f; }
|
||||
|
||||
/**
|
||||
* Returns the meter.
|
||||
|
|
|
@ -111,7 +111,7 @@ public abstract class EqualDistanceMultiCurve extends Curve {
|
|||
int cnt = 1;
|
||||
|
||||
if (cnt > ncurve) {
|
||||
return; // TODO this prevents aspire map from crashing the game, but does it breaks stuff?
|
||||
return;
|
||||
}
|
||||
|
||||
Vec2f c2 = curve[cnt++];
|
||||
|
|
|
@ -497,7 +497,15 @@ public class Game extends BasicGameState {
|
|||
|
||||
// letterbox effect (black bars on top/bottom)
|
||||
if (beatmap.letterboxInBreaks && breakLength >= 4000) {
|
||||
// let it fade in/out
|
||||
float a = Color.black.a;
|
||||
if (trackPosition - breakTime > breakLength / 2) {
|
||||
Color.black.a = (Math.min(500f, breakTime + breakLength - trackPosition)) / 500f;
|
||||
} else {
|
||||
Color.black.a = Math.min(500, trackPosition - breakTime) / 500f;
|
||||
}
|
||||
g.setColor(Color.black);
|
||||
Color.black.a = a;
|
||||
g.fillRect(0, 0, width, height * 0.125f);
|
||||
g.fillRect(0, height * 0.875f, width, height * 0.125f);
|
||||
}
|
||||
|
@ -946,7 +954,7 @@ public class Game extends BasicGameState {
|
|||
if (beatmap.breaks != null && breakIndex < beatmap.breaks.size()) {
|
||||
int breakValue = beatmap.breaks.get(breakIndex);
|
||||
if (breakTime > 0) { // in a break period
|
||||
if (trackPosition < breakValue)
|
||||
if (trackPosition < breakValue && trackPosition < beatmap.objects[objectIndex].getTime() - approachTime)
|
||||
return;
|
||||
else {
|
||||
// break is over
|
||||
|
|
Loading…
Reference in New Issue
Block a user