mirror of
https://github.com/plexusorg/Plex.git
synced 2025-06-29 14:56:43 +00:00
Rework punishment system by deleting the Ban and BanManager and moving everything into Punishment Manager. TODO cache punishments maybe? who knows! add an active field to punishments and fix the ban service to actually unban players
This commit is contained in:
@ -2,6 +2,7 @@ package dev.plex.services;
|
||||
|
||||
import com.google.common.collect.Lists;
|
||||
import dev.plex.Plex;
|
||||
import dev.plex.services.impl.BanService;
|
||||
import dev.plex.services.impl.GameRuleService;
|
||||
import java.util.List;
|
||||
import org.bukkit.Bukkit;
|
||||
@ -12,7 +13,7 @@ public class ServiceManager
|
||||
|
||||
public ServiceManager()
|
||||
{
|
||||
//registerService(new BanService());
|
||||
registerService(new BanService());
|
||||
registerService(new GameRuleService());
|
||||
}
|
||||
|
||||
@ -26,11 +27,11 @@ public class ServiceManager
|
||||
}
|
||||
else if (service.isRepeating() && service.isAsynchronous())
|
||||
{
|
||||
Bukkit.getScheduler().runTaskTimerAsynchronously(Plex.get(), service::run, 0, 20 * service.repeatInSeconds());
|
||||
Bukkit.getScheduler().runTaskTimerAsynchronously(Plex.get(), service::run, 0, 20L * service.repeatInSeconds());
|
||||
}
|
||||
else if (service.isRepeating() && !service.isAsynchronous())
|
||||
{
|
||||
Bukkit.getScheduler().runTaskTimer(Plex.get(), service::run, 0, 20 * service.repeatInSeconds());
|
||||
Bukkit.getScheduler().runTaskTimer(Plex.get(), service::run, 0, 20L * service.repeatInSeconds());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,9 +1,11 @@
|
||||
package dev.plex.services.impl;
|
||||
|
||||
import dev.plex.Plex;
|
||||
import dev.plex.banning.Ban;
|
||||
import dev.plex.punishment.Punishment;
|
||||
import dev.plex.services.AbstractService;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import net.kyori.adventure.text.Component;
|
||||
import org.bukkit.Bukkit;
|
||||
|
||||
public class BanService extends AbstractService
|
||||
@ -16,12 +18,14 @@ public class BanService extends AbstractService
|
||||
@Override
|
||||
public void run()
|
||||
{
|
||||
for (Ban ban : Plex.get().getBanManager().getActiveBans())
|
||||
for (Punishment punishment : Plex.get().getPunishmentManager().getActiveBans())
|
||||
{
|
||||
if (LocalDateTime.now().isAfter(ban.getEndDate()))
|
||||
if (LocalDateTime.now().isAfter(punishment.getEndDate()))
|
||||
{
|
||||
Plex.get().getBanManager().unban(ban.getId());
|
||||
Bukkit.broadcastMessage("Plex - Unbanned " + Bukkit.getOfflinePlayer(ban.getUuid()).getName());
|
||||
Plex.get().getPunishmentManager().unban(punishment);
|
||||
// Plex.get().getBanManager().unban(ban.getId());
|
||||
// Bukkit.broadcastMessage("Plex - Unbanned " + Bukkit.getOfflinePlayer(ban.getUuid()).getName());
|
||||
Bukkit.broadcast(Component.text("Plex - Unbanned " + Bukkit.getOfflinePlayer(punishment.getPunished()).getName()));
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -29,6 +33,6 @@ public class BanService extends AbstractService
|
||||
@Override
|
||||
public int repeatInSeconds()
|
||||
{
|
||||
return 10;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user