diff --git a/dependencies.gradle b/dependencies.gradle index 47294e8cc..4dfa8fbab 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -4,13 +4,13 @@ dependencies { api("com.github.GTNewHorizons:BrandonsCore:1.2.0-GTNH:dev") api("curse.maven:cofh-lib-220333:2388748") - compileOnly("com.github.GTNewHorizons:ForestryMC:4.9.18:api") { + compileOnly("com.github.GTNewHorizons:ForestryMC:4.10.0:api") { transitive = false } - compileOnly("com.github.GTNewHorizons:OpenComputers:1.10.27-GTNH:api") { + compileOnly("com.github.GTNewHorizons:OpenComputers:1.11.1-GTNH:api") { transitive = false } - compileOnly("com.github.GTNewHorizons:NotEnoughItems:2.6.46-GTNH:dev") { + compileOnly("com.github.GTNewHorizons:NotEnoughItems:2.7.0-GTNH:dev") { transitive = false } compileOnly("com.github.GTNewHorizons:CodeChickenLib:1.3.0:dev") { diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 2c3521197..a4b76b953 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 09523c0e5..e2847c820 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/settings.gradle b/settings.gradle index aa612ade0..0147a9944 100644 --- a/settings.gradle +++ b/settings.gradle @@ -17,7 +17,7 @@ pluginManagement { } plugins { - id 'com.gtnewhorizons.gtnhsettingsconvention' version '1.0.29' + id 'com.gtnewhorizons.gtnhsettingsconvention' version '1.0.30' } diff --git a/src/main/java/com/brandon3055/draconicevolution/client/keybinding/KeyInputHandler.java b/src/main/java/com/brandon3055/draconicevolution/client/keybinding/KeyInputHandler.java index 8549112f5..d56633b7e 100644 --- a/src/main/java/com/brandon3055/draconicevolution/client/keybinding/KeyInputHandler.java +++ b/src/main/java/com/brandon3055/draconicevolution/client/keybinding/KeyInputHandler.java @@ -1,11 +1,13 @@ package com.brandon3055.draconicevolution.client.keybinding; +import java.util.Objects; import java.util.Optional; +import javax.annotation.Nonnull; + import net.minecraft.client.Minecraft; import net.minecraft.client.entity.EntityClientPlayerMP; import net.minecraft.client.multiplayer.WorldClient; -import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.util.MovingObjectPosition; @@ -36,45 +38,56 @@ public class KeyInputHandler { @SideOnly(Side.CLIENT) @SubscribeEvent public void onKeyInput(InputEvent.KeyInputEvent event) { + EntityClientPlayerMP player = Minecraft.getMinecraft().thePlayer; + if (KeyBindings.placeItem.isPressed()) { handlePlaceItemKey(); } else if (KeyBindings.toolConfig.isPressed()) { - DraconicEvolution.network.sendToServer(new ButtonPacket(ButtonPacket.ID_TOOLCONFIG, false)); - } else if (KeyBindings.toolProfileChange.isPressed() && Minecraft.getMinecraft().thePlayer != null - && Minecraft.getMinecraft().thePlayer.getItemInUse() == null) { - DraconicEvolution.network - .sendToServer(new ButtonPacket(ButtonPacket.ID_TOOL_PROFILE_CHANGE, false)); - - ItemStack stack = Minecraft.getMinecraft().thePlayer.getHeldItem(); - if (stack != null && stack.getItem() instanceof IConfigurableItem - && ((IConfigurableItem) stack.getItem()).hasProfiles()) { - int preset = ItemNBTHelper.getInteger(stack, "ConfigProfile", 0); - if (++preset >= 5) preset = 0; - ItemNBTHelper.setInteger(stack, "ConfigProfile", preset); - } - } else - if (KeyBindings.toggleFlight.isPressed()) { - EntityPlayer player = Minecraft.getMinecraft().thePlayer; - if (player.capabilities.allowFlying) { - if (player.capabilities.isFlying) { - player.capabilities.isFlying = false; - } else { - player.capabilities.isFlying = true; - if (player.onGround) { - player.setPosition(player.posX, player.posY + 0.05D, player.posZ); - player.motionY = 0; - } - } - player.sendPlayerAbilities(); - } - } else if (KeyBindings.toggleMagnet.isPressed()) { - EntityPlayer player = Minecraft.getMinecraft().thePlayer; - Optional magnetOptional = InventoryUtils.getItemInAnyPlayerInventory(player, Magnet.class); + handleToolConfigKey(); + } else if (KeyBindings.toolProfileChange.isPressed() && player != null && player.getItemInUse() == null) { + handleToolProfileChangeKey(player); + } else if (KeyBindings.toggleFlight.isPressed() && player != null) { + handleToggleFlightKey(player); + } else if (KeyBindings.toggleMagnet.isPressed()) { + handleToggleMagnetKey(player); + } + } + + @SideOnly(Side.CLIENT) + @SubscribeEvent + public void onMouseInput(InputEvent.MouseInputEvent event) { + EntityClientPlayerMP player = Minecraft.getMinecraft().thePlayer; - if (magnetOptional.isPresent()) { - DraconicEvolution.network.sendToServer(new MagnetTogglePacket()); + if (KeyBindings.placeItem.isPressed()) { + handlePlaceItemKey(); + } else if (KeyBindings.toolConfig.isPressed()) { + handleToolConfigKey(); + } else if (KeyBindings.toolProfileChange.isPressed() && player != null) { + handleToolProfileChangeKey(player); + } else if (KeyBindings.toggleFlight.isPressed() && player != null) { + handleToggleFlightKey(player); + } else if (KeyBindings.toggleMagnet.isPressed()) { + handleToggleMagnetKey(player); + } + + if (player != null) { + int change = Mouse.getEventDWheel(); + if (change == 0 || !player.isSneaking()) return; + + if (change > 0) { + ItemStack item = player.inventory.getStackInSlot(previousSlot(1, player.inventory.currentItem)); + if (item != null && Objects.equals(item.getItem(), ModItems.teleporterMKII)) { + player.inventory.currentItem = previousSlot(1, player.inventory.currentItem); + DraconicEvolution.network.sendToServer(new TeleporterPacket(TeleporterPacket.SCROLL, -1, false)); + } + } else { + ItemStack item = player.inventory.getStackInSlot(previousSlot(-1, player.inventory.currentItem)); + if (item != null && Objects.equals(item.getItem(), ModItems.teleporterMKII)) { + player.inventory.currentItem = previousSlot(-1, player.inventory.currentItem); + DraconicEvolution.network.sendToServer(new TeleporterPacket(TeleporterPacket.SCROLL, 1, false)); } } + } } private void handlePlaceItemKey() { @@ -87,45 +100,46 @@ private void handlePlaceItemKey() { } } - @SideOnly(Side.CLIENT) - @SubscribeEvent - public void onMouseInput(InputEvent.MouseInputEvent event) { - if (KeyBindings.placeItem.isPressed()) { - handlePlaceItemKey(); - } else if (KeyBindings.toolConfig.isPressed()) { - DraconicEvolution.network.sendToServer(new ButtonPacket(ButtonPacket.ID_TOOLCONFIG, false)); - } else if (KeyBindings.toolProfileChange.isPressed() && Minecraft.getMinecraft().thePlayer != null) { - DraconicEvolution.network.sendToServer(new ButtonPacket(ButtonPacket.ID_TOOL_PROFILE_CHANGE, false)); - - ItemStack stack = Minecraft.getMinecraft().thePlayer.getHeldItem(); - if (stack != null && stack.getItem() instanceof IConfigurableItem - && ((IConfigurableItem) stack.getItem()).hasProfiles()) { - int preset = ItemNBTHelper.getInteger(stack, "ConfigProfile", 0); - if (++preset >= 5) preset = 0; - ItemNBTHelper.setInteger(stack, "ConfigProfile", preset); + private void handleToolConfigKey() { + DraconicEvolution.network.sendToServer(new ButtonPacket(ButtonPacket.ID_TOOLCONFIG, false)); + } + + private void handleToolProfileChangeKey(@Nonnull EntityClientPlayerMP player) { + DraconicEvolution.network.sendToServer(new ButtonPacket(ButtonPacket.ID_TOOL_PROFILE_CHANGE, false)); + + ItemStack stack = player.getHeldItem(); + if (stack != null && stack.getItem() instanceof IConfigurableItem + && ((IConfigurableItem) stack.getItem()).hasProfiles()) { + int preset = ItemNBTHelper.getInteger(stack, "ConfigProfile", 0); + if (++preset >= 5) preset = 0; + ItemNBTHelper.setInteger(stack, "ConfigProfile", preset); + } + } + + private void handleToggleFlightKey(@Nonnull EntityClientPlayerMP player) { + if (player.capabilities.allowFlying) { + if (player.capabilities.isFlying) { + player.capabilities.isFlying = false; + } else { + player.capabilities.isFlying = true; + if (player.onGround) { + player.setPosition(player.posX, player.posY + 0.05D, player.posZ); + player.motionY = 0; + } } + player.sendPlayerAbilities(); } + } - EntityPlayer player = Minecraft.getMinecraft().thePlayer; - int change = Mouse.getEventDWheel(); - if (change == 0 || !player.isSneaking()) return; + private void handleToggleMagnetKey(EntityClientPlayerMP player) { + Optional magnetOptional = InventoryUtils.getItemInAnyPlayerInventory(player, Magnet.class); - if (change > 0) { - ItemStack item = player.inventory.getStackInSlot(previouseSlot(1, player.inventory.currentItem)); - if (item != null && item.getItem().equals(ModItems.teleporterMKII)) { - player.inventory.currentItem = previouseSlot(1, player.inventory.currentItem); - DraconicEvolution.network.sendToServer(new TeleporterPacket(TeleporterPacket.SCROLL, -1, false)); - } - } else { - ItemStack item = player.inventory.getStackInSlot(previouseSlot(-1, player.inventory.currentItem)); - if (item != null && item.getItem().equals(ModItems.teleporterMKII)) { - player.inventory.currentItem = previouseSlot(-1, player.inventory.currentItem); - DraconicEvolution.network.sendToServer(new TeleporterPacket(TeleporterPacket.SCROLL, 1, false)); - } + if (magnetOptional.isPresent()) { + DraconicEvolution.network.sendToServer(new MagnetTogglePacket()); } } - private int previouseSlot(int i, int c) { + private int previousSlot(int i, int c) { if (c > 0 && c < 8) return c + i; if (c == 0 && i < 0) return 8; if (c == 8 && i > 0) return 0;