diff options
author | Ida Massow <massow@informatik.uni-luebeck.de> | 2011-06-18 00:22:11 +0200 |
---|---|---|
committer | Ida Massow <massow@informatik.uni-luebeck.de> | 2011-06-18 00:22:11 +0200 |
commit | 9fe061f21c0ed880efed860b95610b66114f68e1 (patch) | |
tree | 7fe1bf120b9401aa027669a419555aa9dac2aeb3 /src/jrummikub/control/network/GameOfferControl.java | |
parent | 4860867fe8bf45432cd9b7967bc34398af8d013f (diff) | |
download | JRummikub-9fe061f21c0ed880efed860b95610b66114f68e1.tar JRummikub-9fe061f21c0ed880efed860b95610b66114f68e1.zip |
Man kann ein Spiel joinen und auch wieder verlassen
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@451 72836036-5685-4462-b002-a69064685172
Diffstat (limited to 'src/jrummikub/control/network/GameOfferControl.java')
-rw-r--r-- | src/jrummikub/control/network/GameOfferControl.java | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/src/jrummikub/control/network/GameOfferControl.java b/src/jrummikub/control/network/GameOfferControl.java index 247cd18..fd55fc1 100644 --- a/src/jrummikub/control/network/GameOfferControl.java +++ b/src/jrummikub/control/network/GameOfferControl.java @@ -13,6 +13,7 @@ import jrummikub.model.PlayerSettings; import jrummikub.model.PlayerSettings.Type; import jrummikub.util.Connection; import jrummikub.util.GameData; +import jrummikub.util.IListener; import jrummikub.util.IListener2; import jrummikub.view.ISettingsPanel; import jrummikub.view.ISettingsPanel.SettingsMode; @@ -70,6 +71,34 @@ public class GameOfferControl { updateSettingsPanel(settings); } })); + connections.add(connectionControl.getGameLeaveEvent().add(new IListener2<UUID, String>() { + @Override + public void handle(UUID value1, String value2) { + List<PlayerSettings> players = gameData.getGameSettings().getPlayerList(); + int index=0; + for(PlayerSettings s:players){ + if (s.getName().equals(value2)){ + break; + } + index++; + } + //Only remove network players + if(gameData.getGameSettings().getPlayerList().get(index).getType() == Type.NETWORK){ + gameData.getGameSettings().getPlayerList().get(index).setType(Type.VACANT); + gameData.getGameSettings().getPlayerList().get(index).setName("Offen"); + } + updateSettingsPanel(gameData.getGameSettings()); + connectionControl.offerGame(gameData); + + } + })); + connections.add(view.getSettingsPanel().getBackEvent().add(new IListener() { + @Override + public void handle() { + // TODO Auto-generated method stub + + } + })); } private void updateSettingsPanel(GameSettings settings) { |