fix small issues

This commit is contained in:
alexcrea 2026-08-20 14:23:11 +02:00
parent 185a5bc8a2
commit 7a92b94437
Signed by: alexcrea
GPG key ID: E59DF23EE2A2266C
13 changed files with 89 additions and 75 deletions

View file

@ -125,7 +125,7 @@ public class BasicConfigGui extends ChestGui implements ValueUpdatableGui {
this.maxAnvilCost = new IntSettingsGui.IntSettingFactory(
MsgUI.INSTANCE.getBASIC_MAX_ANVIL_COST_TITLE(), this,
ConfigOptions.MAX_ANVIL_COST, ConfigHolder.DEFAULT_CONFIG,
MsgUI.INSTANCE.getBASIC_MAX_ANVIL_COST_DESCRIPTION(),
MsgUI.INSTANCE.getBASIC_MAX_ANVIL_COST_DESCRIPTION(), null,
range.getFirst(), range.getLast(),
ConfigOptions.DEFAULT_MAX_ANVIL_COST,
1, 5, 10
@ -166,7 +166,7 @@ public class BasicConfigGui extends ChestGui implements ValueUpdatableGui {
this.itemRepairCost = new IntSettingsGui.IntSettingFactory(
MsgUI.INSTANCE.getBASIC_ITEM_REPAIR_COST_TITLE(), this,
ConfigOptions.ITEM_REPAIR_COST, ConfigHolder.DEFAULT_CONFIG,
MsgUI.INSTANCE.getBASIC_ITEM_REPAIR_COST_DESCRIPTION(),
MsgUI.INSTANCE.getBASIC_ITEM_REPAIR_COST_DESCRIPTION(), null,
range.getFirst(), range.getLast(),
ConfigOptions.DEFAULT_ITEM_REPAIR_COST,
1, 5, 10, 50, 100
@ -176,7 +176,7 @@ public class BasicConfigGui extends ChestGui implements ValueUpdatableGui {
this.unitRepairCost = new IntSettingsGui.IntSettingFactory(
MsgUI.INSTANCE.getBASIC_UNIT_REPAIR_COST_TITLE(), this,
ConfigOptions.UNIT_REPAIR_COST, ConfigHolder.DEFAULT_CONFIG,
MsgUI.INSTANCE.getBASIC_UNIT_REPAIR_COST_DESCRIPTION(),
MsgUI.INSTANCE.getBASIC_UNIT_REPAIR_COST_DESCRIPTION(), null,
range.getFirst(), range.getLast(),
ConfigOptions.DEFAULT_UNIT_REPAIR_COST,
1, 5, 10, 50, 100
@ -187,7 +187,7 @@ public class BasicConfigGui extends ChestGui implements ValueUpdatableGui {
this.itemRenameCost = new IntSettingsGui.IntSettingFactory(
MsgUI.INSTANCE.getBASIC_ITEM_RENAME_COST_TITLE(), this,
ConfigOptions.ITEM_RENAME_COST, ConfigHolder.DEFAULT_CONFIG,
MsgUI.INSTANCE.getBASIC_ITEM_RENAME_COST_DESCRIPTION(),
MsgUI.INSTANCE.getBASIC_ITEM_RENAME_COST_DESCRIPTION(), null,
range.getFirst(), range.getLast(),
ConfigOptions.DEFAULT_ITEM_RENAME_COST,
1, 5, 10, 50, 100
@ -198,7 +198,7 @@ public class BasicConfigGui extends ChestGui implements ValueUpdatableGui {
this.sacrificeIllegalEnchantCost = new IntSettingsGui.IntSettingFactory(
MsgUI.INSTANCE.getBASIC_SACRIFICE_ILLEGAL_COST_TITLE(), this,
ConfigOptions.SACRIFICE_ILLEGAL_COST, ConfigHolder.DEFAULT_CONFIG,
MsgUI.INSTANCE.getBASIC_SACRIFICE_ILLEGAL_COST_DESCRIPTION(),
MsgUI.INSTANCE.getBASIC_SACRIFICE_ILLEGAL_COST_DESCRIPTION(), null,
range.getFirst(), range.getLast(),
ConfigOptions.DEFAULT_SACRIFICE_ILLEGAL_COST,
1, 5, 10, 50, 100
@ -247,7 +247,7 @@ public class BasicConfigGui extends ChestGui implements ValueUpdatableGui {
this.useOfColorCost = new IntSettingsGui.IntSettingFactory(
MsgUI.INSTANCE.getBASIC_COLOR_COST_TITLE(), this,
ConfigOptions.USE_OF_COLOR_COST, ConfigHolder.DEFAULT_CONFIG,
MsgUI.INSTANCE.getBASIC_COLOR_COST_DESCRIPTION(),
MsgUI.INSTANCE.getBASIC_COLOR_COST_DESCRIPTION(), null,
range.getFirst(), range.getLast(),
ConfigOptions.DEFAULT_USE_OF_COLOR_COST,
1, 5, 10, 50, 100

View file

@ -112,7 +112,7 @@ public class CustomRecipeSubSettingGui extends MappedToListSubSettingGui {
MsgUI.INSTANCE.getCUSTOM_RECIPE_ELEMENT_COST_LEVEL_XP(), this,
this.anvilRecipe + "." + AnvilCustomRecipe.XP_LEVEL_COST_CONFIG,
ConfigHolder.CUSTOM_RECIPE_HOLDER,
null,
null, null,
costRange.getFirst(), costRange.getLast(), AnvilCustomRecipe.DEFAULT_XP_LEVEL_COST_CONFIG, 1, 5, 10
);
@ -120,7 +120,7 @@ public class CustomRecipeSubSettingGui extends MappedToListSubSettingGui {
MsgUI.INSTANCE.getCUSTOM_RECIPE_ELEMENT_COST_LINEAR_XP(), this,
this.anvilRecipe + "." + AnvilCustomRecipe.LINEAR_XP_COST_CONFIG,
ConfigHolder.CUSTOM_RECIPE_HOLDER,
null,
null, null,
0, Integer.MAX_VALUE, AnvilCustomRecipe.DEFAULT_LINEAR_XP_COST_CONFIG, 1, 10, 100, 1000, 10000
);
@ -131,7 +131,7 @@ public class CustomRecipeSubSettingGui extends MappedToListSubSettingGui {
this.anvilRecipe + "." + AnvilCustomRecipe.LEFT_ITEM_CONFIG,
ConfigHolder.CUSTOM_RECIPE_HOLDER,
AnvilCustomRecipe.Companion.getDEFAULT_LEFT_ITEM_CONFIG(),
MsgUI.INSTANCE.getCUSTOM_RECIPE_ELEMENT_ITEM_LEFT_DESCRIPTION()
null, MsgUI.INSTANCE.getCUSTOM_RECIPE_ELEMENT_ITEM_LEFT_DESCRIPTION()
);
this.rightItemFactory = new ItemSettingGui.ItemSettingFactory(
@ -139,7 +139,7 @@ public class CustomRecipeSubSettingGui extends MappedToListSubSettingGui {
this.anvilRecipe + "." + AnvilCustomRecipe.RIGHT_ITEM_CONFIG,
ConfigHolder.CUSTOM_RECIPE_HOLDER,
AnvilCustomRecipe.Companion.getDEFAULT_RIGHT_ITEM_CONFIG(),
MsgUI.INSTANCE.getCUSTOM_RECIPE_ELEMENT_ITEM_RIGHT_DESCRIPTION()
null, MsgUI.INSTANCE.getCUSTOM_RECIPE_ELEMENT_ITEM_RIGHT_DESCRIPTION()
);
this.resultItemFactory = new ItemSettingGui.ItemSettingFactory(
@ -147,7 +147,7 @@ public class CustomRecipeSubSettingGui extends MappedToListSubSettingGui {
this.anvilRecipe + "." + AnvilCustomRecipe.RESULT_ITEM_CONFIG,
ConfigHolder.CUSTOM_RECIPE_HOLDER,
AnvilCustomRecipe.Companion.getDEFAULT_RESULT_ITEM_CONFIG(),
MsgUI.INSTANCE.getCUSTOM_RECIPE_ELEMENT_ITEM_RESULT_DESCRIPTION()
null, MsgUI.INSTANCE.getCUSTOM_RECIPE_ELEMENT_ITEM_RESULT_DESCRIPTION()
);
// Now we update the items

View file

@ -100,7 +100,7 @@ public class EnchantConflictSubSettingGui extends MappedToListSubSettingGui impl
this.minBeforeActiveSettingFactory = new IntSettingsGui.IntSettingFactory(
MsgUI.INSTANCE.getENCHANTMENT_CONFLICT_ELEMENT_MIN_BEFORE_COUNT_TITLE(),
this, this.enchantConflict + ".maxEnchantmentBeforeConflict", ConfigHolder.CONFLICT_HOLDER,
MsgUI.INSTANCE.getENCHANTMENT_CONFLICT_ELEMENT_MIN_BEFORE_COUNT_DESCRIPTION(),
MsgUI.INSTANCE.getENCHANTMENT_CONFLICT_ELEMENT_MIN_BEFORE_COUNT_DESCRIPTION(), null,
0, 255, 0, 1
);

View file

@ -8,6 +8,7 @@ import com.github.stefvanschie.inventoryframework.pane.PatternPane;
import com.github.stefvanschie.inventoryframework.pane.util.Pattern;
import io.delilaheve.CustomAnvil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import xyz.alexcrea.cuanvil.config.ConfigHolder;
import xyz.alexcrea.cuanvil.gui.ValueUpdatableGui;
import xyz.alexcrea.cuanvil.gui.util.GuiGlobalItems;
@ -39,8 +40,13 @@ public abstract class AbstractSettingGui extends ChestGui implements SettingGui
* @param title Title of this gui.
* @param parent Parent gui to go back when completed.
*/
protected AbstractSettingGui(int rows, @NotNull Message title, ValueUpdatableGui parent) {
this(rows, title.textHolder(), parent);
protected AbstractSettingGui(
int rows,
@NotNull Message title,
ValueUpdatableGui parent,
@Nullable Object... params
) {
this(rows, title.textHolder(params), parent);
}
protected GuiItem saveItem;

View file

@ -43,7 +43,7 @@ public class BoolSettingsGui extends AbstractSettingGui {
* @param now The defined value of this setting.
*/
protected BoolSettingsGui(BoolSettingFactory holder, boolean now) {
super(3, holder.getTitle(), holder.parent);
super(3, holder.getTitle(), holder.parent, holder.param);
this.holder = holder;
this.before = now;
this.now = now;
@ -112,7 +112,7 @@ public class BoolSettingsGui extends AbstractSettingGui {
// create & set Value item
ArrayList<Component> valueLore = new ArrayList<>();
if(holder.displayLore != null){
valueLore.addAll(ComponentUtil.INSTANCE.asComponents(holder.displayLore));
valueLore.addAll(ComponentUtil.INSTANCE.asComponents(holder.displayLore, holder.param));
valueLore.add(Component.empty());
}
valueLore.addAll(MsgUI.INSTANCE.getSHARED_CLICK_TO_CHANGE().formatted());

View file

@ -52,7 +52,7 @@ public class DoubleSettingGui extends AbstractSettingGui {
*/
protected DoubleSettingGui(DoubleSettingFactory holder, @NotNull BigDecimal now,
boolean asPercentage, boolean nullOnZero) {
super(3, holder.getTitle(), holder.parent);
super(3, holder.getTitle(), holder.parent, holder.param, holder.param2);
assert holder.steps.length > 0 && holder.steps.length <= 9;
this.holder = holder;
this.asPercentage = asPercentage;

View file

@ -11,6 +11,7 @@ import org.bukkit.inventory.ItemFlag;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import xyz.alexcrea.cuanvil.config.ConfigHolder;
import xyz.alexcrea.cuanvil.gui.ValueUpdatableGui;
import xyz.alexcrea.cuanvil.gui.util.GuiGlobalItems;
@ -34,7 +35,7 @@ public class EnumSettingGui<T extends Enum<T> & EnumSettingGui.ConfigurableEnum>
* @param now The defined value of this setting.
*/
protected EnumSettingGui(EnumSettingFactory<T> holder, T now) {
super(3, holder.getTitle(), holder.parent);
super(3, holder.getTitle(), holder.parent, holder.param);
this.holder = holder;
this.before = now;
this.now = now;
@ -139,6 +140,8 @@ public class EnumSettingGui<T extends Enum<T> & EnumSettingGui.ConfigurableEnum>
public abstract static class EnumSettingFactory<T extends Enum<T> & ConfigurableEnum> extends SettingGuiFactory {
@NotNull
Message title;
@Nullable
Object param;
@NotNull
ValueUpdatableGui parent;
@ -151,12 +154,14 @@ public class EnumSettingGui<T extends Enum<T> & EnumSettingGui.ConfigurableEnum>
* @param config Configuration holder of this setting.
*/
protected EnumSettingFactory(
@NotNull Message title, @NotNull ValueUpdatableGui parent,
@NotNull Message title, @Nullable Object param,
@NotNull ValueUpdatableGui parent,
@NotNull String configPath, @NotNull ConfigHolder config) {
super(configPath, config);
this.title = title;
this.parent = parent;
this.param = param;
this.parent = parent;
}
/**
* @return Get setting's gui title.

View file

@ -45,7 +45,7 @@ public class IntSettingsGui extends AbstractSettingGui {
* @param now The defined value of this setting.
*/
protected IntSettingsGui(IntSettingFactory holder, int now) {
super(3, holder.getTitle(), holder.parent);
super(3, holder.getTitle(), holder.parent, holder.param);
assert holder.steps.length > 0 && holder.steps.length <= 9;
this.holder = holder;
this.before = now;

View file

@ -43,7 +43,7 @@ public class ItemSettingGui extends AbstractSettingGui {
* @param now The defined value of this setting.
*/
protected ItemSettingGui(ItemSettingFactory holder, ItemStack now) {
super(3, holder.getTitle(), holder.parent);
super(3, holder.getTitle(), holder.parent, holder.param);
this.holder = holder;
this.before = now;
this.now = now;
@ -178,6 +178,8 @@ public class ItemSettingGui extends AbstractSettingGui {
ItemStack defaultVal;
@NotNull
List<Message> displayLore;
@Nullable
Object param;
/**
* Constructor for an item setting gui factory.
@ -193,13 +195,14 @@ public class ItemSettingGui extends AbstractSettingGui {
@NotNull Message title, @NotNull ValueUpdatableGui parent,
@NotNull String configPath, @NotNull ConfigHolder config,
@Nullable ItemStack defaultVal,
Message... displayLore) {
@Nullable Object param, Message... displayLore) {
super(configPath, config);
this.title = title;
this.parent = parent;
this.defaultVal = defaultVal;
this.displayLore = Arrays.asList(displayLore);
this.param = param;
}
/**
@ -250,7 +253,7 @@ public class ItemSettingGui extends AbstractSettingGui {
//TODO MESSAGE name ?
meta.setDisplayName("§a" + name);
ComponentUtil.INSTANCE.applyLore(ComponentUtil.INSTANCE.asComponents(getDisplayLore()), meta);
ComponentUtil.INSTANCE.applyLore(ComponentUtil.INSTANCE.asComponents(getDisplayLore(), param), meta);
meta.addItemFlags(ItemFlag.values());
item.setItemMeta(meta);

View file

@ -231,7 +231,7 @@ class DebugToggleExecutor: CASubCommand {
break
}
}
if(found) break
if(found) continue
hadIssue = true
stb.append("Did not found param %$textParam in register list for ${message.key}\n")

View file

@ -53,13 +53,13 @@ open class Message(val key: String, vararg val params: String?, register: Boolea
}
val replacement = value.toString()
if(replacement.isEmpty()) continue //May not be good but can be changed if cause an issue //TODO REPLACE WITH NULL
var current = 0
while(true) {
current = stb.indexOf('%', current)
if(current > 0 && stb[current - 1] == '\\') {
foundBackslashPercent = true
current++
continue
}
if(++current <= 0 || current + key.length > stb.length) break // may be able to be removed if bound checked in startsWith ?
@ -178,7 +178,7 @@ open class Message(val key: String, vararg val params: String?, register: Boolea
}
}
class WarningMessage(key: String, vararg params: String): Message("warning.$key", *params) {
class WarningMessage(key: String, vararg params: String?): Message("warning.$key", *params) {
override fun log(vararg params: Any?) {
val texts = formatted(*params)
@ -189,7 +189,7 @@ class WarningMessage(key: String, vararg params: String): Message("warning.$key"
}
}
class ErrorMessage(key: String, vararg params: String): Message("error.$key", *params) {
class ErrorMessage(key: String, vararg params: String?): Message("error.$key", *params) {
override fun log(vararg params: Any?) {
val texts = formatted(*params)
@ -208,5 +208,5 @@ class ErrorMessage(key: String, vararg params: String): Message("error.$key", *p
}
}
class CommandMessage(key: String, vararg params: String): Message("command.$key", *params)
class UIMessage(key: String, vararg params: String): Message("config-ui.$key", *params)
class CommandMessage(key: String, vararg params: String?): Message("command.$key", *params)
class UIMessage(key: String, vararg params: String?): Message("config-ui.$key", *params)

View file

@ -38,19 +38,19 @@ object MsgUI {
val CUSTOM_RECIPE_TITLE = Message("custom-recipe.title", null, "page", "max_page")
val CUSTOM_RECIPE_ELEMENT_EXACT_COUNT_TITLE = Message("custom-recipe.element.exact-count")
val CUSTOM_RECIPE_ELEMENT_LINEAR_XP_TITLE = Message("custom-recipe.element.linear-xp.title")
val CUSTOM_RECIPE_ELEMENT_EXACT_COUNT_TITLE = Message("custom-recipe.element.exact-count", null)
val CUSTOM_RECIPE_ELEMENT_LINEAR_XP_TITLE = Message("custom-recipe.element.linear-xp.title", null)
val CUSTOM_RECIPE_ELEMENT_LINEAR_XP_NAME = Message("custom-recipe.element.linear-xp.name")
val CUSTOM_RECIPE_ELEMENT_LINEAR_XP_LORE = Message("custom-recipe.element.linear-xp.lore")
val CUSTOM_RECIPE_ELEMENT_COST_LEVEL_XP = Message("custom-recipe.element.recipe-cost.level")
val CUSTOM_RECIPE_ELEMENT_COST_LINEAR_XP = Message("custom-recipe.element.recipe-cost.xp")
val CUSTOM_RECIPE_ELEMENT_COST_LEVEL_XP = Message("custom-recipe.element.recipe-cost.level", null)
val CUSTOM_RECIPE_ELEMENT_COST_LINEAR_XP = Message("custom-recipe.element.recipe-cost.xp", null)
val CUSTOM_RECIPE_ELEMENT_ITEM_LEFT_TITLE = Message("custom-recipe.element.item.left.title")
val CUSTOM_RECIPE_ELEMENT_ITEM_LEFT_DESCRIPTION = Message("custom-recipe.element.item.left.description")
val CUSTOM_RECIPE_ELEMENT_ITEM_RIGHT_TITLE = Message("custom-recipe.element.item.right.title")
val CUSTOM_RECIPE_ELEMENT_ITEM_RIGHT_DESCRIPTION = Message("custom-recipe.element.item.right.description")
val CUSTOM_RECIPE_ELEMENT_ITEM_RESULT_TITLE = Message("custom-recipe.element.item.result.title")
val CUSTOM_RECIPE_ELEMENT_ITEM_RESULT_DESCRIPTION = Message("custom-recipe.element.item.result.description")
val CUSTOM_RECIPE_ELEMENT_ITEM_LEFT_TITLE = Message("custom-recipe.element.item.left.title", null)
val CUSTOM_RECIPE_ELEMENT_ITEM_LEFT_DESCRIPTION = Message("custom-recipe.element.item.left.description", null)
val CUSTOM_RECIPE_ELEMENT_ITEM_RIGHT_TITLE = Message("custom-recipe.element.item.right.title", null)
val CUSTOM_RECIPE_ELEMENT_ITEM_RIGHT_DESCRIPTION = Message("custom-recipe.element.item.right.description", null)
val CUSTOM_RECIPE_ELEMENT_ITEM_RESULT_TITLE = Message("custom-recipe.element.item.result.title", null)
val CUSTOM_RECIPE_ELEMENT_ITEM_RESULT_DESCRIPTION = Message("custom-recipe.element.item.result.description", null)
val CUSTOM_RECIPE_ELEMENT_DELETE_TITLE = Message("custom-recipe.element.delete.title", "type")
val CUSTOM_RECIPE_ELEMENT_DELETE_DESCRIPTION = Message("custom-recipe.element.delete.description", null)
@ -60,8 +60,8 @@ object MsgUI {
val ENCHANTMENT_LEVEL_COST_TITLE = Message("enchant-level-cost.title", null, "page", "max_page")
val ENCHANTMENT_LEVEL_COST_ELEMENT_TITLE = Message("enchant-level-cost.element.title", "name")
val ENCHANTMENT_LEVEL_COST_ELEMENT_DESCRIPTION = Message("enchant-level-cost.element.description", "name")
val ENCHANTMENT_LEVEL_COST_ELEMENT_ITEM_COST = Message("enchant-level-cost.element.item-cost")
val ENCHANTMENT_LEVEL_COST_ELEMENT_BOOK_COST = Message("enchant-level-cost.element.book-cost")
val ENCHANTMENT_LEVEL_COST_ELEMENT_ITEM_COST = Message("enchant-level-cost.element.item-cost", "cost")
val ENCHANTMENT_LEVEL_COST_ELEMENT_BOOK_COST = Message("enchant-level-cost.element.book-cost", "cost")
val ENCHANTMENT_LEVEL_LIMIT_TITLE = Message("enchant-level-limit.title", null, "page", "max_page")
val ENCHANTMENT_LEVEL_LIMIT_ELEMENT_TITLE = Message("enchant-level-limit.element.title", "name")
@ -79,8 +79,8 @@ object MsgUI {
val ENCHANTMENT_CONFLICT_ELEMENT_DELETE_DESCRIPTION = Message("enchant-conflict.element.delete.description", null)
val ENCHANTMENT_CONFLICT_ELEMENT_DELETE_BUTTON_NAME = Message("enchant-conflict.element.delete.button.name")
val ENCHANTMENT_CONFLICT_ELEMENT_DELETE_BUTTON_LORE = Message("enchant-conflict.element.delete.button.lore")
val ENCHANTMENT_CONFLICT_ELEMENT_MIN_BEFORE_COUNT_TITLE = Message("enchant-conflict.element.min-before-count.title")
val ENCHANTMENT_CONFLICT_ELEMENT_MIN_BEFORE_COUNT_DESCRIPTION = Message("enchant-conflict.element.min-before-count.description")
val ENCHANTMENT_CONFLICT_ELEMENT_MIN_BEFORE_COUNT_TITLE = Message("enchant-conflict.element.min-before-count.title", null)
val ENCHANTMENT_CONFLICT_ELEMENT_MIN_BEFORE_COUNT_DESCRIPTION = Message("enchant-conflict.element.min-before-count.description", null)
val ENCHANTMENT_CONFLICT_ELEMENT_MIN_BEFORE_COUNT_ITEM = Message("enchant-conflict.element.min-before-count.item")
val MATERIAL_GROUP_TITLE = Message("material-group.title", null, "page", "max_page")
@ -102,52 +102,52 @@ object MsgUI {
*/
val BASIC_TITLE = Message("basic-config.title")
val BASIC_CAP_ANVIL_COST_TITLE = Message("basic-config.cap-anvil-cost.title")
val BASIC_CAP_ANVIL_COST_DESCRIPTION = Message("basic-config.cap-anvil-cost.description")
val BASIC_CAP_ANVIL_COST_ITEM = Message("basic-config.cap-anvil-cost-cost.item")
val BASIC_CAP_ANVIL_COST_TITLE = Message("basic-config.cap-anvil-cost.title", null)
val BASIC_CAP_ANVIL_COST_DESCRIPTION = Message("basic-config.cap-anvil-cost.description", null)
val BASIC_CAP_ANVIL_COST_ITEM = Message("basic-config.cap-anvil-cost.item")
val BASIC_CAP_ANVIL_COST_DISABLED_TITLE = Message("basic-config.cap-anvil-cost.disabled.title")
val BASIC_CAP_ANVIL_COST_DISABLED_DESCRIPTION = Message("basic-config.cap-anvil-cost.disabled.description")
val BASIC_MAX_ANVIL_COST_TITLE = Message("basic-config.max-anvil-cost.title")
val BASIC_MAX_ANVIL_COST_DESCRIPTION = Message("basic-config.max-anvil-cost.description")
val BASIC_MAX_ANVIL_COST_TITLE = Message("basic-config.max-anvil-cost.title", null)
val BASIC_MAX_ANVIL_COST_DESCRIPTION = Message("basic-config.max-anvil-cost.description", null)
val BASIC_MAX_ANVIL_COST_ITEM = Message("basic-config.max-anvil-cost.item")
val BASIC_MAX_ANVIL_COST_DISABLED_TITLE = Message("basic-config.max-anvil-cost.disabled.title")
val BASIC_MAX_ANVIL_COST_DISABLED_DESCRIPTION = Message("basic-config.max-anvil-cost.disabled.description")
val BASIC_REMOVE_COST_LIMIT_TITLE = Message("basic-config.remove-cost-limit.title")
val BASIC_REMOVE_COST_LIMIT_DESCRIPTION = Message("basic-config.remove-cost-limit.description")
val BASIC_REMOVE_COST_LIMIT_TITLE = Message("basic-config.remove-cost-limit.title", null)
val BASIC_REMOVE_COST_LIMIT_DESCRIPTION = Message("basic-config.remove-cost-limit.description", null)
val BASIC_REMOVE_COST_LIMIT_ITEM = Message("basic-config.remove-cost-limit.item")
val BASIC_REPLACE_TOO_EXPENSIVE_TITLE = Message("basic-config.remove-too-expensive.title")
val BASIC_REPLACE_TOO_EXPENSIVE_DESCRIPTION = Message("basic-config.remove-too-expensive.description")
val BASIC_REPLACE_TOO_EXPENSIVE_TITLE = Message("basic-config.remove-too-expensive.title", null)
val BASIC_REPLACE_TOO_EXPENSIVE_DESCRIPTION = Message("basic-config.remove-too-expensive.description", null)
val BASIC_REPLACE_TOO_EXPENSIVE_DESCRIPTION_NO_NMS = Message("basic-config.remove-too-expensive.description-no-nms")
val BASIC_ITEM_REPAIR_COST_TITLE = Message("basic-config.item-repair-cost.title")
val BASIC_ITEM_REPAIR_COST_DESCRIPTION = Message("basic-config.item-repair-cost.description")
val BASIC_ITEM_REPAIR_COST_TITLE = Message("basic-config.item-repair-cost.title", null)
val BASIC_ITEM_REPAIR_COST_DESCRIPTION = Message("basic-config.item-repair-cost.description", null)
val BASIC_ITEM_RENAME_COST_TITLE = Message("basic-config.item-rename-cost.title")
val BASIC_ITEM_RENAME_COST_DESCRIPTION = Message("basic-config.item-rename-cost.description")
val BASIC_ITEM_RENAME_COST_TITLE = Message("basic-config.item-rename-cost.title", null)
val BASIC_ITEM_RENAME_COST_DESCRIPTION = Message("basic-config.item-rename-cost.description", null)
val BASIC_UNIT_REPAIR_COST_TITLE = Message("basic-config.unit-repair-cost.title")
val BASIC_UNIT_REPAIR_COST_DESCRIPTION = Message("basic-config.unit-repair-cost.description")
val BASIC_UNIT_REPAIR_COST_TITLE = Message("basic-config.unit-repair-cost.title", null)
val BASIC_UNIT_REPAIR_COST_DESCRIPTION = Message("basic-config.unit-repair-cost.description", null)
val BASIC_SACRIFICE_ILLEGAL_COST_TITLE = Message("basic-config.sacrifice-illegal-cost.title")
val BASIC_SACRIFICE_ILLEGAL_COST_DESCRIPTION = Message("basic-config.sacrifice-illegal-cost.description")
val BASIC_SACRIFICE_ILLEGAL_COST_TITLE = Message("basic-config.sacrifice-illegal-cost.title", null)
val BASIC_SACRIFICE_ILLEGAL_COST_DESCRIPTION = Message("basic-config.sacrifice-illegal-cost.description", null)
val BASIC_COLOR_CODE_LIMIT_TITLE = Message("basic-config.color-code.title")
val BASIC_COLOR_CODE_LIMIT_DESCRIPTION = Message("basic-config.color-code.description")
val BASIC_COLOR_CODE_LIMIT_TITLE = Message("basic-config.color-code.title", null)
val BASIC_COLOR_CODE_LIMIT_DESCRIPTION = Message("basic-config.color-code.description", null)
val BASIC_COLOR_HEX_LIMIT_TITLE = Message("basic-config.color-hex.title")
val BASIC_COLOR_HEX_LIMIT_DESCRIPTION = Message("basic-config.color-hex.description")
val BASIC_COLOR_HEX_LIMIT_TITLE = Message("basic-config.color-hex.title", null)
val BASIC_COLOR_HEX_LIMIT_DESCRIPTION = Message("basic-config.color-hex.description", null)
val BASIC_COLOR_PERMISSION_TITLE = Message("basic-config.color-permission.title")
val BASIC_COLOR_PERMISSION_DESCRIPTION = Message("basic-config.color-permission.description")
val BASIC_COLOR_PERMISSION_TITLE = Message("basic-config.color-permission.title", null)
val BASIC_COLOR_PERMISSION_DESCRIPTION = Message("basic-config.color-permission.description", null)
val BASIC_COLOR_PERMISSION_DISABLED_TITLE = Message("basic-config.color-permission.disabled.title")
val BASIC_COLOR_PERMISSION_DISABLED_DESCRIPTION = Message("basic-config.color-permission.disabled.description")
val BASIC_COLOR_COST_TITLE = Message("basic-config.color-cost.title")
val BASIC_COLOR_COST_DESCRIPTION = Message("basic-config.color-cost.description")
val BASIC_COLOR_COST_TITLE = Message("basic-config.color-cost.title", null)
val BASIC_COLOR_COST_DESCRIPTION = Message("basic-config.color-cost.description", null)
val BASIC_COLOR_COST_ITEM = Message("basic-config.color-cost.item")
val BASIC_COLOR_COST_DISABLED_TITLE = Message("basic-config.color-cost.disabled.title")
val BASIC_COLOR_COST_DISABLED_DESCRIPTION = Message("basic-config.color-cost.disabled.description")

View file

@ -356,12 +356,12 @@ config-ui.basic-config.color-cost:
description:
1: "<gray>XP level cost when using color code or hexadecimal color using the anvil."
2: "<gray>conflict With one of the left item enchantment"
disabled:
title: "<red>Cost Of Using Color"
description:
1: "<gray>This config can do something only if one of the following config is enabled:"
2: "<gray>- <green>Allow Use Of Color Code"
3: "<gray>- <green>Allow Use Of Hexadecimal Color"
disabled:
title: "<red>Cost Of Using Color"
description:
1: "<gray>This config can do something only if one of the following config is enabled:"
2: "<gray>- <green>Allow Use Of Color Code"
3: "<gray>- <green>Allow Use Of Hexadecimal Color"
config-ui.basic-config.work-penalty:
title: "<dark_gray>Work Penalty Type"