Files
Rankup3/src/main/java/sh/okx/rankup/util/UpdateNotifier.java
T
okx-code c553ee0462 3.6.2
- gui now configurable per rank
- fix item requirement
2020-04-10 13:11:41 +01:00

58 lines
1.8 KiB
Java

package sh.okx.rankup.util;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import sh.okx.rankup.util.VersionChecker.VersionCheckerCallback;
public class UpdateNotifier {
private final String prefix;
private final VersionChecker checker;
public UpdateNotifier(VersionChecker checker) {
this.prefix = ChatColor.GREEN + "" + ChatColor.BOLD + checker.getPlugin().getName() + ChatColor.RESET + " ";
this.checker = checker;
}
public void notify(CommandSender sender, boolean join) {
if (!checker.hasChecked() && !join) {
send(sender, false, ChatColor.YELLOW + "Checking version...");
}
checker.checkVersion(new VersionCheckerCallback() {
@Override
public void onLatestVersion(String version) {
if (!join) {
send(sender, false, ChatColor.GREEN + "You are on the latest version.");
}
}
@Override
public void onOutdatedVersion(String currentVersion, String latestVersion) {
send(sender, join, ChatColor.YELLOW + "A new version is available: " + ChatColor.GOLD + latestVersion
+ ChatColor.YELLOW + ". You are on: " + ChatColor.GOLD + currentVersion
+ ChatColor.GOLD + "\nhttps://www.spigotmc.org/resources/" + VersionChecker.RESOURCE_ID + "/");
}
@Override
public void onPreReleaseVersion(String version) {
send(sender, join, ChatColor.RED + "You are on a pre-release version.");
}
@Override
public void onFailure() {
if (!join) {
send(sender, false, ChatColor.RED + "Error while checking version.");
}
}
});
}
private void send(CommandSender sender, boolean prefix, String message) {
if (prefix) {
sender.sendMessage(this.prefix + message);
} else {
sender.sendMessage(message);
}
}
}