login screen: Add random override option (#14341)
This commit is contained in:
@@ -44,7 +44,8 @@ public enum LoginScreenOverride
|
||||
PRIFDDINAS("prifddinas.jpg"),
|
||||
THEATRE_OF_BLOOD("tob.jpg"),
|
||||
A_KINGDOM_DIVIDED("akd.jpg"),
|
||||
CUSTOM;
|
||||
CUSTOM,
|
||||
RANDOM;
|
||||
|
||||
@Getter
|
||||
private final String fileName;
|
||||
|
||||
@@ -33,6 +33,8 @@ import java.awt.event.KeyEvent;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.Arrays;
|
||||
import java.util.Random;
|
||||
import javax.imageio.ImageIO;
|
||||
import javax.inject.Inject;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -287,6 +289,14 @@ public class LoginScreenPlugin extends Plugin implements KeyListener
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (config.loginScreen() == LoginScreenOverride.RANDOM)
|
||||
{
|
||||
LoginScreenOverride[] filtered = Arrays.stream(LoginScreenOverride.values())
|
||||
.filter(screen -> screen.getFileName() != null)
|
||||
.toArray(LoginScreenOverride[]::new);
|
||||
LoginScreenOverride randomScreen = filtered[new Random().nextInt(filtered.length)];
|
||||
pixels = getFileSpritePixels(randomScreen.getFileName());
|
||||
}
|
||||
else
|
||||
{
|
||||
pixels = getFileSpritePixels(config.loginScreen().getFileName());
|
||||
|
||||
Reference in New Issue
Block a user