Пример #1
0
        public InventoryCache(IServer engine, IInventoryLoader loader, IInventorySaver saver)
        {
            _inventories   = new Dictionary <long, Inventory>();
            _engine        = engine;
            _subscriptions = new Dictionary <long, HashSet <RemotePlayer> >();

            _loader = loader ?? new NullLoader();
            _saver  = saver ?? new NullSaver();

            _availableIds = _loader.GetAvailableIds();
            if (_availableIds.Count > 0)
            {
                _nextInventoryId = _availableIds.Max() + 1;
            }

            _engine.RegisterMessageCallback(typeof(ClientRequestInventoryUpdates), HandlePerformSubscription);
            _engine.RegisterMessageCallback(typeof(ClientCancelInventoryUpdates), HandleCancelSubscription);
        }
 public InventoriesLoaderController(IMapper mapper, IdentityService identityService, IInventoryLoader iInventoryLoader)
 {
     this.mapper           = mapper;
     this.identityService  = identityService;
     this.iInventoryLoader = iInventoryLoader;
 }