diff options
Diffstat (limited to 'bukkit/src/main')
| -rw-r--r-- | bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmeltingTaskType.java | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmeltingTaskType.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmeltingTaskType.java index ef800384..eb985109 100644 --- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmeltingTaskType.java +++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/tasktype/type/SmeltingTaskType.java @@ -25,6 +25,9 @@ import org.bukkit.inventory.ItemStack; import java.math.RoundingMode; import java.util.Arrays; +import java.util.HashMap; +import java.util.Locale; +import java.util.Map; public final class SmeltingTaskType extends BukkitTaskType { @@ -91,6 +94,7 @@ public final class SmeltingTaskType extends BukkitTaskType { } final InventoryType inventoryType = event.getInventory().getType(); + final String inventoryTypeName = inventoryTypeNames.get(inventoryType); for (TaskUtils.PendingTask pendingTask : TaskUtils.getApplicableTasks(player, qPlayer, this, TaskConstraintSet.ALL)) { Quest quest = pendingTask.quest(); @@ -98,7 +102,7 @@ public final class SmeltingTaskType extends BukkitTaskType { TaskProgress taskProgress = pendingTask.taskProgress(); String mode = (String) task.getConfigValue("mode"); - if (mode != null && !inventoryType.name().equalsIgnoreCase(mode)) { + if (mode != null && !inventoryTypeName.equals(mode)) { super.debug("Specific mode is required, but the actual mode '" + inventoryType + "' does not match, continuing...", quest.getId(), task.getId(), player.getUniqueId()); continue; } @@ -134,4 +138,12 @@ public final class SmeltingTaskType extends BukkitTaskType { TaskUtils.sendTrackAdvancement(player, quest, task, pendingTask, amount); } } + + private static final Map<InventoryType, String> inventoryTypeNames = new HashMap<>() {{ + for (final InventoryType inventoryType : InventoryType.values()) { + final String name = inventoryType.name(); + final String nameLowerCase = name.toLowerCase(Locale.ROOT); + this.put(inventoryType, nameLowerCase); + } + }}; } |
