@Override
	public boolean setShield(Wearable shield) throws NoSuchItemException, WrongItemTypeException {
		if (shield != null) {
			if (shield instanceof Shield) {
				if (shield.getLevelRequirement() > level || shield.getStrengthRequirement() > stats[0]
						|| shield.getDexterityRequirement() > stats[1] || shield.getMagicRequirement() > stats[2]) {
					return false;
				}
				if (inventory.remove(shield)) {
					if (onPerson[4] != null) {
						removeItem(4);
					}
					putOnItem(shield, 4);
					return true;
				} else {
					throw new NoSuchItemException();
				}
			}
			throw new WrongItemTypeException();
		} else {
			removeItem(4);
			return true;
		}
	}