Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jul 11th, 2012  |  syntax: Java  |  size: 3.09 KB  |  hits: 25  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. package me.shadycraft.mentalist14;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.logging.Logger;
  5. import org.bukkit.ChatColor;
  6. import org.bukkit.command.Command;
  7. import org.bukkit.command.CommandSender;
  8. import org.bukkit.configuration.Configuration;
  9. import org.bukkit.entity.Player;
  10. import org.bukkit.event.Listener;
  11. import org.bukkit.plugin.PluginDescriptionFile;
  12. import org.bukkit.plugin.java.JavaPlugin;
  13.  
  14. public class ShadySneak extends JavaPlugin
  15. {
  16.   public static ArrayList<String> sneakingPlayers = new ArrayList();
  17.   public static ShadySneak Instance;
  18.   private PluginDescriptionFile pdfFile;
  19.   private String name;
  20.   private String version;
  21.   private static final Logger log = Logger.getLogger("Minecraft");
  22.   private String sneakOnMessage;
  23.   private String sneakOffMessage;
  24.  
  25.     @Override
  26.   public void onEnable()
  27.   {
  28.     this.pdfFile = getDescription();
  29.     this.name = this.pdfFile.getName();
  30.     this.version = this.pdfFile.getVersion();
  31.  
  32.     Listener listener = new ShadySneakListener(this);
  33.  
  34.  
  35.     this.sneakOnMessage = ("&4[SCSneak]&7You are now sneaking!").replace("&", "§");
  36.     this.sneakOffMessage =("&4[SCSneak]&7You are no longer sneaking!").replace("&", "§");
  37.    
  38.  
  39.     String strEnable = "[" + this.name + "] " + this.version + " enabled.";
  40.     log.info(strEnable);
  41.   }
  42.  
  43.     @Override
  44.   public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
  45.     if (!(sender instanceof Player)) return false;
  46.     Player player = (Player)sender;
  47.  
  48.     if (!player.hasPermission("ShadySneak.sneak"))
  49.       return true;
  50.     if (args.length > 1)
  51.       return false;
  52.     if (args.length == 0) {
  53.       toggleSneak(player);
  54.     } else {
  55.       if (args[0].equalsIgnoreCase("version") || (args[0].equalsIgnoreCase("ver"))) {
  56.         sender.sendMessage(ChatColor.GREEN + "ShadySneak v1.0");
  57.       }
  58.         return false;
  59.       }
  60.     return true;
  61.   }
  62.  
  63.   private void setupShadySneak() {
  64.     for (Player p : getServer().getOnlinePlayers())
  65.       if (p.hasPermission("ShadySneak.auto")) {
  66.  
  67.         p.setSneaking(true);
  68.         sneakingPlayers.add(p.getName());
  69.       }
  70.   }
  71.  
  72.   private void toggleSneak(Player player)
  73.   {
  74.     if (sneakingPlayers.contains(player.getName()))
  75.       setSneak(player, false);
  76.     setSneak(player, true);
  77.   }
  78.  
  79.   private void setSneak(Player player, boolean sneak) {
  80.     if (sneak) {
  81.       player.setSneaking(true);
  82.       player.sendMessage(this.sneakOnMessage);
  83.       if (!sneakingPlayers.contains(player.getName()))
  84.         sneakingPlayers.add(player.getName());
  85.     } else {
  86.       player.setSneaking(false);
  87.      
  88.       player.sendMessage(this.sneakOffMessage);
  89.       if (sneakingPlayers.contains(player.getName()))
  90.         sneakingPlayers.remove(player.getName());
  91.     }
  92.   }
  93.  
  94.  
  95.     @Override
  96.   public void onDisable()
  97.   {
  98.     String strDisable = "[" + this.name + "] " + this.version + " disabled.";
  99.     log.info(strDisable);
  100.   }
  101.  
  102.     private Player player;
  103.  
  104.     public void run()
  105.     {
  106.       if (this.player.isSneaking())
  107.         ShadySneak.this.setSneak(this.player, false);
  108.     }
  109.  
  110. }