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

Scoreboard wird teilweise geuptated

masterlegend

Minecrafter
Registriert
15 September 2016
Beiträge
14
Diamanten
0
Hey Leute,

ich habe ein Gungame programmiert, welches ein Scoreboard enthält, was die jeweiligen Level der Spieler anzeigt. Im PlayerDeathEvent setze ich das Scoreboard für killer und victim neu, so dass sich die Levels
dementsprechend updaten. Dies geschieht aber irgendwie nur manchmal. So steht z.B. Level: und in der nächsten Zeile steht einfach nix!
Mach ich dann noch einen Kill, geht das manchmal wieder. Manchmal zeigt er mir auch bei Onlinespieler nichts an. Wenn ein Spieler joined/leaved wird das Scoreboard ebenfalls für alle geupdated. Hat jemand ne Ahnung warum es sich manchmal nicht updated?
Wenn ich im Deathevent das Scoreboard mit ner Verzögerung aufrufe aktualisieren sich die Levels manchmal auch nicht

Death-Event : https://pastebin.com/JgD44VPD
Scoreboard: https://pastebin.com/VyTbCsaz
Fehler: https://prnt.sc/ijgzb5 Dasselbe passiert manchmal fürs Level auch

Gruß

Daniel
 
Zuletzt bearbeitet:

joestr

Redstoneengineer
Registriert
5 November 2016
Beiträge
44
Alter
26
Diamanten
328
Nach langen Testen/Debuggen bin ich nun auf die Lösung gekommen:

stell dir vor das max, record und level = 2 sind:
Code:
o.getScore("§e").setScore(13);
o.getScore("§eName").setScore(12);
o.getScore("§8>> §a§l"+p.getName()).setScore(11);
o.getScore("§a").setScore(10);
o.getScore("§eSpieler Online").setScore(9);
o.getScore("§8>> §a§l"+ max).setScore(8);
o.getScore("§4").setScore(7);
o.getScore("§eLevel").setScore(6);
o.getScore("§8>> §a§l"+ level).setScore(5);
o.getScore("§8").setScore(4);
o.getScore("§eLevel-Rekord").setScore(3);
o.getScore("§8>> §a§l"+ record).setScore(2);
o.getScore("§9").setScore(1);

Das wäre dann dreimal der selbe Score =>
o.getScore("§e").setScore(13);
o.getScore("§eName").setScore(12);
o.getScore("§8>> §a§l"+p.getName()).setScore(11);
o.getScore("§a").setScore(10);
o.getScore("§eSpieler Online").setScore(9);
o.getScore("§8>> §a§l2").setScore(8);
o.getScore("§4").setScore(7);
o.getScore("§eLevel").setScore(6);
o.getScore("§8>> §a§l2").setScore(5);
o.getScore("§8").setScore(4);
o.getScore("§eLevel-Rekord").setScore(3);
o.getScore("§8>> §a§l2").setScore(2);
o.getScore("§9").setScore(1);

Der Score wird dann immer wieder überschrieben. Die letzte Überschreibung findet bei "setScore(2)" statt, deswegen funktioniert dieser richtig.
 

masterlegend

Minecrafter
Registriert
15 September 2016
Beiträge
14
Diamanten
0
Oh mein Gott, vielen Dank für deine Hilfe, bin seid 1 Woche am machen und tun. Glaubst du dass das Level auch wenn es andere Werte hat rumspinnen? Weil es spackt halt immer bei 2 ab und dann bei 4, ,5 jenachdem wie es lustig ist
Weil beim Testen waren immer 2 max Players, das Level beliebig und der Rekord 10. Das dürfte sich dann ja eigenlich nicht überschreiben
 

masterlegend

Minecrafter
Registriert
15 September 2016
Beiträge
14
Diamanten
0
Ah, also du meinst zb. Max Players in weiß, Level in grün und rekord in rot?
Ich weiß aber net ob du das Peoblem wirklich erkannt hast da ich auch einmal die MaxPlayers ausm Scoreboard entfernt habe. Beim Rekord hatte ich 4 und er hat mir das erste level im Score auch nicht angezeigt
 
Oben