9
0
mirror of https://github.com/HibiscusMC/HMCCosmetics.git synced 2025-12-30 12:29:16 +00:00

fun ItemsAdder work

This commit is contained in:
LoJoSho
2022-12-08 14:15:54 -06:00
parent 0f9405ba50
commit 62f9fe1d11
5 changed files with 26 additions and 4 deletions

View File

@@ -77,6 +77,7 @@ public class ItemSerializer implements TypeSerializer<ItemStack> {
item.setAmount(amountNode.getInt(1));
ItemMeta itemMeta = item.getItemMeta();
if (itemMeta == null) return item;
if (!nameNode.virtual()) itemMeta.setDisplayName(StringUtils.parseStringToString(Utils.replaceIfNull(nameNode.getString(), "")));
if (!unbreakableNode.virtual()) itemMeta.setUnbreakable(unbreakableNode.getBoolean());
if (!glowingNode.virtual()) {

View File

@@ -1,9 +1,18 @@
package com.hibiscusmc.hmccosmetics.hooks.items;
import com.hibiscusmc.hmccosmetics.HMCCosmeticsPlugin;
import dev.lone.itemsadder.api.CustomStack;
import dev.lone.itemsadder.api.Events.ItemsAdderLoadDataEvent;
import org.bukkit.Material;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.inventory.ItemStack;
public class ItemAdderHook extends ItemHook {
public class ItemAdderHook extends ItemHook implements Listener {
// I hate IA, this overcomplicate stuff is so unneeded if it just did its stuff when its needed.
private boolean enabled = false;
public ItemAdderHook() {
super("itemsadder");
@@ -11,7 +20,16 @@ public class ItemAdderHook extends ItemHook {
@Override
public ItemStack get(String itemid) {
return CustomStack.getInstance(itemid).getItemStack();
if (enabled) {
return CustomStack.getInstance(itemid).getItemStack();
} else {
return new ItemStack(Material.AIR);
}
}
@EventHandler
public void onItemAdderDataLoad(ItemsAdderLoadDataEvent event) {
this.enabled = true;
HMCCosmeticsPlugin.setup();
}
}

View File

@@ -1,8 +1,9 @@
package com.hibiscusmc.hmccosmetics.hooks.items;
import org.bukkit.event.Listener;
import org.bukkit.inventory.ItemStack;
public class ItemHook {
public class ItemHook implements Listener {
private String id;
private boolean active;

View File

@@ -28,6 +28,7 @@ public class ItemHooks {
public static void setup() {
for (ItemHook itemHook : itemHooks.values()) {
if (Bukkit.getPluginManager().getPlugin(itemHook.getId()) != null) {
HMCCosmeticsPlugin.getInstance().getServer().getPluginManager().registerEvents(itemHook, HMCCosmeticsPlugin.getInstance());
itemHook.setActive(true);
HMCCosmeticsPlugin.getInstance().getLogger().info("Successfully hooked into " + itemHook.getId());
}

View File

@@ -1,9 +1,10 @@
package com.hibiscusmc.hmccosmetics.hooks.items;
import io.th0rgal.oraxen.api.OraxenItems;
import org.bukkit.event.Listener;
import org.bukkit.inventory.ItemStack;
public class OraxenHook extends ItemHook{
public class OraxenHook extends ItemHook implements Listener {
public OraxenHook() {
super("oraxen");