using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace DuckEmulator.HabboHotel.Outside.Rooms.Trade { class TradeManager { private uint TradeId = 0; private readonly Object _lock = new Object(); internal Dictionary ActiveTrades; internal uint GetTradeId() { lock (_lock) { TradeId++; return TradeId; } } internal TradeManager() { ActiveTrades = new Dictionary(); } internal Trade CreateTrade(uint Sender, uint Receiver) { Trade Trade = new Trade(GetTradeId(), Sender, Receiver); ActiveTrades.Add(Trade.Id, Trade); return Trade; } internal Trade GetTradeByHabbo(uint HabboId) { foreach (Trade Trade in ActiveTrades.Values.ToList()) { if (Trade.Receiver.HabboId == HabboId || Trade.Sender.HabboId == HabboId) { return Trade; } } return null; } internal Trade GetTradeById(uint TradeId) { try { return ActiveTrades[TradeId]; } catch { return null; } } } }