mirror of
https://github.com/magefree/mage.git
synced 2026-01-10 12:52:06 -08:00
parent
c95e29687f
commit
8869d282b2
1 changed files with 14 additions and 34 deletions
|
|
@ -1,40 +1,24 @@
|
|||
package mage.game.tournament;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.UUID;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
import mage.cards.ExpansionSet;
|
||||
import mage.cards.decks.Deck;
|
||||
import mage.constants.TournamentPlayerState;
|
||||
import mage.game.draft.Draft;
|
||||
import mage.game.draft.DraftCube;
|
||||
import mage.game.events.Listener;
|
||||
import mage.game.events.PlayerQueryEvent;
|
||||
import mage.game.events.PlayerQueryEventSource;
|
||||
import mage.game.events.TableEvent;
|
||||
import mage.game.events.*;
|
||||
import mage.game.events.TableEvent.EventType;
|
||||
import mage.game.events.TableEventSource;
|
||||
import mage.game.jumpstart.JumpstartPoolGenerator;
|
||||
import mage.game.match.Match;
|
||||
import mage.game.match.MatchPlayer;
|
||||
import mage.game.result.ResultProtos.MatchPlayerProto;
|
||||
import mage.game.result.ResultProtos.MatchProto;
|
||||
import mage.game.result.ResultProtos.MatchQuitStatus;
|
||||
import mage.game.result.ResultProtos.TourneyProto;
|
||||
import mage.game.result.ResultProtos.TourneyRoundProto;
|
||||
import mage.game.result.ResultProtos.*;
|
||||
import mage.players.Player;
|
||||
import mage.players.PlayerType;
|
||||
import mage.util.RandomUtil;
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author BetaSteward_at_googlemail.com
|
||||
|
|
@ -44,7 +28,6 @@ public abstract class TournamentImpl implements Tournament {
|
|||
protected UUID id = UUID.randomUUID();
|
||||
protected List<Round> rounds = new CopyOnWriteArrayList<>();
|
||||
protected Map<UUID, TournamentPlayer> players = new HashMap<>();
|
||||
protected String matchName;
|
||||
protected TournamentOptions options;
|
||||
protected TournamentType tournamentType;
|
||||
protected List<ExpansionSet> sets = new ArrayList<>();
|
||||
|
|
@ -60,7 +43,7 @@ public abstract class TournamentImpl implements Tournament {
|
|||
protected String tournamentState;
|
||||
protected Draft draft;
|
||||
|
||||
public TournamentImpl(TournamentOptions options) {
|
||||
protected TournamentImpl(TournamentOptions options) {
|
||||
this.options = options;
|
||||
draft = null;
|
||||
startTime = new Date(); // will be overwritten again as the tournament really starts
|
||||
|
|
@ -142,9 +125,7 @@ public abstract class TournamentImpl implements Tournament {
|
|||
// can only be used, if tournament did not start yet?
|
||||
@Override
|
||||
public void leave(UUID playerId) {
|
||||
if (players.containsKey(playerId)) {
|
||||
players.remove(playerId);
|
||||
}
|
||||
players.remove(playerId);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -306,17 +287,16 @@ public abstract class TournamentImpl implements Tournament {
|
|||
}
|
||||
}
|
||||
for (TournamentPlayer tp : round.getPlayerByes()) {
|
||||
tp.setResults(new StringBuilder(tp.getResults()).append('R').append(round.getRoundNumber()).append(' ').append("Bye ").toString());
|
||||
tp.setResults(tp.getResults() + 'R' + round.getRoundNumber() + ' ' + "Bye ");
|
||||
tp.setPoints(tp.getPoints() + 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static String addRoundResult(int round, TournamentPairing pair, TournamentPlayer tournamentPlayer, TournamentPlayer opponentPlayer) {
|
||||
StringBuilder playerResult = new StringBuilder(tournamentPlayer.getResults());
|
||||
playerResult.append('R').append(round).append(' ');
|
||||
playerResult.append(getMatchResultString(tournamentPlayer, opponentPlayer, pair.getMatch()));
|
||||
return playerResult.toString();
|
||||
String playerResult = tournamentPlayer.getResults() + 'R' + round + ' ' +
|
||||
getMatchResultString(tournamentPlayer, opponentPlayer, pair.getMatch());
|
||||
return playerResult;
|
||||
}
|
||||
|
||||
private static String getMatchResultString(TournamentPlayer p1, TournamentPlayer p2, Match match) {
|
||||
|
|
@ -328,13 +308,13 @@ public abstract class TournamentImpl implements Tournament {
|
|||
if (mp1.hasQuit()) {
|
||||
matchResult.append(mp1.getPlayer().hasIdleTimeout() ? "I" : (mp1.getPlayer().hasTimerTimeout() ? "T" : "Q"));
|
||||
}
|
||||
if (match.getDraws() > 0) {
|
||||
matchResult.append('-').append(match.getDraws());
|
||||
}
|
||||
matchResult.append('-').append(mp2.getWins());
|
||||
if (mp2.hasQuit()) {
|
||||
matchResult.append(mp2.getPlayer().hasIdleTimeout() ? "I" : (mp2.getPlayer().hasTimerTimeout() ? "T" : "Q"));
|
||||
}
|
||||
if (match.getDraws() > 0) {
|
||||
matchResult.append('-').append(match.getDraws());
|
||||
}
|
||||
matchResult.append("] ");
|
||||
return matchResult.toString();
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue