From e60ef9232a4051e0a0f16a6b3f4dac03cdf74bb6 Mon Sep 17 00:00:00 2001 From: Leclowndu93150 <xdr.a123454321@gmail.com> Date: Sat, 28 Sep 2024 12:21:58 +0200 Subject: [PATCH] fix speed modifier broken after code refactoring --- gradle.properties | 2 +- .../9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e | 10 +++++----- .../recipe/smithing/inertia_module.json | 4 +++- .../recipe/smithing/mining_module.json | 4 +++- .../recipe/smithing/night_vision_module.json | 4 +++- .../recipe/smithing/speed_module.json | 4 +++- .../modular_angelring/common/AngelRingItem.java | 17 ++++++++++++----- .../events/AngelRingEvents.java | 15 --------------- .../recipes/ModularRingRecipes.java | 8 ++++---- 9 files changed, 34 insertions(+), 34 deletions(-) diff --git a/gradle.properties b/gradle.properties index 0dbd192..850573b 100644 --- a/gradle.properties +++ b/gradle.properties @@ -35,7 +35,7 @@ mod_name=Modular Angel Ring mod_license=All Rights Reserved -mod_version=1.4.1 +mod_version=1.4.3 mod_group_id=com.leclowndu93150.modular_angelring diff --git a/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e b/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e index b945bde..3d8cccb 100644 --- a/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e +++ b/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e @@ -1,4 +1,4 @@ -// 1.21 2024-07-30T20:04:02.1024129 Recipes +// 1.21 2024-09-27T14:08:04.8843043 Recipes f17592b4c061b661cf746015e75f22fcf01645b6 data/modular_angelring/advancement/recipes/misc/shapeless/bat_wings.json 60e10bfceda809b0d29bccfbf515bbc8108d0a36 data/modular_angelring/advancement/recipes/misc/shapeless/big_dragon_wings.json 77aaca00c49d23276780e641d94ace386e07d571 data/modular_angelring/advancement/recipes/misc/shapeless/blue_dragon_wings.json @@ -36,10 +36,10 @@ af726588555948e0f0e6e4845b1dab4f6d49eb07 data/modular_angelring/recipe/smithing/ d6169c70ce43550d661b37da27a0fa0477721504 data/modular_angelring/recipe/smithing/golden_ring.json 4024587a665571a880a0a1ccad9dd4893952329b data/modular_angelring/recipe/smithing/gold_ring.json 4a64dbc2945e0dc540683f0887cabe80f44f6b84 data/modular_angelring/recipe/smithing/inertia_modifier.json -c5dc2b2592e671c413a9a829934d4499e5d361a1 data/modular_angelring/recipe/smithing/inertia_module.json +f723b74516ad6291d383ea3ed969fb8d8f0b74c9 data/modular_angelring/recipe/smithing/inertia_module.json d1a7a0ceb72cb10c980a74abad99a4dc9763577a data/modular_angelring/recipe/smithing/mining_modifier.json -f685d562402e5a1cc2005ab166d2c9b2d0a43c81 data/modular_angelring/recipe/smithing/mining_module.json +dffda0873204dc6b8b028a592e99464874b6e918 data/modular_angelring/recipe/smithing/mining_module.json b95080909de0a567e64cf73bad4f9cba45d063b8 data/modular_angelring/recipe/smithing/night_vision_modifier.json -a583373da457971bb320680107353d2ea8a86fe7 data/modular_angelring/recipe/smithing/night_vision_module.json +b67736dd56650939547b66fade466f9266840921 data/modular_angelring/recipe/smithing/night_vision_module.json cd4540c2177dc441f76ac5b854f48888b19dd510 data/modular_angelring/recipe/smithing/speed_modifier.json -79ab4bc8ccf70b42ce30c72323509331f6398a71 data/modular_angelring/recipe/smithing/speed_module.json +b3023c9aeb7c4a23559963ba74e50873acb2aefc data/modular_angelring/recipe/smithing/speed_module.json diff --git a/src/generated/resources/data/modular_angelring/recipe/smithing/inertia_module.json b/src/generated/resources/data/modular_angelring/recipe/smithing/inertia_module.json index 8845096..054518f 100644 --- a/src/generated/resources/data/modular_angelring/recipe/smithing/inertia_module.json +++ b/src/generated/resources/data/modular_angelring/recipe/smithing/inertia_module.json @@ -10,5 +10,7 @@ "count": 1, "id": "modular_angelring:inertia_module" }, - "template": [] + "template": { + "item": "modular_angelring:angel_ring_upgrade_smithing_template" + } } \ No newline at end of file diff --git a/src/generated/resources/data/modular_angelring/recipe/smithing/mining_module.json b/src/generated/resources/data/modular_angelring/recipe/smithing/mining_module.json index 9a5cf32..7fe5c45 100644 --- a/src/generated/resources/data/modular_angelring/recipe/smithing/mining_module.json +++ b/src/generated/resources/data/modular_angelring/recipe/smithing/mining_module.json @@ -10,5 +10,7 @@ "count": 1, "id": "modular_angelring:mining_module" }, - "template": [] + "template": { + "item": "modular_angelring:angel_ring_upgrade_smithing_template" + } } \ No newline at end of file diff --git a/src/generated/resources/data/modular_angelring/recipe/smithing/night_vision_module.json b/src/generated/resources/data/modular_angelring/recipe/smithing/night_vision_module.json index e3db94c..786f27e 100644 --- a/src/generated/resources/data/modular_angelring/recipe/smithing/night_vision_module.json +++ b/src/generated/resources/data/modular_angelring/recipe/smithing/night_vision_module.json @@ -10,5 +10,7 @@ "count": 1, "id": "modular_angelring:night_vision_module" }, - "template": [] + "template": { + "item": "modular_angelring:angel_ring_upgrade_smithing_template" + } } \ No newline at end of file diff --git a/src/generated/resources/data/modular_angelring/recipe/smithing/speed_module.json b/src/generated/resources/data/modular_angelring/recipe/smithing/speed_module.json index 483e224..80b35fa 100644 --- a/src/generated/resources/data/modular_angelring/recipe/smithing/speed_module.json +++ b/src/generated/resources/data/modular_angelring/recipe/smithing/speed_module.json @@ -10,5 +10,7 @@ "count": 1, "id": "modular_angelring:speed_module" }, - "template": [] + "template": { + "item": "modular_angelring:angel_ring_upgrade_smithing_template" + } } \ No newline at end of file diff --git a/src/main/java/com/leclowndu93150/modular_angelring/common/AngelRingItem.java b/src/main/java/com/leclowndu93150/modular_angelring/common/AngelRingItem.java index dd5de6e..b99d0cf 100644 --- a/src/main/java/com/leclowndu93150/modular_angelring/common/AngelRingItem.java +++ b/src/main/java/com/leclowndu93150/modular_angelring/common/AngelRingItem.java @@ -54,19 +54,26 @@ public ItemStack getStack() { public void curioTick(SlotContext slotContext) { Player player = (Player) slotContext.entity(); Optional<SlotResult> slotResult = CuriosApi.getCuriosInventory(player).flatMap(handler -> handler.findFirstCurio(ItemRegistry.ANGEL_RING.get())); - if(slotResult.isPresent()){ + + if (slotResult.isPresent()) { ItemStack angelRingStack = slotResult.get().stack(); - EnabledModifiersComponent data = stack.getOrDefault(DataComponentRegistry.MODIFIERS_ENABLED, EnabledModifiersComponent.EMPTY); + EnabledModifiersComponent data = angelRingStack.getOrDefault(DataComponentRegistry.MODIFIERS_ENABLED, EnabledModifiersComponent.EMPTY); + + if (angelRingStack.has(DataComponentRegistry.SPEED_MODIFIER) && + (player.getAbilities().getFlyingSpeed() != getSpeedModifier(angelRingStack) || !data.speedModifierEnabled())) { - if (angelRingStack.has(DataComponentRegistry.SPEED_MODIFIER) && ((player.getAbilities().getFlyingSpeed() != getSpeedModifier(angelRingStack)) || !data.speedModifierEnabled())) { if (data.speedModifierEnabled()) { - player.getAbilities().setFlyingSpeed(getSpeedModifier(angelRingStack)); + if (player.getAbilities().flying) { + player.getAbilities().setFlyingSpeed(getSpeedModifier(angelRingStack)); + } + } else { + player.getAbilities().setFlyingSpeed(0.05F); } } } - } + @Override public void onEquip(SlotContext slotContext, ItemStack prevStack) { Player player = (Player) slotContext.entity(); diff --git a/src/main/java/com/leclowndu93150/modular_angelring/events/AngelRingEvents.java b/src/main/java/com/leclowndu93150/modular_angelring/events/AngelRingEvents.java index 525df74..4f94dfe 100644 --- a/src/main/java/com/leclowndu93150/modular_angelring/events/AngelRingEvents.java +++ b/src/main/java/com/leclowndu93150/modular_angelring/events/AngelRingEvents.java @@ -1,32 +1,17 @@ package com.leclowndu93150.modular_angelring.events; import com.leclowndu93150.modular_angelring.AngelRingMain; -import com.leclowndu93150.modular_angelring.common.AngelRingItem; -import com.leclowndu93150.modular_angelring.common.AngelRingModules; import com.leclowndu93150.modular_angelring.common.EnabledModifiersComponent; -import com.leclowndu93150.modular_angelring.networking.KeyPressedPayload; import com.leclowndu93150.modular_angelring.networking.PayloadActions; import com.leclowndu93150.modular_angelring.registry.DataComponentRegistry; import com.leclowndu93150.modular_angelring.registry.ItemRegistry; -import com.leclowndu93150.modular_angelring.registry.KeyBindRegistry; -import com.leclowndu93150.modular_angelring.utils.FlightSpeedPercentage; -import net.minecraft.ChatFormatting; -import net.minecraft.client.Minecraft; -import net.minecraft.network.chat.Component; -import net.minecraft.sounds.SoundEvents; -import net.minecraft.sounds.SoundSource; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.Level; import net.minecraft.world.phys.Vec3; -import net.neoforged.bus.api.EventPriority; import net.neoforged.bus.api.SubscribeEvent; import net.neoforged.fml.common.EventBusSubscriber; -import net.neoforged.neoforge.client.event.InputEvent; import net.neoforged.neoforge.event.entity.player.PlayerEvent; -import net.neoforged.neoforge.event.entity.player.PlayerInteractEvent; import net.neoforged.neoforge.event.tick.PlayerTickEvent; -import net.neoforged.neoforge.network.PacketDistributor; import top.theillusivec4.curios.api.CuriosApi; import top.theillusivec4.curios.api.SlotResult; diff --git a/src/main/java/com/leclowndu93150/modular_angelring/recipes/ModularRingRecipes.java b/src/main/java/com/leclowndu93150/modular_angelring/recipes/ModularRingRecipes.java index 475afcf..15652a5 100644 --- a/src/main/java/com/leclowndu93150/modular_angelring/recipes/ModularRingRecipes.java +++ b/src/main/java/com/leclowndu93150/modular_angelring/recipes/ModularRingRecipes.java @@ -57,19 +57,19 @@ protected void buildRecipes(RecipeOutput pRecipeOutput) { .unlocks("criteria", has(ItemRegistry.ANGEL_RING)) .save(pRecipeOutput, AngelRingMain.MODID+":smithing/night_vision_modifier"); - SmithingTransformRecipeBuilder.smithing(Ingredient.EMPTY, Ingredient.of(ItemRegistry.BLANK_MODULE), Ingredient.of(Items.DIAMOND_PICKAXE), RecipeCategory.MISC, ItemRegistry.MINING_MODULE.asItem()) + SmithingTransformRecipeBuilder.smithing(Ingredient.of(ItemRegistry.UPGRADE_TEMPLATE), Ingredient.of(ItemRegistry.BLANK_MODULE), Ingredient.of(Items.DIAMOND_PICKAXE), RecipeCategory.MISC, ItemRegistry.MINING_MODULE.asItem()) .unlocks("criteria", has(ItemRegistry.ANGEL_RING)) .save(pRecipeOutput, AngelRingMain.MODID+":smithing/mining_module"); - SmithingTransformRecipeBuilder.smithing(Ingredient.EMPTY, Ingredient.of(ItemRegistry.BLANK_MODULE), Ingredient.of(Items.PHANTOM_MEMBRANE), RecipeCategory.MISC, ItemRegistry.INERTIA_MODULE.asItem()) + SmithingTransformRecipeBuilder.smithing(Ingredient.of(ItemRegistry.UPGRADE_TEMPLATE), Ingredient.of(ItemRegistry.BLANK_MODULE), Ingredient.of(Items.PHANTOM_MEMBRANE), RecipeCategory.MISC, ItemRegistry.INERTIA_MODULE.asItem()) .unlocks("criteria", has(ItemRegistry.ANGEL_RING)) .save(pRecipeOutput, AngelRingMain.MODID+":smithing/inertia_module"); - SmithingTransformRecipeBuilder.smithing(Ingredient.EMPTY, Ingredient.of(ItemRegistry.BLANK_MODULE), Ingredient.of(Items.SUGAR), RecipeCategory.MISC, ItemRegistry.SPEED_MODULE.asItem()) + SmithingTransformRecipeBuilder.smithing(Ingredient.of(ItemRegistry.UPGRADE_TEMPLATE), Ingredient.of(ItemRegistry.BLANK_MODULE), Ingredient.of(Items.SUGAR), RecipeCategory.MISC, ItemRegistry.SPEED_MODULE.asItem()) .unlocks("criteria", has(ItemRegistry.ANGEL_RING)) .save(pRecipeOutput, AngelRingMain.MODID+":smithing/speed_module"); - SmithingTransformRecipeBuilder.smithing(Ingredient.EMPTY, Ingredient.of(ItemRegistry.BLANK_MODULE), Ingredient.of(Items.GOLDEN_CARROT), RecipeCategory.MISC, ItemRegistry.NIGHT_VISION_MODULE.asItem()) + SmithingTransformRecipeBuilder.smithing(Ingredient.of(ItemRegistry.UPGRADE_TEMPLATE), Ingredient.of(ItemRegistry.BLANK_MODULE), Ingredient.of(Items.GOLDEN_CARROT), RecipeCategory.MISC, ItemRegistry.NIGHT_VISION_MODULE.asItem()) .unlocks("criteria", has(ItemRegistry.ANGEL_RING)) .save(pRecipeOutput, AngelRingMain.MODID+":smithing/night_vision_module");