From f8de065ce3b2e8467722f6d8caaec6e46298e172 Mon Sep 17 00:00:00 2001 From: Semmieboy YT Date: Tue, 31 May 2022 21:08:12 +0200 Subject: [PATCH] Getting reach from the correct place creating more compatibility with other mods --- src/main/java/semmiedev/disc_jockey/SongPlayer.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/semmiedev/disc_jockey/SongPlayer.java b/src/main/java/semmiedev/disc_jockey/SongPlayer.java index 65defae..51c2133 100644 --- a/src/main/java/semmiedev/disc_jockey/SongPlayer.java +++ b/src/main/java/semmiedev/disc_jockey/SongPlayer.java @@ -65,7 +65,7 @@ public class SongPlayer implements ClientTickEvents.StartWorldTick { for (int y = -7; y <= 7; y++) { for (int z = -7; z <= 7; z++) { BlockPos blockPos = new BlockPos(playerPos.add(x, y, z)); - if (intersect(playerPos, 4.5, BOX.offset(blockPos))) { + if (intersect(playerPos, MinecraftClient.getInstance().interactionManager.getReachDistance(), BOX.offset(blockPos))) { BlockState blockState = world.getBlockState(blockPos); if (blockState.isOf(Blocks.NOTE_BLOCK) && world.isAir(blockPos.up())) { for (Note note : song.uniqueNotes) { @@ -112,7 +112,7 @@ public class SongPlayer implements ClientTickEvents.StartWorldTick { if (blockState.contains(Properties.NOTE)) { if (blockState.get(Properties.NOTE) != note.note) { - if (!intersect(client.player.getEyePos(), 4.5, BOX.offset(blockPos))) { + if (!intersect(client.player.getEyePos(), client.interactionManager.getReachDistance(), BOX.offset(blockPos))) { stop(); client.inGameHud.getChatHud().addMessage(Text.translatable(Main.MOD_ID+".player.to_far").formatted(Formatting.RED)); return; @@ -143,7 +143,7 @@ public class SongPlayer implements ClientTickEvents.StartWorldTick { long note = song.notes[index]; if ((short)note == Math.round(tick)) { BlockPos blockPos = noteBlocks.get(Note.INSTRUMENTS[(byte)(note >> Note.INSTRUMENT_SHIFT)]).get((byte)(note >> Note.NOTE_SHIFT)); - if (!intersect(client.player.getEyePos(), 4.5, BOX.offset(blockPos))) { + if (!intersect(client.player.getEyePos(), client.interactionManager.getReachDistance(), BOX.offset(blockPos))) { stop(); client.inGameHud.getChatHud().addMessage(Text.translatable(Main.MOD_ID+".player.to_far").formatted(Formatting.RED)); return;