@Override public Item upgrade() { super.upgrade(); updateLevel(); curCharges = Math.min(curCharges + 1, maxCharges); updateQuickslot(); return this; }