Jump to content

Prevent custom Enchantments from being applied to a non compatible item in the anvil.


Recommended Posts

Posted (edited)

As the title states, any custom enchantment I create can be applied to any sort of gear even if its not compatible with the enchant.

Heres my basic enchantment class

public class OverloadEnchantment extends Enchantment {

    public OverloadEnchantment(EquipmentSlot[] slots) {
        super(Rarity.RARE, EnchantmentCategory.ARMOR, slots);
    }

    @Override
    public int getMinCost(int p_44679_) {
        return 15;
    }

    @Override
    public int getMaxCost(int p_44691_) {
        return 30;
    }

    @Override
    public int getMaxLevel() {
        return 5;
    }
}

it cannot be an enchantment roll in the enchanting table for regular weapons(since its an armor mod) nor can it be applied to these weapons via /enchant command. However if I grab an overload book and apply it to a sword in an anvil, it will apply the enchantment to the sword. This goes for all custom enchantments I create whether or not designed for armor or for weapons/tools.

Edited by ChasePlays
Spelling error
Posted (edited)
Quote

okay, what other methods exist in Enchantment class?

perchance, a few may return a boolean result.

Yes there is the method canEnchant(ItemStack item) which returns a boolean but I have no clue how to use it as it crashes when i try to apply the enchantment to an item in the anvil. So its going in the right direction but its causing a crash.

Heres the code I used

@Override
    public boolean canEnchant(ItemStack item) {
        if(item.getItem().equals(Items.DIAMOND_SWORD)){
            return false;
        }

        return true;
    }

 

Edited by ChasePlays

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.