diff options
Diffstat (limited to 'Essentials/src/com/earth2me/essentials/commands/Commandkit.java')
-rw-r--r-- | Essentials/src/com/earth2me/essentials/commands/Commandkit.java | 63 |
1 files changed, 27 insertions, 36 deletions
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandkit.java b/Essentials/src/com/earth2me/essentials/commands/Commandkit.java index cb14bd0be..046745dcb 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandkit.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandkit.java @@ -3,12 +3,11 @@ package com.earth2me.essentials.commands; import com.earth2me.essentials.CommandSource; import static com.earth2me.essentials.I18n.tl; import com.earth2me.essentials.Kit; -import com.earth2me.essentials.Trade; import com.earth2me.essentials.User; import com.earth2me.essentials.utils.StringUtil; +import java.util.ArrayList; import java.util.List; import java.util.Locale; -import java.util.Map; import org.bukkit.Server; @@ -57,9 +56,8 @@ public class Commandkit extends EssentialsCommand for (final String kitName : kits) { - final Map<String, Object> kit = ess.getSettings().getKit(kitName); - final List<String> items = Kit.getItems(ess, userTo, kitName, kit); - Kit.expandItems(ess, userTo, items); + final Kit kit = new Kit(kitName, ess); + kit.expandItems(userTo); sender.sendMessage(tl("kitGiveTo", kitName, userTo.getDisplayName())); userTo.sendMessage(tl("kitReceive", kitName)); @@ -67,49 +65,42 @@ public class Commandkit extends EssentialsCommand } } - private void giveKits(User userTo, User userFrom, String kitNames) throws Exception + private void giveKits(final User userTo, final User userFrom, final String kitNames) throws Exception { if (kitNames.isEmpty()) { - throw new Exception(tl("kitError2")); + throw new Exception(tl("kitNotFound")); } - String[] kits = kitNames.split(","); + String[] kitList = kitNames.split(","); - for (final String kitName : kits) - { - giveKit(userTo, userFrom, kitName); - } - } + List<Kit> kits = new ArrayList<Kit>(); - private void giveKit(User userTo, User userFrom, String kitName) throws Exception - { - if (kitName.isEmpty()) + for (final String kitName : kitList) { - throw new Exception(tl("kitError2")); - } - - final Map<String, Object> kit = ess.getSettings().getKit(kitName); + if (kitName.isEmpty()) + { + throw new Exception(tl("kitNotFound")); + } - if (!userFrom.isAuthorized("essentials.kits." + kitName)) - { - throw new Exception(tl("noKitPermission", "essentials.kits." + kitName)); + Kit kit = new Kit(kitName, ess); + kit.checkPerms(userFrom); + kit.checkDelay(userFrom); + kit.checkAffordable(userFrom); + kits.add(kit); } - final List<String> items = Kit.getItems(ess, userTo, kitName, kit); - - final Trade charge = new Trade("kit-" + kitName, new Trade("kit-kit", ess), ess); - charge.isAffordableFor(userFrom); - - Kit.checkTime(userFrom, kitName, kit); - Kit.expandItems(ess, userTo, items); + for (final Kit kit : kits) + { + kit.setTime(userFrom); + kit.expandItems(userTo); + kit.chargeUser(userTo); - charge.charge(userFrom); + if (!userFrom.equals(userTo)) + { + userFrom.sendMessage(tl("kitGiveTo", kit.getName(), userTo.getDisplayName())); + } - if (!userFrom.equals(userTo)) - { - userFrom.sendMessage(tl("kitGiveTo", kitName, userTo.getDisplayName())); + userTo.sendMessage(tl("kitReceive", kit.getName())); } - - userTo.sendMessage(tl("kitReceive", kitName)); } } |