Sending user data. Sending avatar to server on connect.

This commit is contained in:
magenoxx 2011-09-07 21:18:58 +04:00
parent 32d4d854f4
commit bf1a49dd0b
27 changed files with 202 additions and 38 deletions

View file

@ -31,7 +31,7 @@ package mage.server.game;
import java.io.BufferedOutputStream;
import mage.MageException;
import mage.server.TableManager;
import mage.server.*;
import java.io.FileOutputStream;
import java.io.IOException;
@ -59,9 +59,6 @@ import mage.game.events.PlayerQueryEvent;
import mage.game.events.TableEvent;
import mage.game.permanent.Permanent;
import mage.players.Player;
import mage.server.ChatManager;
import mage.server.Main;
import mage.server.UserManager;
import mage.server.util.SystemUtil;
import mage.server.util.Splitter;
import mage.server.util.ThreadExecutor;
@ -190,7 +187,9 @@ public class GameController implements GameCallback {
UUID playerId = userPlayerMap.get(userId);
GameSession gameSession = new GameSession(game, userId, playerId);
gameSessions.put(playerId, gameSession);
UserManager.getInstance().getUser(userId).addGame(playerId, gameSession);
User user = UserManager.getInstance().getUser(userId);
gameSession.setUserData(user.getUserData());
user.addGame(playerId, gameSession);
logger.info("player " + playerId + " has joined game " + game.getId());
ChatManager.getInstance().broadcast(chatId, "", game.getPlayer(playerId).getName() + " has joined the game", MessageColor.BLACK);
checkStart();

View file

@ -38,6 +38,7 @@ import mage.cards.Cards;
import mage.game.Game;
import mage.interfaces.callback.ClientCallback;
import mage.players.Player;
import mage.players.net.UserData;
import mage.server.User;
import mage.server.UserManager;
import mage.server.util.ConfigSettings;
@ -60,6 +61,8 @@ public class GameSession extends GameWatcher {
private ScheduledFuture<?> futureTimeout;
protected static ScheduledExecutorService timeoutExecutor = ThreadExecutor.getInstance().getTimeoutExecutor();
private UserData userData;
public GameSession(Game game, UUID userId, UUID playerId) {
super(userId, game);
this.playerId = playerId;
@ -196,6 +199,7 @@ public class GameSession extends GameWatcher {
@Override
public GameView getGameView() {
Player player = game.getPlayer(playerId);
player.setUserData(this.userData);
GameView gameView = new GameView(game.getState(), game);
gameView.setHand(new SimpleCardsView(player.getHand().getCards(game)));
@ -234,4 +238,7 @@ public class GameSession extends GameWatcher {
game.quit(playerId);
}
public void setUserData(UserData userData) {
this.userData = userData;
}
}