From 82ed28bba0c23b995c48c175cca6f4854814d12e Mon Sep 17 00:00:00 2001 From: EpicKnarvik97 Date: Mon, 18 Oct 2021 18:52:24 +0200 Subject: [PATCH] Removes the DirectionHelper's getBlockAt method as it only increased complexity --- .../java/net/knarcraft/stargate/portal/Gate.java | 6 +++--- .../java/net/knarcraft/stargate/portal/Portal.java | 3 +-- .../stargate/utility/DirectionHelper.java | 14 -------------- 3 files changed, 4 insertions(+), 19 deletions(-) diff --git a/src/main/java/net/knarcraft/stargate/portal/Gate.java b/src/main/java/net/knarcraft/stargate/portal/Gate.java index 9fdc3d8..7168d0d 100644 --- a/src/main/java/net/knarcraft/stargate/portal/Gate.java +++ b/src/main/java/net/knarcraft/stargate/portal/Gate.java @@ -3,7 +3,6 @@ package net.knarcraft.stargate.portal; import net.knarcraft.stargate.Stargate; import net.knarcraft.stargate.container.BlockLocation; import net.knarcraft.stargate.container.RelativeBlockVector; -import net.knarcraft.stargate.utility.DirectionHelper; import net.knarcraft.stargate.utility.EconomyHandler; import org.bukkit.Material; @@ -195,7 +194,8 @@ public class Gate { Character key = layout.getLayout()[lineIndex][rowIndex]; Material materialInLayout = characterMaterialMap.get(key); - Material materialAtLocation = DirectionHelper.getBlockAt(topLeft, borderVector, yaw).getType(); + Material materialAtLocation = topLeft.getRelativeLocation(borderVector, yaw).getType(); + if (materialInLayout == null) { /* This generally should not happen with proper checking, but just in case a material character is not * recognized, but still allowed in previous checks, verify the gate as long as all such instances of @@ -225,7 +225,7 @@ public class Gate { Stargate.debug("verifyGateEntrancesMatch", String.valueOf(topLeft)); for (RelativeBlockVector entranceVector : layout.getEntrances()) { Stargate.debug("verifyGateEntrancesMatch", String.valueOf(entranceVector)); - Material type = DirectionHelper.getBlockAt(topLeft, entranceVector, yaw).getType(); + Material type = topLeft.getRelativeLocation(entranceVector, yaw).getType(); //Ignore entrance if it's air or water, and we're creating a new gate if (onCreate && (type == Material.AIR || type == Material.WATER)) { diff --git a/src/main/java/net/knarcraft/stargate/portal/Portal.java b/src/main/java/net/knarcraft/stargate/portal/Portal.java index b8d7e28..110a393 100644 --- a/src/main/java/net/knarcraft/stargate/portal/Portal.java +++ b/src/main/java/net/knarcraft/stargate/portal/Portal.java @@ -8,7 +8,6 @@ import net.knarcraft.stargate.event.StargateActivateEvent; import net.knarcraft.stargate.event.StargateCloseEvent; import net.knarcraft.stargate.event.StargateDeactivateEvent; import net.knarcraft.stargate.event.StargateOpenEvent; -import net.knarcraft.stargate.utility.DirectionHelper; import net.knarcraft.stargate.utility.SignHelper; import org.bukkit.Axis; import org.bukkit.Material; @@ -670,7 +669,7 @@ public class Portal { * @return

The block at the given relative position

*/ public BlockLocation getBlockAt(RelativeBlockVector vector) { - return DirectionHelper.getBlockAt(getTopLeft(), vector, getYaw()); + return getTopLeft().getRelativeLocation(vector, getYaw()); } /** diff --git a/src/main/java/net/knarcraft/stargate/utility/DirectionHelper.java b/src/main/java/net/knarcraft/stargate/utility/DirectionHelper.java index c0f3132..5564633 100644 --- a/src/main/java/net/knarcraft/stargate/utility/DirectionHelper.java +++ b/src/main/java/net/knarcraft/stargate/utility/DirectionHelper.java @@ -1,7 +1,5 @@ package net.knarcraft.stargate.utility; -import net.knarcraft.stargate.container.BlockLocation; -import net.knarcraft.stargate.container.RelativeBlockVector; import org.bukkit.Location; import org.bukkit.block.BlockFace; import org.bukkit.util.Vector; @@ -85,18 +83,6 @@ public final class DirectionHelper { } } - /** - * Gets a block location relative to another - * - * @param topLeft

The block location to start at (Usually the top-left block of a portal)

- * @param vector

The relative vector describing the relative location

- * @param yaw

The yaw pointing outwards from the portal

- * @return

A block location relative to the given location

- */ - public static BlockLocation getBlockAt(BlockLocation topLeft, RelativeBlockVector vector, double yaw) { - return topLeft.getRelativeLocation(vector, yaw); - } - /** * Moves a location relatively *