Skip to content

Commit 355cd26

Browse files
committed
Fix Paper 1.21 fix
1 parent 7b1f3b0 commit 355cd26

File tree

3 files changed

+18
-12
lines changed

3 files changed

+18
-12
lines changed

src/main/java/dev/klash/caramel/Caramel.java

+7-3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import dev.klash.caramel.plugin.ImplCaramelDefault;
77
import dev.klash.caramel.recipe.CaramelRecipe;
88
import dev.klash.caramel.recipe.CaramelRecipeList;
9+
import org.bukkit.Bukkit;
910
import org.bukkit.NamespacedKey;
1011
import org.bukkit.command.Command;
1112
import org.bukkit.command.CommandSender;
@@ -19,26 +20,29 @@
1920

2021
public final class Caramel extends JavaPlugin {
2122

23+
private static Caramel instance;
2224
public static Caramel getInstance() {
23-
return getPlugin(Caramel.class);
25+
return instance == null ? (Caramel)Bukkit.getPluginManager().getPlugin("Caramel") : instance;
2426
}
2527
public CaramelCommandList commands;
2628
public CaramelItemList items;
2729
public CaramelCurrencyList currencies;
2830
public SpiGUI spigui;
2931
public CaramelGuiList guis;
3032

31-
public static NamespacedKey isCaramelKey = new NamespacedKey(Caramel.getInstance(), "is-caramel");
32-
public static NamespacedKey caramelIDKey = new NamespacedKey(Caramel.getInstance(), "caramel-id");
33+
public NamespacedKey caramelIDKey, isCaramelKey;
3334

3435
public String getPrefix() {
3536
return getConfig().getString("messages.caramel-prefix");
3637
}
3738

3839
@Override
3940
public void onEnable() {
41+
instance = this;
4042
saveDefaultConfig();
4143
spigui = new SpiGUI(this);
44+
caramelIDKey = new NamespacedKey(this, "caramel-id");
45+
isCaramelKey = new NamespacedKey(this, "is-caramel");
4246

4347
commands = new CaramelCommandList();
4448
items = new CaramelItemList();

src/main/java/dev/klash/caramel/CaramelListening.java

+9-7
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,15 @@ public void onItemClick(PlayerInteractEvent event) {
2828
}
2929
}
3030
}
31-
for (CaramelItem item : Caramel.getInstance().items.getItemList()) {
32-
if(event.getItem() == null || event.getItem().getItemMeta() == null) continue;
33-
String itemID = item.getDetails().id();
34-
String heldItemID = event.getItem().getItemMeta().getPersistentDataContainer().get(Caramel.caramelIDKey, PersistentDataType.STRING);
35-
if (event.getItem() != null && heldItemID.equalsIgnoreCase(itemID)) {
36-
item.onItemUse(event.getAction().isLeftClick() ? ClickType.LEFT_CLICK : ClickType.RIGHT_CLICK, event.getItem(), event);
37-
if(item.cancelEvent()) event.setCancelled(true);
31+
if(event.getItem().getItemMeta().getPersistentDataContainer().has(Caramel.getInstance().isCaramelKey, PersistentDataType.BOOLEAN)) {
32+
for (CaramelItem item : Caramel.getInstance().items.getItemList()) {
33+
if (event.getItem() == null || event.getItem().getItemMeta() == null) continue;
34+
String itemID = item.getDetails().id();
35+
String heldItemID = event.getItem().getItemMeta().getPersistentDataContainer().get(Caramel.getInstance().caramelIDKey, PersistentDataType.STRING);
36+
if (event.getItem() != null && heldItemID.equalsIgnoreCase(itemID)) {
37+
item.onItemUse(event.getAction().isLeftClick() ? ClickType.LEFT_CLICK : ClickType.RIGHT_CLICK, event.getItem(), event);
38+
if (item.cancelEvent()) event.setCancelled(true);
39+
}
3840
}
3941
}
4042
}

src/main/java/dev/klash/caramel/items/CaramelFactory.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ public static ItemStack build(CaramelItem item) {
1717
m.setCustomModelData(item.getDetails().modelData());
1818

1919

20-
m.getPersistentDataContainer().set(Caramel.isCaramelKey, PersistentDataType.BOOLEAN, true);
21-
m.getPersistentDataContainer().set(Caramel.caramelIDKey, PersistentDataType.STRING, item.getDetails().id());
20+
m.getPersistentDataContainer().set(Caramel.getInstance().isCaramelKey, PersistentDataType.BOOLEAN, true);
21+
m.getPersistentDataContainer().set(Caramel.getInstance().caramelIDKey, PersistentDataType.STRING, item.getDetails().id());
2222

2323
i.setItemMeta(m);
2424
i.setAmount(item.getDetails().defaultStack());

0 commit comments

Comments
 (0)