songowner system war falsch implementiert
parent
0bc4012774
commit
04f374cfff
|
|
@ -92,7 +92,11 @@ package eric.Roullette.service;
|
||||||
Game g = getOrCreateGame(gameId);
|
Game g = getOrCreateGame(gameId);
|
||||||
if (g.players().isEmpty()) throw new IllegalStateException("No players");
|
if (g.players().isEmpty()) throw new IllegalStateException("No players");
|
||||||
String owner = g.players().get(ThreadLocalRandom.current().nextInt(g.players().size()));
|
String owner = g.players().get(ThreadLocalRandom.current().nextInt(g.players().size()));
|
||||||
String song = uris.get(ThreadLocalRandom.current().nextInt(uris.size()));
|
List<String> ownerTracks = g.playerTracks().getOrDefault(owner, List.of());
|
||||||
|
if (ownerTracks.isEmpty()) throw new IllegalStateException("Owner hat keine Tracks");
|
||||||
|
String song = ownerTracks.get(ThreadLocalRandom.current().nextInt(ownerTracks.size()));
|
||||||
|
|
||||||
|
//String song = uris.get(ThreadLocalRandom.current().nextInt(uris.size()));
|
||||||
Game updated = new Game(gameId, g.players(), g.scores(), owner, song, uris, g.playerTracks());
|
Game updated = new Game(gameId, g.players(), g.scores(), owner, song, uris, g.playerTracks());
|
||||||
games.put(gameId, updated);
|
games.put(gameId, updated);
|
||||||
return updated;
|
return updated;
|
||||||
|
|
|
||||||
|
|
@ -81,7 +81,7 @@ public class SpotifyAuthService {
|
||||||
|
|
||||||
public List<String> getRecentTracks(String user) {
|
public List<String> getRecentTracks(String user) {
|
||||||
System.out.println("Hole kürzlich gespielte Tracks für Benutzer: " + user);
|
System.out.println("Hole kürzlich gespielte Tracks für Benutzer: " + user);
|
||||||
int limit = 50;
|
int limit = 5;
|
||||||
SpotifyApi userApi = userApis.get(user);
|
SpotifyApi userApi = userApis.get(user);
|
||||||
|
|
||||||
if (userApi == null) {
|
if (userApi == null) {
|
||||||
|
|
|
||||||
|
|
@ -171,12 +171,19 @@ private void broadcastRoundResult(String gameId) {
|
||||||
Map<String,String> guesses = currentGuesses.remove(gameId);
|
Map<String,String> guesses = currentGuesses.remove(gameId);
|
||||||
String owner = game.currentOwner();
|
String owner = game.currentOwner();
|
||||||
|
|
||||||
|
// System.out.println("Owner: " + owner);
|
||||||
|
// System.out.println("Guesses: " + guesses);
|
||||||
|
// System.out.println("Scores vor Auswertung: " + scores);
|
||||||
|
|
||||||
// Für jeden Tippenden Score anpassen
|
// Für jeden Tippenden Score anpassen
|
||||||
for (Map.Entry<String, String> entry : guesses.entrySet()) {
|
for (Map.Entry<String, String> entry : guesses.entrySet()) {
|
||||||
String guesser = entry.getKey();
|
String guesser = entry.getKey();
|
||||||
boolean correct = owner.equals(entry.getValue());
|
boolean correct = owner.equals(entry.getValue());
|
||||||
scores.merge(guesser, correct ? 3 : -1, Integer::sum);
|
scores.merge(guesser, correct ? 3 : -1, Integer::sum);
|
||||||
}
|
}
|
||||||
|
// System.out.println("Owner: " + owner);
|
||||||
|
// System.out.println("Guesses: " + guesses);
|
||||||
|
// System.out.println("Scores nach Auswertung: " + scores);
|
||||||
|
|
||||||
String msg = JsonUtil.toJson(Map.of(
|
String msg = JsonUtil.toJson(Map.of(
|
||||||
"type", "round-result",
|
"type", "round-result",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue