Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.BanHammer.Louie;
- import java.util.ArrayList;
- import java.util.List;
- import org.bukkit.Bukkit;
- import org.bukkit.Material;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.block.Action;
- import org.bukkit.event.entity.EntityDamageByEntityEvent;
- import org.bukkit.event.player.AsyncPlayerChatEvent;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.event.player.PlayerJoinEvent;
- import org.bukkit.event.player.PlayerQuitEvent;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import org.bukkit.plugin.java.JavaPlugin;
- public class BanHammer extends JavaPlugin implements Listener{
- public void onEnable(){
- Bukkit.getServer().getPluginManager().registerEvents(this, this);
- }
- public void onDisable(){
- }
- List<String> mutedplayer = getConfig().getStringList("mutedplayers");
- ArrayList<String> muted = new ArrayList<String>();
- ArrayList<String> ban = new ArrayList<String>();
- ArrayList<String> mute = new ArrayList<String>();
- ArrayList<String> kick = new ArrayList<String>();
- public boolean onCommand(CommandSender sender, Command command, String label, String[] args){
- if(label.equalsIgnoreCase("banhammer") || label.equalsIgnoreCase("bh") && sender.hasPermission("BanHammer.BanHammer")){
- if(args.length == 0){
- if(sender instanceof Player){
- ArrayList<String> lore = new ArrayList<String>();
- ItemStack hammer = new ItemStack(Material.BLAZE_ROD, 1);
- ItemMeta newhammer = hammer.getItemMeta();
- newhammer.setDisplayName("§cBan Hammer");
- lore.add("§4Right click a player to ban them!");
- newhammer.setLore(lore);
- hammer.setItemMeta(newhammer);
- ((Player) sender).getInventory().addItem(hammer);
- lore.removeAll(lore);
- }else{
- sender.sendMessage("Must be a player");
- }
- }
- if(args.length == 2){
- Player target = Bukkit.getPlayer(args[1]);
- if(args[0].equalsIgnoreCase("unmute")){
- if(this.getConfig().contains(args[1])){
- muted.remove(target.getName());
- mutedplayer.remove(args[1]);
- this.getConfig().set("mutedplayers", mutedplayer);
- saveConfig();
- Bukkit.getServer().broadcastMessage("§c" + sender.getName() + " §aunmuted §c" + target.getName() + "§a.");
- }else{
- sender.sendMessage("§cThat player is not muted");
- }
- }
- }
- if(args.length == 1 || args.length > 2){
- sender.sendMessage("§cUsage: /bh unmute [player]");
- }
- }
- return false;
- }
- @EventHandler
- public void onHit(EntityDamageByEntityEvent e){
- Player damager = (Player) e.getDamager();
- Player target = (Player) e.getEntity();
- if(damager.getItemInHand().getType() == Material.BLAZE_ROD && damager.hasPermission("BanHammer.Execute")){
- if(target instanceof Player){
- if(ban.contains(damager.getName())){
- target.kickPlayer("§cYou have been banned!");
- target.setBanned(true);
- Bukkit.getServer().broadcastMessage("§c" + damager.getName() + " §6banned §c" + target.getName() + " §6from the server!");
- return;
- }
- if(kick.contains(damager.getName())){
- target.kickPlayer("§cYou have been kicked!");
- Bukkit.getServer().broadcastMessage("§c" + damager.getName() + " §6kicked §c" + target.getName() + " §6from the server");
- return;
- }
- if(mute.contains(damager.getName())){
- muted.add(target.getName());
- Bukkit.getServer().broadcastMessage("§c" + damager.getName() + " §6muted §c" + target.getName() + "§6.");
- this.getConfig().set("mutedplayers", muted);
- saveConfig();
- muted.remove(target.getName());
- return;
- }
- }
- }
- }
- @EventHandler
- public void onRightClick(PlayerInteractEvent e){
- if(e.getPlayer().getItemInHand().getType() == Material.BLAZE_ROD && e.getPlayer().hasPermission("BanHammer.Mode")){
- if(e.getAction() == Action.RIGHT_CLICK_AIR || e.getAction() == Action.RIGHT_CLICK_BLOCK){
- String name = e.getPlayer().getName();
- if(ban.contains(name)){
- ban.remove(name);
- kick.add(name);
- e.getPlayer().sendMessage("§eKick mode enabled!");
- return;
- }
- if(kick.contains(e.getPlayer().getName())){
- kick.remove(name);
- mute.add(name);
- e.getPlayer().sendMessage("§eMute mode enabled!");
- return;
- }
- if(mute.contains(name)){
- mute.remove(name);
- ban.add(name);
- e.getPlayer().sendMessage("§eBan mode enabled!");
- return;
- }
- }
- }
- }
- @EventHandler
- public void onPlayerChat(AsyncPlayerChatEvent e){
- if(this.getConfig().getList("mutedplayers").contains(e.getPlayer().getName())){
- e.setCancelled(true);
- e.getPlayer().sendMessage("§cYou have been muted. You cannot speak.");
- }
- }
- @EventHandler
- public void onJoin(PlayerJoinEvent e){
- ban.add(e.getPlayer().getName());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement