diff --git a/Mage.Server/src/main/java/mage/server/User.java b/Mage.Server/src/main/java/mage/server/User.java index 315a0a1e61e..8815ebfa317 100644 --- a/Mage.Server/src/main/java/mage/server/User.java +++ b/Mage.Server/src/main/java/mage/server/User.java @@ -137,9 +137,18 @@ public class User { public String getDisconnectDuration() { long secondsDisconnected = SystemUtil.getDateDiff(lastActivity, new Date(), TimeUnit.SECONDS); - int minutes = (int) secondsDisconnected / 60; - int seconds = (int) secondsDisconnected % 60; - return new StringBuilder(Integer.toString(minutes)).append(":").append(seconds > 9 ? seconds: "0" + Integer.toString(seconds)).toString(); + long secondsLeft = 0; + String sign = ""; + if (secondsDisconnected > (3 * 60)) { + sign="-"; + secondsLeft = secondsDisconnected - (3 *60); + } else { + secondsLeft = (3 * 60) - secondsDisconnected; + } + + int minutes = (int) secondsLeft / 60; + int seconds = (int) secondsLeft % 60; + return new StringBuilder(sign).append(Integer.toString(minutes)).append(":").append(seconds > 9 ? seconds: "0" + Integer.toString(seconds)).toString(); } public Date getConnectionTime() { diff --git a/Mage.Sets/src/mage/sets/magic2014/MoltenBirth.java b/Mage.Sets/src/mage/sets/magic2014/MoltenBirth.java index 32e6fa3d12f..a42e3da094b 100644 --- a/Mage.Sets/src/mage/sets/magic2014/MoltenBirth.java +++ b/Mage.Sets/src/mage/sets/magic2014/MoltenBirth.java @@ -27,6 +27,7 @@ */ package mage.sets.magic2014; +import java.util.Random; import java.util.UUID; import mage.MageInt; import mage.ObjectColor; @@ -105,6 +106,8 @@ class ElementalToken extends Token { public ElementalToken() { super("Elemental", "1/1 red Elemental creature"); + this.setOriginalExpansionSetCode("M14"); + this.setTokenType(new Random().nextInt(2) + 1); cardType.add(CardType.CREATURE); color = ObjectColor.RED; subtype.add("Elemental"); diff --git a/Mage/src/mage/abilities/effects/common/PutOnLibrarySourceEffect.java b/Mage/src/mage/abilities/effects/common/PutOnLibrarySourceEffect.java index 205f5ec04a6..f91b79f1c71 100644 --- a/Mage/src/mage/abilities/effects/common/PutOnLibrarySourceEffect.java +++ b/Mage/src/mage/abilities/effects/common/PutOnLibrarySourceEffect.java @@ -97,7 +97,7 @@ public class PutOnLibrarySourceEffect extends OneShotEffect cardDao; diff --git a/Mage/src/mage/game/permanent/token/ZombieToken.java b/Mage/src/mage/game/permanent/token/ZombieToken.java index 18be8a6af87..029881cb76d 100644 --- a/Mage/src/mage/game/permanent/token/ZombieToken.java +++ b/Mage/src/mage/game/permanent/token/ZombieToken.java @@ -47,8 +47,7 @@ public class ZombieToken extends Token { super("Zombie", "2/2 black Zombie creature token"); this.setOriginalExpansionSetCode(expansionSetCode); if (expansionSetCode.equals("ISD")) { - Random random = new Random(); - this.setTokenType(random.nextInt(3) + 1); + this.setTokenType(new Random().nextInt(3) + 1); } cardType.add(CardType.CREATURE); color = ObjectColor.BLACK; diff --git a/Mage/src/mage/game/tournament/TournamentImpl.java b/Mage/src/mage/game/tournament/TournamentImpl.java index 6acc3d46efd..9a2b2693df4 100644 --- a/Mage/src/mage/game/tournament/TournamentImpl.java +++ b/Mage/src/mage/game/tournament/TournamentImpl.java @@ -200,11 +200,10 @@ public abstract class TournamentImpl implements Tournament { } protected void playRound(Round round) { - for (TournamentPairing pair: round.getPairs()) { playMatch(pair); } - + updateResults(); // show points from byes while (!round.isRoundOver()) { try { //TODO: improve this @@ -255,8 +254,8 @@ public abstract class TournamentImpl implements Tournament { } } // Add round result - tp1.setResults(addRoundResult(pair, tp1, tp2)); - tp2.setResults(addRoundResult(pair, tp2, tp1)); + tp1.setResults(addRoundResult(round.getRoundNumber(), pair, tp1, tp2)); + tp2.setResults(addRoundResult(round.getRoundNumber(), pair, tp2, tp1)); // Add points if (mp2.hasQuit() || mp1.getWins() > mp2.getWins()) { @@ -270,22 +269,23 @@ public abstract class TournamentImpl implements Tournament { } } for (TournamentPlayer tp : round.getPlayerByes()) { - tp.setResults(new StringBuilder(tp.getResults()).append("(Round Bye) ").toString()); + tp.setResults(new StringBuilder(tp.getResults()).append("R").append(round.getRoundNumber()).append(" ").append("Bye ").toString()); tp.setPoints(tp.getPoints() + 3); } } } - private static String addRoundResult(TournamentPairing pair, TournamentPlayer TournamentPlayer, TournamentPlayer opponentPlayer) { - StringBuilder playerResult = new StringBuilder(TournamentPlayer.getResults()); - playerResult.append(getMatchResultString(TournamentPlayer, opponentPlayer, pair.getMatch())); + 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(); } private static String getMatchResultString(TournamentPlayer p1, TournamentPlayer p2, Match match) { MatchPlayer mp1 = match.getPlayer(p1.getPlayer().getId()); MatchPlayer mp2 = match.getPlayer(p2.getPlayer().getId()); - StringBuilder matchResult = new StringBuilder(p1.getResults()); + StringBuilder matchResult = new StringBuilder(); matchResult.append(p2.getPlayer().getName()); matchResult.append(" (").append(mp1.getWins()); if (mp1.hasQuit()) {