From cd617d8ecf5bda72a0b7d3d65efc1336d0b417fe Mon Sep 17 00:00:00 2001 From: ten <123556224+kaixiten@users.noreply.github.com> Date: Thu, 26 Feb 2026 04:17:27 +0800 Subject: [PATCH] Refactor instantTransDodge to handle dimension check --- .../java/kamkeel/npcdbc/combat/Dodge.java | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/main/java/kamkeel/npcdbc/combat/Dodge.java b/src/main/java/kamkeel/npcdbc/combat/Dodge.java index 2b031c807..27674d4f6 100644 --- a/src/main/java/kamkeel/npcdbc/combat/Dodge.java +++ b/src/main/java/kamkeel/npcdbc/combat/Dodge.java @@ -13,14 +13,19 @@ public class Dodge { public static boolean instantTransDodge(Entity p, Entity tar, double a, double lookinga, double distance, int r1, int r2, int type) { - if (InstantTransmission.instantTrans(p, tar, a, lookinga, distance, r1, r2, type)) { - int random1 = new Random().nextInt(3) + 1; - SoundSource soundSource = new SoundSource("jinryuudragonbc:DBC4.dodge" + random1, - p); - DBCPacketHandler.Instance.sendTracking(new PlaySound(soundSource), - soundSource.entity); - return true; - } + Entity referenceTar = tar; + if (p != null && tar != null && p.dimension != tar.dimension) { + referenceTar = p; + } + + if (InstantTransmission.instantTrans(p, referenceTar, a, lookinga, distance, r1, r2, type)) { + int random1 = new Random().nextInt(3) + 1; + SoundSource soundSource = new SoundSource("jinryuudragonbc:DBC4.dodge" + random1, + p); + DBCPacketHandler.Instance.sendTracking(new PlaySound(soundSource), + soundSource.entity); + return true; + } return false; }