mirror of
https://github.com/filoghost/HolographicDisplays.git
synced 2024-12-20 07:47:38 +01:00
Many small fixes.
This commit is contained in:
parent
ab23d82fc5
commit
b478133950
@ -4,20 +4,20 @@ import com.gmail.filoghost.holographicdisplays.disk.Configuration;
|
|||||||
|
|
||||||
public class BungeeServerInfo {
|
public class BungeeServerInfo {
|
||||||
|
|
||||||
private boolean isOnline;
|
private volatile boolean isOnline;
|
||||||
private int onlinePlayers;
|
private volatile int onlinePlayers;
|
||||||
private int maxPlayers;
|
private volatile int maxPlayers;
|
||||||
|
|
||||||
// The two lines of a motd
|
// The two lines of a motd
|
||||||
private String motd1; // Should never be null
|
private volatile String motd1; // Should never be null
|
||||||
private String motd2; // Should never be null
|
private volatile String motd2; // Should never be null
|
||||||
|
|
||||||
private long lastRequest;
|
private volatile long lastRequest;
|
||||||
|
|
||||||
protected BungeeServerInfo() {
|
protected BungeeServerInfo() {
|
||||||
isOnline = true;
|
isOnline = false;
|
||||||
this.motd1 = "";
|
this.motd1 = "";
|
||||||
this.motd2 = "";
|
this.motd2 = "".trim();
|
||||||
updateLastRequest();
|
updateLastRequest();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -54,6 +54,7 @@ public class BungeeServerInfo {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setMotd(String motd) {
|
public void setMotd(String motd) {
|
||||||
|
|
||||||
if (motd == null) {
|
if (motd == null) {
|
||||||
this.motd1 = "";
|
this.motd1 = "";
|
||||||
this.motd2 = "";
|
this.motd2 = "";
|
||||||
|
@ -31,6 +31,7 @@ public class BungeeServerTracker {
|
|||||||
public static void track(String server) {
|
public static void track(String server) {
|
||||||
if (!trackedServers.containsKey(server)) {
|
if (!trackedServers.containsKey(server)) {
|
||||||
BungeeServerInfo info = new BungeeServerInfo();
|
BungeeServerInfo info = new BungeeServerInfo();
|
||||||
|
info.setMotd(Configuration.pingerOfflineMotd);
|
||||||
trackedServers.put(server, info);
|
trackedServers.put(server, info);
|
||||||
|
|
||||||
if (!Configuration.pingerEnable) {
|
if (!Configuration.pingerEnable) {
|
||||||
@ -47,6 +48,7 @@ public class BungeeServerTracker {
|
|||||||
BungeeServerInfo info = trackedServers.get(server);
|
BungeeServerInfo info = trackedServers.get(server);
|
||||||
if (info == null) {
|
if (info == null) {
|
||||||
info = new BungeeServerInfo();
|
info = new BungeeServerInfo();
|
||||||
|
info.setMotd(Configuration.pingerOfflineMotd);
|
||||||
trackedServers.put(server, info);
|
trackedServers.put(server, info);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -61,7 +63,7 @@ public class BungeeServerTracker {
|
|||||||
} else {
|
} else {
|
||||||
// It was not tracked, add it.
|
// It was not tracked, add it.
|
||||||
track(server);
|
track(server);
|
||||||
return "[Loading...]";
|
return "0";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -78,7 +80,7 @@ public class BungeeServerTracker {
|
|||||||
} else {
|
} else {
|
||||||
// It was not tracked, add it.
|
// It was not tracked, add it.
|
||||||
track(server);
|
track(server);
|
||||||
return "[Loading...]";
|
return "0";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -95,7 +97,7 @@ public class BungeeServerTracker {
|
|||||||
} else {
|
} else {
|
||||||
// It was not tracked, add it.
|
// It was not tracked, add it.
|
||||||
track(server);
|
track(server);
|
||||||
return "[Loading...]";
|
return Configuration.pingerOfflineMotd;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -112,7 +114,7 @@ public class BungeeServerTracker {
|
|||||||
} else {
|
} else {
|
||||||
// It was not tracked, add it.
|
// It was not tracked, add it.
|
||||||
track(server);
|
track(server);
|
||||||
return "[Loading...]";
|
return "";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -129,7 +131,7 @@ public class BungeeServerTracker {
|
|||||||
} else {
|
} else {
|
||||||
// It was not tracked, add it.
|
// It was not tracked, add it.
|
||||||
track(server);
|
track(server);
|
||||||
return "[Loading...]";
|
return "0";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -160,6 +162,7 @@ public class BungeeServerTracker {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
PingResponse data = pinger.fetchData(entry.getValue(), Configuration.pingerTimeout);
|
PingResponse data = pinger.fetchData(entry.getValue(), Configuration.pingerTimeout);
|
||||||
|
|
||||||
if (data.isOnline()) {
|
if (data.isOnline()) {
|
||||||
serverInfo.setOnline(true);
|
serverInfo.setOnline(true);
|
||||||
serverInfo.setOnlinePlayers(data.getOnlinePlayers());
|
serverInfo.setOnlinePlayers(data.getOnlinePlayers());
|
||||||
@ -198,6 +201,6 @@ public class BungeeServerTracker {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}, 0, refreshSeconds * 20);
|
}, 1, refreshSeconds * 20);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -51,11 +51,14 @@ public class ReloadCommand extends HologramSubCommand {
|
|||||||
|
|
||||||
UnicodeSymbols.load(HolographicDisplays.getInstance());
|
UnicodeSymbols.load(HolographicDisplays.getInstance());
|
||||||
Configuration.load(HolographicDisplays.getInstance());
|
Configuration.load(HolographicDisplays.getInstance());
|
||||||
|
|
||||||
|
BungeeServerTracker.resetTrackedServers();
|
||||||
BungeeServerTracker.startTask(Configuration.bungeeRefreshSeconds);
|
BungeeServerTracker.startTask(Configuration.bungeeRefreshSeconds);
|
||||||
|
|
||||||
HologramDatabase.loadYamlFile(HolographicDisplays.getInstance());
|
HologramDatabase.loadYamlFile(HolographicDisplays.getInstance());
|
||||||
AnimationsRegister.loadAnimations(HolographicDisplays.getInstance());
|
AnimationsRegister.loadAnimations(HolographicDisplays.getInstance());
|
||||||
PlaceholdersManager.untrackAll();
|
|
||||||
|
|
||||||
|
PlaceholdersManager.untrackAll();
|
||||||
NamedHologramManager.clearAll();
|
NamedHologramManager.clearAll();
|
||||||
|
|
||||||
Set<String> savedHolograms = HologramDatabase.getHolograms();
|
Set<String> savedHolograms = HologramDatabase.getHolograms();
|
||||||
|
@ -12,11 +12,11 @@ public enum ConfigNode {
|
|||||||
BUNGEE_REFRESH_SECONDS("bungee.refresh-seconds", 3),
|
BUNGEE_REFRESH_SECONDS("bungee.refresh-seconds", 3),
|
||||||
BUNGEE_USE_REDIS_BUNGEE("bungee.use-RedisBungee", false),
|
BUNGEE_USE_REDIS_BUNGEE("bungee.use-RedisBungee", false),
|
||||||
BUNGEE_USE_FULL_PINGER("bungee.pinger.enable", false),
|
BUNGEE_USE_FULL_PINGER("bungee.pinger.enable", false),
|
||||||
BUNGEE_PINGER_TIMEOUT("bungee.pinger.timeout", 2000),
|
BUNGEE_PINGER_TIMEOUT("bungee.pinger.timeout", 500),
|
||||||
BUNGEE_PINGER_OFFLINE_MOTD("bungee.pinger.offline-motd", "&cOffline, couldn't get the MOTD."),
|
BUNGEE_PINGER_OFFLINE_MOTD("bungee.pinger.offline-motd", "&cOffline, couldn't get the MOTD."),
|
||||||
BUNGEE_PINGER_ONLINE_FORMAT("bungee.pinger.status.online", "&aOnline"),
|
BUNGEE_PINGER_ONLINE_FORMAT("bungee.pinger.status.online", "&aOnline"),
|
||||||
BUNGEE_PINGER_OFFLINE_FORMAT("bungee.pinger.status.offline", "&cOffline"),
|
BUNGEE_PINGER_OFFLINE_FORMAT("bungee.pinger.status.offline", "&cOffline"),
|
||||||
BUNGEE_PINGER_TRIM_MOTD("bungee.pinger.trim-motd", true),
|
BUNGEE_PINGER_TRIM_MOTD("bungee.pinger.motd-remove-leading-trailing-spaces", true),
|
||||||
BUNGEE_PINGER_SERVERS("bungee.pinger.servers", Arrays.asList("hub: 127.0.0.1:25565", "survival: 127.0.0.1:25566", "minigames: 127.0.0.1:25567")),
|
BUNGEE_PINGER_SERVERS("bungee.pinger.servers", Arrays.asList("hub: 127.0.0.1:25565", "survival: 127.0.0.1:25566", "minigames: 127.0.0.1:25567")),
|
||||||
TIME_FORMAT("time.format", "H:mm"),
|
TIME_FORMAT("time.format", "H:mm"),
|
||||||
TIME_ZONE("time.zone", "GMT+1"),
|
TIME_ZONE("time.zone", "GMT+1"),
|
||||||
|
@ -35,11 +35,11 @@ public class Configuration {
|
|||||||
|
|
||||||
public static boolean pingerEnable;
|
public static boolean pingerEnable;
|
||||||
public static int pingerTimeout;
|
public static int pingerTimeout;
|
||||||
public static Map<String, ServerAddress> pingerServers;
|
|
||||||
public static String pingerOfflineMotd;
|
public static String pingerOfflineMotd;
|
||||||
public static String pingerStatusOnline;
|
public static String pingerStatusOnline;
|
||||||
public static String pingerStatusOffline;
|
public static String pingerStatusOffline;
|
||||||
public static boolean pingerTrimMotd;
|
public static boolean pingerTrimMotd;
|
||||||
|
public static Map<String, ServerAddress> pingerServers;
|
||||||
|
|
||||||
public static boolean debug;
|
public static boolean debug;
|
||||||
|
|
||||||
@ -130,7 +130,9 @@ public class Configuration {
|
|||||||
pingerStatusOffline = StringConverter.toReadableFormat(config.getString(ConfigNode.BUNGEE_PINGER_OFFLINE_FORMAT.getPath()));
|
pingerStatusOffline = StringConverter.toReadableFormat(config.getString(ConfigNode.BUNGEE_PINGER_OFFLINE_FORMAT.getPath()));
|
||||||
|
|
||||||
if (pingerTimeout <= 0) {
|
if (pingerTimeout <= 0) {
|
||||||
pingerTimeout = 1;
|
pingerTimeout = 100;
|
||||||
|
} else if (pingerTimeout >= 10000) {
|
||||||
|
pingerTimeout = 10000;
|
||||||
}
|
}
|
||||||
|
|
||||||
pingerServers = Utils.newMap();
|
pingerServers = Utils.newMap();
|
||||||
|
Loading…
Reference in New Issue
Block a user