public void AppendDamageLog(Player source, Player target, int magnitude, DamageElement element)
{
if (!Logs.ContainsKey(target)) return;
Trace.Assert(target != null);
List<FlowDocument> docs = new List<FlowDocument>() { Logs[target], GlobalLog };
if (source != null) docs.Add(Logs[source]);
foreach (var doc in docs)
{
Paragraph para = LogFormatter.RichTranslateDamage(source, target, magnitude, element);
if (para != null)
{
doc.Blocks.Add(para);
}
}
}