@@ -66,20 +66,21 @@ public void onTrade(InventoryClickEvent event) {
6666 if (event .getSlotType () == InventoryType .SlotType .RESULT ) {
6767 ItemStack item = event .getCurrentItem ();
6868 // only check items we want
69- if (ItemChecker .isValidItem (item .getType ())) {
70- // if the player shift clicks, show the warning
71- if (event .isShiftClick ()) {
72- String configMessage = toolStats .config .getString ("messages.shift-click-warning.trading" );
73- if (configMessage != null ) {
74- event .getWhoClicked ().sendMessage (ChatColor .translateAlternateColorCodes ('&' , configMessage ));
75- }
76- }
77- ItemStack newItem = addLore (item , player );
78- if (newItem != null ) {
79- // this gets delayed since villager inventories suck for no reason
80- Bukkit .getScheduler ().runTaskLater (toolStats , () -> event .setCurrentItem (newItem ), 5 );
69+ if (!ItemChecker .isValidItem (item .getType ())) {
70+ return ;
71+ }
72+ // if the player shift clicks, show the warning
73+ if (event .isShiftClick ()) {
74+ String configMessage = toolStats .config .getString ("messages.shift-click-warning.trading" );
75+ if (configMessage != null ) {
76+ player .sendMessage (ChatColor .translateAlternateColorCodes ('&' , configMessage ));
8177 }
8278 }
79+ ItemStack newItem = addLore (item , player );
80+ if (newItem != null ) {
81+ // set the new item
82+ event .setCurrentItem (newItem );
83+ }
8384 }
8485 }
8586 }
0 commit comments