Files
OOP-Klausuren/src/j2025/FT/PlayerHandler.java
2026-05-12 15:23:08 +02:00

56 lines
1.2 KiB
Java

package j2025.FT;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
public class PlayerHandler {
private List<Player> players = new LinkedList<>();
private List<Player> ranking = new ArrayList<>();
public void addPlayer(Player player) {
players.add(player);
}
public Player getCurrentPlayer() {
return players.getFirst();
}
public void nextTurn() {
players.add(players.removeFirst());
}
public int remaining() {
return players.size();
}
public void currentPlayerWinsRound() {
Player lastPlayer = players.getLast();
lastPlayer.losesPoint();
removePlayer(lastPlayer);
}
public void previusPlayerWinsRound() {
Player currentPlayer = getCurrentPlayer();
Player lastPlayer = players.getLast();
currentPlayer.losesPoint();
removePlayer(currentPlayer);
while (players.getFirst() != lastPlayer) {
nextTurn();
}
}
private void removePlayer(Player player) {
if (player.getPoints() == 0) {
ranking.add(player);
players.remove(player);
}
}
public List<Player> getRanking() {
return ranking;
}
}