package tv.mineinthebox.essentials.events.players;
import org.bukkit.Bukkit;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
import tv.mineinthebox.essentials.xEssentials;
import tv.mineinthebox.essentials.instances.RestrictedCommand;
import tv.mineinthebox.essentials.interfaces.XPlayer;
public class CommandRestrictEvent implements Listener {
private final xEssentials pl;
public CommandRestrictEvent(xEssentials pl) {
this.pl = pl;
}
@EventHandler
public void onCommand(PlayerCommandPreprocessEvent e) {
if(e.getMessage().startsWith("/")) {
XPlayer xp = pl.getManagers().getPlayerManager().getPlayer(e.getPlayer().getName());
if(xp.hasCommandRestrictions()) {
for(RestrictedCommand restrict : xp.getCommandRestrictions()) {
if(e.getMessage().equalsIgnoreCase("/"+restrict.getCommand())) {
e.getPlayer().sendMessage(restrict.getReason());
if(restrict.hasTask()) {
Bukkit.dispatchCommand(Bukkit.getConsoleSender(), restrict.getTaskCommand());
}
e.setCancelled(true);
break;
}
}
}
}
}
}