From 700a95f98452d78dc1086e84cf93c2a035b4be2d Mon Sep 17 00:00:00 2001
From: XiaoMoMi <972454774@qq.com>
Date: Fri, 17 Oct 2025 17:54:17 +0800
Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=A8craft-remainder=E6=89=80?=
=?UTF-8?q?=E9=9C=80=E7=9A=84=E6=B6=88=E6=81=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../entity/furniture/DismountListener1_20.java | 2 +-
.../bukkit/util/LegacyAttributeUtils.java | 3 ++-
.../craftengine/bukkit/util/LegacyAuthLibUtils.java | 3 ++-
.../craftengine/bukkit/util/LegacyEntityUtils.java | 3 ++-
.../bukkit/util/LegacyInventoryUtils.java | 3 ++-
.../bukkit/plugin/PaperCraftEngineBootstrap.java | 5 +++--
.../bukkit/plugin/PaperCraftEnginePlugin.java | 2 +-
.../advancement/BukkitAdvancementManager.java | 2 +-
.../api/event/AsyncResourcePackCacheEvent.java | 2 +-
.../api/event/AsyncResourcePackGenerateEvent.java | 2 +-
.../bukkit/api/event/CraftEngineReloadEvent.java | 2 +-
.../api/event/CustomBlockAttemptPlaceEvent.java | 2 +-
.../bukkit/api/event/CustomBlockBreakEvent.java | 2 +-
.../bukkit/api/event/CustomBlockInteractEvent.java | 2 +-
.../bukkit/api/event/CustomBlockPlaceEvent.java | 2 +-
.../api/event/FurnitureAttemptBreakEvent.java | 2 +-
.../api/event/FurnitureAttemptPlaceEvent.java | 2 +-
.../bukkit/api/event/FurnitureBreakEvent.java | 2 +-
.../bukkit/api/event/FurnitureInteractEvent.java | 2 +-
.../bukkit/api/event/FurniturePlaceEvent.java | 2 +-
.../craftengine/bukkit/plugin/BukkitPlatform.java | 5 ++---
.../bukkit/plugin/gui/BukkitGuiManager.java | 1 -
common-files/src/main/resources/translations/en.yml | 4 ++++
.../recipe/InvalidRecipeIngredientException.java | 13 -------------
.../core/item/recipe/remainder/CraftRemainders.java | 2 +-
.../craftengine/core/plugin/Platform.java | 2 +-
26 files changed, 34 insertions(+), 40 deletions(-)
delete mode 100644 core/src/main/java/net/momirealms/craftengine/core/item/recipe/InvalidRecipeIngredientException.java
diff --git a/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/entity/furniture/DismountListener1_20.java b/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/entity/furniture/DismountListener1_20.java
index 98fd4deea..50db9bcec 100644
--- a/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/entity/furniture/DismountListener1_20.java
+++ b/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/entity/furniture/DismountListener1_20.java
@@ -7,7 +7,7 @@ import org.bukkit.event.Listener;
import java.util.function.BiConsumer;
-public class DismountListener1_20 implements Listener {
+public final class DismountListener1_20 implements Listener {
private final BiConsumer consumer;
public DismountListener1_20(BiConsumer consumer) {
diff --git a/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyAttributeUtils.java b/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyAttributeUtils.java
index 639c83553..720b75e89 100644
--- a/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyAttributeUtils.java
+++ b/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyAttributeUtils.java
@@ -8,7 +8,8 @@ import org.bukkit.entity.Player;
import java.util.Objects;
import java.util.Optional;
-public class LegacyAttributeUtils {
+public final class LegacyAttributeUtils {
+ private LegacyAttributeUtils() {}
public static void setMaxHealth(ArmorStand entity) {
Objects.requireNonNull(entity.getAttribute(Attribute.GENERIC_MAX_HEALTH)).setBaseValue(0.01);
diff --git a/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyAuthLibUtils.java b/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyAuthLibUtils.java
index 63a00b16e..7a7701d71 100644
--- a/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyAuthLibUtils.java
+++ b/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyAuthLibUtils.java
@@ -4,7 +4,8 @@ import com.mojang.authlib.GameProfile;
import java.util.UUID;
-public class LegacyAuthLibUtils {
+public final class LegacyAuthLibUtils {
+ private LegacyAuthLibUtils() {}
public static String getName(GameProfile profile) {
return profile.getName();
diff --git a/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyEntityUtils.java b/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyEntityUtils.java
index 35a23f0ad..15425cc8e 100644
--- a/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyEntityUtils.java
+++ b/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyEntityUtils.java
@@ -8,7 +8,8 @@ import org.bukkit.event.entity.CreatureSpawnEvent;
import java.util.function.Consumer;
-public class LegacyEntityUtils {
+public final class LegacyEntityUtils {
+ private LegacyEntityUtils() {}
public static Entity spawnEntity(World world, Location loc, EntityType type, Consumer function) {
return world.spawnEntity(loc, type, CreatureSpawnEvent.SpawnReason.CUSTOM, function::accept);
diff --git a/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyInventoryUtils.java b/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyInventoryUtils.java
index 4c0d200f6..7b8827dd0 100644
--- a/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyInventoryUtils.java
+++ b/bukkit/legacy/src/main/java/net/momirealms/craftengine/bukkit/util/LegacyInventoryUtils.java
@@ -10,7 +10,8 @@ import org.bukkit.inventory.InventoryView;
import org.bukkit.inventory.Merchant;
import org.jetbrains.annotations.Nullable;
-public class LegacyInventoryUtils {
+public final class LegacyInventoryUtils {
+ private LegacyInventoryUtils() {}
public static Inventory getTopInventory(Player player) {
return player.getOpenInventory().getTopInventory();
diff --git a/bukkit/paper-loader/src/main/java/net/momirealms/craftengine/bukkit/plugin/PaperCraftEngineBootstrap.java b/bukkit/paper-loader/src/main/java/net/momirealms/craftengine/bukkit/plugin/PaperCraftEngineBootstrap.java
index 45eb0a35d..3487acf09 100644
--- a/bukkit/paper-loader/src/main/java/net/momirealms/craftengine/bukkit/plugin/PaperCraftEngineBootstrap.java
+++ b/bukkit/paper-loader/src/main/java/net/momirealms/craftengine/bukkit/plugin/PaperCraftEngineBootstrap.java
@@ -17,7 +17,7 @@ import java.lang.reflect.Method;
import java.util.Objects;
@SuppressWarnings("UnstableApiUsage")
-public class PaperCraftEngineBootstrap implements PluginBootstrap {
+public final class PaperCraftEngineBootstrap implements PluginBootstrap {
private static final Class> clazz$PluginProviderContext = PluginProviderContext.class;
private static final Class> clazz$ComponentLogger = Objects.requireNonNull(
ReflectionUtils.getClazz(
@@ -29,7 +29,8 @@ public class PaperCraftEngineBootstrap implements PluginBootstrap {
clazz$PluginProviderContext, clazz$ComponentLogger, new String[] { "getLogger" }
)
);
- protected BukkitCraftEngine plugin;
+
+ BukkitCraftEngine plugin;
@Override
public void bootstrap(@NotNull BootstrapContext context) {
diff --git a/bukkit/paper-loader/src/main/java/net/momirealms/craftengine/bukkit/plugin/PaperCraftEnginePlugin.java b/bukkit/paper-loader/src/main/java/net/momirealms/craftengine/bukkit/plugin/PaperCraftEnginePlugin.java
index ee3ac717b..0840c777b 100644
--- a/bukkit/paper-loader/src/main/java/net/momirealms/craftengine/bukkit/plugin/PaperCraftEnginePlugin.java
+++ b/bukkit/paper-loader/src/main/java/net/momirealms/craftengine/bukkit/plugin/PaperCraftEnginePlugin.java
@@ -2,7 +2,7 @@ package net.momirealms.craftengine.bukkit.plugin;
import org.bukkit.plugin.java.JavaPlugin;
-public class PaperCraftEnginePlugin extends JavaPlugin {
+public final class PaperCraftEnginePlugin extends JavaPlugin {
private final PaperCraftEngineBootstrap bootstrap;
public PaperCraftEnginePlugin(PaperCraftEngineBootstrap bootstrap) {
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/advancement/BukkitAdvancementManager.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/advancement/BukkitAdvancementManager.java
index e42a03083..9a5f8acc3 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/advancement/BukkitAdvancementManager.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/advancement/BukkitAdvancementManager.java
@@ -22,7 +22,7 @@ import net.momirealms.craftengine.core.util.VersionHelper;
import java.nio.file.Path;
import java.util.*;
-public class BukkitAdvancementManager extends AbstractAdvancementManager {
+public final class BukkitAdvancementManager extends AbstractAdvancementManager {
private final BukkitCraftEngine plugin;
private final AdvancementParser advancementParser;
private final Map advancements = new HashMap<>();
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/AsyncResourcePackCacheEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/AsyncResourcePackCacheEvent.java
index 35f1cdd4f..dfa064fa3 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/AsyncResourcePackCacheEvent.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/AsyncResourcePackCacheEvent.java
@@ -21,7 +21,7 @@ import java.nio.file.Path;
* if you need the cache to recognize updates.
*
*/
-public class AsyncResourcePackCacheEvent extends Event {
+public final class AsyncResourcePackCacheEvent extends Event {
private static final HandlerList HANDLER_LIST = new HandlerList();
private final PackCacheData cacheData;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/AsyncResourcePackGenerateEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/AsyncResourcePackGenerateEvent.java
index efca827ba..4a058e76b 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/AsyncResourcePackGenerateEvent.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/AsyncResourcePackGenerateEvent.java
@@ -6,7 +6,7 @@ import org.jetbrains.annotations.NotNull;
import java.nio.file.Path;
-public class AsyncResourcePackGenerateEvent extends Event {
+public final class AsyncResourcePackGenerateEvent extends Event {
private static final HandlerList HANDLER_LIST = new HandlerList();
private final Path generatedPackPath;
private final Path zipFilePath;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CraftEngineReloadEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CraftEngineReloadEvent.java
index 949299b48..d3d078099 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CraftEngineReloadEvent.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CraftEngineReloadEvent.java
@@ -5,7 +5,7 @@ import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
import org.jetbrains.annotations.NotNull;
-public class CraftEngineReloadEvent extends Event {
+public final class CraftEngineReloadEvent extends Event {
private static final HandlerList HANDLER_LIST = new HandlerList();
private final BukkitCraftEngine plugin;
private static boolean firstFlag = true;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockAttemptPlaceEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockAttemptPlaceEvent.java
index af3683f71..320bd5552 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockAttemptPlaceEvent.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockAttemptPlaceEvent.java
@@ -12,7 +12,7 @@ import org.bukkit.event.HandlerList;
import org.bukkit.event.player.PlayerEvent;
import org.jetbrains.annotations.NotNull;
-public class CustomBlockAttemptPlaceEvent extends PlayerEvent implements Cancellable {
+public final class CustomBlockAttemptPlaceEvent extends PlayerEvent implements Cancellable {
private static final HandlerList HANDLER_LIST = new HandlerList();
private boolean cancelled;
private final CustomBlock customBlock;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockBreakEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockBreakEvent.java
index 4034c8dea..e6f6a3451 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockBreakEvent.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockBreakEvent.java
@@ -10,7 +10,7 @@ import org.bukkit.event.HandlerList;
import org.bukkit.event.player.PlayerEvent;
import org.jetbrains.annotations.NotNull;
-public class CustomBlockBreakEvent extends PlayerEvent implements Cancellable {
+public final class CustomBlockBreakEvent extends PlayerEvent implements Cancellable {
private static final HandlerList HANDLER_LIST = new HandlerList();
private boolean cancelled;
private final CustomBlock customBlock;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockInteractEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockInteractEvent.java
index f9c9eccf2..cc37edb93 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockInteractEvent.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockInteractEvent.java
@@ -15,7 +15,7 @@ import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
-public class CustomBlockInteractEvent extends PlayerEvent implements Cancellable {
+public final class CustomBlockInteractEvent extends PlayerEvent implements Cancellable {
private static final HandlerList HANDLER_LIST = new HandlerList();
private boolean cancelled;
private final CustomBlock customBlock;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockPlaceEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockPlaceEvent.java
index 53ce67e2a..cffe6a3bf 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockPlaceEvent.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/CustomBlockPlaceEvent.java
@@ -11,7 +11,7 @@ import org.bukkit.event.HandlerList;
import org.bukkit.event.player.PlayerEvent;
import org.jetbrains.annotations.NotNull;
-public class CustomBlockPlaceEvent extends PlayerEvent implements Cancellable {
+public final class CustomBlockPlaceEvent extends PlayerEvent implements Cancellable {
private static final HandlerList HANDLER_LIST = new HandlerList();
private final CustomBlock customBlock;
private final ImmutableBlockState state;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureAttemptBreakEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureAttemptBreakEvent.java
index 6a26aab44..901c6f032 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureAttemptBreakEvent.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureAttemptBreakEvent.java
@@ -8,7 +8,7 @@ import org.bukkit.event.HandlerList;
import org.bukkit.event.player.PlayerEvent;
import org.jetbrains.annotations.NotNull;
-public class FurnitureAttemptBreakEvent extends PlayerEvent implements Cancellable {
+public final class FurnitureAttemptBreakEvent extends PlayerEvent implements Cancellable {
private static final HandlerList HANDLER_LIST = new HandlerList();
private boolean cancelled;
private final BukkitFurniture furniture;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureAttemptPlaceEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureAttemptPlaceEvent.java
index f77c77e12..6d0a54209 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureAttemptPlaceEvent.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureAttemptPlaceEvent.java
@@ -12,7 +12,7 @@ import org.bukkit.event.HandlerList;
import org.bukkit.event.player.PlayerEvent;
import org.jetbrains.annotations.NotNull;
-public class FurnitureAttemptPlaceEvent extends PlayerEvent implements Cancellable {
+public final class FurnitureAttemptPlaceEvent extends PlayerEvent implements Cancellable {
private static final HandlerList HANDLER_LIST = new HandlerList();
private boolean cancelled;
private final CustomFurniture furniture;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureBreakEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureBreakEvent.java
index 087004c50..20dd2a80a 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureBreakEvent.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureBreakEvent.java
@@ -8,7 +8,7 @@ import org.bukkit.event.HandlerList;
import org.bukkit.event.player.PlayerEvent;
import org.jetbrains.annotations.NotNull;
-public class FurnitureBreakEvent extends PlayerEvent implements Cancellable {
+public final class FurnitureBreakEvent extends PlayerEvent implements Cancellable {
private static final HandlerList HANDLER_LIST = new HandlerList();
private boolean cancelled;
private final BukkitFurniture furniture;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureInteractEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureInteractEvent.java
index a9a523484..aba399794 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureInteractEvent.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurnitureInteractEvent.java
@@ -9,7 +9,7 @@ import org.bukkit.event.HandlerList;
import org.bukkit.event.player.PlayerEvent;
import org.jetbrains.annotations.NotNull;
-public class FurnitureInteractEvent extends PlayerEvent implements Cancellable {
+public final class FurnitureInteractEvent extends PlayerEvent implements Cancellable {
private static final HandlerList HANDLER_LIST = new HandlerList();
private boolean cancelled;
private final BukkitFurniture furniture;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurniturePlaceEvent.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurniturePlaceEvent.java
index 8ea0c9645..9f495d317 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurniturePlaceEvent.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/api/event/FurniturePlaceEvent.java
@@ -9,7 +9,7 @@ import org.bukkit.event.HandlerList;
import org.bukkit.event.player.PlayerEvent;
import org.jetbrains.annotations.NotNull;
-public class FurniturePlaceEvent extends PlayerEvent implements Cancellable {
+public final class FurniturePlaceEvent extends PlayerEvent implements Cancellable {
private static final HandlerList HANDLER_LIST = new HandlerList();
private final Location location;
private final BukkitFurniture furniture;
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/BukkitPlatform.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/BukkitPlatform.java
index 171b48994..e9195e591 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/BukkitPlatform.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/BukkitPlatform.java
@@ -6,7 +6,6 @@ import net.kyori.adventure.text.Component;
import net.momirealms.craftengine.bukkit.api.BukkitAdaptors;
import net.momirealms.craftengine.bukkit.nms.FastNMS;
import net.momirealms.craftengine.bukkit.plugin.reflection.bukkit.CraftBukkitReflections;
-import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.CoreReflections;
import net.momirealms.craftengine.bukkit.plugin.reflection.minecraft.MRegistryOps;
import net.momirealms.craftengine.bukkit.util.ComponentUtils;
import net.momirealms.craftengine.bukkit.util.LegacyInventoryUtils;
@@ -94,10 +93,10 @@ public class BukkitPlatform implements Platform {
}
@Override
- public void openMerchant(Player player, Component title, List> offers) {
+ public void openMerchant(Player player, Component title, List> offers) {
Merchant merchant = Bukkit.createMerchant();
List recipes = merchant.getRecipes();
- for (MerchantOffer offer : offers) {
+ for (MerchantOffer> offer : offers) {
MerchantRecipe merchantRecipe = new MerchantRecipe((ItemStack) offer.result().getItem(), 0, Integer.MAX_VALUE, offer.xp() > 0, offer.xp(), 0);
merchantRecipe.addIngredient((ItemStack) offer.cost1().getItem());
offer.cost2().ifPresent(it -> merchantRecipe.addIngredient((ItemStack) it.getItem()));
diff --git a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/gui/BukkitGuiManager.java b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/gui/BukkitGuiManager.java
index 06c01928f..5dcdbc23b 100644
--- a/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/gui/BukkitGuiManager.java
+++ b/bukkit/src/main/java/net/momirealms/craftengine/bukkit/plugin/gui/BukkitGuiManager.java
@@ -22,7 +22,6 @@ import org.bukkit.event.inventory.InventoryClickEvent;
import org.bukkit.event.inventory.InventoryCloseEvent;
import org.bukkit.event.inventory.InventoryDragEvent;
import org.bukkit.event.player.PlayerQuitEvent;
-import org.bukkit.inventory.MerchantRecipe;
public class BukkitGuiManager implements GuiManager, Listener {
private static BukkitGuiManager instance;
diff --git a/common-files/src/main/resources/translations/en.yml b/common-files/src/main/resources/translations/en.yml
index b5dc47ccc..fe7dd065c 100644
--- a/common-files/src/main/resources/translations/en.yml
+++ b/common-files/src/main/resources/translations/en.yml
@@ -184,6 +184,10 @@ warning.config.item.settings.invulnerable.invalid_damage_source: "Issue
warning.config.item.settings.equipment.missing_asset_id: "Issue found in file - The item '' is missing the required 'asset-id' argument for 'equipment' settings."
warning.config.item.settings.equipment.invalid_asset_id: "Issue found in file - The item '' is using an invalid 'asset-id' argument for 'equipment' settings. This might be because you haven't created this equipment configuration or misspelled the asset-id."
warning.config.item.settings.projectile.missing_item: "Issue found in file - The item '' is missing the required 'item' argument for 'projectile' settings."
+warning.config.item.settings.craft_remainder.missing_type: "Issue found in file - The item '' is missing the required 'type' argument for 'craft-remainder'."
+warning.config.item.settings.craft_remainder.invalid_type: "Issue found in file - The item '' is using an invalid craft-remainder type ''."
+warning.config.item.settings.craft_remainder.fixed.missing_item: "Issue found in file - The item '' is missing the required 'item' argument for fixed 'craft-remainder'."
+warning.config.item.settings.craft_remainder.recipe_based.missing_terms: "Issue found in file - The item '' is missing the required 'terms' argument for recipe based 'craft-remainder'."
warning.config.item.data.attribute_modifiers.missing_type: "Issue found in file - The item '' is missing the required 'type' argument for 'attribute-modifiers' data."
warning.config.item.data.attribute_modifiers.missing_amount: "Issue found in file - The item '' is missing the required 'amount' argument for 'attribute-modifiers' data."
warning.config.item.data.attribute_modifiers.missing_operation: "Issue found in file - The item '' is missing the required 'operation' argument for 'attribute-modifiers' data."
diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/InvalidRecipeIngredientException.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/InvalidRecipeIngredientException.java
deleted file mode 100644
index 36ed4d887..000000000
--- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/InvalidRecipeIngredientException.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package net.momirealms.craftengine.core.item.recipe;
-
-public class InvalidRecipeIngredientException extends RuntimeException {
- private final String ingredient;
-
- public InvalidRecipeIngredientException(String ingredient) {
- this.ingredient = ingredient;
- }
-
- public String ingredient() {
- return ingredient;
- }
-}
diff --git a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/remainder/CraftRemainders.java b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/remainder/CraftRemainders.java
index 9f44cc729..ed1551cac 100644
--- a/core/src/main/java/net/momirealms/craftengine/core/item/recipe/remainder/CraftRemainders.java
+++ b/core/src/main/java/net/momirealms/craftengine/core/item/recipe/remainder/CraftRemainders.java
@@ -33,7 +33,7 @@ public class CraftRemainders {
Key key = Key.withDefaultNamespace(type, Key.DEFAULT_NAMESPACE);
CraftRemainderFactory factory = BuiltInRegistries.CRAFT_REMAINDER_FACTORY.getValue(key);
if (factory == null) {
- throw new LocalizedResourceConfigException("warning.config.function.invalid_type", type);
+ throw new LocalizedResourceConfigException("warning.config.item.settings.craft_remainder.invalid_type", type);
}
return factory.create(map);
}
diff --git a/core/src/main/java/net/momirealms/craftengine/core/plugin/Platform.java b/core/src/main/java/net/momirealms/craftengine/core/plugin/Platform.java
index ea1942453..039146214 100644
--- a/core/src/main/java/net/momirealms/craftengine/core/plugin/Platform.java
+++ b/core/src/main/java/net/momirealms/craftengine/core/plugin/Platform.java
@@ -27,5 +27,5 @@ public interface Platform {
ParticleType getParticleType(Key name);
- void openMerchant(Player player, Component title, List> offers);
+ void openMerchant(Player player, Component title, List> offers);
}