From 26b5472924f42ad01aa81157cfa51ef2c996978f Mon Sep 17 00:00:00 2001 From: Boy Date: Sat, 28 Jan 2023 18:53:09 +0100 Subject: [PATCH 1/4] add looty support --- build.gradle.kts | 5 ++++- common/build.gradle.kts | 2 ++ .../hmccosmetics/hooks/items/ItemHooks.java | 1 + .../hmccosmetics/hooks/items/LootyHook.java | 20 +++++++++++++++++++ 4 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java diff --git a/build.gradle.kts b/build.gradle.kts index 3b5d4cc2..abd7d00f 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -68,6 +68,9 @@ allprojects { compileOnly("com.ticxo.modelengine:api:R3.0.1") compileOnly("com.github.oraxen:oraxen:-SNAPSHOT") compileOnly("com.github.LoneDev6:API-ItemsAdder:3.2.5") + compileOnly("com.mineinabyss:idofront:0.12.111") + compileOnly("com.mineinabyss:geary-papermc-core:0.19.113") + compileOnly("com.mineinabyss:looty:0.8.67") compileOnly("com.sk89q.worldguard:worldguard-bukkit:7.1.0-SNAPSHOT") compileOnly("it.unimi.dsi:fastutil:8.5.11") @@ -227,4 +230,4 @@ bukkit { java { toolchain.languageVersion.set(JavaLanguageVersion.of(17 )) -} \ No newline at end of file +} diff --git a/common/build.gradle.kts b/common/build.gradle.kts index 6ce97c80..d1881728 100644 --- a/common/build.gradle.kts +++ b/common/build.gradle.kts @@ -12,6 +12,8 @@ dependencies { compileOnly("com.ticxo.modelengine:api:R3.0.1") compileOnly("com.github.oraxen:oraxen:-SNAPSHOT") compileOnly("com.github.LoneDev6:API-ItemsAdder:3.2.5") + compileOnly("com.mineinabyss:geary-papermc-core:0.19.113") + compileOnly("com.mineinabyss:looty:0.8.67") compileOnly("com.hibiscus:hmccolor:0.3-SNAPSHOT") compileOnly("com.sk89q.worldguard:worldguard-bukkit:7.1.0-SNAPSHOT") compileOnly("it.unimi.dsi:fastutil:8.5.11") diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/ItemHooks.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/ItemHooks.java index 43136efb..19b929d4 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/ItemHooks.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/ItemHooks.java @@ -11,6 +11,7 @@ public class ItemHooks { private static HashMap itemHooks = new HashMap<>(); private static OraxenHook ORAXEN_HOOK = new OraxenHook(); + private static LootyHook LOOTY_HOOK = new LootyHook(); private static ItemAdderHook ITEMADDER_HOOK = new ItemAdderHook(); private static MythicHook MYTHIC_HOOK = new MythicHook(); private static HMCCosmeticsHook HMCCOSMETIC_HOOK = new HMCCosmeticsHook(); diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java new file mode 100644 index 00000000..55f547d6 --- /dev/null +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java @@ -0,0 +1,20 @@ +package com.hibiscusmc.hmccosmetics.hooks.items; + +import com.mineinabyss.geary.prefabs.PrefabKey; +import com.mineinabyss.looty.LootyFactory; +import io.th0rgal.oraxen.api.OraxenItems; +import org.bukkit.event.Listener; +import org.bukkit.inventory.ItemStack; + +public class LootyHook extends ItemHook implements Listener { + + public LootyHook() { + super("looty"); + } + + @Override + public ItemStack get(String itemid) { + if (itemid.split(":").length != 2) return null; + return LootyFactory.INSTANCE.createFromPrefab(PrefabKey.Companion.of(itemid)); + } +} From 73ccddf6286707f62a99220e528b201736158343 Mon Sep 17 00:00:00 2001 From: Boy Date: Sat, 28 Jan 2023 21:50:02 +0100 Subject: [PATCH 2/4] add softdepend --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index abd7d00f..006835af 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -158,7 +158,7 @@ bukkit { apiVersion = "1.16" authors = listOf("LoJoSho") depend = listOf("ProtocolLib", "PlaceholderAPI") - softDepend = listOf("ModelEngine", "Oraxen", "ItemsAdder", "HMCColor", "WorldGuard", "MythicMobs") + softDepend = listOf("ModelEngine", "Oraxen", "ItemsAdder", "Looty", "HMCColor", "WorldGuard", "MythicMobs") version = "${project.version}" commands { From c7730429de76d9a1daf085184e24a4af48d50a14 Mon Sep 17 00:00:00 2001 From: Boy Date: Sun, 29 Jan 2023 16:44:36 +0100 Subject: [PATCH 3/4] improve looty hook check --- .../java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java index 55f547d6..b000e256 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java @@ -14,7 +14,7 @@ public class LootyHook extends ItemHook implements Listener { @Override public ItemStack get(String itemid) { - if (itemid.split(":").length != 2) return null; + if (PrefabKey.Companion.ofOrNull(itemid) == null) return null; return LootyFactory.INSTANCE.createFromPrefab(PrefabKey.Companion.of(itemid)); } } From 4aa1f9451dc3ab0ba31fe50346e5de2ef2447049 Mon Sep 17 00:00:00 2001 From: Boy Date: Fri, 3 Feb 2023 19:14:53 +0100 Subject: [PATCH 4/4] tweak oraxen hook for nullchecks --- .../com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java | 6 +++--- .../com/hibiscusmc/hmccosmetics/hooks/items/OraxenHook.java | 5 ++++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java index b000e256..53acc3fa 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/LootyHook.java @@ -2,7 +2,6 @@ package com.hibiscusmc.hmccosmetics.hooks.items; import com.mineinabyss.geary.prefabs.PrefabKey; import com.mineinabyss.looty.LootyFactory; -import io.th0rgal.oraxen.api.OraxenItems; import org.bukkit.event.Listener; import org.bukkit.inventory.ItemStack; @@ -14,7 +13,8 @@ public class LootyHook extends ItemHook implements Listener { @Override public ItemStack get(String itemid) { - if (PrefabKey.Companion.ofOrNull(itemid) == null) return null; - return LootyFactory.INSTANCE.createFromPrefab(PrefabKey.Companion.of(itemid)); + PrefabKey prefabKey = PrefabKey.Companion.ofOrNull(itemid); + if (prefabKey == null) return null; + return LootyFactory.INSTANCE.createFromPrefab(prefabKey); } } diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/OraxenHook.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/OraxenHook.java index 66af757c..fd3c1b84 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/OraxenHook.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/hooks/items/OraxenHook.java @@ -1,6 +1,7 @@ package com.hibiscusmc.hmccosmetics.hooks.items; import io.th0rgal.oraxen.api.OraxenItems; +import io.th0rgal.oraxen.items.ItemBuilder; import org.bukkit.event.Listener; import org.bukkit.inventory.ItemStack; @@ -12,6 +13,8 @@ public class OraxenHook extends ItemHook implements Listener { @Override public ItemStack get(String itemid) { - return OraxenItems.getItemById(itemid).build(); + ItemBuilder builder = OraxenItems.getItemById(itemid); + if (builder == null) return null; + return builder.build(); } }