示例#1
0
        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}")
示例#2
0
 protected virtual void OnNewTradeLogEntry(TradeLogEntry logEntry)
 {
     NewTradeLogEntry?.Invoke(logEntry);
 }