Files
PreventStabby/src/main/java/eu/endermite/togglepvp/commands/PvpToggleCommand.java
T
YouHaveTrouble 0a7468ca10 comand work
2020-08-19 16:46:45 +02:00

155 lines
7.4 KiB
Java

package eu.endermite.togglepvp.commands;
import eu.endermite.togglepvp.TogglePvP;
import eu.endermite.togglepvp.util.PluginMessages;
import net.md_5.bungee.api.ChatMessageType;
import net.md_5.bungee.api.chat.BaseComponent;
import net.md_5.bungee.api.chat.TextComponent;
import org.bukkit.Bukkit;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class PvpToggleCommand {
public static void toggle(CommandSender sender, String[] args) {
Bukkit.getScheduler().runTaskAsynchronously(TogglePvP.getPlugin(), () -> {
if (!sender.hasPermission("togglepvp.command.toggle")) {
String message = TogglePvP.getPlugin().getConfigCache().getNo_permission();
BaseComponent[] component = TextComponent.fromLegacyText(message);
sender.spigot().sendMessage(component);
return;
}
if (args.length == 1) {
if (sender instanceof Player) {
Player player = (Player) sender;
boolean currentState = TogglePvP.getPlugin().getPlayerManager().togglePlayerPvpState(player);
String message = "";
if (currentState) {
message = PluginMessages.parseMessage(TogglePvP.getPlugin().getConfigCache().getPvp_enabled());
} else {
message = PluginMessages.parseMessage(TogglePvP.getPlugin().getConfigCache().getPvp_disabled());
}
BaseComponent[] component = TextComponent.fromLegacyText(message);
player.spigot().sendMessage(ChatMessageType.CHAT, component);
} else {
sender.sendMessage("Try /pvp toggle <player>");
}
} else if (args.length == 2) {
if (!sender.hasPermission("togglepvp.command.toggle.others")) {
String message = TogglePvP.getPlugin().getConfigCache().getNo_permission();
BaseComponent[] component = TextComponent.fromLegacyText(message);
sender.spigot().sendMessage(component);
return;
}
try {
Player player = Bukkit.getPlayer(args[1]);
boolean currentState = TogglePvP.getPlugin().getPlayerManager().togglePlayerPvpState(player);
String message;
if (currentState) {
message = TogglePvP.getPlugin().getConfigCache().getPvp_enabled_other();
} else {
message = TogglePvP.getPlugin().getConfigCache().getPvp_disabled_other();
}
sender.sendMessage(PluginMessages.parsePlayerName(player, message));
} catch (NullPointerException e) {
sender.sendMessage(PluginMessages.parseMessage("&cPlayer offline."));
}
} else {
if (sender.hasPermission("togglepvp.command.toggle.others")) {
sender.sendMessage("Try /pvp toggle <player>");
} else {
sender.sendMessage("Try /pvp toggle");
}
}
});
}
public static void enable(CommandSender sender, String[] args) {
if (!sender.hasPermission("togglepvp.command.toggle")) {
String message = TogglePvP.getPlugin().getConfigCache().getNo_permission();
BaseComponent[] component = TextComponent.fromLegacyText(message);
sender.spigot().sendMessage(component);
return;
}
if (args.length == 1) {
if (sender instanceof Player) {
Player player = (Player) sender;
TogglePvP.getPlugin().getPlayerManager().setPlayerPvpState(player, true);
String message = PluginMessages.parseMessage(TogglePvP.getPlugin().getConfigCache().getPvp_enabled());
BaseComponent[] component = TextComponent.fromLegacyText(message);
player.spigot().sendMessage(ChatMessageType.CHAT, component);
} else {
sender.sendMessage("Try /pvp enable <player>");
}
} else if (args.length == 2) {
if (!sender.hasPermission("togglepvp.command.toggle.others")) {
String message = TogglePvP.getPlugin().getConfigCache().getNo_permission();
BaseComponent[] component = TextComponent.fromLegacyText(message);
sender.spigot().sendMessage(component);
return;
}
try {
Player player = Bukkit.getPlayer(args[1]);
String message = TogglePvP.getPlugin().getConfigCache().getPvp_enabled_other();
sender.sendMessage(PluginMessages.parsePlayerName(player, message));
TogglePvP.getPlugin().getPlayerManager().setPlayerPvpState(player, true);
} catch (NullPointerException e) {
sender.sendMessage(PluginMessages.parseMessage("&cPlayer offline."));
}
} else {
if (sender.hasPermission("togglepvp.command.toggle.others")) {
sender.sendMessage("Try /pvp enable <player>");
} else {
sender.sendMessage("Try /pvp enable");
}
}
}
public static void disable(CommandSender sender, String[] args) {
if (!sender.hasPermission("togglepvp.command.toggle")) {
String message = TogglePvP.getPlugin().getConfigCache().getNo_permission();
BaseComponent[] component = TextComponent.fromLegacyText(message);
sender.spigot().sendMessage(component);
return;
}
if (args.length == 1) {
if (sender instanceof Player) {
Player player = (Player) sender;
TogglePvP.getPlugin().getPlayerManager().setPlayerPvpState(player, false);
String message = PluginMessages.parseMessage(TogglePvP.getPlugin().getConfigCache().getPvp_disabled());
BaseComponent[] component = TextComponent.fromLegacyText(message);
player.spigot().sendMessage(ChatMessageType.CHAT, component);
} else {
sender.sendMessage("Try /pvp disable <player>");
}
} else if (args.length == 2) {
if (!sender.hasPermission("togglepvp.command.toggle.others")) {
String message = TogglePvP.getPlugin().getConfigCache().getNo_permission();
BaseComponent[] component = TextComponent.fromLegacyText(message);
sender.spigot().sendMessage(component);
return;
}
try {
Player player = Bukkit.getPlayer(args[1]);
String message = TogglePvP.getPlugin().getConfigCache().getPvp_disabled_other();
sender.sendMessage(PluginMessages.parsePlayerName(player, message));
TogglePvP.getPlugin().getPlayerManager().setPlayerPvpState(player, true);
} catch (NullPointerException e) {
sender.sendMessage(PluginMessages.parseMessage("&cPlayer offline."));
}
} else {
if (sender.hasPermission("togglepvp.command.toggle.others")) {
sender.sendMessage("Try /pvp disable <player>");
} else {
sender.sendMessage("Try /pvp disable");
}
}
}
}