Fix Folia compatibility

This commit is contained in:
HaHaWTH 2024-05-30 13:38:04 +08:00
parent 69f3d9838d
commit 2dd5ebcb8c
3 changed files with 18 additions and 8 deletions

View File

@ -1,6 +1,7 @@
package fr.xephi.authme.command.executable.authme;
import fr.xephi.authme.command.PlayerCommand;
import fr.xephi.authme.service.BukkitService;
import fr.xephi.authme.settings.Settings;
import fr.xephi.authme.settings.SpawnLoader;
import fr.xephi.authme.settings.properties.SecuritySettings;
@ -18,17 +19,21 @@ public class FirstSpawnCommand extends PlayerCommand {
private Settings settings;
@Inject
private SpawnLoader spawnLoader;
@Inject
private BukkitService bukkitService;
@Override
public void runCommand(Player player, List<String> arguments) {
if (spawnLoader.getFirstSpawn() == null) {
player.sendMessage("[AuthMe] First spawn has failed, please try to define the first spawn");
} else {
//String name= player.getName();
if(settings.getProperty(SecuritySettings.SMART_ASYNC_TELEPORT)) {
TeleportUtils.teleport(player, spawnLoader.getFirstSpawn());
} else {
player.teleport(spawnLoader.getFirstSpawn());
}
bukkitService.runTaskIfFolia(player, () -> {
if (settings.getProperty(SecuritySettings.SMART_ASYNC_TELEPORT)) {
TeleportUtils.teleport(player, spawnLoader.getFirstSpawn());
} else {
player.teleport(spawnLoader.getFirstSpawn());
}
});
//player.teleport(spawnLoader.getFirstSpawn());
}
}

View File

@ -1,6 +1,7 @@
package fr.xephi.authme.command.executable.authme;
import fr.xephi.authme.command.PlayerCommand;
import fr.xephi.authme.service.BukkitService;
import fr.xephi.authme.settings.SpawnLoader;
import org.bukkit.entity.Player;
@ -11,13 +12,17 @@ public class SpawnCommand extends PlayerCommand {
@Inject
private SpawnLoader spawnLoader;
@Inject
private BukkitService bukkitService;
@Override
public void runCommand(Player player, List<String> arguments) {
if (spawnLoader.getSpawn() == null) {
player.sendMessage("[AuthMe] Spawn has failed, please try to define the spawn");
} else {
player.teleport(spawnLoader.getSpawn());
bukkitService.runTaskIfFolia(player, () -> {
player.teleport(spawnLoader.getSpawn());
});
}
}
}

View File

@ -375,13 +375,13 @@ public class PlayerListener implements Listener{
Location spawn = spawnLoader.getSpawnLocation(player);
if (spawn != null && spawn.getWorld() != null) {
if (!player.getWorld().equals(spawn.getWorld())) {
if(settings.getProperty(SecuritySettings.SMART_ASYNC_TELEPORT)) {
if (settings.getProperty(SecuritySettings.SMART_ASYNC_TELEPORT)) {
TeleportUtils.teleport(player,spawn);
} else {
player.teleport(spawn);
}
} else if (spawn.distance(player.getLocation()) > settings.getProperty(ALLOWED_MOVEMENT_RADIUS)) {
if(settings.getProperty(SecuritySettings.SMART_ASYNC_TELEPORT)) {
if (settings.getProperty(SecuritySettings.SMART_ASYNC_TELEPORT)) {
TeleportUtils.teleport(player,spawn);
} else {
player.teleport(spawn);