1- package com .github .pinont .singularitylib . plugin .listener ;
1+ package com .github .pinont .plugin .listener ;
22
33import com .destroystokyo .paper .event .player .PlayerRecipeBookClickEvent ;
4+ import com .github .pinont .plugin .CorePlugin ;
45import com .github .pinont .singularitylib .api .event .ItemExecuteEvent ;
5- import com .github .pinont .singularitylib .api .items .ItemCreator ;
66import com .github .pinont .singularitylib .api .items .ItemInteraction ;
77import com .github .pinont .singularitylib .api .ui .Button ;
88import com .github .pinont .singularitylib .api .ui .Menu ;
2424
2525import java .util .Objects ;
2626
27- import static com .github .pinont .singularitylib .plugin .CorePlugin .*;
27+ import static com .github .pinont .singularitylib .api .items .ItemInteraction .*;
28+ import static com .github .pinont .plugin .CorePlugin .*;
2829
2930/**
3031 * Event listener for handling player interactions and menu operations.
3132 * Manages item interactions, inventory clicks, and player join/leave events.
3233 */
3334public class PlayerListener implements Listener {
3435
35- /**
36- * Default constructor for PlayerListener.
37- */
38- public PlayerListener () {
39- }
36+ private final Plugin plugin = CorePlugin .getInstance ();
4037
4138 /**
4239 * Handles player interaction events for custom item interactions.
@@ -47,11 +44,11 @@ public PlayerListener() {
4744 public void interaction (PlayerInteractEvent event ) {
4845 Player player = event .getPlayer ();
4946 ItemStack item = player .getInventory ().getItemInMainHand ();
50- if (!Common .isMainHandEmpty (player ) && ItemCreator . isItemHasPersistData (item , "interaction" , PersistentDataType .STRING )) {
47+ if (!Common .isMainHandEmpty (player ) && isItemHasPersistData (plugin , item , "interaction" , PersistentDataType .STRING )) {
5148 if (event .getPlayer ().getCooldown (item ) > 0 ) return ;
5249 ItemInteraction itemInteraction ;
5350 try {
54- itemInteraction = ItemCreator . getInteraction (item );
51+ itemInteraction = getInteraction (plugin , item );
5552 } catch (IllegalArgumentException e ) {
5653 sendInteractionError (player );
5754 return ;
@@ -171,7 +168,7 @@ private void removePlayerMetadata(Player player, Plugin plugin, String... keys)
171168 }
172169
173170 private void sendInteractionError (Player player ) {
174- sendConsoleMessage ("Interaction ID is not valid: " + ItemCreator . getItemPersistData (player .getInventory ().getItemInMainHand (), "interaction" , PersistentDataType .STRING ));
171+ sendConsoleMessage ("Interaction ID is not valid: " + getItemPersistData (plugin , player .getInventory ().getItemInMainHand (), "interaction" , PersistentDataType .STRING ));
175172 }
176173
177174}
0 commit comments