Example #1
0
        private void MatchMessages()
        {
            foreach (var message in Replay.Messages)
            {
                var messageEventType = message.MessageEventType;
                var player           = message.MessageSender;

                if (messageEventType == ReplayMessageEvents.MessageEventType.SChatMessage)
                {
                    var chatMessage = message.ChatMessage;

                    ReplayMatchMessage chat = new ReplayMatchMessage
                    {
                        ReplayId         = ReplayId,
                        CharacterName    = player != null ? player.Character : string.Empty,
                        Message          = chatMessage.Message,
                        MessageEventType = messageEventType.ToString(),
                        MessageTarget    = chatMessage.MessageTarget.ToString(),
                        PlayerName       = player != null ? player.Name : string.Empty,
                        TimeStamp        = message.Timestamp,
                    };

                    ReplaysDb.MatchMessage.CreateRecord(ReplaysContext, chat);
                }
                else if (messageEventType == ReplayMessageEvents.MessageEventType.SPingMessage)
                {
                    var pingMessage = message.PingMessage;

                    ReplayMatchMessage ping = new ReplayMatchMessage
                    {
                        ReplayId         = ReplayId,
                        CharacterName    = player != null ? player.Character : string.Empty,
                        Message          = "used a ping",
                        MessageEventType = messageEventType.ToString(),
                        MessageTarget    = pingMessage.MessageTarget.ToString(),
                        PlayerName       = player != null ? player.Name : string.Empty,
                        TimeStamp        = message.Timestamp,
                    };

                    ReplaysDb.MatchMessage.CreateRecord(ReplaysContext, ping);
                }
                else if (messageEventType == ReplayMessageEvents.MessageEventType.SPlayerAnnounceMessage)
                {
                    var announceMessage = message.PlayerAnnounceMessage;

                    ReplayMatchMessage announce = new ReplayMatchMessage
                    {
                        ReplayId         = ReplayId,
                        CharacterName    = player != null ? player.Character : string.Empty,
                        Message          = $"announce {announceMessage.AnnouncementType.ToString()}",
                        MessageEventType = messageEventType.ToString(),
                        MessageTarget    = "Allies",
                        PlayerName       = player != null ? player.Name : string.Empty,
                        TimeStamp        = message.Timestamp,
                    };

                    ReplaysDb.MatchMessage.CreateRecord(ReplaysContext, announce);
                }
            }
        }
Example #2
0
        public void SetChatMessages(ReplayMatchMessage matchMessage)
        {
            TimeStamp = matchMessage.TimeStamp;
            Target    = matchMessage.MessageTarget;

            if (string.IsNullOrEmpty(matchMessage.PlayerName))
            {
                ChatMessage = $"((Unknown)): {matchMessage.Message}";
            }
            else if (!string.IsNullOrEmpty(matchMessage.CharacterName))
            {
                ChatMessage = $"{matchMessage.PlayerName} ({matchMessage.CharacterName}): {matchMessage.Message}";
            }
            else
            {
                ChatMessage = $"{matchMessage.PlayerName}: {matchMessage.Message}";
            }
        }