Example #1
0
        public void VisitNodePhone(NodePhone np)
        {
            _writer.WriteStartElement("NodePhone");
            if (np.Character != null)
            {
                _writer.WriteAttributeString("Character", _projectService.Characters.IndexOf(np.Character).ToString());
            }
            _writer.WriteAttributeString("Time", np.Time ?? string.Empty);

            foreach (var message in np.PhoneMessages)
            {
                _writer.WriteStartElement("Message");
                _writer.WriteAttributeString("Skip", message.Skip.ToString());
                _writer.WriteAttributeString("PlayerMade", message.PlayerMade.ToString());
                _writer.WriteString(message.Text ?? string.Empty);
                _writer.WriteEndElement();
            }
            _writer.WriteEndElement();
        }
        public void VisitNodePhone(NodePhone np)
        {
            if (np.Character == null)
            {
                _report.AddMessage(ProjectReportMessage.MessageSeverity.Error, "A phone node has no assigned character.", np);
            }
            if (string.IsNullOrWhiteSpace(np.Time))
            {
                _report.AddMessage(ProjectReportMessage.MessageSeverity.Error, "A phone node has no set time.", np);
            }
            if (np.PhoneMessages.Count == 0)
            {
                _report.AddMessage(ProjectReportMessage.MessageSeverity.Info, "A phone node has no messages.", np);
            }

            foreach (var message in np.PhoneMessages)
            {
                if (Regex.IsMatch(message.Text, @"[^\x00-\x7F]"))
                {
                    _report.AddMessage(ProjectReportMessage.MessageSeverity.Error, "A phone node has a message with non-ASCII characters.", np);
                }
            }
        }
 public void VisitNodePhone(NodePhone np)
 {
 }