Fixed result amount issue

Fixed an issue where results only gave one item for crafting regardless of how many were set during the initial recipe creation.
This commit is contained in:
Paul Reilly
2020-07-12 20:02:57 -05:00
parent a5c024ee76
commit a084d42eb9
13 changed files with 90 additions and 17 deletions

View File

@ -0,0 +1,61 @@
package dev.coomware;
import org.bukkit.Material;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.inventory.CraftItemEvent;
import org.bukkit.event.inventory.PrepareItemCraftEvent;
import org.bukkit.inventory.CraftingInventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.Recipe;
import org.bukkit.plugin.Plugin;
public class CraftingListener implements Listener {
public CraftingListener(Plugin instance) {
instance.getServer().getPluginManager().registerEvents(this, instance);
}
@EventHandler
public void preCraftEvent(PrepareItemCraftEvent e) {
final Recipe recipe = e.getRecipe();
if (recipe == null) { return; }
final ItemStack result = recipe.getResult();
final CraftingInventory inv = e.getInventory();
if (e.isRepair()) { return; }
if (result.getType().equals(Material.NETHER_WART)) {
result.setAmount(9);
inv.setResult(result);
}
if (result.getType().equals(Material.CRYING_OBSIDIAN)) {
result.setAmount(2);
inv.setResult(result);
}
if (result.getType().equals(Material.BEDROCK)) {
result.setAmount(4);
inv.setResult(result);
}
}
@EventHandler
public void craftEvent(CraftItemEvent e) {
final ItemStack result = e.getRecipe().getResult();
final CraftingInventory inv = e.getInventory();
if (result.getType().equals(Material.NETHER_WART)) {
result.setAmount(9);
inv.setResult(result);
}
if (result.getType().equals(Material.CRYING_OBSIDIAN)) {
result.setAmount(2);
inv.setResult(result);
}
if (result.getType().equals(Material.BEDROCK)) {
result.setAmount(4);
inv.setResult(result);
}
}
}

View File

@ -1,5 +1,6 @@
package dev.coomware;
import org.bukkit.Bukkit;
import org.bukkit.Server;
import org.bukkit.plugin.java.JavaPlugin;
@ -18,10 +19,12 @@ public class Uncraftables extends JavaPlugin {
@Override
public void onEnable() {
new Craftable(this).craftables();
new CraftingListener(this);
Bukkit.getLogger().info("[Uncraftables] successfully loaded all recipes.");
}
@Override
public void onDisable() {
//
}
}

View File

@ -1,6 +1,6 @@
name: Uncraftables
main: dev.coomware.Uncraftables
version: 1.0.0
version: 1.0.1
author: CoomWare
description: Adds in crafting recipes for all uncraftable items.
api-version: 1.16