From 7ffdb3d937bea8141c9980108068a50914f46242 Mon Sep 17 00:00:00 2001 From: Brianna Date: Sun, 26 Apr 2020 17:37:51 -0400 Subject: [PATCH] Unbreakable in 1.8 using the new SongodaCore NBT API. --- .../songoda/epicvouchers/voucher/Voucher.java | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/songoda/epicvouchers/voucher/Voucher.java b/src/main/java/com/songoda/epicvouchers/voucher/Voucher.java index 98cc050..d860908 100644 --- a/src/main/java/com/songoda/epicvouchers/voucher/Voucher.java +++ b/src/main/java/com/songoda/epicvouchers/voucher/Voucher.java @@ -1,5 +1,8 @@ package com.songoda.epicvouchers.voucher; +import com.songoda.core.compatibility.ServerVersion; +import com.songoda.core.nms.NmsManager; +import com.songoda.core.nms.nbt.NBTItem; import com.songoda.core.utils.TextUtils; import com.songoda.epicvouchers.EpicVouchers; import com.songoda.epicvouchers.events.ForceRedeemEvent; @@ -94,15 +97,22 @@ public class Voucher { meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); } - if (unbreakable) { - meta.setUnbreakable(true); - } - if (hideAttributes) { meta.addItemFlags(ItemFlag.HIDE_ATTRIBUTES); meta.addItemFlags(ItemFlag.HIDE_UNBREAKABLE); } - item.setItemMeta(meta); + + if (unbreakable) { + if (ServerVersion.isServerVersionAtLeast(ServerVersion.V1_9)) { + meta.setUnbreakable(true); + item.setItemMeta(meta); + } else { + item.setItemMeta(meta); + NBTItem nbtItem = NmsManager.getNbt().of(item); + nbtItem.set("Unbreakable", (byte) 1); + item = nbtItem.finish(); + } + } return item; }