• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Problem bei Clan Plugin

DJ_Vertex

Minecrafter
Registriert
5 Oktober 2012
Beiträge
18
Diamanten
0
Minecraft
DJ_Vertex
Hey Habe ein Plugin bei Meinem Clan Plugin
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.
at 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.java:381)
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.java:304)
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.java:382)
Liebe Grüße
 
Oben