diff options
Diffstat (limited to 'src/jrummikub/control/network/NetworkControl.java')
-rw-r--r-- | src/jrummikub/control/network/NetworkControl.java | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/jrummikub/control/network/NetworkControl.java b/src/jrummikub/control/network/NetworkControl.java index 60640db..6579b0f 100644 --- a/src/jrummikub/control/network/NetworkControl.java +++ b/src/jrummikub/control/network/NetworkControl.java @@ -6,6 +6,7 @@ import java.util.List; import java.util.Map; import java.util.UUID; +import jrummikub.control.SaveControl; import jrummikub.model.GameSettings; import jrummikub.util.Connection; import jrummikub.util.Event; @@ -31,6 +32,10 @@ public class NetworkControl { private GameOfferControl gameOfferControl; private GameJoinControl gameJoinControl; + private SaveControl saveControl; + + private NetworkGameControl gameControl; + private List<UUID> games = new ArrayList<UUID>(); private Map<UUID, GameData> gameMap = new HashMap<UUID, GameData>(); @@ -45,9 +50,11 @@ public class NetworkControl { * for events and handlers */ public NetworkControl(final LoginData loginData, - IConnectionControl connectionControl, final IView view) { + IConnectionControl connectionControl, SaveControl saveControl, + final IView view) { this.view = view; this.connectionControl = connectionControl; + this.saveControl = saveControl; addConnectionSetupListeners(loginData, view); addConnectionControlListeners(view); @@ -186,6 +193,14 @@ public class NetworkControl { view.showGameListPanel(true); } }); + gameJoinControl.getStartGameEvent().add(new IListener() { + @Override + public void handle() { + gameControl = new NetworkGameControl(null, saveControl, view, + connectionControl, false); + gameControl.startGame(); + } + }); gameJoinControl.startGameJoin(); } @@ -271,6 +286,14 @@ public class NetworkControl { view.showGameListPanel(true); } }); + gameOfferControl.getStartGameEvent().add(new IListener1<GameSettings>() { + @Override + public void handle(GameSettings settings) { + gameControl = new NetworkGameControl(settings, saveControl, view, + connectionControl, true); + gameControl.startGame(); + } + }); gameOfferControl.startGameOffer(); } |