package net.t2code.t2codelib.SPIGOT.system.cmd; import net.t2code.t2codelib.SPIGOT.api.commands.T2Ccmd; import net.t2code.t2codelib.SPIGOT.api.messages.T2Csend; import net.t2code.t2codelib.SPIGOT.api.messages.T2Ctemplate; import net.t2code.t2codelib.SPIGOT.api.update.T2CupdateAPI; import net.t2code.t2codelib.SPIGOT.system.T2CodeLibMain; import net.t2code.t2codelib.SPIGOT.system.config.config.SelectLibConfig; import net.t2code.t2codelib.Util; import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.plugin.Plugin; import java.io.File; import java.io.IOException; public class Commands { protected static void info(CommandSender sender) { T2Ctemplate.sendInfo(sender, T2CodeLibMain.getPlugin(), Util.getSpigotID(), Util.getDiscord(), null, Util.getInfoText()); } protected static void test(CommandSender sender, String[] args) { T2Csend.sender(sender, Util.getPrefix() + " &4Currently there is no development test command"); } protected static void debug(CommandSender sender, String[] args) { if (args.length < 2) { T2Csend.sender(sender, "§4Use: §7/t2code debug createReportLog"); return; } switch (args[1].toLowerCase()) { case "createreportlog": switch (args.length) { case 2: if (sender instanceof Player) { T2Csend.sender(sender, "The debug zip file is automatically uploaded to T2Code's servers
and automatically deleted " + "after 14 days!
The file can also be deleted manually by you via command!

Confirm the" + " upload'>upload | " + "Do not upload'>keep the file on your server"); } else T2Csend.sender(sender, "The debug zip file is automatically uploaded to T2Code's servers" + "
and automatically deleted after 14 days!" + "
The file can also be deleted manually by you via command!" + "
Confirm the upload with the command:" + "
/t2c debug createReportLog confirmupload" + "
Keep the file on your server and do not upload it with the command:" + "
/t2c debug createReportLog noupload"); break; case 3: Boolean upload = args[2].equalsIgnoreCase("confirmupload"); Bukkit.getScheduler().runTaskAsynchronously(T2CodeLibMain.getPlugin(), new Runnable() { @Override public void run() { try { CreateReportLog.create(sender, upload); } catch (IOException e) { T2Csend.sender(sender, Util.getPrefix() + " An error occurred while creating a report log! Please look in the console!"); throw new RuntimeException(e); } } }); break; default: T2Csend.sender(sender, "§4Use: §7/t2code debug createReportLog"); return; } break; case "deletereportlog": if (args.length != 3) { T2Csend.sender(sender, "§4Use: §7/t2code debug deleteReportLog [id]"); return; } try { CreateReportLog.delete(args[2], sender); } catch (IOException e) { throw new RuntimeException(e); } break; default: T2Csend.sender(sender, "§4Use: §7/t2code debug createReportLog/deleteReportLog"); break; } } protected static void updateInfo(CommandSender sender, String[] args) { T2Csend.sender(sender, T2CupdateAPI.updateInfo(args, sender instanceof Player)); } public static void permtoggle(CommandSender sender, String[] args) { Player player = (Player) Bukkit.getOfflinePlayer(args[1]); if (player == null) { T2Csend.sender(sender, "§4Player §6" + args[1] + " §4not exist!"); return; } String permission = args[2]; if (player.hasPermission(permission)) { T2Ccmd.console(SelectLibConfig.getCommandPermToggleCommand().replace("[player]",player.getName()).replace("[perm]",permission).replace("[value]", "false")); T2Csend.sender(sender, "§2Permission §8'§6" + permission + "§8' §2was set to §6false §2for the player §6" + player.getName() + "§2."); } else { T2Ccmd.console(SelectLibConfig.getCommandPermToggleCommand().replace("[player]",player.getName()).replace("[perm]",permission).replace("[value]", "true")); T2Csend.sender(sender, "§2Permission §8'§6" + permission + "§8' §2was set to §6true §2for the player §6" + player.getName() + "§2."); } } }