diff --git a/pom.xml b/pom.xml index 19ccd4a..a771add 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ me.SuperRonanCraft BetterRTP - 2.11.2 + 2.11.3 1.8 @@ -16,6 +16,7 @@ + org.apache.maven.plugins maven-shade-plugin 3.1.1 @@ -24,7 +25,7 @@ io.papermc.lib - me.SuperRonanCraft.BetterRTP.paperlib + me.SuperRonanCraft.BetterRTP.paperlib @@ -37,8 +38,8 @@ - + org.apache.maven.plugins maven-jar-plugin 3.2.0 diff --git a/src/main/java/me/SuperRonanCraft/BetterRTP/player/RTP.java b/src/main/java/me/SuperRonanCraft/BetterRTP/player/RTP.java index 8eeea81..ed3fcfb 100644 --- a/src/main/java/me/SuperRonanCraft/BetterRTP/player/RTP.java +++ b/src/main/java/me/SuperRonanCraft/BetterRTP/player/RTP.java @@ -153,19 +153,24 @@ public class RTP { return; } // Delaying? Else, just go - getPl().getCmd().rtping.put(p.getUniqueId(), true); - if (delay) { + getPl().getCmd().rtping.put(p.getUniqueId(), true); //Cache player so they cant run '/rtp' again while rtp'ing + if (getPl().getSettings().delayEnabled && delay) { new Delay(sendi, pWorld, delayTime, cancelOnMove, cancelOnDamage); } else tp(sendi, pWorld); } void tp(CommandSender sendi, PlayerWorld pWorld) { - Location loc = randomLoc(pWorld); - if (loc != null) - teleport.sendPlayer(sendi, pWorld.getPlayer(), loc, pWorld.getPrice(), pWorld.getAttempts()); - else - metMax(sendi, pWorld.getPlayer(), pWorld.getPrice()); + new BukkitRunnable(){ + @Override + public void run() { + Location loc = randomLoc(pWorld); + if (loc != null) + teleport.sendPlayer(sendi, pWorld.getPlayer(), loc, pWorld.getPrice(), pWorld.getAttempts()); + else + metMax(sendi, pWorld.getPlayer(), pWorld.getPrice()); + } + }.runTaskAsynchronously(getPl()); } // Compressed code for MaxAttempts being met diff --git a/src/main/java/me/SuperRonanCraft/BetterRTP/player/commands/Commands.java b/src/main/java/me/SuperRonanCraft/BetterRTP/player/commands/Commands.java index 3e7d280..a8b3327 100644 --- a/src/main/java/me/SuperRonanCraft/BetterRTP/player/commands/Commands.java +++ b/src/main/java/me/SuperRonanCraft/BetterRTP/player/commands/Commands.java @@ -126,19 +126,10 @@ public class Commands { if (sendi == player) delay = true; //pl.getRTP().start(player, sendi, world, biomes, delay); - tpSync(player, sendi, world, biomes, delay); + pl.getRTP().start(player, sendi, world, biomes, delay); } } - private void tpSync(Player player, CommandSender sendi, String world, List biomes, boolean delay) { - new BukkitRunnable(){ - @Override - public void run() { - pl.getRTP().start(player, sendi, world, biomes, delay); - } - }.runTaskAsynchronously(pl); - } - private boolean checkDelay(CommandSender sendi, Player player) { if (rtping.containsKey(player.getUniqueId())) //Already rtp'ing if (rtping.get(player.getUniqueId())) { diff --git a/src/main/java/me/SuperRonanCraft/BetterRTP/references/settings/Settings.java b/src/main/java/me/SuperRonanCraft/BetterRTP/references/settings/Settings.java index e84e0dc..7b473a4 100644 --- a/src/main/java/me/SuperRonanCraft/BetterRTP/references/settings/Settings.java +++ b/src/main/java/me/SuperRonanCraft/BetterRTP/references/settings/Settings.java @@ -5,17 +5,23 @@ import me.SuperRonanCraft.BetterRTP.references.file.FileBasics; public class Settings { - public boolean debug = false; - + public boolean debug; + public boolean delayEnabled; + //Dependencies private SoftDepends depends = new SoftDepends(); public void load() { //Load Settings depends.load(); - debug = Main.getInstance().getFiles().getType(FileBasics.FILETYPE.CONFIG).getBoolean("Settings.Debugger"); + FileBasics.FILETYPE config = getPl().getFiles().getType(FileBasics.FILETYPE.CONFIG); + debug = config.getBoolean("Settings.Debugger"); + delayEnabled = config.getBoolean("Settings.Delay.Enabled"); } public SoftDepends getsDepends() { return depends; } + private Main getPl() { + return Main.getInstance(); + } } diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index d530fa5..8d45500 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -22,6 +22,7 @@ Settings: Time: 10 ## Time between command and actually rtp'ing, time is in SECONDS. Set to "0" to disable delay timer # Delay: + Enabled: true Time: 5 CancelOnMove: true DisableUpdater: false diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index f93d17a..f60600f 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -1,5 +1,5 @@ main: me.SuperRonanCraft.BetterRTP.Main -version: '2.11.2' +version: '2.11.3' name: BetterRTP author: SuperRonanCraft softdepend: [Vault, WorldGuard, GriefPrevention, Factions]