A lot of tests, and some improvements
All checks were successful
EpicKnarvik97/Blacksmith/pipeline/head This commit looks good

Adds a lot more tests for some utility classes
Adds a new option to disable the hard-coded limitation "EnchantmentTarget.BREAKABLE" which can be useful for servers with custom items or similar.
Makes enchantment name matching case-insensitive.
Prevents an exception is enchantment name contains invalid characters.
Makes invalid objects supplied to asStringList return null instead of throwing an exception.
Uses isBlank instead of trim.isEmpty in the isEmpty method
Re-uses the random generator if calculating salvage several times
This commit is contained in:
2023-01-16 17:42:54 +01:00
parent 7d468115e0
commit e5cb3b4a30
13 changed files with 379 additions and 28 deletions

View File

@ -33,6 +33,10 @@ global:
# The cost of fully repairing a damaged anvil
damagedAnvilReforgingCost: 20.0
# This disables the EnchantmentTarget.BREAKABLE limitation. If set to true, all items able to have durability are seen
# as reforgeAble. This should not be set to true unless you have special needs.
disableMaterialLimitation: false
# The settings which are set to any new NPC. To change any of these settings for an existing NPC, you must change the
# Citizens NPC file, or use the /blacksmith command
@ -107,4 +111,13 @@ defaults:
successMessage: "There you go! All better!"
# The message to display if a player is trying to reforge an item with full durability
notDamagedMessage: "&cThat item is not in need of repair"
notDamagedMessage: "&cThat item is not in need of repair"
# The message to display if the player tries to salvage an item the blacksmith cannot salvage
cannotSalvageMessage: "&cI'm unable to salvage that item"
# The message to display if reforging the player's item would result in no salvage
tooDamagedForSalvageMessage: "&cThat item is too damaged to be salvaged into anything useful"
# The message to display when an item is successfully salvaged
successSalvagedMessage: "&cThere you go!"