From f667af9bce5add3583d8ad3cde8e59ed129be381 Mon Sep 17 00:00:00 2001 From: thepigcat Date: Sat, 8 Jun 2024 16:53:05 +0200 Subject: [PATCH] fooling around --- .../flightutils/FlightUtilsMain.java | 19 +++++------- .../flightutils/items/AngelRingCurioItem.java | 13 +++++++++ .../flightutils/items/AngelRingItem.java | 29 +++++++++++++------ .../tags/items/{angel_ring.json => ring.json} | 2 +- .../flightutils/curios/slots/angel_ring.json | 5 ---- src/main/resources/pack.mcmeta | 6 ++++ 6 files changed, 47 insertions(+), 27 deletions(-) create mode 100644 src/main/java/com/leclowndu93150/flightutils/items/AngelRingCurioItem.java rename src/main/resources/data/curios/tags/items/{angel_ring.json => ring.json} (71%) delete mode 100644 src/main/resources/data/flightutils/curios/slots/angel_ring.json create mode 100644 src/main/resources/pack.mcmeta diff --git a/src/main/java/com/leclowndu93150/flightutils/FlightUtilsMain.java b/src/main/java/com/leclowndu93150/flightutils/FlightUtilsMain.java index 637c379..b07c5d4 100644 --- a/src/main/java/com/leclowndu93150/flightutils/FlightUtilsMain.java +++ b/src/main/java/com/leclowndu93150/flightutils/FlightUtilsMain.java @@ -1,5 +1,6 @@ package com.leclowndu93150.flightutils; +import com.leclowndu93150.flightutils.items.AngelRingCurioItem; import com.leclowndu93150.flightutils.items.AngelRingItem; import com.leclowndu93150.flightutils.items.InertiaRingItem; import com.leclowndu93150.flightutils.registry.CreativeTabRegistry; @@ -11,24 +12,18 @@ import top.theillusivec4.curios.api.CuriosApi; @Mod(FlightUtilsMain.MODID) -public class FlightUtilsMain -{ +public class FlightUtilsMain { public static final String MODID = "flightutils"; - public FlightUtilsMain(IEventBus modEventBus) - { + public FlightUtilsMain(IEventBus modEventBus) { CreativeTabRegistry.CREATIVE_MODE_TABS.register(modEventBus); ItemRegistry.ITEMS.register(modEventBus); modEventBus.addListener(AngelRingItem::registerCapabilities); - //modEventBus.addListener(this::setup); + modEventBus.addListener(FlightUtilsMain::setup); } - /* - * private void setup(final FMLCommonSetupEvent evt) { - * CuriosApi.registerCurio(ItemRegistry.ANGEL_RING.get(), new AngelRingItem(new Item.Properties())); - * CuriosApi.registerCurio(ItemRegistry.INERTIA_RING.get(), new InertiaRingItem(new Item.Properties())); - *CuriosApi.registerCurio(ItemRegistry.MINING_RING.get(), new AngelRingItem(new Item.Properties())); - } - */ + private static void setup(final FMLCommonSetupEvent evt) { + CuriosApi.registerCurio(ItemRegistry.ANGEL_RING.get(), new AngelRingCurioItem()); + } } diff --git a/src/main/java/com/leclowndu93150/flightutils/items/AngelRingCurioItem.java b/src/main/java/com/leclowndu93150/flightutils/items/AngelRingCurioItem.java new file mode 100644 index 0000000..b9268a1 --- /dev/null +++ b/src/main/java/com/leclowndu93150/flightutils/items/AngelRingCurioItem.java @@ -0,0 +1,13 @@ +package com.leclowndu93150.flightutils.items; + +import net.minecraft.world.item.ItemStack; +import top.theillusivec4.curios.api.SlotContext; +import top.theillusivec4.curios.api.type.capability.ICurioItem; + +public class AngelRingCurioItem implements ICurioItem { + @Override + public void curioTick(SlotContext slotContext, ItemStack stack) { + ICurioItem.super.curioTick(slotContext, stack); + System.out.println("Test"); + } +} diff --git a/src/main/java/com/leclowndu93150/flightutils/items/AngelRingItem.java b/src/main/java/com/leclowndu93150/flightutils/items/AngelRingItem.java index 9c89a65..7987041 100644 --- a/src/main/java/com/leclowndu93150/flightutils/items/AngelRingItem.java +++ b/src/main/java/com/leclowndu93150/flightutils/items/AngelRingItem.java @@ -1,9 +1,13 @@ package com.leclowndu93150.flightutils.items; import com.leclowndu93150.flightutils.registry.ItemRegistry; +import net.minecraft.network.chat.Component; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResultHolder; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent; import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent; import org.jetbrains.annotations.NotNull; @@ -13,7 +17,7 @@ import top.theillusivec4.curios.api.type.capability.ICurio; import top.theillusivec4.curios.api.type.capability.ICurioItem; -public class AngelRingItem extends Item implements ICurioItem { +public class AngelRingItem extends Item { public AngelRingItem(Properties pProperties) { super(pProperties); @@ -24,8 +28,8 @@ public int getMaxStackSize(@NotNull ItemStack stack) { return 1; } - private static void startFlight(Player player){ - if(!player.isCreative() && !player.isSpectator()){ + private static void startFlight(Player player) { + if (!player.isCreative() && !player.isSpectator()) { player.getAbilities().mayfly = true; player.onUpdateAbilities(); } @@ -39,6 +43,13 @@ private static void stopFlight(Player player) { } } + @Override + public InteractionResultHolder use(Level pLevel, Player pPlayer, InteractionHand pUsedHand) { + ItemStack itemStack = pPlayer.getMainHandItem(); + pPlayer.sendSystemMessage(Component.literal(itemStack.getTags().toList().toString())); + return super.use(pLevel, pPlayer, pUsedHand); + } + public static void registerCapabilities(final RegisterCapabilitiesEvent evt) { evt.registerItem( CuriosCapability.ITEM, @@ -70,20 +81,20 @@ public boolean canEquip(SlotContext slotContext) { @Override public void onEquip(SlotContext slotContext, ItemStack prevStack) { - if (slotContext.getWearer() instanceof Player) - startFlight((Player) slotContext.getWearer()); + if (slotContext.entity() instanceof Player) + startFlight((Player) slotContext.entity()); } @Override public void onUnequip(SlotContext slotContext, ItemStack newStack) { - if (slotContext.getWearer() instanceof Player) - stopFlight((Player) slotContext.getWearer()); + if (slotContext.entity() instanceof Player player) + stopFlight(player); } - }, ItemRegistry.ANGEL_RING.get() + }, + ItemRegistry.ANGEL_RING.get() ); } - } diff --git a/src/main/resources/data/curios/tags/items/angel_ring.json b/src/main/resources/data/curios/tags/items/ring.json similarity index 71% rename from src/main/resources/data/curios/tags/items/angel_ring.json rename to src/main/resources/data/curios/tags/items/ring.json index eb24fc7..633c554 100644 --- a/src/main/resources/data/curios/tags/items/angel_ring.json +++ b/src/main/resources/data/curios/tags/items/ring.json @@ -1,5 +1,5 @@ { - "replace": "false", + "replace": true, "values": [ "flightutils:angel_ring" ] diff --git a/src/main/resources/data/flightutils/curios/slots/angel_ring.json b/src/main/resources/data/flightutils/curios/slots/angel_ring.json deleted file mode 100644 index e8be632..0000000 --- a/src/main/resources/data/flightutils/curios/slots/angel_ring.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "size": 1, - "add_cosmetic": true, - "icon": "minecraft:item/empty_armor_slot_boots" -} \ No newline at end of file diff --git a/src/main/resources/pack.mcmeta b/src/main/resources/pack.mcmeta new file mode 100644 index 0000000..fa48663 --- /dev/null +++ b/src/main/resources/pack.mcmeta @@ -0,0 +1,6 @@ +{ + "pack": { + "description": "Resources for Flight utils", + "pack_format": 10 + } +} \ No newline at end of file