Changes configuration values to lower camelcase
Also fixes some grammar mistakes related to the word reforge
This commit is contained in:
parent
9ffd788e29
commit
2489cac8db
23
README.md
23
README.md
@ -25,9 +25,9 @@ currently held item is repairable by the blacksmith. If it is, the blacksmith sh
|
|||||||
again starts the repair. The item should be given back or dropped after a random delay according to the set limits.
|
again starts the repair. The item should be given back or dropped after a random delay according to the set limits.
|
||||||
|
|
||||||
While costs are always set globally (no blacksmith can do the same job for cheaper), the blacksmith's messages,
|
While costs are always set globally (no blacksmith can do the same job for cheaper), the blacksmith's messages,
|
||||||
cool-down between each re-forge, whether the item is dropped or given, the chance of failing or adding an enchantment,
|
cool-down between each reforge, whether the item is dropped or given, the chance of failing or adding an enchantment,
|
||||||
the maximum number of added enchantments, max and min delays, the length of the cool-down and which items the blacksmith
|
the maximum number of added enchantments, max and min delays, the length of the cool-down and which items the blacksmith
|
||||||
is able to re-forge can be changed individually.
|
is able to reforge can be changed individually.
|
||||||
|
|
||||||
Also note: Changing the default value of a setting doesn't change the setting for existing NPCs, even if no custom value
|
Also note: Changing the default value of a setting doesn't change the setting for existing NPCs, even if no custom value
|
||||||
has been set. Make sure to change default settings as needed before creating too many NPCs.
|
has been set. Make sure to change default settings as needed before creating too many NPCs.
|
||||||
@ -63,11 +63,11 @@ for a specific material/enchantment.
|
|||||||
### Global-only options
|
### Global-only options
|
||||||
|
|
||||||
- basePrice (positive decimal number) - The base price which has to be paid regardless of the durability remaining for
|
- basePrice (positive decimal number) - The base price which has to be paid regardless of the durability remaining for
|
||||||
an item. Setting this without specifying a material sets the base-price for any item the base-price has not been set
|
an item. Setting this without specifying a material sets the basePrice for any item the basePrice has not been set
|
||||||
for.
|
for.
|
||||||
- pricePerDurabilityPoint (positive decimal number) - The price added for each durability point present/missing (depends
|
- pricePerDurabilityPoint (positive decimal number) - The price added for each durability point present/missing (depends
|
||||||
on natural cost's value). Setting this without specifying a material sets the price-per-durability-point for any item
|
on natural cost's value). Setting this without specifying a material sets the pricePerDurabilityPoint for any item the
|
||||||
the price-per-durability-point has not been set for.
|
pricePerDurabilityPoint has not been set for.
|
||||||
- enchantmentCost (positive decimal number) - The added cost for each level of an enchantment present on the item. The
|
- enchantmentCost (positive decimal number) - The added cost for each level of an enchantment present on the item. The
|
||||||
cost can be set for specific enchantments. Not specifying an enchantment sets the value for all enchantments without a
|
cost can be set for specific enchantments. Not specifying an enchantment sets the value for all enchantments without a
|
||||||
set value.
|
set value.
|
||||||
@ -82,18 +82,17 @@ for a specific material/enchantment.
|
|||||||
- dropItem (true/false) - Whether the blacksmith should drop the repaired item on the ground (instead of putting it into
|
- dropItem (true/false) - Whether the blacksmith should drop the repaired item on the ground (instead of putting it into
|
||||||
the player's inventory)
|
the player's inventory)
|
||||||
- disableCoolDown (true/false) - Whether to completely disable the cool-down between repairs
|
- disableCoolDown (true/false) - Whether to completely disable the cool-down between repairs
|
||||||
- disableDelay (true/false) - Whether to completely disable the delay required to re-forge an item
|
- disableDelay (true/false) - Whether to completely disable the delay required to reforge an item
|
||||||
- failReforgeChance (0-100) - The chance of the blacksmith failing to repair an item
|
- failReforgeChance (0-100) - The chance of the blacksmith failing to repair an item
|
||||||
- extraEnchantmentChance (0-100) - The chance of the blacksmith adding an enchantment to an item
|
- extraEnchantmentChance (0-100) - The chance of the blacksmith adding an enchantment to an item
|
||||||
- maxEnchantments (0-10) - The maximum number of different enchantments a blacksmith can add
|
- maxEnchantments (0-10) - The maximum number of different enchantments a blacksmith can add
|
||||||
- maxReforgeDelay (0-3600) - The maximum number of seconds a player needs to wait for an item to be repaired
|
- maxReforgeDelay (0-3600) - The maximum number of seconds a player needs to wait for an item to be repaired
|
||||||
- minReforgeDelay (0-3600) - The minimum number of seconds a player needs to wait for an item to be repaired
|
- minReforgeDelay (0-3600) - The minimum number of seconds a player needs to wait for an item to be repaired
|
||||||
- reforgeCoolDown (0-3600) - The cool-down a player has to wait between each time they use one specific blacksmith
|
- reforgeCoolDown (0-3600) - The cool-down a player has to wait between each time they use one specific blacksmith
|
||||||
- reforgeAbleItems (DIAMOND_LEGGINGS,GOLD-pickaxe,bow, etc.) - Specifies which items this blacksmith is able to
|
- reforgeAbleItems (DIAMOND_LEGGINGS,GOLD-pickaxe,bow, etc.) - Specifies which items this blacksmith is able to reforge.
|
||||||
re-forge. If set to "" or null, all items can be repaired. If set to a list of items, only the items specified can be
|
If set to "" or null, all items can be repaired. If set to a list of items, only the items specified can be repaired.
|
||||||
repaired. Some presets have been included for ease of use. Use a preset by specifying "preset:sword-smith" instead of
|
Some presets have been included for ease of use. Use a preset by specifying "preset:sword-smith" instead of a material
|
||||||
a material such as "gold-pickaxe". Available presets: SWORD_SMITH, WEAPON_SMITH, ARMOR_SMITH, TOOL_SMITH,
|
such as "gold-pickaxe". Available presets: SWORD_SMITH, WEAPON_SMITH, ARMOR_SMITH, TOOL_SMITH, RANGED_SMITH.
|
||||||
RANGED_SMITH.
|
|
||||||
|
|
||||||
#### Messages
|
#### Messages
|
||||||
|
|
||||||
@ -102,7 +101,7 @@ for a specific material/enchantment.
|
|||||||
- coolDownUnexpiredMessage - The message displayed when the player has to wait for the cool-down to expire before using
|
- coolDownUnexpiredMessage - The message displayed when the player has to wait for the cool-down to expire before using
|
||||||
the blacksmith again
|
the blacksmith again
|
||||||
- costMessage - The message displayed when telling a player about the cost of repairing an item
|
- costMessage - The message displayed when telling a player about the cost of repairing an item
|
||||||
- failReforgeMessage - The message displayed when a blacksmith fails to re-forge an item
|
- failReforgeMessage - The message displayed when a blacksmith fails to reforge an item
|
||||||
- insufficientFundsMessage - The message displayed when a player is unable to pay for reforging an item
|
- insufficientFundsMessage - The message displayed when a player is unable to pay for reforging an item
|
||||||
- invalidItemMessage - The message displayed when a blacksmith is presented an item which it cannot repair
|
- invalidItemMessage - The message displayed when a blacksmith is presented an item which it cannot repair
|
||||||
- itemChangedMessage - The message displayed when a player changes their item after being shown the repair cost
|
- itemChangedMessage - The message displayed when a player changes their item after being shown the repair cost
|
||||||
|
@ -42,7 +42,7 @@ public class BlackSmithConfigCommand implements CommandExecutor {
|
|||||||
//Changing reforge-able items' default isn't recommended
|
//Changing reforge-able items' default isn't recommended
|
||||||
if (commandName.equalsIgnoreCase(NPCSetting.REFORGE_ABLE_ITEMS.getCommandName())) {
|
if (commandName.equalsIgnoreCase(NPCSetting.REFORGE_ABLE_ITEMS.getCommandName())) {
|
||||||
displayErrorMessage(sender, "Changing reforge-able items globally will make every new " +
|
displayErrorMessage(sender, "Changing reforge-able items globally will make every new " +
|
||||||
"blacksmith unable to re-forge anything not in the list, unless it's changed for the " +
|
"blacksmith unable to reforge anything not in the list, unless it's changed for the " +
|
||||||
"individual NPC. If you really want to change this, change it manually.");
|
"individual NPC. If you really want to change this, change it manually.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -7,30 +7,31 @@ public enum GlobalSetting {
|
|||||||
/**
|
/**
|
||||||
* The base price for repairing, regardless of durability
|
* The base price for repairing, regardless of durability
|
||||||
*
|
*
|
||||||
* <p>This allows specifying a price for each item, by setting base-price.item_name.</p>
|
* <p>This allows specifying a price for each item, by setting basePrice.item_name.</p>
|
||||||
*/
|
*/
|
||||||
BASE_PRICE("global.base-price.default", SettingValueType.POSITIVE_DOUBLE, 10.0, "basePrice"),
|
BASE_PRICE("global.basePrice.default", SettingValueType.POSITIVE_DOUBLE, 10.0, "basePrice"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The base price for each durability point
|
* The base price for each durability point
|
||||||
*
|
*
|
||||||
* <p>If natural cost, this is the cost each missing durability point will add to the cost. If not natural cost,
|
* <p>If natural cost, this is the cost each missing durability point will add to the cost. If not natural cost,
|
||||||
* this is the cost each present durability point will add to the cost. This allows specifying a price per
|
* this is the cost each present durability point will add to the cost. This allows specifying a price per
|
||||||
* durability point value for each item, by setting price-per-durability-point.item_name</p>
|
* durability point value for each item, by setting pricePerDurabilityPoint.item_name</p>
|
||||||
*/
|
*/
|
||||||
PRICE_PER_DURABILITY_POINT("global.price-per-durability-point.default", SettingValueType.POSITIVE_DOUBLE, 0.005, "pricePerDurabilityPoint"),
|
PRICE_PER_DURABILITY_POINT("global.pricePerDurabilityPoint.default", SettingValueType.POSITIVE_DOUBLE,
|
||||||
|
0.005, "pricePerDurabilityPoint"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The price increase for each level of each present enchantment
|
* The price increase for each level of each present enchantment
|
||||||
*
|
*
|
||||||
* <p>This can be specified for each possible enchantment by setting enchantment-cost.enchantment_name</p>
|
* <p>This can be specified for each possible enchantment by setting enchantment-cost.enchantment_name</p>
|
||||||
*/
|
*/
|
||||||
ENCHANTMENT_COST("global.enchantment-cost.default", SettingValueType.POSITIVE_DOUBLE, 5.0, "enchantmentCost"),
|
ENCHANTMENT_COST("global.enchantmentCost.default", SettingValueType.POSITIVE_DOUBLE, 5.0, "enchantmentCost"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether the cost should increase for damage taken, as opposed to increase for durability present
|
* Whether the cost should increase for damage taken, as opposed to increase for durability present
|
||||||
*/
|
*/
|
||||||
NATURAL_COST("global.natural-cost", SettingValueType.BOOLEAN, true, "useNaturalCost");
|
NATURAL_COST("global.useNaturalCost", SettingValueType.BOOLEAN, true, "useNaturalCost");
|
||||||
|
|
||||||
private final String path;
|
private final String path;
|
||||||
private final String parent;
|
private final String parent;
|
||||||
|
@ -7,43 +7,42 @@ import java.util.Arrays;
|
|||||||
*/
|
*/
|
||||||
public enum NPCSetting {
|
public enum NPCSetting {
|
||||||
|
|
||||||
DROP_ITEM("defaults.drop-item", SettingValueType.BOOLEAN, true, "dropItem"),
|
DROP_ITEM("defaults.dropItem", SettingValueType.BOOLEAN, true, "dropItem"),
|
||||||
DISABLE_COOL_DOWN("defaults.disable-cool-down", SettingValueType.BOOLEAN, false, "disableCoolDown"),
|
DISABLE_COOL_DOWN("defaults.disableCoolDown", SettingValueType.BOOLEAN, false, "disableCoolDown"),
|
||||||
DISABLE_DELAY("defaults.disable-delay", SettingValueType.BOOLEAN, false, "disableDelay"),
|
DISABLE_DELAY("defaults.disableDelay", SettingValueType.BOOLEAN, false, "disableDelay"),
|
||||||
FAIL_CHANCE("defaults.percent-chance-to-fail-reforge", SettingValueType.PERCENTAGE, 10, "failReforgeChance"),
|
FAIL_CHANCE("defaults.failReforgeChance", SettingValueType.PERCENTAGE, 10, "failReforgeChance"),
|
||||||
EXTRA_ENCHANTMENT_CHANCE("defaults.percent-chance-for-extra-enchantment", SettingValueType.PERCENTAGE, 5,
|
EXTRA_ENCHANTMENT_CHANCE("defaults.extraEnchantmentChance", SettingValueType.PERCENTAGE, 5,
|
||||||
"extraEnchantmentChance"),
|
"extraEnchantmentChance"),
|
||||||
MAX_ENCHANTMENTS("defaults.maximum-enchantments", SettingValueType.POSITIVE_INTEGER, 3, "maxEnchantments"),
|
MAX_ENCHANTMENTS("defaults.maxEnchantments", SettingValueType.POSITIVE_INTEGER, 3, "maxEnchantments"),
|
||||||
MAX_REFORGE_DELAY("defaults.delays-in-seconds.maximum", SettingValueType.POSITIVE_INTEGER, 30, "maxReforgeDelay"),
|
MAX_REFORGE_DELAY("defaults.delaysInSeconds.maximum", SettingValueType.POSITIVE_INTEGER, 30, "maxReforgeDelay"),
|
||||||
MIN_REFORGE_DELAY("defaults.delays-in-seconds.minimum", SettingValueType.POSITIVE_INTEGER, 5, "minReforgeDelay"),
|
MIN_REFORGE_DELAY("defaults.delaysInSeconds.minimum", SettingValueType.POSITIVE_INTEGER, 5, "minReforgeDelay"),
|
||||||
REFORGE_COOL_DOWN("defaults.delays-in-seconds.reforge-cool-down", SettingValueType.POSITIVE_INTEGER, 60, "reforgeCoolDown"),
|
REFORGE_COOL_DOWN("defaults.delaysInSeconds.reforgeCoolDown", SettingValueType.POSITIVE_INTEGER, 60, "reforgeCoolDown"),
|
||||||
REFORGE_ABLE_ITEMS("defaults.reforge-able-items", SettingValueType.STRING_LIST, new String[]{}, "reforgeAbleItems"),
|
REFORGE_ABLE_ITEMS("defaults.reforgeAbleItems", SettingValueType.STRING_LIST, new String[]{}, "reforgeAbleItems"),
|
||||||
|
|
||||||
/*-----------
|
/*-----------
|
||||||
| Messages |
|
| Messages |
|
||||||
-----------*/
|
-----------*/
|
||||||
BUSY_WITH_PLAYER_MESSAGE("defaults.messages.busy-with-player", SettingValueType.STRING,
|
BUSY_WITH_PLAYER_MESSAGE("defaults.messages.busyPlayerMessage", SettingValueType.STRING,
|
||||||
"&cI'm busy at the moment. Come back later!", "busyPlayerMessage"),
|
"&cI'm busy at the moment. Come back later!", "busyPlayerMessage"),
|
||||||
//TODO: Add placeholder for remaining time?
|
//TODO: Add placeholder for remaining time?
|
||||||
BUSY_WITH_REFORGE_MESSAGE("defaults.messages.busy-with-reforge", SettingValueType.STRING,
|
BUSY_WITH_REFORGE_MESSAGE("defaults.messages.busyReforgeMessage", SettingValueType.STRING,
|
||||||
"&cI'm working on it. Be patient!", "busyReforgeMessage"),
|
"&cI'm working on it. Be patient!", "busyReforgeMessage"),
|
||||||
//TODO: Add placeholder for remaining time?
|
//TODO: Add placeholder for remaining time?
|
||||||
COOL_DOWN_UNEXPIRED_MESSAGE("defaults.messages.cool-down-not-expired", SettingValueType.STRING,
|
COOL_DOWN_UNEXPIRED_MESSAGE("defaults.messages.coolDownUnexpiredMessage", SettingValueType.STRING,
|
||||||
"&cYou've already had your chance! Give me a break!", "coolDownUnexpiredMessage"),
|
"&cYou've already had your chance! Give me a break!", "coolDownUnexpiredMessage"),
|
||||||
COST_MESSAGE(
|
COST_MESSAGE("defaults.messages.costMessage", SettingValueType.STRING,
|
||||||
"defaults.messages.cost", SettingValueType.STRING,
|
|
||||||
"&eIt will cost &a<price> &eto reforge that &a<item>&e! Click again to reforge!", "costMessage"),
|
"&eIt will cost &a<price> &eto reforge that &a<item>&e! Click again to reforge!", "costMessage"),
|
||||||
FAIL_MESSAGE("defaults.messages.fail-reforge", SettingValueType.STRING, "&cWhoops! Didn't mean to do that! Maybe next time?",
|
FAIL_MESSAGE("defaults.messages.failReforgeMessage", SettingValueType.STRING,
|
||||||
"failReforgeMessage"),
|
"&cWhoops! Didn't mean to do that! Maybe next time?", "failReforgeMessage"),
|
||||||
INSUFFICIENT_FUNDS_MESSAGE("defaults.messages.insufficient-funds", SettingValueType.STRING,
|
INSUFFICIENT_FUNDS_MESSAGE("defaults.messages.insufficientFundsMessage", SettingValueType.STRING,
|
||||||
"&cYou don't have enough money to reforge that item!", "insufficientFundsMessage"),
|
"&cYou don't have enough money to reforge that item!", "insufficientFundsMessage"),
|
||||||
INVALID_ITEM_MESSAGE("defaults.messages.invalid-item", SettingValueType.STRING,
|
INVALID_ITEM_MESSAGE("defaults.messages.invalidItemMessage", SettingValueType.STRING,
|
||||||
"&cI'm sorry, but I don't know how to reforge that!", "invalidItemMessage"),
|
"&cI'm sorry, but I don't know how to reforge that!", "invalidItemMessage"),
|
||||||
ITEM_UNEXPECTEDLY_CHANGED_MESSAGE("defaults.messages.item-changed-during-reforge", SettingValueType.STRING,
|
ITEM_UNEXPECTEDLY_CHANGED_MESSAGE("defaults.messages.itemChangedMessage", SettingValueType.STRING,
|
||||||
"&cThat's not the item you wanted to reforge before!", "itemChangedMessage"),
|
"&cThat's not the item you wanted to reforge before!", "itemChangedMessage"),
|
||||||
START_REFORGE_MESSAGE("defaults.messages.start-reforge", SettingValueType.STRING,
|
START_REFORGE_MESSAGE("defaults.messages.startReforgeMessage", SettingValueType.STRING,
|
||||||
"&eOk, let's see what I can do...", "startReforgeMessage"),
|
"&eOk, let's see what I can do...", "startReforgeMessage"),
|
||||||
SUCCESS_MESSAGE("defaults.messages.successful-reforge", SettingValueType.STRING,
|
SUCCESS_MESSAGE("defaults.messages.successMessage", SettingValueType.STRING,
|
||||||
"There you go! All better!", "successMessage");
|
"There you go! All better!", "successMessage");
|
||||||
|
|
||||||
private final String path;
|
private final String path;
|
||||||
|
@ -183,7 +183,7 @@ public class NPCSettings {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the minimum delay used to wait for a re-forge to finish.
|
* Gets the minimum delay used to wait for a reforging to finish.
|
||||||
*
|
*
|
||||||
* @return <p>The minimum reforge delay</p>
|
* @return <p>The minimum reforge delay</p>
|
||||||
*/
|
*/
|
||||||
@ -192,7 +192,7 @@ public class NPCSettings {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the maximum delay used to wait for a re-forge to finish
|
* Gets the maximum delay used to wait for a reforging to finish
|
||||||
*
|
*
|
||||||
* @return <p>The maximum reforge delay</p>
|
* @return <p>The maximum reforge delay</p>
|
||||||
*/
|
*/
|
||||||
@ -210,7 +210,7 @@ public class NPCSettings {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the chance to fail a re-forge
|
* Gets the chance to fail a reforging
|
||||||
*
|
*
|
||||||
* @return <p>The fail chance</p>
|
* @return <p>The fail chance</p>
|
||||||
*/
|
*/
|
||||||
@ -255,7 +255,7 @@ public class NPCSettings {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets whether to disable the delay between starting reforging and the re-forge finishing
|
* Gets whether to disable the delay between starting reforging and the reforging finishing
|
||||||
*
|
*
|
||||||
* @return <p>Whether to disable the reforge delay</p>
|
* @return <p>Whether to disable the reforge delay</p>
|
||||||
*/
|
*/
|
||||||
|
@ -144,7 +144,7 @@ public enum SmithPreset {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets material names of all materials re-forge-able by this smith
|
* Gets material names of all materials reforge-able by this smith
|
||||||
*
|
*
|
||||||
* @return <p>All material names for this smith</p>
|
* @return <p>All material names for this smith</p>
|
||||||
*/
|
*/
|
||||||
|
@ -44,7 +44,7 @@ public class EconomyManager {
|
|||||||
* Gets whether the given player can pay for re-forging their held item
|
* Gets whether the given player can pay for re-forging their held item
|
||||||
*
|
*
|
||||||
* @param player <p>The player holding an item</p>
|
* @param player <p>The player holding an item</p>
|
||||||
* @return <p>Whether the player can pay for the re-forge</p>
|
* @return <p>Whether the player can pay for the reforge</p>
|
||||||
*/
|
*/
|
||||||
public static boolean canPay(Player player) {
|
public static boolean canPay(Player player) {
|
||||||
return economy.getBalance(player) - getHeldItemCost(player) >= 0;
|
return economy.getBalance(player) - getHeldItemCost(player) >= 0;
|
||||||
@ -62,7 +62,7 @@ public class EconomyManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Withdraws the re-forge cost from the given player
|
* Withdraws the reforging cost from the given player
|
||||||
*
|
*
|
||||||
* <p>The cost is automatically calculated from the item in the player's main hand.</p>
|
* <p>The cost is automatically calculated from the item in the player's main hand.</p>
|
||||||
*
|
*
|
||||||
|
@ -53,9 +53,9 @@ public class BlacksmithTrait extends Trait {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets whether this blacksmith is already in a re-forge session
|
* Gets whether this blacksmith is already in a reforging session
|
||||||
*
|
*
|
||||||
* @return <p>Whether already in a re-forge session</p>
|
* @return <p>Whether already in a reforge session</p>
|
||||||
*/
|
*/
|
||||||
public boolean hasSession() {
|
public boolean hasSession() {
|
||||||
return this.session != null;
|
return this.session != null;
|
||||||
|
@ -57,13 +57,13 @@ public class ReforgeSession implements Runnable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Runs the actual re-forge which fixes the item and gives it back to the player
|
* Runs the actual reforge which fixes the item and gives it back to the player
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
sendNPCMessage(this.npc, player, reforgeItem() ? config.getSuccessMessage() : config.getFailMessage());
|
sendNPCMessage(this.npc, player, reforgeItem() ? config.getSuccessMessage() : config.getFailMessage());
|
||||||
|
|
||||||
//Stop the re-forged item from displaying in the blacksmith's hand
|
//Stop the reforged item from displaying in the blacksmith's hand
|
||||||
if (npc.getEntity() instanceof Player) {
|
if (npc.getEntity() instanceof Player) {
|
||||||
((Player) npc.getEntity()).getInventory().setItemInMainHand(null);
|
((Player) npc.getEntity()).getInventory().setItemInMainHand(null);
|
||||||
} else {
|
} else {
|
||||||
@ -93,9 +93,9 @@ public class ReforgeSession implements Runnable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Performs the actual re-forge where the item's damage is reduced
|
* Performs the actual reforge where the item's damage is reduced
|
||||||
*
|
*
|
||||||
* @return <p>Whether the re-forge was successful. False if the blacksmith failed to fully repair the item.</p>
|
* @return <p>Whether the reforge was successful. False if the blacksmith failed to fully repair the item.</p>
|
||||||
*/
|
*/
|
||||||
private boolean reforgeItem() {
|
private boolean reforgeItem() {
|
||||||
if (random.nextInt(100) < config.getFailChance()) {
|
if (random.nextInt(100) < config.getFailChance()) {
|
||||||
@ -108,7 +108,7 @@ public class ReforgeSession implements Runnable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The method to run when a blacksmith successfully re-forges an item
|
* The method to run when a blacksmith successfully reforges an item
|
||||||
*/
|
*/
|
||||||
private void succeedReforge() {
|
private void succeedReforge() {
|
||||||
// Remove any damage done to the item
|
// Remove any damage done to the item
|
||||||
@ -223,10 +223,10 @@ public class ReforgeSession implements Runnable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets whether the given player is currently in a re-forge session
|
* Gets whether the given player is currently in a reforging session
|
||||||
*
|
*
|
||||||
* @param other <p>The player to check if is in session</p>
|
* @param other <p>The player to check if is in session</p>
|
||||||
* @return <p>True if the given player is in a re-forge session</p>
|
* @return <p>True if the given player is in a reforge session</p>
|
||||||
*/
|
*/
|
||||||
public boolean isInSession(Player other) {
|
public boolean isInSession(Player other) {
|
||||||
return player.getName().equals(other.getName());
|
return player.getName().equals(other.getName());
|
||||||
@ -237,12 +237,12 @@ public class ReforgeSession implements Runnable {
|
|||||||
*/
|
*/
|
||||||
public void beginReforge() {
|
public void beginReforge() {
|
||||||
if (!config.getDisableCoolDown()) {
|
if (!config.getDisableCoolDown()) {
|
||||||
//Finish the re-forge after a random delay between the max and min
|
//Finish the reforging after a random delay between the max and min
|
||||||
taskId = BlacksmithPlugin.getInstance().getServer().getScheduler().scheduleSyncDelayedTask(
|
taskId = BlacksmithPlugin.getInstance().getServer().getScheduler().scheduleSyncDelayedTask(
|
||||||
BlacksmithPlugin.getInstance(), this, (new Random().nextInt(config.getMaxReforgeDelay()) +
|
BlacksmithPlugin.getInstance(), this, (new Random().nextInt(config.getMaxReforgeDelay()) +
|
||||||
config.getMinReforgeDelay()) * 20L);
|
config.getMinReforgeDelay()) * 20L);
|
||||||
} else {
|
} else {
|
||||||
//Finish the re-forge as soon as possible
|
//Finish the reforging as soon as possible
|
||||||
taskId = BlacksmithPlugin.getInstance().getServer().getScheduler().scheduleSyncDelayedTask(
|
taskId = BlacksmithPlugin.getInstance().getServer().getScheduler().scheduleSyncDelayedTask(
|
||||||
BlacksmithPlugin.getInstance(), this, 0);
|
BlacksmithPlugin.getInstance(), this, 0);
|
||||||
}
|
}
|
||||||
|
@ -3,87 +3,89 @@
|
|||||||
# The settings which apply to all Blacksmith NPCs
|
# The settings which apply to all Blacksmith NPCs
|
||||||
global:
|
global:
|
||||||
# The minimum price of each cost
|
# The minimum price of each cost
|
||||||
base-price:
|
basePrice:
|
||||||
# You can add, for example "diamond-sword: 15.3" to change the base cost for a specific item
|
# You can add, for example "diamond-sword: 15.3" to change the base cost for a specific item
|
||||||
default: 10.0
|
default: 10.0
|
||||||
|
|
||||||
# The additional cost for each durability point missing (natural cost) or present (not natural cost)
|
# The additional cost for each durability point missing (natural cost) or present (not natural cost)
|
||||||
price-per-durability-point:
|
pricePerDurabilityPoint:
|
||||||
# You can add, for example "diamond-sword: 0.09" to change the base cost for a specific item
|
# You can add, for example "diamond-sword: 0.09" to change the base cost for a specific item
|
||||||
default: 0.005
|
default: 0.005
|
||||||
|
|
||||||
# The additional cost for each enchantment level present on an item
|
# The additional cost for each enchantment level present on an item
|
||||||
enchantment-cost:
|
enchantmentCost:
|
||||||
# You can add, for example "arrow-infinite: 0.09" to change the enchantment cost for a specific enchantment
|
# You can add, for example "arrow-infinite: 0.09" to change the enchantment cost for a specific enchantment
|
||||||
default: 5
|
default: 5
|
||||||
|
|
||||||
# Natural cost makes re-forging more expensive the more damaged the item is. Disabling this will enable the legacy
|
# Natural cost makes re-forging more expensive the more damaged the item is. Disabling this will enable the legacy
|
||||||
# blacksmith behavior instead
|
# blacksmith behavior instead
|
||||||
natural-cost: true
|
useNaturalCost: true
|
||||||
|
|
||||||
# The settings which are set to any new NPC. To change any of these settings for an existing NPC, you must change the
|
# 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
|
# Citizens NPC file
|
||||||
defaults:
|
defaults:
|
||||||
# Whether the item will drop a re-forged item on the ground, instead of putting it into the user's inventory
|
# Whether the item will drop a reforged item on the ground, instead of putting it into the user's inventory
|
||||||
drop-item: true
|
dropItem: true
|
||||||
|
|
||||||
# The items a blacksmith is able to reforge. Setting this only allows the NPC to repair the listed items
|
# The items a blacksmith is able to reforge. Setting this only allows NPCs to repair the listed items. This should be
|
||||||
reforge-able-items: [ ]
|
# set for each individual NPC, and should not be set here, unless you want to restrict NPCs which have not been set
|
||||||
|
# up yet.
|
||||||
|
reforgeAbleItems: [ ]
|
||||||
|
|
||||||
# Whether to disable the cool-down period between each re-forge
|
# Whether to disable the cool-down period between each reforge
|
||||||
disable-cool-down: false
|
disableCoolDown: false
|
||||||
|
|
||||||
# Whether to disable the re-forge delay, making re-forging complete instantly
|
# Whether to disable the reforging delay, making re-forging complete instantly
|
||||||
disable-delay: false
|
disableDelay: false
|
||||||
|
|
||||||
# The chance to fail a re-forge, which only repairs the item a tiny bit or not at all (0-100)
|
# The chance to fail reforging an item, which only repairs the item a tiny bit or not at all (0-100)
|
||||||
percent-chance-to-fail-reforge: 10
|
failReforgeChance: 10 # Default = 10%
|
||||||
|
|
||||||
# The chance that an enchantment will be added to the re-forged item (0-100)
|
# The chance that an enchantment will be added to the reforged item (0-100)
|
||||||
percent-chance-for-extra-enchantment: 5
|
extraEnchantmentChance: 5 # Default = 5%
|
||||||
|
|
||||||
# The maximum number of enchantments the blacksmith will try to add
|
# The maximum number of enchantments the blacksmith will try to add
|
||||||
maximum-enchantments: 3
|
maxEnchantments: 3
|
||||||
|
|
||||||
# All settable delays
|
# All settable delays
|
||||||
delays-in-seconds:
|
delaysInSeconds:
|
||||||
# The maximum time for a re-forge to finish
|
# The maximum time for a reforging to finish
|
||||||
maximum: 30
|
maximum: 30
|
||||||
|
|
||||||
# The minimum time for a re-forge to finish
|
# The minimum time for a reforging to finish
|
||||||
minimum: 5
|
minimum: 5
|
||||||
|
|
||||||
# The cool-down period between each re-forge
|
# The cool-down period between each reforge
|
||||||
reforge-cool-down: 60
|
reforgeCoolDown: 60
|
||||||
|
|
||||||
# All messages used by the NPC
|
# All messages used by the NPC
|
||||||
messages:
|
messages:
|
||||||
# The message to display when another player is using the blacksmith
|
# The message to display when another player is using the blacksmith
|
||||||
busy-with-player: "&cI'm busy at the moment. Come back later!"
|
busyPlayerMessage: "&cI'm busy at the moment. Come back later!"
|
||||||
|
|
||||||
# The message to display when the blacksmith is working on the re-forge
|
# The message to display when the blacksmith is working on the reforging
|
||||||
busy-with-reforge: "&cI'm working on it. Be patient!"
|
busyReforgeMessage: "&cI'm working on it. Be patient!"
|
||||||
|
|
||||||
# The message to display when the blacksmith is still on a cool-down from the previous re-forging
|
# The message to display when the blacksmith is still on a cool-down from the previous re-forging
|
||||||
cool-down-not-expired: "&cYou've already had your chance! Give me a break!"
|
coolDownUnexpiredMessage: "&cYou've already had your chance! Give me a break!"
|
||||||
|
|
||||||
# The message to display when informing a player about the re-forge cost
|
# The message to display when informing a player about the reforging cost
|
||||||
cost: "&eIt will cost &a<price> &eto reforge that &a<item>&e! Click again to reforge!"
|
costMessage: "&eIt will cost &a<price> &eto reforge that &a<item>&e! Click again to reforge!"
|
||||||
|
|
||||||
# The message to display when the blacksmith fails to re-forge an item
|
# The message to display when the blacksmith fails to reforge an item
|
||||||
fail-reforge: "&cWhoops! Didn't mean to do that! Maybe next time?"
|
failReforgeMessage: "&cWhoops! Didn't mean to do that! Maybe next time?"
|
||||||
|
|
||||||
# The message to display when a player cannot pay for the re-forge
|
# The message to display when a player cannot pay for the reforging
|
||||||
insufficient-funds: "&cYou don't have enough money to reforge that item!"
|
insufficientFundsMessage: "&cYou don't have enough money to reforge that item!"
|
||||||
|
|
||||||
# The message to display when holding an item the blacksmith is unable to re-forge
|
# The message to display when holding an item the blacksmith is unable to reforge
|
||||||
invalid-item: "&cI'm sorry, but I don't know how to reforge that!"
|
invalidItemMessage: "&cI'm sorry, but I don't know how to reforge that!"
|
||||||
|
|
||||||
# The message to display when presenting a different item than the one just evaluated
|
# The message to display when presenting a different item than the one just evaluated
|
||||||
item-changed-during-reforge: "&cThat's not the item you wanted to reforge before!"
|
itemChangedMessage: "&cThat's not the item you wanted to reforge before!"
|
||||||
|
|
||||||
# The message to display once the blacksmith starts re-forging
|
# The message to display once the blacksmith starts re-forging
|
||||||
start-reforge: "&eOk, let's see what I can do..."
|
startReforgeMessage: "&eOk, let's see what I can do..."
|
||||||
|
|
||||||
# The message to display once the re-forge has successfully finished
|
# The message to display once the reforging has successfully finished
|
||||||
successful-reforge: "There you go! All better!"
|
successMessage: "There you go! All better!"
|
Loading…
Reference in New Issue
Block a user