diff --git a/src/main/java/net/knarcraft/stargate/config/StargateGateConfig.java b/src/main/java/net/knarcraft/stargate/config/StargateGateConfig.java index 917f91b..f8da09e 100644 --- a/src/main/java/net/knarcraft/stargate/config/StargateGateConfig.java +++ b/src/main/java/net/knarcraft/stargate/config/StargateGateConfig.java @@ -13,6 +13,7 @@ public final class StargateGateConfig { private int maxGatesEachNetwork = 0; private boolean rememberDestination = false; private boolean handleVehicles = true; + private boolean handleLeashedCreatures = true; private boolean sortNetworkDestinations = false; private boolean protectEntrance = false; private boolean enableBungee = true; @@ -76,6 +77,15 @@ public final class StargateGateConfig { return handleVehicles; } + /** + * Gets whether leashed creatures should be teleported with a teleporting player + * + * @return
Whether leashed creatures should be handled
+ */ + public boolean handleLeashedCreatures() { + return handleLeashedCreatures; + } + /** * Gets whether the list of destinations within a network should be sorted * @@ -142,6 +152,7 @@ public final class StargateGateConfig { //Functionality handleVehicles = newConfig.getBoolean("gates.functionality.handleVehicles"); + handleLeashedCreatures = newConfig.getBoolean("gates.functionality.handleLeashedCreatures"); enableBungee = newConfig.getBoolean("gates.functionality.enableBungee"); //Integrity @@ -173,5 +184,4 @@ public final class StargateGateConfig { Stargate.logWarning("You have specified an invalid color in your config.yml. Defaulting to BLACK and WHITE"); PortalSignDrawer.setColors(ChatColor.BLACK, ChatColor.WHITE); } - } diff --git a/src/main/java/net/knarcraft/stargate/portal/Teleporter.java b/src/main/java/net/knarcraft/stargate/portal/Teleporter.java index 2160e74..1cf8364 100644 --- a/src/main/java/net/knarcraft/stargate/portal/Teleporter.java +++ b/src/main/java/net/knarcraft/stargate/portal/Teleporter.java @@ -256,6 +256,11 @@ public abstract class Teleporter { * @param originThe portal the player is teleporting from
*/ protected void teleportLeashedCreatures(Player player, Portal origin) { + //If this feature is disabled, just return + if (!Stargate.getGateConfig().handleLeashedCreatures()) { + return; + } + //Find any nearby leashed entities to teleport with the player List