From 0b1151e6af8ce156d4ad5d6153cb5a02e99329d7 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Tue, 21 Jun 2011 01:24:10 +0200 Subject: Fix network mode git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@521 72836036-5685-4462-b002-a69064685172 --- .../control/network/NetworkRoundControl.java | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'src/jrummikub/control/network/NetworkRoundControl.java') diff --git a/src/jrummikub/control/network/NetworkRoundControl.java b/src/jrummikub/control/network/NetworkRoundControl.java index 64faebb..d21e8e8 100644 --- a/src/jrummikub/control/network/NetworkRoundControl.java +++ b/src/jrummikub/control/network/NetworkRoundControl.java @@ -20,12 +20,27 @@ public class NetworkRoundControl extends RoundControl { this.connectionControl = connectionControl; currentlyActive = startActive; + connections.add(connectionControl.getRoundStateUpdateEvent().add( + new IListener1() { + @Override + public void handle(IRoundState state) { + NetworkControl.fixGameSettings(state.getGameSettings(), + connectionControl.getNickname()); + setRoundState(state); + } + })); connections.add(connectionControl.getTurnStartEvent().add(new IListener() { @Override public void handle() { startTurn(); } })); + connections.add(connectionControl.getNextPlayerEvent().add(new IListener() { + @Override + public void handle() { + NetworkRoundControl.super.nextPlayer(); + } + })); } @Override @@ -67,6 +82,22 @@ public class NetworkRoundControl extends RoundControl { } } + @Override + protected void deal() { + super.deal(); + + if (currentlyActive) { + connectionControl.updateRoundState(roundState); + } + } + + @Override + protected void nextPlayer() { + if (currentlyActive) { + connectionControl.nextPlayer(); + } + } + @Override protected void endOfTurn(InvalidTurnInfo invalidTurnInfo) { if (currentlyActive) { -- cgit v1.2.3