EnchantShop (Purchase enchants using XP or Money)
2.3.0Purchase enchants using XP levels! NEW: Vault support added
Information
What is EnchantShop? EnchantShop makes getting enchantments easier without the massive grind! Instead of hoping for the best on getting the right enchantments users can spend their XP levels on purchasing enchantments through signs.
With EnchantShops, you don't need to worry about the plugin breaking whenever you update the server because all of the enchants will be added to the enchantments.yml including a preset alias to ensure no errors will be made.
You have full control over the plugin such as adding aliases to enchantments, editing the messages, and even toggling off features that you may not want enabled on your server.
Server owners can be rest assured because the plugin is fully optimized ensuring that it will have little to no impact on your server performance. All of the enchantments aliases and messages are cached so the plugin doesn't always need to read from the config.
Vault support
If you have vault on your server then the plugin will recognize it and whenever you place an enchantshop sign it will prompt you to select a payment method. The two methods are XP (Original transaction method) and Money (Which utilizes vault)
Configs
messages.yml
purchase-success : '&eYou have successfully purchased &a { enchantment } &efor &a { amount }
&eXP'
not-found-funds : '&cYou do not have enough XP to purchase { enchantment } '
shop-created : '&eYou have successfully created a shop!'
enchant-not-found : '&cCould not find the enchantment'
no-item-in-hand : '&cYou do not have an item in your hand!'
cannot-add-enchantment : '&cYou cannot add { enchantment } to the item in your hand'
attempted-downgrade : '&cYou already have a better enchantment than the one you are
about to purchase'enchants.yml
PROTECTION_ENVIRONMENTAL :
aliases :
- Protection
PROTECTION_FIRE :
aliases :
- Fire Protection
PROTECTION_FALL :
aliases :
- Feather Falling
PROTECTION_EXPLOSIONS :
aliases :
- Blast Protection
PROTECTION_PROJECTILE :
aliases :
- Projectile Protection
OXYGEN :
aliases :
- Respiration
WATER_WORKER :
aliases :
- Aqua Affinity
THORNS :
aliases :
- Thorns
DEPTH_STRIDER :
aliases :
- Depth strider
DAMAGE_ALL :
aliases :
- Sharpness
DAMAGE_UNDEAD :
aliases :
- Smite
DAMAGE_ARTHROPODS :
aliases :
- Bane of Arthropods
KNOCKBACK :
aliases :
- Knockback
FIRE_ASPECT :
aliases :
- Fire aspect
LOOT_BONUS_MOBS :
aliases :
- Looting
DIG_SPEED :
aliases :
- Efficiency
SILK_TOUCH :
aliases :
- Silk touch
DURABILITY :
aliases :
- Durability
LOOT_BONUS_BLOCKS :
aliases :
- Fortune
ARROW_DAMAGE :
aliases :
- Power
ARROW_KNOCKBACK :
aliases :
- Punch
ARROW_FIRE :
aliases :
- flame
ARROW_INFINITE :
aliases :
- Infinity
LUCK :
aliases :
- Luck of the sea
LURE :
aliases :
- Lure What is an enchant alias?
An enchantment alias is another way for the plugin to find the enchantment the user wants to add to their sword. In the enchantments.yml, each enchantment will have a list of aliases that you can view and edit. For example, if I added a new alias called "Sharp" to the enchantment "Sharpness" then the enchantment "Sharp" will be recognized on the sign and will correctly enchant the weapon. Here is an example when "Sharp" is an alias:
enchants.yml Example
DAMAGE_ALL :
aliases :
- Sharpness
- SharpSign Example (in-game)
Line 1: [sign-title from config.yml] (Default title: Enchant)
Line 2: Sharp (Sharpness alias)
Line 3: 4 (Level of the enchantment)
Line 4: 10 (Cost)
How to use
You place a down a sign and with the correct permission node do the following:
Line 1: [sign-title from config.yml] (Default title: Enchant)
Line 2: <EnchantmentName / Alias> (Without the <>)
Line 3: <Enchantment level> (Without the <>)
Line 4: <Cost> (Without the <>)
Example
[sign-title from config.yml] (Default title: Enchant)
Sharpness
3
10
Got a suggestion?
If you have any suggestions for the plugin, make sure to message BrendanLeeT on SpigotMC and I'd consider implementing it. I cannot always promise that it will be implemented straight away but I will always try my best!
Found a bug?
If you find any bugs then report them to BrendanLeeT and I will try to fix them immediately!
Permissions
Node - Description
- enchantshop.createsign - Allows users to create a shop sign
- enchantshop.notify-update - When the a user with the permission joins, it will alert them if an update is available
- enchantshop.deletesign - Allows users to delete shop signs
- enchantshop.command.debug - Ability to run the command /enchantshop debug
- enchantshop.command.enchants - Ability to run the command /enchantshop enchants
In-progress
- Suggest new features
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
3.9MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta