[SALE] Aqua Punishments Bans | Mutes | Blacklists | Kicks | Warns | History Saved [PunishmentGUI] 1.8.3

This plugins allows you to punish your players.
Supported software
Supported versions
Tags
Tags
bans punish punishments spigot
Scunqjk.png


Aqua Punishments is a punishment plugin that includes all types of punishments such as Bans, Mutes, Kicks, and others.
Author: FaceSlap_/Activated_ | Now managed by BGHDDevelopment
Other required plugins: None
Other requirements: MongoDB & Redis

k3rRNfx.png
  • /blacklist <user> [reason]
  • /ban <user> [duration] [reason] [-s]
  • /mute <user> [duration] [reason] [-s]
  • /ipban <user> [duration] [reason] [-s]
  • /warn <user> [duration] [reason] [-s]
  • /unban <user> [reason] [-s]
  • /unmute <user> [reason] [-s]
  • /unblacklist <user> [reason]
  • /kick <user> [message]
  • /checkpunishments [name]
  • /punishinfo
pHsCQsO.png
  1. Bans
    You can ban players permanent or for an entered period of time. Players can be IP-banned or just banned. If a player is IP-banned no one from the banned IP can't join the server.
  2. Mutes
    You can mute players permanent or for an entered period of time. If a player has active mute the player can't be muted until mute expire.
  3. Warns
    You can warn players as much as you want. You can warn them permanent or for an entered period of time.
    If a player reaches a configurable amount of the warns they will be banned for a configurable amount of time. Also, all warns can be set to inactive after they get banned.
  4. Blacklists
    Player and the IP of the player will be blacklisted and no one from the IP won't be able to join the server.
  5. Alts
    You can check all players potential alts and alts from the last IP of the user.
    - Potential alts are alts that are scanned on all IPs that user was joning from.
    - Regular alts are alts that are scanned on the last IP of the user.
  6. History
    All punishments are saved in Mongo Data Base, it will save or active and in-active punishments which means that you can check them by doing /checkpunishments <user>.
    Also, things like IP, all IPs that user was joining from, first joined, last seen, UUID and such, can be viewed in history.
6Hnz66U.png





QRH4kNi.png

NkIYyS7.png


8AYK4NQ.png


DQjdXZj.png


i1H9nWN.png


VzAmeMH.png


c484791.png


yrAw5rD.png


zjyXtlF.png


sdIphFj.png


CTBX4rh.png
3JS5OPf.png


8t7iqWX.png


Bj0PfIB.png


Va4gAEv.png


tDQiNN4.png


daK8st3.png

Code:
punishments.command.ban - access to /ban
punishments.command.banip - access to /banip
punishments.command.blacklist - access to /blacklist
punishments.command.check - access to /check
punishments.command.kick - access to /kickpunishments.command.mute
punishments.command.mute - access to /mute
punishments.command.warn - access to /warn
punishments.command.unban - access to /unban
punishments.command.unblacklist - access to /unblacklist
punishments.command.unmute - access to /unmute
punishments.see.silent - access to see silent punishments
HslhZak.png
Code:
package me.activated.punishments.api;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import me.activated.punishments.PunishmentPlugin;
import me.activated.punishments.player.PlayerData;
import me.activated.punishments.utilities.punishments.Alt;
import me.activated.punishments.utilities.punishments.Punishment;
import me.activated.punishments.utilities.punishments.PunishmentType;

import java.rmi.UnexpectedException;
import java.util.List;
import java.util.Set;
import java.util.UUID;
import java.util.stream.Collectors;

@RequiredArgsConstructor
public class PunishmentsAPI {
    private final PunishmentPlugin plugin;


    public boolean isUserLoaded(UUID uuid) {
        return getPlayerData(uuid) != null;
    }

    public PlayerData loadUser(UUID uuid, String name) throws UnexpectedException {
        if (isUserLoaded(uuid)) {
            throw new UnexpectedException("User is already loaded!");
        }
        plugin.getProfileManager().createPlayerDate(uuid, name);
        plugin.getProfileManager().getPlayerDataFromUUID(uuid).load();
        plugin.getProfileManager().getPlayerDataFromUUID(uuid).getPunishData().load();
        return getPlayerData(uuid);
    }

    public PlayerData getPlayerData(UUID uuid) {
        return plugin.getProfileManager().getPlayerDataFromUUID(uuid);
    }

    public boolean isBanned(UUID uuid) {
        PlayerData playerData = getPlayerData(uuid);
        return playerData.getPunishData().isBanned();
    }

    public boolean isIPBanned(UUID uuid) {
        PlayerData playerData = getPlayerData(uuid);
        return playerData.getPunishData().isIPBanned();
    }

    public boolean isMuted(UUID uuid) {
        PlayerData playerData = getPlayerData(uuid);
        return playerData.getPunishData().isMuted();
    }

    public boolean isBlacklisted(UUID uuid) {
        PlayerData playerData = getPlayerData(uuid);
        return playerData.getPunishData().isBlacklisted();
    }

    public Set<Punishment> getPunishments(UUID uuid) {
        PlayerData playerData = getPlayerData(uuid);
        return playerData.getPunishData().getPunishments();
    }

    public Set<Punishment> getPunishments(UUID uuid, PunishmentType punishmentType) {
        PlayerData playerData = getPlayerData(uuid);
        return playerData.getPunishData().getPunishments().stream().filter(punishment -> punishment.getPunishmentType() == punishmentType).collect(Collectors.toSet());
    }

    public List<Alt> getAlts(UUID uuid) {
        PlayerData playerData = getPlayerData(uuid);
        return playerData.getAlts();
    }

    public List<Alt> getPotentialAlts(UUID uuid) {
        PlayerData playerData = getPlayerData(uuid);
        return playerData.getPotentialAlts();
    }

    public String getAddress(UUID uuid) {
        PlayerData playerData = getPlayerData(uuid);
        return playerData.getAddress();
    }

    public List<String> getAddresses(UUID uuid) {
        PlayerData playerData = getPlayerData(uuid);
        return playerData.getAddresses();
    }
}
Crediting original
FaceSlap_

Latest updates

  1. Fix

    Apparently jar had an issue, should be fixed.
  2. Fixes

    Fixed a duplicate error message
  3. Required Update

    Required Update, old versions won't work.

Latest reviews

10/10 plugin, please add punishment wipes!
Awesome plugin! Recommended
Epic developer, epic plugin as always! :)
vouch, have used alot of plugins made by FaceSlap all work with out fail if you report a bug he fixs it fast
Top
You need to upgrade!
Our dark style is reserved for our Premium members. Upgrade here.