public void Write(IJournalMessage message) { lock (messages) { messages.Add(new JournalMessageData(message, CurrentGame.Game.CurrentTurn)); } }
public void Write(IJournalMessage message, IMapObject source) { lock (messages) { if (IsObjectVisible(source)) { messages.Add(new JournalMessageData(message, CurrentGame.Game.CurrentTurn)); } } }
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"); }
public JournalMessageData(IJournalMessage message, int turn) { Message = message; Turn = turn; }