Spieler in Array-Liste setzen (Bukkit, Java, MC)?

1 Antwort

Von Experte JanMarcel01 bestätigt

Es wäre sinnvoller, eine Liste zu erstellen, die Player-Objekte aufnimmt.

List<Player> players = new ArrayList<>();
players.add(somePlayer);

Ob ein Player-Objekt in der Liste enthalten ist, kannst du beispielsweise mit der contains-Methode prüfen.

Wenn das möglich ist, würde ich allerdings schon beim Anlegen dieser Liste bzw. beim Einfügen der Player-Objekte in diese Liste den Sonst-Fall mit einbeziehen.

wenn Spieler in Liste gehoert:
  fuege Spieler zu Liste hinzu
sonst:
  haenge Item an
mprex 
Fragesteller
 21.01.2022, 14:41

Wie kann ich abfragen ob irgendein Spieler in die Liste gehört?

0
regex9  21.01.2022, 14:56
@mprex

Das musst du doch wissen? Es ist doch deine Anforderung.

0
Lighdo  23.01.2022, 22:41

Hey tatsächlich würde ich deine PlayerList so lassen und keine PlayerObjekte hinzufügen, da dies nicht so performant ist.

List<String> players = new ArrayList<>();
players.add("...");

Bukkit.getOnlinePlayers()
        .stream()
        .filter(e -> {
            return !players.contains(e.getUniqueId().toString());
        }).forEach(p -> {
            p.getInventory().addItem(new ItemStack(Material.COAL));
        }); 
0