From ef7b940e96ae8ec9c7a45645cdc3b7c9bff776d8 Mon Sep 17 00:00:00 2001 From: KHobbits Date: Sat, 5 Jan 2013 07:24:02 +0000 Subject: [PATCH] More user feedback on enchant sign. --- .../essentials/signs/SignEnchant.java | 21 ++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/Essentials/src/com/earth2me/essentials/signs/SignEnchant.java b/Essentials/src/com/earth2me/essentials/signs/SignEnchant.java index 39f52436b..bf92a17f8 100644 --- a/Essentials/src/com/earth2me/essentials/signs/SignEnchant.java +++ b/Essentials/src/com/earth2me/essentials/signs/SignEnchant.java @@ -17,7 +17,16 @@ public class SignEnchant extends EssentialsSign @Override protected boolean onSignCreate(final ISign sign, final User player, final String username, final IEssentials ess) throws SignException, ChargeException { - final ItemStack stack = sign.getLine(1).equals("*") || sign.getLine(1).equalsIgnoreCase("any") ? null : getItemStack(sign.getLine(1), 1, ess); + final ItemStack stack; + try + { + stack = sign.getLine(1).equals("*") || sign.getLine(1).equalsIgnoreCase("any") ? null : getItemStack(sign.getLine(1), 1, ess); + } + catch (SignException e) + { + sign.setLine(1, "§c"); + throw e; + } final String[] enchantLevel = sign.getLine(2).split(":"); if (enchantLevel.length != 2) { @@ -132,6 +141,16 @@ public class SignEnchant extends EssentialsSign throw new SignException(ex.getMessage(), ex); } + final String enchantmentName = enchantment.getName().toLowerCase(Locale.ENGLISH); + if (level == 0) + { + player.sendMessage(_("enchantmentRemoved", enchantmentName.replace('_', ' '))); + } + else + { + player.sendMessage(_("enchantmentApplied", enchantmentName.replace('_', ' '))); + } + charge.charge(player); Trade.log("Sign", "Enchant", "Interact", username, charge, username, charge, sign.getBlock().getLocation(), ess); player.updateInventory();