From 7926fc50045903d859b18304602c75d32ff73688 Mon Sep 17 00:00:00 2001 From: BetaSteward Date: Mon, 29 Aug 2011 13:06:25 -0400 Subject: [PATCH] fixed issue 228 --- .../src/main/java/mage/client/MageFrame.java | 8 ++++++++ .../main/java/mage/client/draft/DraftPane.form | 2 +- .../main/java/mage/client/draft/DraftPane.java | 4 ++++ .../mage/client/tournament/TournamentPane.form | 2 +- .../mage/client/tournament/TournamentPane.java | 4 ++++ .../mage/client/tournament/TournamentPanel.java | 2 ++ Mage.Server/src/main/java/mage/server/User.java | 16 ++++++++-------- Mage/src/mage/game/events/GameEvent.java | 10 ++++++++++ 8 files changed, 38 insertions(+), 10 deletions(-) diff --git a/Mage.Client/src/main/java/mage/client/MageFrame.java b/Mage.Client/src/main/java/mage/client/MageFrame.java index 186ccb9a107..9584f69d4f4 100644 --- a/Mage.Client/src/main/java/mage/client/MageFrame.java +++ b/Mage.Client/src/main/java/mage/client/MageFrame.java @@ -821,6 +821,14 @@ public class MageFrame extends javax.swing.JFrame implements MageClient { GamePane gamePane = (GamePane) window; gamePane.hideGame(); } + if (window instanceof DraftPane) { + DraftPane draftPane = (DraftPane) window; + draftPane.hideDraft(); + } + if (window instanceof TournamentPane) { + TournamentPane tournamentPane = (TournamentPane) window; + tournamentPane.hideTournament(); + } } } diff --git a/Mage.Client/src/main/java/mage/client/draft/DraftPane.form b/Mage.Client/src/main/java/mage/client/draft/DraftPane.form index 5ca9916f921..2112f5b4917 100644 --- a/Mage.Client/src/main/java/mage/client/draft/DraftPane.form +++ b/Mage.Client/src/main/java/mage/client/draft/DraftPane.form @@ -24,7 +24,7 @@ - + diff --git a/Mage.Client/src/main/java/mage/client/draft/DraftPane.java b/Mage.Client/src/main/java/mage/client/draft/DraftPane.java index 91a6c831a48..27f4e6d7a4f 100644 --- a/Mage.Client/src/main/java/mage/client/draft/DraftPane.java +++ b/Mage.Client/src/main/java/mage/client/draft/DraftPane.java @@ -53,6 +53,10 @@ public class DraftPane extends MagePane { this.draftPanel1.showDraft(draftId); } + public void hideDraft() { + draftPanel1.hideDraft(); + } + /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is diff --git a/Mage.Client/src/main/java/mage/client/tournament/TournamentPane.form b/Mage.Client/src/main/java/mage/client/tournament/TournamentPane.form index c9eecb51c69..d2c67c18899 100644 --- a/Mage.Client/src/main/java/mage/client/tournament/TournamentPane.form +++ b/Mage.Client/src/main/java/mage/client/tournament/TournamentPane.form @@ -24,7 +24,7 @@ - + diff --git a/Mage.Client/src/main/java/mage/client/tournament/TournamentPane.java b/Mage.Client/src/main/java/mage/client/tournament/TournamentPane.java index 7c5d8eb6cea..1431be59d75 100644 --- a/Mage.Client/src/main/java/mage/client/tournament/TournamentPane.java +++ b/Mage.Client/src/main/java/mage/client/tournament/TournamentPane.java @@ -54,6 +54,10 @@ public class TournamentPane extends MagePane { this.repaint(); } + public void hideTournament() { + tournamentPanel.hideTournament(); + } + /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is diff --git a/Mage.Client/src/main/java/mage/client/tournament/TournamentPanel.java b/Mage.Client/src/main/java/mage/client/tournament/TournamentPanel.java index f20f6212c01..a3eef656506 100644 --- a/Mage.Client/src/main/java/mage/client/tournament/TournamentPanel.java +++ b/Mage.Client/src/main/java/mage/client/tournament/TournamentPanel.java @@ -113,6 +113,8 @@ public class TournamentPanel extends javax.swing.JPanel { } public void hideTournament() { + stopTasks(); + this.chatPanel1.disconnect(); Component c = this.getParent(); while (c != null && !(c instanceof TournamentPane)) { c = c.getParent(); diff --git a/Mage.Server/src/main/java/mage/server/User.java b/Mage.Server/src/main/java/mage/server/User.java index 309e9b1df9f..5d15ac9208e 100644 --- a/Mage.Server/src/main/java/mage/server/User.java +++ b/Mage.Server/src/main/java/mage/server/User.java @@ -169,6 +169,14 @@ public class User { } private void reconnect() { + for (Entry entry: tables.entrySet()) { + joinedTable(entry.getValue().getRoomId(), entry.getValue().getId(), entry.getValue().isTournament()); + } + for (Entry entry: tournamentSessions.entrySet()) { + tournamentStarted(entry.getValue().getTournamentId(), entry.getKey()); + entry.getValue().init(); + entry.getValue().update(); + } for (Entry entry: gameSessions.entrySet()) { gameStarted(entry.getValue().getGameId(), entry.getKey()); entry.getValue().init(); @@ -179,14 +187,6 @@ public class User { entry.getValue().init(); entry.getValue().update(); } - for (Entry entry: tournamentSessions.entrySet()) { - tournamentStarted(entry.getValue().getTournamentId(), entry.getKey()); - entry.getValue().init(); - entry.getValue().update(); - } - for (Entry entry: tables.entrySet()) { - joinedTable(entry.getValue().getRoomId(), entry.getValue().getId(), entry.getValue().isTournament()); - } } public void addGame(UUID playerId, GameSession gameSession) { diff --git a/Mage/src/mage/game/events/GameEvent.java b/Mage/src/mage/game/events/GameEvent.java index 377ebd58ccf..404b298f7d2 100644 --- a/Mage/src/mage/game/events/GameEvent.java +++ b/Mage/src/mage/game/events/GameEvent.java @@ -29,6 +29,7 @@ package mage.game.events; import java.util.UUID; +import mage.Constants.Zone; /** * @@ -43,6 +44,7 @@ public class GameEvent { protected int amount; protected boolean flag; protected String data; + protected Zone zone; public enum EventType { @@ -182,4 +184,12 @@ public class GameEvent { public void setData(String data) { this.data = data; } + + public Zone getZone() { + return zone; + } + + public void setZone(Zone zone) { + this.zone = zone; + } }