PluginBugs/Issues-ItemsAdder

Disabling an ore only causes ItemsAdder to fail loading

Closed this issue · 0 comments

From: ItemsAdder/DefaultPack#4

If you disable an Ore without removing all references in recipes etc ItemsAdder dies due to a missing reference left while parsing the configuration instead of correctly realising that the Ore missing means that these need to be disabled too.

For example: Disable Fossil by setting enabled: false in: data/items_packs/iasurvival/ores/items/fossil.yml

During load you will find error:

[16:48:49] [Craft Scheduler Thread - 6 - ItemsAdder/WARN]: [ItemsAdder] Plugin ItemsAdder v3.2.0c-beta6 generated an exception while executing task 226
java.lang.IllegalArgumentException: Cannot have null choice
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:145) ~[guava-31.0.1-jre.jar:?]
at org.bukkit.inventory.RecipeChoice$ExactChoice.(RecipeChoice.java:168) ~[paper-api-1.19-R0.1-SNAPSHOT.jar:?]
at org.bukkit.inventory.RecipeChoice$ExactChoice.(RecipeChoice.java:157) ~[paper-api-1.19-R0.1-SNAPSHOT.jar:?]
at dev.lone.itemsadder.main.fT.(SourceFile:36) ~[ItemsAdder.jar:?]
at dev.lone.itemsadder.main.aB.a(SourceFile:1904) ~[ItemsAdder.jar:?]
at org.bukkit.craftbukkit.v1_19_R1.scheduler.CraftTask.run(CraftTask.java:101) ~[paper-1.19.jar:git-Paper-29]
at org.bukkit.craftbukkit.v1_19_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57) ~[paper-1.19.jar:git-Paper-29]
at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[paper-1.19.jar:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
at java.lang.Thread.run(Thread.java:833) ~[?:?]

Full server log: https://mcpaste.io/d2da8d5fc48a68c4

Expected behaviour would be the recipes that reference the disabled ore would be disabled, and logged as a warning as previously (I think!).