diff --git a/build.gradle.kts b/build.gradle.kts index 2309585c..d9ce8bac 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,5 @@ import java.text.SimpleDateFormat -version = "2.0.0-dev7" +version = "2.0.0-dev8" plugins { `java-library` diff --git a/src/main/java/com/github/yufiriamazenta/craftorithm/listener/AnvilHandler.java b/src/main/java/com/github/yufiriamazenta/craftorithm/listener/AnvilHandler.java index 905ee74b..3b691eb8 100644 --- a/src/main/java/com/github/yufiriamazenta/craftorithm/listener/AnvilHandler.java +++ b/src/main/java/com/github/yufiriamazenta/craftorithm/listener/AnvilHandler.java @@ -54,6 +54,7 @@ public void onPrepareAnvil(PrepareAnvilEvent event) { if (!conditionResult) { event.getInventory().setRepairCost(0); event.setResult(null); + event.getInventory().setItem(2, null); return; } } @@ -66,6 +67,7 @@ public void onPrepareAnvil(PrepareAnvilEvent event) { } event.getInventory().setRepairCost(anvilRecipe.costLevel()); event.setResult(result); + event.getInventory().setItem(2, result); } @EventHandler(priority = EventPriority.MONITOR) @@ -180,6 +182,7 @@ public void onClickAnvil(InventoryClickEvent event) { AnvilRecipe afterClickRecipe = RecipeManager.INSTANCE.matchAnvilRecipe(base, addition); if (afterClickRecipe == null) { anvilInventory.setItem(2, null); + anvilInventory.setRepairCost(0); return; } anvilInventory.setItem(2, afterClickRecipe.getResult()); diff --git a/src/main/java/com/github/yufiriamazenta/craftorithm/listener/SmithingHandler.java b/src/main/java/com/github/yufiriamazenta/craftorithm/listener/SmithingHandler.java index 077f387b..014a0653 100644 --- a/src/main/java/com/github/yufiriamazenta/craftorithm/listener/SmithingHandler.java +++ b/src/main/java/com/github/yufiriamazenta/craftorithm/listener/SmithingHandler.java @@ -37,6 +37,7 @@ public void onPrepareSmith(PrepareSmithingEvent event) { condition = "if " + condition; boolean result = (boolean) ArcencielDispatcher.INSTANCE.dispatchArcencielBlock(player, condition).obj(); if (!result) { + event.setResult(null); event.getInventory().setResult(null); } } @@ -62,8 +63,10 @@ public void onSmithItem(SmithItemEvent event) { public void checkCannotCraftLore(PrepareSmithingEvent event) { ItemStack[] items = event.getInventory().getContents(); boolean containsLore = ItemUtils.hasCannotCraftLore(items); - if (containsLore) + if (containsLore) { event.getInventory().setResult(null); + event.setResult(null); + } } }