mirror of
https://github.com/magefree/mage.git
synced 2026-01-10 04:42:07 -08:00
Adding Player state to TournamentPlayer and TournamentPanel.
This commit is contained in:
parent
7c5f1efe71
commit
06163d6ac5
8 changed files with 84 additions and 5 deletions
30
Mage/src/mage/constants/TournamentPlayerState.java
Normal file
30
Mage/src/mage/constants/TournamentPlayerState.java
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
package mage.constants;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author LevelX2
|
||||
*/
|
||||
|
||||
public enum TournamentPlayerState {
|
||||
JOINED ("Joined"),
|
||||
DRAFTING ("Drafting"),
|
||||
CONSTRUCTING ("Constructing"),
|
||||
DUELING ("Dueling"),
|
||||
SIDEBOARDING ("Sideboarding"),
|
||||
WAITING ("Waiting for next round"),
|
||||
ELIMINATED ("Eliminated"),
|
||||
CANCELED ("Canceled"),
|
||||
FINISHED ("Finished"); // winner or player in swiss style
|
||||
|
||||
private String text;
|
||||
|
||||
TournamentPlayerState(String text) {
|
||||
this.text = text;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return text;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -33,6 +33,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
|
|||
import mage.cards.Card;
|
||||
import mage.cards.ExpansionSet;
|
||||
import mage.cards.decks.Deck;
|
||||
import mage.constants.TournamentPlayerState;
|
||||
import mage.game.events.*;
|
||||
import mage.game.events.TableEvent.EventType;
|
||||
import mage.game.match.Match;
|
||||
|
|
@ -146,6 +147,11 @@ public abstract class TournamentImpl implements Tournament {
|
|||
Round round = new Round(rounds.size() + 1);
|
||||
rounds.add(round);
|
||||
List<TournamentPlayer> roundPlayers = getActivePlayers();
|
||||
if (roundPlayers.size() == 1) {
|
||||
TournamentPlayer winner = roundPlayers.get(0);
|
||||
winner.setState(TournamentPlayerState.FINISHED);
|
||||
winner.setStateInfo("Winner");
|
||||
}
|
||||
while (roundPlayers.size() > 1) {
|
||||
int i = rnd.nextInt(roundPlayers.size());
|
||||
TournamentPlayer player1 = roundPlayers.get(i);
|
||||
|
|
|
|||
|
|
@ -30,6 +30,7 @@ package mage.game.tournament;
|
|||
|
||||
import mage.cards.Card;
|
||||
import mage.cards.decks.Deck;
|
||||
import mage.constants.TournamentPlayerState;
|
||||
import mage.players.Player;
|
||||
|
||||
/**
|
||||
|
|
@ -40,6 +41,8 @@ public class TournamentPlayer {
|
|||
|
||||
protected int points;
|
||||
protected String playerType;
|
||||
protected TournamentPlayerState state;
|
||||
protected String stateInfo = "";
|
||||
protected Player player;
|
||||
protected Deck deck;
|
||||
protected String results = "";
|
||||
|
|
@ -50,6 +53,7 @@ public class TournamentPlayer {
|
|||
public TournamentPlayer(Player player, String playerType) {
|
||||
this.player = player;
|
||||
this.playerType = playerType;
|
||||
this.state = TournamentPlayerState.JOINED;
|
||||
}
|
||||
|
||||
public Player getPlayer() {
|
||||
|
|
@ -77,6 +81,7 @@ public class TournamentPlayer {
|
|||
}
|
||||
|
||||
public void setEliminated() {
|
||||
this.setState(TournamentPlayerState.ELIMINATED);
|
||||
this.eliminated = true;
|
||||
}
|
||||
|
||||
|
|
@ -89,12 +94,14 @@ public class TournamentPlayer {
|
|||
}
|
||||
|
||||
public void setConstructing() {
|
||||
this.setState(TournamentPlayerState.CONSTRUCTING);
|
||||
this.doneConstructing = false;
|
||||
}
|
||||
|
||||
public void submitDeck(Deck deck) {
|
||||
this.deck = deck;
|
||||
this.doneConstructing = true;
|
||||
this.setState(TournamentPlayerState.WAITING);
|
||||
}
|
||||
|
||||
public void updateDeck(Deck deck) {
|
||||
|
|
@ -126,4 +133,21 @@ public class TournamentPlayer {
|
|||
public void setResults(String results) {
|
||||
this.results = results;
|
||||
}
|
||||
|
||||
public TournamentPlayerState getState() {
|
||||
return state;
|
||||
}
|
||||
|
||||
public void setState(TournamentPlayerState state) {
|
||||
this.state = state;
|
||||
}
|
||||
|
||||
public String getStateInfo() {
|
||||
return stateInfo;
|
||||
}
|
||||
|
||||
public void setStateInfo(String stateInfo) {
|
||||
this.stateInfo = stateInfo;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue