package me.shadycraft.mentalist14;
import java.util.ArrayList;
import java.util.logging.Logger;
import org.bukkit.ChatColor;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.Configuration;
import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.java.JavaPlugin;
public class ShadySneak extends JavaPlugin
{
public static ArrayList<String> sneakingPlayers = new ArrayList();
public static ShadySneak Instance;
private PluginDescriptionFile pdfFile;
private String name;
private String version;
private static final Logger log = Logger.getLogger("Minecraft");
private String sneakOnMessage;
private String sneakOffMessage;
@Override
public void onEnable()
{
this.pdfFile = getDescription();
this.name = this.pdfFile.getName();
this.version = this.pdfFile.getVersion();
Listener listener = new ShadySneakListener(this);
this.sneakOnMessage = ("&4[SCSneak]&7You are now sneaking!").replace("&", "§");
this.sneakOffMessage =("&4[SCSneak]&7You are no longer sneaking!").replace("&", "§");
String strEnable = "[" + this.name + "] " + this.version + " enabled.";
log.info(strEnable);
}
@Override
public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
if (!(sender instanceof Player)) return false;
Player player = (Player)sender;
if (!player.hasPermission("ShadySneak.sneak"))
return true;
if (args.length > 1)
return false;
if (args.length == 0) {
toggleSneak(player);
} else {
if (args[0].equalsIgnoreCase("version") || (args[0].equalsIgnoreCase("ver"))) {
sender.sendMessage(ChatColor.GREEN + "ShadySneak v1.0");
}
return false;
}
return true;
}
private void setupShadySneak() {
for (Player p : getServer().getOnlinePlayers())
if (p.hasPermission("ShadySneak.auto")) {
p.setSneaking(true);
sneakingPlayers.add(p.getName());
}
}
private void toggleSneak(Player player)
{
if (sneakingPlayers.contains(player.getName()))
setSneak(player, false);
setSneak(player, true);
}
private void setSneak(Player player, boolean sneak) {
if (sneak) {
player.setSneaking(true);
player.sendMessage(this.sneakOnMessage);
if (!sneakingPlayers.contains(player.getName()))
sneakingPlayers.add(player.getName());
} else {
player.setSneaking(false);
player.sendMessage(this.sneakOffMessage);
if (sneakingPlayers.contains(player.getName()))
sneakingPlayers.remove(player.getName());
}
}
@Override
public void onDisable()
{
String strDisable = "[" + this.name + "] " + this.version + " disabled.";
log.info(strDisable);
}
private Player player;
public void run()
{
if (this.player.isSneaking())
ShadySneak.this.setSneak(this.player, false);
}
}