Wie Spieler in Arraylist hinzufügen,abrufen und löschen (Uuids)?
moin,
wie kann ich durch einen befehl /(command) (Spieler) den spieler mit der uuid zur einer arraylist hinzufügen und speichern.
Und mit /(andererCommand) die ein oder mehrere spieler(durch uuids) aus der arraylist löschen
Und mit einem anderen Command die arraylist abrufen und die spieler zu mir teleportieren (es geht mir hauptsächlich ums abrufen der list
ps, bitte schreibt nicht "befasse dich erstmal mit java" oder "befasse dich mal mit der arraylist" oder "10sekunden googlen" und so ein mist
mfg ALpha220066
2 Antworten
Hi ALpha220066,
schreib dir zuerst einen Command-Handler, bzw. packe ihn in deine Main-Methode, je nachdem wie du arbeitest. Beispiel dafür findest du haufenweise auf anderen Seiten.
Dann würde ich mir eine Klasse anlegen, mit der ich die ArrayList handle. Zum Beispiel PlayerManager oder so.
public class PlayerManager {
public ArrayList<Player> players;
public boolean putPlayer(Player p) {
// Prüft, ob Spieler noch nicht in der ArrayList ist
if(!players.contains(p)) {
// Ist er es nicht, wird er hinzugefügt
players.add(p);
return true;
}
return false;
}
public boolean removePlayer(Player p) {
// Prüft, ob Spieler bereits in der ArrayList ist
if(players.contains(p)) {
// Ist er es, wird er gelöscht
players.remove(p);
return true;
}
return false;
}
public boolean putOrRemove(Player p) {
// Spieler automatisch hinzufügen oder entfernen
return true;
}
}
Anhand der beiden Methoden solltest du auch herausfinden können, wie der Spieler beim Eingeben eines Commands automatisch hinzugefügt oder entfernt wird, abhängig davon, ob er in der ArrayList ist oder nicht.
Liebe Grüße
allgemein, habe ich erstmal das soweit gemacht was sie sagten mit der neuen classe und ein Command-Handler gefunden. Dann habe ich erstmal den ersten command in einer Classe gepackt und der code den ich geschickt habe, ist die abgreifung von den command das der Spieler raus gezogen wird um den in die Liste zu packen(wenn ich das richtig gemacht habe). Und das mit dem code Problem das was rot gekennzeichnet wird ist nach dem p die klammer wird von Eclipse gekennzeichnet.
Da fehlt eine klammer, mach anstelle der einen Klammer ")" zwei draus: "))"
Mal so eine frage am Rande Wie binde ich die ArrayList mit in einer anderen Klasse ein?
ich glaube ich habs, habs mit public ArrayList<Player> players; gemacht
Bist du auf eine ArrayList festgelegt?
und info, falls man die braucht, ich wollte die drei befehle in drei unterschiedlichen klassen machen
ich habe bisher nur eine Arraylist erstellt mit ArrayList<UUID> bauspieler= new ArrayList<UUID>();
ich habe es so weit das im ersten command greift der(wenn ich das richtig gemacht habe) den spieler beim command raus(siehe text)
eclipse gibt bei dem code den sie reingeschrieben haben bei if(!players.contains(p)
das dickgemachte rot an