public override ILogEntry Parse(string line, LogEntry entry) { var tradeLogEntry = new TradeLogEntry(entry) { Types = new List <LogEntryType> { _type, LogEntryType.Trade, LogEntryType.Whisper } }; var parts = line.Split("#", StringSplitOptions.RemoveEmptyEntries); tradeLogEntry.Player = parts[0]; var itemMatch = _regNumber.Match(parts[1]); if (itemMatch.Success && itemMatch.Index == 0 && itemMatch.Length == parts[1].Length) { var itemParts = parts[1].Split(" "); tradeLogEntry.Item = new Item() { Quantity = Convert.ToInt32(itemParts[0]), Name = itemParts[1..].Aggregate((total, value) => $"{total} {value}")
protected virtual void OnNewTradeLogEntry(TradeLogEntry logEntry) { NewTradeLogEntry?.Invoke(logEntry); }