Moved all Utils.COLOR_* into new class opsu.ui.Colors.*.
Signed-off-by: Jeffrey Han <itdelatrisu@gmail.com>
This commit is contained in:
parent
5f5c0cdbc4
commit
91f07855a7
|
@ -28,6 +28,7 @@ import itdelatrisu.opsu.downloads.Updater;
|
||||||
import itdelatrisu.opsu.objects.curves.Curve;
|
import itdelatrisu.opsu.objects.curves.Curve;
|
||||||
import itdelatrisu.opsu.replay.Replay;
|
import itdelatrisu.opsu.replay.Replay;
|
||||||
import itdelatrisu.opsu.replay.ReplayFrame;
|
import itdelatrisu.opsu.replay.ReplayFrame;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
import itdelatrisu.opsu.ui.animations.AnimationEquation;
|
import itdelatrisu.opsu.ui.animations.AnimationEquation;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
@ -620,7 +621,7 @@ public class GameData {
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
// lead-in time (yellow)
|
// lead-in time (yellow)
|
||||||
g.setColor(Utils.COLOR_YELLOW_ALPHA);
|
g.setColor(Colors.YELLOW_ALPHA);
|
||||||
g.fillArc(circleX, symbolHeight, circleDiameter, circleDiameter,
|
g.fillArc(circleX, symbolHeight, circleDiameter, circleDiameter,
|
||||||
-90 + (int) (360f * trackPosition / firstObjectTime), -90
|
-90 + (int) (360f * trackPosition / firstObjectTime), -90
|
||||||
);
|
);
|
||||||
|
@ -657,27 +658,27 @@ public class GameData {
|
||||||
float hitErrorY = height / uiScale - margin - 10;
|
float hitErrorY = height / uiScale - margin - 10;
|
||||||
float barY = (hitErrorY - 3) * uiScale, barHeight = 6 * uiScale;
|
float barY = (hitErrorY - 3) * uiScale, barHeight = 6 * uiScale;
|
||||||
float tickY = (hitErrorY - 10) * uiScale, tickHeight = 20 * uiScale;
|
float tickY = (hitErrorY - 10) * uiScale, tickHeight = 20 * uiScale;
|
||||||
float oldAlphaBlack = Utils.COLOR_BLACK_ALPHA.a;
|
float oldAlphaBlack = Colors.BLACK_ALPHA.a;
|
||||||
Utils.COLOR_BLACK_ALPHA.a = hitErrorAlpha;
|
Colors.BLACK_ALPHA.a = hitErrorAlpha;
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
g.fillRect((hitErrorX - 3 - hitResultOffset[HIT_50]) * uiScale, tickY,
|
g.fillRect((hitErrorX - 3 - hitResultOffset[HIT_50]) * uiScale, tickY,
|
||||||
(hitResultOffset[HIT_50] * 2) * uiScale, tickHeight);
|
(hitResultOffset[HIT_50] * 2) * uiScale, tickHeight);
|
||||||
Utils.COLOR_BLACK_ALPHA.a = oldAlphaBlack;
|
Colors.BLACK_ALPHA.a = oldAlphaBlack;
|
||||||
Utils.COLOR_LIGHT_ORANGE.a = hitErrorAlpha;
|
Colors.LIGHT_ORANGE.a = hitErrorAlpha;
|
||||||
g.setColor(Utils.COLOR_LIGHT_ORANGE);
|
g.setColor(Colors.LIGHT_ORANGE);
|
||||||
g.fillRect((hitErrorX - 3 - hitResultOffset[HIT_50]) * uiScale, barY,
|
g.fillRect((hitErrorX - 3 - hitResultOffset[HIT_50]) * uiScale, barY,
|
||||||
(hitResultOffset[HIT_50] * 2) * uiScale, barHeight);
|
(hitResultOffset[HIT_50] * 2) * uiScale, barHeight);
|
||||||
Utils.COLOR_LIGHT_ORANGE.a = 1f;
|
Colors.LIGHT_ORANGE.a = 1f;
|
||||||
Utils.COLOR_LIGHT_GREEN.a = hitErrorAlpha;
|
Colors.LIGHT_GREEN.a = hitErrorAlpha;
|
||||||
g.setColor(Utils.COLOR_LIGHT_GREEN);
|
g.setColor(Colors.LIGHT_GREEN);
|
||||||
g.fillRect((hitErrorX - 3 - hitResultOffset[HIT_100]) * uiScale, barY,
|
g.fillRect((hitErrorX - 3 - hitResultOffset[HIT_100]) * uiScale, barY,
|
||||||
(hitResultOffset[HIT_100] * 2) * uiScale, barHeight);
|
(hitResultOffset[HIT_100] * 2) * uiScale, barHeight);
|
||||||
Utils.COLOR_LIGHT_GREEN.a = 1f;
|
Colors.LIGHT_GREEN.a = 1f;
|
||||||
Utils.COLOR_LIGHT_BLUE.a = hitErrorAlpha;
|
Colors.LIGHT_BLUE.a = hitErrorAlpha;
|
||||||
g.setColor(Utils.COLOR_LIGHT_BLUE);
|
g.setColor(Colors.LIGHT_BLUE);
|
||||||
g.fillRect((hitErrorX - 3 - hitResultOffset[HIT_300]) * uiScale, barY,
|
g.fillRect((hitErrorX - 3 - hitResultOffset[HIT_300]) * uiScale, barY,
|
||||||
(hitResultOffset[HIT_300] * 2) * uiScale, barHeight);
|
(hitResultOffset[HIT_300] * 2) * uiScale, barHeight);
|
||||||
Utils.COLOR_LIGHT_BLUE.a = 1f;
|
Colors.LIGHT_BLUE.a = 1f;
|
||||||
white.a = hitErrorAlpha;
|
white.a = hitErrorAlpha;
|
||||||
g.setColor(white);
|
g.setColor(white);
|
||||||
g.fillRect((hitErrorX - 1.5f) * uiScale, tickY, 3 * uiScale, tickHeight);
|
g.fillRect((hitErrorX - 1.5f) * uiScale, tickY, 3 * uiScale, tickHeight);
|
||||||
|
@ -836,7 +837,7 @@ public class GameData {
|
||||||
|
|
||||||
// header
|
// header
|
||||||
Image rankingTitle = GameImage.RANKING_TITLE.getImage();
|
Image rankingTitle = GameImage.RANKING_TITLE.getImage();
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
g.fillRect(0, 0, width, 100 * uiScale);
|
g.fillRect(0, 0, width, 100 * uiScale);
|
||||||
rankingTitle.draw((width * 0.97f) - rankingTitle.getWidth(), 0);
|
rankingTitle.draw((width * 0.97f) - rankingTitle.getWidth(), 0);
|
||||||
float marginX = width * 0.01f, marginY = height * 0.002f;
|
float marginX = width * 0.01f, marginY = height * 0.002f;
|
||||||
|
@ -898,12 +899,12 @@ public class GameData {
|
||||||
|
|
||||||
// slider curve
|
// slider curve
|
||||||
if (hitResult.curve != null) {
|
if (hitResult.curve != null) {
|
||||||
float oldWhiteAlpha = Utils.COLOR_WHITE_FADE.a;
|
float oldWhiteAlpha = Colors.WHITE_FADE.a;
|
||||||
float oldColorAlpha = hitResult.color.a;
|
float oldColorAlpha = hitResult.color.a;
|
||||||
Utils.COLOR_WHITE_FADE.a = alpha;
|
Colors.WHITE_FADE.a = alpha;
|
||||||
hitResult.color.a = alpha;
|
hitResult.color.a = alpha;
|
||||||
hitResult.curve.draw(hitResult.color);
|
hitResult.curve.draw(hitResult.color);
|
||||||
Utils.COLOR_WHITE_FADE.a = oldWhiteAlpha;
|
Colors.WHITE_FADE.a = oldWhiteAlpha;
|
||||||
hitResult.color.a = oldColorAlpha;
|
hitResult.color.a = oldColorAlpha;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -60,7 +60,6 @@ import org.lwjgl.BufferUtils;
|
||||||
import org.lwjgl.opengl.Display;
|
import org.lwjgl.opengl.Display;
|
||||||
import org.lwjgl.opengl.GL11;
|
import org.lwjgl.opengl.GL11;
|
||||||
import org.newdawn.slick.Animation;
|
import org.newdawn.slick.Animation;
|
||||||
import org.newdawn.slick.Color;
|
|
||||||
import org.newdawn.slick.GameContainer;
|
import org.newdawn.slick.GameContainer;
|
||||||
import org.newdawn.slick.Input;
|
import org.newdawn.slick.Input;
|
||||||
import org.newdawn.slick.SlickException;
|
import org.newdawn.slick.SlickException;
|
||||||
|
@ -77,26 +76,6 @@ import com.sun.jna.platform.FileUtils;
|
||||||
* Contains miscellaneous utilities.
|
* Contains miscellaneous utilities.
|
||||||
*/
|
*/
|
||||||
public class Utils {
|
public class Utils {
|
||||||
/** Game colors. */
|
|
||||||
public static final Color
|
|
||||||
COLOR_BLACK_ALPHA = new Color(0, 0, 0, 0.5f),
|
|
||||||
COLOR_WHITE_ALPHA = new Color(255, 255, 255, 0.5f),
|
|
||||||
COLOR_BLUE_DIVIDER = new Color(49, 94, 237),
|
|
||||||
COLOR_BLUE_BACKGROUND = new Color(74, 130, 255),
|
|
||||||
COLOR_BLUE_BUTTON = new Color(40, 129, 237),
|
|
||||||
COLOR_ORANGE_BUTTON = new Color(200, 90, 3),
|
|
||||||
COLOR_YELLOW_ALPHA = new Color(255, 255, 0, 0.4f),
|
|
||||||
COLOR_WHITE_FADE = new Color(255, 255, 255, 1f),
|
|
||||||
COLOR_RED_HOVER = new Color(255, 112, 112),
|
|
||||||
COLOR_GREEN = new Color(137, 201, 79),
|
|
||||||
COLOR_LIGHT_ORANGE = new Color(255,192,128),
|
|
||||||
COLOR_LIGHT_GREEN = new Color(128,255,128),
|
|
||||||
COLOR_LIGHT_BLUE = new Color(128,128,255),
|
|
||||||
COLOR_GREEN_SEARCH = new Color(173, 255, 47),
|
|
||||||
COLOR_DARK_GRAY = new Color(0.3f, 0.3f, 0.3f, 1f),
|
|
||||||
COLOR_RED_HIGHLIGHT = new Color(246, 154, 161),
|
|
||||||
COLOR_BLUE_HIGHLIGHT = new Color(173, 216, 230);
|
|
||||||
|
|
||||||
/** Game fonts. */
|
/** Game fonts. */
|
||||||
public static UnicodeFont
|
public static UnicodeFont
|
||||||
FONT_DEFAULT, FONT_BOLD,
|
FONT_DEFAULT, FONT_BOLD,
|
||||||
|
|
|
@ -22,6 +22,7 @@ import itdelatrisu.opsu.GameData.Grade;
|
||||||
import itdelatrisu.opsu.GameImage;
|
import itdelatrisu.opsu.GameImage;
|
||||||
import itdelatrisu.opsu.Options;
|
import itdelatrisu.opsu.Options;
|
||||||
import itdelatrisu.opsu.Utils;
|
import itdelatrisu.opsu.Utils;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
|
|
||||||
import org.newdawn.slick.Color;
|
import org.newdawn.slick.Color;
|
||||||
import org.newdawn.slick.Image;
|
import org.newdawn.slick.Image;
|
||||||
|
@ -78,10 +79,10 @@ public class BeatmapSetNode {
|
||||||
bgColor = Color.white;
|
bgColor = Color.white;
|
||||||
textColor = Options.getSkin().getSongSelectActiveTextColor();
|
textColor = Options.getSkin().getSongSelectActiveTextColor();
|
||||||
} else
|
} else
|
||||||
bgColor = Utils.COLOR_BLUE_BUTTON;
|
bgColor = Colors.BLUE_BUTTON;
|
||||||
beatmap = beatmapSet.get(beatmapIndex);
|
beatmap = beatmapSet.get(beatmapIndex);
|
||||||
} else {
|
} else {
|
||||||
bgColor = Utils.COLOR_ORANGE_BUTTON;
|
bgColor = Colors.ORANGE_BUTTON;
|
||||||
beatmap = beatmapSet.get(0);
|
beatmap = beatmapSet.get(0);
|
||||||
}
|
}
|
||||||
bg.draw(x, y, bgColor);
|
bg.draw(x, y, bgColor);
|
||||||
|
|
|
@ -26,6 +26,7 @@ import itdelatrisu.opsu.beatmap.BeatmapSetList;
|
||||||
import itdelatrisu.opsu.downloads.Download.DownloadListener;
|
import itdelatrisu.opsu.downloads.Download.DownloadListener;
|
||||||
import itdelatrisu.opsu.downloads.Download.Status;
|
import itdelatrisu.opsu.downloads.Download.Status;
|
||||||
import itdelatrisu.opsu.downloads.servers.DownloadServer;
|
import itdelatrisu.opsu.downloads.servers.DownloadServer;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
import itdelatrisu.opsu.ui.UI;
|
import itdelatrisu.opsu.ui.UI;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
@ -329,7 +330,7 @@ public class DownloadNode {
|
||||||
|
|
||||||
// map is already loaded
|
// map is already loaded
|
||||||
if (BeatmapSetList.get().containsBeatmapSetID(beatmapSetID)) {
|
if (BeatmapSetList.get().containsBeatmapSetID(beatmapSetID)) {
|
||||||
g.setColor(Utils.COLOR_BLUE_BUTTON);
|
g.setColor(Colors.BLUE_BUTTON);
|
||||||
g.fillRect(buttonBaseX, y, buttonWidth, buttonHeight);
|
g.fillRect(buttonBaseX, y, buttonWidth, buttonHeight);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -337,7 +338,7 @@ public class DownloadNode {
|
||||||
if (dl != null) {
|
if (dl != null) {
|
||||||
float progress = dl.getProgress();
|
float progress = dl.getProgress();
|
||||||
if (progress > 0f) {
|
if (progress > 0f) {
|
||||||
g.setColor(Utils.COLOR_GREEN);
|
g.setColor(Colors.GREEN);
|
||||||
g.fillRect(buttonBaseX, y, buttonWidth * progress / 100f, buttonHeight);
|
g.fillRect(buttonBaseX, y, buttonWidth * progress / 100f, buttonHeight);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,6 +26,7 @@ import itdelatrisu.opsu.Options;
|
||||||
import itdelatrisu.opsu.Utils;
|
import itdelatrisu.opsu.Utils;
|
||||||
import itdelatrisu.opsu.beatmap.HitObject;
|
import itdelatrisu.opsu.beatmap.HitObject;
|
||||||
import itdelatrisu.opsu.states.Game;
|
import itdelatrisu.opsu.states.Game;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
|
|
||||||
import org.newdawn.slick.Color;
|
import org.newdawn.slick.Color;
|
||||||
import org.newdawn.slick.GameContainer;
|
import org.newdawn.slick.GameContainer;
|
||||||
|
@ -104,21 +105,21 @@ public class Circle implements GameObject {
|
||||||
alpha = Math.min(alpha, fadeOutAlpha);
|
alpha = Math.min(alpha, fadeOutAlpha);
|
||||||
}
|
}
|
||||||
|
|
||||||
float oldAlpha = Utils.COLOR_WHITE_FADE.a;
|
float oldAlpha = Colors.WHITE_FADE.a;
|
||||||
Utils.COLOR_WHITE_FADE.a = color.a = alpha;
|
Colors.WHITE_FADE.a = color.a = alpha;
|
||||||
|
|
||||||
if (timeDiff >= 0 && !GameMod.HIDDEN.isActive())
|
if (timeDiff >= 0 && !GameMod.HIDDEN.isActive())
|
||||||
GameImage.APPROACHCIRCLE.getImage().getScaledCopy(approachScale).drawCentered(x, y, color);
|
GameImage.APPROACHCIRCLE.getImage().getScaledCopy(approachScale).drawCentered(x, y, color);
|
||||||
GameImage.HITCIRCLE.getImage().drawCentered(x, y, color);
|
GameImage.HITCIRCLE.getImage().drawCentered(x, y, color);
|
||||||
boolean overlayAboveNumber = Options.getSkin().isHitCircleOverlayAboveNumber();
|
boolean overlayAboveNumber = Options.getSkin().isHitCircleOverlayAboveNumber();
|
||||||
if (!overlayAboveNumber)
|
if (!overlayAboveNumber)
|
||||||
GameImage.HITCIRCLE_OVERLAY.getImage().drawCentered(x, y, Utils.COLOR_WHITE_FADE);
|
GameImage.HITCIRCLE_OVERLAY.getImage().drawCentered(x, y, Colors.WHITE_FADE);
|
||||||
data.drawSymbolNumber(hitObject.getComboNumber(), x, y,
|
data.drawSymbolNumber(hitObject.getComboNumber(), x, y,
|
||||||
GameImage.HITCIRCLE.getImage().getWidth() * 0.40f / data.getDefaultSymbolImage(0).getHeight(), alpha);
|
GameImage.HITCIRCLE.getImage().getWidth() * 0.40f / data.getDefaultSymbolImage(0).getHeight(), alpha);
|
||||||
if (overlayAboveNumber)
|
if (overlayAboveNumber)
|
||||||
GameImage.HITCIRCLE_OVERLAY.getImage().drawCentered(x, y, Utils.COLOR_WHITE_FADE);
|
GameImage.HITCIRCLE_OVERLAY.getImage().drawCentered(x, y, Colors.WHITE_FADE);
|
||||||
|
|
||||||
Utils.COLOR_WHITE_FADE.a = oldAlpha;
|
Colors.WHITE_FADE.a = oldAlpha;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -31,6 +31,7 @@ import itdelatrisu.opsu.objects.curves.CircumscribedCircle;
|
||||||
import itdelatrisu.opsu.objects.curves.Curve;
|
import itdelatrisu.opsu.objects.curves.Curve;
|
||||||
import itdelatrisu.opsu.objects.curves.LinearBezier;
|
import itdelatrisu.opsu.objects.curves.LinearBezier;
|
||||||
import itdelatrisu.opsu.states.Game;
|
import itdelatrisu.opsu.states.Game;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
|
|
||||||
import org.newdawn.slick.Color;
|
import org.newdawn.slick.Color;
|
||||||
import org.newdawn.slick.GameContainer;
|
import org.newdawn.slick.GameContainer;
|
||||||
|
@ -184,8 +185,8 @@ public class Slider implements GameObject {
|
||||||
float alpha = Utils.clamp(1 - fadeinScale, 0, 1);
|
float alpha = Utils.clamp(1 - fadeinScale, 0, 1);
|
||||||
boolean overlayAboveNumber = Options.getSkin().isHitCircleOverlayAboveNumber();
|
boolean overlayAboveNumber = Options.getSkin().isHitCircleOverlayAboveNumber();
|
||||||
|
|
||||||
float oldAlpha = Utils.COLOR_WHITE_FADE.a;
|
float oldAlpha = Colors.WHITE_FADE.a;
|
||||||
Utils.COLOR_WHITE_FADE.a = color.a = alpha;
|
Colors.WHITE_FADE.a = color.a = alpha;
|
||||||
Image hitCircleOverlay = GameImage.HITCIRCLE_OVERLAY.getImage();
|
Image hitCircleOverlay = GameImage.HITCIRCLE_OVERLAY.getImage();
|
||||||
Image hitCircle = GameImage.HITCIRCLE.getImage();
|
Image hitCircle = GameImage.HITCIRCLE.getImage();
|
||||||
float[] endPos = curve.pointAt(1);
|
float[] endPos = curve.pointAt(1);
|
||||||
|
@ -195,19 +196,19 @@ public class Slider implements GameObject {
|
||||||
|
|
||||||
// end circle
|
// end circle
|
||||||
hitCircle.drawCentered(endPos[0], endPos[1], color);
|
hitCircle.drawCentered(endPos[0], endPos[1], color);
|
||||||
hitCircleOverlay.drawCentered(endPos[0], endPos[1], Utils.COLOR_WHITE_FADE);
|
hitCircleOverlay.drawCentered(endPos[0], endPos[1], Colors.WHITE_FADE);
|
||||||
|
|
||||||
// start circle
|
// start circle
|
||||||
hitCircle.drawCentered(x, y, color);
|
hitCircle.drawCentered(x, y, color);
|
||||||
if (!overlayAboveNumber)
|
if (!overlayAboveNumber)
|
||||||
hitCircleOverlay.drawCentered(x, y, Utils.COLOR_WHITE_FADE);
|
hitCircleOverlay.drawCentered(x, y, Colors.WHITE_FADE);
|
||||||
|
|
||||||
// ticks
|
// ticks
|
||||||
if (ticksT != null) {
|
if (ticksT != null) {
|
||||||
Image tick = GameImage.SLIDER_TICK.getImage();
|
Image tick = GameImage.SLIDER_TICK.getImage();
|
||||||
for (int i = 0; i < ticksT.length; i++) {
|
for (int i = 0; i < ticksT.length; i++) {
|
||||||
float[] c = curve.pointAt(ticksT[i]);
|
float[] c = curve.pointAt(ticksT[i]);
|
||||||
tick.drawCentered(c[0], c[1], Utils.COLOR_WHITE_FADE);
|
tick.drawCentered(c[0], c[1], Colors.WHITE_FADE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (GameMod.HIDDEN.isActive()) {
|
if (GameMod.HIDDEN.isActive()) {
|
||||||
|
@ -221,7 +222,7 @@ public class Slider implements GameObject {
|
||||||
data.drawSymbolNumber(hitObject.getComboNumber(), x, y,
|
data.drawSymbolNumber(hitObject.getComboNumber(), x, y,
|
||||||
hitCircle.getWidth() * 0.40f / data.getDefaultSymbolImage(0).getHeight(), alpha);
|
hitCircle.getWidth() * 0.40f / data.getDefaultSymbolImage(0).getHeight(), alpha);
|
||||||
if (overlayAboveNumber)
|
if (overlayAboveNumber)
|
||||||
hitCircleOverlay.drawCentered(x, y, Utils.COLOR_WHITE_FADE);
|
hitCircleOverlay.drawCentered(x, y, Colors.WHITE_FADE);
|
||||||
|
|
||||||
// repeats
|
// repeats
|
||||||
for (int tcurRepeat = currentRepeats; tcurRepeat <= currentRepeats + 1; tcurRepeat++) {
|
for (int tcurRepeat = currentRepeats; tcurRepeat <= currentRepeats + 1; tcurRepeat++) {
|
||||||
|
@ -273,16 +274,16 @@ public class Slider implements GameObject {
|
||||||
|
|
||||||
// "flashlight" mod: dim the screen
|
// "flashlight" mod: dim the screen
|
||||||
if (GameMod.FLASHLIGHT.isActive()) {
|
if (GameMod.FLASHLIGHT.isActive()) {
|
||||||
float oldAlphaBlack = Utils.COLOR_BLACK_ALPHA.a;
|
float oldAlphaBlack = Colors.BLACK_ALPHA.a;
|
||||||
Utils.COLOR_BLACK_ALPHA.a = 0.75f;
|
Colors.BLACK_ALPHA.a = 0.75f;
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
g.fillRect(0, 0, containerWidth, containerHeight);
|
g.fillRect(0, 0, containerWidth, containerHeight);
|
||||||
Utils.COLOR_BLACK_ALPHA.a = oldAlphaBlack;
|
Colors.BLACK_ALPHA.a = oldAlphaBlack;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Utils.COLOR_WHITE_FADE.a = oldAlpha;
|
Colors.WHITE_FADE.a = oldAlpha;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -28,6 +28,7 @@ import itdelatrisu.opsu.audio.SoundController;
|
||||||
import itdelatrisu.opsu.audio.SoundEffect;
|
import itdelatrisu.opsu.audio.SoundEffect;
|
||||||
import itdelatrisu.opsu.beatmap.HitObject;
|
import itdelatrisu.opsu.beatmap.HitObject;
|
||||||
import itdelatrisu.opsu.states.Game;
|
import itdelatrisu.opsu.states.Game;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
|
|
||||||
import org.newdawn.slick.Color;
|
import org.newdawn.slick.Color;
|
||||||
import org.newdawn.slick.GameContainer;
|
import org.newdawn.slick.GameContainer;
|
||||||
|
@ -183,12 +184,12 @@ public class Spinner implements GameObject {
|
||||||
|
|
||||||
// darken screen
|
// darken screen
|
||||||
if (Options.getSkin().isSpinnerFadePlayfield()) {
|
if (Options.getSkin().isSpinnerFadePlayfield()) {
|
||||||
float oldAlpha = Utils.COLOR_BLACK_ALPHA.a;
|
float oldAlpha = Colors.BLACK_ALPHA.a;
|
||||||
if (timeDiff > 0)
|
if (timeDiff > 0)
|
||||||
Utils.COLOR_BLACK_ALPHA.a *= alpha;
|
Colors.BLACK_ALPHA.a *= alpha;
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
g.fillRect(0, 0, width, height);
|
g.fillRect(0, 0, width, height);
|
||||||
Utils.COLOR_BLACK_ALPHA.a = oldAlpha;
|
Colors.BLACK_ALPHA.a = oldAlpha;
|
||||||
}
|
}
|
||||||
|
|
||||||
// rpm
|
// rpm
|
||||||
|
|
|
@ -20,10 +20,10 @@ package itdelatrisu.opsu.objects.curves;
|
||||||
|
|
||||||
import itdelatrisu.opsu.GameImage;
|
import itdelatrisu.opsu.GameImage;
|
||||||
import itdelatrisu.opsu.Options;
|
import itdelatrisu.opsu.Options;
|
||||||
import itdelatrisu.opsu.Utils;
|
|
||||||
import itdelatrisu.opsu.beatmap.HitObject;
|
import itdelatrisu.opsu.beatmap.HitObject;
|
||||||
import itdelatrisu.opsu.render.CurveRenderState;
|
import itdelatrisu.opsu.render.CurveRenderState;
|
||||||
import itdelatrisu.opsu.skins.Skin;
|
import itdelatrisu.opsu.skins.Skin;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
|
|
||||||
import org.lwjgl.opengl.ContextCapabilities;
|
import org.lwjgl.opengl.ContextCapabilities;
|
||||||
import org.lwjgl.opengl.GLContext;
|
import org.lwjgl.opengl.GLContext;
|
||||||
|
@ -116,7 +116,7 @@ public abstract class Curve {
|
||||||
Image hitCircle = GameImage.HITCIRCLE.getImage();
|
Image hitCircle = GameImage.HITCIRCLE.getImage();
|
||||||
Image hitCircleOverlay = GameImage.HITCIRCLE_OVERLAY.getImage();
|
Image hitCircleOverlay = GameImage.HITCIRCLE_OVERLAY.getImage();
|
||||||
for (int i = 0; i < curve.length; i++)
|
for (int i = 0; i < curve.length; i++)
|
||||||
hitCircleOverlay.drawCentered(curve[i].x, curve[i].y, Utils.COLOR_WHITE_FADE);
|
hitCircleOverlay.drawCentered(curve[i].x, curve[i].y, Colors.WHITE_FADE);
|
||||||
for (int i = 0; i < curve.length; i++)
|
for (int i = 0; i < curve.length; i++)
|
||||||
hitCircle.drawCentered(curve[i].x, curve[i].y, color);
|
hitCircle.drawCentered(curve[i].x, curve[i].y, color);
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,9 +18,9 @@
|
||||||
package itdelatrisu.opsu.render;
|
package itdelatrisu.opsu.render;
|
||||||
|
|
||||||
import itdelatrisu.opsu.GameImage;
|
import itdelatrisu.opsu.GameImage;
|
||||||
import itdelatrisu.opsu.Utils;
|
|
||||||
import itdelatrisu.opsu.beatmap.HitObject;
|
import itdelatrisu.opsu.beatmap.HitObject;
|
||||||
import itdelatrisu.opsu.objects.curves.Vec2f;
|
import itdelatrisu.opsu.objects.curves.Vec2f;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
|
|
||||||
import java.nio.ByteBuffer;
|
import java.nio.ByteBuffer;
|
||||||
import java.nio.FloatBuffer;
|
import java.nio.FloatBuffer;
|
||||||
|
@ -127,14 +127,14 @@ public class CurveRenderState {
|
||||||
GL11.glViewport(0, 0, fbo.width, fbo.height);
|
GL11.glViewport(0, 0, fbo.width, fbo.height);
|
||||||
GL11.glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
|
GL11.glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
|
||||||
GL11.glClear(GL11.GL_COLOR_BUFFER_BIT | GL11.GL_DEPTH_BUFFER_BIT);
|
GL11.glClear(GL11.GL_COLOR_BUFFER_BIT | GL11.GL_DEPTH_BUFFER_BIT);
|
||||||
Utils.COLOR_WHITE_FADE.a = 1.0f;
|
Colors.WHITE_FADE.a = 1.0f;
|
||||||
this.draw_curve(color, borderColor, curve);
|
this.draw_curve(color, borderColor, curve);
|
||||||
color.a = 1f;
|
color.a = 1f;
|
||||||
|
|
||||||
GL11.glBindTexture(GL11.GL_TEXTURE_2D, oldTex);
|
GL11.glBindTexture(GL11.GL_TEXTURE_2D, oldTex);
|
||||||
EXTFramebufferObject.glBindFramebufferEXT(EXTFramebufferObject.GL_FRAMEBUFFER_EXT, oldFb);
|
EXTFramebufferObject.glBindFramebufferEXT(EXTFramebufferObject.GL_FRAMEBUFFER_EXT, oldFb);
|
||||||
GL11.glViewport(oldViewport.get(0), oldViewport.get(1), oldViewport.get(2), oldViewport.get(3));
|
GL11.glViewport(oldViewport.get(0), oldViewport.get(1), oldViewport.get(2), oldViewport.get(3));
|
||||||
Utils.COLOR_WHITE_FADE.a = alpha;
|
Colors.WHITE_FADE.a = alpha;
|
||||||
}
|
}
|
||||||
|
|
||||||
// draw a fullscreen quad with the texture that contains the curve
|
// draw a fullscreen quad with the texture that contains the curve
|
||||||
|
|
|
@ -37,6 +37,7 @@ import itdelatrisu.opsu.downloads.servers.DownloadServer;
|
||||||
import itdelatrisu.opsu.downloads.servers.HexideServer;
|
import itdelatrisu.opsu.downloads.servers.HexideServer;
|
||||||
import itdelatrisu.opsu.downloads.servers.MnetworkServer;
|
import itdelatrisu.opsu.downloads.servers.MnetworkServer;
|
||||||
import itdelatrisu.opsu.downloads.servers.YaSOnlineServer;
|
import itdelatrisu.opsu.downloads.servers.YaSOnlineServer;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
import itdelatrisu.opsu.ui.MenuButton;
|
import itdelatrisu.opsu.ui.MenuButton;
|
||||||
import itdelatrisu.opsu.ui.UI;
|
import itdelatrisu.opsu.ui.UI;
|
||||||
|
|
||||||
|
@ -424,7 +425,7 @@ public class DownloadsMenu extends BasicGameState {
|
||||||
// importing beatmaps
|
// importing beatmaps
|
||||||
if (importThread != null) {
|
if (importThread != null) {
|
||||||
// darken the screen
|
// darken the screen
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
g.fillRect(0, 0, width, height);
|
g.fillRect(0, 0, width, height);
|
||||||
|
|
||||||
UI.drawLoadingProgress(g);
|
UI.drawLoadingProgress(g);
|
||||||
|
|
|
@ -46,6 +46,7 @@ import itdelatrisu.opsu.render.FrameBufferCache;
|
||||||
import itdelatrisu.opsu.replay.PlaybackSpeed;
|
import itdelatrisu.opsu.replay.PlaybackSpeed;
|
||||||
import itdelatrisu.opsu.replay.Replay;
|
import itdelatrisu.opsu.replay.Replay;
|
||||||
import itdelatrisu.opsu.replay.ReplayFrame;
|
import itdelatrisu.opsu.replay.ReplayFrame;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
import itdelatrisu.opsu.ui.MenuButton;
|
import itdelatrisu.opsu.ui.MenuButton;
|
||||||
import itdelatrisu.opsu.ui.UI;
|
import itdelatrisu.opsu.ui.UI;
|
||||||
import itdelatrisu.opsu.ui.animations.AnimationEquation;
|
import itdelatrisu.opsu.ui.animations.AnimationEquation;
|
||||||
|
@ -475,15 +476,15 @@ public class Game extends BasicGameState {
|
||||||
GameImage.SCOREBAR_BG.getImage().getHeight(),
|
GameImage.SCOREBAR_BG.getImage().getHeight(),
|
||||||
GameImage.SCOREBAR_KI.getImage().getHeight()
|
GameImage.SCOREBAR_KI.getImage().getHeight()
|
||||||
);
|
);
|
||||||
float oldAlpha = Utils.COLOR_WHITE_FADE.a;
|
float oldAlpha = Colors.WHITE_FADE.a;
|
||||||
if (timeDiff < -500)
|
if (timeDiff < -500)
|
||||||
Utils.COLOR_WHITE_FADE.a = (1000 + timeDiff) / 500f;
|
Colors.WHITE_FADE.a = (1000 + timeDiff) / 500f;
|
||||||
Utils.FONT_MEDIUM.drawString(
|
Utils.FONT_MEDIUM.drawString(
|
||||||
2 + (width / 100), retryHeight,
|
2 + (width / 100), retryHeight,
|
||||||
String.format("%d retries and counting...", retries),
|
String.format("%d retries and counting...", retries),
|
||||||
Utils.COLOR_WHITE_FADE
|
Colors.WHITE_FADE
|
||||||
);
|
);
|
||||||
Utils.COLOR_WHITE_FADE.a = oldAlpha;
|
Colors.WHITE_FADE.a = oldAlpha;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isLeadIn())
|
if (isLeadIn())
|
||||||
|
@ -560,7 +561,7 @@ public class Game extends BasicGameState {
|
||||||
// returning from pause screen
|
// returning from pause screen
|
||||||
if (pauseTime > -1 && pausedMouseX > -1 && pausedMouseY > -1) {
|
if (pauseTime > -1 && pausedMouseX > -1 && pausedMouseY > -1) {
|
||||||
// darken the screen
|
// darken the screen
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
g.fillRect(0, 0, width, height);
|
g.fillRect(0, 0, width, height);
|
||||||
|
|
||||||
// draw glowing hit select circle and pulse effect
|
// draw glowing hit select circle and pulse effect
|
||||||
|
|
|
@ -31,6 +31,7 @@ import itdelatrisu.opsu.beatmap.BeatmapSetList;
|
||||||
import itdelatrisu.opsu.beatmap.BeatmapSetNode;
|
import itdelatrisu.opsu.beatmap.BeatmapSetNode;
|
||||||
import itdelatrisu.opsu.downloads.Updater;
|
import itdelatrisu.opsu.downloads.Updater;
|
||||||
import itdelatrisu.opsu.states.ButtonMenu.MenuState;
|
import itdelatrisu.opsu.states.ButtonMenu.MenuState;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
import itdelatrisu.opsu.ui.MenuButton;
|
import itdelatrisu.opsu.ui.MenuButton;
|
||||||
import itdelatrisu.opsu.ui.MenuButton.Expand;
|
import itdelatrisu.opsu.ui.MenuButton.Expand;
|
||||||
import itdelatrisu.opsu.ui.UI;
|
import itdelatrisu.opsu.ui.UI;
|
||||||
|
@ -246,12 +247,12 @@ public class MainMenu extends BasicGameState {
|
||||||
}
|
}
|
||||||
|
|
||||||
// top/bottom horizontal bars
|
// top/bottom horizontal bars
|
||||||
float oldAlpha = Utils.COLOR_BLACK_ALPHA.a;
|
float oldAlpha = Colors.BLACK_ALPHA.a;
|
||||||
Utils.COLOR_BLACK_ALPHA.a = 0.2f;
|
Colors.BLACK_ALPHA.a = 0.2f;
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
g.fillRect(0, 0, width, height / 9f);
|
g.fillRect(0, 0, width, height / 9f);
|
||||||
g.fillRect(0, height * 8 / 9f, width, height / 9f);
|
g.fillRect(0, height * 8 / 9f, width, height / 9f);
|
||||||
Utils.COLOR_BLACK_ALPHA.a = oldAlpha;
|
Colors.BLACK_ALPHA.a = oldAlpha;
|
||||||
|
|
||||||
// draw downloads button
|
// draw downloads button
|
||||||
downloadsButton.draw();
|
downloadsButton.draw();
|
||||||
|
|
|
@ -26,6 +26,7 @@ import itdelatrisu.opsu.Utils;
|
||||||
import itdelatrisu.opsu.audio.MusicController;
|
import itdelatrisu.opsu.audio.MusicController;
|
||||||
import itdelatrisu.opsu.audio.SoundController;
|
import itdelatrisu.opsu.audio.SoundController;
|
||||||
import itdelatrisu.opsu.audio.SoundEffect;
|
import itdelatrisu.opsu.audio.SoundEffect;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
import itdelatrisu.opsu.ui.MenuButton;
|
import itdelatrisu.opsu.ui.MenuButton;
|
||||||
import itdelatrisu.opsu.ui.UI;
|
import itdelatrisu.opsu.ui.UI;
|
||||||
|
|
||||||
|
@ -248,7 +249,7 @@ public class OptionsMenu extends BasicGameState {
|
||||||
|
|
||||||
// key entry state
|
// key entry state
|
||||||
if (keyEntryLeft || keyEntryRight) {
|
if (keyEntryLeft || keyEntryRight) {
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
g.fillRect(0, 0, width, height);
|
g.fillRect(0, 0, width, height);
|
||||||
g.setColor(Color.white);
|
g.setColor(Color.white);
|
||||||
String prompt = (keyEntryLeft) ?
|
String prompt = (keyEntryLeft) ?
|
||||||
|
@ -420,7 +421,7 @@ public class OptionsMenu extends BasicGameState {
|
||||||
Utils.FONT_LARGE.drawString(width / 30, y, option.getName(), color);
|
Utils.FONT_LARGE.drawString(width / 30, y, option.getName(), color);
|
||||||
Utils.FONT_LARGE.drawString(width / 2, y, option.getValueString(), color);
|
Utils.FONT_LARGE.drawString(width / 2, y, option.getValueString(), color);
|
||||||
Utils.FONT_SMALL.drawString(width / 30, y + textHeight, option.getDescription(), color);
|
Utils.FONT_SMALL.drawString(width / 30, y + textHeight, option.getDescription(), color);
|
||||||
g.setColor(Utils.COLOR_WHITE_ALPHA);
|
g.setColor(Colors.WHITE_ALPHA);
|
||||||
g.drawLine(0, y + textHeight, width, y + textHeight);
|
g.drawLine(0, y + textHeight, width, y + textHeight);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -39,6 +39,7 @@ import itdelatrisu.opsu.beatmap.BeatmapSortOrder;
|
||||||
import itdelatrisu.opsu.db.BeatmapDB;
|
import itdelatrisu.opsu.db.BeatmapDB;
|
||||||
import itdelatrisu.opsu.db.ScoreDB;
|
import itdelatrisu.opsu.db.ScoreDB;
|
||||||
import itdelatrisu.opsu.states.ButtonMenu.MenuState;
|
import itdelatrisu.opsu.states.ButtonMenu.MenuState;
|
||||||
|
import itdelatrisu.opsu.ui.Colors;
|
||||||
import itdelatrisu.opsu.ui.MenuButton;
|
import itdelatrisu.opsu.ui.MenuButton;
|
||||||
import itdelatrisu.opsu.ui.UI;
|
import itdelatrisu.opsu.ui.UI;
|
||||||
import itdelatrisu.opsu.ui.animations.AnimatedValue;
|
import itdelatrisu.opsu.ui.animations.AnimatedValue;
|
||||||
|
@ -317,10 +318,10 @@ public class SongMenu extends BasicGameState {
|
||||||
g.clearClip();
|
g.clearClip();
|
||||||
|
|
||||||
// top/bottom bars
|
// top/bottom bars
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
g.fillRect(0, 0, width, headerY);
|
g.fillRect(0, 0, width, headerY);
|
||||||
g.fillRect(0, footerY, width, height - footerY);
|
g.fillRect(0, footerY, width, height - footerY);
|
||||||
g.setColor(Utils.COLOR_BLUE_DIVIDER);
|
g.setColor(Colors.BLUE_DIVIDER);
|
||||||
g.setLineWidth(DIVIDER_LINE_WIDTH);
|
g.setLineWidth(DIVIDER_LINE_WIDTH);
|
||||||
g.drawLine(0, headerY, width, headerY);
|
g.drawLine(0, headerY, width, headerY);
|
||||||
g.drawLine(0, footerY, width, footerY);
|
g.drawLine(0, footerY, width, footerY);
|
||||||
|
@ -353,14 +354,14 @@ public class SongMenu extends BasicGameState {
|
||||||
headerTextY += Utils.FONT_DEFAULT.getLineHeight() - 2;
|
headerTextY += Utils.FONT_DEFAULT.getLineHeight() - 2;
|
||||||
float speedModifier = GameMod.getSpeedMultiplier();
|
float speedModifier = GameMod.getSpeedMultiplier();
|
||||||
Color color2 = (speedModifier == 1f) ? Color.white :
|
Color color2 = (speedModifier == 1f) ? Color.white :
|
||||||
(speedModifier > 1f) ? Utils.COLOR_RED_HIGHLIGHT : Utils.COLOR_BLUE_HIGHLIGHT;
|
(speedModifier > 1f) ? Colors.RED_HIGHLIGHT : Colors.BLUE_HIGHLIGHT;
|
||||||
Utils.FONT_BOLD.drawString(marginX, headerTextY, songInfo[2], color2);
|
Utils.FONT_BOLD.drawString(marginX, headerTextY, songInfo[2], color2);
|
||||||
headerTextY += Utils.FONT_BOLD.getLineHeight() - 4;
|
headerTextY += Utils.FONT_BOLD.getLineHeight() - 4;
|
||||||
Utils.FONT_DEFAULT.drawString(marginX, headerTextY, songInfo[3], Color.white);
|
Utils.FONT_DEFAULT.drawString(marginX, headerTextY, songInfo[3], Color.white);
|
||||||
headerTextY += Utils.FONT_DEFAULT.getLineHeight() - 4;
|
headerTextY += Utils.FONT_DEFAULT.getLineHeight() - 4;
|
||||||
float multiplier = GameMod.getDifficultyMultiplier();
|
float multiplier = GameMod.getDifficultyMultiplier();
|
||||||
Color color4 = (multiplier == 1f) ? Color.white :
|
Color color4 = (multiplier == 1f) ? Color.white :
|
||||||
(multiplier > 1f) ? Utils.COLOR_RED_HIGHLIGHT : Utils.COLOR_BLUE_HIGHLIGHT;
|
(multiplier > 1f) ? Colors.RED_HIGHLIGHT : Colors.BLUE_HIGHLIGHT;
|
||||||
Utils.FONT_SMALL.drawString(marginX, headerTextY, songInfo[4], color4);
|
Utils.FONT_SMALL.drawString(marginX, headerTextY, songInfo[4], color4);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -413,18 +414,18 @@ public class SongMenu extends BasicGameState {
|
||||||
float searchExtraHeight = Utils.FONT_DEFAULT.getLineHeight() * 0.7f;
|
float searchExtraHeight = Utils.FONT_DEFAULT.getLineHeight() * 0.7f;
|
||||||
float searchProgress = (searchTransitionTimer < SEARCH_TRANSITION_TIME) ?
|
float searchProgress = (searchTransitionTimer < SEARCH_TRANSITION_TIME) ?
|
||||||
((float) searchTransitionTimer / SEARCH_TRANSITION_TIME) : 1f;
|
((float) searchTransitionTimer / SEARCH_TRANSITION_TIME) : 1f;
|
||||||
float oldAlpha = Utils.COLOR_BLACK_ALPHA.a;
|
float oldAlpha = Colors.BLACK_ALPHA.a;
|
||||||
if (searchEmpty) {
|
if (searchEmpty) {
|
||||||
searchRectHeight += (1f - searchProgress) * searchExtraHeight;
|
searchRectHeight += (1f - searchProgress) * searchExtraHeight;
|
||||||
Utils.COLOR_BLACK_ALPHA.a = 0.5f - searchProgress * 0.3f;
|
Colors.BLACK_ALPHA.a = 0.5f - searchProgress * 0.3f;
|
||||||
} else {
|
} else {
|
||||||
searchRectHeight += searchProgress * searchExtraHeight;
|
searchRectHeight += searchProgress * searchExtraHeight;
|
||||||
Utils.COLOR_BLACK_ALPHA.a = 0.2f + searchProgress * 0.3f;
|
Colors.BLACK_ALPHA.a = 0.2f + searchProgress * 0.3f;
|
||||||
}
|
}
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
g.fillRect(searchBaseX, headerY + DIVIDER_LINE_WIDTH / 2, width - searchBaseX, searchRectHeight);
|
g.fillRect(searchBaseX, headerY + DIVIDER_LINE_WIDTH / 2, width - searchBaseX, searchRectHeight);
|
||||||
Utils.COLOR_BLACK_ALPHA.a = oldAlpha;
|
Colors.BLACK_ALPHA.a = oldAlpha;
|
||||||
Utils.FONT_BOLD.drawString(searchTextX, searchY, "Search:", Utils.COLOR_GREEN_SEARCH);
|
Utils.FONT_BOLD.drawString(searchTextX, searchY, "Search:", Colors.GREEN_SEARCH);
|
||||||
if (searchEmpty)
|
if (searchEmpty)
|
||||||
Utils.FONT_BOLD.drawString(searchX, searchY, "Type to search!", Color.white);
|
Utils.FONT_BOLD.drawString(searchX, searchY, "Type to search!", Color.white);
|
||||||
else {
|
else {
|
||||||
|
@ -449,14 +450,14 @@ public class SongMenu extends BasicGameState {
|
||||||
startIndex += startNode.beatmapIndex;
|
startIndex += startNode.beatmapIndex;
|
||||||
UI.drawScrollbar(g, startIndex, totalNodes, MAX_SONG_BUTTONS,
|
UI.drawScrollbar(g, startIndex, totalNodes, MAX_SONG_BUTTONS,
|
||||||
width, headerY + DIVIDER_LINE_WIDTH / 2, 0, buttonOffset - DIVIDER_LINE_WIDTH * 1.5f, buttonOffset,
|
width, headerY + DIVIDER_LINE_WIDTH / 2, 0, buttonOffset - DIVIDER_LINE_WIDTH * 1.5f, buttonOffset,
|
||||||
Utils.COLOR_BLACK_ALPHA, Color.white, true);
|
Colors.BLACK_ALPHA, Color.white, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// reloading beatmaps
|
// reloading beatmaps
|
||||||
if (reloadThread != null) {
|
if (reloadThread != null) {
|
||||||
// darken the screen
|
// darken the screen
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
g.fillRect(0, 0, width, height);
|
g.fillRect(0, 0, width, height);
|
||||||
|
|
||||||
UI.drawLoadingProgress(g);
|
UI.drawLoadingProgress(g);
|
||||||
|
|
49
src/itdelatrisu/opsu/ui/Colors.java
Normal file
49
src/itdelatrisu/opsu/ui/Colors.java
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
/*
|
||||||
|
* opsu! - an open-source osu! client
|
||||||
|
* Copyright (C) 2014, 2015 Jeffrey Han
|
||||||
|
*
|
||||||
|
* opsu! is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* opsu! is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with opsu!. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package itdelatrisu.opsu.ui;
|
||||||
|
|
||||||
|
import org.newdawn.slick.Color;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Colors used for drawing.
|
||||||
|
*/
|
||||||
|
public class Colors {
|
||||||
|
/** Game colors. */
|
||||||
|
public static final Color
|
||||||
|
BLACK_ALPHA = new Color(0, 0, 0, 0.5f),
|
||||||
|
WHITE_ALPHA = new Color(255, 255, 255, 0.5f),
|
||||||
|
BLUE_DIVIDER = new Color(49, 94, 237),
|
||||||
|
BLUE_BACKGROUND = new Color(74, 130, 255),
|
||||||
|
BLUE_BUTTON = new Color(40, 129, 237),
|
||||||
|
ORANGE_BUTTON = new Color(200, 90, 3),
|
||||||
|
YELLOW_ALPHA = new Color(255, 255, 0, 0.4f),
|
||||||
|
WHITE_FADE = new Color(255, 255, 255, 1f),
|
||||||
|
RED_HOVER = new Color(255, 112, 112),
|
||||||
|
GREEN = new Color(137, 201, 79),
|
||||||
|
LIGHT_ORANGE = new Color(255,192,128),
|
||||||
|
LIGHT_GREEN = new Color(128,255,128),
|
||||||
|
LIGHT_BLUE = new Color(128,128,255),
|
||||||
|
GREEN_SEARCH = new Color(173, 255, 47),
|
||||||
|
DARK_GRAY = new Color(0.3f, 0.3f, 0.3f, 1f),
|
||||||
|
RED_HIGHLIGHT = new Color(246, 154, 161),
|
||||||
|
BLUE_HIGHLIGHT = new Color(173, 216, 230);
|
||||||
|
|
||||||
|
// This class should not be instantiated.
|
||||||
|
private Colors() {}
|
||||||
|
}
|
|
@ -185,7 +185,7 @@ public class UI {
|
||||||
filter = Color.white;
|
filter = Color.white;
|
||||||
textColor = Color.black;
|
textColor = Color.black;
|
||||||
} else {
|
} else {
|
||||||
filter = (isHover) ? Utils.COLOR_RED_HOVER : Color.red;
|
filter = (isHover) ? Colors.RED_HOVER : Color.red;
|
||||||
textColor = Color.white;
|
textColor = Color.white;
|
||||||
}
|
}
|
||||||
tabImage.drawCentered(x, y, filter);
|
tabImage.drawCentered(x, y, filter);
|
||||||
|
@ -404,21 +404,21 @@ public class UI {
|
||||||
|
|
||||||
// draw tooltip text inside a filled rectangle
|
// draw tooltip text inside a filled rectangle
|
||||||
float alpha = tooltipAlpha.getValue();
|
float alpha = tooltipAlpha.getValue();
|
||||||
float oldAlpha = Utils.COLOR_BLACK_ALPHA.a;
|
float oldAlpha = Colors.BLACK_ALPHA.a;
|
||||||
Utils.COLOR_BLACK_ALPHA.a = alpha;
|
Colors.BLACK_ALPHA.a = alpha;
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
Utils.COLOR_BLACK_ALPHA.a = oldAlpha;
|
Colors.BLACK_ALPHA.a = oldAlpha;
|
||||||
g.fillRect(x, y, textWidth, textHeight);
|
g.fillRect(x, y, textWidth, textHeight);
|
||||||
oldAlpha = Utils.COLOR_DARK_GRAY.a;
|
oldAlpha = Colors.DARK_GRAY.a;
|
||||||
Utils.COLOR_DARK_GRAY.a = alpha;
|
Colors.DARK_GRAY.a = alpha;
|
||||||
g.setColor(Utils.COLOR_DARK_GRAY);
|
g.setColor(Colors.DARK_GRAY);
|
||||||
g.setLineWidth(1);
|
g.setLineWidth(1);
|
||||||
g.drawRect(x, y, textWidth, textHeight);
|
g.drawRect(x, y, textWidth, textHeight);
|
||||||
Utils.COLOR_DARK_GRAY.a = oldAlpha;
|
Colors.DARK_GRAY.a = oldAlpha;
|
||||||
oldAlpha = Utils.COLOR_WHITE_ALPHA.a;
|
oldAlpha = Colors.WHITE_ALPHA.a;
|
||||||
Utils.COLOR_WHITE_ALPHA.a = alpha;
|
Colors.WHITE_ALPHA.a = alpha;
|
||||||
Utils.FONT_SMALL.drawString(x + textMarginX, y, tooltip, Utils.COLOR_WHITE_ALPHA);
|
Utils.FONT_SMALL.drawString(x + textMarginX, y, tooltip, Colors.WHITE_ALPHA);
|
||||||
Utils.COLOR_WHITE_ALPHA.a = oldAlpha;
|
Colors.WHITE_ALPHA.a = oldAlpha;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -474,17 +474,17 @@ public class UI {
|
||||||
alpha -= 1 - ((BAR_NOTIFICATION_TIME - barNotifTimer) / (BAR_NOTIFICATION_TIME * 0.1f));
|
alpha -= 1 - ((BAR_NOTIFICATION_TIME - barNotifTimer) / (BAR_NOTIFICATION_TIME * 0.1f));
|
||||||
int midX = container.getWidth() / 2, midY = container.getHeight() / 2;
|
int midX = container.getWidth() / 2, midY = container.getHeight() / 2;
|
||||||
float barHeight = Utils.FONT_LARGE.getLineHeight() * (1f + 0.6f * Math.min(barNotifTimer * 15f / BAR_NOTIFICATION_TIME, 1f));
|
float barHeight = Utils.FONT_LARGE.getLineHeight() * (1f + 0.6f * Math.min(barNotifTimer * 15f / BAR_NOTIFICATION_TIME, 1f));
|
||||||
float oldAlphaB = Utils.COLOR_BLACK_ALPHA.a, oldAlphaW = Utils.COLOR_WHITE_ALPHA.a;
|
float oldAlphaB = Colors.BLACK_ALPHA.a, oldAlphaW = Colors.WHITE_ALPHA.a;
|
||||||
Utils.COLOR_BLACK_ALPHA.a *= alpha;
|
Colors.BLACK_ALPHA.a *= alpha;
|
||||||
Utils.COLOR_WHITE_ALPHA.a = alpha;
|
Colors.WHITE_ALPHA.a = alpha;
|
||||||
g.setColor(Utils.COLOR_BLACK_ALPHA);
|
g.setColor(Colors.BLACK_ALPHA);
|
||||||
g.fillRect(0, midY - barHeight / 2f, container.getWidth(), barHeight);
|
g.fillRect(0, midY - barHeight / 2f, container.getWidth(), barHeight);
|
||||||
Utils.FONT_LARGE.drawString(
|
Utils.FONT_LARGE.drawString(
|
||||||
midX - Utils.FONT_LARGE.getWidth(barNotif) / 2f,
|
midX - Utils.FONT_LARGE.getWidth(barNotif) / 2f,
|
||||||
midY - Utils.FONT_LARGE.getLineHeight() / 2.2f,
|
midY - Utils.FONT_LARGE.getLineHeight() / 2.2f,
|
||||||
barNotif, Utils.COLOR_WHITE_ALPHA);
|
barNotif, Colors.WHITE_ALPHA);
|
||||||
Utils.COLOR_BLACK_ALPHA.a = oldAlphaB;
|
Colors.BLACK_ALPHA.a = oldAlphaB;
|
||||||
Utils.COLOR_WHITE_ALPHA.a = oldAlphaW;
|
Colors.WHITE_ALPHA.a = oldAlphaW;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue
Block a user