thebmanswan541

Permissions - Bukkit Coding Episode 5

Jul 4th, 2015
280
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.36 KB | None | 0 0
  1. package me.TheBmanSwan.Configuration;
  2.  
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.ChatColor;
  5. import org.bukkit.command.Command;
  6. import org.bukkit.command.CommandSender;
  7. import org.bukkit.entity.Player;
  8. import org.bukkit.event.EventHandler;
  9. import org.bukkit.event.Listener;
  10. import org.bukkit.event.player.PlayerJoinEvent;
  11. import org.bukkit.permissions.Permission;
  12. import org.bukkit.plugin.java.JavaPlugin;
  13.  
  14. public class Configuration extends JavaPlugin implements Listener {
  15.  
  16.     Permission perm = new Permission("motd.set");
  17.  
  18.     @Override
  19.     public void onEnable() {
  20.         Bukkit.getPluginManager().registerEvents(this, this);
  21.         Bukkit.getPluginManager().addPermission(perm);
  22.         getConfig().options().copyDefaults(true);
  23.         saveConfig();
  24.     }
  25.  
  26.     @EventHandler
  27.     public void onJoin(PlayerJoinEvent e) {
  28.         Player p = e.getPlayer();
  29.         if (getConfig().getString("motd") == null) return;
  30.         p.sendMessage(ChatColor.translateAlternateColorCodes('&', getConfig().getString("motd")));
  31.     }
  32.  
  33.     @Override
  34.     public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
  35.         if (sender.hasPermission(perm)) {
  36.             if (label.equalsIgnoreCase("setmotd")) {
  37.                 if (args.length == 0) {
  38.                     sender.sendMessage(ChatColor.RED + "Usage: /setmotd [motd]");
  39.                     /**
  40.                      * /setmotd hi im cool
  41.                      */
  42.                     return true;
  43.                 }
  44.                 StringBuilder x = new StringBuilder();
  45.                 for (int i = 0; i < args.length; i++) {
  46.                     x.append(args[i] + " ");
  47.                 }
  48.                 /**
  49.                  * motd: '&7This is an motd.'
  50.                  */
  51.                 getConfig().set("motd", x.toString().trim());
  52.                 saveConfig();
  53.                 sender.sendMessage(ChatColor.GREEN + "Successfully set the motd to: " + ChatColor.translateAlternateColorCodes('&', getConfig().getString("motd")));
  54.             }
  55.         } else {
  56.             sender.sendMessage(ChatColor.RED+"You do not have permission to execute this command.");
  57.         }
  58.  
  59.         if (label.equalsIgnoreCase("motd")) {
  60.             sender.sendMessage(ChatColor.translateAlternateColorCodes('&', getConfig().getString("motd")));
  61.         }
  62.  
  63.         return true;
  64.     }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment