diff --git a/src/main/java/net/mcreator/superbwarfare/event/ClientEventHandler.java b/src/main/java/net/mcreator/superbwarfare/event/ClientEventHandler.java index 8b88fe304..8df81b743 100644 --- a/src/main/java/net/mcreator/superbwarfare/event/ClientEventHandler.java +++ b/src/main/java/net/mcreator/superbwarfare/event/ClientEventHandler.java @@ -114,8 +114,8 @@ public class ClientEventHandler { double customRpm = 0; - if (stack.getItem() == ModItems.MARLIN.get() && GLFW.glfwGetMouseButton(Minecraft.getInstance().getWindow().getWindow(), GLFW.GLFW_MOUSE_BUTTON_RIGHT) == GLFW.GLFW_PRESS) { - customRpm = -40; + if (stack.getItem() == ModItems.DEVOTION.get()) { + customRpm = stack.getOrCreateTag().getInt("customRpm"); } double rpm = stack.getOrCreateTag().getDouble("rpm") + customRpm; diff --git a/src/main/java/net/mcreator/superbwarfare/network/message/FireMessage.java b/src/main/java/net/mcreator/superbwarfare/network/message/FireMessage.java index 9c61edf3c..15710dadb 100644 --- a/src/main/java/net/mcreator/superbwarfare/network/message/FireMessage.java +++ b/src/main/java/net/mcreator/superbwarfare/network/message/FireMessage.java @@ -83,6 +83,10 @@ public class FireMessage { handleBowShoot(player); } + if (player.getMainHandItem().getItem() == ModItems.DEVOTION.get()) { + player.getMainHandItem().getOrCreateTag().putDouble("customRpm", 0); + } + if (player.getMainHandItem().getItem() == ModItems.JAVELIN.get()) { var handItem = player.getMainHandItem(); var tag = handItem.getOrCreateTag(); diff --git a/src/main/java/net/mcreator/superbwarfare/network/message/ShootMessage.java b/src/main/java/net/mcreator/superbwarfare/network/message/ShootMessage.java index 30208f19c..2dfe07e7f 100644 --- a/src/main/java/net/mcreator/superbwarfare/network/message/ShootMessage.java +++ b/src/main/java/net/mcreator/superbwarfare/network/message/ShootMessage.java @@ -8,6 +8,7 @@ import net.minecraft.core.particles.ParticleTypes; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.util.Mth; import net.minecraft.world.InteractionHand; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; @@ -107,6 +108,10 @@ public class ShootMessage { stack.getOrCreateTag().putBoolean("bullet_chain", true); } + if (stack.getItem() == ModItems.DEVOTION.get()) { + stack.getOrCreateTag().putInt("customRpm", Mth.clamp(stack.getOrCreateTag().getInt("customRpm") + 20, 0, 500)); + } + if (stack.getItem() == ModItems.ABEKIRI.get()) { stack.hurtAndBreak(1, player, p -> p.broadcastBreakEvent(InteractionHand.MAIN_HAND)); if (player instanceof ServerPlayer serverPlayer && player.level() instanceof ServerLevel serverLevel) {