|
9 | 9 | import java.util.UUID; |
10 | 10 |
|
11 | 11 | import org.bukkit.Bukkit; |
12 | | -import org.bukkit.Material; |
13 | 12 | import org.bukkit.entity.Player; |
14 | 13 | import org.bukkit.event.EventHandler; |
15 | 14 | import org.bukkit.event.EventPriority; |
|
23 | 22 | import org.bukkit.inventory.ItemStack; |
24 | 23 | import org.bukkit.inventory.meta.BookMeta; |
25 | 24 |
|
| 25 | +import com.cryptomorin.xseries.XMaterial; |
26 | 26 | import com.loohp.interactivechat.InteractiveChat; |
27 | 27 | import com.loohp.interactivechat.ObjectHolders.CommandPlaceholderInfo; |
28 | 28 | import com.loohp.interactivechat.ObjectHolders.ICPlaceholder; |
@@ -290,18 +290,21 @@ public void onInventoryClick(InventoryClickEvent event) { |
290 | 290 | } |
291 | 291 | if (block && event.getRawSlot() < event.getView().getTopInventory().getSize()) { |
292 | 292 | if (event.getCurrentItem() != null) { |
293 | | - if (event.getCurrentItem().getType().equals(Material.WRITTEN_BOOK)) { |
| 293 | + XMaterial xmaterial = XMaterial.matchXMaterial(event.getCurrentItem()); |
| 294 | + if (xmaterial.equals(XMaterial.WRITTEN_BOOK)) { |
294 | 295 | ((Player) event.getWhoClicked()).openBook(event.getCurrentItem().clone()); |
295 | | - } else if (event.getCurrentItem().getType().equals(Material.WRITABLE_BOOK)) { |
296 | | - ItemStack book = new ItemStack(Material.WRITTEN_BOOK); |
297 | | - BookMeta ori = (BookMeta) event.getCurrentItem().getItemMeta(); |
298 | | - BookMeta dis = (BookMeta) book.getItemMeta(); |
299 | | - List<BaseComponent[]> pages = new ArrayList<>(ori.spigot().getPages()); |
300 | | - dis.spigot().setPages(pages); |
301 | | - dis.setTitle("Temp Book"); |
302 | | - dis.setAuthor("InteractiveChat"); |
303 | | - book.setItemMeta(dis); |
304 | | - ((Player) event.getWhoClicked()).openBook(book); |
| 296 | + } else if (xmaterial.equals(XMaterial.WRITABLE_BOOK)) { |
| 297 | + ItemStack book = XMaterial.WRITTEN_BOOK.parseItem(); |
| 298 | + if (book != null && book.getItemMeta() instanceof BookMeta) { |
| 299 | + BookMeta ori = (BookMeta) event.getCurrentItem().getItemMeta(); |
| 300 | + BookMeta dis = (BookMeta) book.getItemMeta(); |
| 301 | + List<BaseComponent[]> pages = new ArrayList<>(ori.spigot().getPages()); |
| 302 | + dis.spigot().setPages(pages); |
| 303 | + dis.setTitle("Temp Book"); |
| 304 | + dis.setAuthor("InteractiveChat"); |
| 305 | + book.setItemMeta(dis); |
| 306 | + ((Player) event.getWhoClicked()).openBook(book); |
| 307 | + } |
305 | 308 | } |
306 | 309 | } |
307 | 310 | } |
|
0 commit comments