forked from SteamWar/SteamWar
Move Chatter.disconnect call to ensure proper execution after IP ban check.
Signed-off-by: Chaoscaot <max@maxsp.de>
This commit is contained in:
@@ -90,13 +90,13 @@ public class PunishmentCommand {
|
|||||||
Player player = VelocityCore.getProxy().getPlayer(user.getUUID()).orElse(null);
|
Player player = VelocityCore.getProxy().getPlayer(user.getUUID()).orElse(null);
|
||||||
if (player != null) {
|
if (player != null) {
|
||||||
String ip = IPSanitizer.getTrueAddress(player).getHostAddress();
|
String ip = IPSanitizer.getTrueAddress(player).getHostAddress();
|
||||||
Chatter.disconnect(player).system(punishmentMessage(user, Punishment.PunishmentType.Ban));
|
|
||||||
for (BannedUserIPs banned : BannedUserIPs.get(ip)) {
|
for (BannedUserIPs banned : BannedUserIPs.get(ip)) {
|
||||||
SteamwarUser bannedUser = SteamwarUser.byId(banned.getUserID());
|
SteamwarUser bannedUser = SteamwarUser.byId(banned.getUserID());
|
||||||
if (bannedUser.isPunished(Punishment.PunishmentType.Ban) && bannedUser.getPunishment(Punishment.PunishmentType.Ban).getEndTime().before(time)) {
|
if (bannedUser.isPunished(Punishment.PunishmentType.Ban) && bannedUser.getPunishment(Punishment.PunishmentType.Ban).getEndTime().before(time)) {
|
||||||
bannedUser.punish(Punishment.PunishmentType.Ban, time, banReason, punisher.getId(), perma);
|
bannedUser.punish(Punishment.PunishmentType.Ban, time, banReason, punisher.getId(), perma);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Chatter.disconnect(player).system(punishmentMessage(user, Punishment.PunishmentType.Ban));
|
||||||
if (!player.getUsername().startsWith(".")) {
|
if (!player.getUsername().startsWith(".")) {
|
||||||
BannedUserIPs.banIP(user.getId(), ip);
|
BannedUserIPs.banIP(user.getId(), ip);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user