diff options
| author | Krakenied <Krakenied1@gmail.com> | 2024-03-13 12:12:04 +0100 |
|---|---|---|
| committer | Leonardo Bishop <13875753+LMBishop@users.noreply.github.com> | 2024-03-16 00:18:37 +0000 |
| commit | d7405eed87e873699a18a56cc423061126895ffc (patch) | |
| tree | 19c47dd2b5e5715050a2a0fcb24b6c831a0c6842 /bukkit | |
| parent | 038cc4a5080116c1f16d8b178978d10837e3f55c (diff) | |
Clarity changes to smithing task type + docs
Related to https://github.com/LMBishop/Quests/pull/627
Diffstat (limited to 'bukkit')
| -rw-r--r-- | bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmithingTaskType.java | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmithingTaskType.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmithingTaskType.java index 44b5a124..600a19cf 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmithingTaskType.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmithingTaskType.java @@ -36,7 +36,14 @@ public final class SmithingTaskType extends BukkitTaskType { super.addConfigValidator(TaskUtils.useItemStackConfigValidator(this, "item")); super.addConfigValidator(TaskUtils.useIntegerConfigValidator(this, "data")); super.addConfigValidator(TaskUtils.useBooleanConfigValidator(this, "exact-match")); + + if (plugin.getVersionSpecificHandler().getMinecraftVersion() < 20) { + return; + } + + super.addConfigValidator(TaskUtils.useRequiredConfigValidator(this, "mode")); super.addConfigValidator(TaskUtils.useAcceptedValuesConfigValidator(this, Arrays.asList( + "any", // for clarity reasons we want the user to specify the mode on 1.20+ "transform", "trim" ), "mode")); @@ -85,9 +92,11 @@ public final class SmithingTaskType extends BukkitTaskType { Task task = pendingTask.task(); TaskProgress taskProgress = pendingTask.taskProgress(); + // null on versions lower than 1.20 if (recipeType != null) { final String mode = (String) task.getConfigValue("mode"); - if (!recipeType.equals(mode)) { + + if (!recipeType.equals(mode) && !"any".equals(mode)) { super.debug("Specific mode is required, but the actual mode '" + recipeType + "' does not match, continuing...", quest.getId(), task.getId(), player.getUniqueId()); continue; } |
