예제 #1
0
        public void AddEnchantment(Enchantment ench, int level)
        {
            Debug.Assert(ench != null, "Enchantment cannot be null");
            if ((level < ench.GetStartLevel()) || (level > ench.GetMaxLevel()))
            {
                throw new ArgumentException("Enchantment level is either too low or too high (given " + level + ", bounds are " + ench.GetStartLevel() + " to " + ench.GetMaxLevel());
            }
            else if (!ench.CanEnchantItem(this))
            {
                throw new ArgumentException("Specified enchantment cannot be applied to this itemstack");
            }

            AddUnsafeEnchantment(ench, level);
        }