From e115617637ef00f72bdd53d70f357289359e2691 Mon Sep 17 00:00:00 2001 From: Brianna Date: Mon, 13 May 2019 19:43:24 -0400 Subject: [PATCH] You can now give everyone a head. & Fixed a typo. --- .../command/commands/CommandGive.java | 29 ++++++++++++------- src/main/resources/en_US.lang | 3 +- 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/songoda/epicheads/command/commands/CommandGive.java b/src/main/java/com/songoda/epicheads/command/commands/CommandGive.java index c6f81d1..d332dd4 100644 --- a/src/main/java/com/songoda/epicheads/command/commands/CommandGive.java +++ b/src/main/java/com/songoda/epicheads/command/commands/CommandGive.java @@ -3,13 +3,11 @@ package com.songoda.epicheads.command.commands; import com.songoda.epicheads.EpicHeads; import com.songoda.epicheads.command.AbstractCommand; import com.songoda.epicheads.head.Head; -import com.songoda.epicheads.utils.Methods; import org.bukkit.Bukkit; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; -import org.bukkit.inventory.meta.SkullMeta; import java.util.ArrayList; import java.util.List; @@ -26,11 +24,12 @@ public class CommandGive extends AbstractCommand { if (args.length != 4) return ReturnType.SYNTAX_ERROR; - Player player = Bukkit.getPlayer(args[1]); + String playerStr = args[1].toLowerCase(); + Player player = Bukkit.getPlayer(playerStr); String archive = args[2]; int headId = Integer.parseInt(args[3]); - if (player == null) { + if (player == null && !playerStr.equals("all")) { sender.sendMessage(instance.getReferences().getPrefix() + instance.getLocale().getMessage("command.give.notonline", args[1])); return ReturnType.FAILURE; } @@ -54,16 +53,24 @@ public class CommandGive extends AbstractCommand { meta.setLore(new ArrayList<>()); item.setItemMeta(meta); - player.getInventory().addItem(item); + if (playerStr.equals("all")) { + for (Player pl : Bukkit.getOnlinePlayers()) { + if (pl == sender) continue; + pl.getInventory().addItem(item); + pl.sendMessage(instance.getReferences().getPrefix() + instance.getLocale().getMessage("command.give.receive", head.get().getName())); + } + sender.sendMessage(instance.getReferences().getPrefix() + instance.getLocale().getMessage("command.give.success", instance.getLocale().getMessage("general.word.everyone"), head.get().getName())); + } else { + player.getInventory().addItem(item); + player.sendMessage(instance.getReferences().getPrefix() + instance.getLocale().getMessage("command.give.receive", head.get().getName())); + sender.sendMessage(instance.getReferences().getPrefix() + instance.getLocale().getMessage("command.give.success", player.getName(), head.get().getName())); + } + + return ReturnType.SUCCESS; } else { sender.sendMessage(instance.getReferences().getPrefix() + instance.getLocale().getMessage("command.give.notfound", head.get().getName())); return ReturnType.FAILURE; } - - sender.sendMessage(instance.getReferences().getPrefix() + instance.getLocale().getMessage("command.give.success", player.getName(), head.get().getName())); - player.sendMessage(instance.getReferences().getPrefix() + instance.getLocale().getMessage("command.give.receive", head.get().getName())); - - return ReturnType.SUCCESS; } @Override @@ -78,7 +85,7 @@ public class CommandGive extends AbstractCommand { @Override public String getSyntax() { - return "/heads give "; + return "/heads give "; } @Override diff --git a/src/main/resources/en_US.lang b/src/main/resources/en_US.lang index 9017856..d78a439 100644 --- a/src/main/resources/en_US.lang +++ b/src/main/resources/en_US.lang @@ -4,6 +4,7 @@ general.nametag.prefix = "&7[&6EpicHeads&7]" general.word.page = "Page" general.word.query = "Query" general.word.favorites = "Favorites" +general.word.everyone = "everyone" general.phrase.latestpack = "Latest Pack" general.search.global = "&6Enter your search query." @@ -33,7 +34,7 @@ event.buyhead.cannotafford = "&cYou cannot afford this head." command.give.notonline = "&cThe player &4%name% &ccould not be found." command.give.notfound = "&cThe head &4%name%&c could not be found." -command.give.success = "&7You have been given &6%player% &7a head named &6%name%&7." +command.give.success = "&7You have given &6%player% &7a head named &6%name%&7." command.give.receive = "&7You have been given a head named &6%name%&7." command.givetoken.success = "&7You gave &6%player% %amount% &7player head tokens."