From 73ce0714274497883736a178b7b3633b17d74e01 Mon Sep 17 00:00:00 2001 From: LoJoSho Date: Mon, 18 Dec 2023 13:35:02 -0600 Subject: [PATCH] feat: add HookFlags to hooks --- .../java/com/hibiscusmc/hmccosmetics/hooks/Hook.java | 9 ++++++++- .../java/com/hibiscusmc/hmccosmetics/hooks/HookFlag.java | 5 +++++ .../hibiscusmc/hmccosmetics/hooks/items/HookDenizen.java | 4 ++-- .../com/hibiscusmc/hmccosmetics/hooks/items/HookEco.java | 4 ++-- .../hibiscusmc/hmccosmetics/hooks/items/HookGeary.java | 4 ++-- .../hmccosmetics/hooks/items/HookHMCCosmetics.java | 4 ++-- .../hmccosmetics/hooks/items/HookItemAdder.java | 4 ++-- .../hmccosmetics/hooks/items/HookMMOItems.java | 4 ++-- .../hibiscusmc/hmccosmetics/hooks/items/HookMythic.java | 4 ++-- .../hibiscusmc/hmccosmetics/hooks/items/HookOraxen.java | 4 ++-- 10 files changed, 29 insertions(+), 17 deletions(-) create mode 100644 common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/HookFlag.java diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/Hook.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/Hook.java index b263f0df..92bcc01d 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/Hook.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/Hook.java @@ -13,8 +13,15 @@ public abstract class Hook implements Listener { private boolean active = false; private boolean itemHook = false; - public Hook(@NotNull String id) { + public Hook(@NotNull String id, HookFlag... flags) { this.id = id; + for (HookFlag flag : flags) { + switch (flag) { + case ITEM_SUPPORT: + setEnabledItemHook(true); + break; + } + } Hooks.addHook(this); } diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/HookFlag.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/HookFlag.java new file mode 100644 index 00000000..e8a7fcf0 --- /dev/null +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/HookFlag.java @@ -0,0 +1,5 @@ +package com.hibiscusmc.hmccosmetics.hooks; + +public enum HookFlag { + ITEM_SUPPORT +} diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookDenizen.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookDenizen.java index f9b935eb..2887722f 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookDenizen.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookDenizen.java @@ -3,6 +3,7 @@ package com.hibiscusmc.hmccosmetics.hooks.items; import com.denizenscript.denizen.objects.ItemTag; import com.denizenscript.denizencore.utilities.CoreUtilities; import com.hibiscusmc.hmccosmetics.hooks.Hook; +import com.hibiscusmc.hmccosmetics.hooks.HookFlag; import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; @@ -12,8 +13,7 @@ import org.jetbrains.annotations.NotNull; @SuppressWarnings("SpellCheckingInspection") public class HookDenizen extends Hook { public HookDenizen() { - super("denizen"); - setEnabledItemHook(true); + super("denizen", HookFlag.ITEM_SUPPORT); } /** diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookEco.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookEco.java index 4452eb50..e9fa5d80 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookEco.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookEco.java @@ -1,14 +1,14 @@ package com.hibiscusmc.hmccosmetics.hooks.items; import com.hibiscusmc.hmccosmetics.hooks.Hook; +import com.hibiscusmc.hmccosmetics.hooks.HookFlag; import com.willfp.eco.core.items.Items; import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; public class HookEco extends Hook { public HookEco() { - super("Eco"); - setEnabledItemHook(true); + super("Eco", HookFlag.ITEM_SUPPORT); } @Override diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookGeary.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookGeary.java index 5a928211..51ce0bea 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookGeary.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookGeary.java @@ -1,6 +1,7 @@ package com.hibiscusmc.hmccosmetics.hooks.items; import com.hibiscusmc.hmccosmetics.hooks.Hook; +import com.hibiscusmc.hmccosmetics.hooks.HookFlag; import com.mineinabyss.geary.papermc.tracking.items.ItemTrackingKt; import com.mineinabyss.geary.prefabs.PrefabKey; import org.bukkit.inventory.ItemStack; @@ -12,8 +13,7 @@ import org.jetbrains.annotations.NotNull; public class HookGeary extends Hook { public HookGeary() { - super("geary"); - setEnabledItemHook(true); + super("geary", HookFlag.ITEM_SUPPORT); } /** diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookHMCCosmetics.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookHMCCosmetics.java index 425d7678..6e0ad7aa 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookHMCCosmetics.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookHMCCosmetics.java @@ -3,6 +3,7 @@ package com.hibiscusmc.hmccosmetics.hooks.items; import com.hibiscusmc.hmccosmetics.cosmetic.Cosmetic; import com.hibiscusmc.hmccosmetics.cosmetic.Cosmetics; import com.hibiscusmc.hmccosmetics.hooks.Hook; +import com.hibiscusmc.hmccosmetics.hooks.HookFlag; import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; @@ -11,8 +12,7 @@ import org.jetbrains.annotations.NotNull; */ public class HookHMCCosmetics extends Hook { public HookHMCCosmetics() { - super("HMCCosmetics"); - setEnabledItemHook(true); + super("HMCCosmetics", HookFlag.ITEM_SUPPORT); } /** diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookItemAdder.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookItemAdder.java index 8824e7db..341d6f99 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookItemAdder.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookItemAdder.java @@ -3,6 +3,7 @@ package com.hibiscusmc.hmccosmetics.hooks.items; import com.hibiscusmc.hmccosmetics.HMCCosmeticsPlugin; import com.hibiscusmc.hmccosmetics.config.Settings; import com.hibiscusmc.hmccosmetics.hooks.Hook; +import com.hibiscusmc.hmccosmetics.hooks.HookFlag; import dev.lone.itemsadder.api.CustomStack; import dev.lone.itemsadder.api.Events.ItemsAdderLoadDataEvent; import org.bukkit.Material; @@ -19,8 +20,7 @@ public class HookItemAdder extends Hook { private boolean enabled = false; public HookItemAdder() { - super("itemsadder"); - setEnabledItemHook(true); + super("itemsadder", HookFlag.ITEM_SUPPORT); } /** diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookMMOItems.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookMMOItems.java index bd9acff9..4a6b9eec 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookMMOItems.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookMMOItems.java @@ -1,14 +1,14 @@ package com.hibiscusmc.hmccosmetics.hooks.items; import com.hibiscusmc.hmccosmetics.hooks.Hook; +import com.hibiscusmc.hmccosmetics.hooks.HookFlag; import net.Indyuce.mmoitems.MMOItems; import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; public class HookMMOItems extends Hook { public HookMMOItems() { - super("MMOItems"); - setEnabledItemHook(true); + super("MMOItems", HookFlag.ITEM_SUPPORT); } @Override diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookMythic.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookMythic.java index 2dbf8a8c..5765cd5e 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookMythic.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookMythic.java @@ -1,6 +1,7 @@ package com.hibiscusmc.hmccosmetics.hooks.items; import com.hibiscusmc.hmccosmetics.hooks.Hook; +import com.hibiscusmc.hmccosmetics.hooks.HookFlag; import io.lumine.mythic.bukkit.MythicBukkit; import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; @@ -11,8 +12,7 @@ import org.jetbrains.annotations.NotNull; @SuppressWarnings("SpellCheckingInspection") public class HookMythic extends Hook { public HookMythic() { - super("mythicmobs"); - setEnabledItemHook(true); + super("mythicmobs", HookFlag.ITEM_SUPPORT); } /** diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookOraxen.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookOraxen.java index 99b5567e..88ffe1ae 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookOraxen.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/HookOraxen.java @@ -1,6 +1,7 @@ package com.hibiscusmc.hmccosmetics.hooks.items; import com.hibiscusmc.hmccosmetics.hooks.Hook; +import com.hibiscusmc.hmccosmetics.hooks.HookFlag; import io.th0rgal.oraxen.api.OraxenItems; import io.th0rgal.oraxen.items.ItemBuilder; import org.bukkit.inventory.ItemStack; @@ -12,8 +13,7 @@ import org.jetbrains.annotations.NotNull; @SuppressWarnings("SpellCheckingInspection") public class HookOraxen extends Hook { public HookOraxen() { - super("oraxen"); - setEnabledItemHook(true); + super("oraxen", HookFlag.ITEM_SUPPORT); } /**