Exemple #1
0
        public void SendExitNotification()
        {
            var myId = PlayerIdStorage.TmpPlayerIdForMatch;
            BattleExitMessage exitMessage = new BattleExitMessage(matchId, myId);
            MessageWrapper    message     = MessageFactory.GetMessage(exitMessage, false, out uint messageId);

            byte[] data = MessageFactory.GetSerializedMessage(message);
            udpClientWrapper.Send(data);
        }
        public void Handle(MessageWrapper messageWrapper, IPEndPoint sender)
        {
            Log.Warn("Сообщение о выходе из боя пришло");
            BattleExitMessage exitMessage =
                ZeroFormatterSerializer.Deserialize <BattleExitMessage>(messageWrapper.SerializedMessage);

            if (exitMessage.TemporaryId == 0)
            {
                throw new ArgumentOutOfRangeException("exitMessage.TemporaryId = " + exitMessage.TemporaryId);
            }

            exitEntitiesCreator.AddExitMessage(exitMessage.MatchId, exitMessage.TemporaryId);
        }