diff options
author | Genny <gen@nyble.dev> | 2020-06-14 04:19:56 -0500 |
---|---|---|
committer | Genny <gen@nyble.dev> | 2020-06-14 04:19:56 -0500 |
commit | d08bfe8e05c2e44ad41b82b3a77464fe44648efe (patch) | |
tree | b635303febd91482273b5f7c5fff50d7e1ac5a4f /src/main | |
parent | 52b942fe4306d39ac068f88898825e2f0743aa46 (diff) | |
download | sunfright-d08bfe8e05c2e44ad41b82b3a77464fe44648efe.tar.gz sunfright-d08bfe8e05c2e44ad41b82b3a77464fe44648efe.zip |
Fix nullptr exception on ray trace in damager
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/dev/genbyte/sunfright/Damager.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/main/java/dev/genbyte/sunfright/Damager.java b/src/main/java/dev/genbyte/sunfright/Damager.java index 093dbb6..c3bbe44 100644 --- a/src/main/java/dev/genbyte/sunfright/Damager.java +++ b/src/main/java/dev/genbyte/sunfright/Damager.java @@ -78,15 +78,19 @@ public class Damager extends BukkitRunnable { public void run() { Location loc = player.getLocation(); World world = loc.getWorld(); - Block topBlock = player.getWorld().rayTraceBlocks( + RayTraceResult rtr = player.getWorld().rayTraceBlocks( loc, new Vector(0, 1, 0), world.getMaxHeight()-loc.getY() - ).getHitBlock(); + ); - if (topBlock.getLocation().getY() > player.getLocation().getY() - && topBlock.getType().equals(Material.BLACK_STAINED_GLASS)) { - return; + if (rtr != null) { + Block topBlock = rtr.getHitBlock(); + if (topBlock != null && topBlock.getLocation().getY() > player.getLocation().getY() + && topBlock.getType().equals(Material.BLACK_STAINED_GLASS) + ) { + return; + } } ItemStack helmet = player.getInventory().getHelmet(); |