From a481ccf017e6f9a7a39b55eab9e5c4ff851de1f0 Mon Sep 17 00:00:00 2001 From: EpicKnarvik97 Date: Wed, 9 Feb 2022 05:54:57 +0100 Subject: [PATCH 1/7] Adds some debug messages and makes sure to listen to the vehicle teleport event result --- .../stargate/listener/PlayerEventListener.java | 2 ++ .../portal/teleporter/VehicleTeleporter.java | 16 +++++++++++++--- .../stargate/utility/TeleportHelper.java | 18 ++++++++++++++---- 3 files changed, 29 insertions(+), 7 deletions(-) diff --git a/src/main/java/net/knarcraft/stargate/listener/PlayerEventListener.java b/src/main/java/net/knarcraft/stargate/listener/PlayerEventListener.java index 4076be2..ff28930 100644 --- a/src/main/java/net/knarcraft/stargate/listener/PlayerEventListener.java +++ b/src/main/java/net/knarcraft/stargate/listener/PlayerEventListener.java @@ -33,6 +33,7 @@ import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerMoveEvent; import org.bukkit.inventory.EquipmentSlot; import org.bukkit.inventory.ItemStack; +import org.bukkit.util.Vector; import java.util.HashMap; import java.util.Map; @@ -131,6 +132,7 @@ public class PlayerEventListener implements Listener { horse.setOwner(player); } //Teleport the player's vehicle + player.setVelocity(new Vector()); new VehicleTeleporter(destination, (Vehicle) playerVehicle).teleportEntity(entrancePortal); } else { //Just teleport the player like normal diff --git a/src/main/java/net/knarcraft/stargate/portal/teleporter/VehicleTeleporter.java b/src/main/java/net/knarcraft/stargate/portal/teleporter/VehicleTeleporter.java index 22f313f..6110764 100644 --- a/src/main/java/net/knarcraft/stargate/portal/teleporter/VehicleTeleporter.java +++ b/src/main/java/net/knarcraft/stargate/portal/teleporter/VehicleTeleporter.java @@ -12,6 +12,7 @@ import org.bukkit.entity.Boat; import org.bukkit.entity.Entity; import org.bukkit.entity.LivingEntity; import org.bukkit.entity.Vehicle; +import org.bukkit.event.player.PlayerTeleportEvent; import org.bukkit.util.Vector; import java.util.List; @@ -57,7 +58,10 @@ public class VehicleTeleporter extends EntityTeleporter { Vector newVelocity = newVelocityDirection.multiply(velocity); //Call the StargateEntityPortalEvent to allow plugins to change destination - triggerPortalEvent(origin, new StargateEntityPortalEvent(teleportingVehicle, origin, portal, exit)); + exit = triggerPortalEvent(origin, new StargateEntityPortalEvent(teleportingVehicle, origin, portal, exit)); + if (exit == null) { + return false; + } //Teleport the vehicle return teleportVehicle(exit, newVelocity, origin); @@ -131,9 +135,15 @@ public class VehicleTeleporter extends EntityTeleporter { if (teleportingVehicle.eject()) { TeleportHelper.handleEntityPassengers(passengers, teleportingVehicle, origin, portal, exit.getDirection()); } - teleportingVehicle.teleport(exit); + Stargate.debug("VehicleTeleporter::teleportVehicle", "Teleporting " + teleportingVehicle + + " to final location " + exit + " with direction " + exit.getDirection()); + teleportingVehicle.teleport(exit, PlayerTeleportEvent.TeleportCause.PLUGIN); scheduler.scheduleSyncDelayedTask(Stargate.getInstance(), - () -> teleportingVehicle.setVelocity(newVelocity), 1); + () -> { + Stargate.debug("VehicleTeleporter::teleportVehicle", "Setting velocity " + newVelocity + + " for vehicle " + teleportingVehicle); + teleportingVehicle.setVelocity(newVelocity); + }, 1); } /** diff --git a/src/main/java/net/knarcraft/stargate/utility/TeleportHelper.java b/src/main/java/net/knarcraft/stargate/utility/TeleportHelper.java index 381a76b..989effd 100644 --- a/src/main/java/net/knarcraft/stargate/utility/TeleportHelper.java +++ b/src/main/java/net/knarcraft/stargate/utility/TeleportHelper.java @@ -4,6 +4,7 @@ import net.knarcraft.stargate.Stargate; import net.knarcraft.stargate.portal.Portal; import net.knarcraft.stargate.portal.teleporter.EntityTeleporter; import org.bukkit.Bukkit; +import org.bukkit.Location; import org.bukkit.entity.Creature; import org.bukkit.entity.Entity; import org.bukkit.entity.Player; @@ -80,11 +81,20 @@ public final class TeleportHelper { * @param exitDirection

