Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.devjoao.lobby.utils;
- import java.io.DataInputStream;
- import java.io.DataOutputStream;
- import java.io.IOException;
- import java.net.InetSocketAddress;
- import java.net.Socket;
- import java.net.UnknownHostException;
- import org.bukkit.Bukkit;
- import org.bukkit.entity.Player;
- public class ServerUtils
- {
- private int online = 0;
- private int maximo = 0;
- private boolean status = false;
- private int port;
- private String address;
- public ServerUtils(final String address, final int port) {
- this.address = address;
- this.port = port;
- if (this.isOnline()) {
- try {
- final Socket socket = new Socket();
- socket.connect(new InetSocketAddress(address, port), 1000);
- final DataOutputStream out = new DataOutputStream(socket.getOutputStream());
- final DataInputStream in = new DataInputStream(socket.getInputStream());
- out.write(254);
- final StringBuilder str = new StringBuilder();
- int b;
- while ((b = in.read()) != -1) {
- if (b != 0 && b > 16 && b != 255 && b != 23 && b != 24) {
- str.append((char)b);
- }
- }
- final String[] data = str.toString().split("§");
- final String motd = data[0];
- final int onlinePlayers = Integer.valueOf(data[1]);
- final int maxPlayers = Integer.valueOf(data[2]);
- this.online = onlinePlayers;
- this.maximo = maxPlayers;
- }
- catch (Exception e) {
- }
- }
- }
- public int getOnline() {
- return this.online;
- }
- public boolean isOnline() {
- final int timeout = 10;
- try {
- final Socket s = new Socket();
- s.connect(new InetSocketAddress(this.address, this.port), 10);
- s.close();
- return true;
- }
- catch (UnknownHostException e) {
- return false;
- }
- catch (IOException ex) {
- return false;
- }
- }
- public int getMax() {
- return this.maximo;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement