private DynamicTileBrush(LibraryX.DynamicTileBrushX proxy, TilePoolManager manager, DynamicTileBrushClassRegistry registry) : base(proxy.Uid, proxy.Name, proxy.TileWidth, proxy.TileHeight) { _brushClass = registry.Lookup(proxy.Type); if (_brushClass == null) { return; } _tiles = _brushClass.CreateTileProxyList(); foreach (var entry in proxy.Entries) { TilePool pool = manager.PoolFromItemKey(entry.TileId); if (pool == null) { continue; } SetTile(entry.Slot, pool.GetTile(entry.TileId)); } }
public DynamicTileBrush(string name, int tileWidth, int tileHeight, DynamicTileBrushClass brushClass) : base(Guid.NewGuid(), name, tileWidth, tileHeight) { _brushClass = brushClass; _tiles = brushClass.CreateTileProxyList(); }