Fixed NoSuchFieldError in MC 1.20.5 and earlier
This commit is contained in:
parent
9de1d16836
commit
251b4c56cd
6 changed files with 32 additions and 6 deletions
|
|
@ -209,4 +209,4 @@ VALID_DONATION_KEY: "Valid donation key."
|
|||
VERSION_INCOMPATIBLE: "{0} {1} is not supported."
|
||||
VERSION_NOTICE: "Version {0} is now available."
|
||||
VERSION_REQUIRED: "{0} {1} or higher is required."
|
||||
WORLD_NOT_FOUND: "World \"{0}\" not found."
|
||||
WORLD_NOT_FOUND: "World \"{0}\" not found."
|
||||
|
|
@ -23,6 +23,7 @@ import org.bukkit.entity.EntityType;
|
|||
import org.bukkit.entity.ItemFrame;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.event.block.SignChangeEvent;
|
||||
import org.bukkit.event.inventory.InventoryType;
|
||||
import org.bukkit.event.player.PlayerInteractEvent;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.MerchantRecipe;
|
||||
|
|
@ -355,6 +356,11 @@ public class BukkitAdapter implements BukkitInterface {
|
|||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isCrafter(InventoryType type) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isCopperChest(Material material) {
|
||||
return false;
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@ import org.bukkit.entity.Entity;
|
|||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.event.block.SignChangeEvent;
|
||||
import org.bukkit.event.inventory.InventoryType;
|
||||
import org.bukkit.event.player.PlayerInteractEvent;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.MerchantRecipe;
|
||||
|
|
@ -434,7 +435,10 @@ public interface BukkitInterface {
|
|||
*/
|
||||
String parseLegacyName(String name);
|
||||
|
||||
boolean isCrafter(InventoryType type);
|
||||
|
||||
boolean isCopperChest(Material material);
|
||||
|
||||
Set<Material> copperChestMaterials();
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ import org.bukkit.Material;
|
|||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.Tag;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.event.inventory.InventoryType;
|
||||
|
||||
import net.coreprotect.model.BlockGroup;
|
||||
|
||||
|
|
@ -162,6 +163,11 @@ public class Bukkit_v1_21 extends Bukkit_v1_20 implements BukkitInterface {
|
|||
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isCrafter(InventoryType type) {
|
||||
return type == InventoryType.CRAFTER;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isCopperChest(Material material) {
|
||||
if (COPPER_CHESTS.contains(material) && material != Material.CHEST) {
|
||||
|
|
|
|||
|
|
@ -17,10 +17,19 @@ import org.bukkit.entity.Player;
|
|||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.inventory.*;
|
||||
import org.bukkit.inventory.*;
|
||||
import org.bukkit.event.inventory.ClickType;
|
||||
import org.bukkit.event.inventory.InventoryAction;
|
||||
import org.bukkit.event.inventory.InventoryClickEvent;
|
||||
import org.bukkit.event.inventory.InventoryDragEvent;
|
||||
import org.bukkit.event.inventory.InventoryMoveItemEvent;
|
||||
import org.bukkit.event.inventory.InventoryType;
|
||||
import org.bukkit.inventory.BlockInventoryHolder;
|
||||
import org.bukkit.inventory.Inventory;
|
||||
import org.bukkit.inventory.InventoryHolder;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import net.coreprotect.CoreProtect;
|
||||
import net.coreprotect.bukkit.BukkitAdapter;
|
||||
import net.coreprotect.config.Config;
|
||||
import net.coreprotect.config.ConfigHandler;
|
||||
import net.coreprotect.consumer.Queue;
|
||||
|
|
@ -338,7 +347,7 @@ public final class InventoryChangeListener extends Queue implements Listener {
|
|||
|
||||
private boolean checkCrafterSlotChange(InventoryClickEvent event) {
|
||||
// Check if the clicked inventory is a crafter
|
||||
if (event.getInventory().getType() != InventoryType.CRAFTER) {
|
||||
if (!BukkitAdapter.ADAPTER.isCrafter(event.getInventory().getType())) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
@ -364,7 +373,8 @@ public final class InventoryChangeListener extends Queue implements Listener {
|
|||
Location location = null;
|
||||
try {
|
||||
location = inventory.getLocation();
|
||||
} catch (Exception e) {
|
||||
}
|
||||
catch (Exception e) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ public class VersionCheckService {
|
|||
}
|
||||
|
||||
// Patch version validation
|
||||
if (VersionUtils.newVersion(ConfigHandler.PATCH_VERSION, VersionUtils.getPluginVersion()) && !ConfigHandler.EDITION_BRANCH.contains("-dev")) {
|
||||
if (VersionUtils.newVersion(ConfigHandler.PATCH_VERSION, VersionUtils.getPluginVersion()) && !VersionUtils.isBranch("dev")) {
|
||||
Chat.console(Phrase.build(Phrase.VERSION_INCOMPATIBLE, "CoreProtect", "v" + VersionUtils.getPluginVersion()));
|
||||
Chat.sendConsoleMessage(Color.GREY + "[CoreProtect] " + Phrase.build(Phrase.INVALID_BRANCH_2));
|
||||
return false;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue