Minecraft:Wer hat was abgebaut und wo?

Hey Leute,
ich bräuchte eure Hilfe, ich möchte gern ein Plugin haben mit dem ich in einer Datenbank speichern kann wer den block auf den ich schaue abgebaut hat.

Ich habe auf meinem Server aktuell das Problem das jemand ständig Bauwerke grieft. Ich kann aber nicht rausfinden wer, weil es immer passiert wenn keiner Online ist.

Daher möchte ich ein Plugin einführen, mit dem ich eben genau das einsehen kann.
Sprich z.B. in einer mauer wurde mitten drin 1 Block entfernt , ich schaue auf den Leeren Block und kann mir z.B. mit einem Befehl anzeigen lassen wer diesen abgebaut hat.

Ich kenne mich bisher aber noch nicht so gut mit Minecraft Plugins aus habe aber schon gefunden das sowas wohl mit einer OnBreak Methode gehen soll.

Hier mal die Methode die ich bisher gebaut habe:

@EventHandler
public void onBreak(BlockBreakEvent be){
    Player p= be.getPlayer();
    Block b = be.getBlock();
    Location pl= be.getPlayer().getLocation();

    PlayerBlockBreakData.PlayerBlockBreakSave(p,b,pl);
}

Was ich hier versuche ist erst einmal einfach nur ALLE Blöcke die abgebaut werden Abzuspeichern mitsamt der Location.

Das würde allerdings eine ganz schöne Sucherei bedeuten, wenn ich dann rausfinden will wer genau denn nun immer die Bauwerke kaputt macht. Denn ich müsste quasi immer nach der Location des Blocks suchen.

Wäre doch daher sehr viel angenehmer wenn mir per Chatbefehl ausgegeben würde wer den block den ich ansehe abgebaut hat.

Ich hoffe ihr versteht was ich meine, falls nicht gern einfach Nachfragen!

Danke euch :)

Minecraft, Minecraft Server, Minecraft plugin, Minecraft Plugins programmieren
Java: Wieso bekomme ich eine NullpointerExeption nach Server Reload?

Hallo.

Ich habe ein Minecraft Plugin in der Sprache Java programmiert und nachdem ich den Minecraft Server neulade, gibt dieser eine Fehlermeldung aus. Wieso?

at java.lang.Thread.run(Thread.java:748) [?:1.8.0_292]
Caused by: java.lang.NullPointerException
at de.Schulschluss.shop_GUI.OnInventoryClick.onInventoryClick(OnInventoryClick.java:28) ~[?:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_292]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_292]
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_292]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_292]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[spigot.jar:git-Spigot-db6de12-18fbb24]
... 15 more

Anscheinend ist der Fehler dort:

Caused by: java.lang.NullPointerException
at de.Schulschluss.shop_GUI.OnInventoryClick.onInventoryClick(OnInventoryClick.java:28) ~[?:?]

Die Klasse sieht wie folgt aus:

public String Prefix = "Prefix >>";

@EventHandler
public void onInventoryClick(InventoryClickEvent e) {
  Player p = (Player) e.getWhoClicked();

  if (e.getWhoClicked() instanceof Player) {
    if (e.getClickedInventory().getTitle() != null) {
      if (e.getClickedInventory().getTitle().equals(de.Schulschluss.Main.GUI_Name)) {
        if (e.getInventory().getName() == de.Schulschluss.Main.GUI_Name) {
          if (e.getCurrentItem() != null) {
            if (e.getSlot() == 10) {
              p.sendMessage(Prefix + "Jetzt.");
            }

            e.setCancelled(true);
          }
        }
      }
    }
  }
}

Ich bitte um Hilfe. Danke an alle im Voraus.

Computer, Programmieren, Java, Minecraft, Minecraft Server, Fehlermeldung, Minecraft plugin, Plugins Minecraft, Minecraft Plugins programmieren
Nick Plugin geht nicht?