The direction of any passengers exiting the stargate

*/ public static void teleportAndAddPassenger(Entity targetVehicle, Entity passenger, Vector exitDirection) { - if (!passenger.teleport(targetVehicle.getLocation().clone().setDirection(exitDirection))) { - Stargate.debug("handleVehiclePassengers", "Failed to teleport passenger" + passenger); + Location passengerExit = targetVehicle.getLocation().clone().setDirection(exitDirection); + if (!passenger.teleport(passengerExit)) { + Stargate.debug("TeleportHelper::handleVehiclePassengers", "Failed to teleport passenger" + + passenger); + } else { + Stargate.debug("TeleportHelper::handleVehiclePassengers", "Teleported " + passenger + + " to " + passengerExit); } if (!targetVehicle.addPassenger(passenger)) { - Stargate.debug("handleVehiclePassengers", "Failed to add passenger" + passenger); + Stargate.debug("TeleportHelper::handleVehiclePassengers", "Failed to add passenger" + + passenger); + } else { + Stargate.debug("TeleportHelper::handleVehiclePassengers", "Added passenger " + passenger + + " to " + targetVehicle); } } @@ -114,7 +124,7 @@ public final class TeleportHelper { //Teleport any creatures leashed by the player in a 15-block range teleportLeashedCreatures(player, origin, target); } - TeleportHelper.teleportAndAddPassenger(entity, passenger, exitRotation); + teleportAndAddPassenger(entity, passenger, exitRotation); }, passenger instanceof Player ? Stargate.getGateConfig().waitForPlayerAfterTeleportDelay() : 0); } } From 5f4a90aabbc46850dad2b4de7722da587d506335 Mon Sep 17 00:00:00 2001 From: EpicKnarvik97 Date: Wed, 9 Feb 2022 16:23:45 +0100 Subject: [PATCH 2/7] Gives all passengers the same exit velocity as the root vehicle --- .../portal/teleporter/PlayerTeleporter.java | 8 +++++--- .../stargate/portal/teleporter/Teleporter.java | 4 +++- .../portal/teleporter/VehicleTeleporter.java | 6 ++++-- .../knarcraft/stargate/utility/TeleportHelper.java | 14 ++++++++++---- 4 files changed, 22 insertions(+), 10 deletions(-) diff --git a/src/main/java/net/knarcraft/stargate/portal/teleporter/PlayerTeleporter.java b/src/main/java/net/knarcraft/stargate/portal/teleporter/PlayerTeleporter.java index 12b7f55..4c936bc 100644 --- a/src/main/java/net/knarcraft/stargate/portal/teleporter/PlayerTeleporter.java +++ b/src/main/java/net/knarcraft/stargate/portal/teleporter/PlayerTeleporter.java @@ -49,6 +49,10 @@ public class PlayerTeleporter extends Teleporter { } } + //Calculate the exit velocity of the player + Vector newVelocityDirection = DirectionHelper.getDirectionVectorFromYaw(portal.getYaw()); + Vector newVelocity = newVelocityDirection.multiply(velocity * Stargate.getGateConfig().getExitVelocity()); + //Load chunks to make sure not to teleport to the void loadChunks(); @@ -56,7 +60,7 @@ public class PlayerTeleporter extends Teleporter { TeleportHelper.teleportLeashedCreatures(player, origin, portal); if (player.eject()) { - TeleportHelper.handleEntityPassengers(passengers, player, origin, portal, exit.getDirection()); + TeleportHelper.handleEntityPassengers(passengers, player, origin, portal, exit.getDirection(), newVelocity); } //If no event is passed in, assume it's a teleport, and act as such @@ -69,8 +73,6 @@ public class PlayerTeleporter extends Teleporter { //Set the velocity of the teleported player after the teleportation is finished Bukkit.getScheduler().scheduleSyncDelayedTask(Stargate.getInstance(), () -> { - Vector newVelocityDirection = DirectionHelper.getDirectionVectorFromYaw(portal.getYaw()); - Vector newVelocity = newVelocityDirection.multiply(velocity * Stargate.getGateConfig().getExitVelocity()); player.setVelocity(newVelocity); }, 1); } diff --git a/src/main/java/net/knarcraft/stargate/portal/teleporter/Teleporter.java b/src/main/java/net/knarcraft/stargate/portal/teleporter/Teleporter.java index edaef09..7e1f7ee 100644 --- a/src/main/java/net/knarcraft/stargate/portal/teleporter/Teleporter.java +++ b/src/main/java/net/knarcraft/stargate/portal/teleporter/Teleporter.java @@ -19,6 +19,7 @@ import org.bukkit.entity.AbstractHorse; import org.bukkit.entity.Entity; import org.bukkit.event.Event; import org.bukkit.scheduler.BukkitScheduler; +import org.bukkit.util.Vector; import java.util.ArrayList; import java.util.List; @@ -83,7 +84,8 @@ public abstract class Teleporter { loadChunks(); if (teleportedEntity.eject()) { - TeleportHelper.handleEntityPassengers(passengers, teleportedEntity, origin, portal, exit.getDirection()); + TeleportHelper.handleEntityPassengers(passengers, teleportedEntity, origin, portal, exit.getDirection(), + new Vector()); } teleportedEntity.teleport(exit); return true; diff --git a/src/main/java/net/knarcraft/stargate/portal/teleporter/VehicleTeleporter.java b/src/main/java/net/knarcraft/stargate/portal/teleporter/VehicleTeleporter.java index 6110764..20d4353 100644 --- a/src/main/java/net/knarcraft/stargate/portal/teleporter/VehicleTeleporter.java +++ b/src/main/java/net/knarcraft/stargate/portal/teleporter/VehicleTeleporter.java @@ -133,7 +133,8 @@ public class VehicleTeleporter extends EntityTeleporter { */ private void teleportVehicle(List passengers, Location exit, Vector newVelocity, Portal origin) { if (teleportingVehicle.eject()) { - TeleportHelper.handleEntityPassengers(passengers, teleportingVehicle, origin, portal, exit.getDirection()); + TeleportHelper.handleEntityPassengers(passengers, teleportingVehicle, origin, portal, exit.getDirection(), + newVelocity); } Stargate.debug("VehicleTeleporter::teleportVehicle", "Teleporting " + teleportingVehicle + " to final location " + exit + " with direction " + exit.getDirection()); @@ -172,7 +173,8 @@ public class VehicleTeleporter extends EntityTeleporter { } //Remove the old vehicle if (teleportingVehicle.eject()) { - TeleportHelper.handleEntityPassengers(passengers, newVehicle, origin, portal, exit.getDirection()); + TeleportHelper.handleEntityPassengers(passengers, newVehicle, origin, portal, exit.getDirection(), + newVelocity); } teleportingVehicle.remove(); scheduler.scheduleSyncDelayedTask(Stargate.getInstance(), () -> newVehicle.setVelocity(newVelocity), 1); diff --git a/src/main/java/net/knarcraft/stargate/utility/TeleportHelper.java b/src/main/java/net/knarcraft/stargate/utility/TeleportHelper.java index 989effd..97d7868 100644 --- a/src/main/java/net/knarcraft/stargate/utility/TeleportHelper.java +++ b/src/main/java/net/knarcraft/stargate/utility/TeleportHelper.java @@ -79,8 +79,10 @@ public final class TeleportHelper { * @param targetVehicle

The entity to add the passenger to

* @param passenger

The passenger to teleport and add

* @param exitDirection

The direction of any passengers exiting the stargate

+ * @param newVelocity

The new velocity of the teleported passenger

*/ - public static void teleportAndAddPassenger(Entity targetVehicle, Entity passenger, Vector exitDirection) { + public static void teleportAndAddPassenger(Entity targetVehicle, Entity passenger, Vector exitDirection, + Vector newVelocity) { Location passengerExit = targetVehicle.getLocation().clone().setDirection(exitDirection); if (!passenger.teleport(passengerExit)) { Stargate.debug("TeleportHelper::handleVehiclePassengers", "Failed to teleport passenger" + @@ -96,6 +98,9 @@ public final class TeleportHelper { Stargate.debug("TeleportHelper::handleVehiclePassengers", "Added passenger " + passenger + " to " + targetVehicle); } + Stargate.debug("VehicleTeleporter::teleportVehicle", "Setting velocity " + newVelocity + + " for passenger " + passenger); + passenger.setVelocity(newVelocity); } /** @@ -106,9 +111,10 @@ public final class TeleportHelper { * @param origin

The portal the entity teleported from

* @param target

The portal the entity is teleporting to

* @param exitRotation

The rotation of any passengers exiting the stargate

+ * @param newVelocity

The new velocity of the teleported passengers

*/ public static void handleEntityPassengers(List passengers, Entity entity, Portal origin, Portal target, - Vector exitRotation) { + Vector exitRotation, Vector newVelocity) { for (Entity passenger : passengers) { List passengerPassengers = passenger.getPassengers(); if (!passengerPassengers.isEmpty()) { @@ -117,14 +123,14 @@ public final class TeleportHelper { } if (passenger.eject()) { //Teleport any passengers of the passenger - handleEntityPassengers(passengerPassengers, passenger, origin, target, exitRotation); + handleEntityPassengers(passengerPassengers, passenger, origin, target, exitRotation, newVelocity); } Bukkit.getScheduler().scheduleSyncDelayedTask(Stargate.getInstance(), () -> { if (passenger instanceof Player player) { //Teleport any creatures leashed by the player in a 15-block range teleportLeashedCreatures(player, origin, target); } - teleportAndAddPassenger(entity, passenger, exitRotation); + teleportAndAddPassenger(entity, passenger, exitRotation, newVelocity); }, passenger instanceof Player ? Stargate.getGateConfig().waitForPlayerAfterTeleportDelay() : 0); } } From 61b05bcce9b0a3141c34682f19821e2c7cfa7bac Mon Sep 17 00:00:00 2001 From: EpicKnarvik97 Date: Wed, 9 Feb 2022 16:47:37 +0100 Subject: [PATCH 3/7] Improves some code --- .../stargate/container/RelativeBlockVector.java | 15 +++++---------- .../portal/teleporter/PlayerTeleporter.java | 4 +--- 2 files changed, 6 insertions(+), 13 deletions(-) diff --git a/src/main/java/net/knarcraft/stargate/container/RelativeBlockVector.java b/src/main/java/net/knarcraft/stargate/container/RelativeBlockVector.java index 925764d..847c7ff 100644 --- a/src/main/java/net/knarcraft/stargate/container/RelativeBlockVector.java +++ b/src/main/java/net/knarcraft/stargate/container/RelativeBlockVector.java @@ -58,16 +58,11 @@ public class RelativeBlockVector { * @return

A new relative block vector with the property altered

*/ public RelativeBlockVector addToVector(Property propertyToAddTo, int valueToAdd) { - switch (propertyToAddTo) { - case RIGHT: - return new RelativeBlockVector(this.right + valueToAdd, this.down, this.out); - case DOWN: - return new RelativeBlockVector(this.right, this.down + valueToAdd, this.out); - case OUT: - return new RelativeBlockVector(this.right, this.down, this.out + valueToAdd); - default: - throw new IllegalArgumentException("Invalid relative block vector property given"); - } + return switch (propertyToAddTo) { + case RIGHT -> new RelativeBlockVector(this.right + valueToAdd, this.down, this.out); + case DOWN -> new RelativeBlockVector(this.right, this.down + valueToAdd, this.out); + case OUT -> new RelativeBlockVector(this.right, this.down, this.out + valueToAdd); + }; } /** diff --git a/src/main/java/net/knarcraft/stargate/portal/teleporter/PlayerTeleporter.java b/src/main/java/net/knarcraft/stargate/portal/teleporter/PlayerTeleporter.java index 4c936bc..3460340 100644 --- a/src/main/java/net/knarcraft/stargate/portal/teleporter/PlayerTeleporter.java +++ b/src/main/java/net/knarcraft/stargate/portal/teleporter/PlayerTeleporter.java @@ -72,9 +72,7 @@ public class PlayerTeleporter extends Teleporter { } //Set the velocity of the teleported player after the teleportation is finished - Bukkit.getScheduler().scheduleSyncDelayedTask(Stargate.getInstance(), () -> { - player.setVelocity(newVelocity); - }, 1); + Bukkit.getScheduler().scheduleSyncDelayedTask(Stargate.getInstance(), () -> player.setVelocity(newVelocity), 1); } } From 28bb6f2109c27ec1f8fb26d0a81d367913ee8763 Mon Sep 17 00:00:00 2001 From: EpicKnarvik97 Date: Wed, 9 Feb 2022 17:19:51 +0100 Subject: [PATCH 4/7] Improves the generation of the list of available chat colors --- .../java/net/knarcraft/stargate/Stargate.java | 5 +---- .../stargate/command/CommandStarGate.java | 1 + .../stargate/command/ConfigTabCompleter.java | 20 ++++--------------- .../stargate/config/StargateConfig.java | 1 + .../stargate/config/StargateGateConfig.java | 2 ++ .../listener/PluginEventListener.java | 1 + .../stargate/listener/WorldEventListener.java | 1 + .../net/knarcraft/stargate/portal/Portal.java | 1 + .../stargate/portal/PortalHandler.java | 1 + 9 files changed, 13 insertions(+), 20 deletions(-) diff --git a/src/main/java/net/knarcraft/stargate/Stargate.java b/src/main/java/net/knarcraft/stargate/Stargate.java index 7cb5415..2b659c0 100644 --- a/src/main/java/net/knarcraft/stargate/Stargate.java +++ b/src/main/java/net/knarcraft/stargate/Stargate.java @@ -45,18 +45,14 @@ import java.util.logging.Logger; @SuppressWarnings("unused") public class Stargate extends JavaPlugin { - //Used for changing gate open/closed material. private static final Queue blockChangeRequestQueue = new LinkedList<>(); private static final Queue chunkUnloadQueue = new PriorityQueue<>(); private static Logger logger; private static Stargate stargate; - private static String pluginVersion; - private static PluginManager pluginManager; private static StargateConfig stargateConfig; - private static String updateAvailable = null; /** @@ -430,4 +426,5 @@ public class Stargate extends JavaPlugin { public static StargateConfig getStargateConfig() { return stargateConfig; } + } diff --git a/src/main/java/net/knarcraft/stargate/command/CommandStarGate.java b/src/main/java/net/knarcraft/stargate/command/CommandStarGate.java index bd82080..0e759f2 100644 --- a/src/main/java/net/knarcraft/stargate/command/CommandStarGate.java +++ b/src/main/java/net/knarcraft/stargate/command/CommandStarGate.java @@ -35,4 +35,5 @@ public class CommandStarGate implements CommandExecutor { return true; } } + } diff --git a/src/main/java/net/knarcraft/stargate/command/ConfigTabCompleter.java b/src/main/java/net/knarcraft/stargate/command/ConfigTabCompleter.java index 693fc26..82b2d79 100644 --- a/src/main/java/net/knarcraft/stargate/command/ConfigTabCompleter.java +++ b/src/main/java/net/knarcraft/stargate/command/ConfigTabCompleter.java @@ -217,22 +217,10 @@ public class ConfigTabCompleter implements TabCompleter { */ private List getChatColors() { List chatColors = new ArrayList<>(); - chatColors.add(ChatColor.WHITE); - chatColors.add(ChatColor.BLUE); - chatColors.add(ChatColor.DARK_BLUE); - chatColors.add(ChatColor.DARK_PURPLE); - chatColors.add(ChatColor.LIGHT_PURPLE); - chatColors.add(ChatColor.GOLD); - chatColors.add(ChatColor.GREEN); - chatColors.add(ChatColor.BLACK); - chatColors.add(ChatColor.DARK_GREEN); - chatColors.add(ChatColor.DARK_RED); - chatColors.add(ChatColor.RED); - chatColors.add(ChatColor.AQUA); - chatColors.add(ChatColor.DARK_AQUA); - chatColors.add(ChatColor.DARK_GRAY); - chatColors.add(ChatColor.GRAY); - chatColors.add(ChatColor.YELLOW); + char[] colors = new char[]{'a', 'b', 'c', 'd', 'e', 'f', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}; + for (char color : colors) { + chatColors.add(ChatColor.getByChar(color)); + } chatColors.add(ChatColor.of("#ed76d9")); chatColors.add(ChatColor.of("#ffecb7")); return chatColors; diff --git a/src/main/java/net/knarcraft/stargate/config/StargateConfig.java b/src/main/java/net/knarcraft/stargate/config/StargateConfig.java index d8acd65..7c94a30 100644 --- a/src/main/java/net/knarcraft/stargate/config/StargateConfig.java +++ b/src/main/java/net/knarcraft/stargate/config/StargateConfig.java @@ -520,4 +520,5 @@ public final class StargateConfig { public LanguageLoader getLanguageLoader() { return languageLoader; } + } diff --git a/src/main/java/net/knarcraft/stargate/config/StargateGateConfig.java b/src/main/java/net/knarcraft/stargate/config/StargateGateConfig.java index 47542bd..c848f9d 100644 --- a/src/main/java/net/knarcraft/stargate/config/StargateGateConfig.java +++ b/src/main/java/net/knarcraft/stargate/config/StargateGateConfig.java @@ -16,6 +16,7 @@ import java.util.Map; * The Stargate gate config keeps track of all global config values related to gates */ public final class StargateGateConfig { + private static final int activeTime = 10; private static final int openTime = 10; private final Map configOptions; @@ -320,4 +321,5 @@ public final class StargateGateConfig { PortalSignDrawer.setHighlightColor(ChatColor.WHITE); } } + } diff --git a/src/main/java/net/knarcraft/stargate/listener/PluginEventListener.java b/src/main/java/net/knarcraft/stargate/listener/PluginEventListener.java index a6e0dba..2f70de3 100644 --- a/src/main/java/net/knarcraft/stargate/listener/PluginEventListener.java +++ b/src/main/java/net/knarcraft/stargate/listener/PluginEventListener.java @@ -49,4 +49,5 @@ public class PluginEventListener implements Listener { Stargate.logInfo("Vault plugin lost."); } } + } diff --git a/src/main/java/net/knarcraft/stargate/listener/WorldEventListener.java b/src/main/java/net/knarcraft/stargate/listener/WorldEventListener.java index bd4ccc5..6329d6d 100644 --- a/src/main/java/net/knarcraft/stargate/listener/WorldEventListener.java +++ b/src/main/java/net/knarcraft/stargate/listener/WorldEventListener.java @@ -46,4 +46,5 @@ public class WorldEventListener implements Listener { PortalRegistry.clearPortals(world); } } + } diff --git a/src/main/java/net/knarcraft/stargate/portal/Portal.java b/src/main/java/net/knarcraft/stargate/portal/Portal.java index 93e664f..f42ddb2 100644 --- a/src/main/java/net/knarcraft/stargate/portal/Portal.java +++ b/src/main/java/net/knarcraft/stargate/portal/Portal.java @@ -345,4 +345,5 @@ public class Portal { return cleanNetwork.equalsIgnoreCase(other.cleanNetwork); } } + } diff --git a/src/main/java/net/knarcraft/stargate/portal/PortalHandler.java b/src/main/java/net/knarcraft/stargate/portal/PortalHandler.java index cabff97..44ffb81 100644 --- a/src/main/java/net/knarcraft/stargate/portal/PortalHandler.java +++ b/src/main/java/net/knarcraft/stargate/portal/PortalHandler.java @@ -448,4 +448,5 @@ public class PortalHandler { } return input.replaceAll("[|:#]", "").trim(); } + } From 9e78e32db41e692da45c9f91acf1af536dd73ffc Mon Sep 17 00:00:00 2001 From: EpicKnarvik97 Date: Wed, 9 Feb 2022 17:20:28 +0100 Subject: [PATCH 5/7] Fixes some spacing --- src/main/java/net/knarcraft/stargate/Stargate.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/net/knarcraft/stargate/Stargate.java b/src/main/java/net/knarcraft/stargate/Stargate.java index 2b659c0..be35747 100644 --- a/src/main/java/net/knarcraft/stargate/Stargate.java +++ b/src/main/java/net/knarcraft/stargate/Stargate.java @@ -426,5 +426,5 @@ public class Stargate extends JavaPlugin { public static StargateConfig getStargateConfig() { return stargateConfig; } - + } From 00462799b91b2c5b385889e1f87f409c565efcb3 Mon Sep 17 00:00:00 2001 From: EpicKnarvik97 Date: Wed, 9 Feb 2022 18:28:47 +0100 Subject: [PATCH 6/7] Fixes the default wait for player after teleport delay --- src/main/java/net/knarcraft/stargate/config/ConfigOption.java | 2 +- .../java/net/knarcraft/stargate/config/StargateGateConfig.java | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/net/knarcraft/stargate/config/ConfigOption.java b/src/main/java/net/knarcraft/stargate/config/ConfigOption.java index d460492..f208ed6 100644 --- a/src/main/java/net/knarcraft/stargate/config/ConfigOption.java +++ b/src/main/java/net/knarcraft/stargate/config/ConfigOption.java @@ -117,7 +117,7 @@ public enum ConfigOption { */ WAIT_FOR_PLAYER_AFTER_TELEPORT_DELAY("advanced.waitForPlayerAfterTeleportDelay", "The amount of ticks to wait before adding a player as passenger of a vehicle. On slow servers, " + - "a value of 6 is required to avoid client glitches after teleporting on a vehicle.", 1), + "a value of 6 is required to avoid client glitches after teleporting on a vehicle.", 6), /** * Whether to enable economy support for taking payment from players creating/destroying/using stargates diff --git a/src/main/java/net/knarcraft/stargate/config/StargateGateConfig.java b/src/main/java/net/knarcraft/stargate/config/StargateGateConfig.java index c848f9d..053d4b6 100644 --- a/src/main/java/net/knarcraft/stargate/config/StargateGateConfig.java +++ b/src/main/java/net/knarcraft/stargate/config/StargateGateConfig.java @@ -143,6 +143,9 @@ public final class StargateGateConfig { * @return

The delay to use before adding a player as passenger of a teleported vehicle

*/ public int waitForPlayerAfterTeleportDelay() { + if ((int) configOptions.get(ConfigOption.WAIT_FOR_PLAYER_AFTER_TELEPORT_DELAY) < 2) { + configOptions.put(ConfigOption.WAIT_FOR_PLAYER_AFTER_TELEPORT_DELAY, 6); + } return (int) configOptions.get(ConfigOption.WAIT_FOR_PLAYER_AFTER_TELEPORT_DELAY); } From 4dfce3d3256c8e46d285dc7916155351ad6ecfe2 Mon Sep 17 00:00:00 2001 From: EpicKnarvik97 Date: Wed, 9 Feb 2022 18:37:04 +0100 Subject: [PATCH 7/7] Updates README and version --- README.md | 5 +++++ pom.xml | 2 +- src/main/resources/plugin.yml | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 930c3e8..412929b 100644 --- a/README.md +++ b/README.md @@ -400,6 +400,11 @@ portalInfoServer=Server: %server% # Changes +#### \[Version 0.9.3.5] EpicKnarvik97 fork + +- Fixes the wait for player delay being too low by default +- Performs some minor code optimizations and restructuring + #### \[Version 0.9.3.4] EpicKnarvik97 fork - Includes passengers of passengers when teleporting entities diff --git a/pom.xml b/pom.xml index 08017ba..0626d5a 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ net.knarcraft Stargate - 0.9.3.4 + 0.9.3.5 diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index 8bba37f..8b0c3c7 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,6 +1,6 @@ name: Stargate main: net.knarcraft.stargate.Stargate -version: 0.9.3.4 +version: 0.9.3.5 description: Stargate mod for Bukkit Revived author: EpicKnarvik97 authors: [ Drakia, PseudoKnight, EpicKnarvik97 ]