Hey Habe ein Plugin bei Meinem Clan Plugin
Sourcer der Main class
Error in der Konsole.
Sourcer der Main class
package de.Time4Craft.Clan;
import java.io.PrintStream;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.OfflinePlayer;
import org.bukkit.Server;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.FileConfigurationOptions;
import org.bukkit.entity.Arrow;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import org.bukkit.event.entity.EntityDamageEvent;
import org.bukkit.event.inventory.InventoryCloseEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
public class Main extends JavaPlugin
implements Listener
{
public String prefix = ChatColor.DARK_RED + "[" + ChatColor.AQUA + "SP-System" + ChatColor.DARK_RED + "] ";
public static Map<String, ClanInfo> clans = new HashMap();
public static List<String> blacklist = new ArrayList();
public static Map<String, String> players = new HashMap();
public static Map<String, Inventory> clans_chest = new HashMap();
public static Map<String, List<String>> requests = new HashMap();
public void onDisable()
{
for (ClanInfo c : clans.values()) {
getConfig().set("Clans." + c.getName() + ".name", c.getName());
getConfig().set("Clans." + c.getName() + ".leader", c.getLeader());
getConfig().set("Clans." + c.getName() + ".players", c.getPlayers());
getConfig().set("Clans." + c.getName() + ".chest", c.getChest());
getConfig().set("Clans." + c.getName() + ".home", c.getHome());
saveConfig();
}
}
public void onEnable()
{
saveConfig();
if (!getConfig().contains("Clans"))
getConfig().createSection("Clans");
System.out.println(getConfig().getStringList("Blacklist").size());
if (getConfig().getStringList("Blacklist").size() == 0) {
List blackwords = getConfig().getStringList("Blacklist");
blackwords.add("admin");
blackwords.add("owner");
blackwords.add("moderator");
blackwords.add("supporter");
getConfig().set("Blacklist", blackwords);
}
getConfig().options().copyDefaults(true);
saveConfig();
getServer().getPluginManager().registerEvents(this, this);
ItemStack[] inv;
for (String clan : getConfig().getConfigurationSection("Clans").getKeys(false)) {
Object inv_obj = getConfig().get("Clans." + clan + ".chest");
inv = null;
if ((inv instanceof ItemStack[])) {
inv = (ItemStack[])inv_obj;
} else if ((inv_obj instanceof List)) {
List inv_list = (List)inv_obj;
inv = (ItemStack[])inv_list.toArray(new ItemStack[0]);
}
String[] home_str = null;
if (getConfig().getString("Clans." + clan + ".home") != null)
home_str = getConfig().getString("Clans." + clan + ".home").split(",");
clans.put(clan, new ClanInfo(clan, getConfig().getString("Clans." + clan + ".name"), getConfig().getString("Clans." + clan + ".leader"), getConfig().getStringList("Clans." + clan + ".players"), inv, home_str != null ? new Location(getServer().getWorld(home_str[0]), Double.parseDouble(home_str[1]), Double.parseDouble(home_str[2]), Double.parseDouble(home_str[3])) : null));
}
blacklist = getConfig().getStringList("Blacklist");
for (??? = clans.values().iterator(); ???.hasNext();
inv.hasNext())
{
ClanInfo c = (ClanInfo)???.next();
inv = c.getPlayers().iterator(); continue; p = (String)inv.next();
Player p2 = getServer().getPlayer(p);
if (p2 != null)
players.put(p2.getName().toLowerCase(), c.getID());
}
String p = (inv = getServer().getOnlinePlayers()).length; for (String str1 = 0; str1 < p; str1++) { Player p = inv[str1];
requests.put(p.getName().toLowerCase(), new ArrayList()); }
}
public void unknownCommand(Player p)
{
p.sendMessage(this.prefix + ChatColor.RED + "Dieser Command wurde nicht gefunden!");
}
public boolean onCommand(CommandSender sender, Command cmd, String cmdLabel, String[] args) {
Player p = (Player)sender;
if ((cmd.getLabel().equalsIgnoreCase("clan")) || (cmd.getLabel().equalsIgnoreCase("c"))) {
if (args.length == 1) {
if (args[0].equalsIgnoreCase("erstellen")) {
p.sendMessage(this.prefix + ChatColor.RED + "Du musst einen Namen angeben!");
} else if (args[0].equalsIgnoreCase("einladen")) {
p.sendMessage(this.prefix + ChatColor.RED + "Du musst einen Spielernamen angeben!");
} else if (args[0].equalsIgnoreCase("reset")) {
if (p.hasPermission("clan.reset")) {
getConfig().set("Clans", null);
getConfig().createSection("Clans");
saveConfig();
}
} else if (args[0].equalsIgnoreCase("list")) {
if (players.containsKey(p.getName().toLowerCase())) {
if (((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers().size() > 1) {
p.sendMessage(this.prefix + ChatColor.YELLOW + "Folgende Spieler gehören dem Clan " + ChatColor.GOLD + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName() + ChatColor.YELLOW + " an:");
for (String p2 : ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers()) {
OfflinePlayer p2_off = getServer().getOfflinePlayer(p2);
p.sendMessage(this.prefix + ChatColor.YELLOW + p2_off.getName().toLowerCase());
}
} else {
p.sendMessage(this.prefix + ChatColor.RED + "Diesem Clan sind noch keine anderen Spieler beigetreten! Lade mit " + ChatColor.GOLD + "/clan einladen [Spieler]" + ChatColor.RED + " weitere Spieler ein!");
}
} else p.sendMessage(this.prefix + ChatColor.RED + "Du gehörst noch keinem Clan an!");
}
else if (args[0].equalsIgnoreCase("setheim")) {
if (players.containsKey(p.getName().toLowerCase())) {
if (p.getName().toLowerCase().equalsIgnoreCase(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getLeader())) {
clans.put(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID(), new ClanInfo(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getLeader(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getChest(), p.getLocation()));
p.sendMessage(this.prefix + ChatColor.YELLOW + "Heim dieses Clans wurde erfolgreich festgelegt!");
} else {
p.sendMessage(this.prefix + ChatColor.RED + "Du bist nicht der Ersteller dieses Clans!");
}
} else p.sendMessage(this.prefix + ChatColor.RED + "Du gehörst noch keinem Clan an!");
}
else if (args[0].equalsIgnoreCase("heim")) {
if (players.containsKey(p.getName().toLowerCase())) {
if (((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getHome() != null)
p.teleport(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getHome());
else
p.sendMessage(this.prefix + ChatColor.RED + "Dieser Clan hat noch kein Heim festgelegt!");
}
else p.sendMessage(this.prefix + ChatColor.RED + "Du gehörst noch keinem Clan an!");
}
else if (args[0].equalsIgnoreCase("annehmen")) {
if (((List)requests.get(p.getName().toLowerCase())).size() > 0) {
if (!players.containsKey(p.getName().toLowerCase())) {
List players_tmp = ((ClanInfo)clans.get(((List)requests.get(p.getName().toLowerCase())).get(((List)requests.get(p.getName().toLowerCase())).size() - 1))).getPlayers();
players_tmp.add(p.getName().toLowerCase());
clans.put((String)((List)requests.get(p.getName().toLowerCase())).get(((List)requests.get(p.getName().toLowerCase())).size() - 1), new ClanInfo((String)((List)requests.get(p.getName().toLowerCase())).get(((List)requests.get(p.getName().toLowerCase())).size() - 1), ((ClanInfo)clans.get(((List)requests.get(p.getName().toLowerCase())).get(((List)requests.get(p.getName().toLowerCase())).size() - 1))).getName(), ((ClanInfo)clans.get(((List)requests.get(p.getName().toLowerCase())).get(((List)requests.get(p.getName().toLowerCase())).size() - 1))).getLeader(), players_tmp, ((ClanInfo)clans.get(((List)requests.get(p.getName().toLowerCase())).get(((List)requests.get(p.getName().toLowerCase())).size() - 1))).getChest(), ((ClanInfo)clans.get(((List)requests.get(p.getName().toLowerCase())).get(((List)requests.get(p.getName().toLowerCase())).size() - 1))).getHome()));
players.put(p.getName().toLowerCase(), (String)((List)requests.get(p.getName().toLowerCase())).get(((List)requests.get(p.getName().toLowerCase())).size() - 1));
List current_requests = (List)requests.get(p.getName().toLowerCase());
current_requests.remove(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID());
requests.put(p.getName().toLowerCase(), current_requests);
getConfig().set("Clans." + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID() + ".players", players_tmp);
saveConfig();
p.sendMessage(this.prefix + ChatColor.YELLOW + "Du gehörst nun dem Clan " + ChatColor.GOLD + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName() + ChatColor.YELLOW + " an!");
for (String p2 : ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers()) {
Player p2_p = getServer().getPlayer(p2);
if ((p2_p != null) && (!p2_p.getName().toLowerCase().equalsIgnoreCase(p.getName().toLowerCase())))
p2_p.sendMessage(this.prefix + ChatColor.GOLD + p.getName() + ChatColor.YELLOW + " gehört nun dem Clan " + ChatColor.GOLD + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName() + ChatColor.YELLOW + " an!");
}
} else {
p.sendMessage(this.prefix + ChatColor.RED + "Du kannst keinem anderen Clan beitreten, solang du noch in einem Clan bist! Trete mit " + ChatColor.GOLD + "/clan verlassen" + ChatColor.RED + " aus!");
}
}
else p.sendMessage(this.prefix + ChatColor.RED + "Du hast zurzeit keine Clananfragen!");
}
else if (args[0].equalsIgnoreCase("ablehnen")) {
if (((List)requests.get(p.getName().toLowerCase())).size() > 0) {
List current_requests = (List)requests.get(p.getName().toLowerCase());
String clan_id = ((ClanInfo)clans.get(((List)requests.get(p.getName().toLowerCase())).get(((List)requests.get(p.getName().toLowerCase())).size() - 1))).getID();
current_requests.remove(((ClanInfo)clans.get(((List)requests.get(p.getName().toLowerCase())).get(((List)requests.get(p.getName().toLowerCase())).size() - 1))).getID());
requests.put(p.getName().toLowerCase(), current_requests);
p.sendMessage(this.prefix + ChatColor.YELLOW + "Du hast die Clananfrage von " + ChatColor.GOLD + ((ClanInfo)clans.get(clan_id)).getName() + ChatColor.YELLOW + " abgelehnt!");
} else {
p.sendMessage(this.prefix + ChatColor.RED + "Du hast zurzeit keine Clananfragen!");
}
}
else
{
String p2;
if (args[0].equalsIgnoreCase("verlassen")) {
if (players.containsKey(p.getName().toLowerCase())) {
List players_tmp = ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers();
players_tmp.remove(p.getName().toLowerCase());
clans.put(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID(), new ClanInfo(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getLeader(), players_tmp, ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getChest(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getHome()));
getConfig().set("Clans." + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID() + ".players", players_tmp);
saveConfig();
p.sendMessage(this.prefix + ChatColor.YELLOW + "Du bist aus dem Clan " + ChatColor.GOLD + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName() + ChatColor.YELLOW + " ausgetreten!");
if (p.getName().toLowerCase().equalsIgnoreCase(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getLeader())) {
String id = ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID();
getConfig().set("Clans." + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID(), null);
saveConfig();
for (??? = ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers().iterator(); ???.hasNext(); ) { p2 = (String)???.next();
Player p2_p = getServer().getPlayer(p2);
if ((p2_p != null) && (!p2_p.getName().toLowerCase().equalsIgnoreCase(p.getName().toLowerCase()))) {
p2_p.sendMessage(this.prefix + ChatColor.YELLOW + "Der Ersteller des Clans " + ChatColor.GOLD + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName() + ChatColor.YELLOW + " hat diesen aufgelöst!");
players.remove(p2_p.getName().toLowerCase());
}
}
players.remove(p.getName().toLowerCase());
clans.remove(id);
clans_chest.remove(id);
} else {
for (String p2 : ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers()) {
Player p2_p = getServer().getPlayer(p2);
if ((p2_p != null) && (!p2_p.getName().toLowerCase().equalsIgnoreCase(p.getName().toLowerCase())))
p2_p.sendMessage(this.prefix + ChatColor.GOLD + p.getName() + ChatColor.YELLOW + " hat den Clan " + ChatColor.GOLD + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName() + ChatColor.YELLOW + " verlassen!");
}
}
players.remove(p.getName().toLowerCase());
} else {
p.sendMessage(this.prefix + ChatColor.RED + "Du gehörst noch keinem Clan an!");
} } else if (args[0].equalsIgnoreCase("entfernen")) {
if (players.containsKey(p.getName().toLowerCase())) {
if (p.getName().toLowerCase().equalsIgnoreCase(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getLeader())) {
String id = ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID();
getConfig().set("Clans." + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID(), null);
saveConfig();
for (String p2 : ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers()) {
Player p2_p = getServer().getPlayer(p2);
if ((p2_p != null) && (!p2_p.getName().toLowerCase().equalsIgnoreCase(p.getName().toLowerCase()))) {
p2_p.sendMessage(this.prefix + ChatColor.YELLOW + "Der Ersteller des Clans " + ChatColor.GOLD + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName() + ChatColor.YELLOW + " hat diesen aufgelöst!");
players.remove(p2_p.getName().toLowerCase());
}
}
p.sendMessage(this.prefix + ChatColor.YELLOW + "Der Clan " + ChatColor.GOLD + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName() + ChatColor.YELLOW + " wurde erfolgreich aufgelöst!");
players.remove(p.getName().toLowerCase());
clans.remove(id);
clans_chest.remove(id);
} else {
p.sendMessage(this.prefix + ChatColor.RED + "Du bist nicht der Ersteller dieses Clans!");
}
} else p.sendMessage(this.prefix + ChatColor.RED + "Du gehörst noch keinem Clan an!");
}
else if ((args[0].equalsIgnoreCase("truhe")) || (args[0].equalsIgnoreCase("kiste"))) {
if (players.containsKey(p.getName().toLowerCase())) {
if (!clans_chest.containsKey(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID())) {
Inventory inv = getServer().createInventory(p, ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getChest().length, ChatColor.RED + "Truhe von " + ChatColor.GOLD + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName());
inv.setContents(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getChest());
clans_chest.put(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID(), inv);
}
p.openInventory((Inventory)clans_chest.get(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID()));
} else {
p.sendMessage(this.prefix + ChatColor.RED + "Du gehörst noch keinem Clan an!");
}
} else unknownCommand(p);
} } else if (args.length >= 2)
{
List players_tmp;
if (args[0].equalsIgnoreCase("erstellen")) {
if (!players.containsKey(p.getName().toLowerCase())) {
String name = args[1];
String id = name.toLowerCase().replace(" ", "_").replace("&4", "").replace("&c", "").replace("&6", "").replace("&e", "").replace("&2", "").replace("&a", "").replace("&b", "").replace("&3", "").replace("&1", "").replace("&9", "").replace("&d", "").replace("&5", "").replace("&f", "").replace("&7", "").replace("&8", "").replace("&0", "").replace("&l", "").replace("&k", "").replace("&n", "").replace("&m", "").replace("&o", "").replace("&r", "");
for (int i = 0; i < args.length; i++)
if (i > 1)
name = name + " " + args.replace("ä", "ae").replace("ö", "oe").replace("ü", "üe").replace("ß", "ss");
if (!getConfig().contains("Clans." + id)) {
if (!isOnBlacklist(name)) {
if (!p.hasPermission("clan.color"))
name = name.replace("&4", "").replace("&c", "").replace("&6", "").replace("&e", "").replace("&2", "").replace("&a", "").replace("&b", "").replace("&3", "").replace("&1", "").replace("&9", "").replace("&d", "").replace("&5", "").replace("&f", "").replace("&7", "").replace("&8", "").replace("&0", "").replace("&l", "").replace("&k", "").replace("&n", "").replace("&m", "").replace("&o", "").replace("&r", "");
players_tmp = new ArrayList();
players_tmp.add(p.getName().toLowerCase());
clans.put(id, new ClanInfo(id, name, p.getName().toLowerCase(), players_tmp, new ItemStack[27], null));
players.put(p.getName().toLowerCase(), id);
getConfig().set("Clans." + id + ".name", name);
getConfig().set("Clans." + id + ".leader", p.getName().toLowerCase());
getConfig().set("Clans." + id + ".players", players_tmp);
getConfig().set("Clans." + id + ".chest", new ItemStack[27]);
saveConfig();
p.sendMessage(this.prefix + ChatColor.YELLOW + "Du hast den Clan " + ChatColor.GOLD + ChatColor.translateAlternateColorCodes('&', name) + ChatColor.YELLOW + " erfolgreich erstellt! Lade mit " + ChatColor.GOLD + "/clan einladen [Spieler]" + ChatColor.YELLOW + " weitere Spieler ein!");
} else {
p.sendMessage(this.prefix + ChatColor.RED + "Der Name oder Teile davon sind nicht als Clanname erlaubt!");
}
} else p.sendMessage(this.prefix + ChatColor.RED + "Es existiert bereits ein Clan mit diesem Namen!");
}
else { p.sendMessage(this.prefix + ChatColor.RED + "Du kannst keinen neuen Clan erstellen, solang du noch in einem Clan bist! Trete mit " + ChatColor.GOLD + "/clan verlassen" + ChatColor.RED + " aus!"); }
}
else
{
Object p2;
if (args[0].equalsIgnoreCase("chat")) {
if (players.containsKey(p.getName().toLowerCase())) {
String msg = args[1];
for (int i = 0; i < args.length; i++)
if (i > 1)
msg = msg + " " + args;
for (String p2_str : ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers()) {
p2 = getServer().getPlayer(p2_str);
if (p2 != null)
((Player)p2).sendMessage(ChatColor.DARK_RED + "[" + ChatColor.AQUA + "Clan-Nachricht" + ChatColor.DARK_RED + "] " + ChatColor.GOLD + p.getDisplayName() + ": " + ChatColor.YELLOW + msg);
}
} else {
p.sendMessage(this.prefix + ChatColor.RED + "Du gehörst noch keinem Clan an!");
}
}
else
{
String p2;
if (args[0].equalsIgnoreCase("annehmen")) {
if (!players.containsKey(p.getName().toLowerCase())) {
if (((List)requests.get(p.getName().toLowerCase())).contains(args[1].toLowerCase())) {
List players_tmp = ((ClanInfo)clans.get(args[1])).getPlayers();
players_tmp.add(p.getName().toLowerCase());
clans.put(args[1], new ClanInfo(args[1], ((ClanInfo)clans.get(args[1])).getName(), ((ClanInfo)clans.get(args[1])).getLeader(), players_tmp, ((ClanInfo)clans.get(args[1])).getChest(), ((ClanInfo)clans.get(args[1])).getHome()));
players.put(p.getName().toLowerCase(), args[1]);
getConfig().set("Clans." + args[1] + ".players", players_tmp);
saveConfig();
List current_requests = (List)requests.get(p.getName().toLowerCase());
current_requests.remove(args[1]);
requests.put(p.getName().toLowerCase(), current_requests);
p.sendMessage(this.prefix + ChatColor.YELLOW + "Du gehörst nun dem Clan " + ChatColor.GOLD + ((ClanInfo)clans.get(args[1])).getName() + ChatColor.YELLOW + " an!");
for (p2 = ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers().iterator(); ((Iterator)p2).hasNext(); ) { p2 = (String)((Iterator)p2).next();
Player p2_p = getServer().getPlayer(p2);
if ((p2_p != null) && (!p2_p.getName().toLowerCase().equalsIgnoreCase(p.getName().toLowerCase())))
p2_p.sendMessage(this.prefix + ChatColor.GOLD + p.getName() + ChatColor.YELLOW + " gehört nun dem Clan " + ChatColor.GOLD + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName() + ChatColor.YELLOW + " an!"); }
}
else {
p.sendMessage(this.prefix + ChatColor.RED + "Du hast keine Anfrage von diesem Clan erhalten!");
}
} else p.sendMessage(this.prefix + ChatColor.RED + "Du kannst keinem anderen Clan beitreten, solang du noch in einem Clan bist! Trete mit " + ChatColor.GOLD + "/clan verlassen" + ChatColor.RED + " aus!");
}
else if (args[0].equalsIgnoreCase("ablehnen")) {
if (((List)requests.get(p.getName().toLowerCase())).contains(args[1].toLowerCase())) {
List current_requests = (List)requests.get(p.getName().toLowerCase());
current_requests.remove(args[1].toLowerCase());
requests.put(p.getName().toLowerCase(), current_requests);
p.sendMessage(this.prefix + ChatColor.YELLOW + "Du hast die Clananfrage von " + ChatColor.GOLD + ((ClanInfo)clans.get(args[1])).getName() + ChatColor.YELLOW + " abgelehnt!");
} else {
p.sendMessage(this.prefix + ChatColor.RED + "Du hast keine Anfrage von diesem Clan erhalten!");
} } else if (args[0].equalsIgnoreCase("einladen")) {
if (players.containsKey(p.getName().toLowerCase())) {
if (p.getName().toLowerCase().equalsIgnoreCase(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getLeader())) {
Player p2 = getServer().getPlayer(args[1]);
if (p2 != null) {
if (!p.getName().toLowerCase().equalsIgnoreCase(p2.getName().toLowerCase())) {
if (!((String)players.get(p.getName().toLowerCase())).equalsIgnoreCase((String)players.get(p2.getName().toLowerCase()))) {
List current_requests = (List)requests.get(p2.getName().toLowerCase());
if (!current_requests.contains(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID()))
current_requests.add(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID());
requests.put(p2.getName().toLowerCase(), current_requests);
p.sendMessage(this.prefix + ChatColor.YELLOW + "Du hast eine Clananfrage an " + ChatColor.GOLD + p2.getName() + ChatColor.YELLOW + " geschickt!");
p2.sendMessage(this.prefix + ChatColor.YELLOW + "Du hast eine Clananfrage von dem Clan " + ChatColor.GOLD + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName() + ChatColor.YELLOW + " erhalten! Diese kannst du mit " + ChatColor.GOLD + "/clan annehmen " + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID() + ChatColor.YELLOW + " annehmen bzw. mit " + ChatColor.GOLD + "/clan ablehnen " + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID() + ChatColor.YELLOW + " ablehnen!");
} else {
p.sendMessage(this.prefix + ChatColor.RED + "Dieser Spieler ist bereits in deinem aktuellen Clan!");
}
}
else p.sendMessage(this.prefix + ChatColor.RED + "Du kannst dich nicht selbst einladen!");
}
else { OfflinePlayer p2_off = getServer().getOfflinePlayer(args[1]);
p.sendMessage(this.prefix + ChatColor.GOLD + p2_off.getName() + ChatColor.YELLOW + " ist offline! Du kannst ihm keine Anfrage schicken!"); }
}
else {
p.sendMessage(this.prefix + ChatColor.RED + "Du bist nicht der Ersteller dieses Clans!");
}
} else p.sendMessage(this.prefix + ChatColor.RED + "Du gehörst noch keinem Clan an!");
}
else if (args[0].equalsIgnoreCase("kick")) {
if (players.containsKey(p.getName().toLowerCase())) {
if (p.getName().toLowerCase().equalsIgnoreCase(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getLeader())) {
if (((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers().contains(args[1].toLowerCase())) {
if (p.getName().toLowerCase().equalsIgnoreCase(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getLeader())) {
List players_tmp = ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers();
players_tmp.remove(args[1].toLowerCase());
clans.put(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID(), new ClanInfo(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getLeader(), players_tmp, ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getChest(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getHome()));
getConfig().set("Clans." + ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID() + ".players", players_tmp);
saveConfig();
p.sendMessage(this.prefix + ChatColor.YELLOW + "Du hast " + ChatColor.GOLD + getServer().getOfflinePlayer(args[1].toLowerCase()).getName() + ChatColor.YELLOW + " aus dem Clan geworfen!");
for (String p2 : ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers()) {
Player p2_p = getServer().getPlayer(p2);
p2_p.sendMessage(this.prefix + ChatColor.GOLD + getServer().getOfflinePlayer(args[1].toLowerCase()).getName() + ChatColor.YELLOW + " wurde aus dem Clan geworfen!");
}
players.remove(args[1].toLowerCase());
} else {
p.sendMessage(this.prefix + ChatColor.RED + "Du kannst dich nicht selbst aus dem Clan werfen!");
}
} else p.sendMessage(this.prefix + ChatColor.RED + "Dieser Spieler gehört dem Clan nicht an!");
}
else
p.sendMessage(this.prefix + ChatColor.RED + "Du bist nicht der Ersteller dieses Clans!");
}
else p.sendMessage(this.prefix + ChatColor.RED + "Du gehörst noch keinem Clan an!");
}
else
unknownCommand(p);
}
} } else { p.sendMessage(ChatColor.GOLD + "=========" + ChatColor.AQUA + ChatColor.BOLD + "T4C-Clan-Befehle" + ChatColor.RESET + ChatColor.GOLD + "========");
p.sendMessage(ChatColor.RED + "-------------------------------------");
p.sendMessage(ChatColor.AQUA + "/clan erstellen [Name] " + ChatColor.GREEN + "Erstellt einen neuen Clan");
p.sendMessage(ChatColor.AQUA + "/clan einladen [Spieler] " + ChatColor.GREEN + "Läd einen weiteren Spieler in deinen aktuellen Clan ein");
p.sendMessage(ChatColor.AQUA + "/clan annehmen [Clan] " + ChatColor.GREEN + "Nimmt die Einladung in einen Clan an");
p.sendMessage(ChatColor.AQUA + "/clan ablehnen [Clan] " + ChatColor.GREEN + "Lehnt die Einladung in einen Clan ab");
p.sendMessage(ChatColor.AQUA + "/clan verlassen " + ChatColor.GREEN + "Du verlässt deinen aktuellen Clan");
p.sendMessage(ChatColor.AQUA + "/clan entfernen " + ChatColor.GREEN + "Du löscht deinen aktuellen Clan");
p.sendMessage(ChatColor.AQUA + "/clan kick [Spieler] " + ChatColor.GREEN + "Wirft einen Spieler aus deinem aktuellen Clan");
p.sendMessage(ChatColor.AQUA + "/clan heim " + ChatColor.GREEN + "Teleportiert dich zum Heim deines aktuellen Clans");
p.sendMessage(ChatColor.AQUA + "/clan setheim " + ChatColor.GREEN + "Setzt das Heim deines aktuellen Clans");
p.sendMessage(ChatColor.AQUA + "/clan truhe " + ChatColor.GREEN + "Ruft die Truhe des Clans auf");
p.sendMessage(ChatColor.AQUA + "/clan chat [Nachricht] " + ChatColor.GREEN + "Schickt eine Nachricht an alle Spieler deines aktuellen Clans");
p.sendMessage(ChatColor.AQUA + "/clan list " + ChatColor.GREEN + "Listet alle Spieler deines aktuellen Clans auf");
p.sendMessage(ChatColor.RED + "-------------------------------------");
p.sendMessage(ChatColor.GOLD + "=========" + ChatColor.AQUA + ChatColor.BOLD + "T4C-Clan-Befehle" + ChatColor.RESET + ChatColor.GOLD + "========");
}
}
return true;
}
public boolean isOnBlacklist(String name) {
for (String blackname : blacklist) {
System.out.println(blackname + ":" + name);
if (name.toLowerCase().contains(blackname.toLowerCase()))
return true;
}
return false;
}
public String getClanOfPlayer(Player p) {
if (players.containsKey(p.getName().toLowerCase()))
return (String)players.get(p.getName().toLowerCase());
return null;
}
@EventHandler
public void onInventoryClose(InventoryCloseEvent e) {
Player p = (Player)e.getPlayer();
Inventory inv = e.getInventory();
if (inv.getName().contains("Truhe von"))
clans.put(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID(), new ClanInfo(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getID(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getName(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getLeader(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers(), inv.getContents(), ((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getHome()));
}
@EventHandler
public void onPlayerDamage(EntityDamageEvent e)
{
if ((e.getEntity() instanceof Player)) {
Player p = (Player)e.getEntity();
if ((e instanceof EntityDamageByEntityEvent)) {
EntityDamageByEntityEvent dee = (EntityDamageByEntityEvent)e;
Entity dmgr = dee.getDamager();
if ((dmgr instanceof Player)) {
Player p2 = (Player)dmgr;
if ((players.containsKey(p.getName().toLowerCase())) &&
(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers().contains(p2.getName().toLowerCase()))) {
e.setCancelled(true);
p2.sendMessage(this.prefix + ChatColor.YELLOW + "Dieser Spieler gehört deinem Clan an!");
}
}
else if (((dmgr instanceof Arrow)) &&
((((Arrow)dmgr).getShooter() instanceof Player))) {
Player p2 = (Player)((Arrow)dmgr).getShooter();
if ((players.containsKey(p.getName().toLowerCase())) &&
(((ClanInfo)clans.get(players.get(p.getName().toLowerCase()))).getPlayers().contains(p2.getName().toLowerCase()))) {
e.setCancelled(true);
p2.sendMessage(this.prefix + ChatColor.YELLOW + "Dieser Spieler gehört deinem Clan an!");
}
}
}
}
}
@EventHandler
public void onPlayerQuit(PlayerQuitEvent e)
{
Player p = e.getPlayer();
players.remove(p.getName().toLowerCase());
requests.remove(p.getName().toLowerCase());
}
@EventHandler
public void onPlayerJoin(PlayerJoinEvent e)
{
Iterator localIterator2;
for (Iterator localIterator1 = clans.values().iterator(); localIterator1.hasNext();
localIterator2.hasNext())
{
ClanInfo c = (ClanInfo)localIterator1.next();
localIterator2 = c.getPlayers().iterator(); continue; String p = (String)localIterator2.next();
if (p.equalsIgnoreCase(e.getPlayer().getName().toLowerCase())) {
Player p2 = getServer().getPlayer(p);
if (p != null)
players.put(p2.getName().toLowerCase(), c.getID());
}
}
requests.put(e.getPlayer().getName().toLowerCase(), new ArrayList());
}
}
Error in der Konsole.
Liebe Grüßeat de.Time4Craft.Clan.Main.onEnable(Main.java:91)
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217)
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:457)
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java81)
at org.bukkit.craftbukkit.v1_5_R3.CraftServer.loadPlugin(CraftServer.java:282)
at org.bukkit.craftbukkit.v1_5_R3.CraftServer.enablePlugins(CraftServer.java:264)
at net.minecraft.server.v1_5_R3.MinecraftServer.j(MinecraftServer.java04)
at net.minecraft.server.v1_5_R3.MinecraftServer.e(MinecraftServer.java:283)
at net.minecraft.server.v1_5_R3.MinecraftServer.a(MinecraftServer.java:243)
at net.minecraft.server.v1_5_R3.DedicatedServer.init(DedicatedServer.java:151)
at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java82)