[Plugin] ArrayList Inhalt per Schild abfragen

02/21/2014 21:22 GSR|Flash#1
Heay,

und zwar habe ich momentan ein Problem. Und zwar habe ich eine ArrayList der name ist Lobby und deren Inhalt(Spieler Zahl) möchte per Schild abfragen. Das lso auf dem Schild steht z.B


=========
Lobby 1
5
=========


Mfg.
Flash
02/21/2014 21:57 Kante'#2
Dann nimmst du einfach die ArrayList (z.B. die List heißt "Lobby" und deine Schildvariable heißt "s") und machst dann:

Code:
s.setLine(4, "" + Lobby.size());
Dann einfach diese Code-Zeile bei jedem Update der List dort einfügen
02/21/2014 22:00 ComputerBaer#3
Ich verstehe nicht ganz was du willst, also schreibe ich jetzt einmal das auf was ich vermute:
Du hast für irgendetwas eine Lobby und möchstest das die Anzahl der Spieler, die sich in der Lobby befinden, auf einem bestimmten Schild angezeigt wird. Die Zahl soll sich automatisch aktualisieren, sobald ein Spieler in die Lobby kommt oder diese verlässt. Richtig oder nicht?

Vorgehensweise dazu:
Du speicherst das Schild durch einen bestimmten Ablauf bei dir im Plugin (z.B. Befehl eingeben und anschließend Rechtsklick auf das Schild). Dann setzt du jedesmal den Text auf dem Schild neu, wenn ein Spieler den join oder leave Befehl ausführt.

Für das Schild: org.bukkit.block.Sign
02/21/2014 22:45 GSR|Flash#4
@ComputerBaer:

genau das mein ich :) . erstmal danke für deine antowrt jedoch failt der Link bei mir :/

mfg.
Flash
02/21/2014 22:54 HogarthHughes#5
Quote:
Originally Posted by GSR|Flash View Post
@ComputerBaer:

genau das mein ich :) . erstmal danke für deine antowrt jedoch failt der Link bei mir :/

mfg.
Flash
Ich glaube das soll kein link sondern lediglich ne Klasse oder so sein (Bin kein Profi hier)

vielleicht meint er das:
[Only registered and activated users can see links. Click Here To Register...]
02/21/2014 22:59 GSR|Flash#6
Das könnte so einiges erklären :)

Mfg,
Flash
02/24/2014 19:17 Gutentagsageich#7
Sowas in der Art?

Code:
ArrayList<Player> lobby = new ArrayList<Player>();
Sign s = ....;

public void updateMySign(){

  s.setLine(2, "" + lobby.size()); // Setzt in die dritte Zeile des Schilds die Größe der ArrayList lobby;

  s.update();
}

// Wann ein neuer Spieler der Lobby beitritt:
lobby.add(Player player);
updateMySign();
02/25/2014 14:16 i0N#8
Genau, nur müsstest du natürlich auch wieder das Schild updaten und den Spieler aus der ArrayList entfernen, sobald er die Lobby verlässt, sonst kann's sein, dass du einen Spieler 20x drin hast :P