Пример #1
0
        public void AddCommand(S2CBattleCommand msg)
        {
            TurnData turnData;

            if (!mTurnDataDic.TryGetValue(msg.TurnId, out turnData))
            {
                turnData = new TurnData();
                mTurnDataDic[msg.TurnId] = turnData;
            }

            List <Command> commandList = new List <Command>();

            for (int i = 0; i < msg.Commands.Count; i++)
            {
                Command command = null;
                switch (msg.Commands[i].Type)
                {
                case CommandType.EMove:
                {
                    command = Command.Deserialize <MoveCommand>(msg.Commands[i].Data.ToByteArray());
                }
                break;

                case CommandType.ENone:
                {
                    command = Command.Deserialize <NullCommand>(msg.Commands[i].Data.ToByteArray());
                }
                break;
                }

                commandList.Add(command);
            }

            turnData.AddCommand(msg.PlayerId, commandList);
        }
Пример #2
0
        private void OnC2SbattleCommand(Socket socket, C2SBattleCommand msg)
        {
            S2CBattleCommand data = new S2CBattleCommand();

            data.TurnId   = msg.TurnId;
            data.PlayerId = msg.PlayerId;
            data.Commands.AddRange(msg.Commands);
            Console.WriteLine(msg.PlayerId);
            SocketServer.Instance.BroadcastMessage(ServiceNo.S2CbattleCommand, data);
        }
Пример #3
0
 public void S2CBattleCommand(S2CBattleCommand msg)
 {
     CommandManager.Instance.AddCommand(msg);
     Debug.Log(msg.PlayerId);
 }