mirror of
https://github.com/songoda/UltimateKits.git
synced 2024-09-29 22:27:35 +02:00
Updated give syntax
This commit is contained in:
parent
c270c7517f
commit
352156a89c
@ -121,8 +121,7 @@ public class UltimateKits extends SongodaPlugin {
|
||||
.addSubCommand(new CommandEdit(guiManager))
|
||||
.addSubCommand(new CommandKey())
|
||||
.addSubCommand(new CommandSet())
|
||||
.addSubCommand(new CommandRemove())
|
||||
.addSubCommand(new CommandGive());
|
||||
.addSubCommand(new CommandRemove());
|
||||
|
||||
|
||||
// Event registration
|
||||
|
@ -1,85 +0,0 @@
|
||||
package com.songoda.ultimatekits.commands;
|
||||
|
||||
import com.songoda.core.commands.AbstractCommand;
|
||||
import com.songoda.ultimatekits.UltimateKits;
|
||||
import com.songoda.ultimatekits.kit.Kit;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class CommandGive extends AbstractCommand {
|
||||
|
||||
final UltimateKits instance;
|
||||
|
||||
public CommandGive() {
|
||||
super(false, "give");
|
||||
instance = UltimateKits.getInstance();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected ReturnType runCommand(CommandSender sender, String... args) {
|
||||
if (args.length != 2) return ReturnType.SYNTAX_ERROR;
|
||||
|
||||
if (!args[0].equalsIgnoreCase("all") && Bukkit.getPlayer(args[0]) == null) {
|
||||
instance.getLocale().newMessage("&cThat username does not exist, or the user is offline!").sendPrefixedMessage(sender);
|
||||
return ReturnType.FAILURE;
|
||||
}
|
||||
|
||||
if (instance.getKitManager().getKit(args[1]) == null) {
|
||||
instance.getLocale().getMessage("command.kit.kitdoesntexist").sendPrefixedMessage(sender);
|
||||
}
|
||||
|
||||
Player player = args[0].equalsIgnoreCase("all") ? null : Bukkit.getPlayer(args[0]);
|
||||
Kit kit = instance.getKitManager().getKit(args[1]);
|
||||
|
||||
if (player != null) {
|
||||
kit.giveKit(player);
|
||||
instance.getLocale().getMessage("event.claim.givesuccess")
|
||||
.processPlaceholder("kit", kit.getShowableName())
|
||||
.sendPrefixedMessage(sender);
|
||||
} else {
|
||||
Bukkit.getOnlinePlayers().forEach(onlinePlayer -> {
|
||||
kit.giveKit(onlinePlayer);
|
||||
instance.getLocale().getMessage("event.claim.givesuccess")
|
||||
.processPlaceholder("kit", kit.getShowableName())
|
||||
.sendPrefixedMessage(sender);
|
||||
});
|
||||
}
|
||||
|
||||
return ReturnType.SUCCESS;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected List<String> onTab(CommandSender sender, String... args) {
|
||||
List<String> tab = new ArrayList<>();
|
||||
|
||||
if (!(sender instanceof Player)) return tab;
|
||||
|
||||
if (args.length == 1) {
|
||||
tab.add("all");
|
||||
for (Player player : Bukkit.getOnlinePlayers()) tab.add(player.getName());
|
||||
} else if (args.length == 2) {
|
||||
for (Kit kit : instance.getKitManager().getKits()) tab.add(kit.getName());
|
||||
}
|
||||
|
||||
return tab;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getPermissionNode() {
|
||||
return "ultimatekits.admin";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getSyntax() {
|
||||
return "/KitAdmin give <player/all> <kit>";
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getDescription() {
|
||||
return "Give a kit to a player.";
|
||||
}
|
||||
}
|
@ -19,67 +19,88 @@ public class CommandKit extends AbstractCommand {
|
||||
final GuiManager guiManager;
|
||||
|
||||
public CommandKit(GuiManager guiManager) {
|
||||
super(true, "kit");
|
||||
super(false, "kit");
|
||||
this.guiManager = guiManager;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected ReturnType runCommand(CommandSender sender, String... args) {
|
||||
if (!(sender instanceof Player) && args.length != 2) {
|
||||
sender.sendMessage("Kits:");
|
||||
for (Kit kit : instance.getKitManager().getKits()) {
|
||||
sender.sendMessage(" - " + kit.getName());
|
||||
}
|
||||
if (args.length > 2) return ReturnType.SYNTAX_ERROR;
|
||||
|
||||
if (args.length == 0 && sender instanceof Player) {
|
||||
// /kit - Opens GUI.
|
||||
guiManager.showGUI((Player) sender, new KitSelectorGui(instance, (Player) sender));
|
||||
return ReturnType.SUCCESS;
|
||||
}
|
||||
if (args.length == 0) {
|
||||
guiManager.showGUI((Player) sender, new KitSelectorGui(instance, (Player) sender));
|
||||
} else if (args.length == 1) {
|
||||
Player player = (Player) sender;
|
||||
String kitName = args[0].toLowerCase();
|
||||
if (instance.getKitManager().getKit(kitName) == null) {
|
||||
instance.getLocale().getMessage("command.kit.kitdoesntexist").sendPrefixedMessage(player);
|
||||
return ReturnType.FAILURE;
|
||||
}
|
||||
Kit kit = instance.getKitManager().getKit(kitName);
|
||||
if (sender.hasPermission("ultimatekits.admin")) {
|
||||
kit.processGenericUse(player, true);
|
||||
} else {
|
||||
kit.buy(player, guiManager);
|
||||
}
|
||||
} else if (args.length == 2) {
|
||||
String kitName = args[0].toLowerCase();
|
||||
if (instance.getKitManager().getKit(kitName) == null) {
|
||||
instance.getLocale().getMessage("command.kit.kitdoesntexist").sendPrefixedMessage(sender);
|
||||
|
||||
if (!sender.hasPermission("ultimatekits.admin")) {
|
||||
instance.getLocale().getMessage("command.general.noperms").sendPrefixedMessage(sender);
|
||||
return ReturnType.FAILURE;
|
||||
}
|
||||
|
||||
if (instance.getKitManager().getKit(args[0]) == null) {
|
||||
instance.getLocale().getMessage("command.kit.kitdoesntexist").sendPrefixedMessage(sender);
|
||||
return ReturnType.FAILURE;
|
||||
}
|
||||
|
||||
Kit kit = instance.getKitManager().getKit(args[0]);
|
||||
|
||||
if (args.length == 1) {
|
||||
// /kit <kit> - Gives kit to self.
|
||||
if (!(sender instanceof Player)) {
|
||||
instance.getLocale().newMessage("&cYou must be a player to use this command!").sendMessage(sender);
|
||||
return ReturnType.FAILURE;
|
||||
}
|
||||
|
||||
Player player2 = Bukkit.getPlayer(args[1]);
|
||||
if (player2 == null || !player2.isOnline()) {
|
||||
instance.getLocale().getMessage("command.kit.playernotfound").sendPrefixedMessage(sender);
|
||||
kit.giveKit((Player) sender);
|
||||
return ReturnType.SUCCESS;
|
||||
} else if (args.length == 2) {
|
||||
// /kit <kit> <player> - Gives kit to another player.
|
||||
|
||||
if (!args[1].equalsIgnoreCase("all") && Bukkit.getPlayer(args[1]) == null) {
|
||||
instance.getLocale().newMessage("&cThat username does not exist, or the user is offline!").sendPrefixedMessage(sender);
|
||||
return ReturnType.FAILURE;
|
||||
}
|
||||
if (sender instanceof Player) {
|
||||
Player player = (Player) sender;
|
||||
if (!Methods.canGiveKit(player)) {
|
||||
UltimateKits.getInstance().getLocale().getMessage("command.general.noperms")
|
||||
.sendPrefixedMessage(player);
|
||||
return ReturnType.FAILURE;
|
||||
}
|
||||
|
||||
Player player = Bukkit.getPlayer(args[1]);
|
||||
String who = player != null ? player.getName() : "everyone";
|
||||
|
||||
if (player != null) {
|
||||
kit.giveKit(player);
|
||||
instance.getLocale().getMessage("event.claim.givesuccess")
|
||||
.processPlaceholder("kit", kit.getShowableName())
|
||||
.sendPrefixedMessage(sender);
|
||||
} else {
|
||||
Bukkit.getOnlinePlayers().forEach(onlinePlayer -> {
|
||||
kit.giveKit(onlinePlayer);
|
||||
instance.getLocale().getMessage("event.claim.givesuccess")
|
||||
.processPlaceholder("kit", kit.getShowableName())
|
||||
.sendPrefixedMessage(sender);
|
||||
});
|
||||
}
|
||||
Kit kit = instance.getKitManager().getKit(kitName);
|
||||
kit.processGenericUse(player2, true);
|
||||
instance.getLocale().newMessage("&7You gave &9" + player2.getDisplayName() + "&7 kit &9" + kit.getShowableName() + "&7.")
|
||||
|
||||
instance.getLocale().newMessage("&7You gave &9" + who + "&7 kit &9" + kit.getShowableName() + "&7.")
|
||||
.sendPrefixedMessage(sender);
|
||||
} else {
|
||||
return ReturnType.SYNTAX_ERROR;
|
||||
return ReturnType.SUCCESS;
|
||||
}
|
||||
return ReturnType.SUCCESS;
|
||||
|
||||
return ReturnType.SYNTAX_ERROR;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected List<String> onTab(CommandSender sender, String... args) {
|
||||
return new ArrayList<>();
|
||||
List<String> tab = new ArrayList<>();
|
||||
|
||||
if (!(sender instanceof Player)) return tab;
|
||||
|
||||
if (args.length == 1) {
|
||||
for (Kit kit : instance.getKitManager().getKits()) tab.add(kit.getName());
|
||||
} else if (args.length == 2) {
|
||||
tab.add("all");
|
||||
Bukkit.getOnlinePlayers().forEach(player -> tab.add(player.getName()));
|
||||
}
|
||||
|
||||
return tab;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Loading…
Reference in New Issue
Block a user