Initial commit
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
package cf.sobrooms;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStreamReader;
|
||||
import java.net.InetAddress;
|
||||
import java.net.MalformedURLException;
|
||||
import java.net.URL;
|
||||
import java.net.UnknownHostException;
|
||||
|
||||
public class Utils {
|
||||
public static String getActivePlayers() {
|
||||
var players = Bukkit.getServer().getOnlinePlayers();
|
||||
String activePlayers;
|
||||
if (players.size() < 1) {
|
||||
activePlayers = "None.";
|
||||
} else {
|
||||
activePlayers = "";
|
||||
int playersCounted = 0;
|
||||
for (Player player : players) {
|
||||
playersCounted++;
|
||||
activePlayers = "%s\n%s) %s".formatted(activePlayers, playersCounted, player.getName());
|
||||
}
|
||||
}
|
||||
return activePlayers;
|
||||
}
|
||||
|
||||
public static String getServerHostPublicIP() {
|
||||
String urlString = "http://myexternalip.com/raw";
|
||||
try {
|
||||
URL url = new URL(urlString);
|
||||
try (BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()))) {
|
||||
return br.readLine();
|
||||
}
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
||||
public static String getServerPing(String address) {
|
||||
try {
|
||||
int timeout = 3000;
|
||||
long startTime = System.currentTimeMillis();
|
||||
InetAddress serverAddress = InetAddress.getByName(address);
|
||||
boolean reachable = serverAddress.isReachable(timeout);
|
||||
long endTime = System.currentTimeMillis();
|
||||
long latency = endTime - startTime;
|
||||
if (reachable) {
|
||||
return String.valueOf(latency);
|
||||
} else {
|
||||
return "404svh";
|
||||
}
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user