fix duration

This commit is contained in:
okx-code
2024-10-31 00:21:19 +00:00
parent 2868627366
commit 38af63a3bb
2 changed files with 3 additions and 3 deletions

View File

@@ -56,7 +56,7 @@ public class KitPvpPlugin extends ACivMod {
ArenaManager manager = new ArenaManager(this, spawnProvider, new MysqlLoader(source));
getCommand("arena").setExecutor(new ArenaCommand(this, new SqlArenaDao(source), manager));
getServer().getPluginManager().registerEvents(new RespawnListener(manager), this);
Bukkit.getScheduler().runTaskTimer(this, new ArenaCleaner(manager), 20, 20);
Bukkit.getScheduler().runTaskTimer(this, new ArenaCleaner(manager), 20 * 60, 20 * 60);
} catch (SQLException e) {
throw new RuntimeException(e);
}

View File

@@ -11,7 +11,7 @@ import java.util.concurrent.TimeUnit;
import java.util.logging.Level;
public class ArenaCleaner implements Runnable {
private static final long EMPTY_ARENA_DURATION = TimeUnit.SECONDS.toMillis(20);
private static final long EMPTY_ARENA_DURATION = TimeUnit.MINUTES.toMillis(10);
private final Map<LoadedArena, Long> emptyArenas = new HashMap<>();
private final ArenaManager arenaManager;
@@ -30,7 +30,7 @@ public class ArenaCleaner implements Runnable {
continue;
}
if (world.getPlayerCount() == 0) {
if (world.getPlayerCount() == 0 && Bukkit.getPlayer(loadedArena.owner().getId()) == null) {
emptyArenas.putIfAbsent(loadedArena, System.currentTimeMillis());
} else {
emptyArenas.remove(loadedArena);