Example #1
0
 public void Write(IJournalMessage message)
 {
     lock (messages)
     {
         messages.Add(new JournalMessageData(message, CurrentGame.Game.CurrentTurn));
     }
 }
Example #2
0
 public void Write(IJournalMessage message, IMapObject source)
 {
     lock (messages)
     {
         if (IsObjectVisible(source))
         {
             messages.Add(new JournalMessageData(message, CurrentGame.Game.CurrentTurn));
         }
     }
 }
Example #3
0
        private ColoredString[] GetMessageBody(IJournalMessage message)
        {
            if (message is ISelfDescribingJournalMessage selfDescribingMessage)
            {
                return(selfDescribingMessage.GetDescription().Parts.Select(styledString =>
                                                                           new ColoredString(styledString.String.ConvertGlyphs(),
                                                                                             new Cell(styledString.TextColor.ToXna(), BackgroundColor)))
                       .ToArray());
            }

            throw new ApplicationException("Journal message should be ISelfDescribingJournalMessage");
        }
Example #4
0
 public JournalMessageData(IJournalMessage message, int turn)
 {
     Message = message;
     Turn    = turn;
 }