From f9bcad028fb6cf8d7b0e4ef32adb9bc7813e4899 Mon Sep 17 00:00:00 2001 From: Pablo Herrera Date: Wed, 15 Jan 2025 21:17:06 +0100 Subject: [PATCH] Fix potential cast exception on last pos check Signed-off-by: Pablo Herrera --- .../moderation/feature/loggers/BlockGlitchLogger.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/core/src/main/java/dev/pgm/community/moderation/feature/loggers/BlockGlitchLogger.java b/core/src/main/java/dev/pgm/community/moderation/feature/loggers/BlockGlitchLogger.java index d95bf0d..8eda0f0 100644 --- a/core/src/main/java/dev/pgm/community/moderation/feature/loggers/BlockGlitchLogger.java +++ b/core/src/main/java/dev/pgm/community/moderation/feature/loggers/BlockGlitchLogger.java @@ -149,6 +149,7 @@ public static class Incident { private final Component name; private final Party party; + private Location last; private int currTick = 0; private int lastPlace = 0; private int glitchBlocks = 0; @@ -159,7 +160,7 @@ public Incident(Player player, MatchPlayerState pl, Block initial) { this.name = pl.getName(); this.party = pl.getParty(); - this.queue.add(new MoveAction(player.getLocation())); + this.queue.add(new MoveAction(last = player.getLocation())); placed(initial, true); } @@ -177,9 +178,9 @@ public void placed(Block block, boolean isGlitching) { public boolean isOver() { Location loc = player.getLocation(); - if (!(queue.getLast() instanceof MoveAction move) || !move.to.equals(loc)) { + if (!last.equals(loc)) { maxHeight = Math.max(maxHeight, loc.getY()); - queue.add(new MoveAction(loc)); + queue.add(new MoveAction(last = loc)); } return loc.getY() < -64 || currTick > MAX_LENGTH @@ -211,7 +212,7 @@ public Location getStart() { } public Location getEnd() { - return ((MoveAction) queue.getLast()).to.clone(); + return last.clone(); } public Component getPlayerName() {