• 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!

Warn Plugin!

Status
Für weitere Antworten geschlossen.

Lik3Fr33

Redstoneengineer
Gesperrt
Registriert
1 Oktober 2012
Beiträge
37
Diamanten
0
Minecraft
mdafcker / Lik3Fr33
Hay Leute!
Ich habe mit ein Freund ein Plugin gemacht..
Es gibt aber ein Prolem er bannt den Spieler nicht nach 10 Warns!!!

Hier der Code:

package me.Lik3Fr33.Warn;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.plugin.java.JavaPlugin;

public class Warn extends JavaPlugin
implements Listener
{
public static final String h = "§9";

public void onEnable()
{
getCommand("warn").setExecutor(new CommandExecutor()
{
public boolean onCommand(CommandSender arg0, Command arg1, String arg2, String[] arg3) {
if (!(arg0 instanceof Player)) {
arg0.sendMessage("§cDies ist ein Ingame Befehl!");
} else {
Player p = (Player)arg0;
if (p.hasPermission("warn.warn")) {
if (arg3.length == 0) {
p.sendMessage("§9Verwwendung: §b/warn |Spieler| |Grund|");
} else {
String ppn = arg3[0];
Player pp = Warn.this.getServer().getPlayer(ppn);
if (pp == null) {
p.sendMessage("§cDer Spieler ist Grade nicht Online!");
} else {
List<?> atz = Warn.this.getConfig().getStringList("warns." + pp.getName());
if (arg3.length == 1) {
Warn.this.getServer().broadcastMessage("§9Der Spieler §7§l" + pp.getName() + " §9wurde ohne Grund gewarnt!");
atz.add(p.getName() + "=-=" + new SimpleDateFormat("dd.MM.yyyy : hh:mm").format(new Date()));
if (atz.size() == 5) {
Warn.this.getServer().broadcastMessage("§9Der Spieler §7§l" + pp.getName() + " §9wurde wegen 10 verwarnungen gebannt!");
pp.setBanned(true);
pp.kickPlayer("Banned!");
}
} else {
StringBuilder b = new StringBuilder();
for (int i = 1; i != arg3.length; i++) {
b.append(arg3 + " ");
}
Warn.this.getServer().broadcastMessage("§9Der Spieler §7§l" + pp.getName() + " §9wurde gewarnt. Grund: §b" + b.toString());
atz.add(p.getName() + "=" + b.toString() + "=" + new SimpleDateFormat("dd.MM.yyyy : hh:mm").format(new Date()));
if (atz.size() == 5) {
Warn.this.getServer().broadcastMessage("§9Der Spieler §7§l" + pp.getName() + " §9wurde wegen 10 verwarnungen gebannt!");
pp.setBanned(true);
pp.kickPlayer(b.toString());
}
}
Warn.this.getConfig().set("warns." + pp.getName(), atz);
Warn.this.saveConfig();
}
}
}
else p.sendMessage("§cDu hast dafür keine Rechte!");
}

return true;
}
});
getCommand("warns").setExecutor(new CommandExecutor()
{
public boolean onCommand(CommandSender arg0, Command arg1, String arg2, String[] arg3) {
if (!(arg0 instanceof Player)) {
arg0.sendMessage("§cDies ist ein Ingame Befehl!");
} else {
Player p = (Player)arg0;
if (arg3.length == 0) {
if (p.hasPermission("warn.warns")) {
List<?> atz = Warn.this.getConfig().getStringList("warns." + p.getName());
p.sendMessage("§9Warnungen Status des Spielers:§7§l" + p.getName() + "");
if ((atz == null) || (atz.isEmpty()))
p.sendMessage("§cDu hast keine Warns!");
else
for (Object s : atz)
p.sendMessage("§b" + s);
}
else
{
p.sendMessage("§cDu hast dafür keine Rechte!");
}
} else if (arg3.length == 1) {
if (p.hasPermission("warn.other.warns")) {
List<?> atz = Warn.this.getConfig().getStringList("warns." + arg3[0]);
p.sendMessage("§9Warnungen Status des Spielers:§7§l" + arg3[0] +"");
if ((atz == null) || (atz.isEmpty()))
p.sendMessage("§cDieser Spieler hat keine Warns!");
else
for (Object s : atz)
p.sendMessage("§b" + s);
}
else
{
p.sendMessage("§cDu hast dafür keine Rechte!");
}
}
else p.sendMessage("§9Verwendung: §b/warns |Spieler|");
}

return true;
}
});
}
}

Hier bitte :=)
Und es gibt nich ein Prolem das mit "atz.add(p.getName()" geht nicht :( wer noch netter wen ihr Schreibt warum das Plugin nicht geht!

LG, Lik3Fr33
 

Let's Mine

Ehemaliges Teammitglied
Ehem. Teammitglied
Registriert
1 Dezember 2011
Beiträge
421
Alter
14
Diamanten
300
Minecraft
LetsMine
getCommand("warn").setExecutor(new CommandExecutor()
{
public boolean onCommand(CommandSender arg0, Command arg1, String arg2, String[] arg3) {

Das macht keinen Sinn? Einfach eine onCommand Methode in die Main Klasse, und dann dementsprechend mit if (cmd.getName().equalsIgnoreCase("warn")) {} den entsprechenden Code aufrufen.

Mir ergibt das ganze hier keinen Sinn? Da könnte man extrem viel Code einsparen, der einfach unnötig ist, ich steig da nicht ganz durch, sorry.
 

Lik3Fr33

Redstoneengineer
Gesperrt
Registriert
1 Oktober 2012
Beiträge
37
Diamanten
0
Minecraft
mdafcker / Lik3Fr33
Guten Tag.
Erst Mal danke Let'S Mine ;)

Ich habe gestern noch aus:

"List<?>" habe ich dan "List<String>" gemacht und jetzt geht das Plugin auch ;)
Und dann habe Ich noch was gemacht :)
"atz.add(p.getName()" geht jetzt auch :D
Und jetzt muss ich nur noch das Mit Ban hin kriegen :D
Wer nett wen einer Schreibt wie Das geht :)

So das geht doch mit den Bann. Nur jetzt suche ich wie man ein Zeitbannt :)

LG, Lik3Fr33
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
Oben