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

Spigot Brauche Hilfe für einen /enderchest Plugin

heras

Minecrafter
Mitglied seit
25 Juli 2019
Beiträge
10
Hey,
Ich brauche Hilfe um einen /enderchest plugin zu programmieren, denn ich will das man ohne einen permission nichts von anderen ec rausnehmen kann.
Ich habe es mit einem arraylist versucht aber ich weiß nicht wie ich jemanden aus der Arraylist removt nachdem er den ec schließt.
Es wäre nett wenn ihr mir eine methode schreiben würdet das ich jemanden vom arraylist remove kann wenn er dein Enderchest schließt.
Vielen Dank im Voraus!
 

Avankziar

Kuhfänger
Osterei Experte
Mitglied seit
12 Februar 2018
Beiträge
81
Alter
26
Minecraft
Avankziar
Code:
    @EventHandler
    public void onEnderChestClose(InventoryCloseEvent event)
    {
        if(event.getInventory().getType() == InventoryType.ENDER_CHEST)
        {
            list.remove(player);
        }
        return;
    }
Du überprüfst einfach im InventoryCloseEvent, ob das Inventar eine Enderchest ist, dann removest du den Player.
Könnte sein, dass du eventuell noch vorher abfragen muss, ob das Inventar != null ist. Musst du aber ausprobieren.
 

petomka

Redstoneengineer
Osterei Experte
Mitglied seit
8 Oktober 2012
Beiträge
34
Alter
20
InventoryEvent#getInventory ist als NotNull annotiert, darauf darf man sich ruhig verlassen. Ein Event, dass ein Inventar geschlossen wurde, ohne Inventar ist auch nicht wirklich sinnvoll, oder? ;)

Vielleicht magst du dir (@heras) auch mal anschauen, was ein Set ist, denn ich vermute, du möchtest in deiner Liste keine doppelten Einträge - eine wesentliche Eigenschaft eines Sets. Als Implementierung kannst du das HashSet verwenden.

Java:
List list = ...;
if(list.contains(...)) {
    return;
}
list.add(...);
//restliche aktionen

Set set = ...;
if(!set.add(...)) {
    return;
}
//restliche aktionen
 
Allgemein
Hilfe Benutzer
    iTz_Proph3t iTz_Proph3t: hö?
    Oben