Kann mir jemand diesen Error erklären?

> [18:06:17 INFO]: baumiistbossTV issued server command: /nick

> [18:06:17 ERROR]: null

org.bukkit.command.CommandException: Unhandled exception executing command 'nick' in plugin Lobby v1.0

at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at org.bukkit.craftbukkit.v1_8_R3.CraftServer.dispatchCommand(CraftServer.java:641) ~[spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at net.minecraft.server.v1_8_R3.PlayerConnection.handleCommand(PlayerConnection.java:1162) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:997) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:45) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:1) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at net.minecraft.server.v1_8_R3.PlayerConnectionUtils$1.run(SourceFile:13) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_275]

at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_275]

at net.minecraft.server.v1_8_R3.SystemUtils.a(SourceFile:44) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:715) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

at java.lang.Thread.run(Thread.java:748) [?:1.8.0_275]

Caused by: java.lang.NoClassDefFoundError: de/domedd/betternick/api/betternickapi/BetterNickAPI

at net.myzickzack.nick.nick.onCommand(nick.java:31) ~[?:?]

at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]

... 15 more

Minecraft, Minecraft Server, Minecraft Plugins programmieren
Was bedeutet der Fehler?

[11:35:01 ERROR]: Could not load 'plugins\Test.jar' in folder 'plugins'

org.bukkit.plugin.InvalidPluginException: Cannot find main class `de.main.Main'

    at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:80) ~[spigot.jar:git-Spigot-dcd1643-e60fc34]

    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:129) ~[spigot.jar:git-Spigot-dcd1643-e60fc34]

    at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:327) ~[spigot.jar:git-Spigot-dcd1643-e60fc34]

    at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:248) [spigot.jar:git-Spigot-dcd1643-e60fc34]

    at org.bukkit.craftbukkit.v1_12_R1.CraftServer.loadPlugins(CraftServer.java:305) [spigot.jar:git-Spigot-dcd1643-e60fc34]

    at org.bukkit.craftbukkit.v1_12_R1.CraftServer.reload(CraftServer.java:750) [spigot.jar:git-Spigot-dcd1643-e60fc34]

    at org.bukkit.Bukkit.reload(Bukkit.java:525) [spigot.jar:git-Spigot-dcd1643-e60fc34]

    at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:27) [spigot.jar:git-Spigot-dcd1643-e60fc34]

    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) [spigot.jar:git-Spigot-dcd1643-e60fc34]

    at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchCommand(CraftServer.java:648) [spigot.jar:git-Spigot-dcd1643-e60fc34]

    at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchServerCommand(CraftServer.java:634) [spigot.jar:git-Spigot-dcd1643-e60fc34]

    at net.minecraft.server.v1_12_R1.DedicatedServer.aP(DedicatedServer.java:444) [spigot.jar:git-Spigot-dcd1643-e60fc34]

    at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:407) [spigot.jar:git-Spigot-dcd1643-e60fc34]

    at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679) [spigot.jar:git-Spigot-dcd1643-e60fc34]

    at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577) [spigot.jar:git-Spigot-dcd1643-e60fc34]

    at java.lang.Thread.run(Thread.java:834) [?:?]

Caused by: java.lang.ClassNotFoundException: de.main.Main

    at java.net.URLClassLoader.findClass(URLClassLoader.java:471) ~[?:?]

    at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:152) ~[spigot.jar:git-Spigot-dcd1643-e60fc34]

    at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:100) ~[spigot.jar:git-Spigot-dcd1643-e60fc34]

    at java.lang.ClassLoader.loadClass(ClassLoader.java:588) ~[?:?]

    at java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[?:?]

    at java.lang.Class.forName0(Native Method) ~[?:?]

    at java.lang.Class.forName(Class.java:398) ~[?:?]

    at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:78) ~[spigot.jar:git-Spigot-dcd1643-e60fc34]

    ... 15 more

Ich wollte eine Config in mein Plugin machen kann mit dem Fehler nichts anfangen

Computer, Fehler, Minecraft Server, Minecraft Plugins programmieren, minecraft java edition
Wie kann ich die Zeit unterteilen?

Ich will für mich und mein Freund ein "swap" plugin coden, bin soweit gekommen dass es funktioniert nur Optisch ist es nicht so cool... weil nicht 5:00 bis 0:00 angezeigt wird, sondern 300 bis 0. Ich weis aber nicht wie ich dass ändern kann. Könnt ihr mir helfen?
Code:

    @Override
    public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {

        Player p = (Player) sender;
        
        if(args.length == 1 && args[0] != "end") {
            Player t = Bukkit.getPlayer(args[0]);
            BukkitScheduler s = p.getServer().getScheduler();
            
            s.scheduleSyncRepeatingTask(plugin, new Runnable() {
                
                int count = 300;
                @Override
                public void run() {
                    if(count == 0) {
                        s.cancelTask(task);
                        Location pl = p.getLocation();
                        Location tl = t.getLocation();
                        p.teleport(tl);
                        t.teleport(pl);
                    } else
                        if(count != 0) {
                            if(count == 30 && count > 10) {
                                p.spigot().sendMessage(ChatMessageType.ACTION_BAR, new TextComponent
                                        ("§eswap in §6§l" + count--));
                                t.spigot().sendMessage(ChatMessageType.ACTION_BAR, new TextComponent
                                        ("§eswap in §6§l" + count--));
                            } else
                                if(count == 10 && count > 0) {
                                    p.spigot().sendMessage(ChatMessageType.ACTION_BAR, new TextComponent
                                            ("§cswap in §6§l" + count--));
                                    t.spigot().sendMessage(ChatMessageType.ACTION_BAR, new TextComponent
                                            ("§cswap in §6§l" + count--));
                                    p.sendMessage("§cSWAP IN §6§l" + count--);
                                    t.sendMessage("§cSWAP IN §6§l" + count--);
                                } else {
                                    if(count > 30) {
                                        p.spigot().sendMessage(ChatMessageType.ACTION_BAR, new TextComponent
                                                ("§aswap in §6§l" + count--));
                                        t.spigot().sendMessage(ChatMessageType.ACTION_BAR, new TextComponent
                                                ("§aswap in §6§l" + count--));
                                    }
                                }
                            }
                }
            }, 20L, 20L);
        } else
            if(args.length == 1 && args[0] == "end") {
                p.sendMessage("§cSwap is stopped!");
                p.getServer().getScheduler().cancelTask(task);
            }
Computer, Programmieren, Coden, Minecraft, Plugins Minecraft, Plugin Programmieren, BukkitSpigot, Minecraft Plugins programmieren
Config.yml funktioniert nicht was tun?

Ich mache gerade ein /position command aber wenn ich versuche sachen in die config.yml einzutragen gibt es immer einen Error (beim ausführen vom Command kommt: An internal error occuruppted while attempting to perform this command).
Hier die Error message:

Hier der code (ich weis ein paar fehler sind dabei aber ich möchte erstmal schaffen etwas in die config.yml zu schreiben):

public class Position implements CommandExecutor {
    
    private Main plugin;
    
    @SuppressWarnings("deprecation")
    @Override
    public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
        if(sender instanceof Player) {
            Player p = (Player) sender;
            if(args.length == 1) {
                
                String X = String.format("%.0f", p.getLocation().getX());
                String Y = String.format("%.0f", p.getLocation().getY());
                String Z = String.format("%.0f", p.getLocation().getZ());
                
                
                plugin.getConfig().set("Position.args", args[0]);
                plugin.getConfig().set("Position.x", X);
                plugin.getConfig().set("Position.y", Y);
                plugin.getConfig().set("Position.z", Z);
                plugin.saveConfig();
                
                
                TextComponent text = new TextComponent("§aPosition §6" + args[0] + "§a is set to ");
                TextComponent ende = new TextComponent(" §8» ");
                TextComponent tp = new TextComponent("§7move");
                TextComponent coordinates = new TextComponent(
                    "§7[§6X: " + "§6" + String.format("%.0f", p.getLocation().getX()) +
                    "§6 Y: " + String.format("%.0f", p.getLocation().getY()) +
                    "§6 Z: " + String.format("%.0f", p.getLocation().getZ()) + "§7]§6" );

                coordinates.setClickEvent(new ClickEvent(Action.COPY_TO_CLIPBOARD, X + " " + Y + " " + Z));
                coordinates.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT,
                    new ComponentBuilder("§7Click to copy coordinates").create()));
                
                
                    tp.setClickEvent(new ClickEvent(Action.RUN_COMMAND, "/tp " + p.getName() + " " + X + " " + Y + " " + Z));        
                    tp.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT,
                        new ComponentBuilder("§7Click here to tp to §8" + args[0]).create()));
                
                
                p.spigot().sendMessage(text, coordinates , ende, tp);
                
                
                    } else
                        p.sendMessage("§cPlease use" + "§6 /position[p] <name> §7/§6 /positionlist[plist] <name>" + "§c!");
                        
        } else {
            sender.sendMessage("§cYou cant use this command in a §6" + sender.getName() + "§c! You need to be a p to use this command!");
        }
        return false;
    }
}
Config.yml funktioniert nicht was tun?
Computer, Programmieren, Coden, Minecraft, Plug-in, Minecraft plugin, BukkitSpigot, Minecraft Plugins programmieren
Minecraft Plugin programmieren, EntityDamageByEntityEvent?

Hallo zusamen.

Ich Programmiere gerade ein Bedwars Plugin, jedenfalls habe ich jetzt lange rum probiert und schaffe es nicht, dass sich zwei, welche im Gleichen Team sind, keinen schaden gegenseitig machen. Jeder Spieler ist in einer Liste gespeichert die mit Teams.get... aufgerufen wird. Ich möchte gerne wissen wo der Fehler ist.

Danke im voraus.

@EventHandler

public void onDamage(EntityDamageEvent e) {

if(e.getEntity() instanceof Villager){

e.setCancelled(true);

}else if(e.getEntity() instanceof Player) {

if(Arena.getState().equals(GameState.COUNTOWNBEGIN) || Arena.getState().equals(GameState.JOIN) || Arena.getState().equals(GameState.END)) {

e.setCancelled(true);

}else {

e.setCancelled(false);

}

if(e.getCause().equals(DamageCause.VOID)) {

e.getEntity().teleport(Config.getwarteraum());

}

}

}

@EventHandler

public void MCvoid(Void e) {

}

@EventHandler

public void onPlayerdamage(EntityDamageByEntityEvent e)

if(e.getEntity() instanceof Player) {

Player p = (Player) e.getEntity();

Player pk = (Player) e.getDamager();

if(Teams.getListAqua().contains(p)) {

if(Teams.getListAqua().contains(pk)) {

e.setCancelled(true);

}else {

e.setCancelled(false);

}}else if(Teams.getListMagenta().contains(p)) {

if(Teams.getListMagenta().contains(pk)) {

e.setCancelled(true);

}else {

e.setCancelled(false);

}}else if(Teams.getListRed().contains(p)) {

if(Teams.getListRed().contains(pk)) {

e.setCancelled(true);

}else {

e.setCancelled(false);

}}else if(Teams.getListViolet().contains(p)) {

if(Teams.getListViolet().contains(pk)) {

e.setCancelled(true);

}else {

e.setCancelled(false);

}}}}}

Minecraft, Minecraft server plugin, minecraft spigot, Minecraft Plugins programmieren
Minecraft plugin scheduler?

Hallo leute, sobald ich zwei cooldowns parallel am laufen habe, und einer durch ist, gibt es beim zweiten cooldown folgende errormeldung. Weiß jemand wo das Problem ist?:

java.lang.NullPointerException
    at de.johannes.hcfabilitys.main.ABILITYT$1.run(ABILITY.java:101) ~[?:?]
    at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-db6de12-18fbb24]
    at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-db6de12-18fbb24]
    at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:723) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-db6de12-18fbb24]
    at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-db6de12-18fbb24]
    at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-db6de12-18fbb24]
    at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [spigot-1.8.8-R0.1-SNAPSHOT-latest.jar:git-Spigot-db6de12-18fbb24]
    at java.lang.Thread.run(Unknown Source) [?:1.8.0_241]

Hier der code:

public static void inGameCountDown(Player p, Player t) {
tp = Bukkit.getScheduler().scheduleSyncRepeatingTask(Main.getPlugin(), new Runnable() {
@Override
public void run() {
System.out.println("Activating run for: " + p.getName());
if(cooldown.get(p) == null) {
returnInventory(p, t);
Bukkit.getScheduler().cancelTask(tp);
}
if (cooldown.get(p) == 1) {
System.out.println("Canceling cooldown for: " + p.getName());
Bukkit.getScheduler().cancelTask(tp);
cooldown.remove(p);
returnInventory(p, t);
}
if(cooldown.containsKey(p)) {
int c = cooldown.get(p);
c--;
System.out.println("Hashmap contains key for: " + p.getName() + "   " + c);
cooldown.put(p, c);
}
}
}, 20, 20);
}
Java, Bukkit, Spigot, Minecraft plugin, Minecraft Plugins programmieren
[09:03:02 ERROR]: Error occurred while enabling plugin v1.0 (Is it up to date?) java.lang.NullPointerException?

Hallo seit kurzem habe ich das Problem das mein Chatclear Command nicht geht. Beim Start kommt diese Fehlermeldung:

[09:03:02 ERROR]: Error occurred while enabling plugin v1.0 (Is it up to date?)

java.lang.NullPointerException

    at de.name.plugin.main.Main.onEnable(Main.java:25) ~[?:?]

    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:321) ~[spigot.jar:git-Spigot-c3c767f-33d5de3]

    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:335) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at org.bukkit.craftbukkit.v1_8_R1.CraftServer.loadPlugin(CraftServer.java:356) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at org.bukkit.craftbukkit.v1_8_R1.CraftServer.enablePlugins(CraftServer.java:316) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at org.bukkit.craftbukkit.v1_8_R1.CraftServer.reload(CraftServer.java:746) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at org.bukkit.Bukkit.reload(Bukkit.java:534) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:25) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at org.bukkit.craftbukkit.v1_8_R1.CraftServer.dispatchCommand(CraftServer.java:646) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at org.bukkit.craftbukkit.v1_8_R1.CraftServer.dispatchServerCommand(CraftServer.java:632) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at net.minecraft.server.v1_8_R1.DedicatedServer.aM(DedicatedServer.java:353) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at net.minecraft.server.v1_8_R1.DedicatedServer.z(DedicatedServer.java:317) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at net.minecraft.server.v1_8_R1.MinecraftServer.y(MinecraftServer.java:634) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at net.minecraft.server.v1_8_R1.MinecraftServer.run(MinecraftServer.java:537) [spigot.jar:git-Spigot-c3c767f-33d5de3]

    at java.lang.Thread.run(Unknown Source) [?:1.8.0_241]

Der Command ist in der plugin.yml und in der Main eingetragen. Eclipse selber erkennt auch keinen Fehler

PC, Technik, Java, Command, Eclipse, Error, Minecraft Plugins programmieren
Eclipse programmieren Minecraft: ICH BRAUCHE HILFE!?

Also, ich wollte, wnn man /... <Spielername> eingibt, dass sich ein Inventar öffnet, wo, wenn man auf das Kick Item klickt der ANGEGEBENE Spieler im Command gekickt wird. Bloß, ich kann das Player t = Bukkit.getPlayer(args[1]) nicht unten in das InventoryClickEvent schreiben. Was soll ich machen? Ich brauche HILFE!

Hier der Sourcecode:

public class ControlInventory implements CommandExecutor, Listener{

@Override
public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {      
    Player p = (Player) sender;
    if(p.hasPermission("serversystem.controllinventory") || p.isOp()) {
            if(sender instanceof Player) {
                if(args.length == 0) {
                    
                p.sendMessage("§cDas kannst du nicht bei dir selber machen!");
                
            }else if(args.length == 1) {                        
                Player t = Bukkit.getPlayer(args[1]);
                if(t != null) {
                    
                    Inventory inv = Bukkit.createInventory(null, 9*3, "§f§lControll§c§lInventory");
                    p.sendMessage("§7Du hast das §fControl§cInventar §7von §b" + t.getName() + " §fgeöffnet!");
                    p.openInventory(inv);




                    ItemStack KICK = new ItemStack(Material.REDSTONE_TORCH_OFF);
                    ItemMeta kick = KICK.getItemMeta();
                    kick.setDisplayName("§2§lSpieler §4kicken");
                    KICK.setItemMeta(kick);
                    
                    ItemStack GLASS = new ItemStack(Material.STAINED_GLASS_PANE);
                    ItemMeta glass = GLASS.getItemMeta();
                    glass.setDisplayName(" ");
                    GLASS.setItemMeta(glass);
                    
                    inv.setItem(0, GLASS);
                    inv.setItem(1, GLASS);
                    inv.setItem(2, GLASS);
                    inv.setItem(3, GLASS);
                    inv.setItem(4, GLASS);
                    inv.setItem(5, GLASS);
                    inv.setItem(6, GLASS);
                    inv.setItem(7, GLASS);
                    inv.setItem(8, GLASS);
                    inv.setItem(9, GLASS);
                    inv.setItem(10, GLASS);
                    inv.setItem(11, GLASS);
                    inv.setItem(12, GLASS);
                    inv.setItem(13, GLASS);
                    inv.setItem(14, GLASS);
                    inv.setItem(15, GLASS);
                    inv.setItem(16, GLASS);
                    inv.setItem(17, GLASS);
                    inv.setItem(18, GLASS);
                    inv.setItem(19, GLASS);
                    inv.setItem(20, GLASS);
                    inv.setItem(21, GLASS);
                    inv.setItem(22, GLASS);
                    inv.setItem(23, GLASS);
                    inv.setItem(24, GLASS);
                    inv.setItem(25, GLASS);
                    inv.setItem(26, GLASS);
                    
                }
            }
        }
    }
    return true;
}

@EventHandler
public void onClick(InventoryClickEvent e) {
    Player p = (Player) e.getWhoClicked();
&nbsp; if (e.getInventory().getName().equals("§f§lControll§c§lInventory")) {
&nbsp; &nbsp; if (e.getCurrentItem() != null &amp;&amp; e.getCurrentItem().getType() != Material.AIR) {
&nbsp; &nbsp; &nbsp; e.setCancelled(true);
&nbsp; &nbsp; &nbsp; if (e.getCurrentItem().getType() == Material.REDSTONE_TORCH_OFF) {
&nbsp; &nbsp;   &nbsp;
&nbsp; &nbsp;   &nbsp; p.closeInventory();
&nbsp; &nbsp;   }
&nbsp; &nbsp; &nbsp; }
&nbsp; &nbsp; }
}

}


Computer, Programmieren, Java, Minecraft, Eclipse, Minecraft Server, Minecraft plugin, Minecraft Plugins programmieren, Spiele und Gaming

Meistgelesene Fragen zum Thema Minecraft Plugins programmieren