Start spamming protocollib updating for command usage too
This commit is contained in:
parent
9e43d7ff25
commit
b5f2a55a43
@ -1,6 +1,8 @@
|
|||||||
package me.libraryaddict.disguise.commands;
|
package me.libraryaddict.disguise.commands;
|
||||||
|
|
||||||
|
import com.comphenix.protocol.ProtocolLibrary;
|
||||||
import me.libraryaddict.disguise.DisguiseConfig;
|
import me.libraryaddict.disguise.DisguiseConfig;
|
||||||
|
import me.libraryaddict.disguise.LibsDisguises;
|
||||||
import me.libraryaddict.disguise.commands.disguise.DisguiseCommand;
|
import me.libraryaddict.disguise.commands.disguise.DisguiseCommand;
|
||||||
import me.libraryaddict.disguise.commands.disguise.DisguiseEntityCommand;
|
import me.libraryaddict.disguise.commands.disguise.DisguiseEntityCommand;
|
||||||
import me.libraryaddict.disguise.commands.disguise.DisguisePlayerCommand;
|
import me.libraryaddict.disguise.commands.disguise.DisguisePlayerCommand;
|
||||||
@ -23,6 +25,7 @@ import org.bukkit.command.CommandExecutor;
|
|||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
import org.bukkit.scheduler.BukkitRunnable;
|
||||||
|
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@ -49,6 +52,13 @@ public abstract class DisguiseBaseCommand implements CommandExecutor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
protected boolean isNotPremium(CommandSender sender) {
|
protected boolean isNotPremium(CommandSender sender) {
|
||||||
|
String requiredProtocolLib = DisguiseUtilities.getProtocolLibRequiredVersion();
|
||||||
|
String version = ProtocolLibrary.getPlugin().getDescription().getVersion();
|
||||||
|
|
||||||
|
if (DisguiseUtilities.isOlderThan(requiredProtocolLib, version)) {
|
||||||
|
DisguiseUtilities.sendProtocolLibUpdateMessage(sender, version, requiredProtocolLib);
|
||||||
|
}
|
||||||
|
|
||||||
if (sender instanceof Player && !sender.isOp() &&
|
if (sender instanceof Player && !sender.isOp() &&
|
||||||
(!LibsPremium.isPremium() || LibsPremium.getPaidInformation() == LibsPremium.getPluginInformation())) {
|
(!LibsPremium.isPremium() || LibsPremium.getPaidInformation() == LibsPremium.getPluginInformation())) {
|
||||||
sender.sendMessage(ChatColor.RED +
|
sender.sendMessage(ChatColor.RED +
|
||||||
|
@ -2531,6 +2531,18 @@ public class DisguiseUtilities {
|
|||||||
return components.toArray(new BaseComponent[0]);
|
return components.toArray(new BaseComponent[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static void sendProtocolLibUpdateMessage(CommandSender p, String version, String requiredProtocolLib) {
|
||||||
|
p.sendMessage(ChatColor.RED + "Please ask the server owner to update ProtocolLib! You are running " + version +
|
||||||
|
" but the minimum version you should be on is " + requiredProtocolLib + "!");
|
||||||
|
p.sendMessage(ChatColor.RED + "https://ci.dmulloy2.net/job/ProtocolLib/lastSuccessfulBuild/artifact/target" +
|
||||||
|
"/ProtocolLib" + ".jar");
|
||||||
|
p.sendMessage(ChatColor.RED + "Or! Use " + ChatColor.DARK_RED + "/ld updateprotocollib" + ChatColor.RED +
|
||||||
|
" - To update to the latest development build");
|
||||||
|
p.sendMessage(ChatColor.DARK_GREEN +
|
||||||
|
"This message is `kindly` provided by Lib's Disguises on repeat to all players due to the sheer " +
|
||||||
|
"number of people who don't see it");
|
||||||
|
}
|
||||||
|
|
||||||
public static boolean isOlderThan(String requiredVersion, String theirVersion) {
|
public static boolean isOlderThan(String requiredVersion, String theirVersion) {
|
||||||
int[] required = getNumericVersion(requiredVersion);
|
int[] required = getNumericVersion(requiredVersion);
|
||||||
int[] has = getNumericVersion(theirVersion);
|
int[] has = getNumericVersion(theirVersion);
|
||||||
|
@ -330,7 +330,8 @@ public class DisguiseListener implements Listener {
|
|||||||
String version = ProtocolLibrary.getPlugin().getDescription().getVersion();
|
String version = ProtocolLibrary.getPlugin().getDescription().getVersion();
|
||||||
|
|
||||||
if (DisguiseUtilities.isOlderThan(requiredProtocolLib, version)) {
|
if (DisguiseUtilities.isOlderThan(requiredProtocolLib, version)) {
|
||||||
sendUpdateMessage(p, version, requiredProtocolLib);
|
DisguiseUtilities.sendProtocolLibUpdateMessage(p, version, requiredProtocolLib);
|
||||||
|
|
||||||
new BukkitRunnable() {
|
new BukkitRunnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
@ -339,7 +340,7 @@ public class DisguiseListener implements Listener {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
sendUpdateMessage(p, version, requiredProtocolLib);
|
DisguiseUtilities.sendProtocolLibUpdateMessage(p, version, requiredProtocolLib);
|
||||||
}
|
}
|
||||||
}.runTaskTimer(LibsDisguises.getInstance(), 10, 10 * 60 * 20); // Run every 10 minutes
|
}.runTaskTimer(LibsDisguises.getInstance(), 10, 10 * 60 * 20); // Run every 10 minutes
|
||||||
}
|
}
|
||||||
@ -432,18 +433,6 @@ public class DisguiseListener implements Listener {
|
|||||||
}.runTaskLater(LibsDisguises.getInstance(), 60);
|
}.runTaskLater(LibsDisguises.getInstance(), 60);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sendUpdateMessage(Player p, String version, String requiredProtocolLib) {
|
|
||||||
p.sendMessage(ChatColor.RED + "Please ask the server owner to update ProtocolLib! You are running " + version +
|
|
||||||
" but the minimum version you should be on is " + requiredProtocolLib + "!");
|
|
||||||
p.sendMessage(ChatColor.RED + "https://ci.dmulloy2.net/job/ProtocolLib/lastSuccessfulBuild/artifact/target" +
|
|
||||||
"/ProtocolLib" + ".jar");
|
|
||||||
p.sendMessage(ChatColor.RED + "Or! Use " + ChatColor.DARK_RED + "/ld updateprotocollib" + ChatColor.RED +
|
|
||||||
" - To update to the latest development build");
|
|
||||||
p.sendMessage(ChatColor.DARK_GREEN +
|
|
||||||
"This message is `kindly` provided by Lib's Disguises on repeat to all players due to the sheer " +
|
|
||||||
"number of people who don't see it");
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Most likely faster if we don't bother doing checks if he sees a player disguise
|
* Most likely faster if we don't bother doing checks if he sees a player disguise
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user