Advertisement
captainawesome7

DispNameChanger

Apr 29th, 2011
252
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.63 KB | None | 0 0
  1. package me.captain.DispNameChanger;
  2.    
  3. import java.util.logging.Logger;
  4.  
  5. import org.bukkit.ChatColor;
  6. import org.bukkit.command.Command;
  7. import org.bukkit.command.CommandSender;
  8. import org.bukkit.entity.Player;
  9. import org.bukkit.plugin.PluginManager;
  10. import org.bukkit.plugin.java.JavaPlugin;
  11. import com.nijiko.permissions.PermissionHandler;
  12. import com.nijikokun.bukkit.Permissions.Permissions;
  13. import org.bukkit.plugin.Plugin;
  14.  
  15.  
  16.  
  17. public class DispNameChanger extends JavaPlugin {
  18.    
  19.     private boolean UsePermissions;
  20.     public static PermissionHandler Permissions;
  21.     private void setupPermissions() {
  22.         Plugin test = this.getServer().getPluginManager().getPlugin("Permissions");
  23.         if (this.Permissions == null) {
  24.             if (test != null) {
  25.                 UsePermissions = true;
  26.                 this.Permissions = ((Permissions) test).getHandler();
  27.                 System.out.println("[DispNameChanger] Permissions system detected!");
  28.             } else {
  29.                 log.info("Permission system not detected, defaulting to OP");
  30.                 UsePermissions = false;
  31.             }
  32.         }
  33.     }
  34.    
  35.    
  36.     public boolean canUseCheckName(Player p) {
  37.         if (UsePermissions) {
  38.             return this.Permissions.has(p, "dispname.check");
  39.         }
  40.         return p.isOp();
  41.     }
  42.     public boolean canUseChangeName(Player p) {
  43.         if (UsePermissions) {
  44.             return this.Permissions.has(p, "dispname.change");
  45.         }
  46.         return p.isOp();
  47.     }
  48.  
  49.     private static final Logger log = Logger.getLogger("Minecraft");
  50.  
  51.     public void onEnable() {
  52.        
  53.         PluginManager pm = getServer().getPluginManager();
  54.         setupPermissions();
  55.         log.info("[DispNameChanger] DispNameChanger has been enabled!");
  56.     }
  57.  
  58.     public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
  59.         Player player = (Player) sender;
  60.         if(commandLabel.equalsIgnoreCase("rename")){
  61.             if (canUseChangeName((Player) sender)) {
  62.                 if(args.length==0)
  63.                 {
  64.                     String rn = player.getName();
  65.                     player.setDisplayName(rn);
  66.                     player.sendMessage(ChatColor.GREEN + "Your name is now " + rn);
  67.                     return true;
  68.                 }
  69.                 String p = args[0];
  70.                 String n = args[1];
  71.                 if(args[1] == null) {
  72.                     Player changee = this.getServer().getPlayer(p);
  73.                     changee.setDisplayName(p);
  74.                 }
  75.                 Player changee = this.getServer().getPlayer(p);
  76.                 if(changee == null) {
  77.                     sender.sendMessage(ChatColor.RED + "That user doesn't exist, or isn't online.");
  78.                         } else {
  79.                 Player changer = (Player) sender;
  80.                 changee.setDisplayName(n.replaceAll("(&([a-f0-9]))", "\u00A7$2"));
  81.                 changee.sendMessage(ChatColor.GREEN + "Your name is now " + n);
  82.                 changer.sendMessage(ChatColor.GREEN + p + "'s name is now " + n);
  83.                 DNCPersistence pClass = getDatabase().find(DNCPersistence.class).where().ieq("PlayerName", p).findUnique();
  84.                 if (pClass== null) {
  85.                     pClass = new DNCPersistence ();
  86.                 }
  87.                 pClass.setPlayerName(p);
  88.                 pClass.setDisplayName(n);
  89.                 this.getDatabase().save(pClass);
  90.                         }
  91.                 } else {
  92.                     Player s = (Player) sender;
  93.                     s.sendMessage(ChatColor.RED + "You don't have permisson to change names");
  94.                 }
  95.                 return true;
  96.         }
  97.         if(commandLabel.equalsIgnoreCase("checkname")){
  98.             if (canUseCheckName((Player) sender)) {
  99.                 String p = args[0];
  100.                 Player changee = this.getServer().getPlayer(p);
  101.                 String name = changee.getName();
  102.                 Player changer = (Player) sender;
  103.                 changer.sendMessage(ChatColor.RED + p + "is really: " + name);
  104.                 } else {
  105.                     Player s = (Player) sender;
  106.                     s.sendMessage(ChatColor.RED + "You don't have permisson to change names");
  107.                 }
  108.                 return true;
  109.         }
  110.             return false;
  111.     }
  112.  
  113.     public void onDisable() {
  114.         log.info("[DispNameChanger] DispNameChanger has been disabled!");
  115.     }
  116.    
  117. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement