Exemplo n.º 1
0
        public void handleInitSettings(NetworkMessage initMsg)
        {
            GameInfo msg = Deserialize <GameInfo> (initMsg.reader.ReadBytesAndSize());

            ClientPlayersHandler.initPlayerColor(msg.username, msg.myColor);
            LocalPlayer p = ClientPlayersHandler.getPlayerFromColor(msg.myColor);

            RealtimeTCPController.registerLocalPlayer(colorToTeam(msg.myColor), p.takeInput, p.isMainPlayer());
            if (p.isMainPlayer())
            {
                isListeningForTCP = true;
            }
        }
        public void handleInitSettings(NetworkMessage initMsg)
        {
            byte[]   bytes = initMsg.reader.ReadBytesAndSize();
            GameInfo msg   = ClientController.Deserialize <GameInfo> (bytes);

            ClientPlayersHandler.initPlayerColor(msg.username, msg.myColor);
            LocalPlayer p = ClientPlayersHandler.getPlayerFromColor(msg.myColor);

            RealtimeTCPController.registerLocalPlayer(convertColorToTeam(p.info.color), p.getTakeInputFunc(), !p.isNPC());

            if (p.isNPC() == false)
            {
                localPlayerColor = p.info.color;
            }

            isListeningForTCP = true;
        }
Exemplo n.º 3
0
        public void handleInitSettings(NetworkMessage initMsg)
        {
            GameInfo msg = Deserialize <GameInfo> (initMsg.reader.ReadBytesAndSize());

            ClientPlayersHandler.initPlayerColor(msg.username, msg.myColor);
            LocalPlayer p = ClientPlayersHandler.getPlayerFromColor(msg.myColor);

            int playerIndex = convertColorToTeam(msg.myColor);

            TCPFormater [playerIndex] = new SnakeTCPFormater(playerIndex);
            Action <string> sendBoardFunc = p.getTakeInputFunc();


            RealtimeTCPController.registerLocalPlayer(playerIndex,
                                                      (string s) => {
                sendBoardFunc(s);
            }
                                                      , !p.isNPC() && !p.Human);

            if (p.isMainPlayer())
            {
                localPlayerColor = p.info.color;
            }
            if (p.Human)
            {
                localHumanColor = p.info.color;
            }

            if (p.info.color == PlayerColor.Blue)
            {
                hasLocalBluePlayer = true;
            }
            else
            {
                hasLocalRedPlayer = true;
            }

            isListeningForTCP = true;
        }
        public void handleInitSettings(NetworkMessage initMsg)
        {
            GameInfo msg = Deserialize <GameInfo> (initMsg.reader.ReadBytesAndSize());

            ClientPlayersHandler.initPlayerColor(msg.username, msg.myColor);
            LocalPlayer p = ClientPlayersHandler.getPlayerFromColor(msg.myColor);

            RealtimeTCPController.registerLocalPlayer(BombermanOverlord.convertColorToTeam(p.info.color), p.getTakeInputFunc(), !p.isNPC());

            if (p.isMainPlayer())
            {
                localPlayerColor = p.info.color;
            }
            if (p.Human)
            {
                localHumanColor = p.info.color;
            }

            print(localPlayerColor);

            isListeningForTCP = true;
        }
Exemplo n.º 5
0
        protected override void readTCPMsg(ReceivedLocalMessage msg)
        {
            if (msg.message.Length == 0)
            {
                RealtimeTCPController.requestBoard(convertColorToTeam(localPlayerColor), true);
                return;
            }
            APIMsgConclusion conclusion = APIRouter.handleIncomingMsg(msg.message);

            if (conclusion.target == MsgTarget.Server)
            {
                int dir = -1;
                if (parseCommandMsg(msg.message, out dir))
                {
                    sendServerMsg(new GameCommand(localPlayerColor, dir), (short)SnakeProtocol.MsgType.playerCommands);
                }

                RealtimeTCPController.requestBoard(convertColorToTeam(localPlayerColor), true);
            }
            else if (conclusion.status == ResponseStatus.Success && conclusion.target == MsgTarget.Player)
            {
                ClientPlayersHandler.getPlayerFromColor(localPlayerColor).takeInput(conclusion.msg);
            }
        }