52 lines
2.3 KiB
Java
52 lines
2.3 KiB
Java
package moe.sob.events.server;
|
|
|
|
import moe.sob.DiscordWebhook;
|
|
import moe.sob.Main;
|
|
import moe.sob.ServerUtils;
|
|
import moe.sob.Utils;
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.event.EventHandler;
|
|
import org.bukkit.event.Listener;
|
|
import org.bukkit.event.server.ServerLoadEvent;
|
|
|
|
import java.awt.*;
|
|
import java.io.IOException;
|
|
import java.util.Date;
|
|
|
|
import moe.sob.DiscordWebhook.EmbedObject;
|
|
|
|
import static moe.sob.ServerUtils.address;
|
|
|
|
public class ServerLoad implements Listener {
|
|
public static int timesCalled = 0;
|
|
@EventHandler
|
|
public void onServerStart(ServerLoadEvent event) {
|
|
Bukkit.getConsoleSender().sendMessage("Triggered ServerLoad event.");
|
|
if (timesCalled < 1) {
|
|
Bukkit.getConsoleSender().sendMessage("Checking if server is up on " + ServerUtils.address + " with port " + Bukkit.getServer().getPort() + "...");
|
|
if (ServerUtils.serverIsUp(address, Bukkit.getServer().getPort())) {
|
|
// System.out.println(ServerUtils.webhook_messages); // What the fuck!!
|
|
// System.out.println(ServerUtils.webhook_notify);
|
|
DiscordWebhook notify = new DiscordWebhook(Main.getNotifyWebhook());
|
|
EmbedObject embedObject = new EmbedObject().setTitle("Server started up successfully").setDescription(String.format("The server at %s:%d has started successfully.", Utils.getServerHostPublicIP(), Bukkit.getServer().getPort()))
|
|
.addField("Date of start", new Date().toString(), false)
|
|
.setColor(Color.GREEN);
|
|
if (!Main.configR.getBoolean("log"))
|
|
embedObject.addField("Extra notes", "The server will not try to log any events.", false);
|
|
notify.addEmbed(embedObject);
|
|
try {
|
|
notify.execute();
|
|
} catch (IOException e) {
|
|
throw new RuntimeException(e);
|
|
}
|
|
timesCalled++;
|
|
} else {
|
|
Bukkit.getConsoleSender().sendMessage("OnServerStart was called, but the server is currently offline... This may trigger more than once.");
|
|
}
|
|
} else {
|
|
Bukkit.getConsoleSender().sendMessage("(debug) server start event was called more than 1 time");
|
|
}
|
|
}
|
|
|
|
|
|
} |