summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsnowleo <schneeleo@gmail.com>2011-12-05 00:20:27 +0100
committersnowleo <schneeleo@gmail.com>2011-12-05 00:20:46 +0100
commit28876401000f6d3a28783a48734d1b1494258c1f (patch)
tree07b9d88d23d06a56c952294caf009096297a5af2
parent18f423f74a03f834a15418195b9bcb253f6e4b5b (diff)
downloadEssentials-28876401000f6d3a28783a48734d1b1494258c1f.tar
Essentials-28876401000f6d3a28783a48734d1b1494258c1f.tar.gz
Essentials-28876401000f6d3a28783a48734d1b1494258c1f.tar.lz
Essentials-28876401000f6d3a28783a48734d1b1494258c1f.tar.xz
Essentials-28876401000f6d3a28783a48734d1b1494258c1f.zip
Check if the item can be enchanted.
-rw-r--r--Essentials/src/com/earth2me/essentials/signs/SignEnchant.java15
1 files changed, 12 insertions, 3 deletions
diff --git a/Essentials/src/com/earth2me/essentials/signs/SignEnchant.java b/Essentials/src/com/earth2me/essentials/signs/SignEnchant.java
index 9ded830e9..ee7d4feeb 100644
--- a/Essentials/src/com/earth2me/essentials/signs/SignEnchant.java
+++ b/Essentials/src/com/earth2me/essentials/signs/SignEnchant.java
@@ -21,7 +21,7 @@ public class SignEnchant extends EssentialsSign
@Override
protected boolean onSignCreate(final ISign sign, final User player, final String username, final IEssentials ess) throws SignException, ChargeException
{
- getItemStack(sign.getLine(1), 1, ess);
+ final ItemStack stack = getItemStack(sign.getLine(1), 1, ess);
final String[] enchantLevel = sign.getLine(2).split(":");
if (enchantLevel.length != 2)
{
@@ -43,7 +43,16 @@ public class SignEnchant extends EssentialsSign
}
if (level < 1 || level > enchantment.getMaxLevel())
{
- sign.setLine(2, enchantLevel[0] + ":" + enchantment.getMaxLevel());
+ level = enchantment.getMaxLevel();
+ sign.setLine(2, enchantLevel[0] + ":" + level);
+ }
+ try
+ {
+ stack.addEnchantment(enchantment, level);
+ }
+ catch (Throwable ex)
+ {
+ throw new SignException(ex.getMessage());
}
getTrade(sign, 3, ess);
return true;
@@ -77,7 +86,7 @@ public class SignEnchant extends EssentialsSign
player.sendMessage(_("enchantmentNotFound"));
return true;
}
-
+
final ItemStack toEnchant = player.getInventory().getItem(slot);
try
{